pub struct RecurringTimeWindow {
pub recurrence: Option<String>,
pub window: Option<TimeWindow>,
}
Expand description
Represents an arbitrary window of time that recurs.
This type is not used in any activity, and only used as part of another schema.
Fields§
§recurrence: Option<String>
An 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,FR
Windows 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=SA
Note 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.
window: Option<TimeWindow>
The window of the first 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 moreSource§impl Debug for RecurringTimeWindow
impl Debug for RecurringTimeWindow
Source§impl Default for RecurringTimeWindow
impl Default for RecurringTimeWindow
Source§fn default() -> RecurringTimeWindow
fn default() -> RecurringTimeWindow
Source§impl<'de> Deserialize<'de> for RecurringTimeWindow
impl<'de> Deserialize<'de> for RecurringTimeWindow
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for RecurringTimeWindow
impl Serialize for RecurringTimeWindow
impl Part for RecurringTimeWindow
Auto Trait Implementations§
impl Freeze for RecurringTimeWindow
impl RefUnwindSafe for RecurringTimeWindow
impl Send for RecurringTimeWindow
impl Sync for RecurringTimeWindow
impl Unpin for RecurringTimeWindow
impl UnwindSafe for RecurringTimeWindow
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more