The following data types are an integral part of the VOS and are supported directly by the Virtual Execution System (VES). They have special encoding in the persisted metadata:
Name in IL assembler (VOS) | CLS Type? | Name in class library | Description |
---|---|---|---|
bool | Yes | System.Boolean | True/false value |
char | Yes | System.Char | Unicode 16-bit char. |
class System.Object | Yes | System.Object | Object or boxed value type |
class System.String | Yes | System.String | Unicode string |
float32 | Yes | System.Single | IEEE 32-bit float |
float64 | Yes | System.Double | IEEE 64-bit float |
int8 | No | System.SByte | Signed 8-bit integer |
int16 | Yes | System.Int16 | Signed 16-bit integer |
int32 | Yes | System.Int32 | Signed 32-bit integer |
int64 | Yes | System.Int64 | Signed 64-bit integer |
native int | No | Signed integer, native size | |
native unsigned int | No | Unsigned integer, native size | |
typedref | No | System.TypedReference | Pointer plus runtime type |
unsigned int8 | Yes | System.Byte | Unsigned 8-bit integer |
unsigned int16 | No | System.UInt16 | Unsigned 16-bit integer |
unsigned int32 | No | System.UInt32 | Unsigned 32-bit integer |
unsigned int64 | No | System.UInt64 | Unsigned 64-bit integer |