Example #1
0
        public override object VisitFragmentDefinition(GraphQLParser.FragmentDefinitionContext context)
        {
            var name = context.fragmentName().GetText();
            var type = Visit(context.typeCondition().typeName()) as NamedType;

            var fragmentDefinition = new FragmentDefinition();

            NewNode(fragmentDefinition, context);

            fragmentDefinition.Name = name;
            fragmentDefinition.Type = type;

            var directiveContext = context.directives();

            if (directiveContext != null)
            {
                var directives = Visit(directiveContext) as Directives;
                fragmentDefinition.Directives = directives;
            }

            var selectionContext = context.selectionSet();

            if (selectionContext != null)
            {
                var selections = Visit(selectionContext) as SelectionSet;
                fragmentDefinition.SelectionSet = selections;
            }

            return(fragmentDefinition);
        }
Example #2
0
 /// <summary>
 /// Exit a parse tree produced by <see cref="GraphQLParser.fragmentDefinition"/>.
 /// <para>The default implementation does nothing.</para>
 /// </summary>
 /// <param name="context">The parse tree.</param>
 public virtual void ExitFragmentDefinition([NotNull] GraphQLParser.FragmentDefinitionContext context)
 {
 }