pub enum LatestEventValue {
None,
Remote(TimelineEvent),
RemoteInvite {
event_id: Option<OwnedEventId>,
timestamp: MilliSecondsSinceUnixEpoch,
inviter: Option<OwnedUserId>,
},
LocalIsSending(LocalLatestEventValue),
LocalHasBeenSent {
event_id: OwnedEventId,
value: LocalLatestEventValue,
},
LocalCannotBeSent(LocalLatestEventValue),
}Expand description
A latest event value!
Variants§
None
No value has been computed yet, or no candidate value was found.
Remote(TimelineEvent)
The latest event represents a remote event.
RemoteInvite
The latest event represents an invite, i.e. the current user has been invited to join a room.
Fields
timestamp: MilliSecondsSinceUnixEpochThe timestamp of the invite event.
LocalIsSending(LocalLatestEventValue)
The latest event represents a local event that is sending.
LocalHasBeenSent
The latest event represents a local event that has been sent
successfully. It should come quickly as a Self::Remote.
Fields
event_id: OwnedEventIdID of the sent event.
value: LocalLatestEventValueValue, as for other Self::Local* variants.
LocalCannotBeSent(LocalLatestEventValue)
The latest event represents a local event that cannot be sent, either because a previous local event, or this local event cannot be sent.
Implementations§
Source§impl LatestEventValue
impl LatestEventValue
Sourcepub fn timestamp(&self) -> Option<MilliSecondsSinceUnixEpoch>
pub fn timestamp(&self) -> Option<MilliSecondsSinceUnixEpoch>
Get the timestamp of the LatestEventValue.
- If it’s
None, it returnsNone. - If it’s
Remote, it returns theTimelineEvent::timestamp. - If it’s
RemoteInvite, it returns theSyncOrStrippedState::timestamp. - If it’s
LocalIsSending,LocalHasBeenSentorLocalCannotBeSent, it returns theLocalLatestEventValue::timestampvalue.
Sourcepub fn is_local(&self) -> bool
pub fn is_local(&self) -> bool
Check whether the LatestEventValue represents a local value or not,
i.e. it is LocalIsSending or LocalCannotBeSent.
Sourcepub fn is_unsent(&self) -> bool
pub fn is_unsent(&self) -> bool
Check whether the LatestEventValue represents an unsent event, i.e.
is LocalIsSending nor LocalCannotBeSent.
Sourcepub fn is_none(&self) -> bool
pub fn is_none(&self) -> bool
Check whether the LatestEventValue is not set, i.e. None.
Sourcepub fn event_id(&self) -> Option<OwnedEventId>
pub fn event_id(&self) -> Option<OwnedEventId>
Get the event ID (if it exists) of the event representing the
LatestEventValue.
Trait Implementations§
Source§impl Clone for LatestEventValue
impl Clone for LatestEventValue
Source§fn clone(&self) -> LatestEventValue
fn clone(&self) -> LatestEventValue
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LatestEventValue
impl Debug for LatestEventValue
Source§impl Default for LatestEventValue
impl Default for LatestEventValue
Source§fn default() -> LatestEventValue
fn default() -> LatestEventValue
Source§impl<'de> Deserialize<'de> for LatestEventValue
impl<'de> Deserialize<'de> for LatestEventValue
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<LatestEventValue, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<LatestEventValue, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for LatestEventValue
impl Serialize for LatestEventValue
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for LatestEventValue
impl RefUnwindSafe for LatestEventValue
impl Send for LatestEventValue
impl Sync for LatestEventValue
impl Unpin for LatestEventValue
impl UnsafeUnpin for LatestEventValue
impl UnwindSafe for LatestEventValue
Blanket Implementations§
impl<T> Any for Twhere
T: Any,
impl<T> AsyncTraitDeps 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
impl<T> CloneAny for T
impl<T> CloneAnySend for T
impl<T> CloneAnySendSync for T
impl<T> CloneAnySync for T
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
Source§impl<T> DeserialiseFromJs for Twhere
T: DeserializeOwned,
impl<T> DeserialiseFromJs for Twhere
T: DeserializeOwned,
Source§fn deserialise_from_js(js: JsValue) -> Result<T, Error>
fn deserialise_from_js(js: JsValue) -> Result<T, Error>
serde_wasm_bindgen.impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> DropFlavorWrapper<T> for T
impl<T> DropFlavorWrapper<T> for T
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> Fruit 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
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Arc<> Read moreSource§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§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>
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 moreimpl<T> JsonCastable<CanonicalJsonValue> for T
impl<T> JsonCastable<Value> for T
impl<T> MaybeSendSync for T
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> SendOutsideWasm for Twhere
T: Send,
Source§impl<T> SerialiseToJs for Twhere
T: Serialize,
impl<T> SerialiseToJs for Twhere
T: Serialize,
Source§fn serialise_to_js(&self) -> Result<JsValue, Error>
fn serialise_to_js(&self) -> Result<JsValue, Error>
JsValue, most likely using serde_wasm_bindgen.