Sha256: 781a7607841e47a57d763b7e81fe12b731d06b424bd15a10d189104f59fa5933
Contents?: true
Size: 1.16 KB
Versions: 3
Compression:
Stored size: 1.16 KB
Contents
//! libm in pure Rust #![no_std] #![cfg_attr(feature = "unstable", allow(internal_features))] #![cfg_attr(feature = "unstable", feature(core_intrinsics))] #![allow(clippy::assign_op_pattern)] #![allow(clippy::deprecated_cfg_attr)] #![allow(clippy::eq_op)] #![allow(clippy::float_cmp)] #![allow(clippy::int_plus_one)] #![allow(clippy::many_single_char_names)] #![allow(clippy::mixed_case_hex_literals)] #![allow(clippy::needless_return)] #![allow(clippy::unreadable_literal)] mod libm_helper; mod math; use core::{f32, f64}; pub use libm_helper::*; pub use self::math::*; /// Approximate equality with 1 ULP of tolerance #[doc(hidden)] #[inline] pub fn _eqf(a: f32, b: f32) -> Result<(), u32> { if a.is_nan() && b.is_nan() { Ok(()) } else { let err = (a.to_bits() as i32).wrapping_sub(b.to_bits() as i32).abs(); if err <= 1 { Ok(()) } else { Err(err as u32) } } } #[doc(hidden)] #[inline] pub fn _eq(a: f64, b: f64) -> Result<(), u64> { if a.is_nan() && b.is_nan() { Ok(()) } else { let err = (a.to_bits() as i64).wrapping_sub(b.to_bits() as i64).abs(); if err <= 1 { Ok(()) } else { Err(err as u64) } } }
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
wasmtime-29.0.0 | ./ext/cargo-vendor/libm-0.2.11/src/lib.rs |
wasmtime-28.0.0 | ./ext/cargo-vendor/libm-0.2.11/src/lib.rs |
wasmtime-27.0.0 | ./ext/cargo-vendor/libm-0.2.11/src/lib.rs |