Bug: 162331178

Clone this repo:
  1. fd8d3c7 Mark ab/6881855 as merged by Xin Li · 8 weeks ago master
  2. 4dd1a71 Upgrade rust/crates/num-derive to 0.3.3 am: b858c52f1f by Haibo Huang · 2 months ago
  3. b858c52 Upgrade rust/crates/num-derive to 0.3.3 by Haibo Huang · 3 months ago
  4. b0b4bd6 Skip ab/6749736 in stage. by Xin Li · 3 months ago
  5. c864249 Fix version number error. am: 4feeeacb57 am: 8b1ebdbf7b am: 12d3ef270c am: 0c15763504 by Chih-Hung Hsieh · 4 months ago


crate documentation minimum rustc 1.31 build status

Procedural macros to derive numeric traits in Rust.


Add this to your Cargo.toml:

num-traits = "0.2"
num-derive = "0.3"

and this to your crate root:

extern crate num_derive;

Then you can derive traits on your own types:

#[derive(FromPrimitive, ToPrimitive)]
enum Color {

Optional features

  • 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.