Skip to content

Commit

Permalink
Change all 'optflag' arguments to 'optflagmulti'
Browse files Browse the repository at this point in the history
Because specifying these flags multiple times will never be discernibly different in functionality from specifying them a single time, there is no reason to fail and report an error to the user.
  • Loading branch information
zachlute committed Jul 10, 2021
1 parent 8b87e85 commit 5302539
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 15 deletions.
30 changes: 15 additions & 15 deletions src/librustdoc/lib.rs
Expand Up @@ -269,9 +269,9 @@ fn opts() -> Vec<RustcOptGroup> {
let stable: fn(_, fn(&mut getopts::Options) -> &mut _) -> _ = RustcOptGroup::stable;
let unstable: fn(_, fn(&mut getopts::Options) -> &mut _) -> _ = RustcOptGroup::unstable;
vec![
stable("h", |o| o.optflag("h", "help", "show this help message")),
stable("V", |o| o.optflag("V", "version", "print rustdoc's version")),
stable("v", |o| o.optflag("v", "verbose", "use verbose output")),
stable("h", |o| o.optflagmulti("h", "help", "show this help message")),
stable("V", |o| o.optflagmulti("V", "version", "print rustdoc's version")),
stable("v", |o| o.optflagmulti("v", "verbose", "use verbose output")),
stable("r", |o| {
o.optopt("r", "input-format", "the input type of the specified file", "[rust]")
}),
Expand Down Expand Up @@ -309,14 +309,14 @@ fn opts() -> Vec<RustcOptGroup> {
)
}),
stable("plugins", |o| o.optmulti("", "plugins", "removed", "PLUGINS")),
stable("no-default", |o| o.optflag("", "no-defaults", "don't run the default passes")),
stable("no-default", |o| o.optflagmulti("", "no-defaults", "don't run the default passes")),
stable("document-private-items", |o| {
o.optflag("", "document-private-items", "document private items")
o.optflagmulti("", "document-private-items", "document private items")
}),
unstable("document-hidden-items", |o| {
o.optflag("", "document-hidden-items", "document items that have doc(hidden)")
o.optflagmulti("", "document-hidden-items", "document items that have doc(hidden)")
}),
stable("test", |o| o.optflag("", "test", "run code examples as tests")),
stable("test", |o| o.optflagmulti("", "test", "run code examples as tests")),
stable("test-args", |o| {
o.optmulti("", "test-args", "arguments to pass to the test runner", "ARGS")
}),
Expand Down Expand Up @@ -386,7 +386,7 @@ fn opts() -> Vec<RustcOptGroup> {
o.optopt("", "markdown-playground-url", "URL to send code snippets to", "URL")
}),
stable("markdown-no-toc", |o| {
o.optflag("", "markdown-no-toc", "don't include table of contents")
o.optflagmulti("", "markdown-no-toc", "don't include table of contents")
}),
stable("e", |o| {
o.optopt(
Expand All @@ -412,13 +412,13 @@ fn opts() -> Vec<RustcOptGroup> {
)
}),
unstable("display-warnings", |o| {
o.optflag("", "display-warnings", "to print code warnings when testing doc")
o.optflagmulti("", "display-warnings", "to print code warnings when testing doc")
}),
stable("crate-version", |o| {
o.optopt("", "crate-version", "crate version to print into documentation", "VERSION")
}),
unstable("sort-modules-by-appearance", |o| {
o.optflag(
o.optflagmulti(
"",
"sort-modules-by-appearance",
"sort modules by where they appear in the program, rather than alphabetically",
Expand Down Expand Up @@ -495,7 +495,7 @@ fn opts() -> Vec<RustcOptGroup> {
o.optopt("", "json", "Configure the structure of JSON diagnostics", "CONFIG")
}),
unstable("disable-minification", |o| {
o.optflag("", "disable-minification", "Disable minification applied on JS files")
o.optflagmulti("", "disable-minification", "Disable minification applied on JS files")
}),
stable("warn", |o| o.optmulti("W", "warn", "Set lint warnings", "OPT")),
stable("allow", |o| o.optmulti("A", "allow", "Set lint allowed", "OPT")),
Expand Down Expand Up @@ -523,7 +523,7 @@ fn opts() -> Vec<RustcOptGroup> {
o.optopt("", "index-page", "Markdown file to be used as index page", "PATH")
}),
unstable("enable-index-page", |o| {
o.optflag("", "enable-index-page", "To enable generation of the index page")
o.optflagmulti("", "enable-index-page", "To enable generation of the index page")
}),
unstable("static-root-path", |o| {
o.optopt(
Expand All @@ -535,7 +535,7 @@ fn opts() -> Vec<RustcOptGroup> {
)
}),
unstable("disable-per-crate-search", |o| {
o.optflag(
o.optflagmulti(
"",
"disable-per-crate-search",
"disables generating the crate selector on the search box",
Expand All @@ -550,14 +550,14 @@ fn opts() -> Vec<RustcOptGroup> {
)
}),
unstable("show-coverage", |o| {
o.optflag(
o.optflagmulti(
"",
"show-coverage",
"calculate percentage of public items with documentation",
)
}),
unstable("enable-per-target-ignores", |o| {
o.optflag(
o.optflagmulti(
"",
"enable-per-target-ignores",
"parse ignore-foo for ignoring doctests on a per-target basis",
Expand Down
4 changes: 4 additions & 0 deletions src/test/rustdoc/duplicate-flags.rs
@@ -0,0 +1,4 @@
// compile-flags: --document-private-items --document-private-items

// @has duplicate_flags/struct.Private.html
struct Private;

0 comments on commit 5302539

Please sign in to comment.