more config options

main
Brett 2025-04-19 16:38:57 -04:00
parent 57ddcafcda
commit dcd4bf17ee
2 changed files with 22 additions and 3 deletions

View File

@ -1,6 +1,6 @@
cmake_minimum_required(VERSION 3.20) cmake_minimum_required(VERSION 3.20)
include(cmake/color.cmake) include(cmake/color.cmake)
set(BLT_VERSION 5.3.6) set(BLT_VERSION 5.3.7)
set(BLT_TARGET BLT) set(BLT_TARGET BLT)

View File

@ -23,10 +23,19 @@
namespace blt namespace blt
{ {
#define BLT_MAKE_GETTER(TYPE, NAME) \ #define BLT_MAKE_GETTER_LVALUE(TYPE, NAME) \
TYPE& get_##NAME() { return NAME; } \ TYPE& get_##NAME() { return NAME; }
#define BLT_MAKE_GETTER_CLVALUE(TYPE, NAME) \
const TYPE& get_##NAME() const { return NAME; } const TYPE& get_##NAME() const { return NAME; }
#define BLT_MAKE_GETTER_RVALUE(TYPE, NAME) \
TYPE get_##NAME() const { return NAME; }
#define BLT_MAKE_GETTER() \
BLT_MAKE_GETTER_LVALUE(TYPE, NAME) \
BLT_MAKE_GETTER_CLVALUE(TYPE, NAME)
#define BLT_MAKE_SETTER_LVALUE(TYPE, NAME) \ #define BLT_MAKE_SETTER_LVALUE(TYPE, NAME) \
auto& set_##NAME(const TYPE& new_##NAME) \ auto& set_##NAME(const TYPE& new_##NAME) \
{ \ { \
@ -41,6 +50,16 @@ namespace blt
return *this; \ return *this; \
} }
#define BLT_MAKE_VALUE(TYPE, NAME) \
TYPE NAME; \
BLT_MAKE_GETTER_CLVALUE(TYPE, NAME) \
BLT_MAKE_SETTER_RVALUE(TYPE, NAME)
#define BLT_MAKE_VALUE_DEFAULT(TYPE, NAME, DEFAULT) \
TYPE NAME = DEFAULT; \
BLT_MAKE_GETTER_CLVALUE(TYPE, NAME) \
BLT_MAKE_SETTER_RVALUE(TYPE, NAME)
#define BLT_MAKE_SETTER(TYPE, NAME) \ #define BLT_MAKE_SETTER(TYPE, NAME) \
BLT_MAKE_SETTER_LVALUE(TYPE, NAME) \ BLT_MAKE_SETTER_LVALUE(TYPE, NAME) \
BLT_MAKE_SETTER_RVALUE(TYPE, NAME) BLT_MAKE_SETTER_RVALUE(TYPE, NAME)