#[non_exhaustive]pub struct ToDeviceRoomKeyEventContent {
pub algorithm: EventEncryptionAlgorithm,
pub room_id: OwnedRoomId,
pub session_id: String,
pub session_key: String,
}
Expand description
The content of an m.room_key
event.
Typically encrypted as an m.room.encrypted
event, then sent as a to-device event.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.algorithm: EventEncryptionAlgorithm
The encryption algorithm the key in this event is to be used with.
Must be m.megolm.v1.aes-sha2
.
room_id: OwnedRoomId
The room where the key is used.
session_id: String
The ID of the session that the key is for.
session_key: String
The key to be exchanged.
Implementations§
Source§impl ToDeviceRoomKeyEventContent
impl ToDeviceRoomKeyEventContent
Sourcepub fn new(
algorithm: EventEncryptionAlgorithm,
room_id: OwnedRoomId,
session_id: String,
session_key: String,
) -> ToDeviceRoomKeyEventContent
pub fn new( algorithm: EventEncryptionAlgorithm, room_id: OwnedRoomId, session_id: String, session_key: String, ) -> ToDeviceRoomKeyEventContent
Creates a new ToDeviceRoomKeyEventContent
with the given algorithm, room ID, session ID
and session key.
Trait Implementations§
Source§impl Clone for ToDeviceRoomKeyEventContent
impl Clone for ToDeviceRoomKeyEventContent
Source§fn clone(&self) -> ToDeviceRoomKeyEventContent
fn clone(&self) -> ToDeviceRoomKeyEventContent
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 ToDeviceRoomKeyEventContent
impl Debug for ToDeviceRoomKeyEventContent
Source§impl<'de> Deserialize<'de> for ToDeviceRoomKeyEventContent
impl<'de> Deserialize<'de> for ToDeviceRoomKeyEventContent
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ToDeviceRoomKeyEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ToDeviceRoomKeyEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl EventContent for ToDeviceRoomKeyEventContent
impl EventContent for ToDeviceRoomKeyEventContent
Source§type EventType = ToDeviceEventType
type EventType = ToDeviceEventType
The Rust enum for the event kind’s known types.
Source§fn event_type(&self) -> <ToDeviceRoomKeyEventContent as EventContent>::EventType
fn event_type(&self) -> <ToDeviceRoomKeyEventContent as EventContent>::EventType
Get the event’s type, like
m.room.message
.Source§impl From<ToDeviceRoomKeyEventContent> for AnyToDeviceEventContent
impl From<ToDeviceRoomKeyEventContent> for AnyToDeviceEventContent
Source§fn from(c: ToDeviceRoomKeyEventContent) -> AnyToDeviceEventContent
fn from(c: ToDeviceRoomKeyEventContent) -> AnyToDeviceEventContent
Converts to this type from the input type.
Source§impl Serialize for ToDeviceRoomKeyEventContent
impl Serialize for ToDeviceRoomKeyEventContent
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
impl ToDeviceEventContent for ToDeviceRoomKeyEventContent
Auto Trait Implementations§
impl Freeze for ToDeviceRoomKeyEventContent
impl RefUnwindSafe for ToDeviceRoomKeyEventContent
impl Send for ToDeviceRoomKeyEventContent
impl Sync for ToDeviceRoomKeyEventContent
impl Unpin for ToDeviceRoomKeyEventContent
impl UnwindSafe for ToDeviceRoomKeyEventContent
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§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