Skip to content

Commit 28cd0a1

Browse files
committed
fix: flat node structure for else if
1 parent 371fd0b commit 28cd0a1

File tree

5 files changed

+84891
-80015
lines changed

5 files changed

+84891
-80015
lines changed

grammar.js

+8
Original file line numberDiff line numberDiff line change
@@ -824,11 +824,19 @@ module.exports = grammar({
824824
'if',
825825
field('condition', $.parenthesized_expression),
826826
field('consequence', $._statement),
827+
repeat(field('alternative', $.else_if_clause)),
827828
optional(field('alternative', $.else_clause)),
828829
)),
829830

830831
else_clause: $ => seq('else', $._statement),
831832

833+
else_if_clause: $ => prec.right(1, seq(
834+
'else',
835+
'if',
836+
field('condition', $.parenthesized_expression),
837+
field('consequence', $._statement),
838+
)),
839+
832840
switch_statement: $ => seq(
833841
'switch',
834842
field('condition', $.parenthesized_expression),

src/grammar.json

+44
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/node-types.json

+31-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)