rust/crates/hir_def/src/body/diagnostics.rs

29 lines
793 B
Rust
Raw Normal View History

2020-10-23 19:27:04 +02:00
//! Diagnostics emitted during body lowering.
use hir_expand::diagnostics::DiagnosticSink;
2020-12-01 12:40:03 +01:00
use crate::diagnostics::{InactiveCode, MacroError, UnresolvedProcMacro};
2020-10-23 19:27:04 +02:00
#[derive(Debug, Eq, PartialEq)]
2020-11-02 16:31:38 +01:00
pub(crate) enum BodyDiagnostic {
2020-10-23 19:27:04 +02:00
InactiveCode(InactiveCode),
MacroError(MacroError),
2020-12-01 12:40:03 +01:00
UnresolvedProcMacro(UnresolvedProcMacro),
2020-10-23 19:27:04 +02:00
}
impl BodyDiagnostic {
2020-11-02 16:31:38 +01:00
pub(crate) fn add_to(&self, sink: &mut DiagnosticSink<'_>) {
2020-10-23 19:27:04 +02:00
match self {
BodyDiagnostic::InactiveCode(diag) => {
sink.push(diag.clone());
}
BodyDiagnostic::MacroError(diag) => {
sink.push(diag.clone());
}
2020-12-01 12:40:03 +01:00
BodyDiagnostic::UnresolvedProcMacro(diag) => {
sink.push(diag.clone());
}
2020-10-23 19:27:04 +02:00
}
}
}