ruma::events

Enum AnyMessageLikeEventContent

Source
#[non_exhaustive]
pub enum AnyMessageLikeEventContent {
Show 37 variants Audio(AudioEventContent), CallAnswer(CallAnswerEventContent), CallInvite(CallInviteEventContent), CallHangup(CallHangupEventContent), CallCandidates(CallCandidatesEventContent), CallNegotiate(CallNegotiateEventContent), CallReject(CallRejectEventContent), CallSdpStreamMetadataChanged(CallSdpStreamMetadataChangedEventContent), CallSelectAnswer(CallSelectAnswerEventContent), Emote(EmoteEventContent), Encrypted(EncryptedEventContent), File(FileEventContent), Image(ImageEventContent), KeyVerificationReady(KeyVerificationReadyEventContent), KeyVerificationStart(KeyVerificationStartEventContent), KeyVerificationCancel(KeyVerificationCancelEventContent), KeyVerificationAccept(KeyVerificationAcceptEventContent), KeyVerificationKey(KeyVerificationKeyEventContent), KeyVerificationMac(KeyVerificationMacEventContent), KeyVerificationDone(KeyVerificationDoneEventContent), Location(LocationEventContent), Message(MessageEventContent), PollStart(PollStartEventContent), UnstablePollStart(UnstablePollStartEventContent), PollResponse(PollResponseEventContent), UnstablePollResponse(UnstablePollResponseEventContent), PollEnd(PollEndEventContent), UnstablePollEnd(UnstablePollEndEventContent), Beacon(BeaconEventContent), Reaction(ReactionEventContent), RoomEncrypted(RoomEncryptedEventContent), RoomMessage(RoomMessageEventContent), RoomRedaction(RoomRedactionEventContent), Sticker(StickerEventContent), Video(VideoEventContent), Voice(VoiceEventContent), CallNotify(CallNotifyEventContent),
}
Available on crate feature events only.
Expand description

Any message-like event.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

Audio(AudioEventContent)

Available on crate feature unstable-msc3927 only.

m.audio

This variant uses the unstable type org.matrix.msc1767.audio.

This variant can also be deserialized from the m.audio type.

§

CallAnswer(CallAnswerEventContent)

m.call.answer

§

CallInvite(CallInviteEventContent)

m.call.invite

§

CallHangup(CallHangupEventContent)

m.call.hangup

§

CallCandidates(CallCandidatesEventContent)

m.call.candidates

§

CallNegotiate(CallNegotiateEventContent)

m.call.negotiate

§

CallReject(CallRejectEventContent)

m.call.reject

§

CallSdpStreamMetadataChanged(CallSdpStreamMetadataChangedEventContent)

m.call.sdp_stream_metadata_changed

This variant can also be deserialized from the org.matrix.call.sdp_stream_metadata_changed type.

§

CallSelectAnswer(CallSelectAnswerEventContent)

m.call.select_answer

§

Emote(EmoteEventContent)

Available on crate feature unstable-msc3954 only.

m.emote

This variant uses the unstable type org.matrix.msc1767.emote.

This variant can also be deserialized from the m.emote type.

§

Encrypted(EncryptedEventContent)

Available on crate feature unstable-msc3956 only.

m.encrypted

This variant uses the unstable type org.matrix.msc1767.encrypted.

This variant can also be deserialized from the m.encrypted type.

§

File(FileEventContent)

Available on crate feature unstable-msc3551 only.

m.file

This variant uses the unstable type org.matrix.msc1767.file.

This variant can also be deserialized from the m.file type.

§

Image(ImageEventContent)

Available on crate feature unstable-msc3552 only.

m.image

This variant uses the unstable type org.matrix.msc1767.image.

This variant can also be deserialized from the m.image type.

§

KeyVerificationReady(KeyVerificationReadyEventContent)

m.key.verification.ready

§

KeyVerificationStart(KeyVerificationStartEventContent)

m.key.verification.start

§

KeyVerificationCancel(KeyVerificationCancelEventContent)

m.key.verification.cancel

§

KeyVerificationAccept(KeyVerificationAcceptEventContent)

m.key.verification.accept

§

KeyVerificationKey(KeyVerificationKeyEventContent)

m.key.verification.key

§

KeyVerificationMac(KeyVerificationMacEventContent)

m.key.verification.mac

§

KeyVerificationDone(KeyVerificationDoneEventContent)

m.key.verification.done

§

Location(LocationEventContent)

Available on crate feature unstable-msc3488 only.

m.location

§

Message(MessageEventContent)

Available on crate feature unstable-msc1767 only.

m.message

This variant uses the unstable type org.matrix.msc1767.message.

This variant can also be deserialized from the m.message type.

§

PollStart(PollStartEventContent)

Available on crate feature unstable-msc3381 only.

m.poll.start

§

UnstablePollStart(UnstablePollStartEventContent)

Available on crate feature unstable-msc3381 only.

org.matrix.msc3381.poll.start

§

PollResponse(PollResponseEventContent)

Available on crate feature unstable-msc3381 only.

m.poll.response

§

UnstablePollResponse(UnstablePollResponseEventContent)

Available on crate feature unstable-msc3381 only.

org.matrix.msc3381.poll.response

§

PollEnd(PollEndEventContent)

Available on crate feature unstable-msc3381 only.

m.poll.end

§

