Skip to main content

AosFrameWriter

Struct AosFrameWriter 

Source
pub struct AosFrameWriter<const BUF: usize> { /* private fields */ }
Expand description

Accumulates packets into AOS transfer frames.

Owns its frame buffer internally (sized by BUF). Packets are pushed directly into the buffer at the correct offset. finish() stamps the header and returns a borrow of the completed frame.

Implementations§

Source§

impl<const BUF: usize> AosFrameWriter<BUF>

Source

pub fn new(config: AosFrameWriterConfig) -> Self

Creates a new AOS frame writer.

Trait Implementations§

Source§

impl<const BUF: usize> FrameWrite for AosFrameWriter<BUF>

Source§

type Error = BuildError

Error type for frame construction.
Source§

fn is_empty(&self) -> bool

Returns true if no packets have been pushed yet.
Source§

fn push(&mut self, data: &[u8]) -> Result<(), PushError>

Push a packet into the frame at the current offset.
Source§

fn finish(&mut self) -> Result<&[u8], BuildError>

Stamp the frame header and return the finished frame. Resets internal state for the next frame.

Auto Trait Implementations§

§

impl<const BUF: usize> Freeze for AosFrameWriter<BUF>

§

impl<const BUF: usize> RefUnwindSafe for AosFrameWriter<BUF>

§

impl<const BUF: usize> Send for AosFrameWriter<BUF>

§

impl<const BUF: usize> Sync for AosFrameWriter<BUF>

§

impl<const BUF: usize> Unpin for AosFrameWriter<BUF>

§

impl<const BUF: usize> UnsafeUnpin for AosFrameWriter<BUF>

§

impl<const BUF: usize> UnwindSafe for AosFrameWriter<BUF>

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.