5 releases

0.0.5 Feb 28, 2022
0.0.4 Jun 2, 2021
0.0.3 Jun 1, 2021
0.0.2 Jun 1, 2021
0.0.1 May 31, 2021

#867 in Data structures

Download history 131/week @ 2024-03-11 112/week @ 2024-03-18 93/week @ 2024-03-25 125/week @ 2024-04-01 115/week @ 2024-04-08 126/week @ 2024-04-15 124/week @ 2024-04-22 85/week @ 2024-04-29 119/week @ 2024-05-06 108/week @ 2024-05-13 122/week @ 2024-05-20 86/week @ 2024-05-27 110/week @ 2024-06-03 116/week @ 2024-06-10 105/week @ 2024-06-17 103/week @ 2024-06-24

439 downloads per month
Used in 3 crates (2 directly)

MIT/Apache

75KB
1.5K SLoC

intervals-rs

A Rust crate for intervals.

Workflow Status crates.io docs.rs dependency status tokei

Install to Cargo.toml

Add this to your Cargo.toml:

[dependencies]
intervals-rs = "<<version>>"

Usage

  • open interval
let range = Interval::over(
  LimitValue::Limit(Decimal::from_f32(-5.5).unwrap()),
  false,
  LimitValue::Limit(Decimal::from_f32(6.6).unwrap()),
  true,
);
assert!(range.includes(&LimitValue::Limit(Decimal::from_f32(5.0).unwrap())));
assert!(!range.includes(&LimitValue::Limit(Decimal::from_f32(-5.5).unwrap())));
assert!(range.includes(&LimitValue::Limit(Decimal::from_f32(-5.4999).unwrap())));
assert!(range.includes(&LimitValue::Limit(Decimal::from_f32(6.6).unwrap())));
assert!(!range.includes(&LimitValue::Limit(Decimal::from_f32(6.601).unwrap())));
assert!(!range.includes(&LimitValue::Limit(Decimal::from_f32(-5.501).unwrap())));
  • closed interval
let range = Interval::closed(
  LimitValue::Limit(Decimal::from_f32(-5.5).unwrap()),
  LimitValue::Limit(Decimal::from_f32(6.6).unwrap()),
);
assert!(range.includes(&LimitValue::Limit(Decimal::from_f32(5.0).unwrap())));
assert!(range.includes(&LimitValue::Limit(Decimal::from_f32(-5.5).unwrap())));
assert!(range.includes(&LimitValue::Limit(Decimal::from_f32(-5.4999).unwrap())));
assert!(range.includes(&LimitValue::Limit(Decimal::from_f32(6.6).unwrap())));
assert!(!range.includes(&LimitValue::Limit(Decimal::from_f32(6.601).unwrap())));
assert!(!range.includes(&LimitValue::Limit(Decimal::from_f32(-5.501).unwrap())));

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~305KB