From 12e304fd56f054ba7296ab538eecd4280a67832a Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Wed, 7 Oct 2026 17:33:40 +0200 Subject: Allow assigning contants to enumeration members --- tools/tree-sitter/grammar.js | 7 ++++++- tools/tree-sitter/queries/elna/highlights.scm | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'tools/tree-sitter') diff --git a/tools/tree-sitter/grammar.js b/tools/tree-sitter/grammar.js index a43c947..bfb4c26 100644 --- a/tools/tree-sitter/grammar.js +++ b/tools/tree-sitter/grammar.js @@ -360,10 +360,15 @@ module.exports = grammar({ enum_type: $ => seq( '(', - commaSep1(field('member', $.identifier)), + commaSep1(field('member', $.enum_member)), ')', ), + enum_member: $ => seq( + field('name', $.identifier), + optional(seq('=', field('value', $._expression))), + ), + generic_type: $ => seq( field('name', $.identifier), field('type_arguments', $.type_arguments), diff --git a/tools/tree-sitter/queries/elna/highlights.scm b/tools/tree-sitter/queries/elna/highlights.scm index b5e6d10..4cb3f7c 100644 --- a/tools/tree-sitter/queries/elna/highlights.scm +++ b/tools/tree-sitter/queries/elna/highlights.scm @@ -101,8 +101,8 @@ (traits_expression arguments: (identifier) @type) -(enum_type - member: (identifier) @constant) +(enum_member + name: (identifier) @constant) (procedure_declaration name: (identifier_definition -- cgit v1.2.3