Skip to content

Commit 1c7ebfa

Browse files
authored
Merge pull request #274 from ahoppen/pr/update-gyb-generated
Adjust gyb_generated for syntax parsing fixes
2 parents 599ba41 + 845c9bf commit 1c7ebfa

File tree

6 files changed

+93
-16
lines changed

6 files changed

+93
-16
lines changed

Sources/SwiftSyntax/gyb_generated/Misc.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1952,6 +1952,6 @@ extension Syntax {
19521952
extension SyntaxParser {
19531953
static func verifyNodeDeclarationHash() -> Bool {
19541954
return String(cString: swiftparse_syntax_structure_versioning_identifier()!) ==
1955-
"a64f1ebd5d8a9b198af660d99d4ba7345b773b3d"
1955+
"468bcd348ceb5f9281692e63d4c80e3333a18211"
19561956
}
19571957
}

Sources/SwiftSyntax/gyb_generated/SyntaxBuilders.swift

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5136,7 +5136,7 @@ extension AccessorParameterSyntax {
51365136

51375137
public struct AccessorDeclSyntaxBuilder {
51385138
private var layout =
5139-
Array<RawSyntax?>(repeating: nil, count: 5)
5139+
Array<RawSyntax?>(repeating: nil, count: 7)
51405140

51415141
internal init() {}
51425142

@@ -5166,6 +5166,16 @@ public struct AccessorDeclSyntaxBuilder {
51665166
layout[idx] = node.raw
51675167
}
51685168

5169+
public mutating func useAsyncKeyword(_ node: TokenSyntax) {
5170+
let idx = AccessorDeclSyntax.Cursor.asyncKeyword.rawValue
5171+
layout[idx] = node.raw
5172+
}
5173+
5174+
public mutating func useThrowsKeyword(_ node: TokenSyntax) {
5175+
let idx = AccessorDeclSyntax.Cursor.throwsKeyword.rawValue
5176+
layout[idx] = node.raw
5177+
}
5178+
51695179
public mutating func useBody(_ node: CodeBlockSyntax) {
51705180
let idx = AccessorDeclSyntax.Cursor.body.rawValue
51715181
layout[idx] = node.raw
@@ -10504,9 +10514,6 @@ public struct AvailabilityVersionRestrictionSyntaxBuilder {
1050410514
if (layout[0] == nil) {
1050510515
layout[0] = RawSyntax.missingToken(TokenKind.identifier(""))
1050610516
}
10507-
if (layout[1] == nil) {
10508-
layout[1] = RawSyntax.missing(SyntaxKind.versionTuple)
10509-
}
1051010517

1051110518
return .forRoot(RawSyntax.createAndCalcLength(kind: .availabilityVersionRestriction,
1051210519
layout: layout, presence: .present))

Sources/SwiftSyntax/gyb_generated/SyntaxClassification.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ extension SyntaxClassification {
8181
return (.buildConfigId, false)
8282
case (.declModifier, 0):
8383
return (.attribute, false)
84+
case (.accessorDecl, 4):
85+
return (.keyword, false)
8486
case (.precedenceGroupRelation, 0):
8587
return (.keyword, false)
8688
case (.precedenceGroupAssociativity, 0):

Sources/SwiftSyntax/gyb_generated/SyntaxFactory.swift

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2314,12 +2314,14 @@ public enum SyntaxFactory {
23142314
], length: .zero, presence: .present))
23152315
return AccessorParameterSyntax(data)
23162316
}
2317-
public static func makeAccessorDecl(attributes: AttributeListSyntax?, modifier: DeclModifierSyntax?, accessorKind: TokenSyntax, parameter: AccessorParameterSyntax?, body: CodeBlockSyntax?) -> AccessorDeclSyntax {
2317+
public static func makeAccessorDecl(attributes: AttributeListSyntax?, modifier: DeclModifierSyntax?, accessorKind: TokenSyntax, parameter: AccessorParameterSyntax?, asyncKeyword: TokenSyntax?, throwsKeyword: TokenSyntax?, body: CodeBlockSyntax?) -> AccessorDeclSyntax {
23182318
let layout: [RawSyntax?] = [
23192319
attributes?.raw,
23202320
modifier?.raw,
23212321
accessorKind.raw,
23222322
parameter?.raw,
2323+
asyncKeyword?.raw,
2324+
throwsKeyword?.raw,
23232325
body?.raw,
23242326
]
23252327
let raw = RawSyntax.createAndCalcLength(kind: SyntaxKind.accessorDecl,
@@ -2336,6 +2338,8 @@ public enum SyntaxFactory {
23362338
RawSyntax.missingToken(TokenKind.unknown("")),
23372339
nil,
23382340
nil,
2341+
nil,
2342+
nil,
23392343
], length: .zero, presence: .present))
23402344
return AccessorDeclSyntax(data)
23412345
}
@@ -4736,10 +4740,10 @@ public enum SyntaxFactory {
47364740
], length: .zero, presence: .present))
47374741
return AvailabilityLabeledArgumentSyntax(data)
47384742
}
4739-
public static func makeAvailabilityVersionRestriction(platform: TokenSyntax, version: VersionTupleSyntax) -> AvailabilityVersionRestrictionSyntax {
4743+
public static func makeAvailabilityVersionRestriction(platform: TokenSyntax, version: VersionTupleSyntax?) -> AvailabilityVersionRestrictionSyntax {
47404744
let layout: [RawSyntax?] = [
47414745
platform.raw,
4742-
version.raw,
4746+
version?.raw,
47434747
]
47444748
let raw = RawSyntax.createAndCalcLength(kind: SyntaxKind.availabilityVersionRestriction,
47454749
layout: layout, presence: SourcePresence.present)
@@ -4751,7 +4755,7 @@ public enum SyntaxFactory {
47514755
let data = SyntaxData.forRoot(RawSyntax.create(kind: .availabilityVersionRestriction,
47524756
layout: [
47534757
RawSyntax.missingToken(TokenKind.identifier("")),
4754-
RawSyntax.missing(SyntaxKind.versionTuple),
4758+
nil,
47554759
], length: .zero, presence: .present))
47564760
return AvailabilityVersionRestrictionSyntax(data)
47574761
}

Sources/SwiftSyntax/gyb_generated/syntax_nodes/SyntaxDeclNodes.swift

Lines changed: 66 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4075,6 +4075,8 @@ public struct AccessorDeclSyntax: DeclSyntaxProtocol, SyntaxHashable {
40754075
case modifier
40764076
case accessorKind
40774077
case parameter
4078+
case asyncKeyword
4079+
case throwsKeyword
40784080
case body
40794081
}
40804082

@@ -4205,6 +4207,50 @@ public struct AccessorDeclSyntax: DeclSyntaxProtocol, SyntaxHashable {
42054207
return AccessorDeclSyntax(newData)
42064208
}
42074209

4210+
public var asyncKeyword: TokenSyntax? {
4211+
get {
4212+
let childData = data.child(at: Cursor.asyncKeyword,
4213+
parent: Syntax(self))
4214+
if childData == nil { return nil }
4215+
return TokenSyntax(childData!)
4216+
}
4217+
set(value) {
4218+
self = withAsyncKeyword(value)
4219+
}
4220+
}
4221+
4222+
/// Returns a copy of the receiver with its `asyncKeyword` replaced.
4223+
/// - param newChild: The new `asyncKeyword` to replace the node's
4224+
/// current `asyncKeyword`, if present.
4225+
public func withAsyncKeyword(
4226+
_ newChild: TokenSyntax?) -> AccessorDeclSyntax {
4227+
let raw = newChild?.raw
4228+
let newData = data.replacingChild(raw, at: Cursor.asyncKeyword)
4229+
return AccessorDeclSyntax(newData)
4230+
}
4231+
4232+
public var throwsKeyword: TokenSyntax? {
4233+
get {
4234+
let childData = data.child(at: Cursor.throwsKeyword,
4235+
parent: Syntax(self))
4236+
if childData == nil { return nil }
4237+
return TokenSyntax(childData!)
4238+
}
4239+
set(value) {
4240+
self = withThrowsKeyword(value)
4241+
}
4242+
}
4243+
4244+
/// Returns a copy of the receiver with its `throwsKeyword` replaced.
4245+
/// - param newChild: The new `throwsKeyword` to replace the node's
4246+
/// current `throwsKeyword`, if present.
4247+
public func withThrowsKeyword(
4248+
_ newChild: TokenSyntax?) -> AccessorDeclSyntax {
4249+
let raw = newChild?.raw
4250+
let newData = data.replacingChild(raw, at: Cursor.throwsKeyword)
4251+
return AccessorDeclSyntax(newData)
4252+
}
4253+
42084254
public var body: CodeBlockSyntax? {
42094255
get {
42104256
let childData = data.child(at: Cursor.body,
@@ -4230,7 +4276,7 @@ public struct AccessorDeclSyntax: DeclSyntaxProtocol, SyntaxHashable {
42304276

42314277
public func _validateLayout() {
42324278
let rawChildren = Array(RawSyntaxChildren(Syntax(self)))
4233-
assert(rawChildren.count == 5)
4279+
assert(rawChildren.count == 7)
42344280
// Check child #0 child is AttributeListSyntax or missing
42354281
if let raw = rawChildren[0].raw {
42364282
let info = rawChildren[0].syntaxInfo
@@ -4264,12 +4310,28 @@ public struct AccessorDeclSyntax: DeclSyntaxProtocol, SyntaxHashable {
42644310
let syntaxChild = Syntax(syntaxData)
42654311
assert(syntaxChild.is(AccessorParameterSyntax.self))
42664312
}
4267-
// Check child #4 child is CodeBlockSyntax or missing
4313+
// Check child #4 child is TokenSyntax or missing
42684314
if let raw = rawChildren[4].raw {
42694315
let info = rawChildren[4].syntaxInfo
42704316
let absoluteRaw = AbsoluteRawSyntax(raw: raw, info: info)
42714317
let syntaxData = SyntaxData(absoluteRaw, parent: Syntax(self))
42724318
let syntaxChild = Syntax(syntaxData)
4319+
assert(syntaxChild.is(TokenSyntax.self))
4320+
}
4321+
// Check child #5 child is TokenSyntax or missing
4322+
if let raw = rawChildren[5].raw {
4323+
let info = rawChildren[5].syntaxInfo
4324+
let absoluteRaw = AbsoluteRawSyntax(raw: raw, info: info)
4325+
let syntaxData = SyntaxData(absoluteRaw, parent: Syntax(self))
4326+
let syntaxChild = Syntax(syntaxData)
4327+
assert(syntaxChild.is(TokenSyntax.self))
4328+
}
4329+
// Check child #6 child is CodeBlockSyntax or missing
4330+
if let raw = rawChildren[6].raw {
4331+
let info = rawChildren[6].syntaxInfo
4332+
let absoluteRaw = AbsoluteRawSyntax(raw: raw, info: info)
4333+
let syntaxData = SyntaxData(absoluteRaw, parent: Syntax(self))
4334+
let syntaxChild = Syntax(syntaxData)
42734335
assert(syntaxChild.is(CodeBlockSyntax.self))
42744336
}
42754337
}
@@ -4282,6 +4344,8 @@ extension AccessorDeclSyntax: CustomReflectable {
42824344
"modifier": modifier.map(Syntax.init)?.asProtocol(SyntaxProtocol.self) as Any,
42834345
"accessorKind": Syntax(accessorKind).asProtocol(SyntaxProtocol.self),
42844346
"parameter": parameter.map(Syntax.init)?.asProtocol(SyntaxProtocol.self) as Any,
4347+
"asyncKeyword": asyncKeyword.map(Syntax.init)?.asProtocol(SyntaxProtocol.self) as Any,
4348+
"throwsKeyword": throwsKeyword.map(Syntax.init)?.asProtocol(SyntaxProtocol.self) as Any,
42854349
"body": body.map(Syntax.init)?.asProtocol(SyntaxProtocol.self) as Any,
42864350
])
42874351
}

Sources/SwiftSyntax/gyb_generated/syntax_nodes/SyntaxNodes.swift

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12747,10 +12747,11 @@ public struct AvailabilityVersionRestrictionSyntax: SyntaxProtocol, SyntaxHashab
1274712747
return AvailabilityVersionRestrictionSyntax(newData)
1274812748
}
1274912749

12750-
public var version: VersionTupleSyntax {
12750+
public var version: VersionTupleSyntax? {
1275112751
get {
1275212752
let childData = data.child(at: Cursor.version,
1275312753
parent: Syntax(self))
12754+
if childData == nil { return nil }
1275412755
return VersionTupleSyntax(childData!)
1275512756
}
1275612757
set(value) {
@@ -12763,7 +12764,7 @@ public struct AvailabilityVersionRestrictionSyntax: SyntaxProtocol, SyntaxHashab
1276312764
/// current `version`, if present.
1276412765
public func withVersion(
1276512766
_ newChild: VersionTupleSyntax?) -> AvailabilityVersionRestrictionSyntax {
12766-
let raw = newChild?.raw ?? RawSyntax.missing(SyntaxKind.versionTuple)
12767+
let raw = newChild?.raw
1276712768
let newData = data.replacingChild(raw, at: Cursor.version)
1276812769
return AvailabilityVersionRestrictionSyntax(newData)
1276912770
}
@@ -12781,8 +12782,7 @@ public struct AvailabilityVersionRestrictionSyntax: SyntaxProtocol, SyntaxHashab
1278112782
let syntaxChild = Syntax(syntaxData)
1278212783
assert(syntaxChild.is(TokenSyntax.self))
1278312784
}
12784-
// Check child #1 child is VersionTupleSyntax
12785-
assert(rawChildren[1].raw != nil)
12785+
// Check child #1 child is VersionTupleSyntax or missing
1278612786
if let raw = rawChildren[1].raw {
1278712787
let info = rawChildren[1].syntaxInfo
1278812788
let absoluteRaw = AbsoluteRawSyntax(raw: raw, info: info)
@@ -12797,7 +12797,7 @@ extension AvailabilityVersionRestrictionSyntax: CustomReflectable {
1279712797
public var customMirror: Mirror {
1279812798
return Mirror(self, children: [
1279912799
"platform": Syntax(platform).asProtocol(SyntaxProtocol.self),
12800-
"version": Syntax(version).asProtocol(SyntaxProtocol.self),
12800+
"version": version.map(Syntax.init)?.asProtocol(SyntaxProtocol.self) as Any,
1280112801
])
1280212802
}
1280312803
}

0 commit comments

Comments
 (0)