[−][src]Struct futures_core::stream::StreamObj
A custom trait object for polling streams, roughly akin to
Box<dyn Stream<Item = 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
Stream
trait is currently not object safe: TheStream::poll_next
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 arbitray self types for more information #44874)
Methods
impl<'a, T> StreamObj<'a, T>
[src]
pub fn new<F: UnsafeStreamObj<'a, T> + Send>(f: F) -> StreamObj<'a, T>
[src]
Create a StreamObj
from a custom trait object representation.
Trait Implementations
impl<'a, T> Stream for StreamObj<'a, T>
[src]
type Item = T
Values yielded by the stream.
fn poll_next(self: Pin<&mut Self>, cx: &mut Context) -> Poll<Option<T>>
[src]
impl<'a, T> Unpin for StreamObj<'a, T>
[src]
impl<'a, T> From<StreamObj<'a, T>> for LocalStreamObj<'a, T>
[src]
fn from(f: StreamObj<'a, T>) -> LocalStreamObj<'a, T>
[src]
impl<'a, F: Stream<Item = ()> + Send + 'a> From<Pin<Box<F>>> for StreamObj<'a, ()>
[src]
impl<'a, F: Stream<Item = ()> + Send + 'a> From<Box<F>> for StreamObj<'a, ()>
[src]
impl<'a, T> Send for StreamObj<'a, T>
[src]
impl<'a, T> Debug for StreamObj<'a, T>
[src]
Auto Trait Implementations
Blanket Implementations
impl<S, T, E> TryStream for S where
S: Stream<Item = Result<T, E>>,
[src]
S: Stream<Item = 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_next(
Pin<&mut S>,
&mut Context
) -> Poll<Option<Result<<S as TryStream>::Ok, <S as TryStream>::Error>>>
[src]
Pin<&mut S>,
&mut Context
) -> Poll<Option<Result<<S as TryStream>::Ok, <S as TryStream>::Error>>>
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,