#[non_exhaustive]
pub enum ErrorKind {
Show 39 variants Forbidden, UnknownToken { soft_logout: bool, }, MissingToken, BadJson, NotJson, NotFound, LimitExceeded { retry_after_ms: Option<Duration>, }, Unknown, Unrecognized, Unauthorized, UserDeactivated, UserInUse, InvalidUsername, RoomInUse, InvalidRoomState, ThreepidInUse, ThreepidNotFound, ThreepidAuthFailed, ThreepidDenied, ServerNotTrusted, UnsupportedRoomVersion, IncompatibleRoomVersion { room_version: RoomVersionId, }, BadState, GuestAccessForbidden, CaptchaNeeded, CaptchaInvalid, MissingParam, InvalidParam, TooLarge, Exclusive, ResourceLimitExceeded { admin_contact: String, }, CannotLeaveServerNoticeRoom, WeakPassword, UnableToAuthorizeJoin, UnableToGrantJoin, BadAlias, NotYetUploaded, CannotOverwriteMedia, UnknownPos, // some variants omitted
}
Available on crate features client or server only.
Expand description

An enum for the error kind.

Items may contain additional information.

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.
§

Forbidden

M_FORBIDDEN

§

UnknownToken

Fields

§soft_logout: bool

If this is true, the client can acquire a new access token by specifying the device ID it is already using to the login API.

For more information, see the spec.

M_UNKNOWN_TOKEN

§

MissingToken

M_MISSING_TOKEN

§

BadJson

M_BAD_JSON

§

NotJson

M_NOT_JSON

§

NotFound

M_NOT_FOUND

§

LimitExceeded

Fields

§retry_after_ms: Option<Duration>

How long a client should wait in milliseconds before they can try again.

M_LIMIT_EXCEEDED

§

Unknown

M_UNKNOWN

§

Unrecognized

M_UNRECOGNIZED

§

Unauthorized

M_UNAUTHORIZED

§

UserDeactivated

M_USER_DEACTIVATED

§

UserInUse

M_USER_IN_USE

§

InvalidUsername

M_INVALID_USERNAME

§

RoomInUse

M_ROOM_IN_USE

§

InvalidRoomState

M_INVALID_ROOM_STATE

§

ThreepidInUse

M_THREEPID_IN_USE

§

ThreepidNotFound

M_THREEPID_NOT_FOUND

§

ThreepidAuthFailed

M_THREEPID_AUTH_FAILED

§

ThreepidDenied

M_THREEPID_DENIED

§

ServerNotTrusted

M_SERVER_NOT_TRUSTED

§

UnsupportedRoomVersion

M_UNSUPPORTED_ROOM_VERSION

§

IncompatibleRoomVersion

Fields

§room_version: RoomVersionId

The room’s version.

M_INCOMPATIBLE_ROOM_VERSION

§

BadState

M_BAD_STATE

§

GuestAccessForbidden

M_GUEST_ACCESS_FORBIDDEN

§

CaptchaNeeded

M_CAPTCHA_NEEDED

§

CaptchaInvalid

M_CAPTCHA_INVALID

§

MissingParam

M_MISSING_PARAM

§

InvalidParam

M_INVALID_PARAM

§

TooLarge

M_TOO_LARGE

§

Exclusive

M_EXCLUSIVE

§

ResourceLimitExceeded

Fields

§admin_contact: String

A URI giving a contact method for the server administrator.

M_RESOURCE_LIMIT_EXCEEDED

§

CannotLeaveServerNoticeRoom

M_CANNOT_LEAVE_SERVER_NOTICE_ROOM

§

WeakPassword

M_WEAK_PASSWORD

§

UnableToAuthorizeJoin

M_UNABLE_TO_AUTHORISE_JOIN

§

UnableToGrantJoin

M_UNABLE_TO_GRANT_JOIN

§

BadAlias

M_BAD_ALIAS

§

NotYetUploaded

Available on crate feature unstable-msc2246 only.

FI.MAU.MSC2246_NOT_YET_UPLOADED

§

CannotOverwriteMedia

Available on crate feature unstable-msc2246 only.

FI.MAU.MSC2246_CANNOT_OVERWRITE_MEDIA

§

UnknownPos

Available on crate feature unstable-msc3575 only.

M_UNKNOWN_POS for sliding sync

Trait Implementations§

source§

impl AsRef<str> for ErrorKind

source§

fn as_ref(&self) -> &str

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl Clone for ErrorKind

source§

fn clone(&self) -> ErrorKind

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 ErrorKind

source§

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

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

impl<'de> Deserialize<'de> for ErrorKind

source§

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for ErrorKind

source§

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

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

impl PartialEq<ErrorKind> for ErrorKind

source§

fn eq(&self, other: &ErrorKind) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for ErrorKind

source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>where S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Eq for ErrorKind

source§

impl StructuralEq for ErrorKind

source§

impl StructuralPartialEq for ErrorKind

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

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 Twhere U: From<T>,

const: unstable · 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> ToOwned for Twhere T: Clone,

§

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> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

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

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
§

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

§

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> DeserializeOwned for Twhere T: for<'de> Deserialize<'de>,