[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/swift-mode 8b5b45665e 2/5: Support `isolated deinit`
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/swift-mode 8b5b45665e 2/5: Support `isolated deinit` |
Date: |
Sun, 15 Jun 2025 07:01:37 -0400 (EDT) |
branch: elpa/swift-mode
commit 8b5b45665e84e805c1f8edefecb80e0bf8c36e03
Author: taku0 <mxxouy6x3m_github@tatapa.org>
Commit: taku0 <mxxouy6x3m_github@tatapa.org>
Support `isolated deinit`
https://github.com/swiftlang/swift-evolution/blob/main/proposals/0371-isolated-synchronous-deinit.md
---
swift-mode-indent.el | 2 +-
swift-mode-lexer.el | 10 +++++-----
test/swift-files/indent/declarations.swift | 9 +++++++++
3 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/swift-mode-indent.el b/swift-mode-indent.el
index 9df93bd40a..c646f874dc 100644
--- a/swift-mode-indent.el
+++ b/swift-mode-indent.el
@@ -1042,7 +1042,7 @@ OFFSET is the offset of the contents."
(swift-mode:token:text next-token)
'("for" "while" "repeat" "guard" "switch" "if" "else"
"defer" "do" "catch"
- "get" "set" "willSet" "didSet" "func" "init" "subscript"
+ "get" "set" "willSet" "didSet" "func" "init" "deinit"
"subscript"
"enum" "struct" "actor" "class" "extension"
"prefix" "postfix" "infix" "precedencegroup"))
(setq is-declaration-or-control-statement-body t)
diff --git a/swift-mode-lexer.el b/swift-mode-lexer.el
index 0592da8b27..c2db30c677 100644
--- a/swift-mode-lexer.el
+++ b/swift-mode-lexer.el
@@ -667,10 +667,10 @@ return non-nil."
;; statements.
(member (swift-mode:token:text previous-token)
'("any" "some" "inout" "borrowing" "consuming" "sending" "in"
- "where" "isolated" "each"))
+ "where" "each"))
(member (swift-mode:token:text next-token)
'("any" "some" "inout" "borrowing" "consuming" "sending"
"throws"
- "rethrows" "in" "where" "isolated" "each"))
+ "rethrows" "in" "where" "each"))
;; Suppress implicit semicolon between throws and open parenthesis.
(and (equal (swift-mode:token:text previous-token) "throws")
@@ -738,7 +738,7 @@ return non-nil."
"mutating" "nonmutating" "optional" "override" "postfix"
"prefix" "required" "static" "unowned" "weak" "internal"
"package" "private" "public" "open" "fileprivate" "nonisolated"
- "distributed"))
+ "distributed" "isolated"))
nil)
;; internal(set) private(set) public(set) open(set) fileprivate(set)
@@ -756,7 +756,7 @@ return non-nil."
(swift-mode:backquote-identifier-if-after-dot
(swift-mode:backward-token-simple)))
'("unowned" "internal" "private" "public" "open"
- "fileprivate" "nonisolated")))))
+ "fileprivate" "nonisolated" "isolated")))))
nil)
;; Suppress implicit semicolon after declaration starters.
@@ -774,7 +774,7 @@ return non-nil."
"mutating" "nonmutating" "optional" "override" "postfix"
"prefix" "required" "static" "unowned" "weak" "internal"
"package" "private" "public" "open" "fileprivate" "nonisolated"
- "distributed"))
+ "distributed" "isolated"))
t)
;; Inserts implicit semicolon around keywords that forms single keyword
diff --git a/test/swift-files/indent/declarations.swift
b/test/swift-files/indent/declarations.swift
index 8641f1d7b3..378129288d 100644
--- a/test/swift-files/indent/declarations.swift
+++ b/test/swift-files/indent/declarations.swift
@@ -826,6 +826,15 @@ class Foo {
)
var x = 1
}
+
+ //
https://github.com/swiftlang/swift-evolution/blob/main/proposals/0371-isolated-synchronous-deinit.md
+ isolated
+ deinit {
+ }
+
+ public
+ deinit {
+ }
}
// async let