difftastic/vendor/tree-sitter-rust/bindings/rust
Wilfred Hughes 59f80c20dd Add 'vendor/tree-sitter-rust/' from commit 'a360da0a29a19c281d08295a35ecd0544d2da211'
git-subtree-dir: vendor/tree-sitter-rust
git-subtree-mainline: e7a6c3b11e
git-subtree-split: a360da0a29
2021-08-15 16:33:53 +07:00
..
README.md Add 'vendor/tree-sitter-rust/' from commit 'a360da0a29a19c281d08295a35ecd0544d2da211' 2021-08-15 16:33:53 +07:00
build.rs Add 'vendor/tree-sitter-rust/' from commit 'a360da0a29a19c281d08295a35ecd0544d2da211' 2021-08-15 16:33:53 +07:00
lib.rs Add 'vendor/tree-sitter-rust/' from commit 'a360da0a29a19c281d08295a35ecd0544d2da211' 2021-08-15 16:33:53 +07:00

README.md

tree-sitter-rust

This crate provides a Rust grammar for the tree-sitter parsing library. To use this crate, add it to the [dependencies] section of your Cargo.toml file. (Note that you will probably also need to depend on the tree-sitter crate to use the parsed result in any useful way.)

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

Typically, you will use the language function to add this grammar to a tree-sitter Parser, and then use the parser to parse some code:

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);

If you have any questions, please reach out to us in the tree-sitter discussions page.