1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
mod instruction; pub mod compiler; pub mod machine; pub mod bytecode; pub use bytecode::{ByteCode, ByteCodeType}; pub use compiler::Compiler; pub use machine::Machine; pub mod prelude { pub use compiler::Compiler; pub use machine::Machine; pub use bytecode::ByteCode; use std::io::{Read, Write}; pub fn execute<R: Read, W: Write>(code: &str, r: R, w: W) -> Result<(), String> { let mut comp = Compiler::new(code); let mut machine = Machine::new(comp.compile(), r, w); machine.execute() } }