luaur_vm/macros/
setclassvalue.rs1use crate::enums::lua_type::lua_Type;
2use crate::macros::cast_to::cast_to;
3use crate::macros::checkliveness::checkliveness;
4use crate::records::gc_object::GCObject;
5
6#[allow(non_snake_case)]
7#[macro_export]
8macro_rules! setclassvalue {
9 ($L:expr, $obj:expr, $x:expr) => {
10 unsafe {
11 let i_o = $obj;
12 (*i_o).value.gc =
13 $crate::macros::cast_to::cast_to!(*mut $crate::records::gc_object::GCObject, $x);
14 (*i_o).set_tt($crate::enums::lua_type::lua_Type::LUA_TCLASS as core::ffi::c_int);
15 $crate::macros::checkliveness::checkliveness!((*$L).global, i_o);
16 }
17 };
18}
19
20pub use setclassvalue;