7 releases (4 stable)
1.3.0 | Dec 5, 2024 |
---|---|
1.2.0 | May 25, 2024 |
1.1.0 | Aug 14, 2023 |
1.0.0 | Jun 20, 2023 |
0.0.3 | Feb 27, 2023 |
#224 in Parser tooling
162 downloads per month
2.5MB
98K
SLoC
tree-sitter-starlark
Starlark grammar for tree-sitter
Adapted from the official spec and the Google spec
lib.rs
:
This crate provides Starlark language support for the tree-sitter parsing library.
Typically, you will use the [LANGUAGE][] constant to add this language to a tree-sitter Parser, and then use the parser to parse some code:
let code = r#"
load("//tools/build_defs/starlark:starlark.bzl", "starlark_library")
starlark_library(
name = "example",
srcs = ["example.star"],
)
"#;
let mut parser = tree_sitter::Parser::new();
let language = tree_sitter_starlark::LANGUAGE;
parser
.set_language(&language.into())
.expect("Error loading Starlark parser");
let tree = parser.parse(code, None).unwrap();
assert!(!tree.root_node().has_error());
Dependencies
~4–305KB