Struct ethcore::executive::Executive
[−]
[src]
pub struct Executive<'a, B: 'a + StateBackend> { /* fields omitted */ }
Transaction executor.
Methods
impl<'a, B: 'a + StateBackend> Executive<'a, B>
[src]
impl<'a, B: 'a + StateBackend> Executive<'a, B>
pub fn new(
state: &'a mut State<B>,
info: &'a EnvInfo,
machine: &'a Machine
) -> Self
[src]
pub fn new(
state: &'a mut State<B>,
info: &'a EnvInfo,
machine: &'a Machine
) -> Self
Basic constructor.
pub fn from_parent(
state: &'a mut State<B>,
info: &'a EnvInfo,
machine: &'a Machine,
parent_depth: usize,
static_flag: bool
) -> Self
[src]
pub fn from_parent(
state: &'a mut State<B>,
info: &'a EnvInfo,
machine: &'a Machine,
parent_depth: usize,
static_flag: bool
) -> Self
Populates executive from parent properties. Increments executive depth.
pub fn as_externalities<'any, T, V>(
&'any mut self,
origin_info: OriginInfo,
substate: &'any mut Substate,
output: OutputPolicy<'any, 'any>,
tracer: &'any mut T,
vm_tracer: &'any mut V,
static_call: bool
) -> Externalities<'any, T, V, B> where
T: Tracer,
V: VMTracer,
[src]
pub fn as_externalities<'any, T, V>(
&'any mut self,
origin_info: OriginInfo,
substate: &'any mut Substate,
output: OutputPolicy<'any, 'any>,
tracer: &'any mut T,
vm_tracer: &'any mut V,
static_call: bool
) -> Externalities<'any, T, V, B> where
T: Tracer,
V: VMTracer,
Creates Externalities
from Executive
.
pub fn transact<T, V>(
&'a mut self,
t: &SignedTransaction,
options: TransactOptions<T, V>
) -> Result<Executed<T::Output, V::Output>, ExecutionError> where
T: Tracer,
V: VMTracer,
[src]
pub fn transact<T, V>(
&'a mut self,
t: &SignedTransaction,
options: TransactOptions<T, V>
) -> Result<Executed<T::Output, V::Output>, ExecutionError> where
T: Tracer,
V: VMTracer,
This function should be used to execute transaction.
pub fn transact_virtual<T, V>(
&'a mut self,
t: &SignedTransaction,
options: TransactOptions<T, V>
) -> Result<Executed<T::Output, V::Output>, ExecutionError> where
T: Tracer,
V: VMTracer,
[src]
pub fn transact_virtual<T, V>(
&'a mut self,
t: &SignedTransaction,
options: TransactOptions<T, V>
) -> Result<Executed<T::Output, V::Output>, ExecutionError> where
T: Tracer,
V: VMTracer,
Execute a transaction in a "virtual" context. This will ensure the caller has enough balance to execute the desired transaction. Used for extra-block executions for things like consensus contracts and RPCs
pub fn call<T, V>(
&mut self,
params: ActionParams,
substate: &mut Substate,
output: BytesRef,
tracer: &mut T,
vm_tracer: &mut V
) -> Result<FinalizationResult> where
T: Tracer,
V: VMTracer,
[src]
pub fn call<T, V>(
&mut self,
params: ActionParams,
substate: &mut Substate,
output: BytesRef,
tracer: &mut T,
vm_tracer: &mut V
) -> Result<FinalizationResult> where
T: Tracer,
V: VMTracer,
Calls contract function with given contract params.
NOTE. It does not finalize the transaction (doesn't do refunds, nor suicides).
Modifies the substate and the output.
Returns either gas_left or vm::Error
.
pub fn create<T, V>(
&mut self,
params: ActionParams,
substate: &mut Substate,
output: &mut Option<Bytes>,
tracer: &mut T,
vm_tracer: &mut V
) -> Result<FinalizationResult> where
T: Tracer,
V: VMTracer,
[src]
pub fn create<T, V>(
&mut self,
params: ActionParams,
substate: &mut Substate,
output: &mut Option<Bytes>,
tracer: &mut T,
vm_tracer: &mut V
) -> Result<FinalizationResult> where
T: Tracer,
V: VMTracer,
Creates contract with given contract params. NOTE. It does not finalize the transaction (doesn't do refunds, nor suicides). Modifies the substate.