UnstablePollEnd(UnstablePollEndEventContent)

Available on crate feature unstable-msc3381 only.

org.matrix.msc3381.poll.end

§

Beacon(BeaconEventContent)

Available on crate feature unstable-msc3489 only.

m.beacon

This variant uses the unstable type org.matrix.msc3672.beacon.

This variant can also be deserialized from the m.beacon type.

§

Reaction(ReactionEventContent)

m.reaction

§

RoomEncrypted(RoomEncryptedEventContent)

m.room.encrypted

§

RoomMessage(RoomMessageEventContent)

m.room.message

§

RoomRedaction(RoomRedactionEventContent)

m.room.redaction

§

Sticker(StickerEventContent)

m.sticker

§

Video(VideoEventContent)

Available on crate feature unstable-msc3553 only.

m.video

This variant uses the unstable type org.matrix.msc1767.video.

This variant can also be deserialized from the m.video type.

§

Voice(VoiceEventContent)

Available on crate feature unstable-msc3245 only.

m.voice

This variant uses the unstable type org.matrix.msc3245.voice.v2.

This variant can also be deserialized from the m.voice type.

§

CallNotify(CallNotifyEventContent)

Available on crate feature unstable-msc4075 only.

m.call.notify

This variant uses the unstable type org.matrix.msc4075.call.notify.

This variant can also be deserialized from the m.call.notify type.

Implementations§

Source§

impl AnyMessageLikeEventContent

Source

pub fn relation(&self) -> Option<Relation>

Get a copy of the event’s m.relates_to field, if any.

This is a helper function intended for encryption. There should not be a reason to access m.relates_to without first destructuring an AnyMessageLikeEventContent otherwise.

Trait Implementations§

Source§

impl Clone for AnyMessageLikeEventContent

Source§

fn clone(&self) -> AnyMessageLikeEventContent

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AnyMessageLikeEventContent

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl EventContent for AnyMessageLikeEventContent

Source§

type EventType = MessageLikeEventType

The Rust enum for the event kind’s known types.
Source§

fn event_type(&self) -> <AnyMessageLikeEventContent as EventContent>::EventType

Get the event’s type, like m.room.message.
Source§

impl EventContentFromType for AnyMessageLikeEventContent

Source§

fn from_parts( event_type: &str, json: &RawValue, ) -> Result<AnyMessageLikeEventContent, Error>

Constructs this event content from the given event type and JSON.
Source§

impl From<AudioEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3927 only.
Source§

fn from(c: AudioEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<BeaconEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3489 only.
Source§

fn from(c: BeaconEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallAnswerEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: CallAnswerEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallCandidatesEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: CallCandidatesEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallHangupEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: CallHangupEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallInviteEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: CallInviteEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallNegotiateEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: CallNegotiateEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallNotifyEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc4075 only.
Source§

fn from(c: CallNotifyEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallRejectEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: CallRejectEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallSdpStreamMetadataChangedEventContent> for AnyMessageLikeEventContent

Source§

fn from( c: CallSdpStreamMetadataChangedEventContent, ) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<CallSelectAnswerEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: CallSelectAnswerEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<EmoteEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3954 only.
Source§

fn from(c: EmoteEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<EncryptedEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3956 only.
Source§

fn from(c: EncryptedEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<FileEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3551 only.
Source§

fn from(c: FileEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<ImageEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3552 only.
Source§

fn from(c: ImageEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<KeyVerificationAcceptEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: KeyVerificationAcceptEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<KeyVerificationCancelEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: KeyVerificationCancelEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<KeyVerificationDoneEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: KeyVerificationDoneEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<KeyVerificationKeyEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: KeyVerificationKeyEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<KeyVerificationMacEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: KeyVerificationMacEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<KeyVerificationReadyEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: KeyVerificationReadyEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<KeyVerificationStartEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: KeyVerificationStartEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<LocationEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3488 only.
Source§

fn from(c: LocationEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<MessageEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc1767 only.
Source§

fn from(c: MessageEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<PollEndEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3381 only.
Source§

fn from(c: PollEndEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<PollResponseEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3381 only.
Source§

fn from(c: PollResponseEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<PollStartEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3381 only.
Source§

fn from(c: PollStartEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<ReactionEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: ReactionEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<RoomEncryptedEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: RoomEncryptedEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<RoomMessageEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: RoomMessageEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<RoomRedactionEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: RoomRedactionEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<StickerEventContent> for AnyMessageLikeEventContent

Source§

fn from(c: StickerEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<UnstablePollEndEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3381 only.
Source§

fn from(c: UnstablePollEndEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<UnstablePollResponseEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3381 only.
Source§

fn from(c: UnstablePollResponseEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<UnstablePollStartEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3381 only.
Source§

fn from(c: UnstablePollStartEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<VideoEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3553 only.
Source§

fn from(c: VideoEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl From<VoiceEventContent> for AnyMessageLikeEventContent

Available on crate feature unstable-msc3245 only.
Source§

fn from(c: VoiceEventContent) -> AnyMessageLikeEventContent

Converts to this type from the input type.
Source§

impl Serialize for AnyMessageLikeEventContent

Source§

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 MessageLikeEventContent for AnyMessageLikeEventContent

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

Source§

const WITNESS: W = W::MAKE

A constant of the type witness
Source§

impl<T> Identity for T
where T: ?Sized,

Source§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
Source§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T