diff --git a/src/serde/de.rs b/src/serde/de.rs index 20a9224..376bd94 100644 --- a/src/serde/de.rs +++ b/src/serde/de.rs @@ -71,7 +71,7 @@ impl Options { /// /// [`deny_recursive_tables`]: #structfield.deny_recursive_tables #[must_use] - pub fn deny_recursive_tables(mut self, enabled: bool) -> Self { + pub const fn deny_recursive_tables(mut self, enabled: bool) -> Self { self.deny_recursive_tables = enabled; self } diff --git a/src/serde/mod.rs b/src/serde/mod.rs index 74f0681..d0040f1 100644 --- a/src/serde/mod.rs +++ b/src/serde/mod.rs @@ -10,7 +10,7 @@ use crate::ffi; use crate::lua::Lua; use crate::table::Table; use crate::types::LightUserData; -use crate::util::{assert_stack, check_stack, StackGuard}; +use crate::util::check_stack; use crate::value::Value; /// Trait for serializing/deserializing Lua values using Serde. @@ -205,12 +205,8 @@ impl<'lua> LuaSerdeExt<'lua> for Lua { fn array_metatable(&'lua self) -> Table<'lua> { unsafe { - let _sg = StackGuard::new(self.state); - assert_stack(self.state, 1); - - push_array_metatable(self.state); - - Table(self.pop_ref()) + push_array_metatable(self.ref_thread()); + Table(self.pop_ref_thread()) } }