pub struct Diagnostic {
pub code: String,
pub severity: Severity,
pub message: String,
pub span: Option<Span>,
pub subject_id: Option<String>,
}Expand description
A single structured diagnostic produced during validation or resolution.
Diagnostics carry a stable code that agents and tooling can key on, a
human-readable message, an optional source span, and an optional
subject_id naming the token (or future: node/style) the diagnostic is
about.
Fields§
§code: StringStable dot-separated code, e.g. "token.cyclic_reference".
severity: SeveritySeverity classification.
message: StringHuman-readable description.
span: Option<Span>Source location, when available.
subject_id: Option<String>The token ID (or future: node/style ID) the diagnostic concerns.
Implementations§
Source§impl Diagnostic
impl Diagnostic
Sourcepub fn new(
code: impl Into<String>,
severity: Severity,
message: impl Into<String>,
span: Option<Span>,
subject_id: Option<String>,
) -> Self
pub fn new( code: impl Into<String>, severity: Severity, message: impl Into<String>, span: Option<Span>, subject_id: Option<String>, ) -> Self
Construct a new diagnostic with all fields explicit.
Sourcepub fn error(
code: impl Into<String>,
message: impl Into<String>,
span: Option<Span>,
subject_id: Option<String>,
) -> Self
pub fn error( code: impl Into<String>, message: impl Into<String>, span: Option<Span>, subject_id: Option<String>, ) -> Self
Shorthand for an Severity::Error-level diagnostic.
Trait Implementations§
Source§impl Clone for Diagnostic
impl Clone for Diagnostic
Source§fn clone(&self) -> Diagnostic
fn clone(&self) -> Diagnostic
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for Diagnostic
impl Debug for Diagnostic
Source§impl PartialEq for Diagnostic
impl PartialEq for Diagnostic
Source§fn eq(&self, other: &Diagnostic) -> bool
fn eq(&self, other: &Diagnostic) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for Diagnostic
Auto Trait Implementations§
impl Freeze for Diagnostic
impl RefUnwindSafe for Diagnostic
impl Send for Diagnostic
impl Sync for Diagnostic
impl Unpin for Diagnostic
impl UnsafeUnpin for Diagnostic
impl UnwindSafe for Diagnostic
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more