#![allow(deprecated)]
use bitflags::{bitflags, BitFlags};
bitflags! {
struct Flags: u32 {
const A = 0b00000001;
const B = 0b00000010;
}
}
fn count_flags<F: BitFlags>(flags: &F) -> usize {
flags.iter().count()
}
fn main() {
assert_eq!(2, count_flags(&(Flags::A | Flags::B)));
}