Trait integer_encoding::FixedInt

source ·
pub trait FixedInt: Sized + Copy {
    // Required methods
    fn size_required() -> usize;
    fn encode_fixed(self, _: &mut [u8]);
    fn decode_fixed(_: &[u8]) -> Self;

    // Provided methods
    fn encode_fixed_vec(self) -> Vec<u8> { ... }
    fn decode_fixed_vec(v: &Vec<u8>) -> Self { ... }
}
Expand description

FixedInt provides encoding/decoding to and from fixed int representations. The emitted bytestring contains the bytes of the integer in little-endian order.

Required Methods§

source

fn size_required() -> usize

Returns how many bytes are required to represent the given type.

source

fn encode_fixed(self, _: &mut [u8])

Encode a value into the given slice.

source

fn decode_fixed(_: &[u8]) -> Self

Decode a value from the given slice.

Provided Methods§

source

fn encode_fixed_vec(self) -> Vec<u8>

Helper: Encode the value and return a Vec.

source

fn decode_fixed_vec(v: &Vec<u8>) -> Self

Helper: Decode the value from the Vec.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl FixedInt for i16

source§

fn size_required() -> usize

source§

fn encode_fixed(self, dst: &mut [u8])

source§

fn decode_fixed(src: &[u8]) -> i16

source§

impl FixedInt for i32

source§

fn size_required() -> usize

source§

fn encode_fixed(self, dst: &mut [u8])

source§

fn decode_fixed(src: &[u8]) -> i32

source§

impl FixedInt for i64

source§

fn size_required() -> usize

source§

fn encode_fixed(self, dst: &mut [u8])

source§

fn decode_fixed(src: &[u8]) -> i64

source§

impl FixedInt for u16

source§

fn size_required() -> usize

source§

fn encode_fixed(self, dst: &mut [u8])

source§

fn decode_fixed(src: &[u8]) -> u16

source§

impl FixedInt for u32

source§

fn size_required() -> usize

source§

fn encode_fixed(self, dst: &mut [u8])

source§

fn decode_fixed(src: &[u8]) -> u32

source§

impl FixedInt for u64

source§

fn size_required() -> usize

source§

fn encode_fixed(self, dst: &mut [u8])

source§

fn decode_fixed(src: &[u8]) -> u64

Implementors§