#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Debug)]
pub enum LuaVersion {
Lua51,
Lua52,
Lua53,
Lua54,
MacroLua,
Lua55,
}
impl LuaVersion {
pub fn has_integers(self) -> bool {
self >= LuaVersion::Lua53
}
pub fn has_goto(self) -> bool {
self >= LuaVersion::Lua52
}
pub fn has_bitwise_ops(self) -> bool {
self >= LuaVersion::Lua53
}
pub fn has_idiv(self) -> bool {
self >= LuaVersion::Lua53
}
pub fn has_attribs(self) -> bool {
self >= LuaVersion::Lua54
}
pub fn has_hex_float(self) -> bool {
self >= LuaVersion::Lua52
}
pub fn has_extended_escapes(self) -> bool {
self >= LuaVersion::Lua52
}
pub fn has_unicode_escape(self) -> bool {
self >= LuaVersion::Lua53
}
pub fn has_empty_statement(self) -> bool {
self >= LuaVersion::Lua52
}
pub fn has_global_decl(self) -> bool {
self >= LuaVersion::Lua55
}
pub fn has_named_vararg(self) -> bool {
self >= LuaVersion::Lua55
}
pub fn has_collective_attrib(self) -> bool {
self >= LuaVersion::Lua55
}
pub fn break_is_last_statement(self) -> bool {
self == LuaVersion::Lua51
}
pub fn rejects_nested_long_string(self) -> bool {
self == LuaVersion::Lua51
}
pub fn is_macro_lua(self) -> bool {
self == LuaVersion::MacroLua
}
}