CommandBuf

Struct CommandBuf 

Source
pub struct CommandBuf { /* private fields */ }
Expand description

A byte buffer that yields decoded Commands.

This is meant to be used by apps that receive bytewise data and want to decode Commands from that.

Implementations§

Source§

impl CommandBuf

Source

pub const fn new() -> Self

Creates a new, empty CommandBuf.

Source

pub fn tail_mut(&mut self) -> &mut [u8]

Returns the currently unused part of the buffer.

The caller can copy new input bytes into the returned slice, and call advance_by to mark them as part of the CommandBuf.

Source

pub fn advance_by( &mut self, amount: u8, ) -> impl Iterator<Item = Result<Command, Error>> + '_

Marks len more bytes from the buffer’s tail as consumed, and returns an iterator over all Commands in the buffer.

When dropped, the returned iterator will remove the decoded bytes from the CommandBuf.

Trait Implementations§

Source§

impl Debug for CommandBuf

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for CommandBuf

Source§

fn default() -> CommandBuf

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.