Trait amadeus_core::pipe::Sink [−][src]
pub trait Sink<Item> { type Done; fn poll_forward(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
stream: Pin<&mut impl Stream<Item = Item>>
) -> Poll<Self::Done>; fn send(&mut self, item: Item) -> Send<'_, Self, Item>ⓘ
where
Self: Unpin, { ... } fn send_all<'a, S: ?Sized>(
&'a mut self,
items: &'a mut S
) -> SendAll<'a, Self, S>ⓘ
where
S: Stream<Item = Item> + Unpin,
Self: Unpin, { ... } fn done(&mut self) -> Done<'_, Self, Item>ⓘ
where
Self: Unpin, { ... } }
Associated Types
Required methods
fn poll_forward(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
stream: Pin<&mut impl Stream<Item = Item>>
) -> Poll<Self::Done>
[src]
fn poll_forward(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
stream: Pin<&mut impl Stream<Item = Item>>
) -> Poll<Self::Done>
[src]Returns Poll::Ready
when a) it can’t accept any more elements from stream
and b) all
accepted elements have been fully processed. By convention, stream
yielding None
typically triggers (a).
Provided methods
Implementations on Foreign Types
Implementors
impl Sink<Sum0> for ReduceA0Async
[src]
impl Sink<Sum0> for ReduceA0Async
[src]impl Sink<bool> for BoolAndReducerAsync
[src]
impl Sink<bool> for BoolAndReducerAsync
[src]impl Sink<bool> for BoolOrReducerAsync
[src]
impl Sink<bool> for BoolOrReducerAsync
[src]impl Sink<()> for ReduceC0Async
[src]
impl Sink<()> for ReduceC0Async
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, H: Sink<S7>, S0, S1, S2, S3, S4, S5, S6, S7> Sink<Sum8<S0, S1, S2, S3, S4, S5, S6, S7>> for ReduceA8Async<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, H: Sink<S7>, S0, S1, S2, S3, S4, S5, S6, S7> Sink<Sum8<S0, S1, S2, S3, S4, S5, S6, S7>> for ReduceA8Async<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, H: Sink<S7>, S0, S1, S2, S3, S4, S5, S6, S7> Sink<(S0, S1, S2, S3, S4, S5, S6, S7)> for ReduceC8Async<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, H: Sink<S7>, S0, S1, S2, S3, S4, S5, S6, S7> Sink<(S0, S1, S2, S3, S4, S5, S6, S7)> for ReduceC8Async<A, B, C, D, E, F, G, H, S0, S1, S2, S3, S4, S5, S6, S7>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, S0, S1, S2, S3, S4, S5, S6> Sink<Sum7<S0, S1, S2, S3, S4, S5, S6>> for ReduceA7Async<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, S0, S1, S2, S3, S4, S5, S6> Sink<Sum7<S0, S1, S2, S3, S4, S5, S6>> for ReduceA7Async<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, S0, S1, S2, S3, S4, S5, S6> Sink<(S0, S1, S2, S3, S4, S5, S6)> for ReduceC7Async<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, G: Sink<S6>, S0, S1, S2, S3, S4, S5, S6> Sink<(S0, S1, S2, S3, S4, S5, S6)> for ReduceC7Async<A, B, C, D, E, F, G, S0, S1, S2, S3, S4, S5, S6>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, S0, S1, S2, S3, S4, S5> Sink<Sum6<S0, S1, S2, S3, S4, S5>> for ReduceA6Async<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, S0, S1, S2, S3, S4, S5> Sink<Sum6<S0, S1, S2, S3, S4, S5>> for ReduceA6Async<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, S0, S1, S2, S3, S4, S5> Sink<(S0, S1, S2, S3, S4, S5)> for ReduceC6Async<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, F: Sink<S5>, S0, S1, S2, S3, S4, S5> Sink<(S0, S1, S2, S3, S4, S5)> for ReduceC6Async<A, B, C, D, E, F, S0, S1, S2, S3, S4, S5>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, S0, S1, S2, S3, S4> Sink<Sum5<S0, S1, S2, S3, S4>> for ReduceA5Async<A, B, C, D, E, S0, S1, S2, S3, S4>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, S0, S1, S2, S3, S4> Sink<Sum5<S0, S1, S2, S3, S4>> for ReduceA5Async<A, B, C, D, E, S0, S1, S2, S3, S4>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, S0, S1, S2, S3, S4> Sink<(S0, S1, S2, S3, S4)> for ReduceC5Async<A, B, C, D, E, S0, S1, S2, S3, S4>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, E: Sink<S4>, S0, S1, S2, S3, S4> Sink<(S0, S1, S2, S3, S4)> for ReduceC5Async<A, B, C, D, E, S0, S1, S2, S3, S4>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, S0, S1, S2, S3> Sink<Sum4<S0, S1, S2, S3>> for ReduceA4Async<A, B, C, D, S0, S1, S2, S3>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, S0, S1, S2, S3> Sink<Sum4<S0, S1, S2, S3>> for ReduceA4Async<A, B, C, D, S0, S1, S2, S3>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, S0, S1, S2, S3> Sink<(S0, S1, S2, S3)> for ReduceC4Async<A, B, C, D, S0, S1, S2, S3>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, D: Sink<S3>, S0, S1, S2, S3> Sink<(S0, S1, S2, S3)> for ReduceC4Async<A, B, C, D, S0, S1, S2, S3>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, S0, S1, S2> Sink<Sum3<S0, S1, S2>> for ReduceA3Async<A, B, C, S0, S1, S2>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, S0, S1, S2> Sink<Sum3<S0, S1, S2>> for ReduceA3Async<A, B, C, S0, S1, S2>
[src]impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, S0, S1, S2> Sink<(S0, S1, S2)> for ReduceC3Async<A, B, C, S0, S1, S2>
[src]
impl<A: Sink<S0>, B: Sink<S1>, C: Sink<S2>, S0, S1, S2> Sink<(S0, S1, S2)> for ReduceC3Async<A, B, C, S0, S1, S2>
[src]impl<A: Sink<S0>, S0> Sink<Sum1<S0>> for ReduceA1Async<A, S0>
[src]
impl<A: Sink<S0>, S0> Sink<Sum1<S0>> for ReduceA1Async<A, S0>
[src]impl<Item, F> Sink<Item> for FolderSyncReducerAsync<Item, F, F::State, Final> where
F: FolderSync<Item>,
[src]
impl<Item, F> Sink<Item> for FolderSyncReducerAsync<Item, F, F::State, Final> where
F: FolderSync<Item>,
[src]impl<Item, F> Sink<Item> for FolderSyncReducerAsync<Item, F, F::State, Inter> where
F: FolderSync<Item>,
[src]
impl<Item, F> Sink<Item> for FolderSyncReducerAsync<Item, F, F::State, Inter> where
F: FolderSync<Item>,
[src]impl<Item, T: Extend<Item>> Sink<Item> for PushReducerAsync<Item, T>
[src]
impl<Item, T: Extend<Item>> Sink<Item> for PushReducerAsync<Item, T>
[src]impl<Item: IntoIterator<Item = B>, T: Extend<B>, B> Sink<Item> for ExtendReducerAsync<Item, T>
[src]
impl<Item: IntoIterator<Item = B>, T: Extend<B>, B> Sink<Item> for ExtendReducerAsync<Item, T>
[src]impl<P, R, T, U> Sink<(T, U)> for GroupByReducerAAsync<P, R, T, U> where
P: Pipe<U>,
R: Reducer<P::Output> + Clone,
T: Eq + Hash,
[src]
impl<P, R, T, U> Sink<(T, U)> for GroupByReducerAAsync<P, R, T, U> where
P: Pipe<U>,
R: Reducer<P::Output> + Clone,
T: Eq + Hash,
[src]impl<R, T, U> Sink<IndexMap<T, U, RandomState>> for GroupByReducerBAsync<R, T, U> where
R: Reducer<U> + Clone,
T: Eq + Hash,
[src]
impl<R, T, U> Sink<IndexMap<T, U, RandomState>> for GroupByReducerBAsync<R, T, U> where
R: Reducer<U> + Clone,
T: Eq + Hash,
[src]impl<R: Sink<Item>, E, Item> Sink<Result<Item, E>> for ResultReducerAsync<R, E>
[src]
impl<R: Sink<Item>, E, Item> Sink<Result<Item, E>> for ResultReducerAsync<R, E>
[src]impl<R: Sink<Item>, Item> Sink<Option<Item>> for OptionReducerAsync<R>
[src]
impl<R: Sink<Item>, Item> Sink<Option<Item>> for OptionReducerAsync<R>
[src]