async_load/ds_map/
internals.rs1use super::*;
2
3macro_rules! define_internal_call {
9 ($name:ty, $fun_type:ty) => { paste! {
10 static mut [<ADDR_ $name>]: FnAddr = 0;
12 pub(super) static mut [<FN_ $name>]: *mut $fun_type = std::ptr::null_mut();
14
15 pub(super) unsafe fn [<register_ $name:lower>](addr: FnAddr) {
17 [<ADDR_ $name>] = addr;
18 [<FN_ $name>] = (&[<ADDR_ $name>] as *const FnAddr) as *mut $fun_type;
19 }
20 } }
21}
22
23define_internal_call!(EVENT_PERFORM_ASYNC, EventPerformAsync);
24define_internal_call!(DS_MAP_CREATE, DsMapCreate);
25define_internal_call!(DS_MAP_ADD_DOUBLE, DsMapAddDouble);
26define_internal_call!(DS_MAP_ADD_STRING, DsMapAddString);