1_G holds global environment, setfenv changes environments
2_VERSION current interpreter version "Lua 5.0"
3assert (v [, message]) error if v nil or false, otherwise returns v
4collectgarbage ([limit]) set threshold to limit KBytes, default 0, may run GC
5coroutine.create (f) creates coroutine from function f, returns coroutine
6coroutine.resume (co, val1, ...) continues execution of co, returns bool status plus any values
7coroutine.status (co) returns co status: "running", "suspended" or "dead"
8coroutine.wrap (f) creates coroutine with body f, returns function that resumes co
9coroutine.yield (val1, ...) suspend execution of calling coroutine
10debug.debug () enters interactive debug mode, line with only "cont" terminates
11debug.gethook () returns current hook function, hook mask, hook count
12debug.getinfo (function [, what]) returns table with information about a function
13debug.getlocal (level, local) returns name and value of local variable with index local at stack level
14debug.getupvalue (func, up) returns name and value of upvalue with index up of function func
15debug.sethook (hook, mask [, count]) sets given function as a hook, mask="[crl]"
16debug.setlocal (level, local, value) sets local variable with index local at stack level with value
17debug.setupvalue (func, up, value) sets upvalue with index up of function func with value
18debug.traceback ([message]) returns a string with a traceback of the call stack
19dofile (filename) executes as Lua chunk, default stdin, returns value
20error (message [, level]) terminates protected func, never returns, level 1 (default), 2=parent
21file:close () closes file
22file:flush () saves any written data to file
23file:lines () returns iterator function to return lines, nil ends
24file:read (format1, ...) reads file according to given formats, returns read values or nil
25file:seek ([whence] [, offset]) sets file pos, whence="set"|"cur"|"end", defaults "curr",0, returns file pos
26file:write (value1, ...) writes strings or numbers to file
27gcinfo () returns dynamic mem in use (KB), and current GC threshold (KB)
28getfenv (f) gets env, f can be a function or number (stack level, default=1), 0=global env
29getmetatable (object) returns metatable of given object, otherwise nil
30io.close ([file]) closes file, or the default output file
31io.flush () flushes the default output file
32io.input ([file]) opens file in text mode, sets as default input file, or returns current default input file
33io.lines ([filename]) open file in read mode, returns iterator function to return lines, nil ends
34io.open (filename [, mode]) opens file in specified mode "[rawb+]", returns handle or nil
35io.output ([file]) opens file in text mode, sets as default output file, or returns current default output file
36io.read (format1, ...) reads file according to given formats, returns read values or nil
37io.stderr file descriptor for STDERR
38io.stdin file descriptor for STDIN
39io.stdout file descriptor for STDOUT
40io.tmpfile () returns a handle for a temporary file, opened in update mode
41io.type (obj) returns "file" if obj is an open file handle, "close file" if closed, or nil if not a file handle
42io.write (value1, ...) writes strings or numbers to file
43ipairs (t) returns an iterator function, table t and 0
44loadfile (filename) loads chunk without execution, returns chunk as function, else nil plus error
45loadlib (libname, funcname) links to dynamic library libname, returns funcname as a C function
46loadstring (string [, chunkname]) loads string as chunk, returns chunk as function, else nil plus error
47math.abs (v) returns absolute value of v
48math.acos (v) returns arc cosine value of v in radians
49math.asin (v) returns arc sine value of v in radians
50math.atan (v) returns arc tangent value of v in radians
51math.atan2 (v1, v2) returns arc tangent value of v1/v2 in radians
52math.ceil (v) returns smallest integer >= v
53math.cos (rad) returns cosine value of angle rad
54math.deg (rad) returns angle in degrees of radians rad
55math.exp (v) returns e^v
56math.floor (v) returns largest integer <= v
57math.frexp (v) returns mantissa [0.5,1) and exponent values of v
58math.ldexp (v1, v2) returns v1*2^v2
59math.log (v) returns natural logarithm of v
60math.log10 (v) returns logarithm 10 of v
61math.max (v1, ...) returns maximum in a list of one or more values
62math.min (v1, ...) returns minimum in a list of one or more values
63math.mod (v1, v2) returns remainder of v1/v2 which is v1 - iV2 for some integer i
64math.pow (v1, v2) returns v1 raised to the power of v2
65math.rad (deg) returns angle in radians of degrees deg
66math.random ([n [, u]]) returns random real [0,1), integer [1,n] or real [1,u] (with n=1)
67math.randomseed (seed) sets seed for pseudo-random number generator
68math.sin (rad) returns sine value of angle rad
69math.sqrt (v) returns square root of v
70math.tan (rad) returns tangent value of angle rad
71next (table [, index]) returns next index,value pair, if index=nil (default), returns first index
72os.clock () returns CPU time used by program in seconds
73os.date ([format [, time]]) returns a string or table containing date and time, "*t" returns a table
74os.difftime (t2, t1) returns number of seconds from time t1 to time t2
75os.execute (command) executes command using C function system, returns status code
76os.exit ([code]) terminates host program with optional code, default is success code
77os.getenv (varname) returns value of environment variable varname. nil if not defined
78os.remove (filename) deletes file with given name, nil if fails
79os.rename (oldname, newname) renames file oldname to newname, nil if fails
80os.setlocale (locale [, category]) set current locale of program, returns name of new locate or nil
81os.time ([table]) returns current time (usually seconds) or time as represented by table
82os.tmpname () returns a string with a filename for a temporary file (dangerous! tmpfile is better)
83pairs (t) returns the next function and table t plus a nil, iterates over all key-value pairs
84pcall (f, arg1, arg2, ...) protected mode call, catches errors, returns status code first (true=success)
85print (e1, e2, ...) prints values to stdout using tostring
86rawequal (v1, v2) non-metamethod v1==v2, returns boolean
87rawget (table, index) non-metamethod get value of table[index], index != nil
88rawset (table, index, value) non-metamethod set value of table[index], index != nil
89require (packagename) loads package, updates _LOADED, returns boolean
90setfenv (f, table) sets env, f can be a function or number (stack level, default=1), 0=global env
91setmetatable (table, metatable) sets metatable, nil to remove metatable
92string.byte (s [, i]) returns numerical code, nil if index out of range, default i=1
93string.char (i1, i2, ...) returns a string built from 0 or more integers
94string.dump (function) returns binary representation of function, used with loadstring
95string.find (s, pattern [, init [, plain]]) matches pattern in s, returns start,end indices, else nil
96string.format (formatstring, e1, e2, ...) returns formatted string, printf-style
97string.gfind (s, pat) returns iterator function that returns next captures from pattern pat on s
98string.gsub (s, pat, repl [, n]) returns copy of s with pat replaced by repl, and substitutions made
99string.len (s) returns string length
100string.lower (s) returns string with letters in lower case
101string.rep (s, n) returns string with n copies of string s
102string.sub (s, i [, j]) returns substring from index i to j of s, default j=-1 (string length)
103string.upper (s) returns string with letters in upper case
104table.concat (table [, sep [, i [, j]]]) returns concatenated table elements i to j separated by sep
105table.foreach (table, f) executes f(index,value) over all elements of table, returns first non-nil of f
106table.foreachi (table, f) executes f(index,value) in sequential order 1 to n, returns first non-nil of f
107table.getn (table) returns size of table, or n field, or table.setn value, or 1 less first index with nil value
108table.insert (table, [pos,] value) insert value at location pos in table, default pos=n+1
109table.remove (table [, pos]) removes element at pos from table, default pos=n
110table.setn (table, n) sets size of table, n field of table if it exists
111table.sort (table [, comp]) sorts in-place elements 1 to n, comp(v1,v2) true if v1<v2, default <
112tonumber (e [, base]) convert to number, returns number, nil if non-convertible, 2<=base<=36
113tostring (e) convert to string, returns string
114type (v) returns type of v as a string
115unpack (list) returns all elements from list
116xpcall (f, err) pcall function f with new error handler err
117