The abstract syntax tree of a parsed GraphQL document.
Each TypedGql.Language.* module is one node of the GraphQL grammar, and the
types below name the alternatives the grammar allows at a given position: a
selection, a value, a type reference, or a top-level definition. Generation
plugins see these nodes as the query as written, next to the loaded
TypedGql.Schema describing what the server actually offers.
Summary
Functions
Every fragment spread name in a selection set, depth first, duplicates kept.
Whether a variable definition's default value can stand in for a missing one.
Types
@type definition_t() :: TypedGql.Language.OperationDefinition.t() | TypedGql.Language.Fragment.t() | TypedGql.Language.SchemaDeclaration.t() | TypedGql.Language.ObjectTypeDefinition.t() | TypedGql.Language.InterfaceTypeDefinition.t() | TypedGql.Language.UnionTypeDefinition.t() | TypedGql.Language.EnumTypeDefinition.t() | TypedGql.Language.ScalarTypeDefinition.t() | TypedGql.Language.InputObjectTypeDefinition.t() | TypedGql.Language.DirectiveDefinition.t() | TypedGql.Language.TypeExtensionDefinition.t()
@type selection_t() :: TypedGql.Language.Field.t() | TypedGql.Language.FragmentSpread.t() | TypedGql.Language.InlineFragment.t()
@type type_reference_t() :: TypedGql.Language.NamedType.t() | TypedGql.Language.ListType.t() | TypedGql.Language.NonNullType.t()
@type value_t() :: TypedGql.Language.IntValue.t() | TypedGql.Language.FloatValue.t() | TypedGql.Language.StringValue.t() | TypedGql.Language.BooleanValue.t() | TypedGql.Language.NullValue.t() | TypedGql.Language.EnumValue.t() | TypedGql.Language.ListValue.t() | TypedGql.Language.ObjectValue.t() | TypedGql.Language.Variable.t()
Functions
@spec spread_names(TypedGql.Language.SelectionSet.t() | nil) :: [String.t()]
Every fragment spread name in a selection set, depth first, duplicates kept.
Whether a variable definition's default value can stand in for a missing one.
nil means the definition declared no default. A NullValue declared one
that is null, which satisfies nothing a non-null type promises — so neither
makes the variable optional, nor lets it reach a non-null argument.