GraphQL introspection system defines __Type to represent all of TypeKinds
If some field does not apply to given type, it returns null
These scalars are created only for sake of documentation in introspection, not during execution
(extensions in package com.apurebase.kgraphql.schema.execution)
(extensions in package com.apurebase.kgraphql.schema.model)
Unstructured component of KGraphQL schema, intermediate data structure between DSL and SchemaNode
Directives provide a way to describe alternate runtime execution and type validation behavior in a GraphQL document.
right now its only wrapper for include, but GraphQL creators foreshadowed that
directives probably will be more important and powerful in future
If fields are null it'll fallback to the default from SchemaConfiguration.
FunctionWrapper is common interface for classes storing functions registered in schema by server code.
Only up to 9 arguments are supported, because kotlin-reflect doesn't support
invoking lambdas, local and anonymous functions yet, making implementation severely limited.
(extensions in package com.apurebase.kgraphql.schema.model.ast)
Contains a range of UTF-8 character offsets and token references that
identify the region of the source from which the AST derived.
(extensions in package com.apurebase.kgraphql.schema.execution)
Intermediate, mutable data structure used to prepare SchemaDefinition
Performs basic validation (names duplication etc.) when methods for adding schema components are invoked
(extensions in package com.apurebase.kgraphql.schema.execution)
Scalar resolves to a single scalar object, and can't have sub-selections in the request.
ScalarSupport defines strategy of handling supported scalar type.
SchemaBuilder exposes rich DSL to setup GraphQL schema
SchemaDefinition represents unstructured schema components
A representation of source input to GraphQL.
name and locationOffset are optional. They are useful for clients who
store GraphQL documents in source files; for example, if the GraphQL input
starts at line 40 in a file named Foo.graphql, it might be useful for name to
be "Foo.graphql" and location to be { line: 40, column: 0 }.
line and column in locationOffset are 1-indexed
Represents a range of characters represented by a lexical token
within a Source.
The enum type representing the token kinds values.
type conditions can be declared on fragments
Raw reference to type, e.g. in query variables section '($var: String!)', 'String!' is type reference
Represents already parsed variables json