#解析器 #增量 #Rust

tree_sitter_grep_tree-sitter-rust

(tree-sitter-grep内部使用的分叉版本) tree-sitter解析库的Rust语法

1个不稳定版本

0.20.3-dev.02023年7月12日

#276文本编辑器


3 个crate中使用 (直接使用2个)

MIT 许可证

4.5MB
139K SLoC

C 138K SLoC JavaScript 1.5K SLoC // 0.0% comments Scheme 151 SLoC // 0.1% comments Rust 34 SLoC // 0.1% comments

tree-sitter-rust

此crate为tree-sitter解析库提供了Rust语法。要使用此crate,将其添加到您的[dependencies]部分Cargo.toml文件中。(注意,您可能还需要依赖于tree-sitter crate,以便以任何有用的方式使用解析结果。)

[dependencies]
tree-sitter = "0.17"
tree-sitter-rust = "0.16"

通常,您会使用language函数将此语法添加到tree-sitter Parser,然后使用解析器解析一些代码

let code = r#"
    fn double(x: i32) -> i32 {
        x * 2
    }
"#;
let mut parser = Parser::new();
parser.set_language(tree_sitter_rust::language()).expect("Error loading Rust grammar");
let parsed = parser.parse(code, None);

如果您有任何问题,请通过tree-sitter讨论页面与我们联系。

依赖项

~2.8–4MB
~72K SLoC