pub trait Executor: Sized {
// Required methods
fn new() -> Result<Self, Error>
where Self: Sized;
fn spawn(&self, future: impl Future<Output = ()> + MaybeSend + 'static);
// Provided method
fn enter<R>(&self, f: impl FnOnce() -> R) -> R { ... }
}
Expand description
A type that can run futures.
Required Methods§
Provided Methods§
Sourcefn enter<R>(&self, f: impl FnOnce() -> R) -> R
fn enter<R>(&self, f: impl FnOnce() -> R) -> R
Runs the given closure inside the Executor
.
Some executors, like tokio
, require some global state to be in place
before creating futures. This method can be leveraged to set up this
global state, call a function, restore the state, and obtain the result
of the call.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementors§
impl Executor for iced_futures::backend::native::async_std::Executor
Available on crate feature
async-std
and non-WebAssembly only.impl Executor for iced_futures::backend::native::smol::Executor
Available on crate feature
smol
and non-WebAssembly only.impl Executor for iced_futures::backend::null::Executor
impl Executor for iced_futures::backend::native::thread_pool::Executor
Available on crate feature
thread-pool
and non-WebAssembly only.impl Executor for iced_futures::backend::native::tokio::Executor
Available on crate feature
tokio
and non-WebAssembly only.