Add files
This commit is contained in:
+28
-1
@@ -1,3 +1,30 @@
|
||||
mod flatten;
|
||||
mod parse;
|
||||
mod ssa;
|
||||
|
||||
use std::process::Command;
|
||||
|
||||
use flatten::flatten;
|
||||
use parse::QuickJSBinary;
|
||||
|
||||
const QJSC: &str = "../third_party/quickjs/build/qjsc";
|
||||
const BIN_OUT: &str = "/tmp/qjsrt.bin";
|
||||
|
||||
fn main() {
|
||||
println!("Hello, world!");
|
||||
let args = std::env::args().collect::<Vec<String>>();
|
||||
let filename = args.get(1).unwrap();
|
||||
|
||||
// Compile source file
|
||||
let output = Command::new(QJSC)
|
||||
.args(["-b", "-m", "-o", BIN_OUT])
|
||||
.arg(filename)
|
||||
.output()
|
||||
.unwrap();
|
||||
|
||||
assert!(output.status.success());
|
||||
|
||||
// Parse, then flatten
|
||||
let bin = std::fs::read(BIN_OUT).unwrap();
|
||||
let (_, parsed) = QuickJSBinary::parse(&bin).unwrap();
|
||||
let (flat_fns, atoms) = flatten(parsed);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user