예제 #1
0
        internal override ErrorInfo GetBoundError(ActionBinder binder, Expression instance)
        {
            MethodInfo getter = ResolveGetter();

            if (getter == null)
            {
                return(binder.MakeMissingMemberErrorInfo(DeclaringType, Name));
            }

            if (getter.ContainsGenericParameters)
            {
                return(binder.MakeGenericAccessError(this));
            }

            if (instance == null)
            {
                return(binder.MakeInvalidParametersError(Name, 0));
            }

            throw new InvalidOperationException();
        }