Skip to main content

embed_min/
embed_min.rs

1//! luna-core minimal embed proof — 10-line zero-dep flow.
2//!
3//! Verifies that:
4//! - The `luna-core` crate alone (no Cranelift, no JIT) is enough to
5//!   create a Vm, eval Lua source, and read back the return value.
6//! - `cargo tree -p luna-core` shows exactly 1 crate (no transitive
7//!   third-party dependencies).
8//!
9//! Run: `cargo run --example embed_min -p luna-core`.
10//! Acceptance: prints `Int(3)`.
11
12use luna_core::version::LuaVersion;
13use luna_core::vm::Vm;
14
15fn main() {
16    let mut vm = Vm::new_minimal(LuaVersion::Lua55);
17    vm.open_base();
18    let r = vm.eval("return 1 + 2").expect("eval failed");
19    println!("{:?}", r.first().expect("no return value"));
20}