CreatureLib/src/GenericTemplates.cpp

17 lines
601 B
C++

/*!
\brief GetProperty creates a simple wrapper for a field, creating a private field, and a public getter method.
*/
#define GetProperty(type, name) \
private: type __##name; \
public: [[nodiscard]] inline type Get##name() const{ return __##name; };
/*!
\brief GetProperty creates a simple wrapper for a field, creating a private field, a public getter method, and a public
setter method.
*/
#define GetSetProperty(type, name) \
private: type __##name; \
public: [[nodiscard]] inline type Get##name() const{ return __##name; }; \
public: inline void Set##name(type value) { __##name = value; };