Trait product_os_async_executor::ExecutorPerform

source ·
pub trait ExecutorPerform<X>: Send + Sync {
    // Required methods
    fn spawn_in_context<'async_trait, F>(
        future: F,
    ) -> Pin<Box<dyn Future<Output = Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>> + Send + 'async_trait>>
       where F: Future + Send + 'static + 'async_trait,
             F::Output: Send + 'static;
    fn spawn_from_executor<'life0, 'async_trait, E, F>(
        executor: &'life0 E,
        future: F,
    ) -> Pin<Box<dyn Future<Output = Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>> + Send + 'async_trait>>
       where E: Executor<X> + 'async_trait,
             F: Future + Send + 'static + 'async_trait,
             F::Output: Send + 'static,
             'life0: 'async_trait;
    fn block_from_executor<'life0, 'async_trait, E, F>(
        executor: &'life0 E,
        future: F,
    ) -> Pin<Box<dyn Future<Output = F::Output> + Send + 'async_trait>>
       where E: Executor<X> + 'async_trait,
             F: Future + Send + 'static + 'async_trait,
             F::Output: Send + 'static,
             'life0: 'async_trait;
    fn spawn_in_context_sync<F>(
        future: F,
    ) -> Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>
       where F: Future + Send + 'static,
             F::Output: Send + 'static;
    fn spawn_from_executor_sync<E, F>(
        executor: &E,
        future: F,
    ) -> Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>
       where E: Executor<X>,
             F: Future + Send + 'static,
             F::Output: Send + 'static;
    fn block_from_executor_sync<E, F>(executor: &E, future: F) -> F::Output
       where E: Executor<X>,
             F: Future + Send + 'static,
             F::Output: Send + 'static;
}

Required Methods§

source

fn spawn_in_context<'async_trait, F>( future: F, ) -> Pin<Box<dyn Future<Output = Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>> + Send + 'async_trait>>
where F: Future + Send + 'static + 'async_trait, F::Output: Send + 'static,

source

fn spawn_from_executor<'life0, 'async_trait, E, F>( executor: &'life0 E, future: F, ) -> Pin<Box<dyn Future<Output = Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>> + Send + 'async_trait>>
where E: Executor<X> + 'async_trait, F: Future + Send + 'static + 'async_trait, F::Output: Send + 'static, 'life0: 'async_trait,

source

fn block_from_executor<'life0, 'async_trait, E, F>( executor: &'life0 E, future: F, ) -> Pin<Box<dyn Future<Output = F::Output> + Send + 'async_trait>>
where E: Executor<X> + 'async_trait, F: Future + Send + 'static + 'async_trait, F::Output: Send + 'static, 'life0: 'async_trait,

source

fn spawn_in_context_sync<F>( future: F, ) -> Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>
where F: Future + Send + 'static, F::Output: Send + 'static,

source

fn spawn_from_executor_sync<E, F>( executor: &E, future: F, ) -> Result<Arc<dyn Task<F::Output, Output = F::Output>>, SpawnError>
where E: Executor<X>, F: Future + Send + 'static, F::Output: Send + 'static,

source

fn block_from_executor_sync<E, F>(executor: &E, future: F) -> F::Output
where E: Executor<X>, F: Future + Send + 'static, F::Output: Send + 'static,

Object Safety§

This trait is not object safe.

Implementors§