Struct Thread
#[non_exhaustive]pub struct Thread {
pub event_id: OwnedEventId,
pub in_reply_to: Option<InReplyTo>,
pub is_falling_back: bool,
}Expand description
The content of a thread relation.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.event_id: OwnedEventIdThe ID of the root message in the thread.
in_reply_to: Option<InReplyTo>A reply relation.
If this event is a reply and belongs to a thread, this points to the message that is being
replied to, and is_falling_back must be set to false.
If this event is not a reply, this is used as a fallback mechanism for clients that do not
support threads. This should point to the latest message-like event in the thread and
is_falling_back must be set to true.
is_falling_back: boolWhether the m.in_reply_to field is a fallback for older clients or a genuine reply in a
thread.
Implementations§
§impl Thread
impl Thread
pub fn plain(event_id: OwnedEventId, latest_event_id: OwnedEventId) -> Thread
pub fn plain(event_id: OwnedEventId, latest_event_id: OwnedEventId) -> Thread
Convenience method to create a regular Thread relation with the given root event ID and
latest message-like event ID.
pub fn without_fallback(event_id: OwnedEventId) -> Thread
pub fn without_fallback(event_id: OwnedEventId) -> Thread
Convenience method to create a regular Thread relation with the given root event ID and
without the recommended reply fallback.
pub fn reply(event_id: OwnedEventId, reply_to_event_id: OwnedEventId) -> Thread
pub fn reply(event_id: OwnedEventId, reply_to_event_id: OwnedEventId) -> Thread
Convenience method to create a reply Thread relation with the given root event ID and
replied-to event ID.
Trait Implementations§
§impl<'de> Deserialize<'de> for Thread
impl<'de> Deserialize<'de> for Thread
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Thread, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Thread, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl Serialize for Thread
impl Serialize for Thread
§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 Thread
impl RefUnwindSafe for Thread
impl Send for Thread
impl Sync for Thread
impl Unpin for Thread
impl UnsafeUnpin for Thread
impl UnwindSafe for Thread
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,
§impl<T> CompatExt for T
impl<T> CompatExt for T
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§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 more