1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#ifndef FNS_H
#define FNS_H
#define WRAPPER(fn, retn, ...) retn aplwc_wrapper_##fn(APLWC *aplwc, __VA_ARGS__)
#define CALLFN(fn, ...) aplwc_wrapper_##fn(aplwc, __VA_ARGS__)
WRAPPER(alloc, void *, size_t);
WRAPPER(free, void, void *);
WRAPPER(debug, void, char *);
WRAPPER(fatal, void, char *);
#define DEBUG(msg) CALLFN(debug, msg)
#define FATAL(msg) CALLFN(fatal, msg)
#define ASSERT(check, msg) do{if(!(check))FATAL(msg);}while(0)
#endif /* FNS_H */
|