Struct RoomMessageEventContentWithoutRelation
#[non_exhaustive]pub struct RoomMessageEventContentWithoutRelation {
pub msgtype: MessageType,
pub mentions: Option<Mentions>,
}Expand description
Form of RoomMessageEventContent without relation.
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.msgtype: MessageTypeA key which identifies the type of message being sent.
This also holds the specific content of each message.
mentions: Option<Mentions>The mentions of this event.
Implementations§
§impl RoomMessageEventContentWithoutRelation
impl RoomMessageEventContentWithoutRelation
pub fn new(msgtype: MessageType) -> RoomMessageEventContentWithoutRelation
pub fn new(msgtype: MessageType) -> RoomMessageEventContentWithoutRelation
Creates a new RoomMessageEventContentWithoutRelation with the given MessageType.
pub fn text_plain(
body: impl Into<String>,
) -> RoomMessageEventContentWithoutRelation
pub fn text_plain( body: impl Into<String>, ) -> RoomMessageEventContentWithoutRelation
A constructor to create a plain text message.
pub fn text_html(
body: impl Into<String>,
html_body: impl Into<String>,
) -> RoomMessageEventContentWithoutRelation
pub fn text_html( body: impl Into<String>, html_body: impl Into<String>, ) -> RoomMessageEventContentWithoutRelation
A constructor to create an html message.
pub fn text_markdown(
body: impl AsRef<str> + Into<String>,
) -> RoomMessageEventContentWithoutRelation
Available on crate feature markdown only.
pub fn text_markdown( body: impl AsRef<str> + Into<String>, ) -> RoomMessageEventContentWithoutRelation
markdown only.A constructor to create a markdown message.
pub fn notice_plain(
body: impl Into<String>,
) -> RoomMessageEventContentWithoutRelation
pub fn notice_plain( body: impl Into<String>, ) -> RoomMessageEventContentWithoutRelation
A constructor to create a plain text notice.
pub fn notice_html(
body: impl Into<String>,
html_body: impl Into<String>,
) -> RoomMessageEventContentWithoutRelation
pub fn notice_html( body: impl Into<String>, html_body: impl Into<String>, ) -> RoomMessageEventContentWithoutRelation
A constructor to create an html notice.
pub fn notice_markdown(
body: impl AsRef<str> + Into<String>,
) -> RoomMessageEventContentWithoutRelation
Available on crate feature markdown only.
pub fn notice_markdown( body: impl AsRef<str> + Into<String>, ) -> RoomMessageEventContentWithoutRelation
markdown only.A constructor to create a markdown notice.
pub fn emote_plain(
body: impl Into<String>,
) -> RoomMessageEventContentWithoutRelation
pub fn emote_plain( body: impl Into<String>, ) -> RoomMessageEventContentWithoutRelation
A constructor to create a plain text emote.
pub fn emote_html(
body: impl Into<String>,
html_body: impl Into<String>,
) -> RoomMessageEventContentWithoutRelation
pub fn emote_html( body: impl Into<String>, html_body: impl Into<String>, ) -> RoomMessageEventContentWithoutRelation
A constructor to create an html emote.
pub fn emote_markdown(
body: impl AsRef<str> + Into<String>,
) -> RoomMessageEventContentWithoutRelation
Available on crate feature markdown only.
pub fn emote_markdown( body: impl AsRef<str> + Into<String>, ) -> RoomMessageEventContentWithoutRelation
markdown only.A constructor to create a markdown emote.
pub fn with_relation(
self,
relates_to: Option<Relation<RoomMessageEventContentWithoutRelation>>,
) -> RoomMessageEventContent
pub fn with_relation( self, relates_to: Option<Relation<RoomMessageEventContentWithoutRelation>>, ) -> RoomMessageEventContent
Transform self into a RoomMessageEventContent with the given relation.
pub fn make_reply_to<'a>(
self,
metadata: impl Into<ReplyMetadata<'a>>,
forward_thread: ForwardThread,
add_mentions: AddMentions,
) -> RoomMessageEventContent
pub fn make_reply_to<'a>( self, metadata: impl Into<ReplyMetadata<'a>>, forward_thread: ForwardThread, add_mentions: AddMentions, ) -> RoomMessageEventContent
Turns self into a rich reply to the message using the given metadata.
Sets the in_reply_to field inside relates_to, and optionally the rel_type to
m.thread if the metadata has a thread and ForwardThread::Yes is used.
If AddMentions::Yes is used, the sender in the metadata is added as a user mention.
pub fn make_for_thread<'a>(
self,
metadata: impl Into<ReplyMetadata<'a>>,
is_reply: ReplyWithinThread,
add_mentions: AddMentions,
) -> RoomMessageEventContent
pub fn make_for_thread<'a>( self, metadata: impl Into<ReplyMetadata<'a>>, is_reply: ReplyWithinThread, add_mentions: AddMentions, ) -> RoomMessageEventContent
Turns self into a new message for a thread, that is optionally a reply.
Looks for the thread in the given metadata. If it exists, this message will be in the same
thread. If it doesn’t, a new thread is created with the event_id in the metadata as the
root.
It also sets the in_reply_to field inside relates_to to point the event_id
in the metadata. If ReplyWithinThread::Yes is used, the metadata should be constructed
from the event to make a reply to, otherwise it should be constructed from the latest
event in the thread.
If AddMentions::Yes is used, the sender in the metadata is added as a user mention.
pub fn make_replacement(
self,
metadata: impl Into<ReplacementMetadata>,
) -> RoomMessageEventContent
pub fn make_replacement( self, metadata: impl Into<ReplacementMetadata>, ) -> RoomMessageEventContent
Turns self into a replacement (or edit) for a given message.
The first argument after self can be &OriginalRoomMessageEvent or
&OriginalSyncRoomMessageEvent if you don’t want to create ReplacementMetadata separately
before calling this function.
This takes the content and sets it in m.new_content, and modifies the content to include
a fallback.
If this message contains Mentions, they are copied into m.new_content to keep the same
mentions, but the ones in content are filtered with the ones in the
ReplacementMetadata so only new mentions will trigger a notification.
§Panics
Panics if self has a formatted_body with a format other than HTML.
pub fn add_mentions(
self,
mentions: Mentions,
) -> RoomMessageEventContentWithoutRelation
pub fn add_mentions( self, mentions: Mentions, ) -> RoomMessageEventContentWithoutRelation
Trait Implementations§
§impl Clone for RoomMessageEventContentWithoutRelation
impl Clone for RoomMessageEventContentWithoutRelation
§fn clone(&self) -> RoomMessageEventContentWithoutRelation
fn clone(&self) -> RoomMessageEventContentWithoutRelation
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl<'de> Deserialize<'de> for RoomMessageEventContentWithoutRelation
impl<'de> Deserialize<'de> for RoomMessageEventContentWithoutRelation
§fn deserialize<D>(
deserializer: D,
) -> Result<RoomMessageEventContentWithoutRelation, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<RoomMessageEventContentWithoutRelation, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
§impl From<MessageType> for RoomMessageEventContentWithoutRelation
impl From<MessageType> for RoomMessageEventContentWithoutRelation
§fn from(msgtype: MessageType) -> RoomMessageEventContentWithoutRelation
fn from(msgtype: MessageType) -> RoomMessageEventContentWithoutRelation
§impl From<RoomMessageEventContent> for RoomMessageEventContentWithoutRelation
impl From<RoomMessageEventContent> for RoomMessageEventContentWithoutRelation
§fn from(
value: RoomMessageEventContent,
) -> RoomMessageEventContentWithoutRelation
fn from( value: RoomMessageEventContent, ) -> RoomMessageEventContentWithoutRelation
§impl From<RoomMessageEventContentWithoutRelation> for RoomMessageEventContent
impl From<RoomMessageEventContentWithoutRelation> for RoomMessageEventContent
§fn from(
value: RoomMessageEventContentWithoutRelation,
) -> RoomMessageEventContent
fn from( value: RoomMessageEventContentWithoutRelation, ) -> RoomMessageEventContent
§impl Serialize for RoomMessageEventContentWithoutRelation
impl Serialize for RoomMessageEventContentWithoutRelation
§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,
Auto Trait Implementations§
impl Freeze for RoomMessageEventContentWithoutRelation
impl RefUnwindSafe for RoomMessageEventContentWithoutRelation
impl Send for RoomMessageEventContentWithoutRelation
impl Sync for RoomMessageEventContentWithoutRelation
impl Unpin for RoomMessageEventContentWithoutRelation
impl UnsafeUnpin for RoomMessageEventContentWithoutRelation
impl UnwindSafe for RoomMessageEventContentWithoutRelation
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
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
Source§impl<T> DeserialiseFromJs for Twhere
T: DeserializeOwned,
impl<T> DeserialiseFromJs for Twhere
T: DeserializeOwned,
Source§fn deserialise_from_js(js: JsValue) -> Result<T, Error>
fn deserialise_from_js(js: JsValue) -> Result<T, Error>
serde_wasm_bindgen.Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
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>
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>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> SerialiseToJs for Twhere
T: Serialize,
impl<T> SerialiseToJs for Twhere
T: Serialize,
Source§fn serialise_to_js(&self) -> Result<JsValue, Error>
fn serialise_to_js(&self) -> Result<JsValue, Error>
JsValue, most likely using serde_wasm_bindgen.