#[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: IntThe 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: IntThe default level required to send message events.
invite: IntThe level required to invite a user.
kick: IntThe level required to kick a user.
redact: IntThe level required to redact an event.
state_default: IntThe 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: IntThe default power level for every user in the room.
notifications: NotificationPowerLevelsThe 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,
Source§impl<T> EventContentFromType for Twhere
T: EventContent + DeserializeOwned,
impl<T> EventContentFromType for Twhere
T: EventContent + DeserializeOwned,
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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