示例#1
0
 public override INode VisitDirectiveDefinition([NotNull] GraphqlParser.DirectiveDefinitionContext context)
 {
     return(new DirectiveDefinition(
                context.name().GetText(),
                MaybeGetDescription(context.description()),
                GetDirectiveLocations(context),
                context.argumentsDefinition()?.inputValueDefinition().Select(Visit).Cast <InputValueDefinition>(),
                context.Location()
                ));
 }
示例#2
0
        private IEnumerable <string> GetDirectiveLocations(GraphqlParser.DirectiveDefinitionContext directive)
        {
            var current = directive.directiveLocations();

            while (current != null)
            {
                yield return(current.directiveLocation().name().GetText());

                current = current.directiveLocations();
            }
        }