Я бы хотел обработать измененный @Published someVar
только после истечения заданного интервала между событиями. Как я могу получить self
из SomeClass
внутри propertyWrapper
?
private var cancellableSet: Set<AnyCancellable> = []
extension Published where Value: Equatable {
init<S>(
wrappedValue defaultValue: Value,
for dueTime: S.SchedulerTimeType.Stride,
scheduler: S,
sink: @escaping (Value) -> () ) where S: Scheduler {
self.init(initialValue: defaultValue)
projectedValue
.debounce(for: dueTime, scheduler: scheduler)
.removeDuplicates()
.sink(receiveValue: sink)
.store(in: &cancellableSet)
}
}
class SomeClass {
@Published(
for: 0.5,
scheduler: RunLoop.main,
sink: { val in
// how to get self of SomeClass
print(self.someVar2) //Error: Value of type '(SomeClass) -> () -> SomeClass' has no member 'someVar2'
})
var someVar = ""
var someVar2 = ""
}