66 while (lua_gettop(s) > 0) {
103 lua_gettable(luastate, LUA_REGISTRYINDEX);
104 void *
tv = lua_touserdata(luastate, -1);
111 lua_pushlightuserdata(luastate, (
void *)
tv);
112 lua_settable(luastate, LUA_REGISTRYINDEX);
119 lua_gettable(luastate, LUA_REGISTRYINDEX);
120 void *
p = lua_touserdata(luastate, -1);
127 lua_pushlightuserdata(luastate, (
void *)
p);
128 lua_settable(luastate, LUA_REGISTRYINDEX);
135 lua_gettable(luastate, LUA_REGISTRYINDEX);
136 void *tx = lua_touserdata(luastate, -1);
144 lua_gettable(luastate, LUA_REGISTRYINDEX);
145 uint64_t tx_id = lua_tointeger(luastate, -1);
151 lua_pushlightuserdata(luastate, (
void *)txptr);
152 lua_settable(luastate, LUA_REGISTRYINDEX);
155 lua_pushinteger(luastate, tx_id);
156 lua_settable(luastate, LUA_REGISTRYINDEX);
164 lua_gettable(luastate, LUA_REGISTRYINDEX);
165 f = lua_touserdata(luastate, -1);
169 lua_gettable(luastate, LUA_REGISTRYINDEX);
178 lua_pushlightuserdata(luastate, (
void *)
f);
179 lua_settable(luastate, LUA_REGISTRYINDEX);
184 lua_pushboolean(luastate, 0);
185 lua_settable(luastate, LUA_REGISTRYINDEX);
192 lua_gettable(luastate, LUA_REGISTRYINDEX);
193 void *pa = lua_touserdata(luastate, -1);
200 lua_pushlightuserdata(luastate, (
void *)pa);
201 lua_settable(luastate, LUA_REGISTRYINDEX);
208 lua_gettable(luastate, LUA_REGISTRYINDEX);
209 void *s = lua_touserdata(luastate, -1);
216 lua_pushlightuserdata(luastate, (
void *)s);
217 lua_settable(luastate, LUA_REGISTRYINDEX);
224 lua_gettable(luastate, LUA_REGISTRYINDEX);
225 void *file = lua_touserdata(luastate, -1);
232 lua_pushlightuserdata(luastate, (
void *)file);
233 lua_settable(luastate, LUA_REGISTRYINDEX);
240 lua_gettable(luastate, LUA_REGISTRYINDEX);
241 void *det_ctx = lua_touserdata(luastate, -1);
248 lua_pushlightuserdata(luastate, (
void *)det_ctx);
249 lua_settable(luastate, LUA_REGISTRYINDEX);
255 lua_gettable(luastate, LUA_REGISTRYINDEX);
256 void *b = lua_touserdata(luastate, -1);
263 lua_pushlightuserdata(luastate, (
void *)b);
264 lua_settable(luastate, LUA_REGISTRYINDEX);
271 lua_gettable(luastate, LUA_REGISTRYINDEX);
272 int dir = lua_toboolean(luastate, -1);
279 lua_pushboolean(luastate, direction);
280 lua_settable(luastate, LUA_REGISTRYINDEX);
285 int size = lua_gettop(state);
288 for (i = 1; i <= size; i++) {
289 int type = lua_type(state, i);
290 printf(
"Stack size=%d, level=%d, type=%d, ", size, i,
type);
294 printf(
"function %s", lua_tostring(state, i) ?
"true" :
"false");
297 printf(
"bool %s", lua_toboolean(state, i) ?
"true" :
"false");
300 printf(
"number %g", lua_tonumber(state, i));
303 printf(
"string `%s'", lua_tostring(state, i));
306 printf(
"table `%s'", lua_tostring(state, i));
309 printf(
"other %s", lua_typename(state,
type));
319 lua_pushlstring(luastate, (
char *)input, input_len);
325 lua_pushinteger(luastate, n);