Skip to content

Commit e958794

Browse files
authored
Merge pull request #1305 from hamishknight/express-yourself-5.8
2 parents 419ee26 + b0f8805 commit e958794

37 files changed

+16425
-15864
lines changed

CodeGeneration/Sources/SyntaxSupport/gyb_generated/ExprNodes.swift

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -493,6 +493,158 @@ public let EXPR_NODES: [Node] = [
493493
])
494494
]),
495495

496+
Node(name: "IfExpr",
497+
nameForDiagnostics: "'if' statement",
498+
kind: "Expr",
499+
traits: [
500+
"WithCodeBlock"
501+
],
502+
children: [
503+
Child(name: "IfKeyword",
504+
kind: "IfToken",
505+
tokenChoices: [
506+
"If"
507+
]),
508+
Child(name: "Conditions",
509+
kind: "ConditionElementList",
510+
collectionElementName: "Condition"),
511+
Child(name: "Body",
512+
kind: "CodeBlock"),
513+
Child(name: "ElseKeyword",
514+
kind: "ElseToken",
515+
isOptional: true,
516+
tokenChoices: [
517+
"Else"
518+
]),
519+
Child(name: "ElseBody",
520+
kind: "Syntax",
521+
isOptional: true,
522+
nodeChoices: [
523+
Child(name: "IfExpr",
524+
kind: "IfExpr"),
525+
Child(name: "CodeBlock",
526+
kind: "CodeBlock")
527+
])
528+
]),
529+
530+
Node(name: "SwitchExpr",
531+
nameForDiagnostics: "'switch' statement",
532+
kind: "Expr",
533+
traits: [
534+
"Braced"
535+
],
536+
children: [
537+
Child(name: "SwitchKeyword",
538+
kind: "SwitchToken",
539+
tokenChoices: [
540+
"Switch"
541+
]),
542+
Child(name: "Expression",
543+
kind: "Expr"),
544+
Child(name: "LeftBrace",
545+
kind: "LeftBraceToken",
546+
tokenChoices: [
547+
"LeftBrace"
548+
]),
549+
Child(name: "Cases",
550+
kind: "SwitchCaseList",
551+
collectionElementName: "Case"),
552+
Child(name: "RightBrace",
553+
kind: "RightBraceToken",
554+
tokenChoices: [
555+
"RightBrace"
556+
],
557+
requiresLeadingNewline: true)
558+
]),
559+
560+
Node(name: "SwitchCaseList",
561+
nameForDiagnostics: nil,
562+
kind: "SyntaxCollection",
563+
element: "Syntax",
564+
elementName: "SwitchCase",
565+
elementChoices: ["SwitchCase", "IfConfigDecl"],
566+
elementsSeparatedByNewline: true),
567+
568+
Node(name: "SwitchCase",
569+
nameForDiagnostics: "switch case",
570+
kind: "Syntax",
571+
traits: [
572+
"WithStatements"
573+
],
574+
parserFunction: "parseSwitchCase",
575+
children: [
576+
Child(name: "UnknownAttr",
577+
kind: "Attribute",
578+
isOptional: true),
579+
Child(name: "Label",
580+
kind: "Syntax",
581+
nodeChoices: [
582+
Child(name: "Default",
583+
kind: "SwitchDefaultLabel"),
584+
Child(name: "Case",
585+
kind: "SwitchCaseLabel")
586+
]),
587+
Child(name: "Statements",
588+
kind: "CodeBlockItemList",
589+
collectionElementName: "Statement",
590+
isIndented: true)
591+
]),
592+
593+
Node(name: "SwitchCaseLabel",
594+
nameForDiagnostics: nil,
595+
kind: "Syntax",
596+
children: [
597+
Child(name: "CaseKeyword",
598+
kind: "CaseToken",
599+
tokenChoices: [
600+
"Case"
601+
]),
602+
Child(name: "CaseItems",
603+
kind: "CaseItemList",
604+
collectionElementName: "CaseItem"),
605+
Child(name: "Colon",
606+
kind: "ColonToken",
607+
tokenChoices: [
608+
"Colon"
609+
])
610+
]),
611+
612+
Node(name: "SwitchDefaultLabel",
613+
nameForDiagnostics: nil,
614+
kind: "Syntax",
615+
children: [
616+
Child(name: "DefaultKeyword",
617+
kind: "DefaultToken",
618+
tokenChoices: [
619+
"Default"
620+
]),
621+
Child(name: "Colon",
622+
kind: "ColonToken",
623+
tokenChoices: [
624+
"Colon"
625+
])
626+
]),
627+
628+
Node(name: "CaseItem",
629+
nameForDiagnostics: nil,
630+
kind: "Syntax",
631+
traits: [
632+
"WithTrailingComma"
633+
],
634+
children: [
635+
Child(name: "Pattern",
636+
kind: "Pattern"),
637+
Child(name: "WhereClause",
638+
kind: "WhereClause",
639+
isOptional: true),
640+
Child(name: "TrailingComma",
641+
kind: "CommaToken",
642+
isOptional: true,
643+
tokenChoices: [
644+
"Comma"
645+
])
646+
]),
647+
496648
Node(name: "UnresolvedTernaryExpr",
497649
nameForDiagnostics: nil,
498650
kind: "Expr",

CodeGeneration/Sources/SyntaxSupport/gyb_generated/StmtNodes.swift

Lines changed: 0 additions & 152 deletions
Original file line numberDiff line numberDiff line change
@@ -91,14 +91,6 @@ public let STMT_NODES: [Node] = [
9191
kind: "Expr")
9292
]),
9393

