[][src]Struct async_graphql::Schema

pub struct Schema<Query, Mutation, Subscription>(_);

GraphQL schema

Methods

impl<Query, Mutation, Subscription> Schema<Query, Mutation, Subscription> where
    Query: ObjectType + Send + Sync + 'static,
    Mutation: ObjectType + Send + Sync + 'static,
    Subscription: SubscriptionType + Send + Sync + 'static, 
[src]

pub fn build(
    query: Query,
    mutation: Mutation,
    subscription: Subscription
) -> SchemaBuilder<Query, Mutation, Subscription>
[src]

Create a schema builder

The root object for the query and Mutation needs to be specified. If there is no mutation, you can use EmptyMutation. If there is no subscription, you can use EmptySubscription.

pub fn new(
    query: Query,
    mutation: Mutation,
    subscription: Subscription
) -> Schema<Query, Mutation, Subscription>
[src]

Create a schema

pub fn query(
    &self,
    source: &str
) -> Result<QueryBuilder<Query, Mutation, Subscription>>
[src]

Start a query and return QueryBuilder.

pub async fn execute<'_, '_>(&'_ self, source: &'_ str) -> Result<QueryResponse>[src]

Execute query without create the QueryBuilder.

pub fn create_subscription_stub(
    &self,
    source: &str,
    operation_name: Option<&str>,
    variables: Variables
) -> Result<SubscriptionStub<Query, Mutation, Subscription>> where
    Self: Sized
[src]

Create subscription stub, typically called inside the SubscriptionTransport::handle_request method/

pub fn subscription_connection<T: SubscriptionTransport>(
    &self,
    transport: T
) -> SubscriptionConnectionBuilder<Query, Mutation, Subscription, T>
[src]

Create subscription connection, returns SubscriptionConnectionBuilder.

Trait Implementations

impl<Query, Mutation, Subscription> Clone for Schema<Query, Mutation, Subscription>[src]

Auto Trait Implementations

impl<Query, Mutation, Subscription> !RefUnwindSafe for Schema<Query, Mutation, Subscription>

impl<Query, Mutation, Subscription> Send for Schema<Query, Mutation, Subscription> where
    Mutation: Send + Sync,
    Query: Send + Sync,
    Subscription: Send + Sync

impl<Query, Mutation, Subscription> Sync for Schema<Query, Mutation, Subscription> where
    Mutation: Send + Sync,
    Query: Send + Sync,
    Subscription: Send + Sync

impl<Query, Mutation, Subscription> Unpin for Schema<Query, Mutation, Subscription>

impl<Query, Mutation, Subscription> !UnwindSafe for Schema<Query, Mutation, Subscription>

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Owned = T

The resulting type after obtaining ownership.

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,