Skip to content

Commit 3200bf0

Browse files
committed
updates
1 parent 730894b commit 3200bf0

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

Sources/SwiftParser/Declarations.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ extension DeclarationModifier {
2121
.nonmutating, .optional, .override, .postfix, .prefix, .reasync,
2222
.required, .rethrows, .staticKeyword, .weak:
2323
return false
24-
case .fileprivateKeyword, .internalKeyword, .open, .privateKeyword,
24+
case .fileprivateKeyword, .internalKeyword, .package, .open, .privateKeyword,
2525
.publicKeyword, .unowned:
2626
return true
2727
}

Sources/SwiftParser/Modifiers.swift

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ extension Parser {
2424
(.internalKeyword, _)?,
2525
(.publicKeyword, _)?:
2626
elements.append(parseAccessLevelModifier())
27+
case (.package, _)?:
28+
elements.append(parsePackageAccessLevelModifier())
2729
case (.open, _)?:
2830
elements.append(parseOpenAccessLevelModifier())
2931
case (.staticKeyword, let handle)?:
@@ -129,6 +131,17 @@ extension Parser {
129131
)
130132
}
131133

134+
mutating func parsePackageAccessLevelModifier() -> RawDeclModifierSyntax {
135+
let (unexpectedBeforeName, name) = self.expectContextualKeyword("package")
136+
let details = self.parseAccessModifierDetails()
137+
return RawDeclModifierSyntax(
138+
unexpectedBeforeName,
139+
name: name,
140+
detail: details,
141+
arena: self.arena
142+
)
143+
}
144+
132145
mutating func parseOpenAccessLevelModifier() -> RawDeclModifierSyntax {
133146
let (unexpectedBeforeName, name) = self.expectContextualKeyword("open")
134147
let details = self.parseAccessModifierDetails()

Sources/SwiftParser/RawTokenKindSubset.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,7 @@ enum ContextualDeclKeyword: SyntaxText, ContextualKeywords {
201201
case mutating = "mutating"
202202
case nonisolated = "nonisolated"
203203
case nonmutating = "nonmutating"
204+
case package = "package"
204205
case open = "open"
205206
case optional = "optional"
206207
case override = "override"

0 commit comments

Comments
 (0)