11///|
2- // Renders warnings first and match hits second so parse failures never hide
2+ // Renders warnings first and match hits second so scan diagnostics never hide
33// successful findings from other files.
44fn render_directory_scan_result(
55 result : DirectoryScanResult ,
@@ -9,7 +9,7 @@ fn render_directory_scan_result(
99 if result.scan_trace.length() > 0 {
1010 sections.push(result.scan_trace.join("\n"))
1111 }
12- let warnings = render_skipped_file_warnings (result.skipped_files )
12+ let warnings = render_scan_warnings (result.warnings )
1313 if warnings != "" {
1414 sections.push(warnings)
1515 }
@@ -26,20 +26,25 @@ fn render_directory_scan_result(
2626}
2727
2828///|
29- fn render_skipped_file_warnings(skipped_files : Array [SkippedFile ]) -> String {
30- let warnings : Array [String ] = []
31- for skipped in skipped_files {
32- warnings .push(render_skipped_file_warning(skipped ))
29+ fn render_scan_warnings(scan_warnings : Array [ScanWarning ]) -> String {
30+ let rendered : Array [String ] = []
31+ for warning in scan_warnings {
32+ rendered .push(render_scan_warning(warning ))
3333 }
34- warnings .join("\n")
34+ rendered .join("\n")
3535}
3636
3737///|
38- fn render_skipped_file_warning(skipped : SkippedFile ) -> String {
39- if skipped.block_start_line is Some (line) {
40- "warning: skipping \{skipped.file} block starting at line \{line}: \{skipped.reason}"
41- } else {
42- "warning: skipping \{skipped.file}: \{skipped.reason}"
38+ fn render_scan_warning(warning : ScanWarning ) -> String {
39+ match warning {
40+ Parse (parse_warning) =>
41+ if parse_warning.block_start_line is Some (line) {
42+ "warning: skipping \{parse_warning.file} block starting at line \{line}: \{parse_warning.reason}"
43+ } else {
44+ "warning: skipping \{parse_warning.file}: \{parse_warning.reason}"
45+ }
46+ InvalidMoongrepSkipPayload (file, loc) =>
47+ "warning: \{format_location(file, loc)}: #moongrep.skip does not accept a payload; use bare #moongrep.skip"
4348 }
4449}
4550
0 commit comments