diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-07-04 17:06:28 +0200 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-07-04 17:06:28 +0200 |
| commit | c843d34f56c207abcf4b93e424125eea2dc601e0 (patch) | |
| tree | 415dc2d9be4be31e290e1dd1dedb0b630c5e8fc6 /Map/Logic/Debouncer.swift | |
| parent | ed10ac191df473c92c4fec495aafa7f569d108c8 (diff) | |
Upgrade to Swift 6
Diffstat (limited to 'Map/Logic/Debouncer.swift')
| -rw-r--r-- | Map/Logic/Debouncer.swift | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/Map/Logic/Debouncer.swift b/Map/Logic/Debouncer.swift deleted file mode 100644 index 8d40e99..0000000 --- a/Map/Logic/Debouncer.swift +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (C) 2024 Rubén Beltrán del Río - -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see https://map.tranquil.systems. -import Foundation - -class Debouncer { - - // MARK: - Properties - private let queue = DispatchQueue.global(qos: .utility) - private var workItem = DispatchWorkItem(block: {}) - private var interval: TimeInterval - - // MARK: - Initializer - init(seconds: TimeInterval) { - self.interval = seconds - } - - // MARK: - Debouncing function - func debounce(action: @escaping (() -> Void)) { - workItem.cancel() - workItem = DispatchWorkItem(block: { action() }) - queue.asyncAfter(deadline: .now() + interval, execute: workItem) - } -} |