#incremental #parser #rust

tree-sitter-ygg

Yggdrasil grammar for the tree-sitter parsing library

1 unstable release

0.1.0 Oct 14, 2021

#353 in Text editors

MIT license

250KB
7.5K SLoC

C 7.5K SLoC JavaScript 205 SLoC // 0.0% comments Rust 24 SLoC Scheme 2 SLoC

Yggdrasil Grammar

Build/test

Yggdrasil grammar DSL for tree-sitter

Features

References

tree-sitter test "examples/basic.yg"


lib.rs:

This crate provides a Rust 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#"
    fn double(x: i32) -> i32 {
        x * 2
    }
"#;
let mut parser = Parser::new();
parser.set_language(tree_sitter_ygg::language()).expect("Error loading Rust grammar");
let parsed = parser.parse(code, None);

Dependencies

~2.8–4MB
~72K SLoC