Skip to main content

RecordingChanges

Struct RecordingChanges 

Source
#[non_exhaustive]
pub struct RecordingChanges { pub added: BTreeMap<String, Vec<Recording>>, pub updated: BTreeMap<String, Vec<Recording>>, pub deleted: Vec<DeletedRecording>, pub next_page: Option<CalendarChangesCursor>, pub next_cursor: Option<CalendarChangesCursor>, pub full_sync_required: bool, }
Expand description

Everything that happened to a calendar’s recordings since a cursor.

added and updated keep the wire’s grouping by recordable type key — Calendar::Event, Calendar::Habit, Calendar::Habit::Completion, Calendar::DayTitle, Calendar::DayBackground, Calendar::TimeTrack, Calendar::Todo, Calendar::Countdown, Calendar::JournalEntry — the server owns that vocabulary. deleted is one deduplicated list instead: the wire groups deletions by type key too, but repeats the whole deleted collection under every key it groups, so the map shape carries nothing beyond each record’s own type, which is authoritative.

next_page is set while this increment has more pages to read now. next_cursor is set on the last page and is where the next read should resume; it is None when nothing changed, in which case the cursor that produced this page still stands. full_sync_required is set when the cursor is too far behind for an increment to carry the difference — or speaks a version the feed no longer does — and the calendar has to be read in full instead.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§added: BTreeMap<String, Vec<Recording>>

The recordings that appeared, grouped by recordable type key.

§updated: BTreeMap<String, Vec<Recording>>

The recordings that changed, grouped by recordable type key.

§deleted: Vec<DeletedRecording>

The recordings that went, each once.

§next_page: Option<CalendarChangesCursor>

The next page of this increment, while it has one.

§next_cursor: Option<CalendarChangesCursor>

Where the next read resumes, once the increment is read to its end.

§full_sync_required: bool

Whether the cursor is too far behind and the calendar has to be read in full.

Trait Implementations§

Source§

impl Clone for RecordingChanges

Source§

fn clone(&self) -> RecordingChanges

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RecordingChanges

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for RecordingChanges

Source§

fn default() -> RecordingChanges

Returns the “default value” for a type. Read more
Source§

impl PartialEq for RecordingChanges

Source§

fn eq(&self, other: &RecordingChanges) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for RecordingChanges

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more