Squirrel文档翻译(内置函数-全局变量和函数)

来源:互联网 发布:2017微信加粉丝软件 编辑:程序博客网 时间:2024/05/16 15:33

内置函数

Squireel虚拟机提供了一系列内置工具函数。

 

全局函数和变量


1 array(size,[fill])

创建并返回一个指定大小的数组。如果指定了可选参数fill,就会用这个fill的值去初始化数组的新槽。如果没有指定,使用null初始化填充槽。

 

2 seterrorhandler(func)

设置运行时错误处理句柄(函数)

 

3 setdebughook(hook_func)

设置debug钩子函数

 

4 enabledebuginfo(enable)

启用/禁用在编译期生成行的调试信息,enable!=null 启动。 enable==null 禁用

 

5 getroottable()

返回虚拟机的root表

 

6 setroottable(table)

设置虚拟机的root表.


7 getconsttable()

返回虚拟机的常量表.


8 setconsttable(table)

设置虚拟机的常量表.


10 assert(exp)

如果表达式是null,抛出一个异常


11 print(x)

打印x到标准输出


12 compilestring(string,[buffername])

把一个包含Squireel脚本的字符串编译到一个函数中,并且返回改函数。

 

local compiledscript=compilestring("::print(/"ciao/")");
//执行脚本   
compiledscript();

collectgarbage()

调用垃圾收集器并返回已找到的引用链数量(删除)

 

13 type(obj)

返回一个对象的裸类型,而不需要调用该对象的_typeof元方法。

 

14 getstackinfos(level)

返回指定级别的栈信息,以表的形式返回如:

 

{
func="DoStuff",//函数名
src="test.nut",//源文件名
line=10,//行号
locals = //包含局部变量的表


a=10,
testy="I'm a string"
}
}


level = 0 表示当前调用函数, level = 1 表示调用者级别等等.如果level在当前栈中不存在,返回null。


15 newthread(threadfunc)

创建一个线程对象返回。


16 _version_

以字符串形式的表示当前虚拟机和编译器的版本信息。


17 _charsize_

以字节形式表示虚拟机内部字符集的宽度(1表示ASCII版本2表示UNICODE版本)

 

18 _intsize_

以字节形式表示虚拟机内部整型的宽度(1表示32位系统2表示64位系统)

 

19 _floatsize_

以字节形式表示虚拟机内部浮点数的宽度(4表示单精度8表示双精度)

 

 

 

 


 

 

 

 

原创粉丝点击