diff options
Diffstat (limited to 'vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar.js')
| -rw-r--r-- | vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar.js b/vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar.js new file mode 100644 index 0000000..892f6e6 --- /dev/null +++ b/vendor/github.com/mitjafelicijan/go-tree-sitter/test_grammar.js | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | module.exports = grammar({ | ||
| 2 | name: 'test_grammar', | ||
| 3 | |||
| 4 | extras: $ => [/\s/, $.comment], | ||
| 5 | |||
| 6 | rules: { | ||
| 7 | expression: $ => choice( | ||
| 8 | $.sum, | ||
| 9 | $.number, | ||
| 10 | $.variable, | ||
| 11 | seq('(', $.expression, ')') | ||
| 12 | ), | ||
| 13 | sum: $ => prec.left(1, seq(field('left', $.expression), '+', field('right', $.expression))), | ||
| 14 | number: $ => /\d+/, | ||
| 15 | comment: $ => token(seq('//', /.*/)), | ||
| 16 | variable: $ => /[a-zA-Z]\\w*/, | ||
| 17 | } | ||
| 18 | }); | ||
