pub struct TimestampedLockState {
pub lock_state: LockState,
pub changed_at: u64,
}Expand description
A user’s lock state, together with when the reporting device entered it.
Fields§
§lock_state: LockStateWhat lock state the device recorded
changed_at: u64Milliseconds since the Unix epoch at which the device entered lock_state.
Implementations§
Source§impl TimestampedLockState
impl TimestampedLockState
Sourcepub(crate) fn supersedes(&self, recorded: Option<&TimestampedLockState>) -> bool
pub(crate) fn supersedes(&self, recorded: Option<&TimestampedLockState>) -> bool
Whether this state, as reported by a peer, supersedes what the receiving device has recorded.
A user the receiver has recorded nothing for counts as date 0, so a peer’s default state
is ignored rather than mistaken for an authoritative lock.
Equal dates are ambiguous: two devices acting inside the same millisecond, neither having
seen the other yet. Those are broken toward Locked.
Trait Implementations§
Source§impl Clone for TimestampedLockState
impl Clone for TimestampedLockState
Source§fn clone(&self) -> TimestampedLockState
fn clone(&self) -> TimestampedLockState
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TimestampedLockState
impl Debug for TimestampedLockState
Source§impl Default for TimestampedLockState
impl Default for TimestampedLockState
Source§impl<'de> Deserialize<'de> for TimestampedLockState
impl<'de> Deserialize<'de> for TimestampedLockState
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for TimestampedLockState
impl PartialEq for TimestampedLockState
Source§impl Serialize for TimestampedLockState
impl Serialize for TimestampedLockState
impl StructuralPartialEq for TimestampedLockState
Auto Trait Implementations§
impl Freeze for TimestampedLockState
impl RefUnwindSafe for TimestampedLockState
impl Send for TimestampedLockState
impl Sync for TimestampedLockState
impl Unpin for TimestampedLockState
impl UnsafeUnpin for TimestampedLockState
impl UnwindSafe for TimestampedLockState
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<> Read more§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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