pub struct Calendar { /* private fields */ }Implementations§
Source§impl Calendar
impl Calendar
Sourcepub fn create(
path: &Path,
config: Option<CalendarConfig>,
) -> Result<Self, CalendarError>
pub fn create( path: &Path, config: Option<CalendarConfig>, ) -> Result<Self, CalendarError>
Create new calendar
Sourcepub fn load(path: &Path) -> Result<Self, CalendarError>
pub fn load(path: &Path) -> Result<Self, CalendarError>
Load existing calendar
pub fn path(&self) -> &Path
pub fn config_path(&self) -> PathBuf
pub fn state(&self) -> &CalendarState
pub fn slug(&self) -> Option<&str>
Sourcepub fn events(&self) -> Result<Vec<CalendarEvent>, CalendarError>
pub fn events(&self) -> Result<Vec<CalendarEvent>, CalendarError>
Load all events in calendar
Sourcepub fn event(&self, event_slug: &str) -> Result<CalendarEvent, CalendarError>
pub fn event(&self, event_slug: &str) -> Result<CalendarEvent, CalendarError>
Load specific event in calendar
pub fn event_by_instance_id( &self, id: &EventInstanceId, ) -> Result<Option<CalendarEvent>, CalendarError>
Sourcepub fn master_event_for(
&self,
uid: &str,
) -> Result<Option<Event>, CalendarError>
pub fn master_event_for( &self, uid: &str, ) -> Result<Option<Event>, CalendarError>
Find the master event of a recurring series given its uid.
i.e. a master event is one whose recurrence field is set.
Instance overrides (with recurrence_id set) are not considered masters.
pub fn is_read_only(&self) -> bool
pub fn name(&self) -> Option<&str>
pub fn color(&self) -> Option<&str>
pub fn read_only_setting(&self) -> Option<bool>
Sourcepub fn split_recurring_series_at(
&self,
master_uid: &EventUid,
split_start: EventTime,
split_end: EventTime,
new_recurrence: Option<Recurrence>,
) -> Result<Event, CalendarError>
pub fn split_recurring_series_at( &self, master_uid: &EventUid, split_start: EventTime, split_end: EventTime, new_recurrence: Option<Recurrence>, ) -> Result<Event, CalendarError>
Split a recurring series at split_start:
Original master:
- RRULE is truncated to end strictly before
split_start - Any EXDATEs at or after
split_startare dropped - Any override files at or after
split_startare deleted
New master:
- Starts at
split_start - Inherit all other metadata (summary, description, location etc) from original
- Gets a fresh UID and a reset SEQUENCE
Sourcepub fn delete_recurring_instance(
&self,
id: &EventInstanceId,
) -> Result<(), CalendarError>
pub fn delete_recurring_instance( &self, id: &EventInstanceId, ) -> Result<(), CalendarError>
Exclude a single occurrence from a recurring series i.e. “delete this instance only”
Sourcepub fn update_recurring_instance(
&self,
id: &EventInstanceId,
apply: impl FnOnce(&mut Event),
) -> Result<CalendarEvent, CalendarError>
pub fn update_recurring_instance( &self, id: &EventInstanceId, apply: impl FnOnce(&mut Event), ) -> Result<CalendarEvent, CalendarError>
Override a single occurrence of a recurring series
Sourcepub fn expanded_events_in_range(
&self,
from: DateTime<Utc>,
to: DateTime<Utc>,
) -> Result<Vec<Event>, CalendarError>
pub fn expanded_events_in_range( &self, from: DateTime<Utc>, to: DateTime<Utc>, ) -> Result<Vec<Event>, CalendarError>
List all events occurring within time range
Sourcepub fn create_event(&self, event: Event) -> Result<CalendarEvent, CalendarError>
pub fn create_event(&self, event: Event) -> Result<CalendarEvent, CalendarError>
Create new event in calendar
Sourcepub fn delete_event(&self, event_slug: &str) -> Result<(), CalendarError>
pub fn delete_event(&self, event_slug: &str) -> Result<(), CalendarError>
Delete event from calendar
pub fn remote_config(&self) -> Option<&RemoteConfig>
pub fn has_remote(&self) -> bool
pub fn config(&self) -> Option<&CalendarConfig>
pub fn remote_email(&self) -> Option<&str>
pub fn base_slug_for(name: Option<&str>) -> String
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Calendar
impl RefUnwindSafe for Calendar
impl Send for Calendar
impl Sync for Calendar
impl Unpin for Calendar
impl UnsafeUnpin for Calendar
impl UnwindSafe for Calendar
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