Struct VariableByteIntegerEncoder

Source
pub struct VariableByteIntegerEncoder;
Expand description

VariableByteIntegerEncoder and VariableByteIntegerDecoder are implemented based on pseudo code which is introduced in MQTT version 5.0 OASIS standard accesible from https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901107 Variable byte integer encoder structure is help structure which implements function used to encode integer into MQTT variable byte integer format. This format is mainly used to encode lenghts stored in a packet.

Implementations§

Source§

impl VariableByteIntegerEncoder

Source

pub fn encode(target: u32) -> Result<VariableByteInteger, BufferError>

Encode function takes as parameter integer as u32 type and encodes this integer into maximal 4 Bytes. MSb of each Byte is controll bit. This bit is saying if there is continuing Byte in stream or not, this way we can effectively use 1 to 4 Bytes based in integer len.

Source

pub fn len(var_int: VariableByteInteger) -> usize

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.