From b4b6a646b3a7a7f6c7e990c67f208b76f4b5f748 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 20 Apr 2025 12:57:07 +0530 Subject: Refactor + expose managing mode to inside lua --- src/utils.hpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'src/utils.hpp') 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 -#define DELEGATE(OBJ, METHOD, METHOD_AS) \ - template decltype(auto) METHOD_AS(Args &&...args) { \ - return OBJ->METHOD(std::forward(args)...); \ +#define DELEGATE(OBJ, METHOD, METHOD_AS) \ + template inline decltype(auto) METHOD_AS(Args &&...args) { \ + return (OBJ)->METHOD(std::forward(args)...); \ } -#define DEFINE_SETTER(METHOD, PROPERTY) \ - template void METHOD(Arg val) { PROPERTY = val; } +#define DEFINE_SETTER(METHOD, PROPERTY) \ + template 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 __deferred(nullptr, [](...) DEFERRED_BLOCK); +#define DEFER(DEFERRED_BLOCK) std::shared_ptr __deferred(nullptr, [](...) DEFERRED_BLOCK); -- cgit v1.3.1