commit | f84a25f31c7f7263974d2c13c0e5a7823c3587c2 | [log] [tgz] |
---|---|---|
author | Eric Arseneau <earseneau@google.com> | Mon Dec 06 14:36:29 2021 -0800 |
committer | Eric Arseneau <earseneau@google.com> | Mon Dec 06 14:36:29 2021 -0800 |
tree | c9a58f4fc6663d85c63dcb9f4a8cf00c85f3993e | |
parent | af287c1919aed4fd29e632f184cd8e64dda94e34 [diff] | |
parent | 4dfbabe0ae3a31a05d21a5569eff3b40c8e098fb [diff] |
Merge mpr-2021-11-05 Change-Id: Icd2c31068a90627f2e3460095e2d640df8ec2d57
Procedural macros to derive numeric traits in Rust.
Add this to your Cargo.toml
:
[dependencies] num-traits = "0.2" num-derive = "0.3"
and this to your crate root:
#[macro_use] extern crate num_derive;
Then you can derive traits on your own types:
#[derive(FromPrimitive, ToPrimitive)] enum Color { Red, Blue, Green, }
full-syntax
— Enables num-derive
to handle enum discriminants represented by complex expressions. Usually can be avoided by utilizing constants, so only use this feature if namespace pollution is undesired and compile time doubling is acceptable.Release notes are available in RELEASES.md.
The num-derive
crate is tested for rustc 1.31 and greater.
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.