[−][src]Struct spsc_bip_buffer::BipBufferReader
Represents the receive side of the single-producer single-consumer circular buffer.
BipBufferReader
is Send
so you can move it to the receiver thread.
Methods
impl BipBufferReader
[src]
pub fn valid(&mut self) -> &mut [u8]
[src]
Returns a mutable reference to a slice that contains the data written by the writer and not yet consumed by the reader. This is the receiving end of the circular buffer.
The caller is free to mutate the data in this slice.
pub fn consume(&mut self, len: usize) -> bool
[src]
Consumes the first len
bytes in valid
. This marks them as read and they won't be
included in the slice returned by the next invocation of valid
. This is used to
communicate the reader's progress and free buffer space for future writes.
pub fn try_unwrap<B: DerefMut<Target = [u8]> + 'static>(self) -> Result<B, Self>
[src]
Attempts to recover the underlying storage. B must be the type of the storage passed to
bip_buffer_from
. If the BipBufferWriter
side still exists, this will fail and return
Err(self)
. If the BipBufferWriter
side was dropped, this will return the underlying
storage.
Panic
Panics if B is not the type of the underlying storage.
Trait Implementations
impl Send for BipBufferReader
[src]
Auto Trait Implementations
impl !Sync for BipBufferReader
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
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> 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> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,