serde-textual
derive Display/FromStr by using serde's Serialize/Deserialize
Usage examples
Enum using serde's rename_all or rename
use ;
use ;
assert_eq!;
assert_eq!;
New types with Uuid, Url, EmailAddress, etc
Don't forget to activate serde feature of those crates.
use ;
use ;
;
let new_uuid = NewUuid;
let s = "95c639c4-0c2f-4026-900c-6144c6c39b1f";
assert_eq!;
assert_eq!;
In the above example, NewUuid's Display/FromStr delegates to NewUuid's Serialize/Deserialize that delegates to Uuid's Serialize/Deserialize. If you need to implement NewUuid's Display/FromStr to directly delegate to Uuid's Display/FromStr (for compile-time or runtime performance reason), use other crates that supports Display/FromStr delegation, or do it manually.
[Advanced] Comma separated values of enum variants
serde_with's StringWithSeparator<Separator, T> requires T to implement Display/FromStr. It's convenient to use serde-textual to implement Display/FromStr for the T.
use ;
use ;
use ;
] );
let required_fields = RequiredFields;
let s = "id,name,createdAt";
assert_eq!;
assert_eq!;
License
Licensed under either of
- Apache-2.0
- MIT
at your option.