#toml-parser #toml #parser #incremental

tree-sitter-toml

TOML grammar for the tree-sitter parsing library

1 unstable release

0.20.0 Jan 5, 2022

#25 in #toml-parser

Download history 669/week @ 2024-03-14 653/week @ 2024-03-21 601/week @ 2024-03-28 582/week @ 2024-04-04 520/week @ 2024-04-11 1037/week @ 2024-04-18 917/week @ 2024-04-25 758/week @ 2024-05-02 806/week @ 2024-05-09 640/week @ 2024-05-16 601/week @ 2024-05-23 769/week @ 2024-05-30 991/week @ 2024-06-06 720/week @ 2024-06-13 554/week @ 2024-06-20 415/week @ 2024-06-27

2,794 downloads per month
Used in 14 crates (9 directly)

MIT license

150KB
5K SLoC

C 4.5K SLoC JavaScript 199 SLoC Rust 34 SLoC // 0.2% comments Scheme 20 SLoC // 0.2% comments

tree-sitter-toml

This crate provides TOML 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-toml = "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#"
[package]
name = "cargo"
version = "0.1.0"
edition = "2021"
"#;
let mut parser = Parser::new();
parser.set_language(tree_sitter_toml::language()).expect("Error loading TOML grammar");
let parsed = parser.parse(code, None);

It's based on the lovely bindings of tree-sitter-rust and uses the awesome grammar defined by tree-sitter-toml.

Dependencies

~2.8–4MB
~72K SLoC