文件名称:Lua虚拟机和编译器GopherLua.zip
文件大小:182KB
文件格式:ZIP
更新时间:2022-08-06 22:30:47
开源项目
GopherLua 是用 Go 语言编写的 Lua 5.1 的虚拟机和编译器。GopherLua 的目标和 Lua 相同 —— 成为一个支持可扩展语义的脚本语言,提供 Go API 可方便在 Go 应用中植入 Lua 脚本语言功能。实际测试表明 GopherLua 的性能是其他同类实现的 20 倍。示例代码:import ( "github.com/yuin/gopher-lua" ) L := lua.NewState() defer L.Close() if err := L.DoString(`print("hello")`); err != nil { panic(err) } L := lua.NewState() defer L.Close() if err := L.DoFile("hello.lua"); err != nil { panic(err) } 标签:GopherLua
【文件预览】:
gopher-lua-master
----baselib.go(11KB)
----coroutinelib.go(2KB)
----mathlib.go(4KB)
----value.go(7KB)
----vm.go(40KB)
----README.rst(29KB)
----utils.go(5KB)
----opcode.go(13KB)
----oslib.go(4KB)
----stringlib.go(9KB)
----.github()
--------ISSUE_TEMPLATE.md(858B)
--------PULL_REQUEST_TEMPLATE.md(67B)
--------CONTRIBUTING.md(1KB)
----_state.go(45KB)
----state.go(49KB)
----auxlib.go(9KB)
----debuglib.go(3KB)
----_tools()
--------go-inline(3KB)
----function.go(4KB)
----state_test.go(17KB)
----LICENSE(1KB)
----script_test.go(1KB)
----_glua-tests()
--------os.lua(501B)
--------issues.lua(6KB)
--------db.lua(2KB)
--------strings.lua(407B)
--------math.lua(297B)
--------base.lua(939B)
--------coroutine.lua(339B)
--------vm.lua(5KB)
--------table.lua(719B)
----go.mod(291B)
----auxlib_test.go(8KB)
----iolib.go(15KB)
----config.go(746B)
----pm()
--------pm.go(13KB)
----alloc.go(2KB)
----_lua5.1-tests()
--------files.lua(8KB)
--------db.lua(12KB)
--------literals.lua(7KB)
--------code.lua(3KB)
--------gc.lua(7KB)
--------locals.lua(3KB)
--------attrib.lua(8KB)
--------errors.lua(6KB)
--------strings.lua(6KB)
--------closure.lua(9KB)
--------nextvar.lua(8KB)
--------libs()
--------all.lua(3KB)
--------pm.lua(9KB)
--------math.lua(5KB)
--------constructs.lua(6KB)
--------main.lua(3KB)
--------api.lua(19KB)
--------verybig.lua(2KB)
--------calls.lua(6KB)
--------vararg.lua(3KB)
--------checktable.lua(2KB)
--------README(2KB)
--------events.lua(8KB)
--------sort.lua(2KB)
--------big.lua(8KB)
----parse()
--------parser.go(27KB)
--------lexer.go(11KB)
--------parser.go.y(14KB)
--------Makefile(106B)
----channellib.go(4KB)
----package.go(266B)
----_vm.go(25KB)
----testutils_test.go(2KB)
----compile.go(44KB)
----loadlib.go(3KB)
----tablelib.go(2KB)
----go.sum(820B)
----.travis.yml(493B)
----ast()
--------ast.go(395B)
--------stmt.go(972B)
--------misc.go(191B)
--------token.go(272B)
--------expr.go(1KB)
----table.go(8KB)
----Makefile(241B)
----channellib_test.go(7KB)
----table_test.go(4KB)
----linit.go(2KB)
----cmd()
--------glua()