Debug Library

Get Constants:

<table> debug.getconstants(<function> f)
  • Returns the constants in function f or at level f.

Get Constant:

<variant> debug.getconstant(<function> f, <int> idx)
  • Returns the constant at index idx in function f or level f.

Set Constant:

<void> debug.setconstant(<function> f, <int> idx, union<number, bool, string> value)
  • Set constant idx to tuple value at level or function f.

Get Upvalues:

<table> debug.getupvalues(<function> f)
  • Retrieve the upvalues in function f or at level f.

Get Upvalue:

<variant> debug.getupvalue(union<function, number> f, <number> idx)
  • Returns the upvalue with name idx in function or level f.

Set Upvalue:

<void> debug.setupvalue(<function> f, <int> idx, <table> value)
  • Set upvalue idx to value at level or function f.

Get Proto:

<table, function> debug.getproto(<function> f, <int> idx, <bool?> activated)
  • Gets the inner function of f at index.

Set Proto:

<void> debug.setproto(<function> fi, <number> index, <function> replacement)
  • Replaces fi at index with function replacement at level or function fi.

Get Stack:

<table> debug.getstack(<function> f, <int> idx)
  • Gets the method stack at level or function f.

Set Stack:

<void> debug.setstack(<function> f, <int> idx, <table> value)
  • Sets the stack indice at indice to value at level or function f.

Set Metatable:

<table> debug.setmetatable(<table> o, <table> mt)  
  • Set the metatable of o to mt.

Get Registry:

<table> debug.getregistry(<void>)
  • Returns the Lua registry.

Get Info:

<table> debug.getinfo(<function> f)
  • Returns a table of information about function f.

Info:

NameTypeDescription
nameStringThe name of the function.
short_srcStringA shorter version of source.
whatStringWhat the function is: Lua = Lua function - C = C function
currentlineIntegerThe line that is currently active.
nupsIntegerThe number of upvalues that the function has.
funcFunctionThe function that is active.
sourceStringWhere the function was defined.