py_gql.lang.ast#

GraphQL AST representations corresponding to the GraphQL language elements.

See: http://facebook.github.io/graphql/June2018/#sec-Language/#sec-Language

class py_gql.lang.ast.Argument(name, value, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

loc#
name#
source#
value#
class py_gql.lang.ast.BooleanValue(value, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Value

loc#
source#
value#
class py_gql.lang.ast.Definition[source]#

Bases: py_gql.lang.ast.Node

class py_gql.lang.ast.Directive(name, arguments=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

arguments#
loc#
name#
source#
class py_gql.lang.ast.DirectiveDefinition(name, arguments=None, locations=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.SupportDescription, py_gql.lang.ast.TypeSystemDefinition

arguments#
description#
loc#
locations#
name#
source#
class py_gql.lang.ast.Document(definitions=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

definitions#
fragments#
Return type:Dict[str, FragmentDefinition]
loc#
source#
class py_gql.lang.ast.EnumTypeDefinition(name, directives=None, values=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.TypeDefinition

description#
directives#
loc#
name#
source#
values#
class py_gql.lang.ast.EnumTypeExtension(name, directives=None, values=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeExtension

directives#
loc#
name#
source#
values#
class py_gql.lang.ast.EnumValue(value, source=None, loc=None)[source]#

Bases: py_gql.lang.ast._StringValue

class py_gql.lang.ast.EnumValueDefinition(name, directives=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.SupportDescription, py_gql.lang.ast.Node

description#
directives#
loc#
name#
source#
class py_gql.lang.ast.ExecutableDefinition[source]#

Bases: py_gql.lang.ast.Definition

class py_gql.lang.ast.Field(name, alias=None, arguments=None, directives=None, selection_set=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.Selection

alias#
arguments#
directives#
loc#
name#
response_name#
Return type:str
selection_set#
source#
class py_gql.lang.ast.FieldDefinition(name, type, arguments=None, directives=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.SupportDescription, py_gql.lang.ast.Node

arguments#
description#
directives#
loc#
name#
source#
type#
class py_gql.lang.ast.FloatValue(value, source=None, loc=None)[source]#

Bases: py_gql.lang.ast._StringValue

class py_gql.lang.ast.FragmentDefinition(name, type_condition, selection_set, variable_definitions=None, directives=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.ExecutableDefinition

directives#
loc#
name#
selection_set#
type_condition#
variable_definitions#
class py_gql.lang.ast.FragmentSpread(name, directives=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.Selection

directives#
loc#
name#
source#
class py_gql.lang.ast.InlineFragment(selection_set, type_condition=None, directives=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.Selection

directives#
loc#
selection_set#
source#
type_condition#
class py_gql.lang.ast.InputObjectTypeDefinition(name, directives=None, fields=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.TypeDefinition

description#
directives#
fields#
loc#
name#
source#
class py_gql.lang.ast.InputObjectTypeExtension(name, directives=None, fields=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeExtension

directives#
fields#
loc#
name#
source#
class py_gql.lang.ast.InputValueDefinition(name, type, default_value=None, directives=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.SupportDescription, py_gql.lang.ast.Node

default_value#
description#
directives#
loc#
name#
source#
type#
class py_gql.lang.ast.IntValue(value, source=None, loc=None)[source]#

Bases: py_gql.lang.ast._StringValue

class py_gql.lang.ast.InterfaceTypeDefinition(name, directives=None, fields=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.TypeDefinition

description#
directives#
fields#
loc#
name#
source#
class py_gql.lang.ast.InterfaceTypeExtension(name, directives=None, fields=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeExtension

directives#
fields#
loc#
name#
source#
class py_gql.lang.ast.ListType(type, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Type

loc#
source#
type#
class py_gql.lang.ast.ListValue(values, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Value

loc#
source#
values#
class py_gql.lang.ast.Name(value, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

loc#
source#
value#
class py_gql.lang.ast.NamedType(name, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Type

loc#
name#
source#
class py_gql.lang.ast.Node[source]#

Bases: object

Base AST node.

copy()#
deepcopy()[source]#
loc = None#
source = None#
to_dict()[source]#

Convert the current node and all of its children to a JSON serializable format.

This is mostly useful for testing and when you need to convert nodes to JSON such as interop with other languages, printing and serialization.

The conversion rules are:

  • Each Node subclass is converted to a dict of their own converted attributes adding a __kind__ key corresponding to the node’s classname.
  • Primitive values (int, strings, etc.) are left as is.
  • Lists are converted per-element.
Returns:Converted value
Return type:Dict[str, Any]
class py_gql.lang.ast.NonNullType(type, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Type

loc#
source#
type#
class py_gql.lang.ast.NullValue(source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Value

loc#
source#
class py_gql.lang.ast.ObjectField(name, value, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

loc#
name#
source#
value#
class py_gql.lang.ast.ObjectTypeDefinition(name, interfaces=None, directives=None, fields=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.TypeDefinition

description#
directives#
fields#
interfaces#
loc#
name#
source#
class py_gql.lang.ast.ObjectTypeExtension(name, interfaces=None, directives=None, fields=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeExtension

directives#
fields#
interfaces#
loc#
name#
source#
class py_gql.lang.ast.ObjectValue(fields, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Value

fields#
loc#
source#
class py_gql.lang.ast.OperationDefinition(operation, selection_set, name=None, variable_definitions=None, directives=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.ExecutableDefinition

directives#
loc#
name#
operation#
selection_set#
source#
variable_definitions#
class py_gql.lang.ast.OperationTypeDefinition(operation, type, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

loc#
operation#
source#
type#
class py_gql.lang.ast.ScalarTypeDefinition(name, directives=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.TypeDefinition

description#
directives#
loc#
name#
source#
class py_gql.lang.ast.ScalarTypeExtension(name, directives=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeExtension

directives#
loc#
name#
source#
class py_gql.lang.ast.SchemaDefinition(directives=None, operation_types=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeSystemDefinition

directives#
loc#
operation_types#
source#
class py_gql.lang.ast.SchemaExtension(directives=None, operation_types=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeSystemExtension

directives#
loc#
operation_types#
source#
class py_gql.lang.ast.Selection[source]#

Bases: py_gql.lang.ast.Node

class py_gql.lang.ast.SelectionSet(selections=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

loc#
selections#
source#
class py_gql.lang.ast.StringValue(value, block=False, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Value

block#
loc#
source#
value#
class py_gql.lang.ast.SupportDescription[source]#

Bases: object

description = NotImplemented#
class py_gql.lang.ast.SupportDirectives[source]#

Bases: object

directives = NotImplemented#
class py_gql.lang.ast.Type[source]#

Bases: py_gql.lang.ast.Node

class py_gql.lang.ast.TypeDefinition[source]#

Bases: py_gql.lang.ast.SupportDescription, py_gql.lang.ast.TypeSystemDefinition

name = NotImplemented#
class py_gql.lang.ast.TypeExtension[source]#

Bases: py_gql.lang.ast.TypeSystemExtension

name = NotImplemented#
class py_gql.lang.ast.TypeSystemDefinition[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.Definition

class py_gql.lang.ast.TypeSystemExtension[source]#

Bases: py_gql.lang.ast.TypeSystemDefinition

class py_gql.lang.ast.UnionTypeDefinition(name, directives=None, types=None, source=None, loc=None, description=None)[source]#

Bases: py_gql.lang.ast.TypeDefinition

description#
directives#
loc#
name#
source#
types#
class py_gql.lang.ast.UnionTypeExtension(name, directives=None, types=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.TypeExtension

directives#
loc#
name#
source#
types#
class py_gql.lang.ast.Value[source]#

Bases: py_gql.lang.ast.Node

class py_gql.lang.ast.Variable(name, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.Node

loc#
name#
source#
class py_gql.lang.ast.VariableDefinition(variable, type, default_value=None, directives=None, source=None, loc=None)[source]#

Bases: py_gql.lang.ast.SupportDirectives, py_gql.lang.ast.Node

default_value#
directives#
loc#
source#
type#
variable#