summaryrefslogtreecommitdiffhomepage
path: root/include/rodeo/common.h
diff options
context:
space:
mode:
authorrealtradam <[email protected]>2023-04-14 16:45:29 -0400
committerrealtradam <[email protected]>2023-04-14 16:45:29 -0400
commit4b9437a5bf8dea4475a2dd5f433ee9729d6493c2 (patch)
tree7e4d76abcae19747043d29d87cfe85b99b2c625c /include/rodeo/common.h
parent3387c9fef273f2cc0674ea77ed950c0965299c4e (diff)
downloadRodeoKit-4b9437a5bf8dea4475a2dd5f433ee9729d6493c2.tar.gz
RodeoKit-4b9437a5bf8dea4475a2dd5f433ee9729d6493c2.zip
split off logging into seperate files
Diffstat (limited to 'include/rodeo/common.h')
-rw-r--r--include/rodeo/common.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/rodeo/common.h b/include/rodeo/common.h
new file mode 100644
index 0000000..886a82c
--- /dev/null
+++ b/include/rodeo/common.h
@@ -0,0 +1,20 @@
+
+#define mrodeo_name_concat(prefix, suffix) prefix##suffix
+
+#define mrodeo_macrovar(prefix) mrodeo_name_concat(prefix##_, __LINE__)
+
+#define mrodeo_defer_do(start, end) \
+ for( \
+ int mrodeo_macrovar(_macrovar_) = (start, 0); \
+ !mrodeo_macrovar(_macrovar_); \
+ (mrodeo_macrovar(_macrovar_) += 1), end \
+ ) \
+
+#define \
+mrodeo_vargs_do(final_arg) \
+ va_list vargs; \
+ mrodeo_defer_do( \
+ va_start(vargs, final_arg), \
+ va_end(vargs) \
+ ) \
+