Skip to content

Commit 4e3d0e6

Browse files
committed
Further shrink parser to 7734/3889
1 parent 57741e7 commit 4e3d0e6

File tree

3 files changed

+448802
-449874
lines changed

3 files changed

+448802
-449874
lines changed

grammar.js

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -265,10 +265,7 @@ module.exports = grammar({
265265

266266
class_declaration: $ => seq(
267267
$._class_declaration_initializer,
268-
choice(
269-
seq(field('body', $.declaration_list), $._optional_semi),
270-
';',
271-
),
268+
$._declaration_list_body,
272269
),
273270

274271
_class_declaration_initializer: $ => seq(
@@ -282,10 +279,7 @@ module.exports = grammar({
282279

283280
struct_declaration: $ => seq(
284281
$._struct_declaration_initializer,
285-
choice(
286-
seq(field('body', $.declaration_list), $._optional_semi),
287-
';',
288-
),
282+
$._declaration_list_body,
289283
),
290284

291285
_struct_declaration_initializer: $ => seq(
@@ -332,10 +326,7 @@ module.exports = grammar({
332326

333327
interface_declaration: $ => seq(
334328
$._interface_declaration_initializer,
335-
choice(
336-
seq(field('body', $.declaration_list), $._optional_semi),
337-
';',
338-
),
329+
$._declaration_list_body,
339330
),
340331

341332
_interface_declaration_initializer: $ => seq(
@@ -366,10 +357,7 @@ module.exports = grammar({
366357

367358
record_declaration: $ => seq(
368359
$._record_declaration_initializer,
369-
choice(
370-
seq(field('body', $.declaration_list), $._optional_semi),
371-
';',
372-
),
360+
$._declaration_list_body,
373361
),
374362

375363
_record_declaration_initializer: $ => seq(
@@ -388,6 +376,11 @@ module.exports = grammar({
388376
seq(':', $.primary_constructor_base_type, optional(seq(',', commaSep1($._name)))),
389377
),
390378

379+
_declaration_list_body: $ => choice(
380+
seq(field('body', $.declaration_list), $._optional_semi),
381+
';',
382+
),
383+
391384
primary_constructor_base_type: $ => seq(
392385
field('type', $._name),
393386
$.argument_list,

0 commit comments

Comments
 (0)