Skip to content

Commit 33a5780

Browse files
authored
Merge pull request #628 from rintaro/parse-sequenceexpr
[Parser] Simplify sequence expression parsing
2 parents 276d2e0 + f78fc5d commit 33a5780

File tree

19 files changed

+1054
-257
lines changed

19 files changed

+1054
-257
lines changed

Sources/SwiftParser/Expressions.swift

Lines changed: 165 additions & 181 deletions
Large diffs are not rendered by default.

Sources/SwiftSyntax/Raw/gyb_generated/RawSyntaxNodes.swift

Lines changed: 135 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public struct RawExprSyntax: RawExprSyntaxNodeProtocol {
6161

6262
public static func isKindOf(_ raw: RawSyntax) -> Bool {
6363
switch raw.kind {
64-
case .unknownExpr, .missingExpr, .inOutExpr, .poundColumnExpr, .tryExpr, .awaitExpr, .moveExpr, .identifierExpr, .superRefExpr, .nilLiteralExpr, .discardAssignmentExpr, .assignmentExpr, .sequenceExpr, .poundLineExpr, .poundFileExpr, .poundFileIDExpr, .poundFilePathExpr, .poundFunctionExpr, .poundDsohandleExpr, .symbolicReferenceExpr, .prefixOperatorExpr, .binaryOperatorExpr, .arrowExpr, .infixOperatorExpr, .floatLiteralExpr, .tupleExpr, .arrayExpr, .dictionaryExpr, .integerLiteralExpr, .booleanLiteralExpr, .unresolvedTernaryExpr, .ternaryExpr, .memberAccessExpr, .isExpr, .asExpr, .typeExpr, .closureExpr, .unresolvedPatternExpr, .functionCallExpr, .subscriptExpr, .optionalChainingExpr, .forcedValueExpr, .postfixUnaryExpr, .specializeExpr, .stringLiteralExpr, .regexLiteralExpr, .keyPathExpr, .keyPathBaseExpr, .objcKeyPathExpr, .objcSelectorExpr, .postfixIfConfigExpr, .editorPlaceholderExpr, .objectLiteralExpr: return true
64+
case .unknownExpr, .missingExpr, .inOutExpr, .poundColumnExpr, .tryExpr, .awaitExpr, .moveExpr, .identifierExpr, .superRefExpr, .nilLiteralExpr, .discardAssignmentExpr, .assignmentExpr, .sequenceExpr, .poundLineExpr, .poundFileExpr, .poundFileIDExpr, .poundFilePathExpr, .poundFunctionExpr, .poundDsohandleExpr, .symbolicReferenceExpr, .prefixOperatorExpr, .binaryOperatorExpr, .arrowExpr, .infixOperatorExpr, .floatLiteralExpr, .tupleExpr, .arrayExpr, .dictionaryExpr, .integerLiteralExpr, .booleanLiteralExpr, .unresolvedTernaryExpr, .ternaryExpr, .memberAccessExpr, .unresolvedIsExpr, .isExpr, .unresolvedAsExpr, .asExpr, .typeExpr, .closureExpr, .unresolvedPatternExpr, .functionCallExpr, .subscriptExpr, .optionalChainingExpr, .forcedValueExpr, .postfixUnaryExpr, .specializeExpr, .stringLiteralExpr, .regexLiteralExpr, .keyPathExpr, .keyPathBaseExpr, .objcKeyPathExpr, .objcSelectorExpr, .postfixIfConfigExpr, .editorPlaceholderExpr, .objectLiteralExpr: return true
6565
default: return false
6666
}
6767
}
@@ -2836,13 +2836,13 @@ public struct RawMemberAccessExprSyntax: RawExprSyntaxNodeProtocol {
28362836
}
28372837

28382838
@_spi(RawSyntax)
2839-
public struct RawIsExprSyntax: RawExprSyntaxNodeProtocol {
2839+
public struct RawUnresolvedIsExprSyntax: RawExprSyntaxNodeProtocol {
28402840
var layoutView: RawSyntaxLayoutView {
28412841
return raw.layoutView!
28422842
}
28432843

28442844
public static func isKindOf(_ raw: RawSyntax) -> Bool {
2845-
return raw.kind == .isExpr
2845+
return raw.kind == .unresolvedIsExpr
28462846
}
28472847

28482848
public var raw: RawSyntax
@@ -2859,17 +2859,13 @@ public struct RawIsExprSyntax: RawExprSyntaxNodeProtocol {
28592859
public init(
28602860
_ unexpectedBeforeIsTok: RawUnexpectedNodesSyntax? = nil,
28612861
isTok: RawTokenSyntax,
2862-
_ unexpectedBetweenIsTokAndTypeName: RawUnexpectedNodesSyntax? = nil,
2863-
typeName: RawTypeSyntax,
28642862
arena: __shared SyntaxArena
28652863
) {
28662864
let raw = RawSyntax.makeLayout(
2867-
kind: .isExpr, uninitializedCount: 4, arena: arena) { layout in
2865+
kind: .unresolvedIsExpr, uninitializedCount: 2, arena: arena) { layout in
28682866
layout.initialize(repeating: nil)
28692867
layout[0] = unexpectedBeforeIsTok?.raw
28702868
layout[1] = isTok.raw
2871-
layout[2] = unexpectedBetweenIsTokAndTypeName?.raw
2872-
layout[3] = typeName.raw
28732869
}
28742870
self.init(raw: raw)
28752871
}
@@ -2880,22 +2876,79 @@ public struct RawIsExprSyntax: RawExprSyntaxNodeProtocol {
28802876
public var isTok: RawTokenSyntax {
28812877
layoutView.children[1].map(RawTokenSyntax.init(raw:))!
28822878
}
2883-
public var unexpectedBetweenIsTokAndTypeName: RawUnexpectedNodesSyntax? {
2879+
}
2880+
2881+
@_spi(RawSyntax)
2882+
public struct RawIsExprSyntax: RawExprSyntaxNodeProtocol {
2883+
var layoutView: RawSyntaxLayoutView {
2884+
return raw.layoutView!
2885+
}
2886+
2887+
public static func isKindOf(_ raw: RawSyntax) -> Bool {
2888+
return raw.kind == .isExpr
2889+
}
2890+
2891+
public var raw: RawSyntax
2892+
init(raw: RawSyntax) {
2893+
assert(Self.isKindOf(raw))
2894+
self.raw = raw
2895+
}
2896+
2897+
public init?<Node: RawSyntaxNodeProtocol>(_ other: Node) {
2898+
guard Self.isKindOf(other.raw) else { return nil }
2899+
self.init(raw: other.raw)
2900+
}
2901+
2902+
public init(
2903+
_ unexpectedBeforeExpression: RawUnexpectedNodesSyntax? = nil,
2904+
expression: RawExprSyntax,
2905+
_ unexpectedBetweenExpressionAndIsTok: RawUnexpectedNodesSyntax? = nil,
2906+
isTok: RawTokenSyntax,
2907+
_ unexpectedBetweenIsTokAndTypeName: RawUnexpectedNodesSyntax? = nil,
2908+
typeName: RawTypeSyntax,
2909+
arena: __shared SyntaxArena
2910+
) {
2911+
let raw = RawSyntax.makeLayout(
2912+
kind: .isExpr, uninitializedCount: 6, arena: arena) { layout in
2913+
layout.initialize(repeating: nil)
2914+
layout[0] = unexpectedBeforeExpression?.raw
2915+
layout[1] = expression.raw
2916+
layout[2] = unexpectedBetweenExpressionAndIsTok?.raw
2917+
layout[3] = isTok.raw
2918+
layout[4] = unexpectedBetweenIsTokAndTypeName?.raw
2919+
layout[5] = typeName.raw
2920+
}
2921+
self.init(raw: raw)
2922+
}
2923+
2924+
public var unexpectedBeforeExpression: RawUnexpectedNodesSyntax? {
2925+
layoutView.children[0].map(RawUnexpectedNodesSyntax.init(raw:))
2926+
}
2927+
public var expression: RawExprSyntax {
2928+
layoutView.children[1].map(RawExprSyntax.init(raw:))!
2929+
}
2930+
public var unexpectedBetweenExpressionAndIsTok: RawUnexpectedNodesSyntax? {
28842931
layoutView.children[2].map(RawUnexpectedNodesSyntax.init(raw:))
28852932
}
2933+
public var isTok: RawTokenSyntax {
2934+
layoutView.children[3].map(RawTokenSyntax.init(raw:))!
2935+
}
2936+
public var unexpectedBetweenIsTokAndTypeName: RawUnexpectedNodesSyntax? {
2937+
layoutView.children[4].map(RawUnexpectedNodesSyntax.init(raw:))
2938+
}
28862939
public var typeName: RawTypeSyntax {
2887-
layoutView.children[3].map(RawTypeSyntax.init(raw:))!
2940+
layoutView.children[5].map(RawTypeSyntax.init(raw:))!
28882941
}
28892942
}
28902943

28912944
@_spi(RawSyntax)
2892-
public struct RawAsExprSyntax: RawExprSyntaxNodeProtocol {
2945+
public struct RawUnresolvedAsExprSyntax: RawExprSyntaxNodeProtocol {
28932946
var layoutView: RawSyntaxLayoutView {
28942947
return raw.layoutView!
28952948
}
28962949

28972950
public static func isKindOf(_ raw: RawSyntax) -> Bool {
2898-
return raw.kind == .asExpr
2951+
return raw.kind == .unresolvedAsExpr
28992952
}
29002953

29012954
public var raw: RawSyntax
@@ -2914,19 +2967,15 @@ public struct RawAsExprSyntax: RawExprSyntaxNodeProtocol {
29142967
asTok: RawTokenSyntax,
29152968
_ unexpectedBetweenAsTokAndQuestionOrExclamationMark: RawUnexpectedNodesSyntax? = nil,
29162969
questionOrExclamationMark: RawTokenSyntax?,
2917-
_ unexpectedBetweenQuestionOrExclamationMarkAndTypeName: RawUnexpectedNodesSyntax? = nil,
2918-
typeName: RawTypeSyntax,
29192970
arena: __shared SyntaxArena
29202971
) {
29212972
let raw = RawSyntax.makeLayout(
2922-
kind: .asExpr, uninitializedCount: 6, arena: arena) { layout in
2973+
kind: .unresolvedAsExpr, uninitializedCount: 4, arena: arena) { layout in
29232974
layout.initialize(repeating: nil)
29242975
layout[0] = unexpectedBeforeAsTok?.raw
29252976
layout[1] = asTok.raw
29262977
layout[2] = unexpectedBetweenAsTokAndQuestionOrExclamationMark?.raw
29272978
layout[3] = questionOrExclamationMark?.raw
2928-
layout[4] = unexpectedBetweenQuestionOrExclamationMarkAndTypeName?.raw
2929-
layout[5] = typeName.raw
29302979
}
29312980
self.init(raw: raw)
29322981
}
@@ -2943,11 +2992,78 @@ public struct RawAsExprSyntax: RawExprSyntaxNodeProtocol {
29432992
public var questionOrExclamationMark: RawTokenSyntax? {
29442993
layoutView.children[3].map(RawTokenSyntax.init(raw:))
29452994
}
2946-
public var unexpectedBetweenQuestionOrExclamationMarkAndTypeName: RawUnexpectedNodesSyntax? {
2995+
}
2996+
2997+
@_spi(RawSyntax)
2998+
public struct RawAsExprSyntax: RawExprSyntaxNodeProtocol {
2999+
var layoutView: RawSyntaxLayoutView {
3000+
return raw.layoutView!
3001+
}
3002+
3003+
public static func isKindOf(_ raw: RawSyntax) -> Bool {
3004+
return raw.kind == .asExpr
3005+
}
3006+
3007+
public var raw: RawSyntax
3008+
init(raw: RawSyntax) {
3009+
assert(Self.isKindOf(raw))
3010+
self.raw = raw
3011+
}
3012+
3013+
public init?<Node: RawSyntaxNodeProtocol>(_ other: Node) {
3014+
guard Self.isKindOf(other.raw) else { return nil }
3015+
self.init(raw: other.raw)
3016+
}
3017+
3018+
public init(
3019+
_ unexpectedBeforeExpression: RawUnexpectedNodesSyntax? = nil,
3020+
expression: RawExprSyntax,
3021+
_ unexpectedBetweenExpressionAndAsTok: RawUnexpectedNodesSyntax? = nil,
3022+
asTok: RawTokenSyntax,
3023+
_ unexpectedBetweenAsTokAndQuestionOrExclamationMark: RawUnexpectedNodesSyntax? = nil,
3024+
questionOrExclamationMark: RawTokenSyntax?,
3025+
_ unexpectedBetweenQuestionOrExclamationMarkAndTypeName: RawUnexpectedNodesSyntax? = nil,
3026+
typeName: RawTypeSyntax,
3027+
arena: __shared SyntaxArena
3028+
) {
3029+
let raw = RawSyntax.makeLayout(
3030+
kind: .asExpr, uninitializedCount: 8, arena: arena) { layout in
3031+
layout.initialize(repeating: nil)
3032+
layout[0] = unexpectedBeforeExpression?.raw
3033+
layout[1] = expression.raw
3034+
layout[2] = unexpectedBetweenExpressionAndAsTok?.raw
3035+
layout[3] = asTok.raw
3036+
layout[4] = unexpectedBetweenAsTokAndQuestionOrExclamationMark?.raw
3037+
layout[5] = questionOrExclamationMark?.raw
3038+
layout[6] = unexpectedBetweenQuestionOrExclamationMarkAndTypeName?.raw
3039+
layout[7] = typeName.raw
3040+
}
3041+
self.init(raw: raw)
3042+
}
3043+
3044+
public var unexpectedBeforeExpression: RawUnexpectedNodesSyntax? {
3045+
layoutView.children[0].map(RawUnexpectedNodesSyntax.init(raw:))
3046+
}
3047+
public var expression: RawExprSyntax {
3048+
layoutView.children[1].map(RawExprSyntax.init(raw:))!
3049+
}
3050+
public var unexpectedBetweenExpressionAndAsTok: RawUnexpectedNodesSyntax? {
3051+
layoutView.children[2].map(RawUnexpectedNodesSyntax.init(raw:))
3052+
}
3053+
public var asTok: RawTokenSyntax {
3054+
layoutView.children[3].map(RawTokenSyntax.init(raw:))!
3055+
}
3056+
public var unexpectedBetweenAsTokAndQuestionOrExclamationMark: RawUnexpectedNodesSyntax? {
29473057
layoutView.children[4].map(RawUnexpectedNodesSyntax.init(raw:))
29483058
}
3059+
public var questionOrExclamationMark: RawTokenSyntax? {
3060+
layoutView.children[5].map(RawTokenSyntax.init(raw:))
3061+
}
3062+
public var unexpectedBetweenQuestionOrExclamationMarkAndTypeName: RawUnexpectedNodesSyntax? {
3063+
layoutView.children[6].map(RawUnexpectedNodesSyntax.init(raw:))
3064+
}
29493065
public var typeName: RawTypeSyntax {
2950-
layoutView.children[5].map(RawTypeSyntax.init(raw:))!
3066+
layoutView.children[7].map(RawTypeSyntax.init(raw:))!
29513067
}
29523068
}
29533069

Sources/SwiftSyntax/Raw/gyb_generated/RawSyntaxValidation.swift

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -375,21 +375,37 @@ func validateLayout(layout: RawSyntaxBuffer, as kind: SyntaxKind) {
375375
_verify(layout[6], as: RawUnexpectedNodesSyntax?.self)
376376
_verify(layout[7], as: RawDeclNameArgumentsSyntax?.self)
377377
break
378+
case .unresolvedIsExpr:
379+
assert(layout.count == 2)
380+
_verify(layout[0], as: RawUnexpectedNodesSyntax?.self)
381+
_verify(layout[1], as: RawTokenSyntax.self)
382+
break
378383
case .isExpr:
384+
assert(layout.count == 6)
385+
_verify(layout[0], as: RawUnexpectedNodesSyntax?.self)
386+
_verify(layout[1], as: RawExprSyntax.self)
387+
_verify(layout[2], as: RawUnexpectedNodesSyntax?.self)
388+
_verify(layout[3], as: RawTokenSyntax.self)
389+
_verify(layout[4], as: RawUnexpectedNodesSyntax?.self)
390+
_verify(layout[5], as: RawTypeSyntax.self)
391+
break
392+
case .unresolvedAsExpr:
379393
assert(layout.count == 4)
380394
_verify(layout[0], as: RawUnexpectedNodesSyntax?.self)
381395
_verify(layout[1], as: RawTokenSyntax.self)
382396
_verify(layout[2], as: RawUnexpectedNodesSyntax?.self)
383-
_verify(layout[3], as: RawTypeSyntax.self)
397+
_verify(layout[3], as: RawTokenSyntax?.self)
384398
break
385399
case .asExpr:
386-
assert(layout.count == 6)
400+
assert(layout.count == 8)
387401
_verify(layout[0], as: RawUnexpectedNodesSyntax?.self)
388-
_verify(layout[1], as: RawTokenSyntax.self)
402+
_verify(layout[1], as: RawExprSyntax.self)
389403
_verify(layout[2], as: RawUnexpectedNodesSyntax?.self)
390-
_verify(layout[3], as: RawTokenSyntax?.self)
404+
_verify(layout[3], as: RawTokenSyntax.self)
391405
_verify(layout[4], as: RawUnexpectedNodesSyntax?.self)
392-
_verify(layout[5], as: RawTypeSyntax.self)
406+
_verify(layout[5], as: RawTokenSyntax?.self)
407+
_verify(layout[6], as: RawUnexpectedNodesSyntax?.self)
408+
_verify(layout[7], as: RawTypeSyntax.self)
393409
break
394410
case .typeExpr:
395411
assert(layout.count == 2)

Sources/SwiftSyntax/gyb_generated/Misc.swift

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,12 +361,24 @@ extension SyntaxNode {
361361
return MemberAccessExprSyntax(asSyntaxData)
362362
}
363363

364+
public var isUnresolvedIsExpr: Bool { return raw.kind == .unresolvedIsExpr }
365+
public var asUnresolvedIsExpr: UnresolvedIsExprSyntax? {
366+
guard isUnresolvedIsExpr else { return nil }
367+
return UnresolvedIsExprSyntax(asSyntaxData)
368+
}
369+
364370
public var isIsExpr: Bool { return raw.kind == .isExpr }
365371
public var asIsExpr: IsExprSyntax? {
366372
guard isIsExpr else { return nil }
367373
return IsExprSyntax(asSyntaxData)
368374
}
369375

376+
public var isUnresolvedAsExpr: Bool { return raw.kind == .unresolvedAsExpr }
377+
public var asUnresolvedAsExpr: UnresolvedAsExprSyntax? {
378+
guard isUnresolvedAsExpr else { return nil }
379+
return UnresolvedAsExprSyntax(asSyntaxData)
380+
}
381+
370382
public var isAsExpr: Bool { return raw.kind == .asExpr }
371383
public var asAsExpr: AsExprSyntax? {
372384
guard isAsExpr else { return nil }
@@ -1717,8 +1729,12 @@ extension Syntax {
17171729
return node
17181730
case .memberAccessExpr(let node):
17191731
return node
1732+
case .unresolvedIsExpr(let node):
1733+
return node
17201734
case .isExpr(let node):
17211735
return node
1736+
case .unresolvedAsExpr(let node):
1737+
return node
17221738
case .asExpr(let node):
17231739
return node
17241740
case .typeExpr(let node):

Sources/SwiftSyntax/gyb_generated/SyntaxAnyVisitor.swift

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -460,13 +460,27 @@ open class SyntaxAnyVisitor: SyntaxVisitor {
460460
override open func visitPost(_ node: MemberAccessExprSyntax) {
461461
visitAnyPost(node._syntaxNode)
462462
}
463+
override open func visit(_ node: UnresolvedIsExprSyntax) -> SyntaxVisitorContinueKind {
464+
return visitAny(node._syntaxNode)
465+
}
466+
467+
override open func visitPost(_ node: UnresolvedIsExprSyntax) {
468+
visitAnyPost(node._syntaxNode)
469+
}
463470
override open func visit(_ node: IsExprSyntax) -> SyntaxVisitorContinueKind {
464471
return visitAny(node._syntaxNode)
465472
}
466473

467474
override open func visitPost(_ node: IsExprSyntax) {
468475
visitAnyPost(node._syntaxNode)
469476
}
477+
override open func visit(_ node: UnresolvedAsExprSyntax) -> SyntaxVisitorContinueKind {
478+
return visitAny(node._syntaxNode)
479+
}
480+
481+
override open func visitPost(_ node: UnresolvedAsExprSyntax) {
482+
visitAnyPost(node._syntaxNode)
483+
}
470484
override open func visit(_ node: AsExprSyntax) -> SyntaxVisitorContinueKind {
471485
return visitAny(node._syntaxNode)
472486
}

Sources/SwiftSyntax/gyb_generated/SyntaxBaseNodes.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ public struct ExprSyntax: ExprSyntaxProtocol, SyntaxHashable {
159159
/// `nil` if the conversion is not possible.
160160
public init?(_ syntax: Syntax) {
161161
switch syntax.raw.kind {
162-
case .unknownExpr, .missingExpr, .inOutExpr, .poundColumnExpr, .tryExpr, .awaitExpr, .moveExpr, .identifierExpr, .superRefExpr, .nilLiteralExpr, .discardAssignmentExpr, .assignmentExpr, .sequenceExpr, .poundLineExpr, .poundFileExpr, .poundFileIDExpr, .poundFilePathExpr, .poundFunctionExpr, .poundDsohandleExpr, .symbolicReferenceExpr, .prefixOperatorExpr, .binaryOperatorExpr, .arrowExpr, .infixOperatorExpr, .floatLiteralExpr, .tupleExpr, .arrayExpr, .dictionaryExpr, .integerLiteralExpr, .booleanLiteralExpr, .unresolvedTernaryExpr, .ternaryExpr, .memberAccessExpr, .isExpr, .asExpr, .typeExpr, .closureExpr, .unresolvedPatternExpr, .functionCallExpr, .subscriptExpr, .optionalChainingExpr, .forcedValueExpr, .postfixUnaryExpr, .specializeExpr, .stringLiteralExpr, .regexLiteralExpr, .keyPathExpr, .keyPathBaseExpr, .objcKeyPathExpr, .objcSelectorExpr, .postfixIfConfigExpr, .editorPlaceholderExpr, .objectLiteralExpr:
162+
case .unknownExpr, .missingExpr, .inOutExpr, .poundColumnExpr, .tryExpr, .awaitExpr, .moveExpr, .identifierExpr, .superRefExpr, .nilLiteralExpr, .discardAssignmentExpr, .assignmentExpr, .sequenceExpr, .poundLineExpr, .poundFileExpr, .poundFileIDExpr, .poundFilePathExpr, .poundFunctionExpr, .poundDsohandleExpr, .symbolicReferenceExpr, .prefixOperatorExpr, .binaryOperatorExpr, .arrowExpr, .infixOperatorExpr, .floatLiteralExpr, .tupleExpr, .arrayExpr, .dictionaryExpr, .integerLiteralExpr, .booleanLiteralExpr, .unresolvedTernaryExpr, .ternaryExpr, .memberAccessExpr, .unresolvedIsExpr, .isExpr, .unresolvedAsExpr, .asExpr, .typeExpr, .closureExpr, .unresolvedPatternExpr, .functionCallExpr, .subscriptExpr, .optionalChainingExpr, .forcedValueExpr, .postfixUnaryExpr, .specializeExpr, .stringLiteralExpr, .regexLiteralExpr, .keyPathExpr, .keyPathBaseExpr, .objcKeyPathExpr, .objcSelectorExpr, .postfixIfConfigExpr, .editorPlaceholderExpr, .objectLiteralExpr:
163163
self._syntaxNode = syntax
164164
default:
165165
return nil
@@ -173,7 +173,7 @@ public struct ExprSyntax: ExprSyntaxProtocol, SyntaxHashable {
173173
// Assert that the kind of the given data matches in debug builds.
174174
#if DEBUG
175175
switch data.raw.kind {
176-
case .unknownExpr, .missingExpr, .inOutExpr, .poundColumnExpr, .tryExpr, .awaitExpr, .moveExpr, .identifierExpr, .superRefExpr, .nilLiteralExpr, .discardAssignmentExpr, .assignmentExpr, .sequenceExpr, .poundLineExpr, .poundFileExpr, .poundFileIDExpr, .poundFilePathExpr, .poundFunctionExpr, .poundDsohandleExpr, .symbolicReferenceExpr, .prefixOperatorExpr, .binaryOperatorExpr, .arrowExpr, .infixOperatorExpr, .floatLiteralExpr, .tupleExpr, .arrayExpr, .dictionaryExpr, .integerLiteralExpr, .booleanLiteralExpr, .unresolvedTernaryExpr, .ternaryExpr, .memberAccessExpr, .isExpr, .asExpr, .typeExpr, .closureExpr, .unresolvedPatternExpr, .functionCallExpr, .subscriptExpr, .optionalChainingExpr, .forcedValueExpr, .postfixUnaryExpr, .specializeExpr, .stringLiteralExpr, .regexLiteralExpr, .keyPathExpr, .keyPathBaseExpr, .objcKeyPathExpr, .objcSelectorExpr, .postfixIfConfigExpr, .editorPlaceholderExpr, .objectLiteralExpr:
176+
case .unknownExpr, .missingExpr, .inOutExpr, .poundColumnExpr, .tryExpr, .awaitExpr, .moveExpr, .identifierExpr, .superRefExpr, .nilLiteralExpr, .discardAssignmentExpr, .assignmentExpr, .sequenceExpr, .poundLineExpr, .poundFileExpr, .poundFileIDExpr, .poundFilePathExpr, .poundFunctionExpr, .poundDsohandleExpr, .symbolicReferenceExpr, .prefixOperatorExpr, .binaryOperatorExpr, .arrowExpr, .infixOperatorExpr, .floatLiteralExpr, .tupleExpr, .arrayExpr, .dictionaryExpr, .integerLiteralExpr, .booleanLiteralExpr, .unresolvedTernaryExpr, .ternaryExpr, .memberAccessExpr, .unresolvedIsExpr, .isExpr, .unresolvedAsExpr, .asExpr, .typeExpr, .closureExpr, .unresolvedPatternExpr, .functionCallExpr, .subscriptExpr, .optionalChainingExpr, .forcedValueExpr, .postfixUnaryExpr, .specializeExpr, .stringLiteralExpr, .regexLiteralExpr, .keyPathExpr, .keyPathBaseExpr, .objcKeyPathExpr, .objcSelectorExpr, .postfixIfConfigExpr, .editorPlaceholderExpr, .objectLiteralExpr:
177177
break
178178
default:
179179
fatalError("Unable to create ExprSyntax from \(data.raw.kind)")

Sources/SwiftSyntax/gyb_generated/SyntaxEnum.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,9 @@ public enum SyntaxEnum {
7373
case unresolvedTernaryExpr(UnresolvedTernaryExprSyntax)
7474
case ternaryExpr(TernaryExprSyntax)
7575
case memberAccessExpr(MemberAccessExprSyntax)
76+
case unresolvedIsExpr(UnresolvedIsExprSyntax)
7677
case isExpr(IsExprSyntax)
78+
case unresolvedAsExpr(UnresolvedAsExprSyntax)
7779
case asExpr(AsExprSyntax)
7880
case typeExpr(TypeExprSyntax)
7981
case closureCaptureItem(ClosureCaptureItemSyntax)
@@ -401,8 +403,12 @@ public extension Syntax {
401403
return .ternaryExpr(TernaryExprSyntax(self)!)
402404
case .memberAccessExpr:
403405
return .memberAccessExpr(MemberAccessExprSyntax(self)!)
406+
case .unresolvedIsExpr:
407+
return .unresolvedIsExpr(UnresolvedIsExprSyntax(self)!)
404408
case .isExpr:
405409
return .isExpr(IsExprSyntax(self)!)
410+
case .unresolvedAsExpr:
411+
return .unresolvedAsExpr(UnresolvedAsExprSyntax(self)!)
406412
case .asExpr:
407413
return .asExpr(AsExprSyntax(self)!)
408414
case .typeExpr:

0 commit comments

Comments
 (0)