Struct ToDeviceRoomKeyWithheldEventContent
#[non_exhaustive]pub struct ToDeviceRoomKeyWithheldEventContent {
pub algorithm: EventEncryptionAlgorithm,
pub code: RoomKeyWithheldCodeInfo,
pub reason: Option<String>,
pub sender_key: Base64,
}
Expand description
The content of an m.room_key.withheld
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
.
code: RoomKeyWithheldCodeInfo
A machine-readable code for why the megolm key was not sent.
reason: Option<String>
A human-readable reason for why the key was not sent.
The receiving client should only use this string if it does not understand the code.
sender_key: Base64
The unpadded base64-encoded device curve25519 key of the event’s sender.
Implementations§
§impl ToDeviceRoomKeyWithheldEventContent
impl ToDeviceRoomKeyWithheldEventContent
pub fn new(
algorithm: EventEncryptionAlgorithm,
code: RoomKeyWithheldCodeInfo,
sender_key: Base64,
) -> ToDeviceRoomKeyWithheldEventContent
pub fn new( algorithm: EventEncryptionAlgorithm, code: RoomKeyWithheldCodeInfo, sender_key: Base64, ) -> ToDeviceRoomKeyWithheldEventContent
Creates a new ToDeviceRoomKeyWithheldEventContent
with the given algorithm, code and
sender key.
Trait Implementations§
§impl Clone for ToDeviceRoomKeyWithheldEventContent
impl Clone for ToDeviceRoomKeyWithheldEventContent
§fn clone(&self) -> ToDeviceRoomKeyWithheldEventContent
fn clone(&self) -> ToDeviceRoomKeyWithheldEventContent
Returns a duplicate 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 more§impl<'de> Deserialize<'de> for ToDeviceRoomKeyWithheldEventContent
impl<'de> Deserialize<'de> for ToDeviceRoomKeyWithheldEventContent
§fn deserialize<D>(
deserializer: D,
) -> Result<ToDeviceRoomKeyWithheldEventContent, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<ToDeviceRoomKeyWithheldEventContent, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl From<ToDeviceRoomKeyWithheldEventContent> for AnyToDeviceEventContent
impl From<ToDeviceRoomKeyWithheldEventContent> for AnyToDeviceEventContent
§fn from(c: ToDeviceRoomKeyWithheldEventContent) -> AnyToDeviceEventContent
fn from(c: ToDeviceRoomKeyWithheldEventContent) -> AnyToDeviceEventContent
Converts to this type from the input type.
§impl Serialize for ToDeviceRoomKeyWithheldEventContent
impl Serialize for ToDeviceRoomKeyWithheldEventContent
§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 ToDeviceRoomKeyWithheldEventContent
impl ToDeviceEventContent for ToDeviceRoomKeyWithheldEventContent
§fn event_type(&self) -> ToDeviceEventType
fn event_type(&self) -> ToDeviceEventType
Get the event’s type, like
m.room_key
.impl JsonCastable<AnyToDeviceEventContent> for ToDeviceRoomKeyWithheldEventContent
impl JsonCastable<Map<String, Value>> for ToDeviceRoomKeyWithheldEventContent
Auto Trait Implementations§
impl Freeze for ToDeviceRoomKeyWithheldEventContent
impl RefUnwindSafe for ToDeviceRoomKeyWithheldEventContent
impl Send for ToDeviceRoomKeyWithheldEventContent
impl Sync for ToDeviceRoomKeyWithheldEventContent
impl Unpin for ToDeviceRoomKeyWithheldEventContent
impl UnwindSafe for ToDeviceRoomKeyWithheldEventContent
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,
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T> EventContentFromType for Twhere
T: StaticEventContent + DeserializeOwned,
impl<T> EventContentFromType for Twhere
T: StaticEventContent + DeserializeOwned,
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§fn consume_handle(handle: Handle) -> Arc<T>
fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<>
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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