[][src]Enum juniper::TypeKind

pub enum TypeKind {
    Scalar,
    Object,
    Interface,
    Union,
    Enum,
    InputObject,
    List,
    NonNull,
}

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

impl<__S: ScalarValue> FromInputValue<__S> for TypeKind[src]

impl<__S: ScalarValue> ToInputValue<__S> for TypeKind[src]

impl<__S> GraphQLType<__S> for TypeKind where
    __S: ScalarValue,
    &'__b __S: ScalarRefValue<'__b>, 
[src]

type Context = ()

The expected context type for this GraphQL type Read more

type TypeInfo = ()

Type that may carry additional schema information Read more

fn resolve_field(
    &self,
    info: &Self::TypeInfo,
    field_name: &str,
    arguments: &Arguments<S>,
    executor: &Executor<Self::Context, S>
) -> ExecutionResult<S>
[src]

Resolve the value of a single field on this type. Read more

fn resolve_into_type(
    &self,
    info: &Self::TypeInfo,
    type_name: &str,
    selection_set: Option<&[Selection<S>]>,
    executor: &Executor<Self::Context, S>
) -> ExecutionResult<S>
[src]

Resolve this interface or union into a concrete type Read more

fn concrete_type_name(
    &self,
    context: &Self::Context,
    info: &Self::TypeInfo
) -> String
[src]

Return the concrete type name for this instance/union. Read more

impl PartialEq<TypeKind> for TypeKind[src]

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests for !=.

impl Clone for TypeKind[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Eq for TypeKind[src]

impl Debug for TypeKind[src]

Auto Trait Implementations

impl Send for TypeKind

impl Sync for TypeKind

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<Q, K> Equivalent for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]