MCPcopy Index your code
hub / github.com/RustPython/RustPython / traverse

Method traverse

crates/vm/src/builtins/type.rs:220–233  ·  view source on GitHub ↗
(&self, tracer_fn: &mut crate::object::TraverseFn<'_>)

Source from the content-addressed store, hash-verified

218
219unsafe impl crate::object::Traverse for PyType {
220 fn traverse(&self, tracer_fn: &mut crate::object::TraverseFn<'_>) {
221 self.base.traverse(tracer_fn);
222 self.bases.traverse(tracer_fn);
223 self.mro.traverse(tracer_fn);
224 self.subclasses.traverse(tracer_fn);
225 self.attributes
226 .read_recursive()
227 .iter()
228 .map(|(_, v)| v.traverse(tracer_fn))
229 .count();
230 if let Some(ext) = self.heaptype_ext.as_ref() {
231 ext.specialization_cache.traverse(tracer_fn);
232 }
233 }
234
235 /// type_clear: break reference cycles in type objects
236 fn clear(&mut self, out: &mut Vec<crate::PyObjectRef>) {

Callers

nothing calls this directly

Calls 8

countMethod · 0.45
mapMethod · 0.45
iterMethod · 0.45
as_refMethod · 0.45
derefMethod · 0.45
as_objectMethod · 0.45
readMethod · 0.45
valuesMethod · 0.45

Tested by

no test coverage detected