pub enum TypeKind {
Scalar,
Object,
Interface,
Union,
Enum,
InputObject,
List,
NonNull,
}
Expand description
GraphQL type kind
The GraphQL specification defines a number of type kinds - the meta type
of a type.
Variants
Scalar
Scalar types
Scalar types appear as the leaf nodes of GraphQL queries. Strings,
numbers, and booleans are the built in types, and while it’s possible
to define your own, it’s relatively uncommon.
Object
Object types
The most common type to be implemented by users. Objects have fields
and can implement interfaces.
Interface
Interface types
Interface types are used to represent overlapping fields between
multiple types, and can be queried for their concrete type.
Union
Union types
Unions are similar to interfaces but can not contain any fields on
their own.
Enum
Enum types
Like scalars, enum types appear as the leaf nodes of GraphQL queries.
InputObject
Input objects
Represents complex values provided in queries into the system.
List
List types
Represent lists of other types. This library provides implementations
for vectors and slices, but other Rust types can be extended to serve
as GraphQL lists.
NonNull
Non-null types
In GraphQL, nullable types are the default. By putting a !
after a
type, it becomes non-nullable.
Trait Implementations
Performs the conversion.
Performs the conversion from an absent value (e.g. to distinguish between implicit and
explicit null). The default implementation just uses from_input_value
as if an explicit
null were provided. This conversion must not fail. Read more
Context type for this GraphQLValue
. Read more
Type that may carry additional schema information for this GraphQLValue
. Read more
Returns name of the GraphQLType
exposed by this GraphQLValue
. Read more
Resolves the provided selection_set
against this GraphQLValue
. Read more
fn resolve_field(
&self,
_info: &Self::TypeInfo,
_field_name: &str,
_arguments: &Arguments<'_, S>,
_executor: &Executor<'_, '_, Self::Context, S>
) -> ExecutionResult<S>
fn resolve_field(
&self,
_info: &Self::TypeInfo,
_field_name: &str,
_arguments: &Arguments<'_, S>,
_executor: &Executor<'_, '_, Self::Context, S>
) -> ExecutionResult<S>
Resolves the value of a single field on this GraphQLValue
. Read more
Resolves this GraphQLValue
(being an interface or an union) into a concrete
downstream object type. Read more
Returns the concrete GraphQLType
name for this GraphQLValue
being an interface,
an union or an object. Read more
impl<__S> GraphQLValueAsync<__S> for TypeKind where
__S: ScalarValue,
__S: Send + Sync,
Self: Sync,
impl<__S> GraphQLValueAsync<__S> for TypeKind where
__S: ScalarValue,
__S: Send + Sync,
Self: Sync,
Resolves the provided selection_set
against this GraphQLValueAsync
. Read more
fn resolve_field_async<'a>(
&'a self,
_info: &'a Self::TypeInfo,
_field_name: &'a str,
_arguments: &'a Arguments<'_, S>,
_executor: &'a Executor<'_, '_, Self::Context, S>
) -> BoxFuture<'a, ExecutionResult<S>>
fn resolve_field_async<'a>(
&'a self,
_info: &'a Self::TypeInfo,
_field_name: &'a str,
_arguments: &'a Arguments<'_, S>,
_executor: &'a Executor<'_, '_, Self::Context, S>
) -> BoxFuture<'a, ExecutionResult<S>>
Resolves the value of a single field on this GraphQLValueAsync
. Read more
Resolves this GraphQLValueAsync
(being an interface or an union) into a
concrete downstream object type. Read more
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for TypeKind
impl UnwindSafe for TypeKind
Blanket Implementations
Mutably borrows from an owned value. Read more
Compare self to key
and return true
if they are equal.