10 releases

0.21.0 Mar 13, 2024
0.20.8 Feb 13, 2024
0.20.7 Jan 22, 2024
0.20.6 Aug 13, 2023
0.20.1 Sep 20, 2021

#32 in Text editors

Download history 1271/week @ 2023-12-23 2069/week @ 2023-12-30 2960/week @ 2024-01-06 2910/week @ 2024-01-13 4329/week @ 2024-01-20 5125/week @ 2024-01-27 4775/week @ 2024-02-03 4452/week @ 2024-02-10 5398/week @ 2024-02-17 4486/week @ 2024-02-24 4295/week @ 2024-03-02 4232/week @ 2024-03-09 3296/week @ 2024-03-16 3106/week @ 2024-03-23 2947/week @ 2024-03-30 3646/week @ 2024-04-06

13,566 downloads per month
Used in 21 crates (18 directly)

MIT license

5MB
146K SLoC

C 145K SLoC JavaScript 1K SLoC // 0.1% comments Scheme 76 SLoC Rust 27 SLoC

tree-sitter-c

CI discord matrix crates npm

C grammar for tree-sitter. Adapted from this C99 grammar.


lib.rs:

This crate provides a C grammar for the tree-sitter parsing library.

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:

use tree_sitter::Parser;

let code = r#"
int double(int x) {
    return x * 2;
}
"#;
let mut parser = Parser::new();
parser.set_language(&tree_sitter_c::language()).expect("Error loading C grammar");
let parsed = parser.parse(code, None);

Dependencies

~2.8–4MB
~72K SLoC