harper-ls 0.10.0

The language checker for developers.
use harper_core::parsers::{Markdown, Parser};

/// A Harper parser for Git commit files
pub struct GitCommitParser;

impl Parser for GitCommitParser {
    /// Admittedly a somewhat naive implementation.
    /// We're going to get _something_ to work, before we polish it off.
    fn parse(&mut self, source: &[char]) -> Vec<harper_core::Token> {
        // Locate the first `#`
        let end = source
            .iter()
            .position(|c| *c == '#')
            .unwrap_or(source.len());

        let mut md_parser = Markdown;

        md_parser.parse(&source[0..end])
    }
}