#[non_exhaustive]pub struct InitialStateEvent<C>where
C: StaticStateEventContent,{
pub content: C,
pub state_key: <C as StateEventContent>::StateKey,
}events only.Expand description
A minimal state event, used for creating a new 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.content: CData specific to the event type.
state_key: <C as StateEventContent>::StateKeyA unique key which defines the overwriting semantics for this piece of room state.
This must be a string type, and is often an empty string.
A state event is keyed by its (type, state_key) tuple. Sending another state event with
the same tuple replaces the previous one.
Defaults to the empty string.
Implementations§
Source§impl<C> InitialStateEvent<C>where
C: StaticStateEventContent,
impl<C> InitialStateEvent<C>where
C: StaticStateEventContent,
Sourcepub fn new(
state_key: <C as StateEventContent>::StateKey,
content: C,
) -> InitialStateEvent<C>
Available on crate feature unstable-msc3489 only.
pub fn new( state_key: <C as StateEventContent>::StateKey, content: C, ) -> InitialStateEvent<C>
unstable-msc3489 only.Create a new InitialStateEvent for an event type with the given state key.
For cases where the state key is empty,
with_empty_state_key() can be used instead.
Sourcepub fn with_empty_state_key(content: C) -> InitialStateEvent<C>where
C: StaticStateEventContent<StateKey = EmptyStateKey>,
Available on crate feature unstable-msc3489 only.
pub fn with_empty_state_key(content: C) -> InitialStateEvent<C>where
C: StaticStateEventContent<StateKey = EmptyStateKey>,
unstable-msc3489 only.Create a new InitialStateEvent for an event type with an empty state key.
For cases where the state key is not empty, use new().
Sourcepub fn to_raw(&self) -> Raw<InitialStateEvent<C>>
Available on crate feature unstable-msc3489 only.
pub fn to_raw(&self) -> Raw<InitialStateEvent<C>>
unstable-msc3489 only.Shorthand for Raw::new(self).unwrap().
Since none of the content types in Ruma ever return an error in serialization, this will
never panic with C being a type from Ruma. However, if you use a custom content type
with a Serialize implementation that can error (for example because it contains an
enum with one or more variants that use the #[serde(skip)] attribute), this method
can panic.
Sourcepub fn to_raw_any(&self) -> Raw<AnyInitialStateEvent>
Available on crate feature unstable-msc3489 only.
pub fn to_raw_any(&self) -> Raw<AnyInitialStateEvent>
unstable-msc3489 only.Shorthand for self.to_raw().cast::<AnyInitialStateEvent>().
Since none of the content types in Ruma ever return an error in serialization, this will
never panic with C being a type from Ruma. However, if you use a custom content type
with a Serialize implementation that can error (for example because it contains an
enum with one or more variants that use the #[serde(skip)] attribute), this method
can panic.
Trait Implementations§
Source§impl<C> Clone for InitialStateEvent<C>
impl<C> Clone for InitialStateEvent<C>
Source§fn clone(&self) -> InitialStateEvent<C>
fn clone(&self) -> InitialStateEvent<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 InitialStateEvent<C>
impl<C> Debug for InitialStateEvent<C>
Source§impl<C> Default for InitialStateEvent<C>
impl<C> Default for InitialStateEvent<C>
Source§fn default() -> InitialStateEvent<C>
fn default() -> InitialStateEvent<C>
Source§impl<'de, C> Deserialize<'de> for InitialStateEvent<C>where
C: StaticStateEventContent + EventContentFromType,
impl<'de, C> Deserialize<'de> for InitialStateEvent<C>where
C: StaticStateEventContent + EventContentFromType,
Source§fn deserialize<D>(
deserializer: D,
) -> Result<InitialStateEvent<C>, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<InitialStateEvent<C>, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Source§impl From<InitialStateEvent<BeaconInfoEventContent>> for AnyInitialStateEvent
Available on crate feature unstable-msc3489 only.
impl From<InitialStateEvent<BeaconInfoEventContent>> for AnyInitialStateEvent
unstable-msc3489 only.Source§fn from(c: InitialStateEvent<BeaconInfoEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<BeaconInfoEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<CallMemberEventContent>> for AnyInitialStateEvent
Available on crate feature unstable-msc3401 only.
impl From<InitialStateEvent<CallMemberEventContent>> for AnyInitialStateEvent
unstable-msc3401 only.Source§fn from(c: InitialStateEvent<CallMemberEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<CallMemberEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<MemberHintsEventContent>> for AnyInitialStateEvent
Available on crate feature unstable-msc4171 only.
impl From<InitialStateEvent<MemberHintsEventContent>> for AnyInitialStateEvent
unstable-msc4171 only.Source§fn from(c: InitialStateEvent<MemberHintsEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<MemberHintsEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<PolicyRuleRoomEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<PolicyRuleRoomEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<PolicyRuleRoomEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<PolicyRuleRoomEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<PolicyRuleServerEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<PolicyRuleServerEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<PolicyRuleServerEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<PolicyRuleServerEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<PolicyRuleUserEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<PolicyRuleUserEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<PolicyRuleUserEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<PolicyRuleUserEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomAliasesEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomAliasesEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomAliasesEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomAliasesEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomAvatarEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomAvatarEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomAvatarEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomAvatarEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomCanonicalAliasEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomCanonicalAliasEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<RoomCanonicalAliasEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<RoomCanonicalAliasEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomCreateEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomCreateEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomCreateEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomCreateEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomEncryptionEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomEncryptionEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<RoomEncryptionEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<RoomEncryptionEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomGuestAccessEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomGuestAccessEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<RoomGuestAccessEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<RoomGuestAccessEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomHistoryVisibilityEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomHistoryVisibilityEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<RoomHistoryVisibilityEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<RoomHistoryVisibilityEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomImagePackEventContent>> for AnyInitialStateEvent
Available on crate feature unstable-msc2545 only.
impl From<InitialStateEvent<RoomImagePackEventContent>> for AnyInitialStateEvent
unstable-msc2545 only.Source§fn from(c: InitialStateEvent<RoomImagePackEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomImagePackEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomJoinRulesEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomJoinRulesEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomJoinRulesEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomJoinRulesEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomLanguageEventContent>> for AnyInitialStateEvent
Available on crate feature unstable-msc4334 only.
impl From<InitialStateEvent<RoomLanguageEventContent>> for AnyInitialStateEvent
unstable-msc4334 only.Source§fn from(c: InitialStateEvent<RoomLanguageEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomLanguageEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomMemberEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomMemberEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomMemberEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomMemberEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomNameEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomNameEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomNameEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomNameEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomPinnedEventsEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomPinnedEventsEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<RoomPinnedEventsEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<RoomPinnedEventsEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomPowerLevelsEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomPowerLevelsEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<RoomPowerLevelsEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<RoomPowerLevelsEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomServerAclEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomServerAclEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomServerAclEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomServerAclEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomThirdPartyInviteEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomThirdPartyInviteEventContent>> for AnyInitialStateEvent
Source§fn from(
c: InitialStateEvent<RoomThirdPartyInviteEventContent>,
) -> AnyInitialStateEvent
fn from( c: InitialStateEvent<RoomThirdPartyInviteEventContent>, ) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomTombstoneEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomTombstoneEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomTombstoneEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomTombstoneEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<RoomTopicEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<RoomTopicEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<RoomTopicEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<RoomTopicEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<SpaceChildEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<SpaceChildEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<SpaceChildEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<SpaceChildEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<SpaceParentEventContent>> for AnyInitialStateEvent
impl From<InitialStateEvent<SpaceParentEventContent>> for AnyInitialStateEvent
Source§fn from(c: InitialStateEvent<SpaceParentEventContent>) -> AnyInitialStateEvent
fn from(c: InitialStateEvent<SpaceParentEventContent>) -> AnyInitialStateEvent
Source§impl From<InitialStateEvent<StateRoomEncryptedEventContent>> for AnyInitialStateEvent
Available on crate feature unstable-msc4362 only.
impl From<InitialStateEvent<StateRoomEncryptedEventContent>> for AnyInitialStateEvent
unstable-msc4362 only.