pub struct Vm { /* private fields */ }
Implementations§
Source§impl Vm
impl Vm
pub fn new(ast: Program) -> Result<Self, VmError>
pub fn version_range() -> (usize, usize)
pub fn register_operation<T>(&mut self, name: &str, operator: T)where
T: VmOperation + 'static,
pub fn unregister_operator(&mut self, name: &str) -> bool
pub fn global_variable_value(&self, name: &str) -> Result<Reference, VmError>
pub fn set_global_variable_value( &mut self, name: &str, value: Reference, ) -> Result<Reference, VmError>
pub fn run_event( &mut self, name: &str, inputs: Vec<Reference>, ) -> Result<Guid, VmError>
pub fn destroy_event(&mut self, guid: Guid) -> Result<(), VmError>
pub fn get_completed_event(&mut self, guid: Guid) -> Option<Vec<Reference>>
pub fn get_completed_events( &mut self, ) -> impl Iterator<Item = (Guid, Vec<Reference>)>
pub fn process_events(&mut self) -> Result<(), VmError>
pub fn single_step_event(&mut self, guid: Guid) -> Result<(), VmError>
Auto Trait Implementations§
impl Freeze for Vm
impl !RefUnwindSafe for Vm
impl Send for Vm
impl Sync for Vm
impl Unpin for Vm
impl !UnwindSafe for Vm
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