Mono.CSharp.TypeManager.IsStruct C# (CSharp) Method

IsStruct() public static method

public static IsStruct ( System.TypeSpec t ) : bool
t System.TypeSpec
return bool
	public static bool IsStruct (TypeSpec t)
	{
		return t.IsStruct;
	}

Usage Example

        //
        // The stack contains the pointer and the value of type `type'
        //
        public void EmitStoreFromPtr(TypeSpec type)
        {
            if (type.IsEnum)
            {
                type = EnumSpec.GetUnderlyingType(type);
            }

            if (type == TypeManager.int32_type || type == TypeManager.uint32_type)
            {
                ig.Emit(OpCodes.Stind_I4);
            }
            else if (type == TypeManager.int64_type || type == TypeManager.uint64_type)
            {
                ig.Emit(OpCodes.Stind_I8);
            }
            else if (type == TypeManager.char_type || type == TypeManager.short_type ||
                     type == TypeManager.ushort_type)
            {
                ig.Emit(OpCodes.Stind_I2);
            }
            else if (type == TypeManager.float_type)
            {
                ig.Emit(OpCodes.Stind_R4);
            }
            else if (type == TypeManager.double_type)
            {
                ig.Emit(OpCodes.Stind_R8);
            }
            else if (type == TypeManager.byte_type || type == TypeManager.sbyte_type ||
                     type == TypeManager.bool_type)
            {
                ig.Emit(OpCodes.Stind_I1);
            }
            else if (type == TypeManager.intptr_type)
            {
                ig.Emit(OpCodes.Stind_I);
            }
            else if (TypeManager.IsStruct(type) || TypeManager.IsGenericParameter(type))
            {
                Emit(OpCodes.Stobj, type);
            }
            else
            {
                ig.Emit(OpCodes.Stind_Ref);
            }
        }
All Usage Examples Of Mono.CSharp.TypeManager::IsStruct