pub trait GraphQLInterface<S: ScalarValue>: GraphQLType<S> {
    // Provided method
    fn mark() { ... }
}
Expand description

Maker trait for GraphQL interfaces.

This trait extends the GraphQLType and is only used to mark an interface. During compile this addition information is required to prevent unwanted structure compiling. If an object requires this trait instead of the GraphQLType, then it explicitly requires GraphQL interfaces. Other types (scalars, enums, objects, input objects and unions) are not allowed.

Provided Methods§

source

fn mark()

An arbitrary function without meaning.

May contain compile timed check logic which ensures that types are used correctly according to the GraphQL specification.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<S, T> GraphQLInterface<S> for &T
where T: GraphQLInterface<S> + ?Sized, S: ScalarValue,

source§

impl<S, T> GraphQLInterface<S> for Box<T>
where T: GraphQLInterface<S> + ?Sized, S: ScalarValue,

source§

impl<S, T> GraphQLInterface<S> for Arc<T>
where T: GraphQLInterface<S> + ?Sized, S: ScalarValue,

Implementors§