lini 0.3.0

A small, human-readable language for plain-text diagrams that compiles to clean SVG
Documentation
//! Lint pass โ€” stylistic warnings that are not parse/resolve errors.
//!
//! Inline paint is idiomatic (an instance carries its own declarations in its
//! block), so there is no "visual attrs belong in a style def" lint. The "did
//! you mean" property-name hint (SPEC ยง19) is deferred. The pass is intentionally
//! empty for now โ€” the home for future lints, kept so the `--no-warn` /
//! `--strict` machinery has somewhere to read from.

use crate::error::Diagnostic;
use crate::syntax::ast::File;

pub fn lint(_file: &File) -> Vec<Diagnostic> {
    Vec::new()
}

#[cfg(test)]
mod tests {
    /// Inline paint in an instance block is idiomatic โ€” no warning.
    #[test]
    fn inline_paint_is_not_linted() {
        let warns = crate::lint_str("x |box| { fill: red; stroke: blue; }\n").expect("lint");
        assert!(warns.is_empty(), "{warns:?}");
    }
}