@@ -6,7 +6,7 @@ namespace nix {
66
77bool GlobalConfig::set (const std::string & name, const std::string & value)
88{
9- for (auto & config : * configRegistrations)
9+ for (auto & config : configRegistrations () )
1010 if (config->set (name, value))
1111 return true ;
1212
@@ -17,20 +17,20 @@ bool GlobalConfig::set(const std::string & name, const std::string & value)
1717
1818void GlobalConfig::getSettings (std::map<std::string, SettingInfo> & res, bool overriddenOnly)
1919{
20- for (auto & config : * configRegistrations)
20+ for (auto & config : configRegistrations () )
2121 config->getSettings (res, overriddenOnly);
2222}
2323
2424void GlobalConfig::resetOverridden ()
2525{
26- for (auto & config : * configRegistrations)
26+ for (auto & config : configRegistrations () )
2727 config->resetOverridden ();
2828}
2929
3030nlohmann::json GlobalConfig::toJSON ()
3131{
3232 auto res = nlohmann::json::object ();
33- for (const auto & config : * configRegistrations)
33+ for (const auto & config : configRegistrations () )
3434 res.update (config->toJSON ());
3535 return res;
3636}
@@ -47,19 +47,15 @@ std::string GlobalConfig::toKeyValue()
4747
4848void GlobalConfig::convertToArgs (Args & args, const std::string & category)
4949{
50- for (auto & config : * configRegistrations)
50+ for (auto & config : configRegistrations () )
5151 config->convertToArgs (args, category);
5252}
5353
5454GlobalConfig globalConfig;
5555
56- GlobalConfig::ConfigRegistrations * GlobalConfig::configRegistrations;
57-
5856GlobalConfig::Register::Register (Config * config)
5957{
60- if (!configRegistrations)
61- configRegistrations = new ConfigRegistrations;
62- configRegistrations->emplace_back (config);
58+ configRegistrations ().emplace_back (config);
6359}
6460
6561ExperimentalFeatureSettings experimentalFeatureSettings;
0 commit comments