summaryrefslogtreecommitdiff
path: root/support/texlab/src/syntax.rs
blob: 5a906c0ea7e392d0dd9594c0ddcac095a82d326d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use cstree::TextRange;

pub mod bibtex;
pub mod build_log;
pub mod latex;

pub trait CstNode<'a> {
    type Lang: cstree::Language;

    fn cast(node: &'a cstree::ResolvedNode<Self::Lang>) -> Option<Self>
    where
        Self: Sized;

    fn syntax(&self) -> &'a cstree::ResolvedNode<Self::Lang>;

    fn small_range(&self) -> TextRange;
}