[−][src]Trait rulinalg::ulp::Ulp
Floating point types for which two instances can be compared for Unit in the Last Place (ULP) difference.
Implementing this trait enables the usage of the ulp comparator in
assert_matrix_eq! for the given type.
The definition here leverages the fact that for two adjacent floating point numbers, their integer representations are also adjacent.
A somewhat accessible (but not exhaustive) guide on the topic is available in the popular article [Comparing Floating Point Numbers, 2012 Edition] (https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/).
Implementations for f32 and f64 are already available, and so users should not normally
need to implement this. In the case when a custom implementation is necessary,
please see the possible return values for UlpComparisonResult.
Otherwise, we can recommend to read the source code of the included f32 and f64 implementations.
Required methods
fn ulp_diff(a: &Self, b: &Self) -> UlpComparisonResult
Returns the difference between two floating point numbers, measured in ULP.