public abstract GetField ( System.Thread thread, |
||
thread | System.Thread | |
instance | ||
field | ||
return |
protected void FormatClassObject(Thread target, TargetClassObject obj, TargetClass class_info, ref bool first) { Append ("{ "); indent_level += 3; if (obj.Type.HasParent) { TargetClassObject parent = obj.GetParentObject (target); if ((parent != null) && (parent.Type != parent.Type.Language.ObjectType)) { Append ("<{0}> = ", parent.Type.Name); CheckLineWrap (); FormatStructObject (target, parent); first = false; } } TargetFieldInfo[] fields = class_info.GetFields (target); for (int i = 0; i < fields.Length; i++) { if (fields [i].IsStatic || fields [i].HasConstValue) continue; if (fields [i].IsCompilerGenerated) continue; if (fields [i].DebuggerBrowsableState == DebuggerBrowsableState.Never) continue; if (!first) { Append (", "); CheckLineWrap (); } first = false; Append (fields [i].Name + " = "); try { TargetObject fobj = class_info.GetField (target, obj, fields [i]); if (fobj == null) Append ("null"); else FormatObjectRecursed (target, fobj, true); } catch { Append ("<cannot display object>"); } } Append (first ? "}" : " }"); indent_level -= 3; }