Struct ethcore::executive::CallCreateExecutive
source · [−]pub struct CallCreateExecutive<'a> { /* private fields */ }
Expand description
Executive for a raw call/create action.
Implementations
sourceimpl<'a> CallCreateExecutive<'a>
impl<'a> CallCreateExecutive<'a>
sourcepub fn new_substate(params: &ActionParams, schedule: &'a Schedule) -> Substate
pub fn new_substate(params: &ActionParams, schedule: &'a Schedule) -> Substate
Create new state with access list.
sourcepub fn new_call_raw(
params: ActionParams,
info: &'a EnvInfo,
machine: &'a Machine,
schedule: &'a Schedule,
factory: &'a VmFactory,
depth: usize,
stack_depth: usize,
parent_static_flag: bool
) -> Self
pub fn new_call_raw(
params: ActionParams,
info: &'a EnvInfo,
machine: &'a Machine,
schedule: &'a Schedule,
factory: &'a VmFactory,
depth: usize,
stack_depth: usize,
parent_static_flag: bool
) -> Self
Create a new call executive using raw data.
sourcepub fn new_create_raw(
params: ActionParams,
info: &'a EnvInfo,
machine: &'a Machine,
schedule: &'a Schedule,
factory: &'a VmFactory,
depth: usize,
stack_depth: usize,
static_flag: bool
) -> Self
pub fn new_create_raw(
params: ActionParams,
info: &'a EnvInfo,
machine: &'a Machine,
schedule: &'a Schedule,
factory: &'a VmFactory,
depth: usize,
stack_depth: usize,
static_flag: bool
) -> Self
Create a new create executive using raw data.
sourcepub fn unconfirmed_substate(&mut self) -> Option<&mut Substate>
pub fn unconfirmed_substate(&mut self) -> Option<&mut Substate>
If this executive contains an unconfirmed substate, returns a mutable reference to it.
sourcepub fn exec<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
state: &mut State<B>,
substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> ExecutiveTrapResult<'a, FinalizationResult>
pub fn exec<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
state: &mut State<B>,
substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> ExecutiveTrapResult<'a, FinalizationResult>
Execute the executive. If a sub-call/create action is required, a resume trap error is returned. The caller is
then expected to call resume_call
or resume_create
to continue the execution.
Current-level tracing is expected to be handled by caller.
sourcepub fn resume_call<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
result: MessageCallResult,
state: &mut State<B>,
substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> ExecutiveTrapResult<'a, FinalizationResult>
pub fn resume_call<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
result: MessageCallResult,
state: &mut State<B>,
substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> ExecutiveTrapResult<'a, FinalizationResult>
Resume execution from a call trap previsouly trapped by exec
.
Current-level tracing is expected to be handled by caller.
sourcepub fn resume_create<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
result: ContractCreateResult,
state: &mut State<B>,
substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> ExecutiveTrapResult<'a, FinalizationResult>
pub fn resume_create<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
result: ContractCreateResult,
state: &mut State<B>,
substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> ExecutiveTrapResult<'a, FinalizationResult>
Resume execution from a create trap previsouly trapped by exec
.
Current-level tracing is expected to be handled by caller.
sourcepub fn consume<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
state: &mut State<B>,
top_substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> Result<FinalizationResult>
pub fn consume<B: 'a + StateBackend, T: Tracer, V: VMTracer>(
self,
state: &mut State<B>,
top_substate: &mut Substate,
tracer: &mut T,
vm_tracer: &mut V
) -> Result<FinalizationResult>
Execute and consume the current executive. This function handles resume traps and sub-level tracing. The caller is expected to handle current-level tracing.
Auto Trait Implementations
impl<'a> !RefUnwindSafe for CallCreateExecutive<'a>
impl<'a> !Send for CallCreateExecutive<'a>
impl<'a> !Sync for CallCreateExecutive<'a>
impl<'a> Unpin for CallCreateExecutive<'a>
impl<'a> !UnwindSafe for CallCreateExecutive<'a>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more