52 lines
995 B
Go
52 lines
995 B
Go
package luajit
|
|
|
|
/*
|
|
#include <lua.h>
|
|
*/
|
|
import "C"
|
|
|
|
// LuaType represents Lua value types
|
|
type LuaType int
|
|
|
|
const (
|
|
// These constants must match lua.h's LUA_T* values
|
|
TypeNone LuaType = -1
|
|
TypeNil LuaType = 0
|
|
TypeBoolean LuaType = 1
|
|
TypeLightUserData LuaType = 2
|
|
TypeNumber LuaType = 3
|
|
TypeString LuaType = 4
|
|
TypeTable LuaType = 5
|
|
TypeFunction LuaType = 6
|
|
TypeUserData LuaType = 7
|
|
TypeThread LuaType = 8
|
|
)
|
|
|
|
// String returns the string representation of the Lua type
|
|
func (t LuaType) String() string {
|
|
switch t {
|
|
case TypeNone:
|
|
return "none"
|
|
case TypeNil:
|
|
return "nil"
|
|
case TypeBoolean:
|
|
return "boolean"
|
|
case TypeLightUserData:
|
|
return "lightuserdata"
|
|
case TypeNumber:
|
|
return "number"
|
|
case TypeString:
|
|
return "string"
|
|
case TypeTable:
|
|
return "table"
|
|
case TypeFunction:
|
|
return "function"
|
|
case TypeUserData:
|
|
return "userdata"
|
|
case TypeThread:
|
|
return "thread"
|
|
default:
|
|
return "unknown"
|
|
}
|
|
}
|