Skip to main content

luaur_vm/macros/
lua_c_threadbarrier.rs

1use crate::functions::lua_c_barrierback::lua_c_barrierback;
2use crate::macros::isblack::isblack;
3use crate::macros::obj_2_gco::obj2gco;
4
5#[allow(non_snake_case)]
6#[macro_export]
7macro_rules! lua_c_threadbarrier {
8    ($L:expr) => {
9        unsafe {
10            let obj = $crate::macros::obj_2_gco::obj2gco!($L);
11            if $crate::macros::isblack::isblack!(obj) {
12                $crate::functions::lua_c_barrierback::lua_c_barrierback($L, obj, &mut (*$L).gclist);
13            }
14        }
15    };
16}
17
18pub use lua_c_threadbarrier;
19
20// C name
21#[allow(unused_imports)]
22pub use lua_c_threadbarrier as luaC_threadbarrier;