use marque_rules::{AppliedFix, Diagnostic};
#[derive(Debug, Default)]
pub struct LintResult {
pub diagnostics: Vec<Diagnostic>,
}
impl LintResult {
pub fn is_clean(&self) -> bool {
self.diagnostics.is_empty()
}
pub fn error_count(&self) -> usize {
use marque_rules::Severity;
self.diagnostics
.iter()
.filter(|d| d.severity == Severity::Error)
.count()
}
pub fn warn_count(&self) -> usize {
use marque_rules::Severity;
self.diagnostics
.iter()
.filter(|d| d.severity == Severity::Warn)
.count()
}
pub fn fix_count(&self) -> usize {
use marque_rules::Severity;
self.diagnostics
.iter()
.filter(|d| d.severity == Severity::Fix && d.fix.is_some())
.count()
}
}
#[derive(Debug)]
pub struct FixResult {
pub source: Vec<u8>,
pub applied: Vec<AppliedFix>,
pub remaining_diagnostics: Vec<Diagnostic>,
}