aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lockfile.json2
-rw-r--r--queries/swift/indents.scm18
-rw-r--r--tests/indent/swift/declarations.swift2
-rw-r--r--tests/indent/swift_spec.lua8
4 files changed, 25 insertions, 5 deletions
diff --git a/lockfile.json b/lockfile.json
index 9f3c3705e..c8037e67f 100644
--- a/lockfile.json
+++ b/lockfile.json
@@ -663,7 +663,7 @@
"revision": "04a126d9210def99f06d9ab84a255110b862d47c"
},
"swift": {
- "revision": "7e5b912761c9abca60996b1250f40be1f46cf39a"
+ "revision": "78f2d72e375f83b2ba6cfb5cc7750db3c94e9785"
},
"sxhkdrc": {
"revision": "440d5f913d9465c9c776a1bd92334d32febcf065"
diff --git a/queries/swift/indents.scm b/queries/swift/indents.scm
index 33d39b025..f208292c7 100644
--- a/queries/swift/indents.scm
+++ b/queries/swift/indents.scm
@@ -5,6 +5,8 @@
(class_body) ; class Foo { ... }
(enum_class_body) ; enum Foo { ... }
(function_declaration) ; func Foo (...) {...}
+ (init_declaration) ; init(...) {...}
+ (deinit_declaration) ; deinit {...}
(computed_property) ; { ... }
(subscript_declaration) ; subscript Foo(...) { ... }
@@ -37,6 +39,22 @@
(didset_clause)
] @indent.begin
+(init_declaration) @indent.begin
+
+(init_declaration
+ [
+ "init"
+ "("
+ ] @indent.branch)
+
+; indentation for init parameters
+(init_declaration
+ ")" @indent.branch @indent.end)
+
+(init_declaration
+ (parameter) @indent.begin
+ (#set! indent.immediate))
+
; @something(...)
(modifiers
(attribute) @indent.begin)
diff --git a/tests/indent/swift/declarations.swift b/tests/indent/swift/declarations.swift
index d4bc6e054..67a7e5544 100644
--- a/tests/indent/swift/declarations.swift
+++ b/tests/indent/swift/declarations.swift
@@ -12,6 +12,8 @@ class EquilateralTriangle: NamedShape {
) {
self.sideLength = sideLength
}
+ deinit {
+ }
var perimeter: Double {
willSet {
diff --git a/tests/indent/swift_spec.lua b/tests/indent/swift_spec.lua
index 5f07ee825..501cbfa81 100644
--- a/tests/indent/swift_spec.lua
+++ b/tests/indent/swift_spec.lua
@@ -14,9 +14,9 @@ describe("indent Swift:", function()
describe("new line:", function()
run:new_line("declarations.swift", { on_line = 6, text = "var x = 1", indent = 2 })
run:new_line("declarations.swift", { on_line = 12, text = "var textInsideInit = true", indent = 4 })
- run:new_line("declarations.swift", { on_line = 17, text = "var textInsideWillSet = 1", indent = 6 })
- run:new_line("declarations.swift", { on_line = 20, text = "var textInsideDidSet = 1", indent = 6 })
- run:new_line("declarations.swift", { on_line = 25, text = "var textInsideOverrideFunc", indent = 4 })
- run:new_line("declarations.swift", { on_line = 31, text = "var InsideProtocol: String { get }", indent = 2 })
+ run:new_line("declarations.swift", { on_line = 19, text = "var textInsideWillSet = 1", indent = 6 })
+ run:new_line("declarations.swift", { on_line = 22, text = "var textInsideDidSet = 1", indent = 6 })
+ run:new_line("declarations.swift", { on_line = 27, text = "var textInsideOverrideFunc", indent = 4 })
+ run:new_line("declarations.swift", { on_line = 33, text = "var InsideProtocol: String { get }", indent = 2 })
end)
end)