Esempio n. 1
0
        public static FilterScope <T> AddScope <T>(
            this IFilterVisitorContext <T> context)
        {
            FilterScope <T>?closure = context.CreateScope();

            context.Scopes.Push(closure);
            return(closure);
        }
Esempio n. 2
0
        public static IError CreateNonNullError <T>(
            IFilterField field,
            IValueNode value,
            IFilterVisitorContext <T> context)
        {
            IFilterInputType filterType = context.Types.OfType <IFilterInputType>().First();

            return(ErrorBuilder.New()
                   .SetMessage(
                       DataResources.ErrorHelper_CreateNonNullError,
                       context.Operations.Peek().Name,
                       filterType.Visualize())
                   .AddLocation(value)
                   .SetExtension("expectedType", new NonNullType(field.Type).Visualize())
                   .SetExtension("filterType", filterType.Visualize())
                   .Build());
        }
Esempio n. 3
0
        public static IError CreateNonNullError <T>(
            IFilterField field,
            IValueNode value,
            IFilterVisitorContext <T> context)
        {
            IFilterInputType filterType = context.Types.OfType <IFilterInputType>().First();

            return(ErrorBuilder.New()
                   .SetMessage(
                       "The provided value for filter `{0}` of type {1} is invalid. " +
                       "Null values are not supported.",
                       context.Operations.Peek().Name,
                       filterType.Visualize())
                   .AddLocation(value)
                   .SetExtension("expectedType", new NonNullType(field.Type).Visualize())
                   .SetExtension("filterType", filterType.Visualize())
                   .Build());
        }
Esempio n. 4
0
 public static void ReportError <T>
     (this IFilterVisitorContext <T> context,
     IError error) =>
 context.Errors.Add(error);
Esempio n. 5
0
 public static FilterScope <T> PopScope <T>(
     this IFilterVisitorContext <T> context) =>
 context.Scopes.Pop();
Esempio n. 6
0
 public static Queue <T> PopLevel <T>(this IFilterVisitorContext <T> context) =>
 context.Scopes.Peek().Level.Pop();
Esempio n. 7
0
 public static T PopInstance <T>(this IFilterVisitorContext <T> context) =>
 context.Scopes.Peek().Instance.Pop();
Esempio n. 8
0
 public static void PushLevel <T>(
     this IFilterVisitorContext <T> context, Queue <T> nextLevel) =>
 context.Scopes.Peek().Level.Push(nextLevel);
Esempio n. 9
0
 public static void PushInstance <T>(
     this IFilterVisitorContext <T> context, T nextExpression) =>
 context.Scopes.Peek().Instance.Push(nextExpression);
Esempio n. 10
0
 public static FilterScope <T> GetScope <T>(
     this IFilterVisitorContext <T> context) =>
 context.Scopes.Peek();