#[non_exhaustive]
pub enum KeyStorageErrorKind { UnsupportedKeyType, KeyAlgorithmMismatch, UnsupportedSignatureAlgorithm, KeyNotFound, Unavailable, Unauthenticated, RetryableIOFailure, SerializationError, Unspecified, }
Expand description

The cause of the failed key storage operation.

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

UnsupportedKeyType

Indicates that a user tried to generate a key which the key storage implementation does not support.

§

KeyAlgorithmMismatch

Indicates an attempt to generate or insert a key with a key type that the key storage implementation deems incompatible with the given signature algorithm.

§

UnsupportedSignatureAlgorithm

Indicates an attempt to parse a signature algorithm that is not recognized by the key storage implementation.

§

KeyNotFound

Indicates that the key storage implementation is not able to find the requested key.

§

Unavailable

Indicates that the storage is unavailable for an unpredictable amount of time.

Occurrences of this variant should hopefully be rare, but could occur if hardware fails, or a hosted key store goes offline.

§

Unauthenticated

Indicates that an attempt was made to authenticate with the key storage, but the operation did not succeed.

§

RetryableIOFailure

Indicates an unsuccessful I/O operation that may be retried, such as a temporary connection failure or timeouts.

Returning this error signals to the caller that the operation may be retried with a chance of success. It is at the caller’s discretion whether to retry or not, and how often.

§

SerializationError

Indicates a failure to serialize or deserialize.

§

Unspecified

Indicates that something went wrong, but it is unclear whether the reason matches any of the other variants.

When using this variant one may want to attach additional context to the corresponding KeyStorageError. See KeyStorageError::with_custom_message and KeyStorageError::with_source.

Implementations§

source§

impl KeyStorageErrorKind

source

pub const fn as_str(&self) -> &str

Returns the string representation of the error.

Trait Implementations§

source§

impl AsRef<str> for KeyStorageErrorKind

source§

fn as_ref(&self) -> &str

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

impl Clone for KeyStorageErrorKind

source§

fn clone(&self) -> KeyStorageErrorKind

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 KeyStorageErrorKind

source§

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

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

impl Display for KeyStorageErrorKind

source§

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

Formats the value using the given formatter. Read more

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> ConvertTo<Bech32Address> for T
where T: AsRef<str> + Send,

source§

impl<T> ConvertTo<Hrp> for T
where T: AsRef<str> + Send,

source§

impl<T> ConvertTo<T> for T
where T: Send,

source§

impl<T> From<T> for T

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

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where 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 T
where 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 T
where U: Into<T>,

§

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>,

§

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