[−][src]Macro luajit::lua_fn
This macro is used to wrap a rust function in an extern "C"
trampoline
to automatically pass a State
struct as the first
argument instead of a lua_State
raw pointer
Examples
#[macro_use] extern crate luajit; use luajit::{State, c_int, ThreadStatus}; fn return_42(state: &mut State) -> c_int { state.push(42); 1 } fn main() { let mut state = State::new(); state.open_libs(); state.push(lua_fn!(return_42)); state.set_global("return_42"); let status = state.do_string("if return_42() ~= 42 then error() end"); assert_eq!(status, ThreadStatus::Ok); // Equivalent state.register("return_42", lua_fn!(return_42).unwrap()); }