pub trait Trace {
// Required method
fn trace(&self, m: &mut Marker);
}Expand description
Every GC-rooted type implements Trace to expose its Gc<_> fields.
The trace method visits every reachable Gc<_> and calls
Marker::mark on it. For container fields (Vec<LuaValue>, etc.) call
field.trace(m) to delegate.
§Mechanical pattern
ⓘ
impl Trace for LuaTable {
fn trace(&self, m: &mut Marker) {
for v in self.array.iter() { v.trace(m); }
if let Some(mt) = self.metatable { m.mark(mt); }
}
}Required Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".