Skip to content

Commit 1c7f5bf

Browse files
authored
Merge pull request #2345 from ahoppen/ahoppen/space-between-string-and-dot
Don't add a space between literals and period in BasicFormat
2 parents f863f2e + 178cfd2 commit 1c7f5bf

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed

Sources/SwiftBasicFormat/BasicFormat.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,8 +331,11 @@ open class BasicFormat: SyntaxRewriter {
331331
(.rawStringPoundDelimiter, .multilineStringQuote), // opening raw string delimiter should never be separate by a space
332332
(.rawStringPoundDelimiter, .singleQuote), // opening raw string delimiter should never be separate by a space
333333
(.rawStringPoundDelimiter, .stringQuote), // opening raw string delimiter should never be separate by a space
334+
(.rawStringPoundDelimiter, .period), // opening raw string delimiter should never be separate by a space
334335
(.regexLiteralPattern, _),
336+
(.regexPoundDelimiter, .period), // #/myRegex/#.someMember
335337
(.regexSlash, .regexPoundDelimiter), // closing extended regex delimiter should never be separate by a space
338+
(.regexSlash, .period), // /myRegex/.someMember
336339
(.rightAngle, .leftParen), // func foo<T>(x: T)
337340
(.rightAngle, .period), // Foo<T>.bar
338341
(.rightBrace, .leftParen), // { return 1 }()
@@ -341,6 +344,7 @@ open class BasicFormat: SyntaxRewriter {
341344
(.rightSquare, .period), // myArray[1].someProperty
342345
(.singleQuote, .rawStringPoundDelimiter), // closing raw string delimiter should never be separate by a space
343346
(.stringQuote, .rawStringPoundDelimiter), // closing raw string delimiter should never be separate by a space
347+
(.stringQuote, .period), // "test".lowercased
344348
(.stringSegment, _),
345349
(_, .comma),
346350
(_, .ellipsis),

Tests/SwiftBasicFormatTest/BasicFormatTests.swift

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -538,4 +538,32 @@ final class BasicFormatTest: XCTestCase {
538538
expected: "Foo<T>.bar"
539539
)
540540
}
541+
542+
func testPeriodAfterStringLiteral() {
543+
let source = """
544+
"test".lowercased()
545+
"""
546+
assertFormatted(source: source, expected: source)
547+
}
548+
549+
func testPeriodAfterRawStringLiteral() {
550+
let source = """
551+
#"test"#.lowercased()
552+
"""
553+
assertFormatted(source: source, expected: source)
554+
}
555+
556+
func testPeriodAfterRegexLiteral() {
557+
let source = """
558+
/test/.something
559+
"""
560+
assertFormatted(source: source, expected: source)
561+
}
562+
563+
func testPeriodAfterRawRegexLiteral() {
564+
let source = """
565+
/test/.something
566+
"""
567+
assertFormatted(source: source, expected: source)
568+
}
541569
}

0 commit comments

Comments
 (0)