#[non_exhaustive]pub enum SystemError {
InvalidRequest {
error: String,
request: Binary,
},
InvalidResponse {
error: String,
response: Binary,
},
NoSuchContract {
addr: String,
},
NoSuchCode {
code_id: u64,
},
Unknown {},
UnsupportedRequest {
kind: String,
},
}
Expand description
SystemError is used for errors inside the VM and is API friendly (i.e. serializable).
This is used on return values for Querier as a nested result: Result<StdResult
Such errors are only created by the VM. The error type is defined in the standard library, to ensure the contract understands the error format without creating a dependency on cosmwasm-vm.
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.
InvalidRequest
InvalidResponse
NoSuchContract
NoSuchCode
A Wasm code was not found.
Unknown
UnsupportedRequest
Trait Implementations§
Source§impl Clone for SystemError
impl Clone for SystemError
Source§fn clone(&self) -> SystemError
fn clone(&self) -> SystemError
Returns a duplicate of the value. Read more
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for SystemError
impl Debug for SystemError
Source§impl<'de> Deserialize<'de> for SystemError
impl<'de> Deserialize<'de> for SystemError
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
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 SystemError
impl Display for SystemError
Source§impl Error for SystemError
impl Error for SystemError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl JsonSchema for SystemError
impl JsonSchema for SystemError
Source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref
keyword. Read moreSource§impl PartialEq for SystemError
impl PartialEq for SystemError
Source§impl Schemaifier for SystemError
impl Schemaifier for SystemError
fn visit_schema(visitor: &mut SchemaVisitor) -> DefinitionReference
fn id() -> Identifier
Source§impl Serialize for SystemError
impl Serialize for SystemError
impl Eq for SystemError
impl StructuralPartialEq for SystemError
Auto Trait Implementations§
impl Freeze for SystemError
impl RefUnwindSafe for SystemError
impl Send for SystemError
impl Sync for SystemError
impl Unpin for SystemError
impl UnwindSafe for SystemError
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.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>
Converts
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>
Converts
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