88
99import Foundation
1010
11- public final class ColdSignal < Value, Error : ErrorProtocol > : ColdSignalType , InternalSignalType , SpecialSignalGenerator {
12- internal var observers = Bag < Observer < Value , Error > > ( )
11+ public final class ColdSignal < Value, ErrorType : Error > : ColdSignalType , InternalSignalType , SpecialSignalGenerator {
12+ internal var observers = Bag < Observer < Value , ErrorType > > ( )
1313
14- private let startHandler : ( Observer < Value , Error > ) -> Disposable ?
14+ private let startHandler : ( Observer < Value , ErrorType > ) -> Disposable ?
1515
1616 private var cancelDisposable : Disposable ?
1717
@@ -28,7 +28,7 @@ public final class ColdSignal<Value, Error: ErrorProtocol>: ColdSignalType, Inte
2828 ///
2929 /// Invoking `start()` will have no effect until the signal is stopped. After
3030 /// `stop()` is called this process may be repeated.
31- public init ( _ generator: ( Observer < Value , Error > ) -> Disposable ? ) {
31+ public init ( _ generator: @escaping ( Observer < Value , ErrorType > ) -> Disposable ? ) {
3232 self . startHandler = generator
3333 }
3434
@@ -39,7 +39,7 @@ public final class ColdSignal<Value, Error: ErrorProtocol>: ColdSignalType, Inte
3939 /// with the signal and immediately send an `Interrupted` event.
4040
4141 public func start( ) {
42- let observer = Observer < Value , Error > { event in
42+ let observer = Observer < Value , ErrorType > { event in
4343 if case . Interrupted = event {
4444
4545 self . interrupt ( )
@@ -79,7 +79,7 @@ public final class ColdSignal<Value, Error: ErrorProtocol>: ColdSignalType, Inte
7979 ///
8080 /// Returns a Disposable which can be used to disconnect the observer. Disposing
8181 /// of the Disposable will have no effect on the Signal itself.
82- public func add( observer: Observer < Value , Error > ) -> Disposable ? {
82+ public func add( observer: Observer < Value , ErrorType > ) -> Disposable ? {
8383 let token = self . observers. insert ( value: observer)
8484 return ActionDisposable {
8585 self . observers. removeValueForToken ( token: token)
@@ -91,7 +91,7 @@ public final class ColdSignal<Value, Error: ErrorProtocol>: ColdSignalType, Inte
9191extension ColdSignal : CustomDebugStringConvertible {
9292
9393 public var debugDescription : String {
94- let obs = Array ( self . observers. map { String ( $0) } )
94+ let obs = Array ( self . observers. map { String ( describing : $0) } )
9595 return " ColdSignal[ \( obs. joined ( separator: " , " ) ) ] "
9696 }
9797
@@ -117,7 +117,7 @@ extension ColdSignalType {
117117 ///
118118 /// Returns a Disposable which can be used to dispose of the added observer.
119119 @discardableResult
120- public func start( with observer: Observer < Value , Error > ) -> Disposable ? {
120+ public func start( with observer: Observer < Value , ErrorType > ) -> Disposable ? {
121121 let disposable = add ( observer: observer)
122122 start ( )
123123 return disposable
@@ -128,7 +128,7 @@ extension ColdSignalType {
128128 ///
129129 /// Returns a Disposable which can be used to dispose of the added observer.
130130 @discardableResult
131- public func start( _ observerAction: Observer < Value , Error > . Action ) -> Disposable ? {
131+ public func start( _ observerAction: @escaping Observer < Value , ErrorType > . Action ) -> Disposable ? {
132132 return start ( with: Observer ( observerAction) )
133133 }
134134
@@ -137,7 +137,7 @@ extension ColdSignalType {
137137 ///
138138 /// Returns a Disposable which can be used to dispose of the added observer.
139139 @discardableResult
140- public func startWithNext( next: ( Value ) -> Void ) -> Disposable ? {
140+ public func startWithNext( next: @escaping ( Value ) -> Void ) -> Disposable ? {
141141 return start ( with: Observer ( next: next) )
142142 }
143143
@@ -146,7 +146,7 @@ extension ColdSignalType {
146146 ///
147147 /// Returns a Disposable which can be used to dispose of the added observer.
148148 @discardableResult
149- public func startWithCompleted( completed: ( ) -> Void ) -> Disposable ? {
149+ public func startWithCompleted( completed: @escaping ( ) -> Void ) -> Disposable ? {
150150 return start ( with: Observer ( completed: completed) )
151151 }
152152
@@ -155,7 +155,7 @@ extension ColdSignalType {
155155 ///
156156 /// Returns a Disposable which can be used to dispose of the added observer.
157157 @discardableResult
158- public func startWithFailed( failed: ( Error ) -> Void ) -> Disposable ? {
158+ public func startWithFailed( failed: @escaping ( ErrorType ) -> Void ) -> Disposable ? {
159159 return start ( with: Observer ( failed: failed) )
160160 }
161161
@@ -164,7 +164,7 @@ extension ColdSignalType {
164164 ///
165165 /// Returns a Disposable which can be used to dispose of the added observer.
166166 @discardableResult
167- public func startWithInterrupted( interrupted: ( ) -> Void ) -> Disposable ? {
167+ public func startWithInterrupted( interrupted: @escaping ( ) -> Void ) -> Disposable ? {
168168 return start ( with: Observer ( interrupted: interrupted) )
169169 }
170170
0 commit comments