Skip to main content

RootInvokeResult

Struct RootInvokeResult 

Source
pub struct RootInvokeResult {
    pub output: InvocationFrameOutput,
    pub gas_consumed: u64,
    pub trace: Option<InvocationFrameTrace>,
    pub events: Vec<TxEmittedEvent>,
    pub rv32_stack_usage_records: Vec<Rv32StackUsage>,
}
Expand description

Result of a transaction’s root invocation (TransactionHandler::root_invoke).

Fields§

§output: InvocationFrameOutput

The root frame’s outcome.

§gas_consumed: u64

Gas consumed by the invocation.

§trace: Option<InvocationFrameTrace>

The execution trace, when tracing was enabled.

§events: Vec<TxEmittedEvent>

Events emitted by the transaction.

§rv32_stack_usage_records: Vec<Rv32StackUsage>

The stack records of the rv32 invocations the transaction ran, in the order they finished: a callee’s before its caller’s. When the root invocation targets an rv32 contract its own record is the last; when it targets a mock contract, every record is a call made under it. Empty if it ran none. See Rv32StackUsage.

Implementations§

Source§

impl RootInvokeResult

Source

pub fn rv32_stack_usage(&self) -> Option<Rv32StackUsage>

The most recent of rv32_stack_usage_records: the root invocation’s own stack record when it targets an rv32 contract, else the last rv32 call made under it. None if the transaction ran none.

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

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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

Source§

type Output = T

Should always be Self
Source§

impl<T> StaticIfNoAlloc for T

Source§

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

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

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

Source§

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.