public object ToClrObject()
{
switch (Type)
{
case CorInfoType.Bool:
return (object)(bool)(I != 0);
case CorInfoType.Char:
return (object)(char)I;
case CorInfoType.Byte:
return (object)(sbyte)I;
case CorInfoType.Short:
return (object)(short)I;
case CorInfoType.Int:
return (object)(int)I;
case CorInfoType.Long:
return (object)I;
case CorInfoType.UByte:
return (object)(byte)I;
case CorInfoType.UShort:
return (object)(ushort)I;
case CorInfoType.UInt:
return (object)(uint)I;
case CorInfoType.ULong:
return (object)(ulong)I;
case CorInfoType.Float:
return (object)(float)R;
case CorInfoType.Double:
return (object)R;
//case CorInfoType.String:
//case CorInfoType.Class:
default:
return ObjectRef;
}
}
}