0001
0010 import Foundation
0011
0012
0013
0014
0016 extension Observable {
0017 seealsoparameterreturns
0025 @warn_unused_result(message="http://git.io/rxs.uo")
0026 public static func zip<O1: ObservableType, O2: ObservableType>
0027 (source1: O1, _ source2: O2, resultSelector: (O1.E, O2.E) throws -> E)
0028 -> Observable<E> {
0029 return Zip2(
0030 source1: source1.asObservable(), source2: source2.asObservable(),
0031 resultSelector: resultSelector
0032 )
0033 }
0034 }
0035
0036 class ZipSink2_| Zip+arity.swift:99 | let sink = ZipSink2_(parent: self, observer: observer) |
<E1| Zip+arity.swift:38 | typealias Parent = Zip2<E1, E2, R> |
| Zip+arity.swift:42 | var _values1: Queue<E1> = Queue(capacity: 2) |
, E2| Zip+arity.swift:38 | typealias Parent = Zip2<E1, E2, R> |
| Zip+arity.swift:43 | var _values2: Queue<E2> = Queue(capacity: 2) |
, O| Zip+arity.swift:36 | class ZipSink2_<E1, E2, O: ObserverType> : ZipSink<O> { |
| Zip+arity.swift:37 | typealias R = O.E |
| Zip+arity.swift:45 | init(parent: Parent, observer: O) { |
: ObserverType> : ZipSink<O> {
0037 typealias R| Zip+arity.swift:38 | typealias Parent = Zip2<E1, E2, R> |
| Zip+arity.swift:78 | override func getResult() throws -> R { |
= O.E
0038 typealias Parent| Zip+arity.swift:40 | let _parent: Parent |
| Zip+arity.swift:45 | init(parent: Parent, observer: O) { |
= Zip2<E1, E2, R>
0039
0040 let _parent| Zip+arity.swift:46 | _parent = parent |
| Zip+arity.swift:69 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:70 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:79 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!) |
: Parent
0041
0042 var _values1| Zip+arity.swift:52 | case 0: return _values1.count > 0 |
| Zip+arity.swift:66 | let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) |
| Zip+arity.swift:79 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!) |
: Queue<E1> = Queue(capacity: 2)
0043 var _values2| Zip+arity.swift:53 | case 1: return _values2.count > 0 |
| Zip+arity.swift:67 | let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) |
| Zip+arity.swift:79 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!) |
: Queue<E2> = Queue(capacity: 2)
0044
0045 init| Zip+arity.swift:99 | let sink = ZipSink2_(parent: self, observer: observer) |
(parent: Parent, observer: O) {
0046 _parent = parent
0047 super.init(arity: 2, observer: observer)
0048 }
0049
0050 override func hasElements(index: Int) -> Bool {
0051 switch (index) {
0052 case 0: return _values1.count > 0
0053 case 1: return _values2.count > 0
0054
0055 default:
0056 rxFatalError("Unhandled case (Function)")
0057 }
0058
0059 return false
0060 }
0061
0062 func run| Zip+arity.swift:100 | sink.disposable = sink.run() |
() -> Disposable {
0063 let subscription1 = SingleAssignmentDisposable()
0064 let subscription2 = SingleAssignmentDisposable()
0065
0066 let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1)
0067 let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2)
0068
0069 subscription1.disposable = _parent.source1.subscribe(observer1)
0070 subscription2.disposable = _parent.source2.subscribe(observer2)
0071
0072 return CompositeDisposable(disposables: [
0073 subscription1,
0074 subscription2
0075 ])
0076 }
0077
0078 override func getResult() throws -> R {
0079 return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!)
0080 }
0081 }
0082
0083 class Zip2| Zip+arity.swift:29 | return Zip2( |
| Zip+arity.swift:38 | typealias Parent = Zip2<E1, E2, R> |
<E1| Zip+arity.swift:84 | typealias ResultSelector = (E1, E2) throws -> R |
| Zip+arity.swift:86 | let source1: Observable<E1> |
| Zip+arity.swift:91 | init(source1: Observable<E1>, source2: Observable<E2>, resultSelector: ResultSelector) { |
, E2| Zip+arity.swift:84 | typealias ResultSelector = (E1, E2) throws -> R |
| Zip+arity.swift:87 | let source2: Observable<E2> |
| Zip+arity.swift:91 | init(source1: Observable<E1>, source2: Observable<E2>, resultSelector: ResultSelector) { |
, R| Zip+arity.swift:83 | class Zip2<E1, E2, R> : Producer<R> { |
| Zip+arity.swift:84 | typealias ResultSelector = (E1, E2) throws -> R |
| Zip+arity.swift:98 | override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable { |
> : Producer<R> {
0084 typealias ResultSelector| Zip+arity.swift:89 | let _resultSelector: ResultSelector |
| Zip+arity.swift:91 | init(source1: Observable<E1>, source2: Observable<E2>, resultSelector: ResultSelector) { |
= (E1, E2) throws -> R
0085
0086 let source1| Zip+arity.swift:69 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:92 | self.source1 = source1 |
: Observable<E1>
0087 let source2| Zip+arity.swift:70 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:93 | self.source2 = source2 |
: Observable<E2>
0088
0089 let _resultSelector| Zip+arity.swift:79 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!) |
| Zip+arity.swift:95 | _resultSelector = resultSelector |
: ResultSelector
0090
0091 init| Zip+arity.swift:29 | return Zip2( |
(source1: Observable<E1>, source2: Observable<E2>, resultSelector: ResultSelector) {
0092 self.source1 = source1
0093 self.source2 = source2
0094
0095 _resultSelector = resultSelector
0096 }
0097
0098 override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable {
0099 let sink = ZipSink2_(parent: self, observer: observer)
0100 sink.disposable = sink.run()
0101 return sink
0102 }
0103 }
0104
0105
0106
0107
0109 extension Observable {
0110 seealsoparameterreturns
0118 @warn_unused_result(message="http://git.io/rxs.uo")
0119 public static func zip<O1: ObservableType, O2: ObservableType, O3: ObservableType>
0120 (source1: O1, _ source2: O2, _ source3: O3, resultSelector: (O1.E, O2.E, O3.E) throws -> E)
0121 -> Observable<E> {
0122 return Zip3(
0123 source1: source1.asObservable(), source2: source2.asObservable(), source3: source3.asObservable(),
0124 resultSelector: resultSelector
0125 )
0126 }
0127 }
0128
0129 class ZipSink3_| Zip+arity.swift:200 | let sink = ZipSink3_(parent: self, observer: observer) |
<E1| Zip+arity.swift:131 | typealias Parent = Zip3<E1, E2, E3, R> |
| Zip+arity.swift:135 | var _values1: Queue<E1> = Queue(capacity: 2) |
, E2| Zip+arity.swift:131 | typealias Parent = Zip3<E1, E2, E3, R> |
| Zip+arity.swift:136 | var _values2: Queue<E2> = Queue(capacity: 2) |
, E3| Zip+arity.swift:131 | typealias Parent = Zip3<E1, E2, E3, R> |
| Zip+arity.swift:137 | var _values3: Queue<E3> = Queue(capacity: 2) |
, O| Zip+arity.swift:129 | class ZipSink3_<E1, E2, E3, O: ObserverType> : ZipSink<O> { |
| Zip+arity.swift:130 | typealias R = O.E |
| Zip+arity.swift:139 | init(parent: Parent, observer: O) { |
: ObserverType> : ZipSink<O> {
0130 typealias R| Zip+arity.swift:131 | typealias Parent = Zip3<E1, E2, E3, R> |
| Zip+arity.swift:177 | override func getResult() throws -> R { |
= O.E
0131 typealias Parent| Zip+arity.swift:133 | let _parent: Parent |
| Zip+arity.swift:139 | init(parent: Parent, observer: O) { |
= Zip3<E1, E2, E3, R>
0132
0133 let _parent| Zip+arity.swift:140 | _parent = parent |
| Zip+arity.swift:166 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:167 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:168 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:178 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!) |
: Parent
0134
0135 var _values1| Zip+arity.swift:146 | case 0: return _values1.count > 0 |
| Zip+arity.swift:162 | let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) |
| Zip+arity.swift:178 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!) |
: Queue<E1> = Queue(capacity: 2)
0136 var _values2| Zip+arity.swift:147 | case 1: return _values2.count > 0 |
| Zip+arity.swift:163 | let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) |
| Zip+arity.swift:178 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!) |
: Queue<E2> = Queue(capacity: 2)
0137 var _values3| Zip+arity.swift:148 | case 2: return _values3.count > 0 |
| Zip+arity.swift:164 | let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) |
| Zip+arity.swift:178 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!) |
: Queue<E3> = Queue(capacity: 2)
0138
0139 init| Zip+arity.swift:200 | let sink = ZipSink3_(parent: self, observer: observer) |
(parent: Parent, observer: O) {
0140 _parent = parent
0141 super.init(arity: 3, observer: observer)
0142 }
0143
0144 override func hasElements(index: Int) -> Bool {
0145 switch (index) {
0146 case 0: return _values1.count > 0
0147 case 1: return _values2.count > 0
0148 case 2: return _values3.count > 0
0149
0150 default:
0151 rxFatalError("Unhandled case (Function)")
0152 }
0153
0154 return false
0155 }
0156
0157 func run| Zip+arity.swift:201 | sink.disposable = sink.run() |
() -> Disposable {
0158 let subscription1 = SingleAssignmentDisposable()
0159 let subscription2 = SingleAssignmentDisposable()
0160 let subscription3 = SingleAssignmentDisposable()
0161
0162 let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1)
0163 let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2)
0164 let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3)
0165
0166 subscription1.disposable = _parent.source1.subscribe(observer1)
0167 subscription2.disposable = _parent.source2.subscribe(observer2)
0168 subscription3.disposable = _parent.source3.subscribe(observer3)
0169
0170 return CompositeDisposable(disposables: [
0171 subscription1,
0172 subscription2,
0173 subscription3
0174 ])
0175 }
0176
0177 override func getResult() throws -> R {
0178 return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!)
0179 }
0180 }
0181
0182 class Zip3| Zip+arity.swift:122 | return Zip3( |
| Zip+arity.swift:131 | typealias Parent = Zip3<E1, E2, E3, R> |
<E1| Zip+arity.swift:183 | typealias ResultSelector = (E1, E2, E3) throws -> R |
| Zip+arity.swift:185 | let source1: Observable<E1> |
| Zip+arity.swift:191 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, resultSelector: ResultSelector) { |
, E2| Zip+arity.swift:183 | typealias ResultSelector = (E1, E2, E3) throws -> R |
| Zip+arity.swift:186 | let source2: Observable<E2> |
| Zip+arity.swift:191 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, resultSelector: ResultSelector) { |
, E3| Zip+arity.swift:183 | typealias ResultSelector = (E1, E2, E3) throws -> R |
| Zip+arity.swift:187 | let source3: Observable<E3> |
| Zip+arity.swift:191 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, resultSelector: ResultSelector) { |
, R| Zip+arity.swift:182 | class Zip3<E1, E2, E3, R> : Producer<R> { |
| Zip+arity.swift:183 | typealias ResultSelector = (E1, E2, E3) throws -> R |
| Zip+arity.swift:199 | override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable { |
> : Producer<R> {
0183 typealias ResultSelector| Zip+arity.swift:189 | let _resultSelector: ResultSelector |
| Zip+arity.swift:191 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, resultSelector: ResultSelector) { |
= (E1, E2, E3) throws -> R
0184
0185 let source1| Zip+arity.swift:166 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:192 | self.source1 = source1 |
: Observable<E1>
0186 let source2| Zip+arity.swift:167 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:193 | self.source2 = source2 |
: Observable<E2>
0187 let source3| Zip+arity.swift:168 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:194 | self.source3 = source3 |
: Observable<E3>
0188
0189 let _resultSelector| Zip+arity.swift:178 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!) |
| Zip+arity.swift:196 | _resultSelector = resultSelector |
: ResultSelector
0190
0191 init| Zip+arity.swift:122 | return Zip3( |
(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, resultSelector: ResultSelector) {
0192 self.source1 = source1
0193 self.source2 = source2
0194 self.source3 = source3
0195
0196 _resultSelector = resultSelector
0197 }
0198
0199 override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable {
0200 let sink = ZipSink3_(parent: self, observer: observer)
0201 sink.disposable = sink.run()
0202 return sink
0203 }
0204 }
0205
0206
0207
0208
0210 extension Observable {
0211 seealsoparameterreturns
0219 @warn_unused_result(message="http://git.io/rxs.uo")
0220 public static func zip<O1: ObservableType, O2: ObservableType, O3: ObservableType, O4: ObservableType>
0221 (source1: O1, _ source2: O2, _ source3: O3, _ source4: O4, resultSelector: (O1.E, O2.E, O3.E, O4.E) throws -> E)
0222 -> Observable<E> {
0223 return Zip4(
0224 source1: source1.asObservable(), source2: source2.asObservable(), source3: source3.asObservable(), source4: source4.asObservable(),
0225 resultSelector: resultSelector
0226 )
0227 }
0228 }
0229
0230 class ZipSink4_| Zip+arity.swift:309 | let sink = ZipSink4_(parent: self, observer: observer) |
<E1| Zip+arity.swift:232 | typealias Parent = Zip4<E1, E2, E3, E4, R> |
| Zip+arity.swift:236 | var _values1: Queue<E1> = Queue(capacity: 2) |
, E2| Zip+arity.swift:232 | typealias Parent = Zip4<E1, E2, E3, E4, R> |
| Zip+arity.swift:237 | var _values2: Queue<E2> = Queue(capacity: 2) |
, E3| Zip+arity.swift:232 | typealias Parent = Zip4<E1, E2, E3, E4, R> |
| Zip+arity.swift:238 | var _values3: Queue<E3> = Queue(capacity: 2) |
, E4| Zip+arity.swift:232 | typealias Parent = Zip4<E1, E2, E3, E4, R> |
| Zip+arity.swift:239 | var _values4: Queue<E4> = Queue(capacity: 2) |
, O| Zip+arity.swift:230 | class ZipSink4_<E1, E2, E3, E4, O: ObserverType> : ZipSink<O> { |
| Zip+arity.swift:231 | typealias R = O.E |
| Zip+arity.swift:241 | init(parent: Parent, observer: O) { |
: ObserverType> : ZipSink<O> {
0231 typealias R| Zip+arity.swift:232 | typealias Parent = Zip4<E1, E2, E3, E4, R> |
| Zip+arity.swift:284 | override func getResult() throws -> R { |
= O.E
0232 typealias Parent| Zip+arity.swift:234 | let _parent: Parent |
| Zip+arity.swift:241 | init(parent: Parent, observer: O) { |
= Zip4<E1, E2, E3, E4, R>
0233
0234 let _parent| Zip+arity.swift:242 | _parent = parent |
| Zip+arity.swift:271 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:272 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:273 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:274 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:285 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!) |
: Parent
0235
0236 var _values1| Zip+arity.swift:248 | case 0: return _values1.count > 0 |
| Zip+arity.swift:266 | let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) |
| Zip+arity.swift:285 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!) |
: Queue<E1> = Queue(capacity: 2)
0237 var _values2| Zip+arity.swift:249 | case 1: return _values2.count > 0 |
| Zip+arity.swift:267 | let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) |
| Zip+arity.swift:285 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!) |
: Queue<E2> = Queue(capacity: 2)
0238 var _values3| Zip+arity.swift:250 | case 2: return _values3.count > 0 |
| Zip+arity.swift:268 | let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) |
| Zip+arity.swift:285 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!) |
: Queue<E3> = Queue(capacity: 2)
0239 var _values4| Zip+arity.swift:251 | case 3: return _values4.count > 0 |
| Zip+arity.swift:269 | let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) |
| Zip+arity.swift:285 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!) |
: Queue<E4> = Queue(capacity: 2)
0240
0241 init| Zip+arity.swift:309 | let sink = ZipSink4_(parent: self, observer: observer) |
(parent: Parent, observer: O) {
0242 _parent = parent
0243 super.init(arity: 4, observer: observer)
0244 }
0245
0246 override func hasElements(index: Int) -> Bool {
0247 switch (index) {
0248 case 0: return _values1.count > 0
0249 case 1: return _values2.count > 0
0250 case 2: return _values3.count > 0
0251 case 3: return _values4.count > 0
0252
0253 default:
0254 rxFatalError("Unhandled case (Function)")
0255 }
0256
0257 return false
0258 }
0259
0260 func run| Zip+arity.swift:310 | sink.disposable = sink.run() |
() -> Disposable {
0261 let subscription1 = SingleAssignmentDisposable()
0262 let subscription2 = SingleAssignmentDisposable()
0263 let subscription3 = SingleAssignmentDisposable()
0264 let subscription4 = SingleAssignmentDisposable()
0265
0266 let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1)
0267 let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2)
0268 let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3)
0269 let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4)
0270
0271 subscription1.disposable = _parent.source1.subscribe(observer1)
0272 subscription2.disposable = _parent.source2.subscribe(observer2)
0273 subscription3.disposable = _parent.source3.subscribe(observer3)
0274 subscription4.disposable = _parent.source4.subscribe(observer4)
0275
0276 return CompositeDisposable(disposables: [
0277 subscription1,
0278 subscription2,
0279 subscription3,
0280 subscription4
0281 ])
0282 }
0283
0284 override func getResult() throws -> R {
0285 return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!)
0286 }
0287 }
0288
0289 class Zip4| Zip+arity.swift:223 | return Zip4( |
| Zip+arity.swift:232 | typealias Parent = Zip4<E1, E2, E3, E4, R> |
<E1| Zip+arity.swift:290 | typealias ResultSelector = (E1, E2, E3, E4) throws -> R |
| Zip+arity.swift:292 | let source1: Observable<E1> |
| Zip+arity.swift:299 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, resultSelector: ResultSelector) { |
, E2| Zip+arity.swift:290 | typealias ResultSelector = (E1, E2, E3, E4) throws -> R |
| Zip+arity.swift:293 | let source2: Observable<E2> |
| Zip+arity.swift:299 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, resultSelector: ResultSelector) { |
, E3| Zip+arity.swift:290 | typealias ResultSelector = (E1, E2, E3, E4) throws -> R |
| Zip+arity.swift:294 | let source3: Observable<E3> |
| Zip+arity.swift:299 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, resultSelector: ResultSelector) { |
, E4| Zip+arity.swift:290 | typealias ResultSelector = (E1, E2, E3, E4) throws -> R |
| Zip+arity.swift:295 | let source4: Observable<E4> |
| Zip+arity.swift:299 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, resultSelector: ResultSelector) { |
, R| Zip+arity.swift:289 | class Zip4<E1, E2, E3, E4, R> : Producer<R> { |
| Zip+arity.swift:290 | typealias ResultSelector = (E1, E2, E3, E4) throws -> R |
| Zip+arity.swift:308 | override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable { |
> : Producer<R> {
0290 typealias ResultSelector| Zip+arity.swift:297 | let _resultSelector: ResultSelector |
| Zip+arity.swift:299 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, resultSelector: ResultSelector) { |
= (E1, E2, E3, E4) throws -> R
0291
0292 let source1| Zip+arity.swift:271 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:300 | self.source1 = source1 |
: Observable<E1>
0293 let source2| Zip+arity.swift:272 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:301 | self.source2 = source2 |
: Observable<E2>
0294 let source3| Zip+arity.swift:273 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:302 | self.source3 = source3 |
: Observable<E3>
0295 let source4| Zip+arity.swift:274 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:303 | self.source4 = source4 |
: Observable<E4>
0296
0297 let _resultSelector| Zip+arity.swift:285 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!) |
| Zip+arity.swift:305 | _resultSelector = resultSelector |
: ResultSelector
0298
0299 init| Zip+arity.swift:223 | return Zip4( |
(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, resultSelector: ResultSelector) {
0300 self.source1 = source1
0301 self.source2 = source2
0302 self.source3 = source3
0303 self.source4 = source4
0304
0305 _resultSelector = resultSelector
0306 }
0307
0308 override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable {
0309 let sink = ZipSink4_(parent: self, observer: observer)
0310 sink.disposable = sink.run()
0311 return sink
0312 }
0313 }
0314
0315
0316
0317
0319 extension Observable {
0320 seealsoparameterreturns
0328 @warn_unused_result(message="http://git.io/rxs.uo")
0329 public static func zip<O1: ObservableType, O2: ObservableType, O3: ObservableType, O4: ObservableType, O5: ObservableType>
0330 (source1: O1, _ source2: O2, _ source3: O3, _ source4: O4, _ source5: O5, resultSelector: (O1.E, O2.E, O3.E, O4.E, O5.E) throws -> E)
0331 -> Observable<E> {
0332 return Zip5(
0333 source1: source1.asObservable(), source2: source2.asObservable(), source3: source3.asObservable(), source4: source4.asObservable(), source5: source5.asObservable(),
0334 resultSelector: resultSelector
0335 )
0336 }
0337 }
0338
0339 class ZipSink5_| Zip+arity.swift:426 | let sink = ZipSink5_(parent: self, observer: observer) |
<E1| Zip+arity.swift:341 | typealias Parent = Zip5<E1, E2, E3, E4, E5, R> |
| Zip+arity.swift:345 | var _values1: Queue<E1> = Queue(capacity: 2) |
, E2| Zip+arity.swift:341 | typealias Parent = Zip5<E1, E2, E3, E4, E5, R> |
| Zip+arity.swift:346 | var _values2: Queue<E2> = Queue(capacity: 2) |
, E3| Zip+arity.swift:341 | typealias Parent = Zip5<E1, E2, E3, E4, E5, R> |
| Zip+arity.swift:347 | var _values3: Queue<E3> = Queue(capacity: 2) |
, E4| Zip+arity.swift:341 | typealias Parent = Zip5<E1, E2, E3, E4, E5, R> |
| Zip+arity.swift:348 | var _values4: Queue<E4> = Queue(capacity: 2) |
, E5| Zip+arity.swift:341 | typealias Parent = Zip5<E1, E2, E3, E4, E5, R> |
| Zip+arity.swift:349 | var _values5: Queue<E5> = Queue(capacity: 2) |
, O| Zip+arity.swift:339 | class ZipSink5_<E1, E2, E3, E4, E5, O: ObserverType> : ZipSink<O> { |
| Zip+arity.swift:340 | typealias R = O.E |
| Zip+arity.swift:351 | init(parent: Parent, observer: O) { |
: ObserverType> : ZipSink<O> {
0340 typealias R| Zip+arity.swift:341 | typealias Parent = Zip5<E1, E2, E3, E4, E5, R> |
| Zip+arity.swift:399 | override func getResult() throws -> R { |
= O.E
0341 typealias Parent| Zip+arity.swift:343 | let _parent: Parent |
| Zip+arity.swift:351 | init(parent: Parent, observer: O) { |
= Zip5<E1, E2, E3, E4, E5, R>
0342
0343 let _parent| Zip+arity.swift:352 | _parent = parent |
| Zip+arity.swift:384 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:385 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:386 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:387 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:388 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:400 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) |
: Parent
0344
0345 var _values1| Zip+arity.swift:358 | case 0: return _values1.count > 0 |
| Zip+arity.swift:378 | let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) |
| Zip+arity.swift:400 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) |
: Queue<E1> = Queue(capacity: 2)
0346 var _values2| Zip+arity.swift:359 | case 1: return _values2.count > 0 |
| Zip+arity.swift:379 | let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) |
| Zip+arity.swift:400 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) |
: Queue<E2> = Queue(capacity: 2)
0347 var _values3| Zip+arity.swift:360 | case 2: return _values3.count > 0 |
| Zip+arity.swift:380 | let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) |
| Zip+arity.swift:400 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) |
: Queue<E3> = Queue(capacity: 2)
0348 var _values4| Zip+arity.swift:361 | case 3: return _values4.count > 0 |
| Zip+arity.swift:381 | let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) |
| Zip+arity.swift:400 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) |
: Queue<E4> = Queue(capacity: 2)
0349 var _values5| Zip+arity.swift:362 | case 4: return _values5.count > 0 |
| Zip+arity.swift:382 | let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) |
| Zip+arity.swift:400 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) |
: Queue<E5> = Queue(capacity: 2)
0350
0351 init| Zip+arity.swift:426 | let sink = ZipSink5_(parent: self, observer: observer) |
(parent: Parent, observer: O) {
0352 _parent = parent
0353 super.init(arity: 5, observer: observer)
0354 }
0355
0356 override func hasElements(index: Int) -> Bool {
0357 switch (index) {
0358 case 0: return _values1.count > 0
0359 case 1: return _values2.count > 0
0360 case 2: return _values3.count > 0
0361 case 3: return _values4.count > 0
0362 case 4: return _values5.count > 0
0363
0364 default:
0365 rxFatalError("Unhandled case (Function)")
0366 }
0367
0368 return false
0369 }
0370
0371 func run| Zip+arity.swift:427 | sink.disposable = sink.run() |
() -> Disposable {
0372 let subscription1 = SingleAssignmentDisposable()
0373 let subscription2 = SingleAssignmentDisposable()
0374 let subscription3 = SingleAssignmentDisposable()
0375 let subscription4 = SingleAssignmentDisposable()
0376 let subscription5 = SingleAssignmentDisposable()
0377
0378 let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1)
0379 let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2)
0380 let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3)
0381 let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4)
0382 let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5)
0383
0384 subscription1.disposable = _parent.source1.subscribe(observer1)
0385 subscription2.disposable = _parent.source2.subscribe(observer2)
0386 subscription3.disposable = _parent.source3.subscribe(observer3)
0387 subscription4.disposable = _parent.source4.subscribe(observer4)
0388 subscription5.disposable = _parent.source5.subscribe(observer5)
0389
0390 return CompositeDisposable(disposables: [
0391 subscription1,
0392 subscription2,
0393 subscription3,
0394 subscription4,
0395 subscription5
0396 ])
0397 }
0398
0399 override func getResult() throws -> R {
0400 return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!)
0401 }
0402 }
0403
0404 class Zip5| Zip+arity.swift:332 | return Zip5( |
| Zip+arity.swift:341 | typealias Parent = Zip5<E1, E2, E3, E4, E5, R> |
<E1| Zip+arity.swift:405 | typealias ResultSelector = (E1, E2, E3, E4, E5) throws -> R |
| Zip+arity.swift:407 | let source1: Observable<E1> |
| Zip+arity.swift:415 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, resultSelector: ResultSelector) { |
, E2| Zip+arity.swift:405 | typealias ResultSelector = (E1, E2, E3, E4, E5) throws -> R |
| Zip+arity.swift:408 | let source2: Observable<E2> |
| Zip+arity.swift:415 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, resultSelector: ResultSelector) { |
, E3| Zip+arity.swift:405 | typealias ResultSelector = (E1, E2, E3, E4, E5) throws -> R |
| Zip+arity.swift:409 | let source3: Observable<E3> |
| Zip+arity.swift:415 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, resultSelector: ResultSelector) { |
, E4| Zip+arity.swift:405 | typealias ResultSelector = (E1, E2, E3, E4, E5) throws -> R |
| Zip+arity.swift:410 | let source4: Observable<E4> |
| Zip+arity.swift:415 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, resultSelector: ResultSelector) { |
, E5| Zip+arity.swift:405 | typealias ResultSelector = (E1, E2, E3, E4, E5) throws -> R |
| Zip+arity.swift:411 | let source5: Observable<E5> |
| Zip+arity.swift:415 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, resultSelector: ResultSelector) { |
, R| Zip+arity.swift:404 | class Zip5<E1, E2, E3, E4, E5, R> : Producer<R> { |
| Zip+arity.swift:405 | typealias ResultSelector = (E1, E2, E3, E4, E5) throws -> R |
| Zip+arity.swift:425 | override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable { |
> : Producer<R> {
0405 typealias ResultSelector| Zip+arity.swift:413 | let _resultSelector: ResultSelector |
| Zip+arity.swift:415 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, resultSelector: ResultSelector) { |
= (E1, E2, E3, E4, E5) throws -> R
0406
0407 let source1| Zip+arity.swift:384 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:416 | self.source1 = source1 |
: Observable<E1>
0408 let source2| Zip+arity.swift:385 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:417 | self.source2 = source2 |
: Observable<E2>
0409 let source3| Zip+arity.swift:386 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:418 | self.source3 = source3 |
: Observable<E3>
0410 let source4| Zip+arity.swift:387 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:419 | self.source4 = source4 |
: Observable<E4>
0411 let source5| Zip+arity.swift:388 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:420 | self.source5 = source5 |
: Observable<E5>
0412
0413 let _resultSelector| Zip+arity.swift:400 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) |
| Zip+arity.swift:422 | _resultSelector = resultSelector |
: ResultSelector
0414
0415 init| Zip+arity.swift:332 | return Zip5( |
(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, resultSelector: ResultSelector) {
0416 self.source1 = source1
0417 self.source2 = source2
0418 self.source3 = source3
0419 self.source4 = source4
0420 self.source5 = source5
0421
0422 _resultSelector = resultSelector
0423 }
0424
0425 override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable {
0426 let sink = ZipSink5_(parent: self, observer: observer)
0427 sink.disposable = sink.run()
0428 return sink
0429 }
0430 }
0431
0432
0433
0434
0436 extension Observable {
0437 seealsoparameterreturns
0445 @warn_unused_result(message="http://git.io/rxs.uo")
0446 public static func zip<O1: ObservableType, O2: ObservableType, O3: ObservableType, O4: ObservableType, O5: ObservableType, O6: ObservableType>
0447 (source1: O1, _ source2: O2, _ source3: O3, _ source4: O4, _ source5: O5, _ source6: O6, resultSelector: (O1.E, O2.E, O3.E, O4.E, O5.E, O6.E) throws -> E)
0448 -> Observable<E> {
0449 return Zip6(
0450 source1: source1.asObservable(), source2: source2.asObservable(), source3: source3.asObservable(), source4: source4.asObservable(), source5: source5.asObservable(), source6: source6.asObservable(),
0451 resultSelector: resultSelector
0452 )
0453 }
0454 }
0455
0456 class ZipSink6_| Zip+arity.swift:551 | let sink = ZipSink6_(parent: self, observer: observer) |
<E1| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
| Zip+arity.swift:462 | var _values1: Queue<E1> = Queue(capacity: 2) |
, E2| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
| Zip+arity.swift:463 | var _values2: Queue<E2> = Queue(capacity: 2) |
, E3| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
| Zip+arity.swift:464 | var _values3: Queue<E3> = Queue(capacity: 2) |
, E4| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
| Zip+arity.swift:465 | var _values4: Queue<E4> = Queue(capacity: 2) |
, E5| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
| Zip+arity.swift:466 | var _values5: Queue<E5> = Queue(capacity: 2) |
, E6| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
| Zip+arity.swift:467 | var _values6: Queue<E6> = Queue(capacity: 2) |
, O| Zip+arity.swift:456 | class ZipSink6_<E1, E2, E3, E4, E5, E6, O: ObserverType> : ZipSink<O> { |
| Zip+arity.swift:457 | typealias R = O.E |
| Zip+arity.swift:469 | init(parent: Parent, observer: O) { |
: ObserverType> : ZipSink<O> {
0457 typealias R| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
| Zip+arity.swift:522 | override func getResult() throws -> R { |
= O.E
0458 typealias Parent| Zip+arity.swift:460 | let _parent: Parent |
| Zip+arity.swift:469 | init(parent: Parent, observer: O) { |
= Zip6<E1, E2, E3, E4, E5, E6, R>
0459
0460 let _parent| Zip+arity.swift:470 | _parent = parent |
| Zip+arity.swift:505 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:506 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:507 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:508 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:509 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:510 | subscription6.disposable = _parent.source6.subscribe(observer6) |
| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
: Parent
0461
0462 var _values1| Zip+arity.swift:476 | case 0: return _values1.count > 0 |
| Zip+arity.swift:498 | let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) |
| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
: Queue<E1> = Queue(capacity: 2)
0463 var _values2| Zip+arity.swift:477 | case 1: return _values2.count > 0 |
| Zip+arity.swift:499 | let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) |
| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
: Queue<E2> = Queue(capacity: 2)
0464 var _values3| Zip+arity.swift:478 | case 2: return _values3.count > 0 |
| Zip+arity.swift:500 | let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) |
| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
: Queue<E3> = Queue(capacity: 2)
0465 var _values4| Zip+arity.swift:479 | case 3: return _values4.count > 0 |
| Zip+arity.swift:501 | let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) |
| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
: Queue<E4> = Queue(capacity: 2)
0466 var _values5| Zip+arity.swift:480 | case 4: return _values5.count > 0 |
| Zip+arity.swift:502 | let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) |
| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
: Queue<E5> = Queue(capacity: 2)
0467 var _values6| Zip+arity.swift:481 | case 5: return _values6.count > 0 |
| Zip+arity.swift:503 | let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) |
| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
: Queue<E6> = Queue(capacity: 2)
0468
0469 init| Zip+arity.swift:551 | let sink = ZipSink6_(parent: self, observer: observer) |
(parent: Parent, observer: O) {
0470 _parent = parent
0471 super.init(arity: 6, observer: observer)
0472 }
0473
0474 override func hasElements(index: Int) -> Bool {
0475 switch (index) {
0476 case 0: return _values1.count > 0
0477 case 1: return _values2.count > 0
0478 case 2: return _values3.count > 0
0479 case 3: return _values4.count > 0
0480 case 4: return _values5.count > 0
0481 case 5: return _values6.count > 0
0482
0483 default:
0484 rxFatalError("Unhandled case (Function)")
0485 }
0486
0487 return false
0488 }
0489
0490 func run| Zip+arity.swift:552 | sink.disposable = sink.run() |
() -> Disposable {
0491 let subscription1 = SingleAssignmentDisposable()
0492 let subscription2 = SingleAssignmentDisposable()
0493 let subscription3 = SingleAssignmentDisposable()
0494 let subscription4 = SingleAssignmentDisposable()
0495 let subscription5 = SingleAssignmentDisposable()
0496 let subscription6 = SingleAssignmentDisposable()
0497
0498 let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1)
0499 let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2)
0500 let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3)
0501 let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4)
0502 let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5)
0503 let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6)
0504
0505 subscription1.disposable = _parent.source1.subscribe(observer1)
0506 subscription2.disposable = _parent.source2.subscribe(observer2)
0507 subscription3.disposable = _parent.source3.subscribe(observer3)
0508 subscription4.disposable = _parent.source4.subscribe(observer4)
0509 subscription5.disposable = _parent.source5.subscribe(observer5)
0510 subscription6.disposable = _parent.source6.subscribe(observer6)
0511
0512 return CompositeDisposable(disposables: [
0513 subscription1,
0514 subscription2,
0515 subscription3,
0516 subscription4,
0517 subscription5,
0518 subscription6
0519 ])
0520 }
0521
0522 override func getResult() throws -> R {
0523 return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!)
0524 }
0525 }
0526
0527 class Zip6| Zip+arity.swift:449 | return Zip6( |
| Zip+arity.swift:458 | typealias Parent = Zip6<E1, E2, E3, E4, E5, E6, R> |
<E1| Zip+arity.swift:528 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6) throws -> R |
| Zip+arity.swift:530 | let source1: Observable<E1> |
| Zip+arity.swift:539 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) { |
, E2| Zip+arity.swift:528 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6) throws -> R |
| Zip+arity.swift:531 | let source2: Observable<E2> |
| Zip+arity.swift:539 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) { |
, E3| Zip+arity.swift:528 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6) throws -> R |
| Zip+arity.swift:532 | let source3: Observable<E3> |
| Zip+arity.swift:539 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) { |
, E4| Zip+arity.swift:528 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6) throws -> R |
| Zip+arity.swift:533 | let source4: Observable<E4> |
| Zip+arity.swift:539 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) { |
, E5| Zip+arity.swift:528 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6) throws -> R |
| Zip+arity.swift:534 | let source5: Observable<E5> |
| Zip+arity.swift:539 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) { |
, E6| Zip+arity.swift:528 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6) throws -> R |
| Zip+arity.swift:535 | let source6: Observable<E6> |
| Zip+arity.swift:539 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) { |
, R| Zip+arity.swift:527 | class Zip6<E1, E2, E3, E4, E5, E6, R> : Producer<R> { |
| Zip+arity.swift:528 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6) throws -> R |
| Zip+arity.swift:550 | override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable { |
> : Producer<R> {
0528 typealias ResultSelector| Zip+arity.swift:537 | let _resultSelector: ResultSelector |
| Zip+arity.swift:539 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) { |
= (E1, E2, E3, E4, E5, E6) throws -> R
0529
0530 let source1| Zip+arity.swift:505 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:540 | self.source1 = source1 |
: Observable<E1>
0531 let source2| Zip+arity.swift:506 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:541 | self.source2 = source2 |
: Observable<E2>
0532 let source3| Zip+arity.swift:507 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:542 | self.source3 = source3 |
: Observable<E3>
0533 let source4| Zip+arity.swift:508 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:543 | self.source4 = source4 |
: Observable<E4>
0534 let source5| Zip+arity.swift:509 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:544 | self.source5 = source5 |
: Observable<E5>
0535 let source6| Zip+arity.swift:510 | subscription6.disposable = _parent.source6.subscribe(observer6) |
| Zip+arity.swift:545 | self.source6 = source6 |
: Observable<E6>
0536
0537 let _resultSelector| Zip+arity.swift:523 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) |
| Zip+arity.swift:547 | _resultSelector = resultSelector |
: ResultSelector
0538
0539 init| Zip+arity.swift:449 | return Zip6( |
(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, resultSelector: ResultSelector) {
0540 self.source1 = source1
0541 self.source2 = source2
0542 self.source3 = source3
0543 self.source4 = source4
0544 self.source5 = source5
0545 self.source6 = source6
0546
0547 _resultSelector = resultSelector
0548 }
0549
0550 override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable {
0551 let sink = ZipSink6_(parent: self, observer: observer)
0552 sink.disposable = sink.run()
0553 return sink
0554 }
0555 }
0556
0557
0558
0559
0561 extension Observable {
0562 seealsoparameterreturns
0570 @warn_unused_result(message="http://git.io/rxs.uo")
0571 public static func zip<O1: ObservableType, O2: ObservableType, O3: ObservableType, O4: ObservableType, O5: ObservableType, O6: ObservableType, O7: ObservableType>
0572 (source1: O1, _ source2: O2, _ source3: O3, _ source4: O4, _ source5: O5, _ source6: O6, _ source7: O7, resultSelector: (O1.E, O2.E, O3.E, O4.E, O5.E, O6.E, O7.E) throws -> E)
0573 -> Observable<E> {
0574 return Zip7(
0575 source1: source1.asObservable(), source2: source2.asObservable(), source3: source3.asObservable(), source4: source4.asObservable(), source5: source5.asObservable(), source6: source6.asObservable(), source7: source7.asObservable(),
0576 resultSelector: resultSelector
0577 )
0578 }
0579 }
0580
0581 class ZipSink7_| Zip+arity.swift:684 | let sink = ZipSink7_(parent: self, observer: observer) |
<E1| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:587 | var _values1: Queue<E1> = Queue(capacity: 2) |
, E2| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:588 | var _values2: Queue<E2> = Queue(capacity: 2) |
, E3| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:589 | var _values3: Queue<E3> = Queue(capacity: 2) |
, E4| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:590 | var _values4: Queue<E4> = Queue(capacity: 2) |
, E5| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:591 | var _values5: Queue<E5> = Queue(capacity: 2) |
, E6| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:592 | var _values6: Queue<E6> = Queue(capacity: 2) |
, E7| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:593 | var _values7: Queue<E7> = Queue(capacity: 2) |
, O| Zip+arity.swift:581 | class ZipSink7_<E1, E2, E3, E4, E5, E6, E7, O: ObserverType> : ZipSink<O> { |
| Zip+arity.swift:582 | typealias R = O.E |
| Zip+arity.swift:595 | init(parent: Parent, observer: O) { |
: ObserverType> : ZipSink<O> {
0582 typealias R| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
| Zip+arity.swift:653 | override func getResult() throws -> R { |
= O.E
0583 typealias Parent| Zip+arity.swift:585 | let _parent: Parent |
| Zip+arity.swift:595 | init(parent: Parent, observer: O) { |
= Zip7<E1, E2, E3, E4, E5, E6, E7, R>
0584
0585 let _parent| Zip+arity.swift:596 | _parent = parent |
| Zip+arity.swift:634 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:635 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:636 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:637 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:638 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:639 | subscription6.disposable = _parent.source6.subscribe(observer6) |
| Zip+arity.swift:640 | subscription7.disposable = _parent.source7.subscribe(observer7) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Parent
0586
0587 var _values1| Zip+arity.swift:602 | case 0: return _values1.count > 0 |
| Zip+arity.swift:626 | let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Queue<E1> = Queue(capacity: 2)
0588 var _values2| Zip+arity.swift:603 | case 1: return _values2.count > 0 |
| Zip+arity.swift:627 | let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Queue<E2> = Queue(capacity: 2)
0589 var _values3| Zip+arity.swift:604 | case 2: return _values3.count > 0 |
| Zip+arity.swift:628 | let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Queue<E3> = Queue(capacity: 2)
0590 var _values4| Zip+arity.swift:605 | case 3: return _values4.count > 0 |
| Zip+arity.swift:629 | let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Queue<E4> = Queue(capacity: 2)
0591 var _values5| Zip+arity.swift:606 | case 4: return _values5.count > 0 |
| Zip+arity.swift:630 | let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Queue<E5> = Queue(capacity: 2)
0592 var _values6| Zip+arity.swift:607 | case 5: return _values6.count > 0 |
| Zip+arity.swift:631 | let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Queue<E6> = Queue(capacity: 2)
0593 var _values7| Zip+arity.swift:608 | case 6: return _values7.count > 0 |
| Zip+arity.swift:632 | let observer7 = ZipObserver(lock: _lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7) |
| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
: Queue<E7> = Queue(capacity: 2)
0594
0595 init| Zip+arity.swift:684 | let sink = ZipSink7_(parent: self, observer: observer) |
(parent: Parent, observer: O) {
0596 _parent = parent
0597 super.init(arity: 7, observer: observer)
0598 }
0599
0600 override func hasElements(index: Int) -> Bool {
0601 switch (index) {
0602 case 0: return _values1.count > 0
0603 case 1: return _values2.count > 0
0604 case 2: return _values3.count > 0
0605 case 3: return _values4.count > 0
0606 case 4: return _values5.count > 0
0607 case 5: return _values6.count > 0
0608 case 6: return _values7.count > 0
0609
0610 default:
0611 rxFatalError("Unhandled case (Function)")
0612 }
0613
0614 return false
0615 }
0616
0617 func run| Zip+arity.swift:685 | sink.disposable = sink.run() |
() -> Disposable {
0618 let subscription1 = SingleAssignmentDisposable()
0619 let subscription2 = SingleAssignmentDisposable()
0620 let subscription3 = SingleAssignmentDisposable()
0621 let subscription4 = SingleAssignmentDisposable()
0622 let subscription5 = SingleAssignmentDisposable()
0623 let subscription6 = SingleAssignmentDisposable()
0624 let subscription7 = SingleAssignmentDisposable()
0625
0626 let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1)
0627 let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2)
0628 let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3)
0629 let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4)
0630 let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5)
0631 let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6)
0632 let observer7 = ZipObserver(lock: _lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7)
0633
0634 subscription1.disposable = _parent.source1.subscribe(observer1)
0635 subscription2.disposable = _parent.source2.subscribe(observer2)
0636 subscription3.disposable = _parent.source3.subscribe(observer3)
0637 subscription4.disposable = _parent.source4.subscribe(observer4)
0638 subscription5.disposable = _parent.source5.subscribe(observer5)
0639 subscription6.disposable = _parent.source6.subscribe(observer6)
0640 subscription7.disposable = _parent.source7.subscribe(observer7)
0641
0642 return CompositeDisposable(disposables: [
0643 subscription1,
0644 subscription2,
0645 subscription3,
0646 subscription4,
0647 subscription5,
0648 subscription6,
0649 subscription7
0650 ])
0651 }
0652
0653 override func getResult() throws -> R {
0654 return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!)
0655 }
0656 }
0657
0658 class Zip7| Zip+arity.swift:574 | return Zip7( |
| Zip+arity.swift:583 | typealias Parent = Zip7<E1, E2, E3, E4, E5, E6, E7, R> |
<E1| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:661 | let source1: Observable<E1> |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
, E2| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:662 | let source2: Observable<E2> |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
, E3| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:663 | let source3: Observable<E3> |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
, E4| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:664 | let source4: Observable<E4> |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
, E5| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:665 | let source5: Observable<E5> |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
, E6| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:666 | let source6: Observable<E6> |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
, E7| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:667 | let source7: Observable<E7> |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
, R| Zip+arity.swift:658 | class Zip7<E1, E2, E3, E4, E5, E6, E7, R> : Producer<R> { |
| Zip+arity.swift:659 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7) throws -> R |
| Zip+arity.swift:683 | override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable { |
> : Producer<R> {
0659 typealias ResultSelector| Zip+arity.swift:669 | let _resultSelector: ResultSelector |
| Zip+arity.swift:671 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) { |
= (E1, E2, E3, E4, E5, E6, E7) throws -> R
0660
0661 let source1| Zip+arity.swift:634 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:672 | self.source1 = source1 |
: Observable<E1>
0662 let source2| Zip+arity.swift:635 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:673 | self.source2 = source2 |
: Observable<E2>
0663 let source3| Zip+arity.swift:636 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:674 | self.source3 = source3 |
: Observable<E3>
0664 let source4| Zip+arity.swift:637 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:675 | self.source4 = source4 |
: Observable<E4>
0665 let source5| Zip+arity.swift:638 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:676 | self.source5 = source5 |
: Observable<E5>
0666 let source6| Zip+arity.swift:639 | subscription6.disposable = _parent.source6.subscribe(observer6) |
| Zip+arity.swift:677 | self.source6 = source6 |
: Observable<E6>
0667 let source7| Zip+arity.swift:640 | subscription7.disposable = _parent.source7.subscribe(observer7) |
| Zip+arity.swift:678 | self.source7 = source7 |
: Observable<E7>
0668
0669 let _resultSelector| Zip+arity.swift:654 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) |
| Zip+arity.swift:680 | _resultSelector = resultSelector |
: ResultSelector
0670
0671 init| Zip+arity.swift:574 | return Zip7( |
(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, resultSelector: ResultSelector) {
0672 self.source1 = source1
0673 self.source2 = source2
0674 self.source3 = source3
0675 self.source4 = source4
0676 self.source5 = source5
0677 self.source6 = source6
0678 self.source7 = source7
0679
0680 _resultSelector = resultSelector
0681 }
0682
0683 override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable {
0684 let sink = ZipSink7_(parent: self, observer: observer)
0685 sink.disposable = sink.run()
0686 return sink
0687 }
0688 }
0689
0690
0691
0692
0694 extension Observable {
0695 seealsoparameterreturns
0703 @warn_unused_result(message="http://git.io/rxs.uo")
0704 public static func zip<O1: ObservableType, O2: ObservableType, O3: ObservableType, O4: ObservableType, O5: ObservableType, O6: ObservableType, O7: ObservableType, O8: ObservableType>
0705 (source1: O1, _ source2: O2, _ source3: O3, _ source4: O4, _ source5: O5, _ source6: O6, _ source7: O7, _ source8: O8, resultSelector: (O1.E, O2.E, O3.E, O4.E, O5.E, O6.E, O7.E, O8.E) throws -> E)
0706 -> Observable<E> {
0707 return Zip8(
0708 source1: source1.asObservable(), source2: source2.asObservable(), source3: source3.asObservable(), source4: source4.asObservable(), source5: source5.asObservable(), source6: source6.asObservable(), source7: source7.asObservable(), source8: source8.asObservable(),
0709 resultSelector: resultSelector
0710 )
0711 }
0712 }
0713
0714 class ZipSink8_| Zip+arity.swift:825 | let sink = ZipSink8_(parent: self, observer: observer) |
<E1| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:720 | var _values1: Queue<E1> = Queue(capacity: 2) |
, E2| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:721 | var _values2: Queue<E2> = Queue(capacity: 2) |
, E3| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:722 | var _values3: Queue<E3> = Queue(capacity: 2) |
, E4| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:723 | var _values4: Queue<E4> = Queue(capacity: 2) |
, E5| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:724 | var _values5: Queue<E5> = Queue(capacity: 2) |
, E6| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:725 | var _values6: Queue<E6> = Queue(capacity: 2) |
, E7| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:726 | var _values7: Queue<E7> = Queue(capacity: 2) |
, E8| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:727 | var _values8: Queue<E8> = Queue(capacity: 2) |
, O| Zip+arity.swift:714 | class ZipSink8_<E1, E2, E3, E4, E5, E6, E7, E8, O: ObserverType> : ZipSink<O> { |
| Zip+arity.swift:715 | typealias R = O.E |
| Zip+arity.swift:729 | init(parent: Parent, observer: O) { |
: ObserverType> : ZipSink<O> {
0715 typealias R| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
| Zip+arity.swift:792 | override func getResult() throws -> R { |
= O.E
0716 typealias Parent| Zip+arity.swift:718 | let _parent: Parent |
| Zip+arity.swift:729 | init(parent: Parent, observer: O) { |
= Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R>
0717
0718 let _parent| Zip+arity.swift:730 | _parent = parent |
| Zip+arity.swift:771 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:772 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:773 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:774 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:775 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:776 | subscription6.disposable = _parent.source6.subscribe(observer6) |
| Zip+arity.swift:777 | subscription7.disposable = _parent.source7.subscribe(observer7) |
| Zip+arity.swift:778 | subscription8.disposable = _parent.source8.subscribe(observer8) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Parent
0719
0720 var _values1| Zip+arity.swift:736 | case 0: return _values1.count > 0 |
| Zip+arity.swift:762 | let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E1> = Queue(capacity: 2)
0721 var _values2| Zip+arity.swift:737 | case 1: return _values2.count > 0 |
| Zip+arity.swift:763 | let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E2> = Queue(capacity: 2)
0722 var _values3| Zip+arity.swift:738 | case 2: return _values3.count > 0 |
| Zip+arity.swift:764 | let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E3> = Queue(capacity: 2)
0723 var _values4| Zip+arity.swift:739 | case 3: return _values4.count > 0 |
| Zip+arity.swift:765 | let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E4> = Queue(capacity: 2)
0724 var _values5| Zip+arity.swift:740 | case 4: return _values5.count > 0 |
| Zip+arity.swift:766 | let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E5> = Queue(capacity: 2)
0725 var _values6| Zip+arity.swift:741 | case 5: return _values6.count > 0 |
| Zip+arity.swift:767 | let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E6> = Queue(capacity: 2)
0726 var _values7| Zip+arity.swift:742 | case 6: return _values7.count > 0 |
| Zip+arity.swift:768 | let observer7 = ZipObserver(lock: _lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E7> = Queue(capacity: 2)
0727 var _values8| Zip+arity.swift:743 | case 7: return _values8.count > 0 |
| Zip+arity.swift:769 | let observer8 = ZipObserver(lock: _lock, parent: self, index: 7, setNextValue: { self._values8.enqueue($0) }, this: subscription8) |
| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
: Queue<E8> = Queue(capacity: 2)
0728
0729 init| Zip+arity.swift:825 | let sink = ZipSink8_(parent: self, observer: observer) |
(parent: Parent, observer: O) {
0730 _parent = parent
0731 super.init(arity: 8, observer: observer)
0732 }
0733
0734 override func hasElements(index: Int) -> Bool {
0735 switch (index) {
0736 case 0: return _values1.count > 0
0737 case 1: return _values2.count > 0
0738 case 2: return _values3.count > 0
0739 case 3: return _values4.count > 0
0740 case 4: return _values5.count > 0
0741 case 5: return _values6.count > 0
0742 case 6: return _values7.count > 0
0743 case 7: return _values8.count > 0
0744
0745 default:
0746 rxFatalError("Unhandled case (Function)")
0747 }
0748
0749 return false
0750 }
0751
0752 func run| Zip+arity.swift:826 | sink.disposable = sink.run() |
() -> Disposable {
0753 let subscription1 = SingleAssignmentDisposable()
0754 let subscription2 = SingleAssignmentDisposable()
0755 let subscription3 = SingleAssignmentDisposable()
0756 let subscription4 = SingleAssignmentDisposable()
0757 let subscription5 = SingleAssignmentDisposable()
0758 let subscription6 = SingleAssignmentDisposable()
0759 let subscription7 = SingleAssignmentDisposable()
0760 let subscription8 = SingleAssignmentDisposable()
0761
0762 let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1)
0763 let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2)
0764 let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3)
0765 let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4)
0766 let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5)
0767 let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6)
0768 let observer7 = ZipObserver(lock: _lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7)
0769 let observer8 = ZipObserver(lock: _lock, parent: self, index: 7, setNextValue: { self._values8.enqueue($0) }, this: subscription8)
0770
0771 subscription1.disposable = _parent.source1.subscribe(observer1)
0772 subscription2.disposable = _parent.source2.subscribe(observer2)
0773 subscription3.disposable = _parent.source3.subscribe(observer3)
0774 subscription4.disposable = _parent.source4.subscribe(observer4)
0775 subscription5.disposable = _parent.source5.subscribe(observer5)
0776 subscription6.disposable = _parent.source6.subscribe(observer6)
0777 subscription7.disposable = _parent.source7.subscribe(observer7)
0778 subscription8.disposable = _parent.source8.subscribe(observer8)
0779
0780 return CompositeDisposable(disposables: [
0781 subscription1,
0782 subscription2,
0783 subscription3,
0784 subscription4,
0785 subscription5,
0786 subscription6,
0787 subscription7,
0788 subscription8
0789 ])
0790 }
0791
0792 override func getResult() throws -> R {
0793 return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!)
0794 }
0795 }
0796
0797 class Zip8| Zip+arity.swift:707 | return Zip8( |
| Zip+arity.swift:716 | typealias Parent = Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> |
<E1| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:800 | let source1: Observable<E1> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, E2| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:801 | let source2: Observable<E2> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, E3| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:802 | let source3: Observable<E3> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, E4| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:803 | let source4: Observable<E4> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, E5| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:804 | let source5: Observable<E5> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, E6| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:805 | let source6: Observable<E6> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, E7| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:806 | let source7: Observable<E7> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, E8| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:807 | let source8: Observable<E8> |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
, R| Zip+arity.swift:797 | class Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> : Producer<R> { |
| Zip+arity.swift:798 | typealias ResultSelector = (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R |
| Zip+arity.swift:824 | override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable { |
> : Producer<R> {
0798 typealias ResultSelector| Zip+arity.swift:809 | let _resultSelector: ResultSelector |
| Zip+arity.swift:811 | init(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) { |
= (E1, E2, E3, E4, E5, E6, E7, E8) throws -> R
0799
0800 let source1| Zip+arity.swift:771 | subscription1.disposable = _parent.source1.subscribe(observer1) |
| Zip+arity.swift:812 | self.source1 = source1 |
: Observable<E1>
0801 let source2| Zip+arity.swift:772 | subscription2.disposable = _parent.source2.subscribe(observer2) |
| Zip+arity.swift:813 | self.source2 = source2 |
: Observable<E2>
0802 let source3| Zip+arity.swift:773 | subscription3.disposable = _parent.source3.subscribe(observer3) |
| Zip+arity.swift:814 | self.source3 = source3 |
: Observable<E3>
0803 let source4| Zip+arity.swift:774 | subscription4.disposable = _parent.source4.subscribe(observer4) |
| Zip+arity.swift:815 | self.source4 = source4 |
: Observable<E4>
0804 let source5| Zip+arity.swift:775 | subscription5.disposable = _parent.source5.subscribe(observer5) |
| Zip+arity.swift:816 | self.source5 = source5 |
: Observable<E5>
0805 let source6| Zip+arity.swift:776 | subscription6.disposable = _parent.source6.subscribe(observer6) |
| Zip+arity.swift:817 | self.source6 = source6 |
: Observable<E6>
0806 let source7| Zip+arity.swift:777 | subscription7.disposable = _parent.source7.subscribe(observer7) |
| Zip+arity.swift:818 | self.source7 = source7 |
: Observable<E7>
0807 let source8| Zip+arity.swift:778 | subscription8.disposable = _parent.source8.subscribe(observer8) |
| Zip+arity.swift:819 | self.source8 = source8 |
: Observable<E8>
0808
0809 let _resultSelector| Zip+arity.swift:793 | return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) |
| Zip+arity.swift:821 | _resultSelector = resultSelector |
: ResultSelector
0810
0811 init| Zip+arity.swift:707 | return Zip8( |
(source1: Observable<E1>, source2: Observable<E2>, source3: Observable<E3>, source4: Observable<E4>, source5: Observable<E5>, source6: Observable<E6>, source7: Observable<E7>, source8: Observable<E8>, resultSelector: ResultSelector) {
0812 self.source1 = source1
0813 self.source2 = source2
0814 self.source3 = source3
0815 self.source4 = source4
0816 self.source5 = source5
0817 self.source6 = source6
0818 self.source7 = source7
0819 self.source8 = source8
0820
0821 _resultSelector = resultSelector
0822 }
0823
0824 override func run<O: ObserverType where O.E == R>(observer: O) -> Disposable {
0825 let sink = ZipSink8_(parent: self, observer: observer)
0826 sink.disposable = sink.run()
0827 return sink
0828 }
0829 }
0830
0831