4.8 – Functions and Types[-o, +p, x]

Here we list all functions and types from the C API in alphabetical order. Each function has an indicator like this:

The first field, o, is how many elements the function pops from the stack. The second field, p, is how many elements the function pushes onto the stack. (Any function always pushes its results after popping its arguments.) A field in the form x|y means the function can push (or pop) x or y elements, depending on the situation; an interrogation mark '?' means that we cannot know how many elements the function pops/pushes by looking only at its arguments (e.g., they may depend on what is on the stack). The third field, x, tells whether the function may raise errors: '-' means the function never raises any error; 'm' means the function may raise out-of-memory errors and errors running a __gc metamethod; 'e' means the function may raise any errors (it can run arbitrary Lua code, either directly or through metamethods); 'v' means the function may raise an error on purpose.

lua_copy
  • References/Lua/Lua/API/Functions and Types

lua_copy[-0, +0, –] void lua_copy (lua_State *L, int fromidx, int toidx); Copies the element at index

2025-01-10 15:47:30
lua_isuserdata
  • References/Lua/Lua/API/Functions and Types

lua_isuserdata[-0, +0, –] int lua_isuserdata (lua_State *L, int index); Returns 1 if the value at the given

2025-01-10 15:47:30
lua_setglobal
  • References/Lua/Lua/API/Functions and Types

lua_setglobal[-1, +0, e] void lua_setglobal (lua_State *L, const char *name); Pops a value from

2025-01-10 15:47:30
lua_topointer
  • References/Lua/Lua/API/Functions and Types

lua_topointer[-0, +0, –] const void *lua_topointer (lua_State *L, int index); Converts the value at the

2025-01-10 15:47:30
lua_pushvfstring
  • References/Lua/Lua/API/Functions and Types

lua_pushvfstring[-0, +1, m] const char *lua_pushvfstring (lua_State *L, const

2025-01-10 15:47:30
lua_gc
  • References/Lua/Lua/API/Functions and Types

lua_gc[-0, +0, m] int lua_gc (lua_State *L, int what, int data); Controls the garbage collector

2025-01-10 15:47:30
lua_tonumberx
  • References/Lua/Lua/API/Functions and Types

lua_tonumberx[-0, +0, –] lua_Number lua_tonumberx (lua_State *L, int index, int *isnum); Converts the Lua

2025-01-10 15:47:30
lua_status
  • References/Lua/Lua/API/Functions and Types

lua_status[-0, +0, –] int lua_status (lua_State *L); Returns the status of the thread L.

2025-01-10 15:47:30
lua_getfield
  • References/Lua/Lua/API/Functions and Types

lua_getfield[-0, +1, e] int lua_getfield (lua_State *L, int index, const char *k); Pushes onto

2025-01-10 15:47:30
lua_CFunction
  • References/Lua/Lua/API/Functions and Types

lua_CFunction typedef int (*lua_CFunction) (lua_State *L); Type for C functions. In order to communicate properly with Lua

2025-01-10 15:47:30