pub enum SyncOrStrippedState<C>where
C: StaticStateEventContent + RedactContent,
C::Redacted: RedactedStateEventContent + Debug + Clone,{
Sync(SyncStateEvent<C>),
Stripped(StrippedStateEvent<C::PossiblyRedacted>),
}Expand description
Wrapper around both versions of a state event.
Variants§
Sync(SyncStateEvent<C>)
An event from a room in joined or left state.
Stripped(StrippedStateEvent<C::PossiblyRedacted>)
An event from a room in invited state.
Implementations§
Source§impl<C> SyncOrStrippedState<C>where
C: StaticStateEventContent + RedactContent,
C::Redacted: RedactedStateEventContent<StateKey = C::StateKey> + Debug + Clone,
C::PossiblyRedacted: PossiblyRedactedStateEventContent<StateKey = C::StateKey>,
impl<C> SyncOrStrippedState<C>where
C: StaticStateEventContent + RedactContent,
C::Redacted: RedactedStateEventContent<StateKey = C::StateKey> + Debug + Clone,
C::PossiblyRedacted: PossiblyRedactedStateEventContent<StateKey = C::StateKey>,
Sourcepub fn as_sync(&self) -> Option<&SyncStateEvent<C>>
pub fn as_sync(&self) -> Option<&SyncStateEvent<C>>
If this is a SyncStateEvent, return a reference to the inner event.
Sourcepub fn as_stripped(&self) -> Option<&StrippedStateEvent<C::PossiblyRedacted>>
pub fn as_stripped(&self) -> Option<&StrippedStateEvent<C::PossiblyRedacted>>
If this is a StrippedStateEvent, return a reference to the inner
event.
Sourcepub fn origin_server_ts(&self) -> Option<MilliSecondsSinceUnixEpoch>
pub fn origin_server_ts(&self) -> Option<MilliSecondsSinceUnixEpoch>
The server timestamp of this event.
Source§impl<C> SyncOrStrippedState<C>where
C: StaticStateEventContent<PossiblyRedacted = C> + RedactContent + PossiblyRedactedStateEventContent,
C::Redacted: RedactedStateEventContent<StateKey = <C as StateEventContent>::StateKey> + Debug + Clone,
impl<C> SyncOrStrippedState<C>where
C: StaticStateEventContent<PossiblyRedacted = C> + RedactContent + PossiblyRedactedStateEventContent,
C::Redacted: RedactedStateEventContent<StateKey = <C as StateEventContent>::StateKey> + Debug + Clone,
Sourcepub fn original_content(&self) -> Option<&C>
pub fn original_content(&self) -> Option<&C>
The inner content of the wrapped event.
Source§impl SyncOrStrippedState<RoomMemberEventContent>
impl SyncOrStrippedState<RoomMemberEventContent>
Sourcepub fn membership(&self) -> &MembershipState
pub fn membership(&self) -> &MembershipState
The membership state of the user.
Sourcepub fn displayname_value(&self) -> Option<&str>
pub fn displayname_value(&self) -> Option<&str>
The value of the displayname field in this member event.
MemberEvent::display_name() should be preferred to get the name to
display for this member event.
Sourcepub fn display_name(&self) -> DisplayName
pub fn display_name(&self) -> DisplayName
The name that should be displayed for this member event.
It there is no displayname in the event’s content, the localpart or
the user ID is returned.
Sourcepub fn avatar_url(&self) -> Option<&MxcUri>
pub fn avatar_url(&self) -> Option<&MxcUri>
The URL of the avatar in this member event.
MemberEvent::display_name() should be preferred to get the name to
display for this member event.
Source§impl SyncOrStrippedState<RoomPowerLevelsEventContent>
impl SyncOrStrippedState<RoomPowerLevelsEventContent>
Sourcepub fn power_levels(
&self,
rules: &AuthorizationRules,
creators: Vec<OwnedUserId>,
) -> RoomPowerLevels
pub fn power_levels( &self, rules: &AuthorizationRules, creators: Vec<OwnedUserId>, ) -> RoomPowerLevels
The power levels of the event.
Trait Implementations§
Source§impl<C> Clone for SyncOrStrippedState<C>where
C: StaticStateEventContent + RedactContent + Clone,
C::Redacted: RedactedStateEventContent + Debug + Clone,
C::PossiblyRedacted: Clone,
impl<C> Clone for SyncOrStrippedState<C>where
C: StaticStateEventContent + RedactContent + Clone,
C::Redacted: RedactedStateEventContent + Debug + Clone,
C::PossiblyRedacted: Clone,
Source§fn clone(&self) -> SyncOrStrippedState<C>
fn clone(&self) -> SyncOrStrippedState<C>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<C> Debug for SyncOrStrippedState<C>where
C: StaticStateEventContent + RedactContent + Debug,
C::Redacted: RedactedStateEventContent + Debug + Clone,
C::PossiblyRedacted: Debug,
impl<C> Debug for SyncOrStrippedState<C>where
C: StaticStateEventContent + RedactContent + Debug,
C::Redacted: RedactedStateEventContent + Debug + Clone,
C::PossiblyRedacted: Debug,
Auto Trait Implementations§
impl<C> Freeze for SyncOrStrippedState<C>where
<C as RedactContent>::Redacted: Sized + Freeze,
<C as StaticStateEventContent>::PossiblyRedacted: Freeze,
<<C as StaticStateEventContent>::PossiblyRedacted as PossiblyRedactedStateEventContent>::StateKey: Freeze,
C: Freeze,
<C as StateEventContent>::StateKey: Freeze,
<C as StaticStateEventContent>::Unsigned: Freeze,
<<C as RedactContent>::Redacted as RedactedStateEventContent>::StateKey: Freeze,
impl<C> RefUnwindSafe for SyncOrStrippedState<C>where
<C as RedactContent>::Redacted: Sized + RefUnwindSafe,
<C as StaticStateEventContent>::PossiblyRedacted: RefUnwindSafe,
<<C as StaticStateEventContent>::PossiblyRedacted as PossiblyRedactedStateEventContent>::StateKey: RefUnwindSafe,
C: RefUnwindSafe,
<C as StateEventContent>::StateKey: RefUnwindSafe,
<C as StaticStateEventContent>::Unsigned: RefUnwindSafe,
<<C as RedactContent>::Redacted as RedactedStateEventContent>::StateKey: RefUnwindSafe,
impl<C> Send for SyncOrStrippedState<C>where
<C as RedactContent>::Redacted: Sized + Send,
<C as StaticStateEventContent>::PossiblyRedacted: Send,
<<C as StaticStateEventContent>::PossiblyRedacted as PossiblyRedactedStateEventContent>::StateKey: Send,
C: Send,
<C as StateEventContent>::StateKey: Send,
<C as StaticStateEventContent>::Unsigned: Send,
<<C as RedactContent>::Redacted as RedactedStateEventContent>::StateKey: Send,
impl<C> Sync for SyncOrStrippedState<C>where
<C as RedactContent>::Redacted: Sized + Sync,
<C as StaticStateEventContent>::PossiblyRedacted: Sync,
<<C as StaticStateEventContent>::PossiblyRedacted as PossiblyRedactedStateEventContent>::StateKey: Sync,
C: Sync,
<C as StateEventContent>::StateKey: Sync,
<C as StaticStateEventContent>::Unsigned: Sync,
<<C as RedactContent>::Redacted as RedactedStateEventContent>::StateKey: Sync,
impl<C> Unpin for SyncOrStrippedState<C>where
<C as RedactContent>::Redacted: Sized + Unpin,
<C as StaticStateEventContent>::PossiblyRedacted: Unpin,
<<C as StaticStateEventContent>::PossiblyRedacted as PossiblyRedactedStateEventContent>::StateKey: Unpin,
C: Unpin,
<C as StateEventContent>::StateKey: Unpin,
<C as StaticStateEventContent>::Unsigned: Unpin,
<<C as RedactContent>::Redacted as RedactedStateEventContent>::StateKey: Unpin,
impl<C> UnwindSafe for SyncOrStrippedState<C>where
<C as RedactContent>::Redacted: Sized + UnwindSafe,
<C as StaticStateEventContent>::PossiblyRedacted: UnwindSafe,
<<C as StaticStateEventContent>::PossiblyRedacted as PossiblyRedactedStateEventContent>::StateKey: UnwindSafe,
C: UnwindSafe,
<C as StateEventContent>::StateKey: UnwindSafe,
<C as StaticStateEventContent>::Unsigned: UnwindSafe,
<<C as RedactContent>::Redacted as RedactedStateEventContent>::StateKey: UnwindSafe,
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