diff --git a/README.md b/README.md index 370cbafb..4e43dfd8 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,7 @@ Installs a few cmake ingredients, along with a build assistant `xo-build` for X $ xo-build --clone --configure --build --install xo-indentlog $ xo-build --clone --configure --build --install xo-refnct $ xo-build --clone --configure --build --install xo-subsys +$ xo-build --clone --configure --build --install xo-reflectutil ``` Note: can use `-n` to dry-run here diff --git a/include/xo/reflect/TypeDescr.hpp b/include/xo/reflect/TypeDescr.hpp index 034f9e1c..870d3561 100644 --- a/include/xo/reflect/TypeDescr.hpp +++ b/include/xo/reflect/TypeDescr.hpp @@ -352,7 +352,10 @@ namespace xo { /* call this once to attach extended type information to a type-description * (e.g. description of struct members for a record type) */ - void assign_tdextra(std::unique_ptr tdx); + void assign_tdextra(std::unique_ptr tdx) { + this->complete_flag_ = true; + this->tdextra_ = std::move(tdx); + } private: TypeDescrBase(TypeId id, diff --git a/src/reflect/TypeDescr.cpp b/src/reflect/TypeDescr.cpp index 41f5204e..9bb4bc39 100644 --- a/src/reflect/TypeDescr.cpp +++ b/src/reflect/TypeDescr.cpp @@ -288,6 +288,7 @@ namespace xo { return retval; } /*mark_complete*/ +#ifdef NOT_USING void TypeDescrBase::assign_tdextra(std::unique_ptr tdx) { @@ -302,6 +303,7 @@ namespace xo { this->complete_flag_ = true; this->tdextra_ = std::move(tdx); } /*assign_tdextra*/ +#endif TypeDescrTable::TypeDescrTable() { Reflect::require();