0.1.0 Mar 19, 2021

#46 in #incomplete

MIT license

67KB
2K SLoC

Nad

Incomplete Lua VM only bytecode is supported for now

Usage

  • Dump function prototype
cargo run -- -dump -debug /path/to/bytecode
# or
cargo install nad
nad -debug -dump /path/to/bytecode
  • Execute bytecode file
cargo run -- -debug /path/to/bytecode
# or
cargo install nad
nad -debug /path/to/bytecode
  • Use nad library
use nad::State;
use nad::Reader;

fn main() {
    let path = "/path/to/bytecode";
    
    // read prototype
    let prototype = Reader::from_file(path).prototype();
    
    // execute main function
    State::from_file(path).call(0, 0);
}

TODO

  • Metatable
  • Iterator
  • Error handler
  • ...

Dependencies

~240KB