Commit graph

28 commits

Author SHA1 Message Date
Bruno BELANYI c56e2eca70 Simplify 'select_value' rule
Upstream has greatly simplified the parsing of `select` expressions, in
order to add multi-valued `select`.

To this end, we remove the hard-coded list of function names, and accept
an arbitrary number of arguments.
2024-04-23 15:11:00 +00:00
Bruno BELANYI b2e113a821 Relax ordering in 'select' cases
We shouldn't really care whether or not `default` *is* the last value...
2024-04-23 14:38:32 +00:00
Bruno BELANYI e6a2757c51 Alias 'default_case' to 'select_case'
There's not much use in the node being a different name.
2024-04-13 18:23:06 +01:00
Bruno BELANYI 8db7b053f5 Add 'default' alias
This makes it appear in the tree as a named node.
2024-04-13 18:21:58 +01:00
Bruno BELANYI adec624d74 Tweak comment parsing
This is taken verbatim from tree-sitter-c [1], just in case :-).

[1]: https://github.com/tree-sitter/tree-sitter-c
2024-04-11 18:38:14 +01:00
Bruno BELANYI b62fc19da9 Make comments a single node in the grammar
This looks to be a *strong* idiom in tree-sitter parsers.
2024-04-11 18:36:20 +01:00
Bruno BELANYI ebb642cb14 Rename to 'tree-sitter-bp'
All checks were successful
ci/woodpecker/push/check Pipeline was successful
This is really just to simplify my life and align with the Vim/NeoVim
filetype name.
2024-04-10 15:32:37 +00:00
Bruno BELANYI be1e3f07d3 Make 'line_comment' more explicit about newlines
Because of the way regular expressions work, they were already bounded
at newlines here, but explicit is better than implicit :-).
2024-04-10 15:20:29 +00:00
Bruno BELANYI 3e4879a593 Add 'type' field to new-style module
I'd forgotten it...
2024-04-09 12:28:28 +01:00
Bruno BELANYI eec21c84da Add block comments 2024-04-08 20:15:59 +01:00
Bruno BELANYI 6d3dd1c8cb Fix line comments syntax
Don't write parsers after midnight kids.

For the explanation: I mixed up the syntax bits between Blueprint and
textual protocol buffers...
2024-04-08 20:15:59 +01:00
Bruno BELANYI 3e46a9b762 Add 'operator' aliases 2024-04-08 20:15:59 +01:00
Bruno BELANYI 25924c3c5c Add binary expression 2024-04-08 20:15:59 +01:00
Bruno BELANYI 2549f6f0db Add 'property' alias
It makes the syntax tree more readable.
2024-04-08 20:15:59 +01:00
Bruno BELANYI 644f6483fe Add 'element' field name to list 2024-04-08 20:15:59 +01:00
Bruno BELANYI d232c089df Add 'property' field name where relevant 2024-04-08 20:15:59 +01:00
Bruno BELANYI 8bd249fc90 Add modules 2024-04-08 20:15:59 +01:00
Bruno BELANYI a78ad8139f Add 'soong_config_variable' selection 2024-04-08 20:15:59 +01:00
Bruno BELANYI 12553c3bb8 Add 'select' expression
Except for 'soong_config_variable' which is not yet handled.
2024-04-08 20:15:59 +01:00
Bruno BELANYI 9dd109b90a Add boolean literals 2024-04-08 20:15:59 +01:00
Bruno BELANYI db2e88a539 Add map expressions 2024-04-08 20:15:59 +01:00
Bruno BELANYI e13f15e8db Add list expressions 2024-04-08 20:15:59 +01:00
Bruno BELANYI f548b1d5ad Add string literals
Once again, taking the rules more or less straight from tree-sitter-go.
2024-04-08 20:15:59 +01:00
Bruno BELANYI 57b38c01c0 Add negative integers 2024-04-08 20:15:59 +01:00
Bruno BELANYI 26b6891160 Add comments 2024-04-08 20:15:59 +01:00
Bruno BELANYI bc06816b57 Add '+=' assignment 2024-04-08 20:15:59 +01:00
Bruno BELANYI 38bf9532ad Add assignment 2024-04-08 20:15:59 +01:00
Bruno BELANYI 213f5afb11 Bootstrap project 2024-04-08 20:13:47 +01:00