英文版 Golang lua迷你项目
- bit(位操作)
- buffer(缓冲区)
- crypto(加密)
- fs(文件)
- hash(哈希)
- io(IO)
- net(网络)
- regexp(正则)
- store(存储)
- http/sock5代理层
- lua池
- 文件系统
go get -u github.com/vlorc/lua-vm
- 创建池
pool.NewLuaPool()
- 预加载
pool.NewLuaPool().Preload(
pool.Source(strings.NewReader("print('hello')")),
pool.Value("tobuffer", base.ToBuffer),
)
- TCP使用
import (
"github.com/vlorc/lua-vm/pool"
"github.com/vlorc/lua-vm/net/tcp"
"github.com/vlorc/lua-vm/net/base"
)
func main() {
p := pool.NewLuaPool().Preload(
pool.Module("net.tcp", tcp.NewTCPFactory(driver.DirectDriver{})),
pool.Module("buffer", base.BufferFactory{}),
)
if err := p.DoFile("demo/tcp.lua"); nil != err {
println("error: ", err.Error())
}
}