OrdMask
OrdMask is a Rust library for checking if values are included within specific ranges.
- Efficient range checking
- Support for
union,intersection,minus,complement, andsymmetric_differenceoperations - Works with any type that implements the
OrdandClonetraits
Construct
use ;
// [0, 10) and [20, \infty)
let mask = ordmask!;
assert!;
assert!;
assert!;
assert!;
assert!;
assert!;
// Create from `Vec<T>`
assert_eq!;
// Create from key_points and a predicate
assert_eq!;
// Create from key_points_map
assert_eq!;
// (-\infty, 10)
let mask = ordmask!;
assert_eq!;
assert!;
assert!;
// [10, \infty)
let mask = ordmask!;
assert_eq!;
assert!;
assert!;
// [10, 20)
let mask = ordmask!;
assert_eq!;
assert!;
assert!;
assert!;
assert!;
// Universal
let mask = ordmask!;
assert_eq!;
assert!;
assert!;
// Empty
let mask = ordmask!;
assert_eq!;
assert!;
assert!;
Union
use ;
let a = ordmask!;
let b = ordmask!;
let c = ordmask!;
assert_eq!;
assert_eq!;
Intersection
use ;
let a = ordmask!;
let b = ordmask!;
let c = ordmask!;
assert_eq!;
assert_eq!;
Minus and Complement
use ;
let a = ordmask!;
let b = ordmask!;
let c = ordmask!;
assert_eq!;
assert_eq!;
let a = ordmask!;
assert_eq!;
assert_eq!;
Symmetric Difference
use ;
let a = ordmask!;
let b = ordmask!;
assert_eq!;
assert_eq!;