94-
Node(name: "SwitchCaseList",
95-
nameForDiagnostics: nil,
96-
kind: "SyntaxCollection",
97-
element: "Syntax",
98-
elementName: "SwitchCase",
99-
elementChoices: ["SwitchCase", "IfConfigDecl"],
100-
elementsSeparatedByNewline: true),
101-
10294
Node(name: "RepeatWhileStmt",
10395
nameForDiagnostics: "'repeat' statement",
10496
kind: "Stmt",
@@ -212,36 +204,6 @@ public let STMT_NODES: [Node] = [
212204
kind: "CodeBlock")
213205
]),
214206

215-
Node(name: "SwitchStmt",
216-
nameForDiagnostics: "'switch' statement",
217-
kind: "Stmt",
218-
traits: [
219-
"Braced"
220-
],
221-
children: [
222-
Child(name: "SwitchKeyword",
223-
kind: "SwitchToken",
224-
tokenChoices: [
225-
"Switch"
226-
]),
227-
Child(name: "Expression",
228-
kind: "Expr"),
229-
Child(name: "LeftBrace",
230-
kind: "LeftBraceToken",
231-
tokenChoices: [
232-
"LeftBrace"
233-
]),
234-
Child(name: "Cases",
235-
kind: "SwitchCaseList",
236-
collectionElementName: "Case"),
237-
Child(name: "RightBrace",
238-
kind: "RightBraceToken",
239-
tokenChoices: [
240-
"RightBrace"
241-
],
242-
requiresLeadingNewline: true)
243-
]),
244-
245207
Node(name: "CatchClauseList",
246208
nameForDiagnostics: "'catch' clause",
247209
kind: "SyntaxCollection",
@@ -520,101 +482,6 @@ public let STMT_NODES: [Node] = [
520482
kind: "Expr")
521483
]),
522484

