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_pushnumber
  • References/Lua/Lua/API/Functions and Types

lua_pushnumber[-0, +1, –] void lua_pushnumber (lua_State *L, lua_Number n); Pushes a float with value n

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

lua_pushnil[-0, +1, –] void lua_pushnil (lua_State *L); Pushes a nil value onto the stack.

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

lua_setmetatable[-1, +0, –] void lua_setmetatable (lua_State *L, int index); Pops a table from the stack

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

lua_tointeger[-0, +0, –] lua_Integer lua_tointeger (lua_State *L, int index); Equivalent to

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

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

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

lua_toboolean[-0, +0, –] int lua_toboolean (lua_State *L, int index); Converts the Lua value at the given

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

lua_rawseti[-1, +0, m] void lua_rawseti (lua_State *L, int index, lua_Integer i); Does the equivalent

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

lua_gettable[-1, +1, e] int lua_gettable (lua_State *L, int index); Pushes onto the stack the

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

lua_checkstack[-0, +0, –] int lua_checkstack (lua_State *L, int n); Ensures that the stack has space for

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

lua_setuservalue[-1, +0, –] void lua_setuservalue (lua_State *L, int index); Pops a value from the stack

2025-01-10 15:47:30