| LUA_HOOK(3) | Library Functions Manual | LUA_HOOK(3) |
lua_Hook — type
for debugging hook functions
#include
<lua.h>
typedef void *
lua_Hook(lua_State
*L, lua_Debug
*ar);
lua_Hook()
type for debugging hook functions.
Whenever a hook is called, its ar argument has its field event set
to the specific event that triggered the hook. Lua identifies these events
with the following constants: LUA_HOOKCALL,
LUA_HOOKRET,
LUA_HOOKTAILRET,
LUA_HOOKLINE, and
LUA_HOOKCOUNT. Moreover, for line events, the field
currentline is also set. To get the value of any other field in ar, the hook
must call lua_getinfo(3). For return events, event can be
LUA_HOOKRET, the normal value, or
LUA_HOOKTAILRET. In the latter case, Lua is
simulating a return from a function that did a tail call; in this case, it
is useless to call lua_getinfo(3).
While Lua is running a hook, it disables other calls to hooks. Therefore, if a hook calls back Lua to execute a function or a chunk, this execution occurs without any calls to hooks.
Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes, Lua 5.1 Reference Manual.
The lua_Hook() manual page is based on Lua
Reference Manual 5.1 and was created by Sergey Bronnikov.
| July 18, 2022 | Debian |