• Home
Name Date Size #Lines LOC

..--

src/03-May-2024-991700

tests/03-May-2024-314225

.cargo_vcs_info.jsonD03-May-202474 65

.gitignoreD03-May-202418 32

Android.bpD03-May-20241.8 KiB5651

Cargo.tomlD03-May-20241.3 KiB5647

Cargo.toml.origD03-May-2024902 4335

LICENSED03-May-202410.6 KiB202169

LICENSE-APACHED03-May-202410.6 KiB202169

LICENSE-MITD03-May-20241 KiB2622

METADATAD03-May-2024374 2019

MODULE_LICENSE_APACHE2D03-May-20240

OWNERSD03-May-202440 21

README.mdD03-May-20241.9 KiB7047

RELEASES.mdD03-May-20243.1 KiB10659

README.md

1# num-derive
2
3[![crate](https://img.shields.io/crates/v/num-derive.svg)](https://crates.io/crates/num-derive)
4[![documentation](https://docs.rs/num-derive/badge.svg)](https://docs.rs/num-derive)
5[![minimum rustc 1.31](https://img.shields.io/badge/rustc-1.31+-red.svg)](https://rust-lang.github.io/rfcs/2495-min-rust-version.html)
6[![build status](https://github.com/rust-num/num-derive/workflows/master/badge.svg)](https://github.com/rust-num/num-derive/actions)
7
8Procedural macros to derive numeric traits in Rust.
9
10## Usage
11
12Add this to your `Cargo.toml`:
13
14```toml
15[dependencies]
16num-traits = "0.2"
17num-derive = "0.3"
18```
19
20and this to your crate root:
21
22```rust
23#[macro_use]
24extern crate num_derive;
25```
26
27Then you can derive traits on your own types:
28
29```rust
30#[derive(FromPrimitive, ToPrimitive)]
31enum Color {
32    Red,
33    Blue,
34    Green,
35}
36```
37
38## Optional features
39
40- **`full-syntax`** — Enables `num-derive` to handle enum discriminants
41  represented by complex expressions. Usually can be avoided by
42  [utilizing constants], so only use this feature if namespace pollution is
43  undesired and [compile time doubling] is acceptable.
44
45[utilizing constants]: https://github.com/rust-num/num-derive/pull/3#issuecomment-359044704
46[compile time doubling]: https://github.com/rust-num/num-derive/pull/3#issuecomment-359172588
47
48## Releases
49
50Release notes are available in [RELEASES.md](RELEASES.md).
51
52## Compatibility
53
54The `num-derive` crate is tested for rustc 1.31 and greater.
55
56## License
57
58Licensed under either of
59
60 * [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
61 * [MIT license](http://opensource.org/licenses/MIT)
62
63at your option.
64
65### Contribution
66
67Unless you explicitly state otherwise, any contribution intentionally submitted
68for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
69dual licensed as above, without any additional terms or conditions.
70