errors: add emit_note
/create_note
Add `Noted` marker struct that implements `EmissionGuarantee` so that `emit_note` and `create_note` can be implemented for struct diagnostics. Signed-off-by: David Wood <david.wood@huawei.com>
This commit is contained in:
parent
1e86226e9d
commit
f8ebc72b4a
4 changed files with 78 additions and 4 deletions
|
@ -374,7 +374,7 @@ pub use diagnostic::{
|
|||
AddToDiagnostic, DecorateLint, Diagnostic, DiagnosticArg, DiagnosticArgFromDisplay,
|
||||
DiagnosticArgValue, DiagnosticId, DiagnosticStyledString, IntoDiagnosticArg, SubDiagnostic,
|
||||
};
|
||||
pub use diagnostic_builder::{DiagnosticBuilder, EmissionGuarantee};
|
||||
pub use diagnostic_builder::{DiagnosticBuilder, EmissionGuarantee, Noted};
|
||||
use std::backtrace::Backtrace;
|
||||
|
||||
/// A handler deals with errors and other compiler output.
|
||||
|
@ -988,7 +988,11 @@ impl Handler {
|
|||
}
|
||||
|
||||
pub fn has_errors(&self) -> Option<ErrorGuaranteed> {
|
||||
if self.inner.borrow().has_errors() { Some(ErrorGuaranteed(())) } else { None }
|
||||
if self.inner.borrow().has_errors() {
|
||||
Some(ErrorGuaranteed(()))
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
pub fn has_errors_or_lint_errors(&self) -> Option<ErrorGuaranteed> {
|
||||
if self.inner.borrow().has_errors_or_lint_errors() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue