#[non_exhaustive]pub struct RecurringTimeWindow {
pub window: Option<TimeWindow>,
pub recurrence: String,
}Expand description
Represents an arbitrary window of time that recurs.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.window: Option<TimeWindow>The window of the first recurrence.
recurrence: StringAn RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how this window reccurs. They go on for the span of time between the start and end time.
For example, to have something repeat every weekday, you’d use:
FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
To repeat some window daily (equivalent to the DailyMaintenanceWindow):
FREQ=DAILY
For the first weekend of every month:
FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU
This specifies how frequently the window starts. Eg, if you wanted to have a 9-5 UTC-4 window every weekday, you’d use something like:
start time = 2019-01-01T09:00:00-0400
end time = 2019-01-01T17:00:00-0400
recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FRWindows can span multiple days. Eg, to make the window encompass every weekend from midnight Saturday till the last minute of Sunday UTC:
start time = 2019-01-05T00:00:00Z
end time = 2019-01-07T23:59:00Z
recurrence = FREQ=WEEKLY;BYDAY=SANote the start and end time’s specific dates are largely arbitrary except to specify duration of the window and when it first starts. The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
Implementations§
Source§impl RecurringTimeWindow
impl RecurringTimeWindow
Sourcepub fn set_window<T: Into<Option<TimeWindow>>>(self, v: T) -> Self
pub fn set_window<T: Into<Option<TimeWindow>>>(self, v: T) -> Self
Sets the value of window.
Sourcepub fn set_recurrence<T: Into<String>>(self, v: T) -> Self
pub fn set_recurrence<T: Into<String>>(self, v: T) -> Self
Sets the value of recurrence.
Trait Implementations§
Source§impl Clone for RecurringTimeWindow
impl Clone for RecurringTimeWindow
Source§fn clone(&self) -> RecurringTimeWindow
fn clone(&self) -> RecurringTimeWindow
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more