are_intervals_disjoint

Function are_intervals_disjoint 

Source
pub fn are_intervals_disjoint(intervals: &[(u64, u64)]) -> bool
Expand description

Checks if a list of closed integer intervals are all mutually disjoint.

Two intervals are disjoint if they do not overlap. This function validates that all intervals in the list are non-overlapping, which is a requirement for maintaining data integrity in the catalog.

§Parameters

  • intervals: A slice of timestamp intervals as (start, end) tuples.

§Returns

Returns true if all intervals are disjoint, false if any overlap is found. Returns true for empty lists or lists with a single interval.

§Examples

// Disjoint intervals
assert!(are_intervals_disjoint(&[(1, 5), (10, 15), (20, 25)]));

// Overlapping intervals
assert!(!are_intervals_disjoint(&[(1, 10), (5, 15)]));