pub use crate::codes::{DiagnosticSeverity, DiagnosticTag};
#[derive(Debug, Clone, Default, PartialEq, Eq)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Diagnostic {
pub code: crate::codes::DiagnosticCode,
pub severity: DiagnosticSeverity,
pub range: (usize, usize),
pub message: String,
pub related_information: Option<Vec<RelatedInformation>>,
pub tags: Option<Vec<DiagnosticTag>>,
}
#[derive(Debug, Clone, Default, PartialEq, Eq)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct RelatedInformation {
pub message: String,
pub location: (usize, usize),
}