branch: elpa/swift-mode commit e168b3490305e265a7332346ceb427f1b78aa309 Author: ap4y <l...@pisem.net> Commit: ap4y <l...@pisem.net>
Don't use implicit semicolon for multi-line dot expressions --- swift-mode.el | 3 ++- test/indentation-tests.el | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/swift-mode.el b/swift-mode.el index dd93a34..bbf82c4 100644 --- a/swift-mode.el +++ b/swift-mode.el @@ -186,7 +186,8 @@ (defun swift-smie--implicit-semi-p () (save-excursion - (not (or (memq (char-before) '(?\{ ?\[ ?\,)) + (not (or (memq (char-before) '(?\{ ?\[ ?, ?.)) + (memq (char-after (+(point) 1)) '(?.)) (looking-back swift-smie--operators-regexp (- (point) 3) t) )))) diff --git a/test/indentation-tests.el b/test/indentation-tests.el index 5f4d394..3b1c14f 100644 --- a/test/indentation-tests.el +++ b/test/indentation-tests.el @@ -774,6 +774,24 @@ Foo.bar(bar?, |baz) ") +(check-indentation indents-multiline-expressions/4 + " +let json_ary = NSJSONSerialization. +|JSONObjectWithData(data, options: nil, error: &json_err) as NSArray +" " +let json_ary = NSJSONSerialization. + |JSONObjectWithData(data, options: nil, error: &json_err) as NSArray +") + +(check-indentation indents-multiline-expressions/5 + " +let json_ary = NSJSONSerialization +|.JSONObjectWithData(data, options: nil, error: &json_err) as NSArray +" " +let json_ary = NSJSONSerialization + |.JSONObjectWithData(data, options: nil, error: &json_err) as NSArray +") + (check-indentation indents-type-annotations/1 " typealias Foo = Bar<Foo.Baz, Foo>