Skip to content

Commit 2e0db2d

Browse files
committed
introducing multipart_suggestion_with_applicability
Looks like we forgot about this analogue of the other `_with_applicability` methods (first introduced in rust-lang#50204)?
1 parent caed80b commit 2e0db2d

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed

src/librustc_errors/diagnostic.rs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,26 @@ impl Diagnostic {
332332
self
333333
}
334334

335+
pub fn multipart_suggestion_with_applicability(
336+
&mut self,
337+
msg: &str,
338+
suggestion: Vec<(Span, String)>,
339+
applicability: Applicability
340+
) -> &mut Self {
341+
self.suggestions.push(CodeSuggestion {
342+
substitutions: vec![Substitution {
343+
parts: suggestion
344+
.into_iter()
345+
.map(|(span, snippet)| SubstitutionPart { snippet, span })
346+
.collect(),
347+
}],
348+
msg: msg.to_owned(),
349+
show_code_when_inline: true,
350+
applicability,
351+
});
352+
self
353+
}
354+
335355
pub fn span_suggestions_with_applicability(&mut self, sp: Span, msg: &str,
336356
suggestions: Vec<String>,
337357
applicability: Applicability) -> &mut Self {

src/librustc_errors/diagnostic_builder.rs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,23 @@ impl<'a> DiagnosticBuilder<'a> {
205205
self
206206
}
207207

208+
pub fn multipart_suggestion_with_applicability(
209+
&mut self,
210+
msg: &str,
211+
suggestion: Vec<(Span, String)>,
212+
applicability: Applicability
213+
) -> &mut Self {
214+
if !self.allow_suggestions {
215+
return self
216+
}
217+
self.diagnostic.multipart_suggestion_with_applicability(
218+
msg,
219+
suggestion,
220+
applicability,
221+
);
222+
self
223+
}
224+
208225
pub fn span_suggestions_with_applicability(&mut self,
209226
sp: Span,
210227
msg: &str,

0 commit comments

Comments
 (0)