Skip to content

Commit 7dd7c0f

Browse files
Skip querying each ignore directive if none in file
1 parent d619e44 commit 7dd7c0f

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

Diff for: src/tools/tidy/src/style.rs

+14-7
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,11 @@ enum Directive {
107107
Ignore(bool),
108108
}
109109

110-
fn contains_ignore_directive(contents: &str, check: &str) -> Directive {
110+
fn contains_ignore_directive(can_contain: bool, contents: &str, check: &str) -> Directive {
111+
if !can_contain {
112+
return Directive::Deny;
113+
}
114+
// Update `can_contain` when changing this
111115
if contents.contains(&format!("// ignore-tidy-{}", check)) ||
112116
contents.contains(&format!("# ignore-tidy-{}", check)) {
113117
Directive::Ignore(false)
@@ -140,12 +144,15 @@ pub fn check(path: &Path, bad: &mut bool) {
140144
tidy_error!(bad, "{}: empty file", file.display());
141145
}
142146

143-
let mut skip_cr = contains_ignore_directive(&contents, "cr");
144-
let mut skip_tab = contains_ignore_directive(&contents, "tab");
145-
let mut skip_line_length = contains_ignore_directive(&contents, "linelength");
146-
let mut skip_file_length = contains_ignore_directive(&contents, "filelength");
147-
let mut skip_end_whitespace = contains_ignore_directive(&contents, "end-whitespace");
148-
let mut skip_copyright = contains_ignore_directive(&contents, "copyright");
147+
let can_contain = contents.contains("// ignore-tidy-") ||
148+
contents.contains("# ignore-tidy-");
149+
let mut skip_cr = contains_ignore_directive(can_contain, &contents, "cr");
150+
let mut skip_tab = contains_ignore_directive(can_contain, &contents, "tab");
151+
let mut skip_line_length = contains_ignore_directive(can_contain, &contents, "linelength");
152+
let mut skip_file_length = contains_ignore_directive(can_contain, &contents, "filelength");
153+
let mut skip_end_whitespace =
154+
contains_ignore_directive(can_contain, &contents, "end-whitespace");
155+
let mut skip_copyright = contains_ignore_directive(can_contain, &contents, "copyright");
149156
let mut leading_new_lines = false;
150157
let mut trailing_new_lines = 0;
151158
let mut lines = 0;

0 commit comments

Comments
 (0)