swift-syntax icon indicating copy to clipboard operation
swift-syntax copied to clipboard

BasicFormat indents closure parameter

Open bnbarham opened this issue 2 years ago • 1 comments

func testClosureParam() {
  var input = Parser("""
    foo(someClosure: { _ in
        return 1
    })
    """)
  let call = ExprSyntax.parse(from: &input)

  let formatted = call.formatted()
  assertStringsEqualWithDiff(formatted.description, """
    foo(someClosure: { _ in
        return 1
    })
    """)
}

Produces:

failed - Actual output (+) differed from expected output (-):
–foo(someClosure: { _ in
–    return 1
–})
+foo(someClosure: { _ in 
+        return 1
+    })

Note the double indent on return 1 and indent of }. Presumably we're always indenting on newlines within parameters of call expressions and then again from the code block.

bnbarham avatar Mar 31 '23 04:03 bnbarham

rdar://107455223

ahoppen avatar Mar 31 '23 04:03 ahoppen