Struct ruma::events::room::encryption::RoomEncryptionEventContent
source · pub struct RoomEncryptionEventContent {
pub algorithm: EventEncryptionAlgorithm,
pub rotation_period_ms: Option<UInt>,
pub rotation_period_msgs: Option<UInt>,
}
Available on crate feature
events
only.Expand description
The content of an m.room.encryption
event.
Defines how messages sent in this room should be encrypted.
Fields§
§algorithm: EventEncryptionAlgorithm
The encryption algorithm to be used to encrypt messages sent in this room.
Must be m.megolm.v1.aes-sha2
.
rotation_period_ms: Option<UInt>
How long the session should be used before changing it.
uint!(604800000)
(a week) is the recommended default.
rotation_period_msgs: Option<UInt>
How many messages should be sent before changing the session.
uint!(100)
is the recommended default.
Implementations§
source§impl RoomEncryptionEventContent
impl RoomEncryptionEventContent
sourcepub fn new(algorithm: EventEncryptionAlgorithm) -> RoomEncryptionEventContent
pub fn new(algorithm: EventEncryptionAlgorithm) -> RoomEncryptionEventContent
Creates a new RoomEncryptionEventContent
with the given algorithm.
sourcepub fn with_recommended_defaults() -> RoomEncryptionEventContent
pub fn with_recommended_defaults() -> RoomEncryptionEventContent
Creates a new RoomEncryptionEventContent
with the mandatory algorithm and the recommended
defaults.
Note that changing the values of the fields is not a breaking change and you shouldn’t rely on those specific values.
Trait Implementations§
source§impl Clone for RoomEncryptionEventContent
impl Clone for RoomEncryptionEventContent
source§fn clone(&self) -> RoomEncryptionEventContent
fn clone(&self) -> RoomEncryptionEventContent
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for RoomEncryptionEventContent
impl Debug for RoomEncryptionEventContent
source§impl<'de> Deserialize<'de> for RoomEncryptionEventContent
impl<'de> Deserialize<'de> for RoomEncryptionEventContent
source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<RoomEncryptionEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<RoomEncryptionEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl EventContent for RoomEncryptionEventContent
impl EventContent for RoomEncryptionEventContent
source§type EventType = StateEventType
type EventType = StateEventType
The Rust enum for the event kind’s known types.
source§fn event_type(&self) -> <RoomEncryptionEventContent as EventContent>::EventType
fn event_type(&self) -> <RoomEncryptionEventContent as EventContent>::EventType
Get the event’s type, like
m.room.message
.source§impl From<RoomEncryptionEventContent> for AnyStateEventContent
impl From<RoomEncryptionEventContent> for AnyStateEventContent
source§fn from(c: RoomEncryptionEventContent) -> AnyStateEventContent
fn from(c: RoomEncryptionEventContent) -> AnyStateEventContent
Converts to this type from the input type.
source§impl RedactContent for RoomEncryptionEventContent
impl RedactContent for RoomEncryptionEventContent
source§type Redacted = RedactedRoomEncryptionEventContent
type Redacted = RedactedRoomEncryptionEventContent
The redacted form of the event’s content.
source§fn redact(self, version: &RoomVersionId) -> RedactedRoomEncryptionEventContent
fn redact(self, version: &RoomVersionId) -> RedactedRoomEncryptionEventContent
Transform
self
into a redacted form (removing most or all fields) according to the spec. Read moresource§impl Serialize for RoomEncryptionEventContent
impl Serialize for RoomEncryptionEventContent
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,
Serialize this value into the given Serde serializer. Read more
source§impl StateEventContent for RoomEncryptionEventContent
impl StateEventContent for RoomEncryptionEventContent
source§type StateKey = EmptyStateKey
type StateKey = EmptyStateKey
The type of the event’s
state_key
field.source§impl StaticStateEventContent for RoomEncryptionEventContent
impl StaticStateEventContent for RoomEncryptionEventContent
source§type PossiblyRedacted = PossiblyRedactedRoomEncryptionEventContent
type PossiblyRedacted = PossiblyRedactedRoomEncryptionEventContent
The possibly redacted form of the event’s content.
source§type Unsigned = StateUnsigned<<RoomEncryptionEventContent as StaticStateEventContent>::PossiblyRedacted>
type Unsigned = StateUnsigned<<RoomEncryptionEventContent as StaticStateEventContent>::PossiblyRedacted>
The type of the event’s
unsigned
field.Auto Trait Implementations§
impl Freeze for RoomEncryptionEventContent
impl RefUnwindSafe for RoomEncryptionEventContent
impl Send for RoomEncryptionEventContent
impl Sync for RoomEncryptionEventContent
impl Unpin for RoomEncryptionEventContent
impl UnwindSafe for RoomEncryptionEventContent
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
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)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>
Converts
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>
Converts
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