[−][src]Struct async_graphql::Schema
GraphQL schema
Implementations
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]
Query: ObjectType + Send + Sync + 'static,
Mutation: ObjectType + Send + Sync + 'static,
Subscription: SubscriptionType + Send + Sync + 'static,
pub fn build(
query: Query,
mutation: Mutation,
subscription: Subscription
) -> SchemaBuilder<Query, Mutation, Subscription>[src]
query: Query,
mutation: Mutation,
subscription: Subscription
) -> SchemaBuilder<Query, Mutation, Subscription>
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]
query: Query,
mutation: Mutation,
subscription: Subscription
) -> Schema<Query, Mutation, Subscription>
Create a schema
pub async fn execute<'_, '_>(
&'_ self,
query_source: &'_ str
) -> Result<QueryResponse>[src]
&'_ self,
query_source: &'_ str
) -> Result<QueryResponse>
Execute query without create the QueryBuilder.
pub async fn execute_stream<'_, '_>(
&'_ self,
query_source: &'_ str
) -> StreamResponse[src]
&'_ self,
query_source: &'_ str
) -> StreamResponse
Execute the query without create the QueryBuilder, returns a stream, the first result being the query result,
followed by the incremental result. Only when there are @defer and @stream directives
in the query will there be subsequent incremental results.
pub async fn create_subscription_stream<'_, '_, '_>(
&'_ self,
source: &'_ str,
operation_name: Option<&'_ str>,
variables: Variables,
ctx_data: Option<Arc<Data>>
) -> Result<impl Stream<Item = Result<Value>> + Send>[src]
&'_ self,
source: &'_ str,
operation_name: Option<&'_ str>,
variables: Variables,
ctx_data: Option<Arc<Data>>
) -> Result<impl Stream<Item = Result<Value>> + Send>
Create subscription stream, typically called inside the SubscriptionTransport::handle_request method
pub fn subscription_connection<T: SubscriptionTransport>(
&self,
transport: T
) -> (UnboundedSender<Bytes>, impl Stream<Item = Bytes> + Unpin)[src]
&self,
transport: T
) -> (UnboundedSender<Bytes>, impl Stream<Item = Bytes> + Unpin)
Create subscription connection, returns Sink and Stream.
Trait Implementations
impl<Query, Mutation, Subscription> Clone for Schema<Query, Mutation, Subscription>[src]
fn clone(&self) -> Self[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
impl<Query, Mutation, Subscription> Deref for Schema<Query, Mutation, Subscription> where
Query: ObjectType + Send + Sync + 'static,
Mutation: ObjectType + Send + Sync + 'static,
Subscription: SubscriptionType + Send + Sync + 'static, [src]
Query: ObjectType + Send + Sync + 'static,
Mutation: ObjectType + Send + Sync + 'static,
Subscription: SubscriptionType + Send + Sync + 'static,
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,
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,
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]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,