mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
- Rename several symbols to make it clearer whether the ranges they deal with
are open or closed.
- Add comments documenting the implementation of OutdentChecker::hasOutdent
- Fix a bug where code after a doc coment block of the '/**' style was being
indented 1 space.
- Fix IsInStringLiteral not being set if the indent target was in a string
segment of an interpolated multiline string.
- Update OutdentChecker::hasOutdent to propagate indent contexts from
parent parens/brackets/braces to child parens/brackets/braces that start
later in the same line (like FormatWalker already does). This changes the
braces in the example below to 'inherit' a ContextLoc from their parent
square brackets, which have a ContextLoc at 'foo'. This makes the whole
expression be correctly considered 'outdenting':
foo(a: "hello"
b: "hello")[x: {
print("hello")
}]
17 lines
582 B
Swift
17 lines
582 B
Swift
struct $ {
|
|
let $: <#Type#>
|
|
= foo("foo \($) bar") {
|
|
$
|
|
|
|
// RUN: %sourcekitd-test -req=format -line=1 -length=1 %s >%t.response
|
|
// RUN: %sourcekitd-test -req=format -line=2 -length=1 %s >>%t.response
|
|
// RUN: %sourcekitd-test -req=format -line=3 -length=1 %s >>%t.response
|
|
// RUN: %sourcekitd-test -req=format -line=4 -length=1 %s >>%t.response
|
|
|
|
// RUN: %FileCheck --strict-whitespace %s <%t.response
|
|
|
|
// CHECK: key.sourcetext: "struct $ {"
|
|
// CHECK: key.sourcetext: " let $: <#Type#>"
|
|
// CHECK: key.sourcetext: " = foo(\"foo \\($) bar\") {"
|
|
// CHECK: key.sourcetext: " $"
|