fcc33a3577
52: Refactor ToPrimitive range checks r=cuviper a=cuviper This is a rebase and continuation of PR #28. The primary benefit is that floats finally check for overflow before casting to integers, avoiding undefined behavior. Fixes #12. The inter-integer conversions and all of the macros for these have also been tweaked, hopefully improving readability. Exhaustive tests have been added for good and bad conversions around the target MIN and MAX values. |
||
---|---|---|
ci | ||
src | ||
.gitignore | ||
.travis.yml | ||
Cargo.toml | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md | ||
RELEASES.md | ||
bors.toml |
README.md
num-traits
Numeric traits for generic mathematics in Rust.
Usage
Add this to your Cargo.toml
:
[dependencies]
num-traits = "0.2"
and this to your crate root:
extern crate num_traits;
Features
This crate can be used without the standard library (#![no_std]
) by disabling
the default std
feature. Use this in Cargo.toml
:
[dependencies.num-traits]
version = "0.2"
default-features = false
The Float
and Real
traits are only available when std
is enabled. The
FloatCore
trait is always available.
Releases
Release notes are available in RELEASES.md.
Compatibility
The num-traits
crate is tested for rustc 1.8 and greater.