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. /// Puts a `Next` event into the given observer.
public func sendNext(_ value: Value) { public func sendNext(_ value: Value) {
action(.Next(value)) action(.Next(value))

View File

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