lunar_wave/src/main.rs

31 lines
678 B
Rust
Raw Normal View History

mod loader;
mod state;
2023-09-24 21:34:28 +00:00
#[cfg (test)]
mod tests;
2023-09-24 21:34:28 +00:00
2023-09-26 18:33:59 +00:00
fn main () {
use state::State;
let lua_file = {
2023-09-26 18:33:59 +00:00
let source = std::fs::read ("test_vectors/hello.lua").expect ("couldn't load Lua source code");
let bytecode = loader::compile_bytecode(source);
let mut rdr = std::io::Cursor::new (bytecode);
loader::parse_chunk (&mut rdr).unwrap ()
};
let mut vm = State::default ();
2023-09-25 00:47:17 +00:00
if std::env::var("LUA_DEBUG").is_ok() {
vm.debug_print = true;
}
let upvalues = State::upvalues_from_args (std::env::args ());
vm.breakpoints.push (state::Breakpoint {
block_idx: 3,
program_counter: 0,
});
println! ("Returned: {:?}", vm.execute_chunk (&lua_file, &upvalues));
2023-09-24 21:57:12 +00:00
}