mirror of https://github.com/Hilbis/Hilbish
20 lines
474 B
Go
20 lines
474 B
Go
package util
|
|
|
|
import (
|
|
rt "github.com/arnodel/golua/runtime"
|
|
)
|
|
|
|
// LuaExport represents a Go function which can be exported to Lua.
|
|
type LuaExport struct {
|
|
Function rt.GoFunctionFunc
|
|
ArgNum int
|
|
Variadic bool
|
|
}
|
|
|
|
// SetExports puts the Lua function exports in the table.
|
|
func SetExports(rtm *rt.Runtime, tbl *rt.Table, exports map[string]LuaExport) {
|
|
for name, export := range exports {
|
|
rtm.SetEnvGoFunc(tbl, name, export.Function, export.ArgNum, export.Variadic)
|
|
}
|
|
}
|