diff options
| author | Jacob Pratt <jacob@jhpratt.dev> | 2025-04-13 17:37:54 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-13 17:37:54 -0400 |
| commit | a04a03720e47b06ed88aefbd6e622ed49df51f82 (patch) | |
| tree | 10d9d8e26607d0e976eb2ece5c1f8fffe3d2f244 /compiler/rustc_span | |
| parent | cd09162ac78628c849a7425230e9f71d4b932f52 (diff) | |
| parent | f97da855b1bbeecb0313023c9b4503eb82649fec (diff) | |
Rollup merge of #139628 - makai410:suggest-vis, r=compiler-errors
Suggest remove redundant `$()?` around `vis` Resolves: #139480 .
Diffstat (limited to 'compiler/rustc_span')
| -rw-r--r-- | compiler/rustc_span/src/source_map.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/compiler/rustc_span/src/source_map.rs b/compiler/rustc_span/src/source_map.rs index 6fdf8e46fec..0273bb040f4 100644 --- a/compiler/rustc_span/src/source_map.rs +++ b/compiler/rustc_span/src/source_map.rs @@ -633,6 +633,24 @@ impl SourceMap { sp } + /// Extends the given `Span` to just before the previous occurrence of `c`. Return the same span + /// if an error occurred while retrieving the code snippet. + pub fn span_extend_to_prev_char_before( + &self, + sp: Span, + c: char, + accept_newlines: bool, + ) -> Span { + if let Ok(prev_source) = self.span_to_prev_source(sp) { + let prev_source = prev_source.rsplit(c).next().unwrap_or(""); + if accept_newlines || !prev_source.contains('\n') { + return sp.with_lo(BytePos(sp.lo().0 - prev_source.len() as u32 - 1_u32)); + } + } + + sp + } + /// Extends the given `Span` to just after the previous occurrence of `pat` when surrounded by /// whitespace. Returns None if the pattern could not be found or if an error occurred while /// retrieving the code snippet. |
