use crate::ffi::lua::*;
#[repr(i32)]
pub enum Type {
None = LUA_TNONE,
Nil = LUA_TNIL,
Boolean = LUA_TBOOLEAN,
LightUserdata = LUA_TLIGHTUSERDATA,
Number = LUA_TNUMBER,
String = LUA_TSTRING,
Table = LUA_TTABLE,
Function = LUA_TFUNCTION,
Userdata = LUA_TUSERDATA,
Thread = LUA_TTHREAD,
}
impl From<i32> for Type {
fn from(value: i32) -> Self {
match value {
LUA_TNIL => Type::Nil,
LUA_TBOOLEAN => Type::Boolean,
LUA_TLIGHTUSERDATA => Type::LightUserdata,
LUA_TNUMBER => Type::Number,
LUA_TSTRING => Type::String,
LUA_TTABLE => Type::Table,
LUA_TFUNCTION => Type::Function,
LUA_TUSERDATA => Type::Userdata,
LUA_TTHREAD => Type::Thread,
_ => Type::None,
}
}
}