luaur_vm/functions/
traverseobject.rs1use crate::macros::markobject::markobject;
2use crate::macros::markvalue::markvalue;
3use crate::records::global_state::global_State;
4use crate::records::lua_t_value::TValue;
5use crate::records::luau_object::LuauObject;
6
7#[allow(non_snake_case)]
8pub fn traverseobject(g: *mut global_State, classinst: *mut LuauObject) {
9 unsafe {
10 markobject!(g, (*classinst).lclass);
12
13 let numberofmembers = (*classinst).numberofmembers;
16 let members = (*classinst).members;
17 for i in 0..numberofmembers as usize {
18 let member_ptr = members.add(i);
19 markvalue!(g, member_ptr as *mut TValue);
20 }
21 }
22}