Trait cynic::schema::IsScalar

source ·
pub trait IsScalar<SchemaType> {
    type SchemaType;
}
Expand description

Indicates that a type is a scalar that maps to the given schema scalar.

Note that this type is actually implemented on the users types.

Required Associated Types§

source

type SchemaType

The schema marker type this scalar represents.

Implementations on Foreign Types§

source§

impl IsScalar<bool> for bool

source§

impl IsScalar<f64> for f64

source§

impl IsScalar<i32> for i32

source§

impl IsScalar<String> for str

source§

impl IsScalar<String> for String

source§

impl<T, U> IsScalar<Option<T>> for Option<U>
where U: IsScalar<T>,

source§

impl<T, U> IsScalar<Box<T>> for Box<U>
where U: IsScalar<T> + ?Sized,

§

type SchemaType = Box<<U as IsScalar<T>>::SchemaType>

source§

impl<T, U> IsScalar<Vec<T>> for [U]
where U: IsScalar<T>,

§

type SchemaType = Vec<<U as IsScalar<T>>::SchemaType>

source§

impl<T, U> IsScalar<Vec<T>> for Vec<U>
where U: IsScalar<T>,

§

type SchemaType = Vec<<U as IsScalar<T>>::SchemaType>

source§

impl<T, U> IsScalar<T> for Cow<'_, U>
where U: IsScalar<T> + ToOwned + ?Sized,

§

type SchemaType = <U as IsScalar<T>>::SchemaType

source§

impl<T, U> IsScalar<T> for &U
where U: IsScalar<T> + ?Sized,

§

type SchemaType = <U as IsScalar<T>>::SchemaType

source§

impl<T, U, const SIZE: usize> IsScalar<Vec<T>> for [U; SIZE]
where U: IsScalar<T>,

§

type SchemaType = Vec<<U as IsScalar<T>>::SchemaType>

Implementors§