pub struct Interpreter<Cost: CostType> { /* private fields */ }
Expand description
Intepreter VVM implementation
Implementations§
Source§impl<Cost: CostType> Interpreter<Cost>
impl<Cost: CostType> Interpreter<Cost>
Sourcepub fn new(
params: ActionParams,
cache: Arc<SharedCache>,
schedule: &Schedule,
depth: usize,
) -> Interpreter<Cost>
pub fn new( params: ActionParams, cache: Arc<SharedCache>, schedule: &Schedule, depth: usize, ) -> Interpreter<Cost>
Create a new Interpreter
instance with shared cache.
Sourcepub fn step(&mut self, ext: &mut dyn Ext) -> InterpreterResult
pub fn step(&mut self, ext: &mut dyn Ext) -> InterpreterResult
Execute a single step on the VM.
Trait Implementations§
Source§impl<Cost: 'static + CostType> Exec for Interpreter<Cost>
impl<Cost: 'static + CostType> Exec for Interpreter<Cost>
Source§impl<Cost: 'static + CostType> ResumeCall for Interpreter<Cost>
impl<Cost: 'static + CostType> ResumeCall for Interpreter<Cost>
Source§fn resume_call(self: Box<Self>, result: MessageCallResult) -> Box<dyn Exec>
fn resume_call(self: Box<Self>, result: MessageCallResult) -> Box<dyn Exec>
Resume an execution for call, returns back the Vm interface.
Source§impl<Cost: 'static + CostType> ResumeCreate for Interpreter<Cost>
impl<Cost: 'static + CostType> ResumeCreate for Interpreter<Cost>
Source§fn resume_create(self: Box<Self>, result: ContractCreateResult) -> Box<dyn Exec>
fn resume_create(self: Box<Self>, result: ContractCreateResult) -> Box<dyn Exec>
Resume an execution from create, returns back the Vm interface.
Auto Trait Implementations§
impl<Cost> Freeze for Interpreter<Cost>where
Cost: Freeze,
impl<Cost> !RefUnwindSafe for Interpreter<Cost>
impl<Cost> Send for Interpreter<Cost>
impl<Cost> Sync for Interpreter<Cost>where
Cost: Sync,
impl<Cost> Unpin for Interpreter<Cost>where
Cost: Unpin,
impl<Cost> !UnwindSafe for Interpreter<Cost>
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