Struct Buffer
#[must_use = "sinks do nothing unless polled"]
pub struct Buffer<Si, Item> { /* private fields */ }
Sink for the buffer method.
Implementations
impl<Si: Sink<Item>, Item> Buffer<Si, Item>
fn get_ref(&self) -> &SiAcquires a reference to the underlying sink or stream that this combinator is pulling from.
fn get_mut(&mut self) -> &mut SiAcquires a mutable reference to the underlying sink or stream that this combinator is pulling from.
Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.
fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut Si>Acquires a pinned mutable reference to the underlying sink or stream that this combinator is pulling from.
Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.
fn into_inner(self) -> SiConsumes this combinator, returning the underlying sink or 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<'__pin, Si, Item> Unpin for Buffer<Si, Item>
where
PinnedFieldsOf<__Origin<'__pin, Si, Item>>: Unpin,
impl<S, Item> FusedStream for Buffer<S, Item>
where
S: Sink<Item> + FusedStream,
fn is_terminated(&self) -> bool
impl<S, Item> Stream for Buffer<S, Item>
where
S: Sink<Item> + Stream,
type Item = <S as Stream>::Item;fn poll_next(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Option<S::Item>>fn size_hint(&self) -> (usize, Option<usize>)
impl<Si: Debug, Item: Debug> Debug for Buffer<Si, Item>
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl<Si: Sink<Item>, Item> Sink<Item> for Buffer<Si, Item>
type Error = <Si as Sink<Item>>::Error;fn poll_ready(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>fn start_send(self: Pin<&mut Self>, item: Item) -> Result<(), Self::Error>fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>fn poll_close(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
Auto Trait Implementations
impl<Si, Item> Freeze for Buffer<Si, Item>
where
Si: Freeze,
VecDeque<Item>: Freeze,
impl<Si, Item> RefUnwindSafe for Buffer<Si, Item>
where
Si: RefUnwindSafe,
VecDeque<Item>: RefUnwindSafe,
impl<Si, Item> Send for Buffer<Si, Item>
where
Si: Send,
VecDeque<Item>: Send,
impl<Si, Item> Sync for Buffer<Si, Item>
where
Si: Sync,
VecDeque<Item>: Sync,
impl<Si, Item> UnsafeUnpin for Buffer<Si, Item>
where
Si: UnsafeUnpin,
VecDeque<Item>: UnsafeUnpin,
impl<Si, Item> UnwindSafe for Buffer<Si, Item>
where
Si: UnwindSafe,
VecDeque<Item>: UnwindSafe,
Blanket Implementations
impl<S> TryStreamExt for Buffer<Si, Item>
where
S: TryStream + ?Sized,
impl<S, T, E> TryStream for Buffer<Si, Item>
where
S: Stream<Item = Result<T, E>> + ?Sized,
type Ok = T;type Error = E;fn try_poll_next(self: Pin<&mut S>, cx: &mut Context<'_>) -> Poll<Option<Result<<S as TryStream>::Ok, <S as TryStream>::Error>>>
impl<T> Any for Buffer<Si, Item>
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for Buffer<Si, Item>
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for Buffer<Si, Item>
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> From<T> for Buffer<Si, Item>
fn from(t: T) -> TReturns the argument unchanged.
impl<T> StreamExt for Buffer<Si, Item>
where
T: Stream + ?Sized,
impl<T, Item> SinkExt<Item> for Buffer<Si, Item>
where
T: Sink<Item> + ?Sized,
impl<T, U> Into<U> for Buffer<Si, Item>
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for Buffer<Si, Item>
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for Buffer<Si, Item>
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>