Browse Source

Implemented support for literal fields.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@5149 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
David Srbecký 16 years ago
parent
commit
b890b1a6da
  1. 5
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/GetValueException.cs
  2. 56
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Interop/MetaDataWrapper.cs
  3. 4
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/MetaData/DebugFieldInfo.cs
  4. 3
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/MetaData/DebugType.cs
  5. 49
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Value.cs
  6. 26
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/Tests/DebugType_Tests.cs
  7. 12
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/Tests/ExpressionEvaluator_Tests.cs

5
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/GetValueException.cs

@ -41,6 +41,11 @@ namespace Debugger @@ -41,6 +41,11 @@ namespace Debugger
this.error = error;
}
public GetValueException(string error, System.Exception inner):base(error, inner)
{
this.error = error;
}
public GetValueException(string error):base(error)
{
this.error = error;

56
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Interop/MetaDataWrapper.cs

@ -501,8 +501,6 @@ namespace Debugger.Interop.MetaData @@ -501,8 +501,6 @@ namespace Debugger.Interop.MetaData
FieldProps ret = new FieldProps();
IntPtr sigPtr = IntPtr.Zero;
uint sigSize = 0;
IntPtr constPtr = IntPtr.Zero;
uint constSize = 0;
ret.Token = fieldDef;
ret.Name = Util.GetString(delegate(uint pStringLenght, out uint stringLenght, System.IntPtr pString) {
metaData.GetFieldProps(
@ -512,13 +510,12 @@ namespace Debugger.Interop.MetaData @@ -512,13 +510,12 @@ namespace Debugger.Interop.MetaData
out ret.Flags,
out sigPtr,
out sigSize,
out ret.CPlusTypeFlag,
out constPtr,
out constSize
out ret.ConstantType,
out ret.ConstantPtr,
out ret.ConstantStringLength
);
});
ret.SigBlob = new Blob(sigPtr, sigSize);
ret.ConstantValue = new Blob(constPtr, constSize);
return ret;
}
@ -539,8 +536,6 @@ namespace Debugger.Interop.MetaData @@ -539,8 +536,6 @@ namespace Debugger.Interop.MetaData
MemberProps ret = new MemberProps();
IntPtr sigPtr = IntPtr.Zero;
uint sigSize = 0;
IntPtr constPtr = IntPtr.Zero;
uint constSize = 0;
ret.Token = token;
ret.Name = Util.GetString(delegate(uint pStringLenght, out uint stringLenght, System.IntPtr pString) {
metaData.GetMemberProps(
@ -552,13 +547,12 @@ namespace Debugger.Interop.MetaData @@ -552,13 +547,12 @@ namespace Debugger.Interop.MetaData
out sigSize,
out ret.RVA,
out ret.ImplFlags,
out ret.CPlusTypeFlag,
out constPtr,
out constSize
out ret.ConstantType,
out ret.ConstantPtr,
out ret.ConstantStringLength
);
});
ret.SigBlob = new Blob(sigPtr, sigSize);
ret.Constant = new Blob(constPtr, constSize);
return ret;
}
@ -663,8 +657,6 @@ namespace Debugger.Interop.MetaData @@ -663,8 +657,6 @@ namespace Debugger.Interop.MetaData
public ParamProps GetParamProps(uint paramToken)
{
ParamProps ret = new ParamProps();
IntPtr constPtr = IntPtr.Zero;
uint constSize = 0;
ret.ParamDef = paramToken;
ret.Name = Util.GetString(delegate(uint pStringLenght, out uint stringLenght, System.IntPtr pString) {
metaData.GetParamProps(
@ -673,12 +665,11 @@ namespace Debugger.Interop.MetaData @@ -673,12 +665,11 @@ namespace Debugger.Interop.MetaData
out ret.Sequence,
pString, pStringLenght, out stringLenght,
out ret.Flags,
out ret.CPlusTypeFlag,
out constPtr,
out constSize
out ret.ConstantType,
out ret.ConstantPtr,
out ret.ConstantStringLength
);
});
ret.Constant = new Blob(constPtr, constSize);
return ret;
}
@ -718,8 +709,6 @@ namespace Debugger.Interop.MetaData @@ -718,8 +709,6 @@ namespace Debugger.Interop.MetaData
PropertyProps ret = new PropertyProps();
IntPtr sigPtr = IntPtr.Zero;
uint sigSize = 0;
IntPtr defValPtr = IntPtr.Zero;
uint defValSize = 0;
ret.Propery = prop;
ret.Name = Util.GetString(delegate(uint pStringLenght, out uint stringLenght, System.IntPtr pString) {
ret.OtherMethods = new uint[DefaultBufferSize];
@ -732,9 +721,9 @@ namespace Debugger.Interop.MetaData @@ -732,9 +721,9 @@ namespace Debugger.Interop.MetaData
out ret.Flags,
out sigPtr,
out sigSize,
out ret.CPlusTypeFlag,
out defValPtr,
out defValSize,
out ret.DefaultValueType,
out ret.DefaultValuePtr,
out ret.DefaultValueStringLength,
out ret.SetterMethod,
out ret.GetterMethod,
ret.OtherMethods, (uint)ret.OtherMethods.Length, out returned
@ -745,7 +734,6 @@ namespace Debugger.Interop.MetaData @@ -745,7 +734,6 @@ namespace Debugger.Interop.MetaData
Array.Resize(ref ret.OtherMethods, (int)returned);
});
ret.SigBlob = new Blob(sigPtr, sigSize);
ret.DefaultValue = new Blob(defValPtr, defValSize);
return ret;
}
@ -1009,8 +997,9 @@ namespace Debugger.Interop.MetaData @@ -1009,8 +997,9 @@ namespace Debugger.Interop.MetaData
public uint DeclaringClass;
public uint Flags;
public Blob SigBlob;
public uint CPlusTypeFlag;
public Blob ConstantValue;
public uint ConstantType;
public IntPtr ConstantPtr;
public uint ConstantStringLength;
}
public class InterfaceImplProps
@ -1029,8 +1018,9 @@ namespace Debugger.Interop.MetaData @@ -1029,8 +1018,9 @@ namespace Debugger.Interop.MetaData
public Blob SigBlob;
public uint RVA;
public uint ImplFlags;
public uint CPlusTypeFlag;
public Blob Constant;
public uint ConstantType;
public IntPtr ConstantPtr;
public uint ConstantStringLength;
}
public class MemberRefProps
@ -1077,8 +1067,9 @@ namespace Debugger.Interop.MetaData @@ -1077,8 +1067,9 @@ namespace Debugger.Interop.MetaData
public uint Sequence;
public string Name;
public uint Flags;
public uint CPlusTypeFlag;
public Blob Constant;
public uint ConstantType;
public IntPtr ConstantPtr;
public uint ConstantStringLength;
}
public class PermissionSetProps
@ -1103,8 +1094,9 @@ namespace Debugger.Interop.MetaData @@ -1103,8 +1094,9 @@ namespace Debugger.Interop.MetaData
public string Name;
public uint Flags;
public Blob SigBlob;
public uint CPlusTypeFlag;
public Blob DefaultValue;
public uint DefaultValueType;
public IntPtr DefaultValuePtr;
public uint DefaultValueStringLength;
public uint SetterMethod;
public uint GetterMethod;
public uint[] OtherMethods;

