mirror of
https://github.com/GLEGram/GLEGram-iOS.git
synced 2026-04-24 03:46:23 +02:00
4647310322
Based on Swiftgram 12.5 (Telegram iOS 12.5). All GLEGram features ported and organized in GLEGram/ folder. Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass, Font Replacement, Fake Profile, Chat Export, Plugin System, and more. See CHANGELOG_12.5.md for full details.
33 lines
765 B
Swift
33 lines
765 B
Swift
import Foundation
|
|
|
|
public final class Action<Arguments> {
|
|
public let action: (Arguments) -> Void
|
|
|
|
public init(_ action: @escaping (Arguments) -> Void) {
|
|
self.action = action
|
|
}
|
|
|
|
public func callAsFunction(_ arguments: Arguments) {
|
|
self.action(arguments)
|
|
}
|
|
}
|
|
|
|
public final class ActionSlot<Arguments>: Equatable {
|
|
private var target: ((Arguments) -> Void)?
|
|
|
|
public init() {
|
|
}
|
|
|
|
public static func ==(lhs: ActionSlot<Arguments>, rhs: ActionSlot<Arguments>) -> Bool {
|
|
return lhs === rhs
|
|
}
|
|
|
|
public func connect(_ target: @escaping (Arguments) -> Void) {
|
|
self.target = target
|
|
}
|
|
|
|
public func invoke(_ arguments: Arguments) {
|
|
self.target?(arguments)
|
|
}
|
|
}
|