Skip to main content

luaur_bytecode/macros/
bc_op.rs

1#[allow(unused_macros)]
2#[macro_export]
3macro_rules! BC_OP {
4    ($name:ident, $idx:expr) => {
5        #[allow(non_upper_case_globals)]
6        pub(crate) const $name: u32 = $idx;
7
8        #[allow(non_snake_case)]
9        pub(crate) fn $name(&self) -> crate::records::bc_op::BcOp {
10            self.getBcOp($idx)
11        }
12
13        paste::paste! {
14            #[allow(non_snake_case)]
15            pub(crate) fn [<set $name>](&mut self, value: crate::records::bc_op::BcOp) {
16                self.setBcOp($idx, value);
17            }
18        }
19    };
20}
21
22pub use BC_OP;