Trait bf::traits::LlvmCompilable [−][src]
pub trait LlvmCompilable { fn with_peephole<F, R>(&self, k: F) -> R
where
F: FnOnce(&Program) -> R; fn llvm_run(&self, memory_size: Option<usize>) -> BfResult<()> { ... } }
Program forms that can be compiled and run via LLVM.
Required Methods
fn with_peephole<F, R>(&self, k: F) -> R where
F: FnOnce(&Program) -> R,
F: FnOnce(&Program) -> R,
Compile the given program into the peephole AST to prepare for LLVM compilation.
Provided Methods
fn llvm_run(&self, memory_size: Option<usize>) -> BfResult<()>
JIT compile and run the given program via LLVM.
Implementors
impl LlvmCompilable for Program
impl<T: PeepholeCompilable + ?Sized> LlvmCompilable for T