extern crate self as luars;
#[cfg(test)]
mod test;
mod compiler;
mod gc;
mod lib_registry;
mod lua_api;
mod lua_value;
mod lua_vm;
mod platform_time;
mod stdlib;
#[cfg(feature = "serde")]
pub mod serde;
pub use luars_derive::LuaUserData;
pub use luars_derive::lua_methods;
pub use lua_value::LuaUserdata;
pub use lua_value::UserDataBuilder;
pub use lua_value::userdata_trait::{
LuaEnum, LuaMethodProvider, LuaRegistrable, LuaStaticMethodProvider, OpaqueUserData,
RefUserData, UdValue, UserDataTrait,
};
pub use lib_registry::{LibraryModule, LibraryRegistry, LuaLibrary, PreloadModule};
pub use lua_api::*;
pub use lua_value::RustCallback;
pub use lua_value::lua_convert::{FromLua, FromLuaMulti, IntoLua};
pub use lua_value::{
LuaProto, LuaRawFunction, LuaRawTable, LuaValue, LuaValueKind, chunk_serializer::*,
};
pub use lua_vm::SafeOption;
#[cfg(feature = "sandbox")]
pub use lua_vm::SandboxConfig;
pub use lua_vm::async_thread::{
AsyncCallHandle, AsyncFuture, AsyncReturnValue, AsyncThread, IntoAsyncLua,
};
pub use lua_vm::lua_error::{LuaError, LuaFullError};
pub use lua_vm::table_builder::TableBuilder;
pub use lua_vm::{
CFunction, CallInfo, DebugInfo, GlobalState, Instruction, LuaAnyRef, LuaFunctionRef, LuaResult,
LuaState, LuaStringRef, LuaTableRef, OpCode, UserDataRef,
};
pub use lua_vm::{LUA_MASKCALL, LUA_MASKCOUNT, LUA_MASKLINE, LUA_MASKRET};
pub use stdlib::Stdlib;