From 06471e5231af1a35c30ea0480ea43c9d98d5a387 Mon Sep 17 00:00:00 2001 From: Twan van Laarhoven Date: Thu, 30 Apr 2020 17:40:36 +0200 Subject: [PATCH] Use Base::reflect instead of reflect_impl for reflecting base properties, made reflect_impl private. This should fix #8 --- src/util/reflect.hpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/util/reflect.hpp b/src/util/reflect.hpp index 8bbfb321..8f7e96db 100644 --- a/src/util/reflect.hpp +++ b/src/util/reflect.hpp @@ -23,8 +23,9 @@ /** Reflection allows the member variables of a class to be inspected at runtime. */ #define DECLARE_REFLECTION_PREFIX(PREFIX,SUFFIX) \ - protected: \ + private: \ template void reflect_impl(Handler&); \ + protected: \ friend class Reader; \ friend class Writer; \ friend class GetDefaultMember; \ @@ -101,7 +102,7 @@ #define REFLECT_NAMELESS(var) handler.handle(var) /// Declare that the variables of a base class should also be reflected -#define REFLECT_BASE(Base) Base::reflect_impl(handler) +#define REFLECT_BASE(Base) Base::reflect(handler) /// Reflect a group of declarations only when reading /** Usage: