[−][src]Struct futures_core::future::FutureObj
A custom trait object for polling futures, roughly akin to
Box<dyn Future<Output = T> + Send + 'a>
.
This custom trait object was introduced for two reasons:
- Currently it is not possible to take
dyn Trait
by value andBox<dyn Trait>
is not available in no_std contexts. - The
Future
trait is currently not object safe: TheFuture::poll
method makes uses the arbitrary self types feature and traits in which this feature is used are currently not object safe due to current compiler limitations. (See tracking issue for arbitrary self types for more information #44874)
Methods
impl<'a, T> FutureObj<'a, T>
[src]
ⓘImportant traits for FutureObj<'a, T>pub fn new<F: UnsafeFutureObj<'a, T> + Send>(f: F) -> FutureObj<'a, T>
[src]
ⓘImportant traits for FutureObj<'a, T>
Create a FutureObj
from a custom trait object representation.
Trait Implementations
impl<'a, T> Unpin for FutureObj<'a, T>
[src]
impl<'a, T> From<FutureObj<'a, T>> for LocalFutureObj<'a, T>
[src]
ⓘImportant traits for LocalFutureObj<'a, T>fn from(f: FutureObj<'a, T>) -> LocalFutureObj<'a, T>
[src]
ⓘImportant traits for LocalFutureObj<'a, T>
impl<'a, F: Future<Output = ()> + Send + 'a> From<Pin<Box<F>>> for FutureObj<'a, ()>
[src]
impl<'a, F: Future<Output = ()> + Send + 'a> From<Box<F>> for FutureObj<'a, ()>
[src]
impl<'a, T> Send for FutureObj<'a, T>
[src]
impl<'a, T> Debug for FutureObj<'a, T>
[src]
impl<'a, T> Future for FutureObj<'a, T>
[src]
Auto Trait Implementations
Blanket Implementations
impl<F, T, E> TryFuture for F where
F: Future<Output = Result<T, E>>,
[src]
F: Future<Output = Result<T, E>>,
type Ok = T
The type of successful values yielded by this future
type Error = E
The type of failures yielded by this future
fn try_poll(Pin<&mut F>, &mut Context) -> Poll<<F as Future>::Output>
[src]
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom 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> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
ⓘImportant traits for &'_ mut Ffn borrow_mut(&mut self) -> &mut T
[src]
ⓘImportant traits for &'_ mut F
impl<T, U> TryInto 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<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,