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

# lunit
lunit.assert (assertion, [msg]) Fails, if 'assertion' is false or nil.
lunit.assert_fail ([msg]) Always fails.
lunit.assert_true (actual, [msg]) Fails, if 'actual' isn't true.
lunit.assert_false (actual, [msg]) Fails, if 'actual' isn't false. (Even fails if 'actual' is a nil value!)
lunit.assert_equal (expected, actual, [msg]) Fails, if 'actual' is different from 'expected'.
lunit.assert_not_equal (unexpected, actual, [msg]) Fails, if 'actual' and 'unexpected' are equal.
lunit.assert_match (pattern, actual, [msg]) Fails, if the string 'actual' doesn't match 'pattern'.
lunit.assert_not_match (pattern, actual, [msg]) Fails, if the string 'actual' match 'pattern'.
lunit.assert_nil (actual, [msg]) Fails, if 'actual' isn't a nil value.
lunit.assert_not_nil (actual, [msg]) Fails, if 'actual' is a nil value.
lunit.assert_boolean (actual, [msg]) Fails, if 'actual' isn't true or false.
lunit.assert_not_boolean (actual, [msg]) Fails, if 'actual' is true or false.
lunit.assert_number (actual, [msg]) Fails, if 'actual' isn't a number.
lunit.assert_not_number (actual, [msg]) Fails, if 'actual' is a number.
lunit.assert_string (actual, [msg]) Fails, if 'actual' isn't a string.
lunit.assert_not_string (actual, [msg]) Fails, if 'actual' is a string.
lunit.assert_table (actual, [msg]) Fails, if 'actual' isn't a table.
lunit.assert_not_table (actual, [msg]) Fails, if 'actual' is a table.
lunit.assert_function (actual, [msg]) Fails, if 'actual' isn't a function.
lunit.assert_not_function (actual, [msg]) Fails, if 'actual' is a function.
lunit.assert_thread (actual, [msg]) Fails, if 'actual' isn't a thread (created by coroutine.create or coroutine.wrap).
lunit.assert_not_thread (actual, [msg]) Fails, if 'actual' is a thread.
lunit.assert_userdata (actual, [msg]) Fails, if 'actual' isn't userdata.
lunit.assert_not_userdata (actual, [msg]) Fails, if 'actual' is userdata.
lunit.assert_error ([msg], func) Fails, if 'func' doesn't raises an error (using error ()).
lunit.assert_pass ([msg], func) Fails, if 'func' raises an error.
lunit.is_nil (actual)
lunit.is_boolean (actual)
lunit.is_number (actual)
lunit.is_string (actual)
lunit.is_table (actual)
lunit.is_function (actual)
lunit.is_thread (actual)
lunit.is_userdata (actual)
lunit.run () Run all testcases
lunit.wrap (func) Wrap a single function to form a independent testcase
lunit.TestCase (description) Group related tests into a testcase object