diff options
| author | traxys <quentin+dev@familleboyer.net> | 2022-02-13 17:18:41 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-13 16:18:41 +0000 |
| commit | ca64d8b028de11489bd9aebe1019af372e3f2879 (patch) | |
| tree | 463370c4313fe1a0ae020206bfeeaf223e3584e3 /queries | |
| parent | tests: add failing test for incomplete arguments (diff) | |
| download | nvim-treesitter-ca64d8b028de11489bd9aebe1019af372e3f2879.tar nvim-treesitter-ca64d8b028de11489bd9aebe1019af372e3f2879.tar.gz nvim-treesitter-ca64d8b028de11489bd9aebe1019af372e3f2879.tar.bz2 nvim-treesitter-ca64d8b028de11489bd9aebe1019af372e3f2879.tar.lz nvim-treesitter-ca64d8b028de11489bd9aebe1019af372e3f2879.tar.xz nvim-treesitter-ca64d8b028de11489bd9aebe1019af372e3f2879.tar.zst nvim-treesitter-ca64d8b028de11489bd9aebe1019af372e3f2879.zip | |
feat: add lalrpop parser (#2524)
LALRPOP is a parser generator for Rust. This only parses the LALRPOP
side of the generator, not the nearly-rust code of the actions.
Diffstat (limited to 'queries')
| -rw-r--r-- | queries/lalrpop/highlights.scm | 57 | ||||
| -rw-r--r-- | queries/lalrpop/locals.scm | 5 |
2 files changed, 62 insertions, 0 deletions
diff --git a/queries/lalrpop/highlights.scm b/queries/lalrpop/highlights.scm new file mode 100644 index 000000000..34040dd5f --- /dev/null +++ b/queries/lalrpop/highlights.scm @@ -0,0 +1,57 @@ +[ + "pub" + "grammar" + "match" + "extern" + "type" + "enum" +] @keyword + +[ + "+" + "*" + "?" +] @operator + +(grammar_type_params + "<" @punctuation.bracket + ">" @punctuation.bracket) + +(symbol + "<" @punctuation.bracket + ">" @punctuation.bracket) + +(binding_symbol + "<" @punctuation.bracket + ">" @punctuation.bracket) + +(binding_symbol + name: (identifier) @parameter) + +(bare_symbol + (macro + ((macro_id) @function))) + +(bare_symbol + (identifier) @function) + +(nonterminal_name + (macro_id) @function) + +(nonterminal_name + (identifier) @function) + +(nonterminal + (type_ref) @type) + +"(" @punctuation.bracket +")" @punctuation.bracket +"[" @punctuation.bracket +"]" @punctuation.bracket + +";" @punctuation.delimiter + +(lifetime (identifier) @label) + +(string_literal) @string +(regex_literal) @string diff --git a/queries/lalrpop/locals.scm b/queries/lalrpop/locals.scm new file mode 100644 index 000000000..7a30cce9f --- /dev/null +++ b/queries/lalrpop/locals.scm @@ -0,0 +1,5 @@ +(nonterminal_name + (macro_id) @definition.function) + +(nonterminal_name + (identifier) @definition.function) |
