aboutsummaryrefslogtreecommitdiff
path: root/tools/tree-sitter/grammar.js
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-10-09 14:43:11 +0200
committerEugen Wissner <belka@caraus.de>2026-10-09 14:43:11 +0200
commit134d3ac4caff6d87c79b0892e57073594cb0064c (patch)
treee93c73d59ee50f3bdaa073bb5908ae3c74f7a985 /tools/tree-sitter/grammar.js
parent244449004fb62adbfd43b81e8dfce7500ca4a7e4 (diff)
downloadelna-134d3ac4caff6d87c79b0892e57073594cb0064c.tar.gz
Remove Pointer and nil support
Diffstat (limited to 'tools/tree-sitter/grammar.js')
-rw-r--r--tools/tree-sitter/grammar.js12
1 files changed, 7 insertions, 5 deletions
diff --git a/tools/tree-sitter/grammar.js b/tools/tree-sitter/grammar.js
index b854e82..9e62a78 100644
--- a/tools/tree-sitter/grammar.js
+++ b/tools/tree-sitter/grammar.js
@@ -102,13 +102,13 @@ module.exports = grammar({
type_declaration: $ => seq(
field('name', $.identifier_definition),
- optional(field('type_parameters', $.type_parameters)),
'=',
field('type', choice($._type_expression, 'extern')),
),
identifier_definition: $ => seq(
field('name', $.identifier),
+ optional(field('type_parameters', $.type_parameters)),
optional(field('exported', '*')),
repeat($.attribute),
),
@@ -149,7 +149,6 @@ module.exports = grammar({
procedure_declaration: $ => seq(
'proc',
field('name', $.identifier_definition),
- optional(field('type_parameters', $.type_parameters)),
field('parameters', $.parameter_list),
repeat($.attribute),
optional(seq('->', field('return_type', $._type_expression))),
@@ -169,8 +168,13 @@ module.exports = grammar({
')',
),
+ field_identifier: $ => seq(
+ field('name', $.identifier),
+ repeat($.attribute),
+ ),
+
field_declaration: $ => seq(
- field('names', commaSep1($.identifier_definition)),
+ field('names', commaSep1($.field_identifier)),
':',
field('type', $._type_expression),
),
@@ -519,11 +523,9 @@ module.exports = grammar({
$.byte,
$.character,
$.boolean,
- $.nil,
),
boolean: $ => choice('true', 'false'),
- nil: $ => 'nil',
integer: $ => token(choice(
seq(/0[xX][0-9a-fA-F]+/, optional(choice('u8', 'u16', 'u32', 'u64'))),