[−][src]Struct futures::stream::FilterMap
A combinator used to filter the results of a stream and simultaneously map them to a different type.
This structure is returned by the Stream::filter_map
method.
Methods
impl<S, F> FilterMap<S, F>
[src]
pub fn get_ref(&self) -> &S
[src]
Acquires a reference to the underlying stream that this combinator is pulling from.
pub fn get_mut(&mut self) -> &mut S
[src]
Acquires a mutable reference to the underlying stream that this combinator is pulling from.
Note that care must be taken to avoid tampering with the state of the stream which may otherwise confuse this combinator.
pub fn into_inner(self) -> S
[src]
Consumes this combinator, returning the underlying stream.
Note that this may discard intermediate state of this combinator, so care should be taken to avoid losing resources when this is called.
Trait Implementations
impl<S, F, B> Stream for FilterMap<S, F> where
S: Stream,
F: FnMut(S::Item) -> Option<B>,
[src]
S: Stream,
F: FnMut(S::Item) -> Option<B>,
type Item = B
The type of item this stream will yield on success.
type Error = S::Error
The type of error this stream may generate.
fn poll(&mut self) -> Poll<Option<B>, S::Error>
[src]
ⓘImportant traits for Wait<S>fn wait(self) -> Wait<Self> where
Self: Sized,
[src]
Self: Sized,
fn into_future(self) -> StreamFuture<Self> where
Self: Sized,
[src]
Self: Sized,
fn map<U, F>(self, f: F) -> Map<Self, F> where
F: FnMut(Self::Item) -> U,
Self: Sized,
[src]
F: FnMut(Self::Item) -> U,
Self: Sized,
fn map_err<U, F>(self, f: F) -> MapErr<Self, F> where
F: FnMut(Self::Error) -> U,
Self: Sized,
[src]
F: FnMut(Self::Error) -> U,
Self: Sized,
fn filter<F>(self, f: F) -> Filter<Self, F> where
F: FnMut(&Self::Item) -> bool,
Self: Sized,
[src]
F: FnMut(&Self::Item) -> bool,
Self: Sized,
fn filter_map<F, B>(self, f: F) -> FilterMap<Self, F> where
F: FnMut(Self::Item) -> Option<B>,
Self: Sized,
[src]
F: FnMut(Self::Item) -> Option<B>,
Self: Sized,
fn then<F, U>(self, f: F) -> Then<Self, F, U> where
F: FnMut(Result<Self::Item, Self::Error>) -> U,
U: IntoFuture,
Self: Sized,
[src]
F: FnMut(Result<Self::Item, Self::Error>) -> U,
U: IntoFuture,
Self: Sized,
fn and_then<F, U>(self, f: F) -> AndThen<Self, F, U> where
F: FnMut(Self::Item) -> U,
U: IntoFuture<Error = Self::Error>,
Self: Sized,
[src]
F: FnMut(Self::Item) -> U,
U: IntoFuture<Error = Self::Error>,
Self: Sized,
fn or_else<F, U>(self, f: F) -> OrElse<Self, F, U> where
F: FnMut(Self::Error) -> U,
U: IntoFuture<Item = Self::Item>,
Self: Sized,
[src]
F: FnMut(Self::Error) -> U,
U: IntoFuture<Item = Self::Item>,
Self: Sized,
fn collect(self) -> Collect<Self> where
Self: Sized,
[src]
Self: Sized,
fn concat2(self) -> Concat2<Self> where
Self: Sized,
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator + Default,
[src]
Self: Sized,
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator + Default,
fn concat(self) -> Concat<Self> where
Self: Sized,
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator,
[src]
Self: Sized,
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator,
fn fold<F, T, Fut>(self, init: T, f: F) -> Fold<Self, F, Fut, T> where
F: FnMut(T, Self::Item) -> Fut,
Fut: IntoFuture<Item = T>,
Self::Error: From<Fut::Error>,
Self: Sized,
[src]
F: FnMut(T, Self::Item) -> Fut,
Fut: IntoFuture<Item = T>,
Self::Error: From<Fut::Error>,
Self: Sized,
fn flatten(self) -> Flatten<Self> where
Self::Item: Stream,
<Self::Item as Stream>::Error: From<Self::Error>,
Self: Sized,
[src]
Self::Item: Stream,
<Self::Item as Stream>::Error: From<Self::Error>,
Self: Sized,
fn skip_while<P, R>(self, pred: P) -> SkipWhile<Self, P, R> where
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
Self: Sized,
[src]
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
Self: Sized,
fn take_while<P, R>(self, pred: P) -> TakeWhile<Self, P, R> where
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
Self: Sized,
[src]
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
Self: Sized,
fn for_each<F, U>(self, f: F) -> ForEach<Self, F, U> where
F: FnMut(Self::Item) -> U,
U: IntoFuture<Item = (), Error = Self::Error>,
Self: Sized,
[src]
F: FnMut(Self::Item) -> U,
U: IntoFuture<Item = (), Error = Self::Error>,
Self: Sized,
fn from_err<E: From<Self::Error>>(self) -> FromErr<Self, E> where
Self: Sized,
[src]
Self: Sized,
fn take(self, amt: u64) -> Take<Self> where
Self: Sized,
[src]
Self: Sized,
fn skip(self, amt: u64) -> Skip<Self> where
Self: Sized,
[src]
Self: Sized,
fn fuse(self) -> Fuse<Self> where
Self: Sized,
[src]
Self: Sized,
fn by_ref(&mut self) -> &mut Self where
Self: Sized,
[src]
Self: Sized,
fn catch_unwind(self) -> CatchUnwind<Self> where
Self: Sized + UnwindSafe,
[src]
Self: Sized + UnwindSafe,
fn buffered(self, amt: usize) -> Buffered<Self> where
Self::Item: IntoFuture<Error = Self::Error>,
Self: Sized,
[src]
Self::Item: IntoFuture<Error = Self::Error>,
Self: Sized,
fn buffer_unordered(self, amt: usize) -> BufferUnordered<Self> where
Self::Item: IntoFuture<Error = Self::Error>,
Self: Sized,
[src]
Self::Item: IntoFuture<Error = Self::Error>,
Self: Sized,
fn merge<S>(self, other: S) -> Merge<Self, S> where
S: Stream<Error = Self::Error>,
Self: Sized,
[src]
S: Stream<Error = Self::Error>,
Self: Sized,
fn zip<S>(self, other: S) -> Zip<Self, S> where
S: Stream<Error = Self::Error>,
Self: Sized,
[src]
S: Stream<Error = Self::Error>,
Self: Sized,
fn chain<S>(self, other: S) -> Chain<Self, S> where
S: Stream<Item = Self::Item, Error = Self::Error>,
Self: Sized,
[src]
S: Stream<Item = Self::Item, Error = Self::Error>,
Self: Sized,
fn peekable(self) -> Peekable<Self> where
Self: Sized,
[src]
Self: Sized,
fn chunks(self, capacity: usize) -> Chunks<Self> where
Self: Sized,
[src]
Self: Sized,
fn select<S>(self, other: S) -> Select<Self, S> where
S: Stream<Item = Self::Item, Error = Self::Error>,
Self: Sized,
[src]
S: Stream<Item = Self::Item, Error = Self::Error>,
Self: Sized,
fn forward<S>(self, sink: S) -> Forward<Self, S> where
S: Sink<SinkItem = Self::Item>,
Self::Error: From<S::SinkError>,
Self: Sized,
[src]
S: Sink<SinkItem = Self::Item>,
Self::Error: From<S::SinkError>,
Self: Sized,
fn split(self) -> (SplitSink<Self>, SplitStream<Self>) where
Self: Sink + Sized,
[src]
Self: Sink + Sized,
fn inspect<F>(self, f: F) -> Inspect<Self, F> where
F: FnMut(&Self::Item),
Self: Sized,
[src]
F: FnMut(&Self::Item),
Self: Sized,
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F> where
F: FnMut(&Self::Error),
Self: Sized,
[src]
F: FnMut(&Self::Error),
Self: Sized,
impl<S, F> Sink for FilterMap<S, F> where
S: Sink,
[src]
S: Sink,
type SinkItem = S::SinkItem
The type of value that the sink accepts.
type SinkError = S::SinkError
The type of value produced by the sink when an error occurs.
fn start_send(
&mut self,
item: S::SinkItem
) -> StartSend<S::SinkItem, S::SinkError>
[src]
&mut self,
item: S::SinkItem
) -> StartSend<S::SinkItem, S::SinkError>
fn poll_complete(&mut self) -> Poll<(), S::SinkError>
[src]
fn close(&mut self) -> Poll<(), S::SinkError>
[src]
fn wait(self) -> Wait<Self> where
Self: Sized,
[src]
Self: Sized,
fn with<U, F, Fut>(self, f: F) -> With<Self, U, F, Fut> where
F: FnMut(U) -> Fut,
Fut: IntoFuture<Item = Self::SinkItem>,
Fut::Error: From<Self::SinkError>,
Self: Sized,
[src]
F: FnMut(U) -> Fut,
Fut: IntoFuture<Item = Self::SinkItem>,
Fut::Error: From<Self::SinkError>,
Self: Sized,
fn with_flat_map<U, F, St>(self, f: F) -> WithFlatMap<Self, U, F, St> where
F: FnMut(U) -> St,
St: Stream<Item = Self::SinkItem, Error = Self::SinkError>,
Self: Sized,
[src]
F: FnMut(U) -> St,
St: Stream<Item = Self::SinkItem, Error = Self::SinkError>,
Self: Sized,
fn sink_map_err<F, E>(self, f: F) -> SinkMapErr<Self, F> where
F: FnOnce(Self::SinkError) -> E,
Self: Sized,
[src]
F: FnOnce(Self::SinkError) -> E,
Self: Sized,
fn sink_from_err<E: From<Self::SinkError>>(self) -> SinkFromErr<Self, E> where
Self: Sized,
[src]
Self: Sized,
fn buffer(self, amt: usize) -> Buffer<Self> where
Self: Sized,
[src]
Self: Sized,
fn fanout<S>(self, other: S) -> Fanout<Self, S> where
Self: Sized,
Self::SinkItem: Clone,
S: Sink<SinkItem = Self::SinkItem, SinkError = Self::SinkError>,
[src]
Self: Sized,
Self::SinkItem: Clone,
S: Sink<SinkItem = Self::SinkItem, SinkError = Self::SinkError>,
fn flush(self) -> Flush<Self> where
Self: Sized,
[src]
Self: Sized,
fn send(self, item: Self::SinkItem) -> Send<Self> where
Self: Sized,
[src]
Self: Sized,
fn send_all<S>(self, stream: S) -> SendAll<Self, S> where
S: Stream<Item = Self::SinkItem>,
Self::SinkError: From<S::Error>,
Self: Sized,
[src]
S: Stream<Item = Self::SinkItem>,
Self::SinkError: From<S::Error>,
Self: Sized,
impl<S: Debug, F: Debug> Debug for FilterMap<S, F>
[src]
Auto Trait Implementations
impl<S, F> Unpin for FilterMap<S, F> where
F: Unpin,
S: Unpin,
F: Unpin,
S: Unpin,
impl<S, F> Send for FilterMap<S, F> where
F: Send,
S: Send,
F: Send,
S: Send,
impl<S, F> Sync for FilterMap<S, F> where
F: Sync,
S: Sync,
F: Sync,
S: Sync,
impl<S, F> UnwindSafe for FilterMap<S, F> where
F: UnwindSafe,
S: UnwindSafe,
F: UnwindSafe,
S: UnwindSafe,
impl<S, F> RefUnwindSafe for FilterMap<S, F> where
F: RefUnwindSafe,
S: RefUnwindSafe,
F: RefUnwindSafe,
S: RefUnwindSafe,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> 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, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryInto<U> 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> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,