_G
全局变量。Lua自己不使用这个变量。改变它的值不会影响任何环境。
_ENV
_VERSION
全局变量(不是一个函数),存储当前Lua版本号。当前这个值是”Lua5.2”
Registry
Lua提供一个注册表,一个预定义表C代码可以使用它来存储Lua值.这个注册表
总是使用伪索引LUA_REGISTRYINDEX来定位.C代码可以存储数据进入该表.
但是要小心选择键值不要和其他库冲突.典型的你能将你的库名包括在键值名称中.
或者一个轻量userdata的C地址.
整数键值在注册表中被用在引用机制中.有辅助库实现.
当你创建一个新的Lua state时,注册表中包括一些预定义的值.这些预定义值
是一些索引值它们包括在lua.h中.下面包括这些定义:
LUA_RIDX_MAINTHREAD main thread的state的索引.
LUA_RIDX_GLOBALS 全局环境的索引
assert (v[,message])
如果v是false assert引发一个错误,否则返回全部参数message是错误消息。
message默认值是”assertion failed!”
collectgarbage ([opt[,arg]])
该函数是一个通用垃圾回收器。它根据第一个参数执行不同的回收策略。
”collect” 执行完整的垃圾回收周期。默认操作。
“stop” 停止自动垃圾回收直到重新启动它。
“restart” 重启自动垃圾回收。
“count” 返回Lua总的内存使用数量(kb)
k,b = collectagarbage(“count”)
assert(k*1024==math.floor(k)*1024+b)
“step” 执行一个垃圾回收step。step”size”由arg指定。
如果完成收集周期返回true。
“setpause” 设置收集器pause参数新的值,返回以前的值。
“setstepmul” 设置收集器multiplier新的值,返回以前的值。
“isrunning” 判断收集器是否在运行。
“generational” 试验型功能。
“incremental” 垃圾回收器进入增量模式,这是默认模式。
dofile ([filename])
打开文件并且执行包含的Lua |chunk|。如果没有参数就从标准输入读取chunk。
返回全部执行结果。发生错误dofile传播错误到他的调用者(dofile没有运行
在保护模式)