pub trait VirtualMachineProgram {
Show 31 methods
// Required methods
fn op(&mut self, op: CoreOp);
fn std_op(&mut self, op: StandardOp) -> Result<(), Error>;
fn code(&self) -> Result<CoreProgram, StandardProgram>;
// Provided methods
fn set_float_vector(&mut self, vector: Vec<f64>) -> Result<(), Error> { ... }
fn set_vector(&mut self, vector: Vec<i64>) { ... }
fn store_vector(&mut self, n: usize) { ... }
fn load_vector(&mut self, n: usize) { ... }
fn ffi_call(&mut self, ffi: FFIBinding) -> Result<(), Error> { ... }
fn poke(&mut self) -> Result<(), Error> { ... }
fn peek(&mut self) -> Result<(), Error> { ... }
fn comment(&mut self, comment: &str) { ... }
fn restore(&mut self) { ... }
fn save(&mut self) { ... }
fn ret(&mut self) { ... }
fn where_is_pointer(&mut self) { ... }
fn deref(&mut self) { ... }
fn refer(&mut self) { ... }
fn move_pointer(&mut self, cells: isize) { ... }
fn set_register(&mut self, val: i64) { ... }
fn set_float_register(&mut self, val: f64) -> Result<(), Error> { ... }
fn begin_while(&mut self) { ... }
fn begin_if(&mut self) { ... }
fn begin_else(&mut self) { ... }
fn begin_function(&mut self) { ... }
fn end(&mut self) { ... }
fn call(&mut self) { ... }
fn index(&mut self) { ... }
fn bitwise_nand(&mut self) { ... }
fn get(&mut self, src: Input) { ... }
fn put(&mut self, dst: Output) { ... }
fn is_non_negative(&mut self) { ... }
}
Expand description
An interface to conveniently create virtual machine programs, of either the core or standard variant.