luaur_vm/macros/lua_c_init.rs
1#[allow(non_snake_case)]
2#[macro_export]
3macro_rules! luaC_init {
4 ($L:expr, $o:expr, $tt_:expr) => {{
5 let l_state = $L;
6 // every GC type embeds GCheader at offset 0 (the C++ casts to GCObject*)
7 let hdr = $o as *mut $crate::records::g_cheader::GCheader;
8 let tt = $tt_;
9 (*hdr).marked = $crate::macros::lua_c_white::luaC_white!((*l_state).global);
10 (*hdr).tt = tt as u8;
11 (*hdr).memcat = (*l_state).activememcat;
12 }};
13}
14
15pub use luaC_init;