Skip to main content

Emission

Struct Emission 

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

What one call to a stage produced: the bytes it emitted, how they are framed, and what it asked the host to do about its own schedule.

One struct rather than four borrows because they are written together and read together, and because a stage’s whole answer is exactly these four things. The host keeps one per buffer and resets it between calls, so a steady stream allocates nothing here after the first few chunks.

Implementations§

Source§

impl Emission

Source

pub fn new() -> Self

Source

pub fn reset(&mut self)

Ready for a fresh call, keeping the allocations.

Source

pub fn bytes(&self) -> &[u8]

Everything the stage emitted, concatenated.

Source

pub fn bounds(&self) -> &[usize]

The framing of bytes. Empty means one unit.

Source

pub fn emit(&self) -> Emit

What the stage did with what it was given.

Source

pub fn rearm_requested(&self) -> bool

Whether the stage asked for its schedule to be restarted. See Ctx::rearm.

Trait Implementations§

Source§

impl Debug for Emission

Source§

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

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

impl Default for Emission

Source§

fn default() -> Emission

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, 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.