Boo.Lang.Compiler.TypeSystem.TypeSystemServices.IsReferenceType C# (CSharp) Method

IsReferenceType() public static method

Returns true if the type is a reference type or a generic parameter type that is constrained to represent a reference type.
public static IsReferenceType ( IType type ) : bool
type IType
return bool
        public static bool IsReferenceType(IType type)
        {
            var gp = type as IGenericParameter;
            if (null == gp)
                return !type.IsValueType;

            if (gp.IsClass)
                return true;

            foreach (IType tc in gp.GetTypeConstraints())
                if (!tc.IsValueType && !tc.IsInterface)
                    return true;
            return false;
        }
TypeSystemServices