diff options
| author | Vitaly _Vi Shukela <vi0oss@gmail.com> | 2018-09-15 14:44:28 +0300 |
|---|---|---|
| committer | Vitaly _Vi Shukela <vi0oss@gmail.com> | 2018-09-16 21:43:06 +0300 |
| commit | 2f5cb6dbdc7aff9d4c5991c9eea78b5d9daed815 (patch) | |
| tree | a0ae94c5e7adcf0fdcca616a886e108e41a69d94 /src/librustc_errors | |
| parent | b6fea3255c0954456b068db8d1cdb6af464dd651 (diff) | |
| download | rust-2f5cb6dbdc7aff9d4c5991c9eea78b5d9daed815.tar.gz rust-2f5cb6dbdc7aff9d4c5991c9eea78b5d9daed815.zip | |
Add multipart_suggestion_with_applicability
Diffstat (limited to 'src/librustc_errors')
| -rw-r--r-- | src/librustc_errors/diagnostic.rs | 17 | ||||
| -rw-r--r-- | src/librustc_errors/diagnostic_builder.rs | 17 |
2 files changed, 32 insertions, 2 deletions
diff --git a/src/librustc_errors/diagnostic.rs b/src/librustc_errors/diagnostic.rs index 825e31539c8..aebfce0bf2d 100644 --- a/src/librustc_errors/diagnostic.rs +++ b/src/librustc_errors/diagnostic.rs @@ -278,10 +278,11 @@ impl Diagnostic { self } - pub fn multipart_suggestion( + pub fn multipart_suggestion_with_applicability( &mut self, msg: &str, suggestion: Vec<(Span, String)>, + applicability: Applicability, ) -> &mut Self { self.suggestions.push(CodeSuggestion { substitutions: vec![Substitution { @@ -292,11 +293,23 @@ impl Diagnostic { }], msg: msg.to_owned(), show_code_when_inline: true, - applicability: Applicability::Unspecified, + applicability, }); self } + pub fn multipart_suggestion( + &mut self, + msg: &str, + suggestion: Vec<(Span, String)>, + ) -> &mut Self { + self.multipart_suggestion_with_applicability( + msg, + suggestion, + Applicability::Unspecified + ) + } + /// Prints out a message with multiple suggested edits of the code. pub fn span_suggestions(&mut self, sp: Span, msg: &str, suggestions: Vec<String>) -> &mut Self { self.suggestions.push(CodeSuggestion { diff --git a/src/librustc_errors/diagnostic_builder.rs b/src/librustc_errors/diagnostic_builder.rs index 1b34898b990..79acf468916 100644 --- a/src/librustc_errors/diagnostic_builder.rs +++ b/src/librustc_errors/diagnostic_builder.rs @@ -187,6 +187,23 @@ impl<'a> DiagnosticBuilder<'a> { msg: &str, suggestions: Vec<String>) -> &mut Self); + + pub fn multipart_suggestion_with_applicability(&mut self, + msg: &str, + suggestion: Vec<(Span, String)>, + applicability: Applicability) + -> &mut Self { + if !self.allow_suggestions { + return self + } + self.diagnostic.multipart_suggestion_with_applicability( + msg, + suggestion, + applicability, + ); + self + } + pub fn span_suggestion_with_applicability(&mut self, sp: Span, msg: &str, |
