Skip to content

Commit eec6433

Browse files
Anna Henningsenrefack
authored andcommitted
src: mark options parsers as const
These do not change their contents after being constructed. PR-URL: nodejs#25065 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Joyee Cheung <[email protected]> Reviewed-By: James M Snell <[email protected]>
1 parent 8e7403d commit eec6433

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

src/node_options-inl.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ auto OptionsParser<Options>::Convert(
201201
template <typename Options>
202202
template <typename ChildOptions>
203203
void OptionsParser<Options>::Insert(
204-
OptionsParser<ChildOptions>* child_options_parser,
204+
const OptionsParser<ChildOptions>* child_options_parser,
205205
ChildOptions* (Options::* get_child)()) {
206206
aliases_.insert(child_options_parser->aliases_.begin(),
207207
child_options_parser->aliases_.end());
@@ -274,7 +274,7 @@ void OptionsParser<Options>::Parse(
274274
std::vector<std::string>* const v8_args,
275275
Options* const options,
276276
OptionEnvvarSettings required_env_settings,
277-
std::vector<std::string>* const errors) {
277+
std::vector<std::string>* const errors) const {
278278
ArgsInfo args(orig_args, exec_args);
279279

280280
// The first entry is the process name. Make sure it ends up in the V8 argv,

src/node_options.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ DebugOptionsParser::DebugOptionsParser() {
8888
}
8989

9090
#if HAVE_INSPECTOR
91-
DebugOptionsParser DebugOptionsParser::instance;
91+
const DebugOptionsParser DebugOptionsParser::instance;
9292
#endif // HAVE_INSPECTOR
9393

9494
EnvironmentOptionsParser::EnvironmentOptionsParser() {
@@ -218,7 +218,7 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() {
218218
#endif // HAVE_INSPECTOR
219219
}
220220

221-
EnvironmentOptionsParser EnvironmentOptionsParser::instance;
221+
const EnvironmentOptionsParser EnvironmentOptionsParser::instance;
222222

223223
PerIsolateOptionsParser::PerIsolateOptionsParser() {
224224
AddOption("--track-heap-objects",
@@ -241,7 +241,7 @@ PerIsolateOptionsParser::PerIsolateOptionsParser() {
241241
&PerIsolateOptions::get_per_env_options);
242242
}
243243

244-
PerIsolateOptionsParser PerIsolateOptionsParser::instance;
244+
const PerIsolateOptionsParser PerIsolateOptionsParser::instance;
245245

246246
PerProcessOptionsParser::PerProcessOptionsParser() {
247247
AddOption("--title",
@@ -345,7 +345,7 @@ PerProcessOptionsParser::PerProcessOptionsParser() {
345345
&PerProcessOptions::get_per_isolate_options);
346346
}
347347

348-
PerProcessOptionsParser PerProcessOptionsParser::instance;
348+
const PerProcessOptionsParser PerProcessOptionsParser::instance;
349349

350350
inline std::string RemoveBrackets(const std::string& host) {
351351
if (!host.empty() && host.front() == '[' && host.back() == ']')

src/node_options.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ class OptionsParser {
275275
// a method that yields the target options type from this parser's options
276276
// type.
277277
template <typename ChildOptions>
278-
void Insert(OptionsParser<ChildOptions>* child_options_parser,
278+
void Insert(const OptionsParser<ChildOptions>* child_options_parser,
279279
ChildOptions* (Options::* get_child)());
280280

281281
// Parse a sequence of options into an options struct, a list of
@@ -300,7 +300,7 @@ class OptionsParser {
300300
std::vector<std::string>* const v8_args,
301301
Options* const options,
302302
OptionEnvvarSettings required_env_settings,
303-
std::vector<std::string>* const errors);
303+
std::vector<std::string>* const errors) const;
304304

305305
private:
306306
// We support the wide variety of different option types by remembering
@@ -391,28 +391,28 @@ class DebugOptionsParser : public OptionsParser<DebugOptions> {
391391
public:
392392
DebugOptionsParser();
393393

394-
static DebugOptionsParser instance;
394+
static const DebugOptionsParser instance;
395395
};
396396

397397
class EnvironmentOptionsParser : public OptionsParser<EnvironmentOptions> {
398398
public:
399399
EnvironmentOptionsParser();
400400

401-
static EnvironmentOptionsParser instance;
401+
static const EnvironmentOptionsParser instance;
402402
};
403403

404404
class PerIsolateOptionsParser : public OptionsParser<PerIsolateOptions> {
405405
public:
406406
PerIsolateOptionsParser();
407407

408-
static PerIsolateOptionsParser instance;
408+
static const PerIsolateOptionsParser instance;
409409
};
410410

411411
class PerProcessOptionsParser : public OptionsParser<PerProcessOptions> {
412412
public:
413413
PerProcessOptionsParser();
414414

415-
static PerProcessOptionsParser instance;
415+
static const PerProcessOptionsParser instance;
416416
};
417417

418418
} // namespace options_parser

0 commit comments

Comments
 (0)