treelight/
json.rs

1use tree_sitter::Language;
2
3extern "C" {
4    fn tree_sitter_json() -> Language;
5}
6
7/// Get the tree-sitter [Language][] for this grammar.
8///
9/// [Language]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Language.html
10pub fn language() -> Language {
11    unsafe { tree_sitter_json() }
12}
13
14/// The content of the [`node-types.json`][] file for this grammar.
15///
16/// [`node-types.json`]: https://tree-sitter.github.io/tree-sitter/using-parsers#static-node-types
17pub const NODE_TYPES: &'static str = include_str!("../languages/tree-sitter-json/src/node-types.json");
18
19// Uncomment these to include any queries that this grammar contains
20pub const HIGHLIGHT_QUERY: &'static str = include_str!("../languages/tree-sitter-json/queries/highlights.scm");
21
22#[cfg(test)]
23mod tests {
24    #[test]
25    fn test_can_load_grammar() {
26        let mut parser = tree_sitter::Parser::new();
27        parser
28            .set_language(super::language())
29            .expect("Error loading json language");
30    }
31}