24 ConfigVariableBase(
const std::string &name,
25 ConfigVariableBase::ValueType value_type,
26 const std::string &description,
int flags) :
30 if (was_unconstructed()) {
32 <<
"Late constructing " <<
this <<
": " << name <<
"\n";
36 if (value_type != VT_undefined) {
37 _core->set_value_type(value_type);
39 #ifdef PRC_SAVE_DESCRIPTIONS
40 if (!description.empty()) {
41 _core->set_description(description);
43 #endif // PRC_SAVE_DESCRIPTIONS
45 _core->set_flags(flags);
55 void ConfigVariableBase::
56 record_unconstructed()
const {
58 if (_unconstructed ==
nullptr) {
59 _unconstructed =
new Unconstructed;
61 _unconstructed->insert(
this);
69 bool ConfigVariableBase::
70 was_unconstructed()
const {
72 if (_unconstructed !=
nullptr) {
73 Unconstructed::const_iterator ui = _unconstructed->find(
this);
74 if (ui != _unconstructed->end()) {