]> git.proxmox.com Git - rustc.git/blame - vendor/num-traits/README.md
New upstream version 1.46.0~beta.2+dfsg1
[rustc.git] / vendor / num-traits / README.md
CommitLineData
0531ce1d
XL
1# num-traits
2
3[![crate](https://img.shields.io/crates/v/num-traits.svg)](https://crates.io/crates/num-traits)
4[![documentation](https://docs.rs/num-traits/badge.svg)](https://docs.rs/num-traits)
f035d41b
XL
5[![minimum rustc 1.8](https://img.shields.io/badge/rustc-1.8+-red.svg)](https://rust-lang.github.io/rfcs/2495-min-rust-version.html)
6[![build status](https://github.com/rust-num/num-traits/workflows/master/badge.svg)](https://github.com/rust-num/num-traits/actions)
0531ce1d
XL
7
8Numeric traits for generic mathematics in Rust.
9
10## Usage
11
12Add this to your `Cargo.toml`:
13
14```toml
15[dependencies]
16num-traits = "0.2"
17```
18
19and this to your crate root:
20
21```rust
22extern crate num_traits;
23```
24
25## Features
26
27This crate can be used without the standard library (`#![no_std]`) by disabling
8faf50e0 28the default `std` feature. Use this in `Cargo.toml`:
0531ce1d
XL
29
30```toml
31[dependencies.num-traits]
32version = "0.2"
33default-features = false
f035d41b 34# features = ["libm"] # <--- Uncomment if you wish to use `Float` and `Real` without `std`
0531ce1d
XL
35```
36
f035d41b
XL
37The `Float` and `Real` traits are only available when either `std` or `libm` is enabled.
38The `libm` feature is only available with Rust 1.31 and later ([see PR #99](https://github.com/rust-num/num-traits/pull/99)).
39
40The `FloatCore` trait is always available. `MulAdd` and `MulAddAssign` for `f32`
41and `f64` also require `std` or `libm`, as do implementations of signed and floating-
8faf50e0
XL
42point exponents in `Pow`.
43
44Implementations for `i128` and `u128` are only available with Rust 1.26 and
45later. The build script automatically detects this, but you can make it
46mandatory by enabling the `i128` crate feature.
0531ce1d
XL
47
48## Releases
49
50Release notes are available in [RELEASES.md](RELEASES.md).
51
52## Compatibility
53
54The `num-traits` crate is tested for rustc 1.8 and greater.