Macro auto_bitflags::auto_bitflags [] [src]

macro_rules! auto_bitflags {
    (u16, $flag:ident, $($flagrest:ident), *) => { ... };
    (u16, $flag:ident) => { ... };
    (u32, $flag:ident, $($flagrest:ident), *) => { ... };
    (u32, $flag:ident) => { ... };
    (u64, $flag:ident, $($flagrest:ident), *) => { ... };
    (u64, $flag:ident) => { ... };
}

The auto_bitflags! macros generates const bitflags, the values are assigned in descending order.

Examples

auto_bitflags!(u32, FLAG_FLAG1, FLAG_FLAG2);
assert_eq!(0b11, FLAG_FLAG1 | FLAG_FLAG2);
let flag12 = FLAG_FLAG1 | FLAG_FLAG2;
assert_eq!(0b1, flag12 & FLAG_FLAG2);
assert_eq!(0b10, flag12 & FLAG_FLAG1);