Make Lua::push_value() and Lua::pop_value() public (but hidden from the docs).

Can be useful for low-level intergration with mlua values.
Also closes #215.
This commit is contained in:
Alex Orlenko
2023-07-11 20:03:41 +01:00
parent bfd1c29c0a
commit 9f0fc27c52
+10 -4
View File
@@ -2295,8 +2295,11 @@ impl Lua {
extra.app_data.remove()
}
// Uses 2 stack spaces, does not call checkstack
pub(crate) unsafe fn push_value(&self, value: Value) -> Result<()> {
/// Pushes a value onto the Lua stack.
///
/// Uses 2 stack spaces, does not call checkstack.
#[doc(hidden)]
pub unsafe fn push_value(&self, value: Value) -> Result<()> {
let state = self.state();
match value {
Value::Nil => {
@@ -2356,8 +2359,11 @@ impl Lua {
Ok(())
}
// Uses 2 stack spaces, does not call checkstack
pub(crate) unsafe fn pop_value(&self) -> Value {
/// Pops a value from the Lua stack.
///
/// Uses 2 stack spaces, does not call checkstack.
#[doc(hidden)]
pub unsafe fn pop_value(&self) -> Value {
let state = self.state();
match ffi::lua_type(state, -1) {
ffi::LUA_TNIL => {