523-
Node(name: "IfStmt",
524-
nameForDiagnostics: "'if' statement",
525-
kind: "Stmt",
526-
traits: [
527-
"WithCodeBlock"
528-
],
529-
children: [
530-
Child(name: "IfKeyword",
531-
kind: "IfToken",
532-
tokenChoices: [
533-
"If"
534-
]),
535-
Child(name: "Conditions",
536-
kind: "ConditionElementList",
537-
collectionElementName: "Condition"),
538-
Child(name: "Body",
539-
kind: "CodeBlock"),
540-
Child(name: "ElseKeyword",
541-
kind: "ElseToken",
542-
isOptional: true,
543-
tokenChoices: [
544-
"Else"
545-
]),
546-
Child(name: "ElseBody",
547-
kind: "Syntax",
548-
isOptional: true,
549-
nodeChoices: [
550-
Child(name: "IfStmt",
551-
kind: "IfStmt"),
552-
Child(name: "CodeBlock",
553-
kind: "CodeBlock")
554-
])
555-
]),
556-
557-
Node(name: "SwitchCase",
558-
nameForDiagnostics: "switch case",
559-
kind: "Syntax",
560-
traits: [
561-
"WithStatements"
562-
],
563-
parserFunction: "parseSwitchCase",
564-
children: [
565-
Child(name: "UnknownAttr",
566-
kind: "Attribute",
567-
isOptional: true),
568-
Child(name: "Label",
569-
kind: "Syntax",
570-
nodeChoices: [
571-
Child(name: "Default",
572-
kind: "SwitchDefaultLabel"),
573-
Child(name: "Case",
574-
kind: "SwitchCaseLabel")
575-
]),
576-
Child(name: "Statements",
577-
kind: "CodeBlockItemList",
578-
collectionElementName: "Statement",
579-
isIndented: true)
580-
]),
581-
582-
Node(name: "SwitchDefaultLabel",
583-
nameForDiagnostics: nil,
584-
kind: "Syntax",
585-
children: [
586-
Child(name: "DefaultKeyword",
587-
kind: "DefaultToken",
588-
tokenChoices: [
589-
"Default"
590-
]),
591-
Child(name: "Colon",
592-
kind: "ColonToken",
593-
tokenChoices: [
594-
"Colon"
595-
])
596-
]),
597-
598-
Node(name: "CaseItem",
599-
nameForDiagnostics: nil,
600-
kind: "Syntax",
601-
traits: [
602-
"WithTrailingComma"
603-
],
604-
children: [
605-
Child(name: "Pattern",
606-
kind: "Pattern"),
607-
Child(name: "WhereClause",
608-
kind: "WhereClause",
609-
isOptional: true),
610-
Child(name: "TrailingComma",
611-
kind: "CommaToken",
612-
isOptional: true,
613-
tokenChoices: [
614-
"Comma"
615-
])
616-
]),
617-
618485
Node(name: "CatchItem",
619486
nameForDiagnostics: nil,
620487
kind: "Syntax",
@@ -636,25 +503,6 @@ public let STMT_NODES: [Node] = [
636503
])
637504
]),
638505

639-
Node(name: "SwitchCaseLabel",
640-
nameForDiagnostics: nil,
641-
kind: "Syntax",
642-
children: [
643-
Child(name: "CaseKeyword",
644-
kind: "CaseToken",
645-
tokenChoices: [
646-
"Case"
647-
]),
648-
Child(name: "CaseItems",
649-
kind: "CaseItemList",
650-
collectionElementName: "CaseItem"),
651-
Child(name: "Colon",
652-
kind: "ColonToken",
653-
tokenChoices: [
654-
"Colon"
655-
])
656-
]),
657-
658506
Node(name: "CatchClause",
659507
nameForDiagnostics: "'catch' clause",
660508
kind: "Syntax",

Sources/SwiftBasicFormat/generated/BasicFormat.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ open class BasicFormat: SyntaxRewriter {
103103
return true
104104
case \MemberDeclBlockSyntax.rightBrace:
105105
return true
106-
case \SwitchStmtSyntax.rightBrace:
106+
case \SwitchExprSyntax.rightBrace:
107107
return true
108108
default:
109109
return putNextTokenOnNewLine

0 commit comments

Comments
 (0)