您正在查看: Lua 分类下的文章

Lua 5.1 Reference Manual - debug.getupvalue (func, up)

debug.getupvalue (func, up)

This function returns the name and the value of the upvalue with index up of the function func. The function returns nil if there is no upvalue with the given index.

Lua 5.1 Reference Manual - debug.setfenv (object, table)

debug.setfenv (object, table)

Sets the environment of the given object to the given table. Returns object.

Lua 5.1 Reference Manual - debug.sethook ([thread,] hook, mask [, count])

debug.sethook ([thread,] hook, mask [, count])

Sets the given function as a hook. The string mask and the number count describe when the hook will be called. The string mask may have the following characters, with the given meaning:

  • "c": The hook is called every time lua calls a function;
  • "r": The hook is called every time lua returns from a function;
  • "l": The hook is called every time Lua enters a new line of code.

With a count different from zero, the hook is called after every count instructions.

When called without arguments, debug.sethook turns off the hook.

When the hook is called, its first parameter is a string describing the event that has triggered its call: "call", "return" (or "tail return"), "line", and "count". For line events, the hook also gets the new line number as its second parameter. Inside a hook, you can call getinfo with level 2 to get more information about the running function (level 0 is the getinfo function, and level 1 is the hook function), unless the event is "tail return". In this case, Lua is only simulating the return, and a call to getinfo will return invalid data.

Lua 5.1 Reference Manual - debug.getregistry ()

debug.getregistry ()

Returns the registry table (see §3.5).

Lua 5.1 Reference Manual - debug.gethook ([thread])

debug.gethook ([thread])

Returns the current hook settings of the thread, as three values: the current hook function, the current hook mask, and the current hook count (as set by the debug.sethook function).