pub enum ChangeSource {
Event,
LocalAction,
Fetch,
}Expand description
Where a property value came from.
Recorded on every write and carried on every ChangeEvent, for two
reasons: it breaks ties between writes that share an Instant (the variant
order below is the tie-break order, most authoritative first), and it lets a
consumer tell a device-pushed value apart from one this process just wrote
optimistically.
Variants§
Event
Decoded from a UPnP NOTIFY, or from a poll standing in for one.
The most authoritative source: the device volunteered this value, so it was true at the moment it was sent.
LocalAction
Written locally immediately after a control action succeeded.
The device acknowledged the action, so the value is true as of the acknowledgement — but it is our inference, not the device’s report.
Fetch
Returned by an explicit fetch() SOAP read.
The least authoritative, because a fetch() observes the device at
request time but lands at response time — see WriteStamp.
Trait Implementations§
Source§impl Clone for ChangeSource
impl Clone for ChangeSource
Source§fn clone(&self) -> ChangeSource
fn clone(&self) -> ChangeSource
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ChangeSource
Source§impl Debug for ChangeSource
impl Debug for ChangeSource
impl Eq for ChangeSource
Source§impl PartialEq for ChangeSource
impl PartialEq for ChangeSource
impl StructuralPartialEq for ChangeSource
Auto Trait Implementations§
impl Freeze for ChangeSource
impl RefUnwindSafe for ChangeSource
impl Send for ChangeSource
impl Sync for ChangeSource
impl Unpin for ChangeSource
impl UnsafeUnpin for ChangeSource
impl UnwindSafe for ChangeSource
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.