use bitmask_enum::bitmask;
#[bitmask(u8)]
enum Bitmask {
Flag1, Flag2, Flag3, }
impl Bitmask {
fn _set_to(&mut self, val: u8) {
self.bits = val
}
}
const CONST_BM: Bitmask = Bitmask::Flag2.or(Bitmask::Flag3);
fn main() {
println!("{:#010b}", CONST_BM);
let bm = Bitmask::Flag1 | Bitmask::Flag3;
println!("{:#010b}", bm);
println!("{}", bm.intersects(CONST_BM));
println!("{}", bm.contains(CONST_BM)); }