Skip to main content

TagRevWriter

Struct TagRevWriter 

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

Writes keys for the provided tags into a prepend-only buffer.

Implementations§

Source§

impl TagRevWriter

Source

pub fn new() -> Self

Source

pub fn begin_field<B: ReverseBuf + ?Sized>( &mut self, tag: u32, wire_type: WireType, buf: &mut B, )

Encode the key delta to the given key into the buffer.

All fields must be encoded in order; this is enforced in the encoding by encoding each field’s tag as a non-negative delta from the previously encoded field’s tag. The tag delta is encoded in the bits above the lowest two bits in the key delta, which encode the wire type. When decoding, the wire type is taken as-is, and the tag delta added to the tag of the last field decoded.

Source

pub fn finalize<B: ReverseBuf + ?Sized>(&mut self, buf: &mut B)

Finishes writing the current message by encoding the key of the first field that appeared.

Trait Implementations§

Source§

impl Default for TagRevWriter

Source§

fn default() -> TagRevWriter

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.