#[non_exhaustive]pub struct RoomCreateEventContent {
pub creator: Option<OwnedUserId>,
pub federate: bool,
pub room_version: RoomVersionId,
pub predecessor: Option<PreviousRoom>,
pub room_type: Option<RoomType>,
pub additional_creators: Vec<OwnedUserId>,
}Expand description
The content of an m.room.create event.
This is the first event in a room and cannot be changed.
It acts as the root of all other events.
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.creator: Option<OwnedUserId>The user_id of the room creator.
This is set by the homeserver.
This is required in room versions 1 trough 10, but is removed starting from room version 11.
federate: boolWhether or not this room’s data should be transferred to other homeservers.
room_version: RoomVersionIdThe version of the room.
Defaults to RoomVersionId::V1.
predecessor: Option<PreviousRoom>A reference to the room this room replaces, if the previous room was upgraded.
With the compat-lax-room-create-deser cargo feature, this field is ignored if its
deserialization fails.
room_type: Option<RoomType>The room type.
This is currently only used for spaces.
additional_creators: Vec<OwnedUserId>Additional room creators, considered to have “infinite” power level, in room version 12 onwards.
Implementations§
Source§impl RoomCreateEventContent
impl RoomCreateEventContent
Sourcepub fn new_v1(creator: OwnedUserId) -> Self
pub fn new_v1(creator: OwnedUserId) -> Self
Creates a new RoomCreateEventContent with the given creator, as required for room versions
1 through 10.
Sourcepub fn new_v11() -> Self
pub fn new_v11() -> Self
Creates a new RoomCreateEventContent with the default values and no creator, as introduced
in room version 11.
The room version is set to RoomVersionId::V11.
Trait Implementations§
Source§impl Clone for RoomCreateEventContent
impl Clone for RoomCreateEventContent
Source§fn clone(&self) -> RoomCreateEventContent
fn clone(&self) -> RoomCreateEventContent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RoomCreateEventContent
impl Debug for RoomCreateEventContent
Source§impl<'de> Deserialize<'de> for RoomCreateEventContent
impl<'de> Deserialize<'de> for RoomCreateEventContent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl From<RoomCreateEventContent> for AnyPossiblyRedactedStateEventContent
impl From<RoomCreateEventContent> for AnyPossiblyRedactedStateEventContent
Source§fn from(c: PossiblyRedactedRoomCreateEventContent) -> Self
fn from(c: PossiblyRedactedRoomCreateEventContent) -> Self
Source§impl From<RoomCreateEventContent> for AnyStateEventContent
impl From<RoomCreateEventContent> for AnyStateEventContent
Source§fn from(c: RoomCreateEventContent) -> Self
fn from(c: RoomCreateEventContent) -> Self
Source§impl PossiblyRedactedStateEventContent for RoomCreateEventContent
impl PossiblyRedactedStateEventContent for RoomCreateEventContent
Source§type StateKey = EmptyStateKey
type StateKey = EmptyStateKey
state_key field.Source§fn event_type(&self) -> StateEventType
fn event_type(&self) -> StateEventType
m.room.name.Source§impl RedactContent for RoomCreateEventContent
impl RedactContent for RoomCreateEventContent
Source§type Redacted = RoomCreateEventContent
type Redacted = RoomCreateEventContent
Source§impl Serialize for RoomCreateEventContent
impl Serialize for RoomCreateEventContent
Source§impl StateEventContent for RoomCreateEventContent
impl StateEventContent for RoomCreateEventContent
Source§type StateKey = EmptyStateKey
type StateKey = EmptyStateKey
state_key field.Source§fn event_type(&self) -> StateEventType
fn event_type(&self) -> StateEventType
m.room.name.Source§impl StaticStateEventContent for RoomCreateEventContent
impl StaticStateEventContent for RoomCreateEventContent
Source§type PossiblyRedacted = RoomCreateEventContent
type PossiblyRedacted = RoomCreateEventContent
Source§type Unsigned = StateUnsigned<<RoomCreateEventContent as StaticStateEventContent>::PossiblyRedacted>
type Unsigned = StateUnsigned<<RoomCreateEventContent as StaticStateEventContent>::PossiblyRedacted>
unsigned field.impl JsonCastable<AnyStateEventContent> for RoomCreateEventContent
impl JsonCastable<Map<String, Value>> for RoomCreateEventContent
Auto Trait Implementations§
impl Freeze for RoomCreateEventContent
impl RefUnwindSafe for RoomCreateEventContent
impl Send for RoomCreateEventContent
impl Sync for RoomCreateEventContent
impl Unpin for RoomCreateEventContent
impl UnwindSafe for RoomCreateEventContent
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: StaticEventContent + DeserializeOwned,
impl<T> EventContentFromType for Twhere
T: StaticEventContent + DeserializeOwned,
§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 more