OnlyStaticFieldsHaveNullInstance() static private method

ArgumentException with message like "Static field requires null instance, non-static field requires non-null instance."
static private OnlyStaticFieldsHaveNullInstance ( string paramName ) : Exception
paramName string
return Exception
Esempio n. 1
0
        public static MemberExpression Field(Expression expression, FieldInfo field)
        {
            ContractUtils.RequiresNotNull(field, nameof(field));

            if (field.IsStatic)
            {
                if (expression != null)
                {
                    throw Error.OnlyStaticFieldsHaveNullInstance(nameof(expression));
                }
            }
            else
            {
                if (expression == null)
                {
                    throw Error.OnlyStaticFieldsHaveNullInstance(nameof(field));
                }
                RequiresCanRead(expression, nameof(expression));
                if (!TypeUtils.AreReferenceAssignable(field.DeclaringType, expression.Type))
                {
                    throw Error.FieldInfoNotDefinedForType(field.DeclaringType, field.Name, expression.Type);
                }
            }
            return(MemberExpression.Make(expression, field));
        }