[][src]Trait async_graphql::Type

pub trait Type {
    fn type_name() -> Cow<'static, str>;
fn create_type_info(registry: &mut Registry) -> String; fn qualified_type_name() -> String { ... }
fn introspection_type_name(&self) -> Cow<'static, str> { ... } }

Represents a GraphQL type.

All GraphQL types implement this trait, such as Scalar, Object, Union ...

Required methods

fn type_name() -> Cow<'static, str>[]

Type the name.

fn create_type_info(registry: &mut Registry) -> String[]

Create type information in the registry and return qualified typename.

Provided methods

fn qualified_type_name() -> String[]

Qualified typename.

fn introspection_type_name(&self) -> Cow<'static, str>[]

Introspection type name

Is the return value of field __typename, the interface and union should return the current type, and the others return Type::type_name.

Implementations on Foreign Types

impl<T: Type + Send + Sync, '_> Type for &'_ T[src][]

impl Type for bool[src][]

impl Type for char[src][]

impl Type for f32[src][]

impl Type for f64[src][]

impl Type for i8[src][]

impl Type for i16[src][]

impl Type for i32[src][]

impl Type for i64[src][]

impl Type for u8[src][]

impl Type for u16[src][]

impl Type for u32[src][]

impl Type for u64[src][]

impl<T> Type for BTreeMap<String, T> where
    T: OutputValueType + InputValueType + Send + Sync
[src][]

impl<T> Type for HashMap<String, T> where
    T: OutputValueType + InputValueType + Send + Sync
[src][]

impl<T: Type> Type for BTreeSet<T>[src][]

impl<T: Type> Type for HashSet<T>[src][]

impl<T: Type> Type for LinkedList<T>[src][]

impl<'a, T: Type + 'a> Type for &'a [T][src][]

impl<T: Type> Type for Vec<T>[src][]

impl<T: Type> Type for VecDeque<T>[src][]

impl Type for NonZeroI8[src][]

impl Type for NonZeroI16[src][]

impl Type for NonZeroI32[src][]

impl Type for NonZeroI64[src][]

impl Type for NonZeroU8[src][]

impl Type for NonZeroU16[src][]

impl Type for NonZeroU32[src][]

impl Type for NonZeroU64[src][]

impl<T: Type> Type for Option<T>[src][]

impl Type for String[src][]

impl<'a> Type for &'a str[src][]

impl Type for ObjectId[src][]

impl Type for UtcDateTime[src][]

impl Type for DateTime<FixedOffset>[src][]

impl Type for DateTime<Local>[src][]

impl Type for DateTime<Utc>[src][]

impl Type for NaiveDate[src][]

impl Type for NaiveTime[src][]

impl Type for NaiveDateTime[src][]

impl Type for Url[src][]

impl Type for Uuid[src][]

Implementors

impl Type for EmptyFields[src][+]

impl Type for PageInfo[src][+]

impl Type for Any[src][+]

impl Type for EmptyMutation[src][+]

impl Type for EmptySubscription[src][+]

impl Type for ID[src][+]

impl Type for Upload[src][+]

impl<C, T, E> Type for Edge<C, T, E> where
    C: CursorType,
    T: OutputValueType + Send + Sync,
    E: ObjectType + Sync + Send
[src][+]

impl<C, T, EC, EE> Type for Connection<C, T, EC, EE> where
    C: CursorType,
    T: OutputValueType + Send + Sync,
    EC: ObjectType + Sync + Send,
    EE: ObjectType + Sync + Send
[src][+]

impl<T> Type for OutputJson<T>[src][+]

impl<T: Type> Type for MaybeUndefined<T>[src][+]

impl<T: Type> Type for Result<T>[src][+]

impl<T: Num + Display + Send + Sync> Type for StringNumber<T> where
    <T as Num>::FromStrRadixErr: Display
[src][+]

impl<T: DeserializeOwned + Serialize + Send + Sync> Type for Json<T>[src][+]