diff options
Diffstat (limited to 'vendor/bitflags/examples/serde.rs')
-rw-r--r-- | vendor/bitflags/examples/serde.rs | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/vendor/bitflags/examples/serde.rs b/vendor/bitflags/examples/serde.rs deleted file mode 100644 index 22eae2d..0000000 --- a/vendor/bitflags/examples/serde.rs +++ /dev/null @@ -1,36 +0,0 @@ -//! An example of implementing `serde::Serialize` and `serde::Deserialize`. -//! The `#[serde(transparent)]` attribute is recommended to serialize directly -//! to the underlying bits type without wrapping it in a `serde` newtype. - -#[cfg(feature = "serde")] -fn main() { - use serde_derive::*; - - bitflags::bitflags! { - #[derive(Serialize, Deserialize, Debug, PartialEq, Eq)] - #[serde(transparent)] - pub struct Flags: u32 { - const A = 1; - const B = 2; - const C = 4; - const D = 8; - } - } - - let flags = Flags::A | Flags::B; - - let serialized = serde_json::to_string(&flags).unwrap(); - - println!("{:?} -> {}", flags, serialized); - - assert_eq!(serialized, r#""A | B""#); - - let deserialized: Flags = serde_json::from_str(&serialized).unwrap(); - - println!("{} -> {:?}", serialized, flags); - - assert_eq!(deserialized, flags); -} - -#[cfg(not(feature = "serde"))] -fn main() {} |