public IDebuggerValue GetFieldValue(IDebuggerClass cls, uint token) { return(debugger.Dispatcher.UI(() => { var res = ReadField(cls, token); return res == null ? null : new DebuggerValue(debugger, res); })); }
CorValue ReadField(IDebuggerClass cls, uint token) { var v = CorValue; if (v.IsReference) { v = v.DereferencedValue; } if (v != null && v.IsBox) { v = v.BoxedValue; } if (v == null) { return(null); } Debug.Assert(v.IsObject); return(v.GetFieldValue(((DebuggerClass)cls).CorClass, token)); }
public IDebuggerValue ReadStaticField(IDebuggerClass cls, string name, bool checkBaseClasses) { return(cls.ReadStaticField(this, name, checkBaseClasses)); }
public IDebuggerValue ReadStaticField(IDebuggerClass cls, uint token) { return(cls.ReadStaticField(this, token)); }
public void WriteType(IOutputWriter output, IDebuggerClass cls, TypeFormatFlags flags) => debugger.Dispatcher.UI(() => CorValue.WriteType(new OutputWriterConverter(output), ((DebuggerClass)cls).CorClass, (TypePrinterFlags)flags));
public IDebuggerValue GetFieldValue(IDebuggerClass cls, uint token) => debugger.Dispatcher.UI(() => { var res = ReadField(cls, token); return res == null ? null : new DebuggerValue(debugger, res); });
CorValue ReadField(IDebuggerClass cls, uint token) { var v = CorValue; if (v.IsReference) v = v.DereferencedValue; if (v != null && v.IsBox) v = v.BoxedValue; if (v == null) return null; Debug.Assert(v.IsObject); return v.GetFieldValue(((DebuggerClass)cls).CorClass, token); }
public void WriteType(ISyntaxHighlightOutput output, IDebuggerClass cls, TypeFormatFlags flags) { debugger.Dispatcher.UI(() => value.WriteType(new OutputConverter(output), ((DebuggerClass)cls).CorClass, (TypePrinterFlags)flags)); }
public IDebuggerValue ReadStaticField(IDebuggerClass cls, uint token) => cls.ReadStaticField(this, token);
public IDebuggerValue ReadStaticField(IDebuggerClass cls, string name, bool checkBaseClasses) { return cls.ReadStaticField(this, name, checkBaseClasses); }
public IDebuggerValue ReadStaticField(IDebuggerClass cls, uint token) { return cls.ReadStaticField(this, token); }