Skip to main content

Crate use_date_range

Crate use_date_range 

Source
Expand description

Primitive date range helpers.

These helpers work with inclusive date ranges built from valid calendar dates.

§Examples

use use_date::CalendarDate;
use use_date_range::{DateRange, intersection, overlaps};

let start = CalendarDate::new(2024, 1, 1).unwrap();
let end = CalendarDate::new(2024, 1, 3).unwrap();
let range = DateRange::new(start, end).unwrap();
let other = DateRange::new(CalendarDate::new(2024, 1, 3).unwrap(), CalendarDate::new(2024, 1, 5).unwrap()).unwrap();

assert!(range.contains(CalendarDate::new(2024, 1, 2).unwrap()));
assert_eq!(range.duration_days(), 2);
assert!(overlaps(range, other));
assert_eq!(intersection(range, other).unwrap().start(), CalendarDate::new(2024, 1, 3).unwrap());

Structs§

DateRange

Enums§

DateRangeError

Functions§

date_range
intersection
overlaps