4
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/MetaData/DebugFieldInfo.cs

@ -30,6 +30,10 @@ namespace Debugger.MetaData @@ -30,6 +30,10 @@ namespace Debugger.MetaData
get { return declaringType; }
}
internal FieldProps FieldProps {
get { return fieldProps; }
}
/// <summary> The AppDomain in which this member is declared </summary>
public AppDomain AppDomain {
get { return declaringType.AppDomain; }

3
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/MetaData/DebugType.cs

@ -1045,7 +1045,7 @@ namespace Debugger.MetaData @@ -1045,7 +1045,7 @@ namespace Debugger.MetaData
}
}
static Type CorElementTypeToManagedType(CorElementType corElementType)
internal static Type CorElementTypeToManagedType(CorElementType corElementType)
{
switch(corElementType) {
case CorElementType.BOOLEAN: return typeof(System.Boolean);
@ -1132,7 +1132,6 @@ namespace Debugger.MetaData @@ -1132,7 +1132,6 @@ namespace Debugger.MetaData
// Load fields
foreach(FieldProps field in module.MetaData.EnumFieldProps((uint)this.MetadataToken)) {
DebugFieldInfo fieldInfo = new DebugFieldInfo(this, field);
if (fieldInfo.IsStatic && fieldInfo.IsLiteral) continue; // Skip static literals TODO: Why?
AddMember(fieldInfo);
};

49
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Value.cs

@ -9,8 +9,9 @@ using System; @@ -9,8 +9,9 @@ using System;
using System.Collections.Generic;
using System.Reflection;
using Debugger.MetaData;
using Debugger.Interop.CorDebug;
using Debugger.MetaData;
using System.Runtime.InteropServices;
namespace Debugger
{
@ -414,26 +415,30 @@ namespace Debugger @@ -414,26 +415,30 @@ namespace Debugger
#endregion
public static Value SetFieldValue(Value objectInstance, FieldInfo fieldInfo, Value newValue)
{
// TODO
throw new NotImplementedException();
}
/// <summary> Get the value of given field. </summary>
/// <param name="objectInstance">null if field is static</param>
public static Value GetFieldValue(Value objectInstance, FieldInfo fieldInfo)
{
CheckObject(objectInstance, fieldInfo);
if (fieldInfo.IsStatic && fieldInfo.IsLiteral) {
return GetLiteralValue((DebugFieldInfo)fieldInfo);
} else {
return new Value(
((DebugFieldInfo)fieldInfo).AppDomain,
GetFieldCorValue(objectInstance, fieldInfo)
);
}
public static Value SetFieldValue(Value objectInstance, FieldInfo fieldInfo, Value newValue)
{
// TODO
throw new NotImplementedException();
}
static ICorDebugValue GetFieldCorValue(Value objectInstance, FieldInfo fieldInfo)
{
CheckObject(objectInstance, fieldInfo);
Process process = ((DebugFieldInfo)fieldInfo).Process;
// Current frame is used to resolve context specific static values (eg. ThreadStatic)
@ -452,8 +457,32 @@ namespace Debugger @@ -452,8 +457,32 @@ namespace Debugger
} else {
return objectInstance.CorObjectValue.GetFieldValue(((DebugType)fieldInfo.DeclaringType).CorType.GetClass(), (uint)fieldInfo.MetadataToken);
}
} catch {
throw new GetValueException("Can not get value of field");
} catch (COMException e) {
throw new GetValueException("Can not get value of field", e);
}
}
static Value GetLiteralValue(DebugFieldInfo fieldInfo)
{
CorElementType corElemType = (CorElementType)fieldInfo.FieldProps.ConstantType;
if (corElemType == CorElementType.CLASS) {
// Only null literals are allowed
return Eval.CreateValue(fieldInfo.AppDomain, null);
} else if (corElemType == CorElementType.STRING) {
string str = Marshal.PtrToStringUni(fieldInfo.FieldProps.ConstantPtr, (int)fieldInfo.FieldProps.ConstantStringLength);
return Eval.CreateValue(fieldInfo.AppDomain, str);
} else {
DebugType type = DebugType.CreateFromType(fieldInfo.AppDomain.Mscorlib, DebugType.CorElementTypeToManagedType(corElemType));
if (fieldInfo.FieldType.IsEnum && fieldInfo.FieldType.GetEnumUnderlyingType() == type) {
Value val = Eval.NewObjectNoConstructor((DebugType)fieldInfo.FieldType);
Value backingField = val.GetMemberValue("value__");
backingField.CorGenericValue.SetValue(fieldInfo.FieldProps.ConstantPtr);
return val;
} else {
Value val = Eval.NewObjectNoConstructor(type);
val.CorGenericValue.SetValue(fieldInfo.FieldProps.ConstantPtr);
return val;
}
}
}

26
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/Tests/DebugType_Tests.cs

@ -258,8 +258,8 @@ namespace Debugger.Tests { @@ -258,8 +258,8 @@ namespace Debugger.Tests {
BaseType="System.Enum"
FullName="Debugger.Tests.DebugType_Tests+MyEnum"
GetEnumUnderlyingType="System.Byte"
GetFields="{System.Byte value__}"
GetMembers="{System.Byte value__, System.Boolean System.Enum.Equals(Object obj), System.Int32 System.Enum.GetHashCode(), System.String System.Enum.ToString(), System.String System.Enum.ToString(String format, IFormatProvider provider), System.String System.Enum.ToString(String format), System.String System.Enum.ToString(IFormatProvider provider), System.Int32 System.Enum.CompareTo(Object target), System.TypeCode System.Enum.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetFields="{System.Byte value__, Debugger.Tests.DebugType_Tests+MyEnum A, Debugger.Tests.DebugType_Tests+MyEnum B}"
GetMembers="{System.Byte value__, Debugger.Tests.DebugType_Tests+MyEnum A, Debugger.Tests.DebugType_Tests+MyEnum B, System.Boolean System.Enum.Equals(Object obj), System.Int32 System.Enum.GetHashCode(), System.String System.Enum.ToString(), System.String System.Enum.ToString(String format, IFormatProvider provider), System.String System.Enum.ToString(String format), System.String System.Enum.ToString(IFormatProvider provider), System.Int32 System.Enum.CompareTo(Object target), System.TypeCode System.Enum.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Boolean System.Enum.Equals(Object obj), System.Int32 System.Enum.GetHashCode(), System.String System.Enum.ToString(), System.String System.Enum.ToString(String format, IFormatProvider provider), System.String System.Enum.ToString(String format), System.String System.Enum.ToString(IFormatProvider provider), System.Int32 System.Enum.CompareTo(Object target), System.TypeCode System.Enum.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsEnum="True"
IsNested="True"
@ -567,8 +567,9 @@ namespace Debugger.Tests { @@ -567,8 +567,9 @@ namespace Debugger.Tests {
Attributes="AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, Serializable, BeforeFieldInit"
BaseType="System.ValueType"
FullName="System.Int32"
GetFields="{System.Int32 MaxValue, System.Int32 MinValue}"
GetInterfaces="{System.IComparable, System.IFormattable, System.IConvertible, System.IComparable`1[System.Int32], System.IEquatable`1[System.Int32]}"
GetMembers="{System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMembers="{System.Int32 MaxValue, System.Int32 MinValue, System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsInteger="True"
IsPrimitive="True"
@ -609,8 +610,9 @@ namespace Debugger.Tests { @@ -609,8 +610,9 @@ namespace Debugger.Tests {
Attributes="AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, Serializable, BeforeFieldInit"
BaseType="System.ValueType"
FullName="System.Char"
GetFields="{System.Char MaxValue, System.Char MinValue}"
GetInterfaces="{System.IComparable, System.IConvertible, System.IComparable`1[System.Char], System.IEquatable`1[System.Char]}"
GetMembers="{System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMembers="{System.Char MaxValue, System.Char MinValue, System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsPrimitive="True"
IsValueType="True">
@ -732,8 +734,9 @@ namespace Debugger.Tests { @@ -732,8 +734,9 @@ namespace Debugger.Tests {
Attributes="AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, Serializable, BeforeFieldInit"
BaseType="System.ValueType"
FullName="System.Int32"
GetFields="{System.Int32 MaxValue, System.Int32 MinValue}"
GetInterfaces="{System.IComparable, System.IFormattable, System.IConvertible, System.IComparable`1[System.Int32], System.IEquatable`1[System.Int32]}"
GetMembers="{System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMembers="{System.Int32 MaxValue, System.Int32 MinValue, System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsInteger="True"
IsPrimitive="True"
@ -773,8 +776,9 @@ namespace Debugger.Tests { @@ -773,8 +776,9 @@ namespace Debugger.Tests {
Attributes="AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, Serializable, BeforeFieldInit"
BaseType="System.ValueType"
FullName="System.Int32"
GetFields="{System.Int32 MaxValue, System.Int32 MinValue}"
GetInterfaces="{System.IComparable, System.IFormattable, System.IConvertible, System.IComparable`1[System.Int32], System.IEquatable`1[System.Int32]}"
GetMembers="{System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMembers="{System.Int32 MaxValue, System.Int32 MinValue, System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Int32 System.Int32.CompareTo(Object value), System.Int32 System.Int32.CompareTo(Int32 value), System.Boolean System.Int32.Equals(Object obj), System.Boolean System.Int32.Equals(Int32 obj), System.Int32 System.Int32.GetHashCode(), System.String System.Int32.ToString(), System.String System.Int32.ToString(String format), System.String System.Int32.ToString(IFormatProvider provider), System.String System.Int32.ToString(String format, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s), static System.Int32 System.Int32.Parse(String s, NumberStyles style), static System.Int32 System.Int32.Parse(String s, IFormatProvider provider), static System.Int32 System.Int32.Parse(String s, NumberStyles style, IFormatProvider provider), static System.Boolean System.Int32.TryParse(String s, Int32 result), static System.Boolean System.Int32.TryParse(String s, NumberStyles style, IFormatProvider provider, Int32 result), System.TypeCode System.Int32.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsInteger="True"
IsPrimitive="True"
@ -924,8 +928,9 @@ namespace Debugger.Tests { @@ -924,8 +928,9 @@ namespace Debugger.Tests {
Attributes="AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, Serializable, BeforeFieldInit"
BaseType="System.ValueType"
FullName="System.Char"
GetFields="{System.Char MaxValue, System.Char MinValue}"
GetInterfaces="{System.IComparable, System.IConvertible, System.IComparable`1[System.Char], System.IEquatable`1[System.Char]}"
GetMembers="{System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMembers="{System.Char MaxValue, System.Char MinValue, System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsPrimitive="True"
IsValueType="True">
@ -960,8 +965,9 @@ namespace Debugger.Tests { @@ -960,8 +965,9 @@ namespace Debugger.Tests {
Attributes="AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, Serializable, BeforeFieldInit"
BaseType="System.ValueType"
FullName="System.Char"
GetFields="{System.Char MaxValue, System.Char MinValue}"
GetInterfaces="{System.IComparable, System.IConvertible, System.IComparable`1[System.Char], System.IEquatable`1[System.Char]}"
GetMembers="{System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMembers="{System.Char MaxValue, System.Char MinValue, System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Int32 System.Char.GetHashCode(), System.Boolean System.Char.Equals(Object obj), System.Boolean System.Char.Equals(Char obj), System.Int32 System.Char.CompareTo(Object value), System.Int32 System.Char.CompareTo(Char value), System.String System.Char.ToString(), System.String System.Char.ToString(IFormatProvider provider), static System.String System.Char.ToString(Char c), static System.Char System.Char.Parse(String s), static System.Boolean System.Char.TryParse(String s, Char result), static System.Boolean System.Char.IsDigit(Char c), static System.Boolean System.Char.IsDigit(String s, Int32 index), static System.Boolean System.Char.IsLetter(Char c), static System.Boolean System.Char.IsLetter(String s, Int32 index), static System.Boolean System.Char.IsWhiteSpace(Char c), static System.Boolean System.Char.IsWhiteSpace(String s, Int32 index), static System.Boolean System.Char.IsUpper(Char c), static System.Boolean System.Char.IsUpper(String s, Int32 index), static System.Boolean System.Char.IsLower(Char c), static System.Boolean System.Char.IsLower(String s, Int32 index), static System.Boolean System.Char.IsPunctuation(Char c), static System.Boolean System.Char.IsPunctuation(String s, Int32 index), static System.Boolean System.Char.IsLetterOrDigit(Char c), static System.Boolean System.Char.IsLetterOrDigit(String s, Int32 index), static System.Char System.Char.ToUpper(Char c, CultureInfo culture), static System.Char System.Char.ToUpper(Char c), static System.Char System.Char.ToUpperInvariant(Char c), static System.Char System.Char.ToLower(Char c, CultureInfo culture), static System.Char System.Char.ToLower(Char c), static System.Char System.Char.ToLowerInvariant(Char c), System.TypeCode System.Char.GetTypeCode(), static System.Boolean System.Char.IsControl(Char c), static System.Boolean System.Char.IsControl(String s, Int32 index), static System.Boolean System.Char.IsNumber(Char c), static System.Boolean System.Char.IsNumber(String s, Int32 index), static System.Boolean System.Char.IsSeparator(Char c), static System.Boolean System.Char.IsSeparator(String s, Int32 index), static System.Boolean System.Char.IsSurrogate(Char c), static System.Boolean System.Char.IsSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSymbol(Char c), static System.Boolean System.Char.IsSymbol(String s, Int32 index), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(Char c), static System.Globalization.UnicodeCategory System.Char.GetUnicodeCategory(String s, Int32 index), static System.Double System.Char.GetNumericValue(Char c), static System.Double System.Char.GetNumericValue(String s, Int32 index), static System.Boolean System.Char.IsHighSurrogate(Char c), static System.Boolean System.Char.IsHighSurrogate(String s, Int32 index), static System.Boolean System.Char.IsLowSurrogate(Char c), static System.Boolean System.Char.IsLowSurrogate(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(String s, Int32 index), static System.Boolean System.Char.IsSurrogatePair(Char highSurrogate, Char lowSurrogate), static System.String System.Char.ConvertFromUtf32(Int32 utf32), static System.Int32 System.Char.ConvertToUtf32(Char highSurrogate, Char lowSurrogate), static System.Int32 System.Char.ConvertToUtf32(String s, Int32 index), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsPrimitive="True"
IsValueType="True">
@ -1292,8 +1298,8 @@ namespace Debugger.Tests { @@ -1292,8 +1298,8 @@ namespace Debugger.Tests {
BaseType="System.Enum"
FullName="Debugger.Tests.DebugType_Tests+MyEnum"
GetEnumUnderlyingType="System.Byte"
GetFields="{System.Byte value__}"
GetMembers="{System.Byte value__, System.Boolean System.Enum.Equals(Object obj), System.Int32 System.Enum.GetHashCode(), System.String System.Enum.ToString(), System.String System.Enum.ToString(String format, IFormatProvider provider), System.String System.Enum.ToString(String format), System.String System.Enum.ToString(IFormatProvider provider), System.Int32 System.Enum.CompareTo(Object target), System.TypeCode System.Enum.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetFields="{System.Byte value__, Debugger.Tests.DebugType_Tests+MyEnum A, Debugger.Tests.DebugType_Tests+MyEnum B}"
GetMembers="{System.Byte value__, Debugger.Tests.DebugType_Tests+MyEnum A, Debugger.Tests.DebugType_Tests+MyEnum B, System.Boolean System.Enum.Equals(Object obj), System.Int32 System.Enum.GetHashCode(), System.String System.Enum.ToString(), System.String System.Enum.ToString(String format, IFormatProvider provider), System.String System.Enum.ToString(String format), System.String System.Enum.ToString(IFormatProvider provider), System.Int32 System.Enum.CompareTo(Object target), System.TypeCode System.Enum.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
GetMethods="{System.Boolean System.Enum.Equals(Object obj), System.Int32 System.Enum.GetHashCode(), System.String System.Enum.ToString(), System.String System.Enum.ToString(String format, IFormatProvider provider), System.String System.Enum.ToString(String format), System.String System.Enum.ToString(IFormatProvider provider), System.Int32 System.Enum.CompareTo(Object target), System.TypeCode System.Enum.GetTypeCode(), System.Boolean System.ValueType.Equals(Object obj), System.Int32 System.ValueType.GetHashCode(), System.String System.ValueType.ToString(), void System.Object..ctor(), System.String System.Object.ToString(), System.Boolean System.Object.Equals(Object obj), System.Int32 System.Object.GetHashCode(), System.Type System.Object.GetType()}"
IsEnum="True"
IsNested="True"

12
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/Tests/ExpressionEvaluator_Tests.cs

@ -39,6 +39,10 @@ namespace Debugger.Tests @@ -39,6 +39,10 @@ namespace Debugger.Tests
public char SetterOnlyProperty { set { ; } }
new public static string StaticField = "derived static field";
public const int ConstInt = 42;
public const string ConstString = "const string";
public const object ConstNull = null;
public const MyEnum ConstEnum = MyEnum.B;
public static string StaticProperty {
get {
@ -62,6 +66,8 @@ namespace Debugger.Tests @@ -62,6 +66,8 @@ namespace Debugger.Tests
}
}
public enum MyEnum { A = 3, B = 6 };
string instanceField = "instance field value";
static string staticField = "static field value";
@ -216,7 +222,7 @@ namespace Debugger.Tests { @@ -216,7 +222,7 @@ namespace Debugger.Tests {
<ProcessStarted />
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>ExpressionEvaluator_Tests.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break ExpressionEvaluator_Tests.cs:88,4-88,40</DebuggingPaused>
<DebuggingPaused>Break ExpressionEvaluator_Tests.cs:94,4-94,40</DebuggingPaused>
<Eval> </Eval>
<Eval> b = 1 </Eval>
<Eval> i = 4 </Eval>
@ -268,6 +274,10 @@ namespace Debugger.Tests { @@ -268,6 +274,10 @@ namespace Debugger.Tests {
<Eval> flag = True </Eval>
<Eval> !flag = False </Eval>
<Eval> </Eval>
<Eval> Debugger.Tests.ExpressionEvaluator_Tests.DerivedClass.ConstInt = 42 </Eval>
<Eval> Debugger.Tests.ExpressionEvaluator_Tests.DerivedClass.ConstString = "const string" </Eval>
<Eval> Debugger.Tests.ExpressionEvaluator_Tests.DerivedClass.ConstNull = null </Eval>
<Eval> Debugger.Tests.ExpressionEvaluator_Tests.DerivedClass.ConstEnum = B </Eval>
<Eval> ((Debugger.Tests.ExpressionEvaluator_Tests.DerivedClass)myClass).name = "derived name" </Eval>
<Eval> Debugger.Tests.ExpressionEvaluator_Tests.DerivedClass.StaticField = "derived static field" </Eval>
<Eval> ((Debugger.Tests.ExpressionEvaluator_Tests.DerivedClass)myClass).Name = "derived name" </Eval>

Loading…
Cancel
Save