Commit graph

34 commits

Author SHA1 Message Date
Bruno BELANYI aeb1fc2bb5 Allow optional trailing comma in 'select'
All checks were successful
ci/woodpecker/push/check Pipeline was successful
2024-12-23 22:59:05 -05:00
Bruno BELANYI 1fd9b67dbe Add select binding 2024-07-01 13:54:40 +00:00
Bruno BELANYI 970241b323 Add 'any' select pattern 2024-07-01 13:50:30 +00:00
Bruno BELANYI ff40b39dcf Expose 'condition' node 2024-05-13 15:44:18 +00:00
Bruno BELANYI d01bcf0f6d Add multi-valued select expression 2024-05-13 15:44:18 +00:00
Bruno BELANYI 6ca4592d84 Remove trailing commas in 'select_value' arguments 2024-05-13 15:44:18 +00:00
Bruno BELANYI afdfbff7bc Add boolean-typed select values 2024-05-13 15:44:18 +00:00
Bruno BELANYI f6bc0f887a Remove 'selection_type' alias 2024-05-13 15:44:18 +00:00
Bruno BELANYI 1c1387fee0 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-05-13 15:44:17 +00:00
Bruno BELANYI 8137fd3e5b Relax ordering in 'select' cases
We shouldn't really care whether or not `default` *is* the last value...
2024-05-13 15:44:17 +00:00
Bruno BELANYI 6d6d9fc03b Add test for multiple arguments in selection type 2024-04-14 13:00:17 +01: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 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 aa8472e73f Add test for literals 2024-04-11 18:08:40 +01: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 ddb4f693be Add test for 'select' as an identifier 2024-04-09 12:28:28 +01:00
Bruno BELANYI 384da2d065 Add test for multiple modules 2024-04-08 20:27:53 +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 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