Expand description
A collection of Rust modules to process GraphQL documents
This module contains the AST types and traits for the GraphQL query language.
Modules§
- indexmap
IndexMap
is a hash table where the iteration order of the key-value pairs is independent of the hash values of the keys.
Macros§
- value
- Construct a
ConstValue
.
Structs§
- Const
Directive - A const GraphQL directive, such as
@deprecated(reason: "Use the other field)
. This differs fromDirective
in that it usesConstValue
instead ofValue
. - Deserializer
Error - This type represents errors that can occur when deserializing.
- Directive
- A GraphQL directive, such as
@deprecated(reason: "Use the other field")
. - Directive
Definition - The definition of a directive in a service.
- Enum
Type - The definition of an enum.
- Enum
Value Definition - The definition of a value inside an enum.
- Executable
Document - An executable GraphQL file or request string.
- Field
- A field being selected on an object, such as
name
orweightKilos: weight(unit: KILOGRAMS)
. - Field
Definition - The definition of a field inside an object or interface.
- Fragment
Definition - The definition of a fragment, such as
fragment userFields on User { name age }
. - Fragment
Spread - A fragment selector, such as
... userFields
. - Inline
Fragment - An inline fragment selector, such as
... on User { name }
. - Input
Object Type - The definition of an input object.
- Input
Value Definition - The definition of an input value inside the arguments of a field.
- Interface
Type - The definition of an interface type.
- Name
- A GraphQL name.
- Number
- Represents a JSON number, whether integer or floating point.
- Object
Type - The definition of an object type.
- Operation
Definition - A GraphQL operation, such as
mutation($content:String!) { makePost(content: $content) { id } }
. - Operations
Iter - An iterator over the operations of a document.
- Pos
- Original position of an element in source code.
- Positioned
- An AST node that stores its original position.
- Schema
Definition - The definition of the schema in a GraphQL service.
- Selection
Set - A set of fields to be selected, for example
{ name age }
. - Serializer
Error - This type represents errors that can occur when serializing.
- Service
Document - A GraphQL file or request string defining a GraphQL service.
- Type
- A GraphQL type, for example
String
or[String!]!
. - Type
Condition - A type a fragment can apply to (
on
followed by the type). - Type
Definition - The definition of a type in a GraphQL service.
- Union
Type - The definition of a union type.
- Variable
Definition - A variable definition inside a list of variable definitions, for example
$name:String!
. - Variables
- Variables of a query.
Enums§
- Base
Type - A GraphQL base type, for example
String
or[String!]
. This does not include whether the type is nullable; for that see Type. - Const
Value - A resolved GraphQL value, for example
1
or"Hello World!"
. - Directive
Location - Where a directive can apply to.
- Document
Operations - The operations of a GraphQL document.
- Operation
Type - The type of an operation;
query
,mutation
orsubscription
. - Selection
- A part of an object to be selected; a single field, a fragment spread or an inline fragment.
- Type
Kind - A kind of type; scalar, object, enum, etc.
- Type
System Definition - A definition concerning the type system of a GraphQL service.
- Value
- A GraphQL value, for example
1
,$name
or"Hello World!"
. This isConstValue
with variables.
Traits§
- AstPosition
Ext - Extension trait for adding position information to AST nodes.
- IntoAst
- A value-to-AST conversion trait that consumes the input value.
Functions§
- from_
value - Interpret a
ConstValue
as an instance of typeT
. - to_
value - Convert a
T
intoConstValue
which is an enum that can represent any valid GraphQL data.