#[non_exhaustive]pub struct Capabilities {
pub change_password: ChangePasswordCapability,
pub room_versions: RoomVersionsCapability,
pub set_displayname: SetDisplayNameCapability,
pub set_avatar_url: SetAvatarUrlCapability,
pub thirdparty_id_changes: ThirdPartyIdChangesCapability,
pub get_login_token: GetLoginTokenCapability,
pub profile_fields: Option<ProfileFieldsCapability>,
/* private fields */
}
client
or server
only.Expand description
Contains information about all the capabilities that the server supports.
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.change_password: ChangePasswordCapability
Capability to indicate if the user can change their password.
room_versions: RoomVersionsCapability
The room versions the server supports.
set_displayname: SetDisplayNameCapability
Capability to indicate if the user can change their display name.
set_avatar_url: SetAvatarUrlCapability
Capability to indicate if the user can change their avatar.
thirdparty_id_changes: ThirdPartyIdChangesCapability
Capability to indicate if the user can change the third-party identifiers associated with their account.
get_login_token: GetLoginTokenCapability
Capability to indicate if the user can generate tokens to log further clients into their account.
profile_fields: Option<ProfileFieldsCapability>
unstable-msc4133
only.Capability to indicate if the user can set extended profile fields.
Implementations§
Source§impl Capabilities
impl Capabilities
Sourcepub fn get(&self, capability: &str) -> Option<Cow<'_, JsonValue>>
pub fn get(&self, capability: &str) -> Option<Cow<'_, JsonValue>>
Returns the value of the given capability.
Prefer to use the public fields of Capabilities
where possible; this method is meant
to be used for unsupported capabilities only.
Sourcepub fn set(&mut self, capability: &str, value: JsonValue) -> Result<()>
pub fn set(&mut self, capability: &str, value: JsonValue) -> Result<()>
Sets a capability to the given value.
Prefer to use the public fields of Capabilities
where possible; this method is meant
to be used for unsupported capabilities only and does not allow setting
arbitrary data for supported ones.
Trait Implementations§
Source§impl Clone for Capabilities
impl Clone for Capabilities
Source§fn clone(&self) -> Capabilities
fn clone(&self) -> Capabilities
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more