Skip to main content

BitValue

Trait BitValue 

Source
pub trait BitValue: Copy {
    // Required methods
    fn encode_bits(self, width: usize) -> Result<u128>;
    fn decode_bits(value: u128, width: usize) -> Result<Self>;
}
Available on crate feature bit-packing only.
Expand description

Conversion contract for fields with an explicit #[bits = N] width.

Required Methods§

Source

fn encode_bits(self, width: usize) -> Result<u128>

Encodes and validates this value against width.

Source

fn decode_bits(value: u128, width: usize) -> Result<Self>

Decodes and validates this value from width bits.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl BitValue for bool

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for i8

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for i16

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for i32

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for i64

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for i128

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for u8

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for u16

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for u32

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for u64

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Source§

impl BitValue for u128

Source§

fn encode_bits(self, width: usize) -> Result<u128>

Source§

fn decode_bits(value: u128, width: usize) -> Result<Self>

Implementors§