summaryrefslogtreecommitdiff
path: root/src/core/fns.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/fns.h')
-rw-r--r--src/core/fns.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/core/fns.h b/src/core/fns.h
new file mode 100644
index 0000000..024dede
--- /dev/null
+++ b/src/core/fns.h
@@ -0,0 +1,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 */ \ No newline at end of file