Crate bitfi

Source
Expand description

§Example

use bitfields::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);

Macros§

bitfield
Declares a bitfield

Traits§

BitField
Defines methods for bit-field manipulation