Modules

Re-exports most types with an extra Lua* prefix to prevent name clashes.
(De)Serialization support using serde.

Structs

Handle to an internal Lua userdata for any type that implements UserData.
Thread (coroutine) representation as an async Future or Stream.
Returned from Lua::load and is used to finalize loading and executing Lua main chunks.
Luau compiler
Luau function coverage snapshot.
Contains information about currently executing Lua code.
A struct with options to change default deserializer behavior.
Handle to an internal Lua function.
A “light” userdata value. Equivalent to an unmanaged raw pointer.
Top level Lua struct which represents an instance of Lua VM.
Controls Lua interpreter behavior such as Rust panics handling.
Multiple Lua values used for both argument passing and also for multiple return values.
An auto generated key into the Lua registry.
Constructed by the Lua::scope method, allows temporarily creating Lua userdata and callbacks that are not required to be Send or ’static.
A struct with options to change default serializer behavior.
Flags describing the set of lua standard libraries to load.
Handle to an internal Lua string.
Handle to an internal Lua table.
An iterator over the pairs of a Lua table.
An iterator over the sequence part of a Lua table.
Handle to an internal Lua thread (or coroutine).
Handle to a UserData metatable.
Wraps a variable number of Ts.
A raw Lua state associated with a thread.

Enums

Represents chunk mode (text or binary).
Represents a specific event that triggered the hook.
Error type returned by mlua methods.
Mode of the Lua garbage collector (GC).
Kinds of metamethods that can be overridden.
Status of a Lua thread (or coroutine).
A dynamically typed Lua value. The String, Table, Function, Thread, and UserData variants contain handle types into the internal Lua state. It is a logic error to mix handle types between separate Lua instances, and doing so will result in a panic.
Type to set next Luau VM action after executing interrupt function.

Traits

Trait for types loadable by Lua and convertible to a Chunk
Trait for types convertible from Value.
Trait for types that can be created from an arbitrary number of Lua values.
Trait for serializing/deserializing Lua values using Serde.
An extension trait for Tables that provides a variety of convenient functionality.
Trait for types convertible to Value.
Trait for types convertible to any number of Lua values.
Trait for custom userdata types.
Field registry for UserData implementors.
Method registry for UserData implementors.

Type Definitions

Type of Lua integer numbers.
Type of Lua floating point numbers.
A specialized Result type used by mlua’s API.
Type for native C functions that can be passed to Lua.