Crate bitfi

Crate bitfi 

Source
Expand description

§Example

use bitfi::bitfield;

bitfield! {
    Flags = u16 {
        on: 0;
        field1: 1 ..= 3;
    }
}

let mut flags = Flags::default();

assert!(!flags.get_on());
flags.set_on();
assert!(flags.get_on());

assert_eq!(flags.get_field1(), 0);
flags.set_field1(0b101);
assert_eq!(flags.get_field1(), 0b101);

assert_eq!(flags.get_inner(), 0b1011, "{:b} {:b}", flags.get_inner(), 0b1011);

Modules§

helper_traits
Helper traits: One Zero and BitSize

Macros§

bitfield
Declares a bitfield
impl_bitsize
Implements BitSize for a type, given it’s number of bytes

Traits§

BitField
Defines methods for bit-field manipulation