#[repr(i32)]
pub enum CallContractError<ReturnValueType> {
    AmountTooLarge,
    MissingAccount,
    MissingContract,
    MissingEntrypoint,
    MessageFailed,
    LogicReject {
        reason: i32,
        return_value: ReturnValueType,
    },
    Trap,
}
Expand description

Errors that may occur when invoking a contract entrypoint.

Variants§

§

AmountTooLarge

Amount that was to be transferred is not available to the sender.

§

MissingAccount

Owner account of the smart contract that is being invoked does not exist. This variant should in principle not happen, but is here for completeness.

§

MissingContract

Contract that is to be invoked does not exist.

§

MissingEntrypoint

The contract to be invoked exists, but the entrypoint that was named does not.

§

MessageFailed

Sending a message to the V0 contract failed.

§

LogicReject

Fields

§reason: i32
§return_value: ReturnValueType

Contract that was called rejected with the given reason.

§

Trap

Execution of a contract call triggered a runtime error.

Trait Implementations§

source§

impl<ReturnValueType: Clone> Clone for CallContractError<ReturnValueType>

source§

fn clone(&self) -> CallContractError<ReturnValueType>

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<ReturnValueType: Debug> Debug for CallContractError<ReturnValueType>

source§

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

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

impl<T> From<CallContractError<T>> for Reject

AmountTooLarge is i32::MIN + 15, MissingAccount is i32::MIN + 16, MissingContract is i32::MIN + 17, MissingEntrypoint is i32::MIN + 18, MessageFailed is i32::MIN + 19, LogicReject is i32::MIN + 20, Trap is i32::MIN + 21.

source§

fn from(cce: CallContractError<T>) -> Self

Converts to this type from the input type.
source§

impl<ReturnValueType: Copy> Copy for CallContractError<ReturnValueType>

Auto Trait Implementations§

§

impl<ReturnValueType> RefUnwindSafe for CallContractError<ReturnValueType>where
ReturnValueType: RefUnwindSafe,

§

impl<ReturnValueType> Send for CallContractError<ReturnValueType>where
ReturnValueType: Send,

§

impl<ReturnValueType> Sync for CallContractError<ReturnValueType>where
ReturnValueType: Sync,

§

impl<ReturnValueType> Unpin for CallContractError<ReturnValueType>where
ReturnValueType: Unpin,

§

impl<ReturnValueType> UnwindSafe for CallContractError<ReturnValueType>where
ReturnValueType: UnwindSafe,

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<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

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