1
Fork 0

Skip querying each ignore directive if none in file

This commit is contained in:
Mark Rousskov 2019-06-21 13:16:41 -04:00
parent d619e44a55
commit 7dd7c0ff0a

View file

@ -107,7 +107,11 @@ enum Directive {
Ignore(bool),
}
fn contains_ignore_directive(contents: &str, check: &str) -> Directive {
fn contains_ignore_directive(can_contain: bool, contents: &str, check: &str) -> Directive {
if !can_contain {
return Directive::Deny;
}
// Update `can_contain` when changing this
if contents.contains(&format!("// ignore-tidy-{}", check)) ||
contents.contains(&format!("# ignore-tidy-{}", check)) {
Directive::Ignore(false)
@ -140,12 +144,15 @@ pub fn check(path: &Path, bad: &mut bool) {
tidy_error!(bad, "{}: empty file", file.display());
}
let mut skip_cr = contains_ignore_directive(&contents, "cr");
let mut skip_tab = contains_ignore_directive(&contents, "tab");
let mut skip_line_length = contains_ignore_directive(&contents, "linelength");
let mut skip_file_length = contains_ignore_directive(&contents, "filelength");
let mut skip_end_whitespace = contains_ignore_directive(&contents, "end-whitespace");
let mut skip_copyright = contains_ignore_directive(&contents, "copyright");
let can_contain = contents.contains("// ignore-tidy-") ||
contents.contains("# ignore-tidy-");
let mut skip_cr = contains_ignore_directive(can_contain, &contents, "cr");
let mut skip_tab = contains_ignore_directive(can_contain, &contents, "tab");
let mut skip_line_length = contains_ignore_directive(can_contain, &contents, "linelength");
let mut skip_file_length = contains_ignore_directive(can_contain, &contents, "filelength");
let mut skip_end_whitespace =
contains_ignore_directive(can_contain, &contents, "end-whitespace");
let mut skip_copyright = contains_ignore_directive(can_contain, &contents, "copyright");
let mut leading_new_lines = false;
let mut trailing_new_lines = 0;
let mut lines = 0;