Skip to content

Commit ae1670d

Browse files
authored
Merge pull request #510 from CippoX/warning-sourceaccurate
Removed warnings
2 parents f7c295d + 437b6cb commit ae1670d

18 files changed

+238
-238
lines changed

Sources/SwiftFormatCore/LegacyTriviaBehavior.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ private final class LegacyTriviaBehaviorRewriter: SyntaxRewriter {
2020
token = token.with(\.leadingTrivia, pendingLeadingTrivia + token.leadingTrivia)
2121
self.pendingLeadingTrivia = nil
2222
}
23-
if token.nextToken != nil,
23+
if token.nextToken(viewMode: .sourceAccurate) != nil,
2424
let firstIndexToMove = token.trailingTrivia.firstIndex(where: shouldTriviaPieceBeMoved)
2525
{
2626
pendingLeadingTrivia = Trivia(pieces: Array(token.trailingTrivia[firstIndexToMove...]))

Sources/SwiftFormatCore/RuleMask.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ fileprivate class RuleStatusCollectionVisitor: SyntaxVisitor {
136136
// MARK: - Syntax Visitation Methods
137137

138138
override func visit(_ node: SourceFileSyntax) -> SyntaxVisitorContinueKind {
139-
guard let firstToken = node.firstToken else {
139+
guard let firstToken = node.firstToken(viewMode: .sourceAccurate) else {
140140
return .visitChildren
141141
}
142142
let comments = loneLineComments(in: firstToken.leadingTrivia, isFirstToken: true)
@@ -159,14 +159,14 @@ fileprivate class RuleStatusCollectionVisitor: SyntaxVisitor {
159159
}
160160

161161
override func visit(_ node: CodeBlockItemSyntax) -> SyntaxVisitorContinueKind {
162-
guard let firstToken = node.firstToken else {
162+
guard let firstToken = node.firstToken(viewMode: .sourceAccurate) else {
163163
return .visitChildren
164164
}
165165
return appendRuleStatusDirectives(from: firstToken, of: Syntax(node))
166166
}
167167

168168
override func visit(_ node: MemberDeclListItemSyntax) -> SyntaxVisitorContinueKind {
169-
guard let firstToken = node.firstToken else {
169+
guard let firstToken = node.firstToken(viewMode: .sourceAccurate) else {
170170
return .visitChildren
171171
}
172172
return appendRuleStatusDirectives(from: firstToken, of: Syntax(node))
@@ -183,7 +183,7 @@ fileprivate class RuleStatusCollectionVisitor: SyntaxVisitor {
183183
private func appendRuleStatusDirectives(from token: TokenSyntax, of node: Syntax)
184184
-> SyntaxVisitorContinueKind
185185
{
186-
let isFirstInFile = token.previousToken == nil
186+
let isFirstInFile = token.previousToken(viewMode: .sourceAccurate) == nil
187187
let matches = loneLineComments(in: token.leadingTrivia, isFirstToken: isFirstInFile)
188188
.compactMap(ruleStatusDirectiveMatch)
189189
let sourceRange = node.sourceRange(converter: sourceLocationConverter)

Sources/SwiftFormatPrettyPrint/TokenStreamCreator.swift

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

Sources/SwiftFormatRules/AddModifierRewriter.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -166,18 +166,18 @@ fileprivate final class AddModifierRewriter: SyntaxRewriter {
166166
for modifiersProvider: (NodeType) -> ModifierListSyntax?
167167
) -> NodeType {
168168
guard let modifier = modifiersProvider(node)?.firstAndOnly,
169-
let movingLeadingTrivia = modifier.nextToken?.leadingTrivia
169+
let movingLeadingTrivia = modifier.nextToken(viewMode: .sourceAccurate)?.leadingTrivia
170170
else {
171171
// Otherwise, there's no trivia that needs to be relocated so the node is fine.
172172
return node
173173
}
174174
let nodeWithTrivia = replaceTrivia(
175175
on: node,
176-
token: modifier.firstToken,
176+
token: modifier.firstToken(viewMode: .sourceAccurate),
177177
leadingTrivia: movingLeadingTrivia)
178178
return replaceTrivia(
179179
on: nodeWithTrivia,
180-
token: modifiersProvider(nodeWithTrivia)?.first?.nextToken,
180+
token: modifiersProvider(nodeWithTrivia)?.first?.nextToken(viewMode: .sourceAccurate),
181181
leadingTrivia: [])
182182
}
183183
}

Sources/SwiftFormatRules/DeclSyntaxProtocol+Comments.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import SwiftSyntax
1515
extension DeclSyntaxProtocol {
1616
/// Searches through the leading trivia of this decl for a documentation comment.
1717
var docComment: String? {
18-
guard let tok = firstToken else { return nil }
18+
guard let tok = firstToken(viewMode: .sourceAccurate) else { return nil }
1919
var comment = [String]()
2020

2121
// We need to skip trivia until we see the first comment. This trivia will include all the

Sources/SwiftFormatRules/DoNotUseSemicolons.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public final class DoNotUseSemicolons: SyntaxFormatRule {
5656
defer { newItems[idx] = newItem }
5757

5858
// Check if the leading trivia for this statement needs a new line.
59-
if previousHadSemicolon, let firstToken = newItem.firstToken,
59+
if previousHadSemicolon, let firstToken = newItem.firstToken(viewMode: .sourceAccurate),
6060
!firstToken.leadingTrivia.containsNewlines
6161
{
6262
let leadingTrivia = .newlines(1) + firstToken.leadingTrivia

Sources/SwiftFormatRules/FullyIndirectEnum.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,14 @@ public final class FullyIndirectEnum: SyntaxFormatRule {
5353
// If the `indirect` keyword being added would be the first token in the decl, we need to move
5454
// the leading trivia from the `enum` keyword to the new modifier to preserve the existing
5555
// line breaks/comments/indentation.
56-
let firstTok = node.firstToken!
56+
let firstTok = node.firstToken(viewMode: .sourceAccurate)!
5757
let leadingTrivia: Trivia
5858
let newEnumDecl: EnumDeclSyntax
5959

6060
if firstTok.tokenKind == .keyword(.enum) {
6161
leadingTrivia = firstTok.leadingTrivia
6262
newEnumDecl = replaceTrivia(
63-
on: node, token: node.firstToken, leadingTrivia: [])
63+
on: node, token: node.firstToken(viewMode: .sourceAccurate), leadingTrivia: [])
6464
} else {
6565
leadingTrivia = []
6666
newEnumDecl = node
@@ -97,7 +97,7 @@ public final class FullyIndirectEnum: SyntaxFormatRule {
9797
) -> EnumCaseDeclSyntax {
9898
if let modifiers = unformattedCase.modifiers, let first = modifiers.first {
9999
return replaceTrivia(
100-
on: unformattedCase, token: first.firstToken, leadingTrivia: leadingTrivia
100+
on: unformattedCase, token: first.firstToken(viewMode: .sourceAccurate), leadingTrivia: leadingTrivia
101101
)
102102
} else {
103103
return replaceTrivia(

Sources/SwiftFormatRules/ModifierListSyntax+Convenience.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,12 @@ extension ModifierListSyntax {
7272

7373
if index == 0 {
7474
guard formatTrivia else { return inserting(modifier, at: index) }
75-
guard let firstMod = first, let firstTok = firstMod.firstToken else {
75+
guard let firstMod = first, let firstTok = firstMod.firstToken(viewMode: .sourceAccurate) else {
7676
return inserting(modifier, at: index)
7777
}
7878
let formattedMod = replaceTrivia(
7979
on: modifier,
80-
token: modifier.firstToken,
80+
token: modifier.firstToken(viewMode: .sourceAccurate),
8181
leadingTrivia: firstTok.leadingTrivia)
8282
newModifiers[0] = replaceTrivia(
8383
on: firstMod,

Sources/SwiftFormatRules/NoCasesWithOnlyFallthrough.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ public final class NoCasesWithOnlyFallthrough: SyntaxFormatRule {
150150

151151
// Check for any comments that are inline on the fallthrough statement. Inline comments are
152152
// always stored in the next token's leading trivia.
153-
if let nextLeadingTrivia = onlyStatement.nextToken?.leadingTrivia,
153+
if let nextLeadingTrivia = onlyStatement.nextToken(viewMode: .sourceAccurate)?.leadingTrivia,
154154
nextLeadingTrivia.prefix(while: { !$0.isNewline }).contains(where: { $0.isComment })
155155
{
156156
return false

Sources/SwiftFormatRules/NoEmptyTrailingClosureParentheses.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public final class NoEmptyTrailingClosureParentheses: SyntaxFormatRule {
2929
{
3030
return super.visit(node)
3131
}
32-
guard let name = node.calledExpression.lastToken?.with(\.leadingTrivia, []).with(\.trailingTrivia, []) else {
32+
guard let name = node.calledExpression.lastToken(viewMode: .sourceAccurate)?.with(\.leadingTrivia, []).with(\.trailingTrivia, []) else {
3333
return super.visit(node)
3434
}
3535

@@ -42,7 +42,7 @@ public final class NoEmptyTrailingClosureParentheses: SyntaxFormatRule {
4242
}
4343
let formattedExp = replaceTrivia(
4444
on: rewrittenCalledExpr,
45-
token: rewrittenCalledExpr.lastToken,
45+
token: rewrittenCalledExpr.lastToken(viewMode: .sourceAccurate),
4646
trailingTrivia: .spaces(1))
4747
let formattedClosure = visit(trailingClosure).as(ClosureExprSyntax.self)
4848
let result = node.with(\.leftParen, nil).with(\.rightParen, nil).with(\.calledExpression, formattedExp)

0 commit comments

Comments
 (0)