#[non_exhaustive]pub enum Error {
BadCryptoStoreState,
EncryptionNotEnabled,
StateStore(StoreError),
EventCacheStore(EventCacheStoreError),
EventCacheLock(CrossProcessLockError),
CryptoStore(CryptoStoreError),
OlmError(OlmError),
MegolmError(MegolmError),
InvalidReceiveMembersParameters,
InsufficientData,
DeserializationError(Error),
}Expand description
Internal representation of errors.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
BadCryptoStoreState
e2e-encryption only.Attempting to restore a session after the olm-machine has already been set up fails
EncryptionNotEnabled
e2e-encryption only.The room where a group session should be shared is not encrypted.
StateStore(StoreError)
A generic error returned when the state store fails not due to IO or (de)serialization.
EventCacheStore(EventCacheStoreError)
An error happened while manipulating the event cache store.
EventCacheLock(CrossProcessLockError)
An error happened while attempting to lock the event cache store.
CryptoStore(CryptoStoreError)
e2e-encryption only.An error occurred in the crypto store.
OlmError(OlmError)
e2e-encryption only.An error occurred during a E2EE operation.
MegolmError(MegolmError)
e2e-encryption only.An error occurred during a group E2EE operation.
InvalidReceiveMembersParameters
An error caused by calling the BaseClient::receive_all_members
function with invalid parameters
InsufficientData
This request failed because the local data wasn’t sufficient.
DeserializationError(Error)
There was a serde_json deserialization error.
Trait Implementations§
Source§impl Error for Error
impl Error for Error
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<CrossProcessLockError> for Error
impl From<CrossProcessLockError> for Error
Source§fn from(source: CrossProcessLockError) -> Self
fn from(source: CrossProcessLockError) -> Self
Source§impl From<CryptoStoreError> for Error
impl From<CryptoStoreError> for Error
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Source§impl From<EventCacheStoreError> for Error
impl From<EventCacheStoreError> for Error
Source§fn from(source: EventCacheStoreError) -> Self
fn from(source: EventCacheStoreError) -> Self
Source§impl From<MegolmError> for Error
impl From<MegolmError> for Error
Source§fn from(source: MegolmError) -> Self
fn from(source: MegolmError) -> Self
Source§impl From<StoreError> for Error
impl From<StoreError> for Error
Source§fn from(source: StoreError) -> Self
fn from(source: StoreError) -> Self
Auto Trait Implementations§
impl Freeze for Error
impl !RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnsafeUnpin for Error
impl !UnwindSafe for Error
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, 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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 more