aboutsummaryrefslogtreecommitdiff
path: root/src/utils.hpp
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2025-04-20 12:57:07 +0530
committerAkshay Nair <phenax5@gmail.com>2025-05-02 16:15:17 +0530
commitb4b6a646b3a7a7f6c7e990c67f208b76f4b5f748 (patch)
tree7f18775a63594acf0187668af63766dd72b9f66f /src/utils.hpp
parent75157006bf6f1176f64e87695343980b16908bb6 (diff)
downloadnull-browser-b4b6a646b3a7a7f6c7e990c67f208b76f4b5f748.tar.gz
null-browser-b4b6a646b3a7a7f6c7e990c67f208b76f4b5f748.zip
Refactor + expose managing mode to inside lua
Diffstat (limited to 'src/utils.hpp')
-rw-r--r--src/utils.hpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/utils.hpp b/src/utils.hpp
index d7ca4c0..2a49bd3 100644
--- a/src/utils.hpp
+++ b/src/utils.hpp
@@ -2,16 +2,15 @@
#include <memory>
-#define DELEGATE(OBJ, METHOD, METHOD_AS) \
- template <typename... Args> decltype(auto) METHOD_AS(Args &&...args) { \
- return OBJ->METHOD(std::forward<Args>(args)...); \
+#define DELEGATE(OBJ, METHOD, METHOD_AS) \
+ template <typename... Args> inline decltype(auto) METHOD_AS(Args &&...args) { \
+ return (OBJ)->METHOD(std::forward<Args>(args)...); \
}
-#define DEFINE_SETTER(METHOD, PROPERTY) \
- template <typename Arg> void METHOD(Arg val) { PROPERTY = val; }
+#define DEFINE_SETTER(METHOD, PROPERTY) \
+ template <typename Arg> inline void METHOD(Arg val) { PROPERTY = val; }
-#define DEFINE_GETTER(METHOD, EXPR) \
- decltype(auto) METHOD() { return EXPR; }
+#define DEFINE_GETTER(METHOD, EXPR) \
+ decltype(auto) inline METHOD() const { return EXPR; }
-#define DEFER(DEFERRED_BLOCK) \
- std::shared_ptr<void> __deferred(nullptr, [](...) DEFERRED_BLOCK);
+#define DEFER(DEFERRED_BLOCK) std::shared_ptr<void> __deferred(nullptr, [](...) DEFERRED_BLOCK);