Clarified forwarding of events.

This commit is contained in:
Tyler Cloutier 2016-07-23 19:53:46 -07:00
parent 64353bf02e
commit ce493b1240
2 changed files with 8 additions and 3 deletions

View File

@ -45,6 +45,11 @@ public struct Observer<Value, Error: ErrorProtocol> {
}
}
public func sendEvent(_ event: Event<Value, Error>) {
action(event)
}
/// Puts a `Next` event into the given observer.
public func sendNext(_ value: Value) {
action(.Next(value))

View File

@ -248,7 +248,7 @@ extension SignalType {
public func map<U>(transform: (Value) -> U) -> Signal<U, Error> {
return Signal { observer in
return self.on { event -> Void in
observer.action(event.map(transform))
observer.sendEvent(event.map(transform))
}
}
}
@ -258,7 +258,7 @@ extension SignalType {
public func mapError<F>(transform: (Error) -> F) -> Signal<Value, F> {
return Signal { observer in
return self.on { event -> Void in
observer.action(event.mapError(transform))
observer.sendEvent(event.mapError(transform))
}
}
}
@ -269,7 +269,7 @@ extension SignalType {
return Signal { observer in
return self.on { (event: Event<Value, Error>) -> Void in
guard let value = event.value else {
observer.action(event)
observer.sendEvent(event)
return
}