use serde_json::Value;
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct Position {
pub line: u32,
pub character: u32,
}
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct Range {
pub start: Position,
pub end: Position,
}
#[derive(Debug, Clone, Copy, PartialEq)]
pub enum Severity {
Error,
Warning,
}
#[derive(Debug, Clone)]
pub struct Diagnostic {
pub range: Range,
pub severity: Severity,
pub code: String,
pub message: String,
pub data: Option<Value>,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
pub enum LanguageMode {
#[default]
Nonstrict,
Strict,
}