aboutsummaryrefslogtreecommitdiff
path: root/tools/tree-sitter/grammar.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/tree-sitter/grammar.js')
-rw-r--r--tools/tree-sitter/grammar.js21
1 files changed, 15 insertions, 6 deletions
diff --git a/tools/tree-sitter/grammar.js b/tools/tree-sitter/grammar.js
index 4aab2fa..5d2dda7 100644
--- a/tools/tree-sitter/grammar.js
+++ b/tools/tree-sitter/grammar.js
@@ -150,12 +150,21 @@ module.exports = grammar({
variable_declaration: $ => seq(
field('names', commaSep1($.identifier_definition)),
- ':',
- field('type', $._type_expression),
- optional(seq(
- ':=',
- field('value', choice($._expression, 'extern')),
- )),
+ choice(
+ seq(
+ ':',
+ field('type', $._type_expression),
+ optional(seq(
+ ':=',
+ field('value', choice($._expression, 'extern')),
+ )),
+ ),
+ seq(
+ optional(seq(':', 'const')),
+ ':=',
+ field('value', $._expression),
+ ),
+ ),
),
procedure_declaration: $ => seq(