pub struct RegistryKey { /* fields omitted */ }
An auto generated key into the Lua registry.
This is a handle to a value stored inside the Lua registry. It is not directly usable like the
Table
or Function
handle types, but since it doesn't hold a reference to a parent Lua and is
Send + Sync + 'static, it is much more flexible and can be used in many situations where it is
impossible to directly store a normal handle type. It is not automatically garbage collected on
Drop, but it can be removed with Context::remove_registry_value
, and instances not manually
removed can be garbage collected with Context::expire_registry_values
.
Be warned, If you place this into Lua via a UserData
type or a rust callback, it is very
easy to accidentally cause reference cycles that the Lua garbage collector cannot resolve.
Instead of placing a RegistryKey
into a UserData
type, prefer instead to use
UserData::set_user_value
/ UserData::get_user_value
, and instead of moving a RegistryKey
into a callback, prefer Context::scope
.
Executes the destructor for this type. Read more
Formats the value using the given formatter. Read more
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
Immutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (try_from
)
The type returned in the event of a conversion error.
🔬 This is a nightly-only experimental API. (try_from
)
Mutably borrows from an owned value. Read more
🔬 This is a nightly-only experimental API. (get_type_id
)
this method will likely be replaced by an associated static