@@ -167,23 +167,6 @@ static std::string SettingName(const std::string& arg)
167
167
return arg.size () > 0 && arg[0 ] == ' -' ? arg.substr (1 ) : arg;
168
168
}
169
169
170
- /* * Internal helper functions for ArgsManager */
171
- class ArgsManagerHelper {
172
- public:
173
- /* * Determine whether to use config settings in the default section,
174
- * See also comments around ArgsManager::ArgsManager() below. */
175
- static inline bool UseDefaultSection (const ArgsManager& am, const std::string& arg) EXCLUSIVE_LOCKS_REQUIRED(am.cs_args)
176
- {
177
- return (am.m_network == CBaseChainParams::MAIN || am.m_network_only_args .count (arg) == 0 );
178
- }
179
-
180
- static util::SettingsValue Get (const ArgsManager& am, const std::string& arg)
181
- {
182
- LOCK (am.cs_args );
183
- return GetSetting (am.m_settings , am.m_network , SettingName (arg), !UseDefaultSection (am, arg), /* get_chain_name= */ false );
184
- }
185
- };
186
-
187
170
/* *
188
171
* Interpret -nofoo as if the user supplied -foo=0.
189
172
*
@@ -370,7 +353,7 @@ Optional<unsigned int> ArgsManager::GetArgFlags(const std::string& name) const
370
353
std::vector<std::string> ArgsManager::GetArgs (const std::string& strArg) const
371
354
{
372
355
LOCK (cs_args);
373
- bool ignore_default_section_config = !ArgsManagerHelper:: UseDefaultSection (* this , strArg);
356
+ bool ignore_default_section_config = !UseDefaultSection (strArg);
374
357
std::vector<std::string> result;
375
358
for (const util::SettingsValue& value :
376
359
util::GetSettingsList (m_settings, m_network, SettingName (strArg), ignore_default_section_config)) {
@@ -381,29 +364,29 @@ std::vector<std::string> ArgsManager::GetArgs(const std::string& strArg) const
381
364
382
365
bool ArgsManager::IsArgSet (const std::string& strArg) const
383
366
{
384
- return !ArgsManagerHelper::Get (* this , strArg).isNull ();
367
+ return !GetSetting ( strArg).isNull ();
385
368
}
386
369
387
370
bool ArgsManager::IsArgNegated (const std::string& strArg) const
388
371
{
389
- return ArgsManagerHelper::Get (* this , strArg).isFalse ();
372
+ return GetSetting ( strArg).isFalse ();
390
373
}
391
374
392
375
std::string ArgsManager::GetArg (const std::string& strArg, const std::string& strDefault) const
393
376
{
394
- const util::SettingsValue value = ArgsManagerHelper::Get (* this , strArg);
377
+ const util::SettingsValue value = GetSetting ( strArg);
395
378
return value.isNull () ? strDefault : value.isFalse () ? " 0" : value.isTrue () ? " 1" : value.get_str ();
396
379
}
397
380
398
381
int64_t ArgsManager::GetArg (const std::string& strArg, int64_t nDefault) const
399
382
{
400
- const util::SettingsValue value = ArgsManagerHelper::Get (* this , strArg);
383
+ const util::SettingsValue value = GetSetting ( strArg);
401
384
return value.isNull () ? nDefault : value.isFalse () ? 0 : value.isTrue () ? 1 : value.isNum () ? value.get_int64 () : atoi64 (value.get_str ());
402
385
}
403
386
404
387
bool ArgsManager::GetBoolArg (const std::string& strArg, bool fDefault ) const
405
388
{
406
- const util::SettingsValue value = ArgsManagerHelper::Get (* this , strArg);
389
+ const util::SettingsValue value = GetSetting ( strArg);
407
390
return value.isNull () ? fDefault : value.isBool () ? value.get_bool () : InterpretBool (value.get_str ());
408
391
}
409
392
@@ -854,9 +837,9 @@ std::string ArgsManager::GetChainName() const
854
837
{
855
838
auto get_net = [&](const std::string& arg) {
856
839
LOCK (cs_args);
857
- util::SettingsValue value = GetSetting (m_settings, /* section= */ " " , SettingName (arg),
858
- /* ignore_default_section_config= */ false ,
859
- /* get_chain_name= */ true );
840
+ util::SettingsValue value = util:: GetSetting (m_settings, /* section= */ " " , SettingName (arg),
841
+ /* ignore_default_section_config= */ false ,
842
+ /* get_chain_name= */ true );
860
843
return value.isNull () ? false : value.isBool () ? value.get_bool () : InterpretBool (value.get_str ());
861
844
};
862
845
@@ -874,6 +857,18 @@ std::string ArgsManager::GetChainName() const
874
857
return GetArg (" -chain" , CBaseChainParams::MAIN);
875
858
}
876
859
860
+ bool ArgsManager::UseDefaultSection (const std::string& arg) const
861
+ {
862
+ return m_network == CBaseChainParams::MAIN || m_network_only_args.count (arg) == 0 ;
863
+ }
864
+
865
+ util::SettingsValue ArgsManager::GetSetting (const std::string& arg) const
866
+ {
867
+ LOCK (cs_args);
868
+ return util::GetSetting (
869
+ m_settings, m_network, SettingName (arg), !UseDefaultSection (arg), /* get_chain_name= */ false );
870
+ }
871
+
877
872
bool RenameOver (fs::path src, fs::path dest)
878
873
{
879
874
#ifdef WIN32
0 commit comments