Crate serde_enum_str[−][src]
Expand description
Serialize and deserialize enum string
[dependencies] serde = { version = "1.0", features = ["derive"] } serde-enum-str = "0.1"
Examples
use serde_enum_str::{Deserialize_enum_str, Serialize_enum_str}; #[derive(Deserialize_enum_str, Serialize_enum_str, PartialEq, Debug)] #[serde(rename_all = "snake_case")] enum Foo { A, #[serde(rename = "B")] B, #[serde(other)] Other(String), } fn main() -> serde_json::Result<()> { assert_eq!(serde_json::to_string(&Foo::A).unwrap(), r#""a""#); assert_eq!( serde_json::from_str::<Foo>(r#""c""#).unwrap(), Foo::Other("c".to_owned()) ); Ok(()) }