aboutsummaryrefslogtreecommitdiff
path: root/grammar.js
diff options
context:
space:
mode:
authorRuben Beltran del Rio <ruben@unlimited.pizza>2023-10-04 14:06:17 +0200
committerRuben Beltran del Rio <ruben@unlimited.pizza>2023-10-04 14:06:17 +0200
commit4a1d56285559545a56cb7c79a0ea1564f01e09e5 (patch)
treea600684f681d4b8c401ab1fc9d2a770ac5ea56d7 /grammar.js
parent0931d6ef75e5dc37ba6bd7bb92c369d1df99e6d3 (diff)
Add optionals
Diffstat (limited to 'grammar.js')
-rw-r--r--grammar.js10
1 files changed, 9 insertions, 1 deletions
diff --git a/grammar.js b/grammar.js
index e74c27b..db1219d 100644
--- a/grammar.js
+++ b/grammar.js
@@ -83,12 +83,20 @@ module.exports = grammar({
)
),
identifier: $ => prec.left(seq(
- $._label,
+ choice(
+ $.optional_value,
+ $._label,
+ ),
optional($.type_annotation),
optional($.parameter_list),
optional($.return_statement),
optional($.throw_statement),
)),
+ optional_value: $ => seq(
+ '[',
+ $._label,
+ ']'
+ ),
type_annotation: $ => seq(
'<',
$._entry_list,