Helper class to avoid paying the cost of runtime type lookups.
This is also used to abstract underlying type info in the runtime (e.g. RuntimeTypeHandle vs StaticTypeReg)
CanBeNull | Gets a value indicating whether T can be null. i.e. The type is an object or nullable. |
IsAbstract | Gets a value indicating whether T is an abstract type. |
IsAbstractOrInterface | Gets a value indicating whether T is an abstract or interface type. |
IsArray | Gets a value indicating whether T is an array type. |
IsContainer | Gets a value indicating whether T is a property container type. |
IsEnum | Gets a value indicating whether T is an enum type. |
IsEnumFlags | Gets a value indicating whether T is an flags enum type. |
IsInterface | Gets a value indicating whether T is an interface type. |
IsLazyLoadReference | Gets a value indicating whether T is a UnityEngine.LazyLoadReference_1 type. |
IsMultidimensionalArray | Gets a value indicating whether T is a multidimensional array type. |
IsNullable | Gets a value indicating whether T is a nullable type. |
IsObject | Gets a value indicating whether T is Object type. |
IsPrimitive | Gets a value indicating whether T is a primitive type. |
IsPrimitiveOrString | Gets a value indicating whether T is a primitive or [[string ]] type. |
IsString | Gets a value indicating whether T is [[string ]] type. |
IsUnityObject | Gets a value indicating whether T is a UnityEngine.Object type. |
IsValueType | Gets a value indicating whether T is a value type. |