diff --git a/README.md b/README.md index 0da0f853..9479062e 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,30 @@ and this to your source code: use bitflags::bitflags; ``` +## Example + +Generate a flags structure: + +```rust +use bitflags::bitflags; + +bitflags! { + struct Flags: u32 { + const A = 0b00000001; + const B = 0b00000010; + const C = 0b00000100; + const ABC = Self::A.bits | Self::B.bits | Self::C.bits; + } +} + +fn main() { + let mut flags = Flags::A | Flags::B; + assert!(flags.contains(Flags::A)); + flags.set(Flags::C, true); + assert!(flags.contains(Flags::A | Flags::C)); +} +``` + ## Rust Version Support The minimum supported Rust version is 1.46 due to use of associated constants and const functions.