#[non_exhaustive]pub struct RoomPowerLevelsEventContent {
pub ban: Int,
pub events: BTreeMap<TimelineEventType, Int>,
pub events_default: Int,
pub invite: Int,
pub kick: Int,
pub redact: Int,
pub state_default: Int,
pub users: BTreeMap<OwnedUserId, Int>,
pub users_default: Int,
pub notifications: NotificationPowerLevels,
}
Expand description
The content of an m.room.power_levels
event.
Defines the power levels (privileges) of users in the room.
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.ban: Int
The level required to ban a user.
events: BTreeMap<TimelineEventType, Int>
The level required to send specific event types.
This is a mapping from event type to power level required.
events_default: Int
The default level required to send message events.
invite: Int
The level required to invite a user.
kick: Int
The level required to kick a user.
redact: Int
The level required to redact an event.
state_default: Int
The default level required to send state events.
users: BTreeMap<OwnedUserId, Int>
The power levels for specific users.
This is a mapping from user_id
to power level for that user.
users_default: Int
The default power level for every user in the room.
notifications: NotificationPowerLevels
The power level requirements for specific notification types.
This is a mapping from key
to power level for that notifications key.
Implementations§
Source§impl RoomPowerLevelsEventContent
impl RoomPowerLevelsEventContent
Sourcepub fn new() -> RoomPowerLevelsEventContent
pub fn new() -> RoomPowerLevelsEventContent
Creates a new RoomPowerLevelsEventContent
with all-default values.
Trait Implementations§
Source§impl Clone for RoomPowerLevelsEventContent
impl Clone for RoomPowerLevelsEventContent
Source§fn clone(&self) -> RoomPowerLevelsEventContent
fn clone(&self) -> RoomPowerLevelsEventContent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for RoomPowerLevelsEventContent
impl Debug for RoomPowerLevelsEventContent
Source§impl Default for RoomPowerLevelsEventContent
impl Default for RoomPowerLevelsEventContent
Source§fn default() -> RoomPowerLevelsEventContent
fn default() -> RoomPowerLevelsEventContent
Source§impl<'de> Deserialize<'de> for RoomPowerLevelsEventContent
impl<'de> Deserialize<'de> for RoomPowerLevelsEventContent
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<RoomPowerLevelsEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<RoomPowerLevelsEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl EventContent for RoomPowerLevelsEventContent
impl EventContent for RoomPowerLevelsEventContent
Source§type EventType = StateEventType
type EventType = StateEventType
Source§fn event_type(&self) -> <RoomPowerLevelsEventContent as EventContent>::EventType
fn event_type(&self) -> <RoomPowerLevelsEventContent as EventContent>::EventType
m.room.message
.Source§impl From<RoomPowerLevels> for RoomPowerLevelsEventContent
impl From<RoomPowerLevels> for RoomPowerLevelsEventContent
Source§fn from(c: RoomPowerLevels) -> RoomPowerLevelsEventContent
fn from(c: RoomPowerLevels) -> RoomPowerLevelsEventContent
Source§impl From<RoomPowerLevelsEventContent> for AnyStateEventContent
impl From<RoomPowerLevelsEventContent> for AnyStateEventContent
Source§fn from(c: RoomPowerLevelsEventContent) -> AnyStateEventContent
fn from(c: RoomPowerLevelsEventContent) -> AnyStateEventContent
Source§impl From<RoomPowerLevelsEventContent> for RoomPowerLevels
impl From<RoomPowerLevelsEventContent> for RoomPowerLevels
Source§fn from(c: RoomPowerLevelsEventContent) -> RoomPowerLevels
fn from(c: RoomPowerLevelsEventContent) -> RoomPowerLevels
Source§impl PossiblyRedactedStateEventContent for RoomPowerLevelsEventContent
impl PossiblyRedactedStateEventContent for RoomPowerLevelsEventContent
Source§type StateKey = EmptyStateKey
type StateKey = EmptyStateKey
state_key
field.Source§impl RedactContent for RoomPowerLevelsEventContent
impl RedactContent for RoomPowerLevelsEventContent
Source§type Redacted = RedactedRoomPowerLevelsEventContent
type Redacted = RedactedRoomPowerLevelsEventContent
Source§fn redact(
self,
version: &RoomVersionId,
) -> <RoomPowerLevelsEventContent as RedactContent>::Redacted
fn redact( self, version: &RoomVersionId, ) -> <RoomPowerLevelsEventContent as RedactContent>::Redacted
self
into a redacted form (removing most or all fields) according to the spec. Read moreSource§impl Serialize for RoomPowerLevelsEventContent
impl Serialize for RoomPowerLevelsEventContent
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,
Source§impl StateEventContent for RoomPowerLevelsEventContent
impl StateEventContent for RoomPowerLevelsEventContent
Source§type StateKey = EmptyStateKey
type StateKey = EmptyStateKey
state_key
field.Source§impl StaticStateEventContent for RoomPowerLevelsEventContent
impl StaticStateEventContent for RoomPowerLevelsEventContent
Source§type PossiblyRedacted = RoomPowerLevelsEventContent
type PossiblyRedacted = RoomPowerLevelsEventContent
Source§type Unsigned = StateUnsigned<<RoomPowerLevelsEventContent as StaticStateEventContent>::PossiblyRedacted>
type Unsigned = StateUnsigned<<RoomPowerLevelsEventContent as StaticStateEventContent>::PossiblyRedacted>
unsigned
field.Auto Trait Implementations§
impl Freeze for RoomPowerLevelsEventContent
impl RefUnwindSafe for RoomPowerLevelsEventContent
impl Send for RoomPowerLevelsEventContent
impl Sync for RoomPowerLevelsEventContent
impl Unpin for RoomPowerLevelsEventContent
impl UnwindSafe for RoomPowerLevelsEventContent
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> EventContentFromType for Twhere
T: EventContent + DeserializeOwned,
impl<T> EventContentFromType for Twhere
T: EventContent + DeserializeOwned,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§fn consume_handle(handle: Handle) -> Arc<T>
fn consume_handle(handle: Handle) -> Arc<T>
Arc<>
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