Enum std::num::FpCategory1.0.0[−][src]

``````pub enum FpCategory {
Nan,
Infinite,
Zero,
Subnormal,
Normal,
}``````
Expand description

A classification of floating point numbers.

This `enum` is used as the return type for `f32::classify` and `f64::classify`. See their documentation for more.

Examples

``````use std::num::FpCategory;

let num = 12.4_f32;
let inf = f32::INFINITY;
let zero = 0f32;
let sub: f32 = 1.1754942e-38;
let nan = f32::NAN;

assert_eq!(num.classify(), FpCategory::Normal);
assert_eq!(inf.classify(), FpCategory::Infinite);
assert_eq!(zero.classify(), FpCategory::Zero);
assert_eq!(nan.classify(), FpCategory::Nan);
assert_eq!(sub.classify(), FpCategory::Subnormal);``````
Run

Variants

`Nan`

NaN (not a number): this value results from calculations like `(-1.0).sqrt()`.

See the documentation for `f32` for more information on the unusual properties of NaN.

`Infinite`

Positive or negative infinity, which often results from dividing a nonzero number by zero.

`Zero`

Positive or negative zero.

See the documentation for `f32` for more information on the signedness of zeroes.

`Subnormal`

“Subnormal” or “denormal” floating point representation (less precise, relative to their magnitude, than `Normal`).

Subnormal numbers are larger in magnitude than `Zero` but smaller in magnitude than all `Normal` numbers.

`Normal`

A regular floating point number, not any of the exceptional categories.

The smallest positive normal numbers are `f32::MIN_POSITIVE` and `f64::MIN_POSITIVE`, and the largest positive normal numbers are `f32::MAX` and `f64::MAX`. (Unlike signed integers, floating point numbers are symmetric in their range, so negating any of these constants will produce their negative counterpart.)

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from `source`. Read more

Formats the value using the given formatter. Read more

This method tests for `self` and `other` values to be equal, and is used by `==`. Read more

This method tests for `!=`.

Blanket Implementations

Gets the `TypeId` of `self`. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (`toowned_clone_into` #41263)