Listener
public class Listener<State>
Represent a single listener settings
-
Notifying listener with new information
Declaration
Swift
public func trigger(with state: State)
Parameters
state
New information send from
Event
-
Specifying queue on what event needs to be triggered
Declaration
Swift
@discardableResult public func onQueue(_ queue: DispatchQueue) -> Listener<State>
Parameters
queue
Execution queue. By default is
.main
Return Value
Same listener for next setup
-
SPecifying if event need to be triggered only once
Declaration
Swift
@discardableResult public func once() -> Listener<State>
Return Value
Same listener for next setup
-
Filtering out triggers based on new information
Declaration
Swift
@discardableResult public func filter(by closure: @escaping (State) -> Bool) -> Listener<State>
Parameters
closure
Filtering closure. Should return true if event needs to be triggered
Return Value
Same listener for next setup
-
Providing a closure that needs to be triggered
Declaration
Swift
@discardableResult public func perform(_ closure: @escaping (State) -> Void) -> Listener<State>
Parameters
closure
Triggering closure
Return Value
Same listener for next setup
-
Binding listener to event that have same
State
Declaration
Swift
@discardableResult public func bind(to event: Event<State>) -> Listener<State>
Parameters
event
Binding event
Return Value
Same listener for next setup
-
Providing dispose bag for automatic disposing
Declaration
Swift
@discardableResult public func dispose(by disposeBag: DisposeBag) -> Listener<State>
Parameters
disposeBag
Dispose bag
Return Value
Same listener for next setup
-
Filtering triggers based on list of values if
State
conform toEquatable
Declaration
Swift
public func filter(by values: State...)
Parameters
values
Values that will allow triggering