Trait async_graphql::Executor

source ·
pub trait Executor: Unpin + Clone + Send + Sync + 'static {
    // Required methods
    fn execute(&self, request: Request) -> impl Future<Output = Response> + Send;
    fn execute_stream(
        &self,
        request: Request,
        session_data: Option<Arc<Data>>
    ) -> BoxStream<'static, Response>;

    // Provided method
    fn execute_batch(
        &self,
        batch_request: BatchRequest
    ) -> impl Future<Output = BatchResponse> + Send { ... }
}
Expand description

Represents a GraphQL executor

Required Methods§

source

fn execute(&self, request: Request) -> impl Future<Output = Response> + Send

Execute a GraphQL query.

source

fn execute_stream( &self, request: Request, session_data: Option<Arc<Data>> ) -> BoxStream<'static, Response>

Execute a GraphQL subscription with session data.

Provided Methods§

source

fn execute_batch( &self, batch_request: BatchRequest ) -> impl Future<Output = BatchResponse> + Send

Execute a GraphQL batch query.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Executor for async_graphql::dynamic::Schema

Available on crate feature dynamic-schema only.
source§

impl<Query, Mutation, Subscription> Executor for async_graphql::Schema<Query, Mutation, Subscription>
where Query: ObjectType + 'static, Mutation: ObjectType + 'static, Subscription: SubscriptionType + 'static,