Enum ScheduleError
#[non_exhaustive]pub enum ScheduleError {
TooFewDates {
stated: usize,
},
OutOfOrder {
at: usize,
date: NaiveDate,
next: NaiveDate,
},
RepeatedDate {
at: usize,
date: NaiveDate,
},
StubDateOutsideTerm {
date: NaiveDate,
effective: NaiveDate,
termination: NaiveDate,
},
StubDatesOutOfOrder {
first_regular_start: NaiveDate,
last_regular_end: NaiveDate,
},
}Expand description
Why a stated list of boundary dates is not a schedule.
Each variant is a way the list is ill-formed, never a way it is unconventional: a boundary on a Saturday and periods of unequal length are what stating dates is for, and neither is refused.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
TooFewDates
Fewer than two dates were stated. n boundaries delimit n - 1
periods, so one date delimits none and is not a schedule.
OutOfOrder
Two consecutive dates run backwards.
Fields
RepeatedDate
The same date was stated twice in a row, which would delimit a period of zero length.
StubDateOutsideTerm
A stated regular-period date — first regular start or last regular end — does not fall strictly inside the term.
Fields
StubDatesOutOfOrder
The first regular period start is not before the last regular period end, so no regular period lies between them.
Trait Implementations§
§impl Clone for ScheduleError
impl Clone for ScheduleError
§fn clone(&self) -> ScheduleError
fn clone(&self) -> ScheduleError
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for ScheduleError
impl Debug for ScheduleError
§impl Display for ScheduleError
impl Display for ScheduleError
impl Eq for ScheduleError
§impl Error for ScheduleError
impl Error for ScheduleError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
§impl PartialEq for ScheduleError
impl PartialEq for ScheduleError
impl StructuralPartialEq for ScheduleError
Auto Trait Implementations§
impl Freeze for ScheduleError
impl RefUnwindSafe for ScheduleError
impl Send for ScheduleError
impl Sync for ScheduleError
impl Unpin for ScheduleError
impl UnsafeUnpin for ScheduleError
impl UnwindSafe for ScheduleError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more