pub struct CodeBlock<Intrinsic> {
pub variables: usize,
pub code: Vec<Instruction<Intrinsic>>,
}
Expand description
A block of code that can be executed on the virtual machine.
Fields§
§variables: usize
The number of variables this code block requires.
code: Vec<Instruction<Intrinsic>>
The virtual machine instructions.
Implementations§
source§impl<Intrinsic> CodeBlock<Intrinsic>
impl<Intrinsic> CodeBlock<Intrinsic>
sourcepub fn display_indented<'a>(
&'a self,
indentation: &'a str
) -> CodeBlockDisplay<'a, Intrinsic>
pub fn display_indented<'a>( &'a self, indentation: &'a str ) -> CodeBlockDisplay<'a, Intrinsic>
Returns a Display
implementor that indents each printed operation
with indentation
.
sourcepub fn execute_in<'a, Env, Output>(
&'a self,
vm: &'a mut VirtualMachine<Env>
) -> Result<Output, Fault<'a, Env, Output>>where
Env: Environment<Intrinsic = Intrinsic>,
Output: FromStack,
pub fn execute_in<'a, Env, Output>( &'a self, vm: &'a mut VirtualMachine<Env> ) -> Result<Output, Fault<'a, Env, Output>>where Env: Environment<Intrinsic = Intrinsic>, Output: FromStack,
Executes this code block using vm
, returning the result.