luaur_vm/functions/
callerrfunc.rs1use crate::functions::lua_d_callny::lua_d_callny;
5use crate::macros::incr_top::incr_top;
6use crate::macros::setobj_2_s::setobj_2_s;
7use crate::type_aliases::lua_state::lua_State;
8use crate::type_aliases::stk_id::StkId;
9
10pub unsafe fn callerrfunc(l: *mut lua_State, ud: *mut core::ffi::c_void) {
11 let errfunc = ud as StkId;
12
13 setobj_2_s!(l, (*l).top, (*l).top.offset(-1));
14 setobj_2_s!(l, (*l).top.offset(-1), errfunc);
15 incr_top!(l);
16
17 lua_d_callny(l, (*l).top.offset(-2), 1);
18}