score-set 0.1.1

A Rust library for building static weighted scoring operator sets
Documentation
use crate::Float;
use crate::float::sealed::SealedFloat;

#[test]
fn f64_is_score_float() {
    fn assert_score_float<T: Float>() {}
    assert_score_float::<f64>();
}

#[test]
fn f32_is_score_float() {
    fn assert_score_float<T: Float>() {}
    assert_score_float::<f32>();
}

#[test]
fn zero_and_one() {
    assert_eq!(f64::zero(), 0.0);
    assert_eq!(f64::one(), 1.0);
    assert_eq!(f32::zero(), 0.0_f32);
    assert_eq!(f32::one(), 1.0_f32);
}

#[test]
fn finite_check() {
    assert!(f64::is_finite(1.0));
    assert!(!f64::is_finite(f64::NAN));
    assert!(!f64::is_finite(f64::INFINITY));
    assert!(f32::is_finite(1.0_f32));
    assert!(!f32::is_finite(f32::NAN));
}

#[test]
fn from_f64() {
    assert_eq!(f64::from_f64(0.5), 0.5);
    assert!((f32::from_f64(0.5) - 0.5_f32).abs() < 1e-6);
}

#[test]
fn abs_and_min_max() {
    assert_eq!(f64::abs(-1.0), 1.0);
    assert_eq!(f64::min(2.0, 3.0), 2.0);
    assert_eq!(f64::max(2.0, 3.0), 3.0);
}