blob: c92aa995f974daea30bc03077139a23afab7b26e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
mod bibtex;
mod language;
mod latex;
mod text;
pub use self::bibtex::*;
pub use self::language::*;
pub use self::latex::*;
pub use self::text::*;
use crate::workspace::Uri;
use tex::Language;
#[derive(Debug, PartialEq, Eq, Clone)]
pub enum SyntaxTree {
Latex(Box<LatexSyntaxTree>),
Bibtex(Box<BibtexSyntaxTree>),
}
impl SyntaxTree {
pub fn parse(uri: &Uri, text: &str, language: Language) -> Self {
match language {
Language::Latex => SyntaxTree::Latex(Box::new(LatexSyntaxTree::parse(uri, text))),
Language::Bibtex => SyntaxTree::Bibtex(Box::new(text.into())),
}
}
}
|