use low_luajit::{AmountReturned, LuaState, LuaType};
extern "C-unwind" fn join(mut lua: LuaState) -> AmountReturned {
lua.check_type(1, LuaType::Function);
let top = lua.get_top();
lua.push_value(1);
lua.remove(1);
lua.call(0, LuaState::MULTI_RETURN);
let final_top = lua.get_top();
for _ in top..=final_top {
lua.insert(1);
}
lua.return_any(final_top)
}
#[unsafe(no_mangle)]
extern "C-unwind" fn luaopen_join_varargs(lua: LuaState) -> AmountReturned {
lua.return_cfunction(join)
}