diff options
Diffstat (limited to 'vendor/bitflags/examples/custom_derive.rs')
-rw-r--r-- | vendor/bitflags/examples/custom_derive.rs | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/vendor/bitflags/examples/custom_derive.rs b/vendor/bitflags/examples/custom_derive.rs deleted file mode 100644 index 5a85afb..0000000 --- a/vendor/bitflags/examples/custom_derive.rs +++ /dev/null @@ -1,23 +0,0 @@ -//! An example of implementing the `BitFlags` trait manually for a flags type. - -use std::str; - -use bitflags::bitflags; - -// Define a flags type outside of the `bitflags` macro as a newtype -// It can accept custom derives for libaries `bitflags` doesn't support natively -#[derive(zerocopy::AsBytes, zerocopy::FromBytes)] -#[repr(transparent)] -pub struct ManualFlags(u32); - -// Next: use `impl Flags` instead of `struct Flags` -bitflags! { - impl ManualFlags: u32 { - const A = 0b00000001; - const B = 0b00000010; - const C = 0b00000100; - const ABC = Self::A.bits() | Self::B.bits() | Self::C.bits(); - } -} - -fn main() {} |