From 0cfbb60ea1923f806f969d38d42f14f9c23127c6 Mon Sep 17 00:00:00 2001 From: Esteban Torres Date: Tue, 17 Nov 2015 16:00:36 -0600 Subject: [PATCH 1/3] Added `RxSwift beta 3` support. --- Example/Podfile | 1 + Example/Podfile.lock | 14 +- .../Local Podspecs/RxViewModel.podspec.json | 4 +- Example/Pods/Manifest.lock | 14 +- Example/Pods/Pods.xcodeproj/project.pbxproj | 2353 +++++++++-------- .../xcschemes/RxViewModel.xcscheme | 67 +- Example/Pods/RxCocoa/README.md | 5 +- .../CocoaUnits/Driver/Driver+Operators.swift | 21 + .../Common/CocoaUnits/Driver/Driver.swift | 2 +- .../KVORepresentable+CoreGraphics.swift | 71 + .../Common/KVORepresentable+Swift.swift | 93 + .../RxCocoa/Common/KVORepresentable.swift | 35 + .../Implementations/KVOObservable.swift | 7 +- .../NSObject+Rx+CoreGraphics.swift | 115 +- .../NSObject+Rx+KVORepresentable.swift | 45 + .../NSObject+Rx+RawRepresentable.swift | 51 + .../Common/Observables/NSObject+Rx.swift | 90 +- .../Common/Observables/NSURLSession+Rx.swift | 74 +- .../Pods/RxCocoa/RxCocoa/Common/RxCocoa.swift | 75 +- .../RxCocoa/RxCocoa/iOS/UIButton+Rx.swift | 22 +- .../RxCocoa/iOS/UICollectionView+Rx.swift | 2 +- .../RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift | 4 +- .../RxCocoa/RxCocoa/iOS/UITableView+Rx.swift | 2 +- Example/Pods/RxSwift/README.md | 5 +- .../Pods/RxSwift/RxSwift/AnyObserver.swift | 13 +- .../RxSwift/Concurrency/AsyncLock.swift | 94 +- .../RxSwift/RxSwift/Concurrency/Lock.swift | 28 +- .../SynchronizedUnsubscribeType.swift | 11 +- .../RxSwift/RxSwift/DataStructures/Bag.swift | 46 +- .../Disposables/BooleanDisposable.swift | 47 + .../RxSwift/Disposables/NopDisposable.swift | 2 +- .../Disposables/RefCountDisposable.swift | 129 + Example/Pods/RxSwift/RxSwift/Error.swift | 67 +- Example/Pods/RxSwift/RxSwift/Event.swift | 8 +- Example/Pods/RxSwift/RxSwift/Observable.swift | 10 + .../Observables/Implementations/AddRef.swift | 47 + .../Implementations/AnonymousObservable.swift | 4 +- .../Observables/Implementations/Buffer.swift | 6 +- .../Observables/Implementations/Catch.swift | 12 +- .../Observables/Implementations/Concat.swift | 12 +- .../Observables/Implementations/Filter.swift | 11 +- .../Observables/Implementations/FlatMap.swift | 185 -- .../Observables/Implementations/Just.swift | 38 + .../Observables/Implementations/Map.swift | 135 +- .../Observables/Implementations/Merge.swift | 425 ++- .../Implementations/RetryWhen.swift | 152 ++ .../Implementations/Sequence.swift | 58 + .../Implementations/ShareReplay1.swift | 29 +- .../Implementations/SingleAsync.swift | 76 + .../Observables/Implementations/Sink.swift | 2 +- .../Observables/Implementations/Switch.swift | 114 +- .../Observables/Implementations/Window.swift | 151 ++ .../Implementations/Zip+arity.swift | 14 +- .../Observables/Observable+Creation.swift | 57 +- .../Observables/Observable+Multiple.swift | 26 +- .../Observables/Observable+Single.swift | 26 + ...Observable+StandardSequenceOperators.swift | 92 +- .../RxSwift/Observables/Observable+Time.swift | 19 + .../RxSwift/Observers/TailRecursiveSink.swift | 64 +- Example/Pods/RxSwift/RxSwift/Rx.swift | 4 +- Example/Pods/RxSwift/RxSwift/RxBox.swift | 16 +- .../Schedulers/AnonymousInvocable.swift | 21 + .../ConcurrentDispatchQueueScheduler.swift | 2 +- .../Schedulers/CurrentThreadScheduler.swift | 2 +- .../Schedulers/ImmediateScheduler.swift | 6 +- .../Schedulers/InvocableScheduledItem.swift | 24 + .../RxSwift/Schedulers/InvocableType.swift | 19 + .../Schedulers/OperationQueueScheduler.swift | 2 +- .../RxSwift/Schedulers/ScheduledItem.swift | 38 +- .../Schedulers/ScheduledItemType.swift | 15 + .../RxSwift/Subjects/BehaviorSubject.swift | 18 +- .../RxSwift/Subjects/PublishSubject.swift | 31 +- .../RxSwift/Subjects/ReplaySubject.swift | 38 +- .../Target Support Files/Nimble/Info.plist | 40 +- .../Pods/Target Support Files/Pods/Info.plist | 40 +- .../Target Support Files/Quick/Info.plist | 40 +- .../Target Support Files/RxCocoa/Info.plist | 40 +- .../Target Support Files/RxSwift/Info.plist | 40 +- .../RxViewModel/Info.plist | 40 +- Example/Tests/Tests.swift | 2 +- Gemfile.lock | 10 +- Pod/Classes/RxViewModel.swift | 6 +- RxViewModel.podspec | 4 +- 83 files changed, 3717 insertions(+), 2163 deletions(-) create mode 100644 Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+CoreGraphics.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+Swift.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+KVORepresentable.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+RawRepresentable.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Observables/Implementations/AddRef.swift delete mode 100644 Example/Pods/RxSwift/RxSwift/Observables/Implementations/FlatMap.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Observables/Implementations/RetryWhen.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sequence.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Observables/Implementations/SingleAsync.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Observables/Implementations/Window.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Schedulers/AnonymousInvocable.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Schedulers/InvocableScheduledItem.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Schedulers/InvocableType.swift create mode 100644 Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItemType.swift diff --git a/Example/Podfile b/Example/Podfile index b16dc5b..68ad74a 100644 --- a/Example/Podfile +++ b/Example/Podfile @@ -1,5 +1,6 @@ source 'https://github.com/CocoaPods/Specs.git' use_frameworks! +inhibit_all_warnings! pod "RxViewModel", :path => "../" pod 'Nimble' diff --git a/Example/Podfile.lock b/Example/Podfile.lock index cb853d6..5fc2cde 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,12 +1,12 @@ PODS: - Nimble (3.0.0) - Quick (0.8.0) - - RxCocoa (2.0.0-beta.2): + - RxCocoa (2.0.0-beta.3): - RxSwift (~> 2.0.0-beta) - - RxSwift (2.0.0-beta.2) + - RxSwift (2.0.0-beta.3) - RxViewModel (2.3.1): - - RxCocoa (~> 2.0.0-beta.2) - - RxSwift (~> 2.0.0-beta.2) + - RxCocoa (~> 2.0.0-beta.3) + - RxSwift (~> 2.0.0-beta.3) DEPENDENCIES: - Nimble @@ -20,8 +20,8 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Nimble: 4c353d43735b38b545cbb4cb91504588eb5de926 Quick: 563d0f6ec5f72e394645adb377708639b7dd38ab - RxCocoa: ee39aa3ab24a8dde3832669f8e1e2c7652925e0c - RxSwift: 795720c22352cf1f62669ef3695b5df7e195103b - RxViewModel: 1a649843997c9d7dec253bcf946933502e8e5b0c + RxCocoa: 1472006304b296d03c847f78b21384523cc4902e + RxSwift: 19fbe885b404d1d36d42ac8535134739a9b42952 + RxViewModel: 2dcd72b8ce252a4d3e3a0b328d15bf9af3a1a1fa COCOAPODS: 0.39.0 diff --git a/Example/Pods/Local Podspecs/RxViewModel.podspec.json b/Example/Pods/Local Podspecs/RxViewModel.podspec.json index 91c5a65..4e19417 100644 --- a/Example/Pods/Local Podspecs/RxViewModel.podspec.json +++ b/Example/Pods/Local Podspecs/RxViewModel.podspec.json @@ -23,10 +23,10 @@ "source_files": "Pod/Classes/**/*", "dependencies": { "RxCocoa": [ - "~> 2.0.0-beta.2" + "~> 2.0.0-beta.3" ], "RxSwift": [ - "~> 2.0.0-beta.2" + "~> 2.0.0-beta.3" ] }, "frameworks": "Foundation" diff --git a/Example/Pods/Manifest.lock b/Example/Pods/Manifest.lock index cb853d6..5fc2cde 100644 --- a/Example/Pods/Manifest.lock +++ b/Example/Pods/Manifest.lock @@ -1,12 +1,12 @@ PODS: - Nimble (3.0.0) - Quick (0.8.0) - - RxCocoa (2.0.0-beta.2): + - RxCocoa (2.0.0-beta.3): - RxSwift (~> 2.0.0-beta) - - RxSwift (2.0.0-beta.2) + - RxSwift (2.0.0-beta.3) - RxViewModel (2.3.1): - - RxCocoa (~> 2.0.0-beta.2) - - RxSwift (~> 2.0.0-beta.2) + - RxCocoa (~> 2.0.0-beta.3) + - RxSwift (~> 2.0.0-beta.3) DEPENDENCIES: - Nimble @@ -20,8 +20,8 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: Nimble: 4c353d43735b38b545cbb4cb91504588eb5de926 Quick: 563d0f6ec5f72e394645adb377708639b7dd38ab - RxCocoa: ee39aa3ab24a8dde3832669f8e1e2c7652925e0c - RxSwift: 795720c22352cf1f62669ef3695b5df7e195103b - RxViewModel: 1a649843997c9d7dec253bcf946933502e8e5b0c + RxCocoa: 1472006304b296d03c847f78b21384523cc4902e + RxSwift: 19fbe885b404d1d36d42ac8535134739a9b42952 + RxViewModel: 2dcd72b8ce252a4d3e3a0b328d15bf9af3a1a1fa COCOAPODS: 0.39.0 diff --git a/Example/Pods/Pods.xcodeproj/project.pbxproj b/Example/Pods/Pods.xcodeproj/project.pbxproj index aae9ee2..ce13d56 100644 --- a/Example/Pods/Pods.xcodeproj/project.pbxproj +++ b/Example/Pods/Pods.xcodeproj/project.pbxproj @@ -7,285 +7,300 @@ objects = { /* Begin PBXBuildFile section */ + 00260BE5558B6A22EE0E22C57E8BBAE0 /* UIStepper+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A62D79EB1E3F825D6DC2D075A61A9CD /* UIStepper+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0042CCD2DDC86BB0D1360CDBB46356A9 /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3B31F78E2E8AD1A74BB93E0AB807472 /* ObserverType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 00E7094B930390085E40A9D5FFBDDEFB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7CC1933144617C8FE21FC8C0B0D9E482 /* Foundation.framework */; }; - 00F925B909EC59BFF9599A9B76E640E1 /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1389CFA5B65CA0C2E3D75BA27C43C117 /* Cancelable.swift */; }; - 02364EF561D193BD7AD0D1914C251B37 /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 647148ACCD987D2CD868F5A743C814C1 /* AnyObserver.swift */; }; - 02756CD640BB1A301F93D777AC9D7FDA /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44E0BAEC92AC1F5C81A0626CAE18F1B1 /* Closures.swift */; }; - 02AC4569357E0EB2BFA99A6651CB5B36 /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84C297F08F58EAEFD2F6A171E3658D1B /* SynchronizedUnsubscribeType.swift */; }; - 02BF9988CC94A01E7CB6049694390020 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = D9EA4A123895DC00E865EB345D15BFA3 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 02DF5BD2281BA10105A447F95FCF8CF3 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C78912365638B53DB7A6D35BEEF9C6E /* BeLogical.swift */; }; - 0492354DA7EF0C9068F7B4E8F74001B0 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = C09CA00328A4226DC4368D404EFCCA70 /* FailureMessage.swift */; }; - 061A8E3A5FBFB1FE91D2A2DC51041059 /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB915CAB6564552D79A4C03C7EDAF418 /* ExampleHooks.swift */; }; - 06AD6911D9DBAB80EE1EB9E130818696 /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B00410E4A50EC1F17BA5CDD2B46E62F /* Scan.swift */; }; - 08D30BCD7829A9A934F51CDABE26720B /* ShareReplay1.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0249B015FAA6BA9A31F6EDF31055A76E /* ShareReplay1.swift */; }; - 09830D24F28D74303DFD209062C7BD89 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DA4D93FF9D072A3528089D887AAEE7C /* Bag.swift */; }; - 0A6E71555F55082003A3DB2B03CA85D2 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B4F8A7541A042C3612032C61A860B8F /* AsyncMatcherWrapper.swift */; }; + 021529A201E0993A9C2DBD698C430957 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71FABCCA7F9580B6D2490461BD611901 /* World+DSL.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 02BF9988CC94A01E7CB6049694390020 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = DBA03286BE95DC778D2B75C7715047BE /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0318D073C237AE743141E7BBB8655579 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1120897B8C7FEAD5427047C87758E123 /* Configuration.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 03CDAD487D6ECC539EA7F31501D5DD44 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21EBB23CA7B60CE7BA7E2C899CD2563E /* BeginWith.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 04A99244BAE6DD14A1701A8084BF1121 /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7D497D8A56693FBCCB0E15109E9CD72 /* Skip.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 05591ADB73B176FDB9C8DEC6482E88A0 /* Deallocating.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88E988C5DA0654B3CBF5BB052BE9B410 /* Deallocating.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 05DF587F586EF6E8035A020194DCE566 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13A89FAF58F8775CF99765515CC0D92D /* AssertionRecorder.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 07E7A5D77AA06C2FE5638E53E70784D1 /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8529ECA5C586B778AD5A79D247B267E /* OperationQueueScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0896491BD1172207396EF07E835C9CCF /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07D575B62F7EC6A37E087AA37A896542 /* HaveCount.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 08D820256981EA1C8232C1DC6A709766 /* RxScrollViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = E38689B19217A53700AD6E2912329494 /* RxScrollViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 08E6B8ECA8EF22BADCA792ECDFD2E81F /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 140FCD3F618A2E1CA23161B81C19D371 /* BinaryDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 08F4646B0DD2234960E43468E97DFEE9 /* ObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 346001855A0E8BD78989E85D36C738A9 /* ObjCMatcher.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0933E1D852C6DE1BAAC47056BF4FE5C7 /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7BF3D9C0DB4974103CF27272594A716 /* LockOwnerType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 0AB047CABB9B3E44CB7485D29C31053F /* Pods-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BCC458FDD5F692BBB2BFC64BB5701FC /* Pods-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0B535234D99DF2983A2400A3C143550E /* NSNotificationCenter+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3CF858E9596F11BE3F20B2738C11D9B /* NSNotificationCenter+Rx.swift */; }; - 0BFE054266973CFAA9D9C8EBAAFBF3F9 /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F60BFE7B5FC2C0B533992CA4F0B18961 /* SerialDispatchQueueScheduler.swift */; }; - 0E905AAABB6A4B274F12C871EEA328D3 /* ImmediateScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50C060C33E78E637E0A5CC177DF3A44F /* ImmediateScheduler.swift */; }; - 0F49254A4C560DD4696936F6080756DC /* Nimble-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A22BE4E45F0E081F915C9610EB873A9D /* Nimble-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 11AEAE43B97CBD032AA71BD4169EF6AE /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A7640176A9ADC15DF9AA89C35281F8B /* BehaviorSubject.swift */; }; - 15102951F2B9859AAC923B0C22EE4D50 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62ADF8CA32D438481AC9D4F39918FBB1 /* RxCollectionViewReactiveArrayDataSource.swift */; }; - 156130110DAE02079D546DE7491A9591 /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 287699968002DCAA04BB043CDDDE919A /* AsyncLock.swift */; }; - 15D9F7262BC336C423BB5F37DCC6AD22 /* RefCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A020C902166597A72A982F88204C4E4 /* RefCount.swift */; }; - 169A490B21A475B88A83E84DD1C37526 /* RxCollectionViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33745B29A0361F16C643701F933B9547 /* RxCollectionViewDataSourceProxy.swift */; }; - 16CCA75D2FF854988E0843490CDD4B36 /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DE2419359173399B1E754F4D135DA7D /* PublishSubject.swift */; }; - 170E42BD00E888836BDADCAC5A277E6A /* RxTableViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD7FB07C4DE4E0ABD8E8A842ACB11E0C /* RxTableViewReactiveArrayDataSource.swift */; }; - 17F55EBB935F79340EF0B47219ED91F4 /* UISearchBar+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6D9E3DB6053BC8CCDB99F71B0B03327 /* UISearchBar+Rx.swift */; }; + 0AB60E0B22B0135731326DDFA96B1022 /* Quick-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1369288C6F4B1CABE00859A2139756D5 /* Quick-dummy.m */; }; + 0ADD9C956D56B3738CEC3DF9A58271E3 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B8E51A696C692618BF3F8B3F2AB96FE /* DSL.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0B82D988A17A387546E3BCB1A71D6434 /* NSObject+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 438E7627FE927F7A5324B486CE70355C /* NSObject+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0CF5E5D0A68C82359E543C290E524341 /* RxTableViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5369B1758FB3678CB068E0311581A216 /* RxTableViewReactiveArrayDataSource.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0D2FE7EAC0348D4300A49D3710A62CF1 /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = BED4B116D8E1664F18C1B1895DDC84AD /* Zip.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0EC967366C034714F38D1AE46414607E /* UICollectionView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2859E9EF04FD64673FFB0E491CC4A64E /* UICollectionView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0F49254A4C560DD4696936F6080756DC /* Nimble-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C1EE641DDD264282CAB32BE7D2347BA1 /* Nimble-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0FD8C08D17B5106B80E2ECCB1264BCDF /* UILabel+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10DDCFC484D3E8099D73EC21EED7B6A0 /* UILabel+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1141A7923E83923A580DC6BB0101501B /* FailWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = F719EBA6222168F1FC859D658FAE541B /* FailWith.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1223C22B909DEDFAF45459E9737C091E /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23E877D095D92AF0163E5C387773B9AE /* Disposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 13E87C820551FB7CDF7B32D78003CF62 /* Variable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C4F4D4B839D41FBF242073B3206F3EB /* Variable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 16D61DE0E467EB7D4F6DE2C9CC9747AF /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE3AAE456D863F1B49A07D8D9C74DDF2 /* MainScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 16DD60934CEF501BA14A362E417389F3 /* InvocableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8BBF406505BCDAD50C85A8B3C2FFE18 /* InvocableType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 180F09E4C16BF74B0A2DB2ABAF0FC670 /* Pods-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 894E5DA93A9F359521A89826BE6DA777 /* Pods-dummy.m */; }; + 18AA88CC3309FF2EA3C49EB17C2B5A8D /* KVOObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E254D0FA25E45D3DEC3343352BAAF46A /* KVOObservable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 18E8EB32A900033FA3DA8C42ADD0694D /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56557B1B1ACBF8792DC063BB44AC26C1 /* SourceLocation.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 18FF00DFDE7D2EB631BF426B0AB45CA2 /* Observable+Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6675BF92A81734F5665E4B57A66191B /* Observable+Binding.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1A0D9EAD69055F4CFC08B84E74A6EEC7 /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD574066343290EB530217A0A6070AB6 /* ObservableType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1A861EBD8B519FB29F299E0C61A8FDAB /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = DA811EAF305882306461D825ABECDF55 /* QCKDSL.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1A9B78EC4CBBC55E932AF1EF8723878C /* ControlTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55125FED51B4A1C8F88E5E5C14A73450 /* ControlTarget.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 1AE50A8FF25E230D0846705BD230D120 /* RxViewModel-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = DCEE1E62C5EE69B227656C4BD1500384 /* RxViewModel-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1B1AA86F86284CDBCD505FDAA4918FC7 /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF279331494C822EF388781ECCDC2EBC /* NopDisposable.swift */; }; - 1CBA4093B2FE51EDD1243C785D395A5F /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = C158F8BDAB04FDB093F59DD7AF0034D0 /* TailRecursiveSink.swift */; }; - 1CF12B98BBC6800108ACC4A250AF3ED2 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 848C18AD323097DD667D398E35C4501B /* World+DSL.swift */; }; - 1DEE959A089DBF372F408F5E45626D3E /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 45A89CD12A7F579A7FF6CB3886A47F3B /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1E28F9362956B758C4C981D3C1129C90 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E6E6394D1627ECE2165EB80234BBA15 /* BeGreaterThan.swift */; }; - 2195104D691627D25075A7421FF8B609 /* _RXKVOObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = 08F6BB744101A19B3984696D27D0537B /* _RXKVOObserver.m */; }; - 226B4ACEB3723FD9525F51DCBB866AC6 /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C6FAD05630443BA7B020357E67D0A07 /* SubjectType.swift */; }; - 22F4AE1EDAE7C223ABD82D5B1BC9ECBE /* Observable+Creation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 512E357774AAA94B84EEE43B3B02BBE6 /* Observable+Creation.swift */; }; - 240D5BB3B98FB217B75233FD27CAFA69 /* ObserverType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A038CEF95F7A2C061E11F117ABB2EA3B /* ObserverType+Extensions.swift */; }; - 2522018FEACC8795DE86FE200D14AA26 /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C99E301BEF331E1DE4BE183AB958B01 /* SubscriptionDisposable.swift */; }; - 25731C3F9449C33FA40952F2C484C8A6 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B4FC1AD94D0A447C1A80E2689A0B0DF /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 27CA95413B85E3C17B6E7D23AB6EDE60 /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7A867480FE2A7C5CE8B674EEFF09590 /* RecursiveScheduler.swift */; }; - 2895B403FBEDF5B6C9AFB8F4C0164CAE /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89A531697D92D99CAE6BF99C76E6A820 /* CombineLatest+arity.swift */; }; - 2B06D6718CFB0322591A7F2730196F9E /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F883D1274BED93DCFDED43F315237665 /* Observable.swift */; }; - 2B8353D85C387D4D8C829835E532F654 /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D84E9A67B7FFBFFECD1B2CCDCC81721 /* ElementAt.swift */; }; - 2BBE3A08D1EF16AC024A41393A8533AD /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83F041F0A127B4AF0A5AB6914E8EB630 /* Concat.swift */; }; - 2CCF0F43FA0DAFE8623D26CE573C0F57 /* RxCocoa.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F8942D72D28C05E1EF86A084ECFD4C4 /* RxCocoa.swift */; }; - 2CD69C9423CBE17F69AEB40CC7B7A662 /* UIBarButtonItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3B761926C010F01CC7A43484BC4A26F /* UIBarButtonItem+Rx.swift */; }; - 2D3B916F7168E9412EDB95BA203A5BB4 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0149645A410719261F296478A02DE73E /* ThrowError.swift */; }; - 2D86F8942E7955AC953CAA5A87612059 /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = 52150C7AF234CD4CCB8DBFF5681AA531 /* _RX.m */; }; - 314084598308D3A41776C4F9BE8186E5 /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8592E7001E03D33C2EB27C79FD8D1DE /* Just.swift */; }; - 33264C6A7A3536AD91EF42B3E8CC8220 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6278EEFBE6B030D28ED0E3AB9F6983EE /* BeGreaterThanOrEqualTo.swift */; }; - 33514FEE6EA65605EFB6F1801834B692 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = B919E4A1CC4CB44A17090E82AA072183 /* AssertionDispatcher.swift */; }; - 33B9E1276DDEE4E68075B9F7C67A7041 /* ControlProperty+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D793DE4E519AA4ADE0C0C35C789FC21 /* ControlProperty+Driver.swift */; }; - 33DB05E4D6DCCC98B94944DD00734849 /* UISegmentedControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = F66F3D525007F0884B2B2662EC1B4EA7 /* UISegmentedControl+Rx.swift */; }; - 378F8701C22210D12ACBA5153F383B1E /* UISwitch+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF7D3EA8386497657852A7CF710D57E9 /* UISwitch+Rx.swift */; }; - 3922208E5CD9DD850803E6D1C4B39597 /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F8F414DF16A7BC1DD914032020EDE19 /* AnonymousObserver.swift */; }; - 396BAF0EE51BFAA030A57F6F8BAE7850 /* SynchronizedSubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 721F621350EFF2B69B2906E6713EBD68 /* SynchronizedSubscribeType.swift */; }; - 3971F04715FF163F37085176A5A22128 /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35A8D78D59F836E13DF96F871C9A9812 /* Catch.swift */; }; - 39A4583EC2FAA20578DA099841978236 /* RxActionSheetDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3C9C2CA7C7F3493302CEE45B5FEB5B6 /* RxActionSheetDelegateProxy.swift */; }; - 39B1E70FEE5FCF5C9BB92C6705994DEF /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F0CDC526B64CBFCC2D0BA6FAF71FB4B /* DisposeBase.swift */; }; - 39C7B56A4552FA7EC1B8C9503D647C0B /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 027EFF04490F43C61C16661A64BE7922 /* Error.swift */; }; - 3A92AEE86034356AF8987F20EE1F82DF /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8E7A38730430C243D0EF0B47E95682D /* EndWith.swift */; }; - 3AEAC447B09E7AABC140654C8529BC94 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = B35E59A8D8A2AB7EB8F07C4B4E5F9C15 /* MatcherFunc.swift */; }; - 3B55C32BE307D8766E55253B63581088 /* AnonymousObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 038E47518E20C7EB2D4CAD41444FA30E /* AnonymousObservable.swift */; }; - 3B81F38B6EAB566C1062BB3DA3D73D2E /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A9A5C40057713AFC20E3B77FEDB3548 /* ObservableConvertibleType.swift */; }; - 3C0BF5C4DC01644A84B3E61444591861 /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20FAC65FF1C91AD941D2B1653E9C8A1D /* Do.swift */; }; - 3C3E0E6135C6B0242E2C513BD920EC5B /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56DDB2205C540AB0027DC178150A2211 /* SynchronizedDisposeType.swift */; }; - 3CC7F815D61AB4240638B97CDFA4937F /* ControlProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = A99087D4B3FC99BBDEFA644D079015C1 /* ControlProperty.swift */; }; - 3CE2CCA37496244687E93817801FB5F5 /* ObserveOnSerialDispatchQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABB9E857555505F6C442ADE199AC4463 /* ObserveOnSerialDispatchQueue.swift */; }; - 3D0A4E195362D92639D7AD252235FEF2 /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E959C073BE8B454A04820866EE721CA /* ObserveOn.swift */; }; - 3EADB9BDA8B915A53DE7EB325DC54ABC /* UIActionSheet+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DA8C4703A00166A84C45BF5FFB7FED9 /* UIActionSheet+Rx.swift */; }; - 3FF3A05D2925BDAE48DCC0A211D74A10 /* KVOObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = F811E9065F93E232946CDFA9608645A2 /* KVOObserver.swift */; }; + 1B1E74DEE9AF126702041D2CE1AECB60 /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7573DC7675C1FE797617B3A6AF323B3B /* Logging.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1B7152CFBA9138C3910A7F9ACCC47A0C /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F4EA0951090CB207280EDF22B33DED0 /* QuickSpec.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1C0EBFFE446B0C00EC595458FFFF2046 /* ObservableConvertibleType+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9DCA9191E095089BE1DB5A56074C76D /* ObservableConvertibleType+Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1C85C22AA28666912E49EFD67C4837D7 /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 476A3ADAE2600A8EA56DBD607FE7E2CD /* SchedulerServices+Emulation.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1DEE959A089DBF372F408F5E45626D3E /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = B457A6AF4CD5E7C80CC8DCF0DAE8BE20 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1E300752100F1E38295702630C4CAEC6 /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = 678278BBC2928244DF8C062793B207C6 /* _RX.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1FA02C3EF81735D50FCE269CEDA697F9 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = D827BC2E8A02C11BD6B9CF6AFBB879C0 /* SkipWhile.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 219004B3DB934C5E60052A2BE3E2A06B /* RxAlertViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43CFD25EFB8C81164453B4F96C43A043 /* RxAlertViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 229D5D98B342EC1CA488F9FCCC5B0BCB /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 665611D0B629D7060B4D67D6976EB27B /* Contain.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 229F47DBAFEB3530F01019E14C40F5AE /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5203040A4AEDB1CB47508D08CA9917F /* ConcurrentMainScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2388ED0F0C862ACD7513FABBBC2176FF /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7942AF174140A6273854BFE369AA418D /* AnyObserver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 249B9E5EE749854FB05C26FC36FD6BAD /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61E2B3B9BF24496F8F074B6A7567A8AF /* DSL+Wait.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 24B9AD723F6FB0834853D1995255BDC6 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13221085EE95F2154C02325653E9BF98 /* Expression.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2506CE2CA9D390C363BE7BB19D2189B1 /* ObserverType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20090F6CFA375ACDA72C0F82B8F2AED6 /* ObserverType+Extensions.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 25731C3F9449C33FA40952F2C484C8A6 /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = B6EBDBEA168F789D06B877D03D8C88C5 /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 26E8A92872DB386F988FD92D2992E745 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EF98A6DE6E533C38537E34E2DF35FBC /* MatcherProtocols.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 26F35333137F7E4EED15F0B48AADE629 /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FEC0A3052DFFD340E01154B2B782E24 /* Throttle.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 27CF3A354CDF832B2999D1B93803E3F5 /* CombineLatest+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = F785AD5690BC5718F5CADC2F982B825B /* CombineLatest+CollectionType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 29A0F4B927E6805FF8D7A343371EF38E /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F3E6C27AD968610CAD90CFAF45B9A75 /* SingleAssignmentDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 29EDA59028FDEA327F9859827A45A34B /* DeinitAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EDF76DC53AB94AC8E6EFE81C315FA25 /* DeinitAction.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2A43C40E1723F2E1A51E5DE8B7E67320 /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 618F5E56B2A6FC37351C5C1AE58F8495 /* Observable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2C2C551762326077E096674BAD274B4C /* ControlProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9027692736A439BE3B3955E664C1C79A /* ControlProperty.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2C4E8458E8229ACE2E44683A032879D9 /* NSObject+Rx+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2239DF539CA80A6D65804AE9830310FD /* NSObject+Rx+CoreGraphics.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2D339AC127995D322F14D7EFF24EA219 /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3BC54443407FA6EA5A51A912E4D9330 /* Sample.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2DFEBA02B28BBA0E16C5098490979452 /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0FFE08D35888481F6691CC544F6291D /* Using.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2E3A067150D042CFAA9F03828A6AA4E0 /* NSObject+Rx+KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2405A5535A5A7CD2CE383E86964A5B65 /* NSObject+Rx+KVORepresentable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2E42D5C4C58545D690613AA478700292 /* UISwitch+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7D4F188C6337C18F6628EA0D724E912 /* UISwitch+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2E6E09BF7ABDB18FCD1CBCC65826E161 /* ScheduledItemType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D11EA888935A628F836F5EA0F4B756 /* ScheduledItemType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2F4CA8BBAB334AB8FA411DB1D2EDE216 /* UIAlertView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 247766FF5A2DC1C9DFB67EFDB0DAA5D8 /* UIAlertView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2F66104526B6BAD3AE1240B42CBAE45A /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CE366AC79861586231B97FEBBEA8083 /* InfiniteSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2F6BB92D94F129AFA832930F4DF3E117 /* Driver+Operators+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3443126532711E6187542ACE47AC595F /* Driver+Operators+arity.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3196B5AFC90D5F3472E1F7F134CDB60D /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8EF3513D1B63AD0D6498510CB8A2C2E /* PublishSubject.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 32BE30A95A56BEF7217F1297EBDF3D94 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DF914D869F86ECC5DB5D90617A12D5D /* ExampleGroup.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3416569D4E949EA49142D4C56493E5B1 /* _RXDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5920D6F229288982F67CD980B4310933 /* _RXDelegateProxy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 357B54A17D2E512E6400464ED23FBA84 /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCE9439768C33B06124378CF1F74EF34 /* WithLatestFrom.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 357F12B59C05D88B56E483E33DA46D90 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61ABCF25085B470DE27AFE7F4237290C /* Filter.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 387F10098AD2A3A0C91B9CC4CDF063A3 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DF8C44EB7809A8F5112A670F61F01E6 /* BeAnInstanceOf.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 394EC4D048975113E21F60138B520F12 /* Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAB485B7259CC802C69B2E31389CD047 /* Window.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3B291C8EEC0913276EF89C07A07B816A /* RxSearchBarDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = B00CCC663F71B4DAB9F282C0F1F12375 /* RxSearchBarDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3D2107FB2C33D709FC46D3199474E308 /* RxCocoa.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC608B7C36B9EAF6DDBBAAD3576D9D80 /* RxCocoa.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3D4BD7DA7301A06E15F4BA8BACAF3B9E /* UITableView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B099697B884818E7E6787FB34D19E211 /* UITableView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3DDFCF34A36767E328E4B32F84710DD0 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13A05233DA4A23B026E504504FC50400 /* BeGreaterThan.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3E741D3BB7D644467652F307A3E67F49 /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12FB4D51418CFC361F89C173C379CEBA /* Closures.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3EBF35C68CA4FE0903C6E01636C4A9EF /* Zip+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAC8F469BBDFD201243931A361BFDA78 /* Zip+CollectionType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3EE005A9D588934E3E62B5A403021251 /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9BDD953D4A49F0D098D1879D28BF30F /* AnonymousObserver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3F091BFA871873E0D57A0627B843B44D /* ObserveOnSerialDispatchQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4721770F0DC68C036384F949D602A29E /* ObserveOnSerialDispatchQueue.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 40540FC48F5FE9D526B825E0E573030E /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA7F195B3F39D19A812A1F222B736499 /* Catch.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 40C700B30EA407BDD380C1ED19ECC2D5 /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A274000F72FF57541406AC7960CD87EF /* RxCocoa.framework */; }; - 43607D4772E8B431E49A2E41ADF17E72 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2176D88EA17B4C35EB29AA4B0A3DF4A1 /* Filter.swift */; }; - 44F8120A0EE10522737707449F849E03 /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CBE740BC06EC5B6FC35BC1EA3143DCA /* Map.swift */; }; - 48C1563065A4560D486773827E8A04FD /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F45E58688DC32831A3A3E720B86A7D4 /* Repeat.swift */; }; - 4995B1E340FC3B18B81CCF18EDA16294 /* RxCollectionViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 31DE4A11017EE2B23F666EEF72D8DD13 /* RxCollectionViewDataSourceType.swift */; }; - 49B92949E7F1A9D1C9ECAE8E51040B62 /* ControlTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECFD20F48143B462EF801C2CB4F04C8C /* ControlTarget.swift */; }; - 4B0B0DE6085D14462F9AAD7E0CBAF837 /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 716DF7D88D9098A5C4DDB6A8F8DCB492 /* Empty.swift */; }; - 4B50126FD5E8777F8F9971EC125A046E /* UIButton+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1B1DC4CD6D292C95C558277FC3797F4 /* UIButton+Rx.swift */; }; - 4BE4818D4B81C8906C431826D1FF0497 /* UIImageView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C85070A5252E0027FF243A420683C390 /* UIImageView+Rx.swift */; }; + 4158E7886C1CDFD9489719BEC694C106 /* UISegmentedControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2418D4539AEBAD5AB79903535A90516 /* UISegmentedControl+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 457F06563A3E676AF62E412D42B8B039 /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB4547B2BB622839AA5708674F1D147E /* Just.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 465C646FCF06FEF0F7934EB4BD80438B /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB92FD0ED8B4E577D26620D1117D487C /* ConnectableObservableType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 478ED67C193B57F9A6BB6C2FC72882F9 /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F6DBF6D8329BC8C46E454408A2B2D22 /* AnonymousDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 480EE6AD17FF0981368F389FE9CA6B1E /* RefCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A5CB41370065E09BFABC4D48D896619 /* RefCount.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 48C92830CE40EC741B2AD64C8118F6D2 /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01D936A271CDB317E9313314F3B2E5FF /* TailRecursiveSink.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 48CBC3C15CB0FC697FBAAA26A7030AE6 /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B60BC241B804A367AE8A6FC5F1075944 /* NopDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 49BA79CBE6C2D07BACE92BDEC4C8563A /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7EADC5F8AB6E21C05BA7CBF3343A66A /* TakeLast.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4B6E8F3FD76AD1E47934942FF5836455 /* Observable+Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = E147FD66EF593B3A7FFB688431FF87EC /* Observable+Single.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4D3026322DBD623C0069B2C57BD6653D /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = 536E2587935CB100C8A289D71B3922A1 /* Take.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4D506DE03D00E6BF71BF142BF2A7E62B /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E51B0918C53FF2B2DCF6FBEB328CFEC /* Example.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4D6775C42279C617C2B0B42A1A8FABE5 /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99CC9901327E1DEA90D53489BB1AC86B /* SerialDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4E539425C3DBA82658E3D63690FDA6DF /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45B27ADCD2F92F0CFFF807CB96E89E50 /* Repeat.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 4E86F13259758EA7805DB6C95A3D08E9 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9FA8C99BDA88331103A6B1E2ACE8394B /* XCTest.framework */; }; - 4E87C6AE24AB15700A39FC24A2F1C93B /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66DF41528ADD55CAA61F2312AC692AA4 /* BeLessThanOrEqual.swift */; }; - 4F1384A0ED65484BE87CCBB31A1E6CEB /* UIStepper+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE599BE05EB8F9026548B653EFE0456A /* UIStepper+Rx.swift */; }; - 512DFAE728521F02AF225F0082195DCC /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DFDF23A5C22B68CEA611CE7FDC5BAD4 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 51F4D4190673506BD2FCCBD84FD364AD /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5217562ACB76F601E3DD25781308B744 /* SchedulerType.swift */; }; - 524D4D66F5B6124E64EF8EBCF174B5DC /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D91E2AA569717D88A10F56B22AB4B73 /* ConcurrentDispatchQueueScheduler.swift */; }; - 53A04D04E9A9CBB0045F123DB14D3C36 /* Observable+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A72AABFFE33DCEB8601DDC71B235FF5 /* Observable+Extensions.swift */; }; - 53FCDDAD714F93DD9415FB6267FC1872 /* Quick-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D546CDC51A2B68A69B18FB861578BC92 /* Quick-dummy.m */; }; - 5602155230754C686CC30C5516361048 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47DC0D179B9383793B7669A29BCD284C /* SkipWhile.swift */; }; - 56CE94C466CFD524A4F741BE638ED7D0 /* Observable+Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4B206C5A7482E99F05F1D70BC73086D /* Observable+Binding.swift */; }; - 57031C753BC4E60A68C301CEA429CC92 /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD815A5A99E0BB56AD79FC3F9C8AAFDC /* Zip.swift */; }; - 58EBA2C1A43283FB2188AB1FB592D32B /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F9D7E8AABBF9EF914AE07C1E8D22424 /* DSL.swift */; }; - 597B2D53640488B39CD99A9CBF53155B /* RxCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 7748143504951DA4285FA3AC024B420C /* RxCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 59AA1CDA60AED5DFE46858456ABB41A9 /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFB0F993121D74A856A31CA4FCBA5A54 /* Using.swift */; }; - 5B00BF01611837E6ADC5E86C650BE6B3 /* ItemEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 491035D94D03B754615EBD82D07A517B /* ItemEvents.swift */; }; - 5C41087D5303BA20256DCF7C4F3F65D3 /* DelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 549521D9F919D1BA9A7502EFE547FAA1 /* DelegateProxy.swift */; }; - 5CCD61335908A7CEC14CBF3A44F40F70 /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06BFA849D48EF96E376180DB67C15F7F /* Switch.swift */; }; - 5D6EE67E85C354939842F41C5F46FAB7 /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 180238F515BDFAB7AA37019F846F9CFA /* CompositeDisposable.swift */; }; - 6042FEAF4070B5231CAE491B623DC149 /* CombineLatest+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = E52B04F7B8CD13298E238E816836A14E /* CombineLatest+CollectionType.swift */; }; - 6097D1EF3E116B8931CF8D5FC23EFE38 /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CB1EC0A79AAC6262838E491B4963F3E /* ObserverType.swift */; }; - 617AC208D54C1C607ABC182225990D93 /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 408DAA098E182010E3E8D3D056A909A0 /* Amb.swift */; }; - 62D084F031893CE13FAC6FB40E777F6B /* RxTableViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97B28CB4E897103F382350BB5055CD7A /* RxTableViewDataSourceProxy.swift */; }; + 4ECC57E65359D346627ECB985C45E57B /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = E0DA9989EFEFC1C87B7044A74842F68F /* AsyncMatcherWrapper.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 50C4AF642DA2CA38E71B65D52E58EC0D /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7266268CE1FE0350B58F4F5FDB9DAE4 /* ReplaySubject.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 50CD3AC8AAB52BD805B2D525A0A4640A /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BF8B9C7CCD3BC8D1CA4266EFAE2061B /* AssertionDispatcher.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 512DFAE728521F02AF225F0082195DCC /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = E7456CE2F8D8AEE4A092F0F2BE565199 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 51B7AC170A4A95149C4BA210918D9792 /* RxBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD376C8DBAB95C460CB607A71EE44CFB /* RxBox.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 521E116463C55010200D6AA8710B3BD9 /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = D13B4C4657F1B1A74A55528A47EEFCEE /* NSString+QCKSelectorName.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 54BAFE95048EE701B6C782F3C3B1AF70 /* DispatchQueueSchedulerPriority.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82F46CA8C51B741C815D09BF8B4F449E /* DispatchQueueSchedulerPriority.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 55A789B421A837266C9C3132789241A3 /* UIControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = A04EB0B5B16C8CEBB397BA1ECC758EB2 /* UIControl+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 55F90E4ACF8C478AB41BE66EA57D881C /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288672EA423DE31264BEC43B7889E25D /* Buffer.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 561D3727F9015D9090435B719CC17A95 /* Observable+StandardSequenceOperators.swift in Sources */ = {isa = PBXBuildFile; fileRef = A50485E481A84BE71BF6C6A50122D7ED /* Observable+StandardSequenceOperators.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 562BFF295C7A2C5B2F4B9817F3994BBF /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD654863A9FFDE1CA553FCF10D794FFC /* CurrentThreadScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5659DBFED3CF649717F1F9F313D6D102 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 636794D65F93F393CF47578BEDF5A6E7 /* DSL.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 573DA16D62ADAA3F2AB014638B8EE5B6 /* ControlProperty+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44FD5BA58D6037A4207730CA24F8B768 /* ControlProperty+Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 597B2D53640488B39CD99A9CBF53155B /* RxCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = C7009C6DD0F337915BA03F2CE49A1C15 /* RxCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 598B9EB353BB86F764057890411722CE /* ControlEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97C5B368C9DFE9E606A4669CBED47525 /* ControlEvent.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5A2753D00CB4BB969132A451F2E83CD3 /* UITextView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3234AE5901342805DB9EDBC72C34693E /* UITextView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5E0473642B6ED5D07C42D136E6421281 /* Observable+Bind.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04C1F5C6D30F3910DBBA95C092F7E059 /* Observable+Bind.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5F387EA4759DF80EF5C0A9177FD310D8 /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60641188C9C660FCC478943FF4D4816A /* Range.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 601BAC8FD195D5C215E0A696A83B91E2 /* BooleanDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8021E5D89C8ED8ADC18D2EC9E161662 /* BooleanDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 605E0A36043332C88B592412C87A6BD9 /* UIScrollView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 735B552A3B81164E68CD456E6032DBC0 /* UIScrollView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 61A6834D1E3A4785AADA05428BF78C45 /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13830E8810FE6FF393CF9DD380E0637E /* Producer.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 622AC5273F918E0CFAA42B1653CDED2E /* Observable+Creation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DF46426F6CA345FC0C6BBF03E700D49 /* Observable+Creation.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 62F9F541CD6464150AFF12A3406F29AA /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */; }; - 63940C1FD9873C5C4D8973B2256F27FE /* ControlEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5976E4B60A9C51B552357148FAD0E684 /* ControlEvent.swift */; }; - 63E61AAC71B72834D67A567BCC196C28 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42714C79A35CFDA324EB4CF7739303EC /* Never.swift */; }; - 645010FEEE82B3F3E4782F75247B0851 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = E1AAAAF7282E26D0C1B27BA6184E5306 /* NSString+QCKSelectorName.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 651D29CC290366282C758B40E7512DC7 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7016E942AE4A0D114196611D832ACDF4 /* Filter.swift */; }; - 65E53B753C9B241DD14D2170C0EEDB6F /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01D45D57D133DEFEB48B233B626A5487 /* SerialDisposable.swift */; }; - 679E6219BAA9B30148A3F777337D53D7 /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 105AF714125E6C0F2FA3719A36EBCA77 /* Multicast.swift */; }; - 69EE143886E1D18B526A438C5B704F2E /* UIControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AFBD64086A4CD7AC0C5475AC0ED375B /* UIControl+Rx.swift */; }; - 6C753F6EF26B833166C86AA5F8982721 /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = 3190C07B05C3C732C6A30F00B08917C6 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6D664B7C28700275D18629A558735A27 /* RxTableViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F442A61878CC7EABCE01567AE475BB2 /* RxTableViewDataSourceType.swift */; }; - 6D938A3AF2535E3B9E2D57913AEFBF47 /* NSURLSession+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AF2017C8E36AB1C72730FC7CA548C24 /* NSURLSession+Rx.swift */; }; - 6EAD31AE718BB1F1E27944421879675D /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1121DEB33BFB6933F2528F80A7A91EE /* World.swift */; }; - 6EAF736151625A75E65D76AE7218083E /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54739DE70D93F235E3D3AFDBDF18B514 /* ObservableType.swift */; }; - 73695FA6A6CDFBB13C0CC73C2E5126C0 /* Nimble-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0584E929F7AC4E49C74F3856EC93AF11 /* Nimble-dummy.m */; }; - 73CCD4AC6B4FC93805173AF117E09314 /* RxViewModel-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 37CB8D79FB7536836DDAB2F9F5C0D609 /* RxViewModel-dummy.m */; }; - 751C567D5BE9858C26329ED608F85A61 /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C39A5E44A8B651BB1CEFAE38F872A96 /* BinaryDisposable.swift */; }; - 752A968CA139A0D7F4A30C4E4BFCFA1C /* _RXSwizzling.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D3850029D41C0A572137FE33C488FCF /* _RXSwizzling.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7680F08C43B965EC873D26E6AD854C9F /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E34EFA722717F840DCA1C735ABA9544 /* BeIdenticalTo.swift */; }; - 76EF98D0915113B8548E1FE195F4F838 /* DelegateProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FD93714CC66807F92BFABF29378A3D3 /* DelegateProxyType.swift */; }; - 77128C0365A98E3BAC038A915B38791C /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = D75BAF9F860D7B9132609905D532801C /* BeAKindOf.swift */; }; - 7752454F475001267003CEE26E4E4176 /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC7FA94CCE44E93C1D25D2ADFD541058 /* MainScheduler.swift */; }; - 78CF4C64A9BCCBE5588A63C455886274 /* RxTextViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0227A5BE677565AC27E7C7A9B167B360 /* RxTextViewDelegateProxy.swift */; }; - 7A6E2730A25A55D8DFA74D3D7CB005EF /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E7DDA4B9D7D0D4DB159D86006167CBD /* BeAnInstanceOf.swift */; }; - 7BD5DE22106C8435F451E1CAC2A42C32 /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = A788A7AFBDB630B9E55AB7928FB9AD43 /* Throttle.swift */; }; - 7BFD25B1BB1116D8AC47E2C3874C5B76 /* ObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 711B1FF93206DADEAB81AA7B2B7D374E /* ObjCMatcher.swift */; }; - 7C104718799C7C1B9084D5DD4B4BB306 /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88E68A5C5DA1B8D43ED12EB86459902F /* TakeUntil.swift */; }; - 7C5E5454616EF1CD107E9D810BE88F14 /* Observable+Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75848AAC5E1425737149F92C0036EFAC /* Observable+Debug.swift */; }; - 7C7CB2A01AA1B79ACC4AEC65CF719BE8 /* UITextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = A072804A7541C17A1D75E9C38F17D6B3 /* UITextField+Rx.swift */; }; - 7CA3431FAFD4A06A2F9A4BFA862C58F7 /* RxSearchBarDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5304DE6F90A87843CA581060E177AF47 /* RxSearchBarDelegateProxy.swift */; }; - 7DA9FF8513AA48310B15A0744A541818 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42970168A7FB87E85E152816353607C9 /* SourceLocation.swift */; }; - 7E1F2F5B73A4241B6184591ECC2367A0 /* UIDatePicker+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF2B73B4F8E58FF03ABDD8DFA6157835 /* UIDatePicker+Rx.swift */; }; - 7E9658A1E7401D4FAF083C56EF7EFC8C /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C326129B219BC8FD5C395449B2C2CBD /* SkipUntil.swift */; }; - 7EE2B9115A521713F803E4C326EDF7D3 /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83B06E664608F2502D5271D3FA1230A4 /* ObserverBase.swift */; }; - 8123AF1C85A57133D2B8BE04FA13D011 /* Observable+Bind.swift in Sources */ = {isa = PBXBuildFile; fileRef = 486C29A435068044DA17BBD8D78B6979 /* Observable+Bind.swift */; }; - 82426B230F2A501B6D6F4DEE8D22E341 /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 977BE4CDEB254BE9519AEC3FBE0F3815 /* Sample.swift */; }; - 831D33A4C5C5BBC1EC158D9A236C61D7 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7A2C7273F5FE15F8D9988D85507F57D /* NimbleXCTestHandler.swift */; }; - 86F4168F623CA3AADFAE2811FB3708D3 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA64B6BF6E6FA979522A45111F0525A4 /* DSL.swift */; }; - 87CF09869FB63F548FA1A574BB766835 /* UICollectionView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48B0F952D8165837AC851E43B85DF3D2 /* UICollectionView+Rx.swift */; }; - 887C1A3A2F76DDA5110AEAC52B81E6C4 /* Driver+Operators+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47209D61236DEC7876158F93E8224AA9 /* Driver+Operators+arity.swift */; }; - 891A49686925A8CC687FEA58B48FFE5D /* NSString+QCKSelectorName.m in Sources */ = {isa = PBXBuildFile; fileRef = 0809ACA9399A3799F4C867C9CFD17BA5 /* NSString+QCKSelectorName.m */; }; - 8A24DF847DF11C57C4A0F992A053DD5A /* RxViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52ED2196EB14080976B8281223A2FE7F /* RxViewModel.swift */; }; - 8AC8194EA1C7F8D8F233DBC5EDEE8766 /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF21A2A7653EF7DCB3A14EB032F49341 /* ReplaySubject.swift */; }; - 8B18AACC6C113B343BBF402FEF5032EB /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2EE2C60696E267BBBC464C7345E34EF8 /* SynchronizedOnType.swift */; }; - 8B3C09C4E8A4EE6D52A6A000F71F1E93 /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCA5215317464AC4EA073407712948D8 /* DisposeBag.swift */; }; - 8B45CF928F5BD9AB6B522888BD24918E /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = E36DA5CEC0BC84ADEFBBB07041F80D9E /* Deferred.swift */; }; - 8CAEE723321E7D2A50F7637F8251E23D /* DeinitAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = D61639B81197A5761B9C63F12FC3D901 /* DeinitAction.swift */; }; - 8D0BF52FF564A170A3D1DE28C27B233E /* Poll.swift in Sources */ = {isa = PBXBuildFile; fileRef = F767782241C4B61653D82472DDDD3488 /* Poll.swift */; }; - 902D3833159B38BD2430FBA5A7CB7DE3 /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C28EA0F6E131978E6A054CB804D8A1A /* StartWith.swift */; }; - 903904607C724FC8E9E1916D5DE70B47 /* RxCLLocationManagerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4634CEAC67AFD4A30CC348ED2C01A16 /* RxCLLocationManagerDelegateProxy.swift */; }; - 9058270350EF88CC7C763F690277611A /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B8E1C8CE0E83DACDB71F3FB6ABB636A /* Timer.swift */; }; - 9139469249472A608525A83F154C640B /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7799EB0E5B7A4861D593F0837C63C80E /* ScheduledItem.swift */; }; - 9187EEC2982DB82AD8D3A7001AA647D6 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = A2409C5A0C0CBBB302740DE0CE39C88E /* NMBExceptionCapture.m */; }; - 91FA9A4DAAFC680F9E90F6CD4214D038 /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4240A9D5142AB1F096D34ADD2A969F3E /* Zip+arity.swift */; }; - 92333783E6BC88C95D7214F70B5FABD1 /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = CCED0E40CD9DC1C2ED678A7D1F149A8E /* QuickConfiguration.m */; }; - 9341B96D63EF6C54A1F906A1BBAEAF46 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 68C4E5BDF28682E1099CC7E9BD6B556D /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 96186977C3B38CE7A512EE6DD0FF8826 /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = CCF5CF30005BDD7EDBE2F72F21C6C179 /* Skip.swift */; }; - 9646787942A85613FE77F45794E9B5CD /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA8E627603798B25C0B0E5065A21D083 /* BeginWith.swift */; }; - 96CE04C201F87BF06EBEB5300E6083A7 /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = 621B6F8289FDA0601018C5EEFF550704 /* World.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 98A24724608850968D2C550C214BAEA2 /* UIGestureRecognizer+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D55E01B616C09EF231F0BF50207C928 /* UIGestureRecognizer+Rx.swift */; }; - 9B406E901A456FD9B048E17B7A92D1D6 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27304CAC8A15942A9C4040A568EA4A22 /* CombineLatest.swift */; }; + 645010FEEE82B3F3E4782F75247B0851 /* NSString+QCKSelectorName.h in Headers */ = {isa = PBXBuildFile; fileRef = 45BA8BCB5D0B7149A61A549C6D828D05 /* NSString+QCKSelectorName.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 647CEEEFDADC47FDBB443267C4296795 /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E033A13E50C7427EA001C81974A9B33 /* Multicast.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 65461F05F182DA812A391B691F10CFFF /* RxCollectionViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 512DF8A19EAD6031E47E7AEE1F408F99 /* RxCollectionViewDataSourceType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6620D0C35F5107EB2A900F0D15A6B0DB /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7114D3F0143B75A7C06F4BB8E655A6C /* SynchronizedUnsubscribeType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 668F1D6C07AF0452ED04C9C7FFDBFA76 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF6875A65087E7134F2DDBB26663183C /* BeGreaterThanOrEqualTo.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 66D014ECE6B1C5786F166F99C991A5E7 /* ShareReplay1.swift in Sources */ = {isa = PBXBuildFile; fileRef = FCE223727C1469290B30AE7D5DEDA5F6 /* ShareReplay1.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 68CCD0DA60562967CC9FE6EDC09CCF81 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6A2577B973AEC422592A8C321F2B708 /* BeAKindOf.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6BEE5572CCAEEFC43FD227073B6B00A5 /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13E2481069D2D3F9E106CAE2FBBC7539 /* Amb.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6C753F6EF26B833166C86AA5F8982721 /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = A4EBE78F08CAF0EE3CCD466260124052 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6CF908F3C54D187B41D7C183E83B3809 /* AddRef.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A69237022F43A92BEA1F2485A6B7B14 /* AddRef.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6D41785BDDE96062AB4B1A6D4D969756 /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF1E353332B68B05530985AD9DC5B24F /* Switch.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6DDB4C576F30231EC34EDC3BBABE7924 /* StableCompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CEC3F71D366F8108B6367EE32E95998 /* StableCompositeDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6E184482BE36679E6DE742968A2B80B3 /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = F656B49AAC99C3C36203180D1B9A2711 /* Do.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6F3397ABF23FE82F49A682D80C58FBE8 /* Nimble-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 401EB93C5615EC63A288974F6843A762 /* Nimble-dummy.m */; }; + 6FA1B946440A3C62CD5C355B60723437 /* RefCountDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC5A18CC190429427C7BD59CBBA630D3 /* RefCountDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7153CFD27DF975680774D7398D9245F9 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C04402FD45FB0175B2825E004971407 /* BeCloseTo.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7199915BF882EF42DEC86054E1CD2CEF /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = C67BE22535E8CD7AA51FC384D8CDDA12 /* DelaySubscription.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 71F08CBF8A3D754EAD68FF263CBB9CC3 /* UIBarButtonItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFED7D5125E9E4D5EFF12F9845B54E01 /* UIBarButtonItem+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 72C5DAA56A938A00EA7B63876848C0F8 /* ObjCExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = C14BC8D859C676A34926954CA95588CD /* ObjCExpectation.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 73BA135C524FB52201827980BFD7D18D /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18B24510B5AF73C6391CC621000AFADF /* Concat.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 73E0D63250771D1939487B656C4F7FFB /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF4ACB9F8D0BE8FD4E98074BB4D41C47 /* ImmediateSchedulerType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 74542118BE5FD6B135F27B840F1B469F /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DF24A1794FAD3B5FF1DBDDF5B94D371 /* RxSwift-dummy.m */; }; + 7508CDD1A4E987609D4FDC5A457444DD /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D4F9A8E177DFF14D2F956639EBD48D /* TakeUntil.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 752A968CA139A0D7F4A30C4E4BFCFA1C /* _RXSwizzling.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B8185140677A481781332D40BAD805B /* _RXSwizzling.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 753E676D4243C050A23F7C1382CEDF09 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB207DE8AF3E7B9EBF924BCBB0A40DA3 /* Never.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 75B1F942FCA0D3E19634EC0F98E59DD2 /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F604671628815BCC898D75FDEA1A36E /* Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 761B8D6A3A1B4C8B43F97EBB4DD25721 /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B39D16EDDB9EF932A0D42AC4A036441 /* Zip+arity.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7653803BCD763043C92715ACA962DF47 /* RxTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EE41AF090FC632BC4DFE810009FE26E /* RxTarget.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 77309699F0F7C7D755E87BDF8899954E /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 325890D356E2DA4D654195D4D8787DA7 /* DSL.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 787468AB34B55DE5F1510F5110E767B4 /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 380BA4A83340E1D867A2AAA557993076 /* Lock.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 78BEBEF17F9CE8BF45CDEF60330C6357 /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = 589DEA4B1D6ACF0F1E0613741F11A675 /* Deferred.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7AAECA3FC69EDD9EBB24AEF93C43A77E /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B3E7402372AFAC94C25ED6F3C9F21FE /* ExampleMetadata.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7B64E186E1D2013425ABC96EE5E02FFB /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DD4DEB0DD4F34F675103CCD1B62157E /* BeLogical.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7C32677CFA358CBF07238D37838F61AA /* RxViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52ED2196EB14080976B8281223A2FE7F /* RxViewModel.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 836A0FF5AB4D1011BE943111970C2A89 /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E3377475D573BAE3B60CCB9D8243047 /* ScheduledDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8439610E5269FDE8FD019C9ED8CF09E9 /* UIDatePicker+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4224745547ADF2F9DB9C33ED1B26E11A /* UIDatePicker+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 84F065BAD74CCEEAA37A4D766F7C7AB0 /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 853501FE2DF6821DAC1D2951BC96A8DB /* ScheduledItem.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 86F1AC5CF4C9FBAC453238DCD4F8CFCE /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = 661EB02883EF30EF676A1A85103B8AD6 /* QuickConfiguration.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 878A297C62E1F2C3B3964A6C61378209 /* NSObject+Rx+RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5715F1D5FE43EDAA3D5433783793F132 /* NSObject+Rx+RawRepresentable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 87E4E0DC3E595A6717A6175D45093867 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = A084BED264B6528A10964FB9C865A01D /* ThrowError.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 87F44DE7E98711BC33A824BBBA48F5C4 /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC49151F6A6EE51798431569783E7E8F /* Generate.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 87F7F80E4205F102E2864A6EDB527CE8 /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF2EC7FB06ADB0708E8363ABD1A529CC /* SynchronizedDisposeType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 88BD8527D6671B8B147DF22FEF15D736 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 717FE6F478655CA66A4496D0A02F5FE2 /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 88E77CBF27461B82E2EFCE184429BDA0 /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDE133BC5A2820E9A447EB50D18F1C7A /* Reduce.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 89269AD39EF1F188CA826A1D10FB1E38 /* DelegateProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81E6A87B8A065D7F3B558F2C6859A448 /* DelegateProxyType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8B20DE51808EAF8F76E78BDC29EFD2FC /* UITextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B70F663011E708A1C707C071464AA65 /* UITextField+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8B22B4E7B1ECB9BA6E43171CE6F80A77 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FC79F324FAEEB04CC7920F262A71E19 /* AllPass.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8DC3C0A301A17E07D7FAFC8D0F06AF47 /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56D814F83C5D2604E120A2E475CDDE5B /* ElementAt.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8E6DCA484CA1B0CD4F5CFC90262DDF83 /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DB7BDD740D75E3D67B01AD0DF71ABA4 /* Error.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8FFA6699E85E69EE11387240232612FB /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FB12536EC6691BB1C54E08F32DCBF7B /* Event.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 900E2DB65937E49ADAB1FCA376D8A2D6 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCB8D9B11B68159F9A1FC6AF9F5E3B7F /* CombineLatest.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9061D81C3FBABE4A45C628C39BC3D22B /* Observable+Aggregate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8BF6E9BA570DC6F24B2746C03BF36BB /* Observable+Aggregate.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 90BD973AFFF908EDE9BF7CCCFF580DC0 /* UIGestureRecognizer+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 100D3E4F53D7BD07C07EAD7753BCD8DB /* UIGestureRecognizer+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9135D3B299F6054D860C7670540DD52B /* Observable + Operations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BE1452AF861CAC81FDF2B1B853D8787 /* Observable + Operations.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 92260841EA0F17C9EC3A29EEF9663CFE /* ItemEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80AA56B1B5E90C0E0056F07CFA33E03C /* ItemEvents.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 92996AF407E1F786CD7717BB8A4D67C3 /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35F3334E237C9A625B1223C909EBF72F /* Sink.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9341B96D63EF6C54A1F906A1BBAEAF46 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 20CC9DC58EC6B98B8511226F337CB01F /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 93B6BD01790BDAC5C07AF7BFA1BFF33A /* Observable+Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD2822E94B8990E4673A22E2C229575F /* Observable+Debug.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 954601AEA81A9B63771D3C254A780D65 /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B634E6465E7C25A976AD8ED3C77C1C3 /* SubscriptionDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 95860A4C6B63FE9B53320DE11E4F8CC7 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA73C89836EA44E053FA87395A20E84F /* Bag.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 96CE04C201F87BF06EBEB5300E6083A7 /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = 03981B0FA308AE420FED8B79B0693BE2 /* World.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 98606F0E76ED466D25FAF0FCA82FABE2 /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23D2BC7DB21DEE4C7A840CC953104F93 /* CompositeDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 99C930CF7ED75388B485CB7A75CF4595 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8786AA95E0F16E226F7083A064148D7 /* AdapterProtocols.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9A0C1F487594C8AA0C8E5EE9D4791000 /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7399C39289C4E22A1DB50C8B944CDCB9 /* Map.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9A11711A4026E16D9BB753BAF222DF96 /* UISearchBar+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D6B2E2EA841BF9BF0CA435936732E97 /* UISearchBar+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9A3F974A57A2AE11071620438C912BD8 /* CLLocationManager+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD467BD8DAF758482FEF52B35C1E4F29 /* CLLocationManager+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9B2D2557683BD793C89C722E55C2EBBC /* KVOObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 770C0369AE93125C223FBEF7C9E48FAA /* KVOObserver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9BD95AEFD69C0CCC23E6B6DD654C96AD /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5AEA58F0840D12561262A3075F19255 /* DisposeBag.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 9C6B5FBDEB84F91906B0D68E6041FD23 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7CC1933144617C8FE21FC8C0B0D9E482 /* Foundation.framework */; }; - 9E7786C034F0E0A6B5F0A0E6BE7D7E4A /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F5B81F3B45DB4DF74045E0C8D85460F /* BeEmpty.swift */; }; - 9F676EEC4955042926BB3A459731C2DF /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34374DF42E4251B5FE6EADDFFE7B3B3C /* ConcurrentMainScheduler.swift */; }; + 9F488A219731F80E37207B12FA0E21FD /* KVORepresentable+Swift.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1D1921164D227854B314A963190B39B /* KVORepresentable+Swift.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; 9F69CB90F160294FB0F579F307E0C34C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7CC1933144617C8FE21FC8C0B0D9E482 /* Foundation.framework */; }; - 9F7B1DAE5EBD3F1ECC7A5A3B09CD5D59 /* _RXDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4545AD6A53CF194FA8E3748CDEE4E267 /* _RXDelegateProxy.m */; }; - 9FE7842641128073774E39E751F08798 /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = 97C9C2D8C3D3C17F48C014C868B630CA /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; - A01429CEE2EC3A9367F391F4A6DF4F68 /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9A2D846B03C92B3B54E3CB953AD3439 /* ToArray.swift */; }; - A05D356AEC633150EE704DF5B1B0A4DE /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = F79641FCE36B6CE9AFF76747D4C53ABE /* SubscribeOn.swift */; }; - A101C8307D94FAF814B9D017C921ED03 /* ConnectableObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B6C5F9A32F77E4FBBA80403980B9FE6 /* ConnectableObservable.swift */; }; - A11A1A56743273AE6A1D91CCE6A79206 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 0BF495999F60015B38EDE732CDE7009C /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; }; - A24B045971B2713A1B396DCD5B7C636E /* Observable+Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58C7AAB263B4D5BE2875E1985BB600EE /* Observable+Single.swift */; }; - A306BC11C32578A5414FEE52E7027C54 /* RxAlertViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EE97937791B4782F0739AF1820590F8 /* RxAlertViewDelegateProxy.swift */; }; - A30CCA442515EEA1157D987E747E4A40 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 30DF4D5B96C10C21B43A61B43D36E5CF /* QCKDSL.m */; }; - A3618F082D38A7D1DD9EE1D151B0CDC8 /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = 620FD3A730916E029434437C9525520F /* DistinctUntilChanged.swift */; }; - A4DBD83644B97FFC130CC23ECB92B22A /* UISlider+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEB11046C81ABDED672BC78A7F3FB452 /* UISlider+Rx.swift */; }; - A57C892A89AF129859E68B7DA1A85F4A /* Observable+Concurrency.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD5E8EF3F8D1CBF737BD2454706E2382 /* Observable+Concurrency.swift */; }; - A5B2630D74CF4DC1F708B92DDD2CEF5C /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52F6A2AC8D7E3369B35144C06004D8D6 /* SchedulerServices+Emulation.swift */; }; - A5CC3AEC1CB1AE22D1A0AE0484473D81 /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC07EFF850FA2505707D94F268443A28 /* ScheduledDisposable.swift */; }; - A64EAAE2E55D1300C74690D893193F24 /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 577AB6CBDB217F139849146F5976C308 /* AnonymousDisposable.swift */; }; - A7BEDE7090C0D92B53F9521376817538 /* Observable + Operations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BE1452AF861CAC81FDF2B1B853D8787 /* Observable + Operations.swift */; }; - A882877309284DB9B15D4AC4A196799B /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13204C41A15FCA68E682C8E35FC44A12 /* ExampleMetadata.swift */; }; - AA9D25693CADBEBB2867566202060887 /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48358C3AF9613AFAFF9B4360A2DD1015 /* OperationQueueScheduler.swift */; }; - AAB81BA6C6EAE000C2D6B8C7679BCA12 /* Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71FEEA21C1440131C7B6BCC33C04DCCB /* Driver.swift */; }; - AB3EBD33056A71397DA0178307685A66 /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0099727B8E0F5A49C6740959D3764041 /* LockOwnerType.swift */; }; - ABF28354BA5379571A646464E94F3384 /* _RXKVOObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 32D9359D65D800D452E2E42A612FF43C /* _RXKVOObserver.h */; settings = {ATTRIBUTES = (Public, ); }; }; - AD98A57EC8A36CD4AF00298E7C4F56EC /* Observable+Aggregate.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAB4AF917A69587F38A90FEFD2170452 /* Observable+Aggregate.swift */; }; - AF066DEF6FE5F1BBCE6E95024C0769D0 /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C49B64CC294290E12494333E5A0B806 /* Logging.swift */; }; - AF918DFAE9AA203B930433D1D2E447F2 /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B6951430DE067CC087EC248997C5805 /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - B022574E23C15EF6A52B92B33E0B49AC /* RxCocoa-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AD30AC8335AB322E76C999FFCBF4AB47 /* RxCocoa-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - B0A26F58BA3E6222E50AE5AC883B8EAF /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = EB1A5249CE6A96DEEDF1CD6748F74D93 /* DSL.m */; }; - B1254027BA3190CCBE42B02073A8BA85 /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27F698B57CB973574C6A5CFC9F3BE7C6 /* CurrentThreadScheduler.swift */; }; - B38930FB2B6DA14744D54B83B31089E7 /* ObservableConvertibleType+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45FFCD06550CCA881CAC18AD05771ACE /* ObservableConvertibleType+Driver.swift */; }; - B3F545E190FF0C9AD65E9866BF6ED2B6 /* Variable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B67B9DC0DD7F425E986B5A23737BF1AE /* Variable.swift */; }; - B41E8E775408ACE233F29CE93388B270 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FBE78DAD584698FD282DD61D5EBC573 /* Contain.swift */; }; - B4A40E95FD0BEDE44B72200077A39C3F /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8F63C76413A928999F69517FDE355F6 /* Example.swift */; }; - B5302416950805B8CC94A1706CCA5709 /* RxCollectionViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F60E02AD620518DE4187779D601D9CE /* RxCollectionViewDelegateProxy.swift */; }; - B7315562903BF6831B2D4A31DB6684F7 /* RxTableViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21736865BF176B691B3712CEE924AE01 /* RxTableViewDelegateProxy.swift */; }; - B806FA7EC2260600CE31898AF90FFB24 /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB21AC40AC486142D4927E49C1F55B29 /* WithLatestFrom.swift */; }; - B84B48C9EEC7D8FC2ECBCE8F6E43D4C6 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 242683E70916DD3C3316270E79FD246D /* Queue.swift */; }; - B905718B2501DDA22F2AE73CB6E76E6B /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A50D80D51FE9BF5CA865E43CCEC6334 /* BeCloseTo.swift */; }; - BAE239C29E765759ACFA8CE1E98CD6CB /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = B47431C709D59719FD27EE23C5D3DFCD /* Sink.swift */; }; - BB4F35062294C1A461DA3CEF6306A1DB /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F5302456AFA70E8C570BF7EFB88ACE0 /* HaveCount.swift */; }; - BB8049BB69D4EE2019ED372AE24CD29D /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EFF988768969B8A750CF0F13D878879 /* SuiteHooks.swift */; }; - BCB53F24DCADF12601B8BA90AE3190AE /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1950C080DC269BB5AC6C3B797F2E5E67 /* BeLessThan.swift */; }; - BD3AF062701E06FC871295EC9EB049C5 /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7977F35269B5E75AAE6D8D7BF6A6271B /* Debug.swift */; }; - BD839F625D0FCE322155C18B1B88A329 /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69A767DA48770146A2650D8FAAA48D5B /* Rx.swift */; }; - BEA71498CEB2EE9A85665FBCD42272A9 /* DispatchQueueSchedulerPriority.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEEE8554C1D671925C6ADAA942C4FED3 /* DispatchQueueSchedulerPriority.swift */; }; - C01062477E8FB67EA8DFB5608643CDAB /* Observable+Multiple.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40109AF9B8E1691FB89AFB820B36D2D6 /* Observable+Multiple.swift */; }; - C06832EFBFAC9DBBD85ED712EEE5C073 /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C37BE81A0CE9050DDC7110C02E771FF6 /* Generate.swift */; }; - C113AE471641AA09478BC93B09C84984 /* _RXSwizzling.m in Sources */ = {isa = PBXBuildFile; fileRef = 75307EA93E437E56D6F308F6FF3F3E91 /* _RXSwizzling.m */; }; + 9FCADE3A1A125C2EFAFCEAB2A67C6396 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68091D4E864C63E1656C76DE3E16E2A8 /* Queue.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9FD0AD1222536F8BE8B2608055FD67BD /* ScopedDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 377BEB62136C70820CFBA24C8EB5BBDE /* ScopedDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9FE7842641128073774E39E751F08798 /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = A08CAE5C64495158660C39CE9E3B6E39 /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A02C1B3B42D0E42A943F9EAB9FB4FA5D /* RxCocoa-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F377D5AC803F858321F98675DD502AF5 /* RxCocoa-dummy.m */; }; + A0D801DED0D49E2D0BCB3DD49C4AB5D8 /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE11866B85BC5F4A480944AF99FF737B /* SuiteHooks.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A11A1A56743273AE6A1D91CCE6A79206 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = E719026C02B7C5BBE36BE443A1CD36E8 /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A30450B88FC9812C55B872FAF6965B74 /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5249FA2C20FF7621CD08880021218A00 /* ExampleHooks.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A35D08AE2AD2D0CD0008FBB99620BE7A /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00979EFA7F83AD637F723414D57417AD /* Cancelable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A48256B2FE44B3DD2528828A9FB49D55 /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64D8C78125A70ED0C8C1C69D7A363395 /* SynchronizedOnType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A55EF88CA7FCBF3C0CF1A349ADBFA00E /* RetryWhen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01FF485F4DAC368D17B9D6D0EA2D400D /* RetryWhen.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A6DA41895A2B7E2FCD9B89CF8EB469FB /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB74AD557DB4673481B5FC96898249D4 /* BehaviorSubject.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AA99D01636D392E3250BFAAA2E4EF3FC /* Driver+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = E43580949E4A266F2FF7FE0A12FA4827 /* Driver+Subscription.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AB9696031EC7EAD6A9B8DE237C0E1F21 /* RxTextViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33D33C1068658D90B9C42E6A1B09BFCE /* RxTextViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + ABF28354BA5379571A646464E94F3384 /* _RXKVOObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 59B779EB814A3E4141959D29B28A2A7E /* _RXKVOObserver.h */; settings = {ATTRIBUTES = (Public, ); }; }; + ACDDCC5FAA5508735577ADA2C1752211 /* RxTableViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D4BC6C6E31CF219BCCA80E87C9C4B31 /* RxTableViewDataSourceProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AE35110B69DA612B83AE58B7DA8F3D64 /* Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = D32570E3702A2CA017BC7CE63E489DA1 /* Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AF918DFAE9AA203B930433D1D2E447F2 /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DA878ACA1AEE503F71C928D06EF1BB5 /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B022574E23C15EF6A52B92B33E0B49AC /* RxCocoa-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B64DEA0175BE28C164D01815055C294 /* RxCocoa-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B2E012B331B350C64E5691FEEC954A8A /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88A7A16270583F0773A8B14CA14DA94F /* Functional.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B38DC2DEA783AE5413CD601913A379F2 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 555ABDAE3554117683373A6BF333F6CE /* BeEmpty.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B431B1CB13DDA79FD12F4DFD25C93DF7 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9C7E0B72D53951B0E0C91723C76CCA /* EndWith.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B46798AAA28746629E0321215C17E8A0 /* InvocableScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8028ADF9BD8375F2D5E3E389430670D2 /* InvocableScheduledItem.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B4CB215FD42A896689C2929161B889BF /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFD77CFE8B32E2CC5FF01DD9FF6E3534 /* Empty.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B5ED0C1EE487A7A07A080F56204B3A05 /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA5B8E06731177B3845436D6477E3E4A /* RecursiveScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B6ECB13C586B52DE4F9D7B8B4F9568F9 /* UIActionSheet+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CB7473E863AA6C71F69C471258AF7C5 /* UIActionSheet+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B6EDD524072AEE8AC2640246A9B3C01B /* DelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 923ED4FBFA12D720E45B11E93B0E889C /* DelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BAEA2F5B537B3BCD8563BCD6A9F760BA /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEEFE7D9752C014AFE138D5283A4EED8 /* CombineLatest+arity.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BB3F04069C5AD9D358364341DB3166B4 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7897D286EA02AAFF268BA0BD774C559E /* Sequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BCB91034C63C9D5F754B80EF96A910E8 /* Poll.swift in Sources */ = {isa = PBXBuildFile; fileRef = E434229D854327B5166E099021AB2C96 /* Poll.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BDF4D42FEC581ABD228DA9050DF952C3 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB53E3ADA163D632662BE585A559FC7F /* BeLessThan.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BF73D6ADA66E0DF565D4250363D99EE9 /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7921F1420AD083E1D9DC5CDCBE1C94E5 /* SerialDispatchQueueScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C09461252B2E16FFA265246FCB06383D /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AB78BF3A5A82F245298A6571570C019 /* RaisesException.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; C150157922BAEB1F93635508FB59E618 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7CC1933144617C8FE21FC8C0B0D9E482 /* Foundation.framework */; }; - C21095EF357CCD8E577CAFB5E857AD3E /* UIAlertView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04BA5A10484466882621511AA5A9827D /* UIAlertView+Rx.swift */; }; - C3E44EC9B54DF41C7E9E9FAEBCD76C78 /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 9AA94FA3BEA21E28EFF25A239B3ED226 /* World+DSL.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C589F34CEFDBB08093364625CC2E9EAD /* Driver+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 719FC95AEAAB6F6D4A987E7230BA3F5F /* Driver+Subscription.swift */; }; - C5E613E1B968EFD809836DC6E5E81B26 /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACC187B85735345246A380AB65D3C1B0 /* TakeLast.swift */; }; - C62DE4802D468B4FD469BD7A5F5EB4C6 /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5E2EDE3179B69DA143B5CF56B48851E /* Event.swift */; }; - C63AB521EA514A811A167E507C0CF9AD /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B7859E68235BE9179B986C969165ADB /* Expression.swift */; }; - C74D1CB166E5275B3FC8A5083874A86C /* Observable+Time.swift in Sources */ = {isa = PBXBuildFile; fileRef = 058F7C74A794D9CFEAEE3F989F310F7F /* Observable+Time.swift */; }; - C7D4F4273F2837AD0C80A9F4069D0038 /* Deallocating.swift in Sources */ = {isa = PBXBuildFile; fileRef = A79CBC9FA88AEBF8FD503B0AD6773AD4 /* Deallocating.swift */; }; - C961FA9A17BBABDA75C75A37F07434F3 /* RxBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4D33A4839D7655D7AC021B9678921DC /* RxBox.swift */; }; - C97EB21DA6B70BA2BEA15D27E0EBCEC4 /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7AF430162E5A114E7FBB75DA3A409E0 /* ConnectableObservableType.swift */; }; - C9AC658F3FCB67B50E96313C2687B33D /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0633D5DF9AB294620DA9548DAC793201 /* MatcherProtocols.swift */; }; - CAAED5FB81DB035A9EC080917C783FA6 /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60312B4B7E20AF978F46E2B41716E47B /* AdapterProtocols.swift */; }; - CAE800974B0310008FD4BDC737198FD7 /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDBD14EABE18002AE153AB141B423F89 /* Producer.swift */; }; - CAFD9893D73CAF218B48228D7A735E8A /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 524CD8975A004916354F518407A8FDB7 /* ExampleGroup.swift */; }; - CB299D2B3BF48C577546A2C8854C9CBE /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C924BE6D90EED302FD3638B24F1BB13 /* Lock.swift */; }; - CCC7957A00FB4FA2FEB38A51C86302B5 /* Driver+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51E8DEA4FF4C288DEA9F9E5A76525CA3 /* Driver+Operators.swift */; }; - CD9D31B6063C50689EAC2A0745C282DC /* ObjCExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3BBE4280C7F7B86B844A8E317C1471E0 /* ObjCExpectation.swift */; }; - CFEBE4BC60422E6AF752363A21145085 /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F1EF12172398D5FD7ACC6F709C8ADC5 /* RxSwift-dummy.m */; }; - D04A78D59829BB063F20B2D926B5FA19 /* UITextView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7E014CBA054C59A5FCA80FFA2A07244 /* UITextView+Rx.swift */; }; - D0E680F8B51C841E0532DBCD06270383 /* Zip+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBC89066198F06C60ED572BAB1C3277 /* Zip+CollectionType.swift */; }; - D0F7CC9A3924711B7866C76B99221CC4 /* NSObject+Rx+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EB74D37C4FEA523D1EBD951B336F6CF /* NSObject+Rx+CoreGraphics.swift */; }; - D1E52696DB392488D25C9A46A5BDAB5D /* ControlEvent+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FC4DEC4D1E82298E71BD41B94BD62AD /* ControlEvent+Driver.swift */; }; - D20C4ABF4D3BA73CF8EB36A33D223415 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5A3FADD331156041D29646F0A94BAEF /* InfiniteSequence.swift */; }; - D3E3A5B9426B490E6E56C63DF0AEEC26 /* UILabel+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12F9F0973D955A672B0D3E67FCC00B84 /* UILabel+Rx.swift */; }; - D429691F39B4C30A8993360FB8A3E334 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2D5619623EE2F355F141B950AE0E213 /* AllPass.swift */; }; - D438C87F99042C34C616960B1D3A3134 /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6349EB4116596770D5ACAC77331FFC3 /* Reduce.swift */; }; - D7B45D4600C6166C124C0A926EE65284 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F9F48B349DAD390A7ED685940F16DDF /* Functional.swift */; }; - D8413629951869E720290975BC1F090A /* NSObject+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D203DD4D070439D33D6A186B1989AF3A /* NSObject+Rx.swift */; }; - DEE170DD3064F7343884A4016546B762 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBBCDF5ADFD265EC93DFFF7B40D7308B /* DSL+Wait.swift */; }; - DF880D89239FED0266E938B5B37B915A /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5F51A8DB7A24179289EC3896870A33A /* TakeWhile.swift */; }; - E1AD542A389721742C93D14C8C3BBBC9 /* Observable+StandardSequenceOperators.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF03384A224C7C49FE089A977469D9CE /* Observable+StandardSequenceOperators.swift */; }; - E2A0A662CB66E8BD0F457FA02BC8AC54 /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 34847B5398E5D154BA3CF3F41F06054C /* QuickSpec.m */; }; - E2FBD93D72DF01427486D1A6853FC689 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = E903ADB7D0BE9C512DB37F8617A9EAE0 /* Expectation.swift */; }; - E36C5201AE7F1CBB25F9D2E7CBFC3C20 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2780338C4C425B371D77C423A3101875 /* Match.swift */; }; - E3DD60734C952E926A6E9DABD52683F0 /* StableCompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77BD6AC079287430D9B6C5A4D2F853AB /* StableCompositeDisposable.swift */; }; - E472924B4B0E7A91499C86B5307BD2EB /* RxTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB6D29C2832637F8C1A07C85C55869A7 /* RxTarget.swift */; }; - E6E7B15FAD6C56681511813DB2666478 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9074E2CD379382DF310CB0FE22275C74 /* AssertionRecorder.swift */; }; + C22F4D717F12A9C5F0D53163A67AB37A /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12B6DE6FC7FD18517BDACE864CDC972C /* Stringers.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C29F445840722830229F35FCBEE4C62B /* UISlider+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CA03372E8CFB26F0C771CDFC0D8D29B /* UISlider+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C3E44EC9B54DF41C7E9E9FAEBCD76C78 /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = F6D03D12E8FAB6F62CCAC73D1BE83763 /* World+DSL.h */; settings = {ATTRIBUTES = (Project, ); }; }; + C44AF1A632D223BD01A400E8B3A97CC4 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDD044C877A84C26DE2454976F4554A1 /* BeNil.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C4C2012CF96F32547F0C4A1DE96B6AD7 /* RxViewModel-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 37CB8D79FB7536836DDAB2F9F5C0D609 /* RxViewModel-dummy.m */; }; + C5D87AF4C76D94E88544A187BAD7E1B1 /* _RXSwizzling.m in Sources */ = {isa = PBXBuildFile; fileRef = 8FB589970C962E1EF6ADE189169F81FD /* _RXSwizzling.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C659C03BA1CA13C620A4C6A2F3998026 /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = E790B2298E9951AA9B3616DD079C014B /* ObserverBase.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C68582E76A3C51BE0C23183A9E846AFD /* RxTableViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BC5951735C5F6EA18DA67AC7873CF22 /* RxTableViewDataSourceType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C6F33CABA62DBAD2F2429929A9EF9AC2 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = 403FCF321BD600B9F349E53E6848C059 /* Match.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C801A88539BE234CE1C1BD74E3B1A889 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A826522DFB8C2E183B06677EC9F1872 /* MatcherFunc.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C827BA92ED133C5D19635B067109F5DE /* RxCLLocationManagerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D7A685B60034EBB4E63C465D8008F54 /* RxCLLocationManagerDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C858F019237B606ED5987B1DC45F4610 /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF3A015F9C94146E9CFC03C3F313068B /* ConcurrentDispatchQueueScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C9B5B39DDFD4DC1F421D3247C1FB2EB0 /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92CBC55BC6349FA716827DF31E6E3592 /* Scan.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CB18DF5E8D5E30D71B50550B98AFE48A /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66F62373F11D5D7CD6E6889AC828A36E /* Merge.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CC442683DF47EC131B86E2B20D0159C9 /* SynchronizedSubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F843078BD9EB4603EB457B37C22DA20 /* SynchronizedSubscribeType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CD56FCEBBA44EC98A59E59FFAFD0C1C2 /* UIButton+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DF3315E981C88B1B398C608FE543D3 /* UIButton+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CD8D44DE1572AE6D4D02C5E25C15F945 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA76B09BC8DDA06A5D050B11D182A766 /* RxCollectionViewReactiveArrayDataSource.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CDF8B383151DDC372D0F4AAC5E85456E /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC21EEB4A75650C1603E9B4F6B48EE57 /* BeLessThanOrEqual.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CE210B51F4624525B3D01D576098C94C /* NSURLSession+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4831C27D43DF4EACE759A9C7A9ADBB4D /* NSURLSession+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CEC489B7560EC352A50032A6B7B355C6 /* AnonymousObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1C5893D5334F7E6C2AE7F0C53DED598 /* AnonymousObservable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CF74C2E3F740A60A27F33C2658DEC3FD /* RxCollectionViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00173EDD066444578DCE95C1D99DCA5D /* RxCollectionViewDataSourceProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D01EA3C98D502281B6E654DB64F4761D /* AnonymousInvocable.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF718324F2D68CD303A31E2986375896 /* AnonymousInvocable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D3DD923DE3B05EFA95985D678CBA74A9 /* KVORepresentable+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E5835CFCEE7B51F8732493C99EDC237 /* KVORepresentable+CoreGraphics.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D56CC1BB7E4175B29D6C257B51D5C1E9 /* SingleAsync.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6DE8AF314F8580A69ECC9C1BE253FF5 /* SingleAsync.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D830CD354CA9CCB324A8254B962B7E54 /* ConnectableObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97739B773553EABB6EE683B8E7C401F6 /* ConnectableObservable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D8488287B871C72992F713CF60877332 /* Observable+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC47539797A77AD243A3067C70E3AEE /* Observable+Extensions.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D9817C16EAC54DD6231C940B71997D5F /* UIImageView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC24164C27FBE96E1BF7970C116CD4BF /* UIImageView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DC221123ED4FB6BB4987B0DC8E6F3918 /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BBA7A3AC4847165B293B4934173AB86 /* DistinctUntilChanged.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DCF32EBD94A310862907600F0C58F944 /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B38F003E4FF76D98A91DDB9578E1574 /* ObserveOn.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DE05379D2523221E7F1A53B8656D82D7 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C553036256B62564E4D8492111154EF /* Timer.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DFE38F0A191D16706AC4F36CFA9F3F91 /* NAryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01CC2800ABF6A82B7FEB6FEEED040BBD /* NAryDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E008532B9ECFB1825390C69332A4A8BD /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B2F863710EF743EBA917532D4DAF47D /* NimbleXCTestHandler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E03B2E56B761CE041243AA23C69901A4 /* Observable+Multiple.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF8F406F429A64F8560F1457CFFFDACF /* Observable+Multiple.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E0805CF687D4BE3FC7F0A00645DF151D /* RxCollectionViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF05D7DD591E1DFA668D36A13C8399B6 /* RxCollectionViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E111AE2BD744870A0902D5AE75F74207 /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D9C8E7CDAED56716D01DABF9F26D61A /* Debug.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E4578B430885B7827EA91A40CAE68CC8 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82754B1048547A05031F62DAD4858122 /* World.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E5960865E152FFB7452321881324487D /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6F0C341DE00793E810579774936FE92 /* SubscribeOn.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E63CF45548C4179F18A0521F6258D954 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FF7CF31501BCA76821E982E0C0BC840 /* Equal.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; E78B528A2A91CF4F6F488614CF830721 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7CC1933144617C8FE21FC8C0B0D9E482 /* Foundation.framework */; }; - E93551B9AF2ABA2CD8F7FA6EC5AE67DA /* NAryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2734AD71843BE29D2BB3F97EA3D7911E /* NAryDisposable.swift */; }; - E9E3652DB1CE1A2EEE4D06A0D61DB8C4 /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = CBB3F9C7669D32D842DE9EDD75ED00B0 /* DelaySubscription.swift */; }; - E9F4EFC95DCE93D8EA1426A96037F1EB /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CDAFB4E1ED30C2B7B4F0BC9BEBCD4E62 /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - EAB0FA8926DC0452D7867B4898BC9B64 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7C551CEED21EF475F84419D3389E46D /* Disposable.swift */; }; - EB96D7C6295232E49DD13E81404C02ED /* FailWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CB6CFEC2D1B7EF4A0C0CAB242BB8BFC /* FailWith.swift */; }; - EBAB1DFBBA5B2D63C1BDD08A3F87D4FB /* KVOObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1BA48126B8C837F687406E5E51B7F53 /* KVOObservable.swift */; }; - EBE92264498B16747F9C390E6894F505 /* UITableView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 41848127CFD528CE5BC19E99291E7375 /* UITableView+Rx.swift */; }; - ECC5EE2A87EBA828D3560EFB1887E43E /* CLLocationManager+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24E0DD3135F4BC5173954AB07322240F /* CLLocationManager+Rx.swift */; }; - EE5FBB8098E5B654E8BFF9441F66D027 /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA8BB4040BEAF26ADB45045A304B59E8 /* Range.swift */; }; + E7C3009A81607F5777FF5BBF47454E1B /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CCC4BDD19C31493E3BBFEE0721D95B6 /* SkipUntil.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E94930D05F4F68FAB63A8FBBAD8B9042 /* RxTableViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80346C899F761612BEF8C3459A6F0F9E /* RxTableViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E9F4EFC95DCE93D8EA1426A96037F1EB /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 42E808C64E541D1837397BB934FAA4AA /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EA830C761C60EA1D18E77DAF725A8BFA /* Observable+Time.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69C59401595D643C48952856F4FF9ED9 /* Observable+Time.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EC03DD68D6B18523F9DC50DCFBACD427 /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2AECA1A9963760DE4395106BFDFCF844 /* ToArray.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EC545653122871760DCC1BB0C2DDFDC0 /* NSNotificationCenter+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C69D7E0ED6223B221E40C5D03D81EB2D /* NSNotificationCenter+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EEAAC9A0F987F37066673248A7680A09 /* KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF31BF407F9C0BB04874E440D1281FB7 /* KVORepresentable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EFAA5E4CF8B628E4EF0EA35B3099256E /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65D4B54BD8014F2C4D341991F579090A /* Expectation.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F08D88A1AB0E71F7333D2CD819315543 /* RxActionSheetDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EAAE49DBA6699A7D8B331C0F6A7156F /* RxActionSheetDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; F0E2A58DE87016A12BB5846EF04FDC64 /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */; }; - F10FD3129985704FA1610F84FB98EDF5 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2C374093FD81C7362B5C31C0E24B0DF /* Stringers.swift */; }; - F178271C7CC37D0558A4DCD4D5B064A1 /* UIScrollView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BFF6BC6EB41BDE740158E0F6FA263B0 /* UIScrollView+Rx.swift */; }; - F1D4A8A1FC68EFA7F45945908D70A352 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 846C858626A3167F43C71A44B8137E74 /* BeNil.swift */; }; - F1D9B933B7E75C692192EEF3E798A7F7 /* ScopedDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C18229175AF93C76A09938907DAF108 /* ScopedDisposable.swift */; }; + F0F8212065ED4E87869F03E6A69B92EF /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C557CB353DB77E5A57A91CA9BF22551 /* SubjectType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F2733901D2524B7ED8F9BF41C434987A /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1F12C3D12900252C217BE67AD87F87F /* BeIdenticalTo.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F37814A7A1827B05D60C6F492DB5FA53 /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0159BFBF4C98C7D6C2529388538BF2F9 /* TakeWhile.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F383A28626A08D65B9C5AF674A9C5D5A /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24337844652E21267BDF4CA1101ED35C /* DisposeBase.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; F3A1127B7B680B466F1B8C7549FB6FE9 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7CC1933144617C8FE21FC8C0B0D9E482 /* Foundation.framework */; }; - F4FA2AB0F102898C97B7939C61D542C2 /* RxScrollViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA87AB80A3E1ACAF8912EA7A7A391EE5 /* RxScrollViewDelegateProxy.swift */; }; - F61080163ADF9AD341936DE28EB27B51 /* RxCocoa-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B7486859C828FCAE8A4248720078577A /* RxCocoa-dummy.m */; }; - F8E28DE7EFF968325EC78E23783AF603 /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E2246AE4D0CABE813B9B83998C5C55E /* ImmediateSchedulerType.swift */; }; - F9A50E322EFDDB0896E2FD452EDBA36A /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADFD47AABABDB001922A246221E65FDA /* Take.swift */; }; - F9BFDA2EC452E6A4E95B198B3D2F8D24 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 676593B34C70A0D15B5241549B20D915 /* Callsite.swift */; }; - F9C97DFE079B6706322FFC4A6C3C2EE3 /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = B900E0C494CB8E8E28199EA601D10E98 /* Merge.swift */; }; - FA03E00AD745338D5236D8479388875F /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CB443C01B04CFD340C8F303BC1AA72F /* Buffer.swift */; }; - FAB4FA81A1BB5807D4CE1F1EC637B234 /* Quick-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 855664731536D04DA3043D9B1B96F6C2 /* Quick-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - FB1347627E64CA7E98C19DC985E13D95 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 954720B99845BBF73BC2DC6861C8557F /* Equal.swift */; }; - FC8CC8768515BEDC49EFFA2F4340C7EF /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7840D877B39F7B0C475A3CE4078F1F93 /* Configuration.swift */; }; - FCD6FDAC87D18BAB63D1B84C176F65EE /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E70357FF88CE8F56758295CA78D87AA3 /* SingleAssignmentDisposable.swift */; }; - FDCED8837011DE7E04D0BB1A8D324393 /* FlatMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD7D6E8CE23EC55E42632BF972AF293A /* FlatMap.swift */; }; - FFC311AC1E19A23E0EB7B1B3A7A5A744 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84187A6D1C5DF52C2350939345D492C6 /* RaisesException.swift */; }; + F428336E9611EA2FC31A46398EC8A8DA /* ImmediateScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3B7F73A557870C9A6C543B0B2A5ECCA /* ImmediateScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F44870C5F269537D083F6B4268F42657 /* _RXKVOObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = DFF6880E6D321FD91906B7EF3F6E973C /* _RXKVOObserver.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F6AB7FBAFE2EA74E93758297A5605353 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FEDA23B714E69283C2BF9BC26135EC4 /* Callsite.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F92E438998BE7C612D45DBABEDB9FFFC /* ControlEvent+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B97B41606163A1F1232888B3DE7EE8A /* ControlEvent+Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F98FF0C7C7B1F9201716719D5B24788E /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE8BE52898C940FFA15D25F86CF426DB /* SchedulerType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FA56C39B1E21E763306FFBECE4B0A89A /* Observable+Concurrency.swift in Sources */ = {isa = PBXBuildFile; fileRef = A32ADE721CA95AFDB5F113DD9C757600 /* Observable+Concurrency.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FAB4FA81A1BB5807D4CE1F1EC637B234 /* Quick-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E57A87F6D6479BF124B477B312716440 /* Quick-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + FB3D4A524B5C442500217E325D782E13 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B7A95CD86CC97C57FCA56128F92D4D7 /* FailureMessage.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FBA4A98AB649EF7AC1E287DA5BAC8325 /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 759AF22407C57226C8C5E88D895E1192 /* AsyncLock.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FD1654BCD9F5FCD04903DCC48F17EBB5 /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B9F13B545FEE8090CCAD61C4D3D4CF5 /* StartWith.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FD6A076A9F756C1BE90E4288361D4373 /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7D9673655F1202774F93D5EF882C1DF1 /* ObservableConvertibleType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FD8FCAEF23275CE11EB50C06FCA9520C /* Driver+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4115A136E1C8CCB2A064F673C37B94E8 /* Driver+Operators.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FF4E5B87C3FF1F6A51F918159CD1A359 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = C62F8CCD794858ADBC4A92B49002B821 /* Filter.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -348,314 +363,329 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0099727B8E0F5A49C6740959D3764041 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; - 0149645A410719261F296478A02DE73E /* ThrowError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowError.swift; path = Nimble/Matchers/ThrowError.swift; sourceTree = ""; }; - 01D45D57D133DEFEB48B233B626A5487 /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; - 0227A5BE677565AC27E7C7A9B167B360 /* RxTextViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTextViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift; sourceTree = ""; }; - 0249B015FAA6BA9A31F6EDF31055A76E /* ShareReplay1.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplay1.swift; path = RxSwift/Observables/Implementations/ShareReplay1.swift; sourceTree = ""; }; - 027EFF04490F43C61C16661A64BE7922 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Error.swift; sourceTree = ""; }; - 038E47518E20C7EB2D4CAD41444FA30E /* AnonymousObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObservable.swift; path = RxSwift/Observables/Implementations/AnonymousObservable.swift; sourceTree = ""; }; - 04BA5A10484466882621511AA5A9827D /* UIAlertView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIAlertView+Rx.swift"; path = "RxCocoa/iOS/UIAlertView+Rx.swift"; sourceTree = ""; }; - 0584E929F7AC4E49C74F3856EC93AF11 /* Nimble-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Nimble-dummy.m"; sourceTree = ""; }; - 058F7C74A794D9CFEAEE3F989F310F7F /* Observable+Time.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Time.swift"; path = "RxSwift/Observables/Observable+Time.swift"; sourceTree = ""; }; - 0633D5DF9AB294620DA9548DAC793201 /* MatcherProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherProtocols.swift; path = Nimble/Matchers/MatcherProtocols.swift; sourceTree = ""; }; - 06BFA849D48EF96E376180DB67C15F7F /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Implementations/Switch.swift; sourceTree = ""; }; - 0809ACA9399A3799F4C867C9CFD17BA5 /* NSString+QCKSelectorName.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSString+QCKSelectorName.m"; path = "Quick/NSString+QCKSelectorName.m"; sourceTree = ""; }; - 08F6BB744101A19B3984696D27D0537B /* _RXKVOObserver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXKVOObserver.m; path = RxCocoa/Common/_RXKVOObserver.m; sourceTree = ""; }; - 0AF2017C8E36AB1C72730FC7CA548C24 /* NSURLSession+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSURLSession+Rx.swift"; path = "RxCocoa/Common/Observables/NSURLSession+Rx.swift"; sourceTree = ""; }; - 0B7859E68235BE9179B986C969165ADB /* Expression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expression.swift; path = Nimble/Expression.swift; sourceTree = ""; }; - 0BF495999F60015B38EDE732CDE7009C /* QuickSpec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickSpec.h; path = Quick/QuickSpec.h; sourceTree = ""; }; - 0C18229175AF93C76A09938907DAF108 /* ScopedDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScopedDisposable.swift; path = RxSwift/Disposables/ScopedDisposable.swift; sourceTree = ""; }; - 0C99E301BEF331E1DE4BE183AB958B01 /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; - 0DA4D93FF9D072A3528089D887AAEE7C /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = RxSwift/DataStructures/Bag.swift; sourceTree = ""; }; - 0E6E6394D1627ECE2165EB80234BBA15 /* BeGreaterThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThan.swift; path = Nimble/Matchers/BeGreaterThan.swift; sourceTree = ""; }; - 0EFF988768969B8A750CF0F13D878879 /* SuiteHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SuiteHooks.swift; path = Quick/Hooks/SuiteHooks.swift; sourceTree = ""; }; - 0F787D59ACD94F4ECB252B288E46FA8F /* RxCocoa.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RxCocoa.modulemap; sourceTree = ""; }; - 0F8F414DF16A7BC1DD914032020EDE19 /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; - 10293EA48C95665265E02EF7F984D755 /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; - 105AF714125E6C0F2FA3719A36EBCA77 /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Implementations/Multicast.swift; sourceTree = ""; }; - 12F9F0973D955A672B0D3E67FCC00B84 /* UILabel+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILabel+Rx.swift"; path = "RxCocoa/iOS/UILabel+Rx.swift"; sourceTree = ""; }; - 13204C41A15FCA68E682C8E35FC44A12 /* ExampleMetadata.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleMetadata.swift; path = Quick/ExampleMetadata.swift; sourceTree = ""; }; - 1389CFA5B65CA0C2E3D75BA27C43C117 /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; - 1496FE073B8DF8A4F2FD4B4320333670 /* Quick.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Quick.xcconfig; sourceTree = ""; }; - 180238F515BDFAB7AA37019F846F9CFA /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; - 1950C080DC269BB5AC6C3B797F2E5E67 /* BeLessThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThan.swift; path = Nimble/Matchers/BeLessThan.swift; sourceTree = ""; }; - 1B00410E4A50EC1F17BA5CDD2B46E62F /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Implementations/Scan.swift; sourceTree = ""; }; - 1B8E1C8CE0E83DACDB71F3FB6ABB636A /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Implementations/Timer.swift; sourceTree = ""; }; + 00173EDD066444578DCE95C1D99DCA5D /* RxCollectionViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift; sourceTree = ""; }; + 00979EFA7F83AD637F723414D57417AD /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; + 0159BFBF4C98C7D6C2529388538BF2F9 /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/Implementations/TakeWhile.swift; sourceTree = ""; }; + 01CC2800ABF6A82B7FEB6FEEED040BBD /* NAryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NAryDisposable.swift; path = RxSwift/Disposables/NAryDisposable.swift; sourceTree = ""; }; + 01D936A271CDB317E9313314F3B2E5FF /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; + 01FF485F4DAC368D17B9D6D0EA2D400D /* RetryWhen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RetryWhen.swift; path = RxSwift/Observables/Implementations/RetryWhen.swift; sourceTree = ""; }; + 03981B0FA308AE420FED8B79B0693BE2 /* World.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = World.h; path = Quick/World.h; sourceTree = ""; }; + 04C1F5C6D30F3910DBBA95C092F7E059 /* Observable+Bind.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Bind.swift"; path = "RxCocoa/Common/Observable+Bind.swift"; sourceTree = ""; }; + 07D575B62F7EC6A37E087AA37A896542 /* HaveCount.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HaveCount.swift; path = Nimble/Matchers/HaveCount.swift; sourceTree = ""; }; + 0AB78BF3A5A82F245298A6571570C019 /* RaisesException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RaisesException.swift; path = Nimble/Matchers/RaisesException.swift; sourceTree = ""; }; + 0C557CB353DB77E5A57A91CA9BF22551 /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; + 0CE366AC79861586231B97FEBBEA8083 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = RxSwift/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; + 0D4BC6C6E31CF219BCCA80E87C9C4B31 /* RxTableViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift; sourceTree = ""; }; + 0D9C8E7CDAED56716D01DABF9F26D61A /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Implementations/Debug.swift; sourceTree = ""; }; + 0F3E6C27AD968610CAD90CFAF45B9A75 /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; + 100D3E4F53D7BD07C07EAD7753BCD8DB /* UIGestureRecognizer+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIGestureRecognizer+Rx.swift"; path = "RxCocoa/iOS/UIGestureRecognizer+Rx.swift"; sourceTree = ""; }; + 10DDCFC484D3E8099D73EC21EED7B6A0 /* UILabel+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILabel+Rx.swift"; path = "RxCocoa/iOS/UILabel+Rx.swift"; sourceTree = ""; }; + 1120897B8C7FEAD5427047C87758E123 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Quick/Configuration/Configuration.swift; sourceTree = ""; }; + 12B6DE6FC7FD18517BDACE864CDC972C /* Stringers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stringers.swift; path = Nimble/Utils/Stringers.swift; sourceTree = ""; }; + 12FB4D51418CFC361F89C173C379CEBA /* Closures.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Closures.swift; path = Quick/Hooks/Closures.swift; sourceTree = ""; }; + 13221085EE95F2154C02325653E9BF98 /* Expression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expression.swift; path = Nimble/Expression.swift; sourceTree = ""; }; + 1369288C6F4B1CABE00859A2139756D5 /* Quick-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Quick-dummy.m"; sourceTree = ""; }; + 13830E8810FE6FF393CF9DD380E0637E /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Implementations/Producer.swift; sourceTree = ""; }; + 13A05233DA4A23B026E504504FC50400 /* BeGreaterThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThan.swift; path = Nimble/Matchers/BeGreaterThan.swift; sourceTree = ""; }; + 13A89FAF58F8775CF99765515CC0D92D /* AssertionRecorder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionRecorder.swift; path = Nimble/Adapters/AssertionRecorder.swift; sourceTree = ""; }; + 13E2481069D2D3F9E106CAE2FBBC7539 /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Implementations/Amb.swift; sourceTree = ""; }; + 140FCD3F618A2E1CA23161B81C19D371 /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; + 18B24510B5AF73C6391CC621000AFADF /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Implementations/Concat.swift; sourceTree = ""; }; + 1A62D79EB1E3F825D6DC2D075A61A9CD /* UIStepper+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIStepper+Rx.swift"; path = "RxCocoa/iOS/UIStepper+Rx.swift"; sourceTree = ""; }; 1E2072E96EEBF1BF37C2EC38B4F5BED5 /* RxViewModel.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RxViewModel.modulemap; sourceTree = ""; }; 1E527DE33EF8E051B9519A057AFBB7D9 /* RxViewModel-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxViewModel-prefix.pch"; sourceTree = ""; }; - 1E7DDA4B9D7D0D4DB159D86006167CBD /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAnInstanceOf.swift; path = Nimble/Matchers/BeAnInstanceOf.swift; sourceTree = ""; }; - 20FAC65FF1C91AD941D2B1653E9C8A1D /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Implementations/Do.swift; sourceTree = ""; }; - 21736865BF176B691B3712CEE924AE01 /* RxTableViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift; sourceTree = ""; }; - 2176D88EA17B4C35EB29AA4B0A3DF4A1 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Implementations/Filter.swift; sourceTree = ""; }; - 242683E70916DD3C3316270E79FD246D /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = RxSwift/DataStructures/Queue.swift; sourceTree = ""; }; - 24E0DD3135F4BC5173954AB07322240F /* CLLocationManager+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CLLocationManager+Rx.swift"; path = "RxCocoa/Common/CLLocationManager+Rx.swift"; sourceTree = ""; }; - 27304CAC8A15942A9C4040A568EA4A22 /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/Implementations/CombineLatest.swift; sourceTree = ""; }; - 2734AD71843BE29D2BB3F97EA3D7911E /* NAryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NAryDisposable.swift; path = RxSwift/Disposables/NAryDisposable.swift; sourceTree = ""; }; - 2780338C4C425B371D77C423A3101875 /* Match.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Match.swift; path = Nimble/Matchers/Match.swift; sourceTree = ""; }; - 27F698B57CB973574C6A5CFC9F3BE7C6 /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; - 287699968002DCAA04BB043CDDDE919A /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; + 1F6DBF6D8329BC8C46E454408A2B2D22 /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; + 20090F6CFA375ACDA72C0F82B8F2AED6 /* ObserverType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObserverType+Extensions.swift"; path = "RxSwift/ObserverType+Extensions.swift"; sourceTree = ""; }; + 20CC9DC58EC6B98B8511226F337CB01F /* DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DSL.h; path = Nimble/objc/DSL.h; sourceTree = ""; }; + 21EBB23CA7B60CE7BA7E2C899CD2563E /* BeginWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeginWith.swift; path = Nimble/Matchers/BeginWith.swift; sourceTree = ""; }; + 22298CBD1F3638A425A5BFC5A94A34ED /* RxCocoa.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxCocoa.xcconfig; sourceTree = ""; }; + 2239DF539CA80A6D65804AE9830310FD /* NSObject+Rx+CoreGraphics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+CoreGraphics.swift"; path = "RxCocoa/Common/Observables/NSObject+Rx+CoreGraphics.swift"; sourceTree = ""; }; + 23D2BC7DB21DEE4C7A840CC953104F93 /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; + 23E877D095D92AF0163E5C387773B9AE /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; + 2405A5535A5A7CD2CE383E86964A5B65 /* NSObject+Rx+KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+KVORepresentable.swift"; path = "RxCocoa/Common/Observables/NSObject+Rx+KVORepresentable.swift"; sourceTree = ""; }; + 24337844652E21267BDF4CA1101ED35C /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; + 247766FF5A2DC1C9DFB67EFDB0DAA5D8 /* UIAlertView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIAlertView+Rx.swift"; path = "RxCocoa/iOS/UIAlertView+Rx.swift"; sourceTree = ""; }; + 2859E9EF04FD64673FFB0E491CC4A64E /* UICollectionView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UICollectionView+Rx.swift"; path = "RxCocoa/iOS/UICollectionView+Rx.swift"; sourceTree = ""; }; + 288672EA423DE31264BEC43B7889E25D /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Implementations/Buffer.swift; sourceTree = ""; }; + 2A826522DFB8C2E183B06677EC9F1872 /* MatcherFunc.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherFunc.swift; path = Nimble/Wrappers/MatcherFunc.swift; sourceTree = ""; }; + 2AECA1A9963760DE4395106BFDFCF844 /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/Implementations/ToArray.swift; sourceTree = ""; }; 2BCC458FDD5F692BBB2BFC64BB5701FC /* Pods-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-umbrella.h"; sourceTree = ""; }; - 2CEAD1F8A8EAA1874A4B4416690E8249 /* Nimble.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = Nimble.modulemap; sourceTree = ""; }; - 2DA8C4703A00166A84C45BF5FFB7FED9 /* UIActionSheet+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIActionSheet+Rx.swift"; path = "RxCocoa/iOS/UIActionSheet+Rx.swift"; sourceTree = ""; }; - 2DFDF23A5C22B68CEA611CE7FDC5BAD4 /* Nimble.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Nimble.h; path = Nimble/Nimble.h; sourceTree = ""; }; + 2BF8B9C7CCD3BC8D1CA4266EFAE2061B /* AssertionDispatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionDispatcher.swift; path = Nimble/Adapters/AssertionDispatcher.swift; sourceTree = ""; }; + 2C4F4D4B839D41FBF242073B3206F3EB /* Variable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Variable.swift; path = RxSwift/Subjects/Variable.swift; sourceTree = ""; }; + 2DF8C44EB7809A8F5112A670F61F01E6 /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAnInstanceOf.swift; path = Nimble/Matchers/BeAnInstanceOf.swift; sourceTree = ""; }; + 2E033A13E50C7427EA001C81974A9B33 /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Implementations/Multicast.swift; sourceTree = ""; }; + 2E9C7E0B72D53951B0E0C91723C76CCA /* EndWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EndWith.swift; path = Nimble/Matchers/EndWith.swift; sourceTree = ""; }; 2EADBA3736DD9376678CEEA9DC27BAE7 /* Pods.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 2EE2C60696E267BBBC464C7345E34EF8 /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; - 2F5B81F3B45DB4DF74045E0C8D85460F /* BeEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeEmpty.swift; path = Nimble/Matchers/BeEmpty.swift; sourceTree = ""; }; - 2F8942D72D28C05E1EF86A084ECFD4C4 /* RxCocoa.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCocoa.swift; path = RxCocoa/Common/RxCocoa.swift; sourceTree = ""; }; - 2FC4DEC4D1E82298E71BD41B94BD62AD /* ControlEvent+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Driver.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/ControlEvent+Driver.swift"; sourceTree = ""; }; - 30DF4D5B96C10C21B43A61B43D36E5CF /* QCKDSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QCKDSL.m; path = Quick/DSL/QCKDSL.m; sourceTree = ""; }; - 3190C07B05C3C732C6A30F00B08917C6 /* Quick.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Quick.h; path = Quick/Quick.h; sourceTree = ""; }; - 31DE4A11017EE2B23F666EEF72D8DD13 /* RxCollectionViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift; sourceTree = ""; }; - 32D9359D65D800D452E2E42A612FF43C /* _RXKVOObserver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXKVOObserver.h; path = RxCocoa/Common/_RXKVOObserver.h; sourceTree = ""; }; - 33745B29A0361F16C643701F933B9547 /* RxCollectionViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift; sourceTree = ""; }; - 34374DF42E4251B5FE6EADDFFE7B3B3C /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; - 34847B5398E5D154BA3CF3F41F06054C /* QuickSpec.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickSpec.m; path = Quick/QuickSpec.m; sourceTree = ""; }; - 35A8D78D59F836E13DF96F871C9A9812 /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Implementations/Catch.swift; sourceTree = ""; }; + 2FC79F324FAEEB04CC7920F262A71E19 /* AllPass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AllPass.swift; path = Nimble/Matchers/AllPass.swift; sourceTree = ""; }; + 2FF7CF31501BCA76821E982E0C0BC840 /* Equal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Equal.swift; path = Nimble/Matchers/Equal.swift; sourceTree = ""; }; + 3234AE5901342805DB9EDBC72C34693E /* UITextView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextView+Rx.swift"; path = "RxCocoa/iOS/UITextView+Rx.swift"; sourceTree = ""; }; + 325890D356E2DA4D654195D4D8787DA7 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Nimble/DSL.swift; sourceTree = ""; }; + 33D33C1068658D90B9C42E6A1B09BFCE /* RxTextViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTextViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift; sourceTree = ""; }; + 3443126532711E6187542ACE47AC595F /* Driver+Operators+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Operators+arity.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/Driver+Operators+arity.swift"; sourceTree = ""; }; + 346001855A0E8BD78989E85D36C738A9 /* ObjCMatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjCMatcher.swift; path = Nimble/Wrappers/ObjCMatcher.swift; sourceTree = ""; }; + 35DF3315E981C88B1B398C608FE543D3 /* UIButton+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Rx.swift"; path = "RxCocoa/iOS/UIButton+Rx.swift"; sourceTree = ""; }; + 35F3334E237C9A625B1223C909EBF72F /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Implementations/Sink.swift; sourceTree = ""; }; + 377BEB62136C70820CFBA24C8EB5BBDE /* ScopedDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScopedDisposable.swift; path = RxSwift/Disposables/ScopedDisposable.swift; sourceTree = ""; }; 37CB8D79FB7536836DDAB2F9F5C0D609 /* RxViewModel-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxViewModel-dummy.m"; sourceTree = ""; }; - 3A7640176A9ADC15DF9AA89C35281F8B /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; - 3A9A5C40057713AFC20E3B77FEDB3548 /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; - 3AFBD64086A4CD7AC0C5475AC0ED375B /* UIControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIControl+Rx.swift"; path = "RxCocoa/iOS/UIControl+Rx.swift"; sourceTree = ""; }; - 3B4F8A7541A042C3612032C61A860B8F /* AsyncMatcherWrapper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncMatcherWrapper.swift; path = Nimble/Wrappers/AsyncMatcherWrapper.swift; sourceTree = ""; }; - 3BBE4280C7F7B86B844A8E317C1471E0 /* ObjCExpectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjCExpectation.swift; path = Nimble/ObjCExpectation.swift; sourceTree = ""; }; - 3C49B64CC294290E12494333E5A0B806 /* Logging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Logging.swift; path = RxCocoa/Common/Logging.swift; sourceTree = ""; }; - 3CB1EC0A79AAC6262838E491B4963F3E /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; - 3D3850029D41C0A572137FE33C488FCF /* _RXSwizzling.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXSwizzling.h; path = RxCocoa/Common/_RXSwizzling.h; sourceTree = ""; }; - 3D55E01B616C09EF231F0BF50207C928 /* UIGestureRecognizer+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIGestureRecognizer+Rx.swift"; path = "RxCocoa/iOS/UIGestureRecognizer+Rx.swift"; sourceTree = ""; }; - 3D793DE4E519AA4ADE0C0C35C789FC21 /* ControlProperty+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlProperty+Driver.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/ControlProperty+Driver.swift"; sourceTree = ""; }; - 3F45E58688DC32831A3A3E720B86A7D4 /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Implementations/Repeat.swift; sourceTree = ""; }; - 40109AF9B8E1691FB89AFB820B36D2D6 /* Observable+Multiple.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Multiple.swift"; path = "RxSwift/Observables/Observable+Multiple.swift"; sourceTree = ""; }; - 408DAA098E182010E3E8D3D056A909A0 /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Implementations/Amb.swift; sourceTree = ""; }; - 41848127CFD528CE5BC19E99291E7375 /* UITableView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITableView+Rx.swift"; path = "RxCocoa/iOS/UITableView+Rx.swift"; sourceTree = ""; }; - 4240A9D5142AB1F096D34ADD2A969F3E /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Implementations/Zip+arity.swift"; sourceTree = ""; }; - 42714C79A35CFDA324EB4CF7739303EC /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Implementations/Never.swift; sourceTree = ""; }; - 42970168A7FB87E85E152816353607C9 /* SourceLocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourceLocation.swift; path = Nimble/Utils/SourceLocation.swift; sourceTree = ""; }; + 380BA4A83340E1D867A2AAA557993076 /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; + 3B39D16EDDB9EF932A0D42AC4A036441 /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Implementations/Zip+arity.swift"; sourceTree = ""; }; + 3B64DEA0175BE28C164D01815055C294 /* RxCocoa-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-umbrella.h"; sourceTree = ""; }; + 3B97B41606163A1F1232888B3DE7EE8A /* ControlEvent+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Driver.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/ControlEvent+Driver.swift"; sourceTree = ""; }; + 3D6B2E2EA841BF9BF0CA435936732E97 /* UISearchBar+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISearchBar+Rx.swift"; path = "RxCocoa/iOS/UISearchBar+Rx.swift"; sourceTree = ""; }; + 3DB7BDD740D75E3D67B01AD0DF71ABA4 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Error.swift; sourceTree = ""; }; + 3DF914D869F86ECC5DB5D90617A12D5D /* ExampleGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleGroup.swift; path = Quick/ExampleGroup.swift; sourceTree = ""; }; + 3EAAE49DBA6699A7D8B331C0F6A7156F /* RxActionSheetDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxActionSheetDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxActionSheetDelegateProxy.swift; sourceTree = ""; }; + 3F843078BD9EB4603EB457B37C22DA20 /* SynchronizedSubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedSubscribeType.swift; path = RxSwift/Concurrency/SynchronizedSubscribeType.swift; sourceTree = ""; }; + 401EB93C5615EC63A288974F6843A762 /* Nimble-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Nimble-dummy.m"; sourceTree = ""; }; + 403FCF321BD600B9F349E53E6848C059 /* Match.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Match.swift; path = Nimble/Matchers/Match.swift; sourceTree = ""; }; + 4115A136E1C8CCB2A064F673C37B94E8 /* Driver+Operators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Operators.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/Driver+Operators.swift"; sourceTree = ""; }; + 4224745547ADF2F9DB9C33ED1B26E11A /* UIDatePicker+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIDatePicker+Rx.swift"; path = "RxCocoa/iOS/UIDatePicker+Rx.swift"; sourceTree = ""; }; + 42E808C64E541D1837397BB934FAA4AA /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 44E0BAEC92AC1F5C81A0626CAE18F1B1 /* Closures.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Closures.swift; path = Quick/Hooks/Closures.swift; sourceTree = ""; }; - 4545AD6A53CF194FA8E3748CDEE4E267 /* _RXDelegateProxy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXDelegateProxy.m; path = RxCocoa/Common/_RXDelegateProxy.m; sourceTree = ""; }; - 45A89CD12A7F579A7FF6CB3886A47F3B /* QCKDSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QCKDSL.h; path = Quick/DSL/QCKDSL.h; sourceTree = ""; }; - 45FFCD06550CCA881CAC18AD05771ACE /* ObservableConvertibleType+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Driver.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/ObservableConvertibleType+Driver.swift"; sourceTree = ""; }; - 47209D61236DEC7876158F93E8224AA9 /* Driver+Operators+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Operators+arity.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/Driver+Operators+arity.swift"; sourceTree = ""; }; - 47DC0D179B9383793B7669A29BCD284C /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/Implementations/SkipWhile.swift; sourceTree = ""; }; - 48358C3AF9613AFAFF9B4360A2DD1015 /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; - 486C29A435068044DA17BBD8D78B6979 /* Observable+Bind.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Bind.swift"; path = "RxCocoa/Common/Observable+Bind.swift"; sourceTree = ""; }; - 48B0F952D8165837AC851E43B85DF3D2 /* UICollectionView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UICollectionView+Rx.swift"; path = "RxCocoa/iOS/UICollectionView+Rx.swift"; sourceTree = ""; }; - 491035D94D03B754615EBD82D07A517B /* ItemEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemEvents.swift; path = RxCocoa/iOS/Events/ItemEvents.swift; sourceTree = ""; }; - 4B4FC1AD94D0A447C1A80E2689A0B0DF /* QuickConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickConfiguration.h; path = Quick/Configuration/QuickConfiguration.h; sourceTree = ""; }; - 4B6951430DE067CC087EC248997C5805 /* _RXDelegateProxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXDelegateProxy.h; path = RxCocoa/Common/_RXDelegateProxy.h; sourceTree = ""; }; - 4B6C5F9A32F77E4FBBA80403980B9FE6 /* ConnectableObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservable.swift; path = RxSwift/Observables/Implementations/ConnectableObservable.swift; sourceTree = ""; }; - 4BFF6BC6EB41BDE740158E0F6FA263B0 /* UIScrollView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIScrollView+Rx.swift"; path = "RxCocoa/iOS/UIScrollView+Rx.swift"; sourceTree = ""; }; - 4C28EA0F6E131978E6A054CB804D8A1A /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/Implementations/StartWith.swift; sourceTree = ""; }; - 4C6FAD05630443BA7B020357E67D0A07 /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; - 4C78912365638B53DB7A6D35BEEF9C6E /* BeLogical.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLogical.swift; path = Nimble/Matchers/BeLogical.swift; sourceTree = ""; }; - 4CB6CFEC2D1B7EF4A0C0CAB242BB8BFC /* FailWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FailWith.swift; path = RxSwift/Observables/Implementations/FailWith.swift; sourceTree = ""; }; - 4CBE740BC06EC5B6FC35BC1EA3143DCA /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Implementations/Map.swift; sourceTree = ""; }; - 4EB74D37C4FEA523D1EBD951B336F6CF /* NSObject+Rx+CoreGraphics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+CoreGraphics.swift"; path = "RxCocoa/Common/Observables/NSObject+Rx+CoreGraphics.swift"; sourceTree = ""; }; - 4F5302456AFA70E8C570BF7EFB88ACE0 /* HaveCount.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HaveCount.swift; path = Nimble/Matchers/HaveCount.swift; sourceTree = ""; }; - 4F9F48B349DAD390A7ED685940F16DDF /* Functional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Functional.swift; path = Nimble/Utils/Functional.swift; sourceTree = ""; }; - 50C060C33E78E637E0A5CC177DF3A44F /* ImmediateScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateScheduler.swift; path = RxSwift/Schedulers/ImmediateScheduler.swift; sourceTree = ""; }; - 512E357774AAA94B84EEE43B3B02BBE6 /* Observable+Creation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Creation.swift"; path = "RxSwift/Observables/Observable+Creation.swift"; sourceTree = ""; }; - 51E8DEA4FF4C288DEA9F9E5A76525CA3 /* Driver+Operators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Operators.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/Driver+Operators.swift"; sourceTree = ""; }; - 52150C7AF234CD4CCB8DBFF5681AA531 /* _RX.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RX.m; path = RxCocoa/Common/_RX.m; sourceTree = ""; }; - 5217562ACB76F601E3DD25781308B744 /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; - 524CD8975A004916354F518407A8FDB7 /* ExampleGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleGroup.swift; path = Quick/ExampleGroup.swift; sourceTree = ""; }; + 438E7627FE927F7A5324B486CE70355C /* NSObject+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx.swift"; path = "RxCocoa/Common/Observables/NSObject+Rx.swift"; sourceTree = ""; }; + 43CFD25EFB8C81164453B4F96C43A043 /* RxAlertViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxAlertViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxAlertViewDelegateProxy.swift; sourceTree = ""; }; + 44FD5BA58D6037A4207730CA24F8B768 /* ControlProperty+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlProperty+Driver.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/ControlProperty+Driver.swift"; sourceTree = ""; }; + 45B27ADCD2F92F0CFFF807CB96E89E50 /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Implementations/Repeat.swift; sourceTree = ""; }; + 45BA8BCB5D0B7149A61A549C6D828D05 /* NSString+QCKSelectorName.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSString+QCKSelectorName.h"; path = "Quick/NSString+QCKSelectorName.h"; sourceTree = ""; }; + 4721770F0DC68C036384F949D602A29E /* ObserveOnSerialDispatchQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOnSerialDispatchQueue.swift; path = RxSwift/Observables/Implementations/ObserveOnSerialDispatchQueue.swift; sourceTree = ""; }; + 476A3ADAE2600A8EA56DBD607FE7E2CD /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; + 4831C27D43DF4EACE759A9C7A9ADBB4D /* NSURLSession+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSURLSession+Rx.swift"; path = "RxCocoa/Common/Observables/NSURLSession+Rx.swift"; sourceTree = ""; }; + 4A69237022F43A92BEA1F2485A6B7B14 /* AddRef.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AddRef.swift; path = RxSwift/Observables/Implementations/AddRef.swift; sourceTree = ""; }; + 4B8E51A696C692618BF3F8B3F2AB96FE /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Quick/DSL/DSL.swift; sourceTree = ""; }; + 4B9F13B545FEE8090CCAD61C4D3D4CF5 /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/Implementations/StartWith.swift; sourceTree = ""; }; + 4BC47539797A77AD243A3067C70E3AEE /* Observable+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Extensions.swift"; path = "RxSwift/Observable+Extensions.swift"; sourceTree = ""; }; + 4DA878ACA1AEE503F71C928D06EF1BB5 /* _RXDelegateProxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXDelegateProxy.h; path = RxCocoa/Common/_RXDelegateProxy.h; sourceTree = ""; }; + 4FEC0A3052DFFD340E01154B2B782E24 /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Implementations/Throttle.swift; sourceTree = ""; }; + 4FEDA23B714E69283C2BF9BC26135EC4 /* Callsite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Callsite.swift; path = Quick/Callsite.swift; sourceTree = ""; }; + 512DF8A19EAD6031E47E7AEE1F408F99 /* RxCollectionViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift; sourceTree = ""; }; + 5249FA2C20FF7621CD08880021218A00 /* ExampleHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleHooks.swift; path = Quick/Hooks/ExampleHooks.swift; sourceTree = ""; }; 52ED2196EB14080976B8281223A2FE7F /* RxViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RxViewModel.swift; sourceTree = ""; }; - 52F6A2AC8D7E3369B35144C06004D8D6 /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; - 5304DE6F90A87843CA581060E177AF47 /* RxSearchBarDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxSearchBarDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift; sourceTree = ""; }; - 54476A40BF1D5C889DDD51FD49F813D6 /* Quick.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = Quick.modulemap; sourceTree = ""; }; - 54739DE70D93F235E3D3AFDBDF18B514 /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; - 549521D9F919D1BA9A7502EFE547FAA1 /* DelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxy.swift; path = RxCocoa/Common/DelegateProxy.swift; sourceTree = ""; }; - 56CD567D17B54BCA684F35627D285121 /* RxCocoa-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-prefix.pch"; sourceTree = ""; }; - 56DDB2205C540AB0027DC178150A2211 /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; - 577AB6CBDB217F139849146F5976C308 /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; - 58C7AAB263B4D5BE2875E1985BB600EE /* Observable+Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Single.swift"; path = "RxSwift/Observables/Observable+Single.swift"; sourceTree = ""; }; - 5976E4B60A9C51B552357148FAD0E684 /* ControlEvent.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlEvent.swift; path = RxCocoa/Common/CocoaUnits/ControlEvent.swift; sourceTree = ""; }; - 5D45EE640C2A7337A3E1CA5B2B54853E /* RxCocoa.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxCocoa.xcconfig; sourceTree = ""; }; - 5D91E2AA569717D88A10F56B22AB4B73 /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; - 5F442A61878CC7EABCE01567AE475BB2 /* RxTableViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift; sourceTree = ""; }; - 60312B4B7E20AF978F46E2B41716E47B /* AdapterProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdapterProtocols.swift; path = Nimble/Adapters/AdapterProtocols.swift; sourceTree = ""; }; - 620FD3A730916E029434437C9525520F /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/Implementations/DistinctUntilChanged.swift; sourceTree = ""; }; - 621B6F8289FDA0601018C5EEFF550704 /* World.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = World.h; path = Quick/World.h; sourceTree = ""; }; - 6278EEFBE6B030D28ED0E3AB9F6983EE /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThanOrEqualTo.swift; path = Nimble/Matchers/BeGreaterThanOrEqualTo.swift; sourceTree = ""; }; - 62ADF8CA32D438481AC9D4F39918FBB1 /* RxCollectionViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift; sourceTree = ""; }; - 647148ACCD987D2CD868F5A743C814C1 /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; + 5369B1758FB3678CB068E0311581A216 /* RxTableViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift; sourceTree = ""; }; + 536E2587935CB100C8A289D71B3922A1 /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Implementations/Take.swift; sourceTree = ""; }; + 55125FED51B4A1C8F88E5E5C14A73450 /* ControlTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlTarget.swift; path = RxCocoa/Common/Observables/Implementations/ControlTarget.swift; sourceTree = ""; }; + 555ABDAE3554117683373A6BF333F6CE /* BeEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeEmpty.swift; path = Nimble/Matchers/BeEmpty.swift; sourceTree = ""; }; + 56557B1B1ACBF8792DC063BB44AC26C1 /* SourceLocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourceLocation.swift; path = Nimble/Utils/SourceLocation.swift; sourceTree = ""; }; + 56D814F83C5D2604E120A2E475CDDE5B /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/Implementations/ElementAt.swift; sourceTree = ""; }; + 5715F1D5FE43EDAA3D5433783793F132 /* NSObject+Rx+RawRepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+RawRepresentable.swift"; path = "RxCocoa/Common/Observables/NSObject+Rx+RawRepresentable.swift"; sourceTree = ""; }; + 589DEA4B1D6ACF0F1E0613741F11A675 /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Implementations/Deferred.swift; sourceTree = ""; }; + 5920D6F229288982F67CD980B4310933 /* _RXDelegateProxy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXDelegateProxy.m; path = RxCocoa/Common/_RXDelegateProxy.m; sourceTree = ""; }; + 59B779EB814A3E4141959D29B28A2A7E /* _RXKVOObserver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXKVOObserver.h; path = RxCocoa/Common/_RXKVOObserver.h; sourceTree = ""; }; + 5B3E7402372AFAC94C25ED6F3C9F21FE /* ExampleMetadata.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleMetadata.swift; path = Quick/ExampleMetadata.swift; sourceTree = ""; }; + 5CCC4BDD19C31493E3BBFEE0721D95B6 /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/Implementations/SkipUntil.swift; sourceTree = ""; }; + 5EF98A6DE6E533C38537E34E2DF35FBC /* MatcherProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherProtocols.swift; path = Nimble/Matchers/MatcherProtocols.swift; sourceTree = ""; }; + 60641188C9C660FCC478943FF4D4816A /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Implementations/Range.swift; sourceTree = ""; }; + 618F5E56B2A6FC37351C5C1AE58F8495 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; + 61ABCF25085B470DE27AFE7F4237290C /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Quick/Filter.swift; sourceTree = ""; }; + 61E2B3B9BF24496F8F074B6A7567A8AF /* DSL+Wait.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DSL+Wait.swift"; path = "Nimble/DSL+Wait.swift"; sourceTree = ""; }; + 636794D65F93F393CF47578BEDF5A6E7 /* DSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = DSL.m; path = Nimble/objc/DSL.m; sourceTree = ""; }; + 63D7FF86975C60085381E3853F046770 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 64D8C78125A70ED0C8C1C69D7A363395 /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; 65208932D24057657CBF9E8EA1DD5980 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 66DF41528ADD55CAA61F2312AC692AA4 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThanOrEqual.swift; path = Nimble/Matchers/BeLessThanOrEqual.swift; sourceTree = ""; }; - 676593B34C70A0D15B5241549B20D915 /* Callsite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Callsite.swift; path = Quick/Callsite.swift; sourceTree = ""; }; - 68C4E5BDF28682E1099CC7E9BD6B556D /* DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DSL.h; path = Nimble/objc/DSL.h; sourceTree = ""; }; - 69A767DA48770146A2650D8FAAA48D5B /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; - 6A020C902166597A72A982F88204C4E4 /* RefCount.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCount.swift; path = RxSwift/Observables/Implementations/RefCount.swift; sourceTree = ""; }; + 65D4B54BD8014F2C4D341991F579090A /* Expectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expectation.swift; path = Nimble/Expectation.swift; sourceTree = ""; }; + 661EB02883EF30EF676A1A85103B8AD6 /* QuickConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickConfiguration.m; path = Quick/Configuration/QuickConfiguration.m; sourceTree = ""; }; + 665611D0B629D7060B4D67D6976EB27B /* Contain.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Contain.swift; path = Nimble/Matchers/Contain.swift; sourceTree = ""; }; + 66F62373F11D5D7CD6E6889AC828A36E /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Implementations/Merge.swift; sourceTree = ""; }; + 678278BBC2928244DF8C062793B207C6 /* _RX.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RX.m; path = RxCocoa/Common/_RX.m; sourceTree = ""; }; + 68091D4E864C63E1656C76DE3E16E2A8 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = RxSwift/DataStructures/Queue.swift; sourceTree = ""; }; + 69C59401595D643C48952856F4FF9ED9 /* Observable+Time.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Time.swift"; path = "RxSwift/Observables/Observable+Time.swift"; sourceTree = ""; }; 6B51AD3AC9E5042F47B6E42B82178ED4 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 6C326129B219BC8FD5C395449B2C2CBD /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/Implementations/SkipUntil.swift; sourceTree = ""; }; - 6E263D3FCA84FB00B80CE1A5470E4999 /* Nimble.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Nimble.xcconfig; sourceTree = ""; }; - 6E959C073BE8B454A04820866EE721CA /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/Implementations/ObserveOn.swift; sourceTree = ""; }; - 6F1EF12172398D5FD7ACC6F709C8ADC5 /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; - 7016E942AE4A0D114196611D832ACDF4 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Quick/Filter.swift; sourceTree = ""; }; - 711B1FF93206DADEAB81AA7B2B7D374E /* ObjCMatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjCMatcher.swift; path = Nimble/Wrappers/ObjCMatcher.swift; sourceTree = ""; }; - 716DF7D88D9098A5C4DDB6A8F8DCB492 /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Implementations/Empty.swift; sourceTree = ""; }; - 719FC95AEAAB6F6D4A987E7230BA3F5F /* Driver+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Subscription.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/Driver+Subscription.swift"; sourceTree = ""; }; - 71FEEA21C1440131C7B6BCC33C04DCCB /* Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Driver.swift; path = RxCocoa/Common/CocoaUnits/Driver/Driver.swift; sourceTree = ""; }; - 721F621350EFF2B69B2906E6713EBD68 /* SynchronizedSubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedSubscribeType.swift; path = RxSwift/Concurrency/SynchronizedSubscribeType.swift; sourceTree = ""; }; - 72ABEC03004956AA843B63941B391EA5 /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RxSwift.modulemap; sourceTree = ""; }; - 75307EA93E437E56D6F308F6FF3F3E91 /* _RXSwizzling.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXSwizzling.m; path = RxCocoa/Common/_RXSwizzling.m; sourceTree = ""; }; - 75848AAC5E1425737149F92C0036EFAC /* Observable+Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Debug.swift"; path = "RxSwift/Observables/Observable+Debug.swift"; sourceTree = ""; }; - 7748143504951DA4285FA3AC024B420C /* RxCocoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoa.h; path = RxCocoa/RxCocoa.h; sourceTree = ""; }; - 7799EB0E5B7A4861D593F0837C63C80E /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/ScheduledItem.swift; sourceTree = ""; }; + 6B7A95CD86CC97C57FCA56128F92D4D7 /* FailureMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FailureMessage.swift; path = Nimble/FailureMessage.swift; sourceTree = ""; }; + 6B8185140677A481781332D40BAD805B /* _RXSwizzling.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXSwizzling.h; path = RxCocoa/Common/_RXSwizzling.h; sourceTree = ""; }; + 6BBA7A3AC4847165B293B4934173AB86 /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/Implementations/DistinctUntilChanged.swift; sourceTree = ""; }; + 6C04402FD45FB0175B2825E004971407 /* BeCloseTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeCloseTo.swift; path = Nimble/Matchers/BeCloseTo.swift; sourceTree = ""; }; + 6C07A49A99A3C40BFDD037516E330A1A /* Quick-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-prefix.pch"; sourceTree = ""; }; + 6CA03372E8CFB26F0C771CDFC0D8D29B /* UISlider+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISlider+Rx.swift"; path = "RxCocoa/iOS/UISlider+Rx.swift"; sourceTree = ""; }; + 6D3E219956D8E0F27D7BE771578EC2AA /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 717FE6F478655CA66A4496D0A02F5FE2 /* NMBExceptionCapture.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBExceptionCapture.m; path = Nimble/objc/NMBExceptionCapture.m; sourceTree = ""; }; + 71FABCCA7F9580B6D2490461BD611901 /* World+DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "World+DSL.swift"; path = "Quick/DSL/World+DSL.swift"; sourceTree = ""; }; + 735B552A3B81164E68CD456E6032DBC0 /* UIScrollView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIScrollView+Rx.swift"; path = "RxCocoa/iOS/UIScrollView+Rx.swift"; sourceTree = ""; }; + 7399C39289C4E22A1DB50C8B944CDCB9 /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Implementations/Map.swift; sourceTree = ""; }; + 7573DC7675C1FE797617B3A6AF323B3B /* Logging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Logging.swift; path = RxCocoa/Common/Logging.swift; sourceTree = ""; }; + 759AF22407C57226C8C5E88D895E1192 /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; + 770C0369AE93125C223FBEF7C9E48FAA /* KVOObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVOObserver.swift; path = RxCocoa/Common/Observables/Implementations/KVOObserver.swift; sourceTree = ""; }; 77A7E3D7D13262DAAD907A41D8595F31 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 77BD6AC079287430D9B6C5A4D2F853AB /* StableCompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StableCompositeDisposable.swift; path = RxSwift/Disposables/StableCompositeDisposable.swift; sourceTree = ""; }; - 7840D877B39F7B0C475A3CE4078F1F93 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Quick/Configuration/Configuration.swift; sourceTree = ""; }; - 7977F35269B5E75AAE6D8D7BF6A6271B /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Implementations/Debug.swift; sourceTree = ""; }; + 7897D286EA02AAFF268BA0BD774C559E /* Sequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sequence.swift; path = RxSwift/Observables/Implementations/Sequence.swift; sourceTree = ""; }; + 7921F1420AD083E1D9DC5CDCBE1C94E5 /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; + 7942AF174140A6273854BFE369AA418D /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; 79A9DEDC89FE8336BF5FEDAAF75BF7FC /* Pods.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = Pods.modulemap; sourceTree = ""; }; + 7B38F003E4FF76D98A91DDB9578E1574 /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/Implementations/ObserveOn.swift; sourceTree = ""; }; + 7B70F663011E708A1C707C071464AA65 /* UITextField+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextField+Rx.swift"; path = "RxCocoa/iOS/UITextField+Rx.swift"; sourceTree = ""; }; 7CC1933144617C8FE21FC8C0B0D9E482 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 7F0CDC526B64CBFCC2D0BA6FAF71FB4B /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; - 7F60E02AD620518DE4187779D601D9CE /* RxCollectionViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift; sourceTree = ""; }; - 7F9D7E8AABBF9EF914AE07C1E8D22424 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Nimble/DSL.swift; sourceTree = ""; }; - 7FD93714CC66807F92BFABF29378A3D3 /* DelegateProxyType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxyType.swift; path = RxCocoa/Common/DelegateProxyType.swift; sourceTree = ""; }; + 7D9673655F1202774F93D5EF882C1DF1 /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; + 7DF46426F6CA345FC0C6BBF03E700D49 /* Observable+Creation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Creation.swift"; path = "RxSwift/Observables/Observable+Creation.swift"; sourceTree = ""; }; + 8028ADF9BD8375F2D5E3E389430670D2 /* InvocableScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableScheduledItem.swift; path = RxSwift/Schedulers/InvocableScheduledItem.swift; sourceTree = ""; }; + 80346C899F761612BEF8C3459A6F0F9E /* RxTableViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift; sourceTree = ""; }; + 808C133A0C38919540482FEE02529A8D /* Quick.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = Quick.modulemap; sourceTree = ""; }; 8099B29371BD8A22610CE4506655C591 /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 83B06E664608F2502D5271D3FA1230A4 /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; - 83F041F0A127B4AF0A5AB6914E8EB630 /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Implementations/Concat.swift; sourceTree = ""; }; - 84187A6D1C5DF52C2350939345D492C6 /* RaisesException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RaisesException.swift; path = Nimble/Matchers/RaisesException.swift; sourceTree = ""; }; - 846C858626A3167F43C71A44B8137E74 /* BeNil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeNil.swift; path = Nimble/Matchers/BeNil.swift; sourceTree = ""; }; - 848C18AD323097DD667D398E35C4501B /* World+DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "World+DSL.swift"; path = "Quick/DSL/World+DSL.swift"; sourceTree = ""; }; - 84C297F08F58EAEFD2F6A171E3658D1B /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; - 855664731536D04DA3043D9B1B96F6C2 /* Quick-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-umbrella.h"; sourceTree = ""; }; - 861F5443554B9A5F40418F73845339F1 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 80AA56B1B5E90C0E0056F07CFA33E03C /* ItemEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemEvents.swift; path = RxCocoa/iOS/Events/ItemEvents.swift; sourceTree = ""; }; + 81E6A87B8A065D7F3B558F2C6859A448 /* DelegateProxyType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxyType.swift; path = RxCocoa/Common/DelegateProxyType.swift; sourceTree = ""; }; + 82754B1048547A05031F62DAD4858122 /* World.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = World.swift; path = Quick/World.swift; sourceTree = ""; }; + 82F46CA8C51B741C815D09BF8B4F449E /* DispatchQueueSchedulerPriority.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueSchedulerPriority.swift; path = RxSwift/Schedulers/DispatchQueueSchedulerPriority.swift; sourceTree = ""; }; + 853501FE2DF6821DAC1D2951BC96A8DB /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/ScheduledItem.swift; sourceTree = ""; }; + 87471DBC3302D1D419A0D92D3F435E43 /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; 87B213035BAC5F75386F62D3C75D2342 /* Pods-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-acknowledgements.plist"; sourceTree = ""; }; - 88E68A5C5DA1B8D43ED12EB86459902F /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/Implementations/TakeUntil.swift; sourceTree = ""; }; + 88A7A16270583F0773A8B14CA14DA94F /* Functional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Functional.swift; path = Nimble/Utils/Functional.swift; sourceTree = ""; }; + 88E988C5DA0654B3CBF5BB052BE9B410 /* Deallocating.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deallocating.swift; path = RxCocoa/Common/Observables/Implementations/Deallocating.swift; sourceTree = ""; }; 894E5DA93A9F359521A89826BE6DA777 /* Pods-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-dummy.m"; sourceTree = ""; }; - 89A531697D92D99CAE6BF99C76E6A820 /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/Implementations/CombineLatest+arity.swift"; sourceTree = ""; }; - 8A72AABFFE33DCEB8601DDC71B235FF5 /* Observable+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Extensions.swift"; path = "RxSwift/Observable+Extensions.swift"; sourceTree = ""; }; - 8C924BE6D90EED302FD3638B24F1BB13 /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; - 8CB443C01B04CFD340C8F303BC1AA72F /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Implementations/Buffer.swift; sourceTree = ""; }; - 8D84E9A67B7FFBFFECD1B2CCDCC81721 /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/Implementations/ElementAt.swift; sourceTree = ""; }; - 8E2246AE4D0CABE813B9B83998C5C55E /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; - 8E34EFA722717F840DCA1C735ABA9544 /* BeIdenticalTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeIdenticalTo.swift; path = Nimble/Matchers/BeIdenticalTo.swift; sourceTree = ""; }; - 8FBE78DAD584698FD282DD61D5EBC573 /* Contain.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Contain.swift; path = Nimble/Matchers/Contain.swift; sourceTree = ""; }; - 9074E2CD379382DF310CB0FE22275C74 /* AssertionRecorder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionRecorder.swift; path = Nimble/Adapters/AssertionRecorder.swift; sourceTree = ""; }; + 8A5CB41370065E09BFABC4D48D896619 /* RefCount.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCount.swift; path = RxSwift/Observables/Implementations/RefCount.swift; sourceTree = ""; }; + 8D7A685B60034EBB4E63C465D8008F54 /* RxCLLocationManagerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCLLocationManagerDelegateProxy.swift; path = RxCocoa/Common/Proxies/RxCLLocationManagerDelegateProxy.swift; sourceTree = ""; }; + 8DAFE4ABDBC514BBE76C9D8D3913E786 /* Nimble.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = Nimble.modulemap; sourceTree = ""; }; + 8E51B0918C53FF2B2DCF6FBEB328CFEC /* Example.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Example.swift; path = Quick/Example.swift; sourceTree = ""; }; + 8EDF76DC53AB94AC8E6EFE81C315FA25 /* DeinitAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeinitAction.swift; path = RxCocoa/Common/Observables/Implementations/DeinitAction.swift; sourceTree = ""; }; + 8FB12536EC6691BB1C54E08F32DCBF7B /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; + 8FB589970C962E1EF6ADE189169F81FD /* _RXSwizzling.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXSwizzling.m; path = RxCocoa/Common/_RXSwizzling.m; sourceTree = ""; }; + 9027692736A439BE3B3955E664C1C79A /* ControlProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlProperty.swift; path = RxCocoa/Common/CocoaUnits/ControlProperty.swift; sourceTree = ""; }; + 923ED4FBFA12D720E45B11E93B0E889C /* DelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxy.swift; path = RxCocoa/Common/DelegateProxy.swift; sourceTree = ""; }; + 92CBC55BC6349FA716827DF31E6E3592 /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Implementations/Scan.swift; sourceTree = ""; }; 9383294D598DF59D13C1FB6CC455B273 /* RxViewModel.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxViewModel.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 954720B99845BBF73BC2DC6861C8557F /* Equal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Equal.swift; path = Nimble/Matchers/Equal.swift; sourceTree = ""; }; + 97739B773553EABB6EE683B8E7C401F6 /* ConnectableObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservable.swift; path = RxSwift/Observables/Implementations/ConnectableObservable.swift; sourceTree = ""; }; 977577C045EDA9D9D1F46E2598D19FC7 /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.debug.xcconfig; sourceTree = ""; }; - 977BE4CDEB254BE9519AEC3FBE0F3815 /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Implementations/Sample.swift; sourceTree = ""; }; - 97B28CB4E897103F382350BB5055CD7A /* RxTableViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift; sourceTree = ""; }; - 97C9C2D8C3D3C17F48C014C868B630CA /* _RX.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RX.h; path = RxCocoa/Common/_RX.h; sourceTree = ""; }; - 97D918B019FBF717EA0C78F7AA13432E /* Nimble-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-prefix.pch"; sourceTree = ""; }; - 9A50D80D51FE9BF5CA865E43CCEC6334 /* BeCloseTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeCloseTo.swift; path = Nimble/Matchers/BeCloseTo.swift; sourceTree = ""; }; - 9AA94FA3BEA21E28EFF25A239B3ED226 /* World+DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "World+DSL.h"; path = "Quick/DSL/World+DSL.h"; sourceTree = ""; }; + 97C5B368C9DFE9E606A4669CBED47525 /* ControlEvent.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlEvent.swift; path = RxCocoa/Common/CocoaUnits/ControlEvent.swift; sourceTree = ""; }; + 98D11EA888935A628F836F5EA0F4B756 /* ScheduledItemType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItemType.swift; path = RxSwift/Schedulers/ScheduledItemType.swift; sourceTree = ""; }; + 99CC9901327E1DEA90D53489BB1AC86B /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; + 9B2F863710EF743EBA917532D4DAF47D /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleXCTestHandler.swift; path = Nimble/Adapters/NimbleXCTestHandler.swift; sourceTree = ""; }; + 9B634E6465E7C25A976AD8ED3C77C1C3 /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; + 9BC5951735C5F6EA18DA67AC7873CF22 /* RxTableViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift; sourceTree = ""; }; 9BE1452AF861CAC81FDF2B1B853D8787 /* Observable + Operations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "Observable + Operations.swift"; sourceTree = ""; }; - 9C39A5E44A8B651BB1CEFAE38F872A96 /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; - 9DE2419359173399B1E754F4D135DA7D /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; - 9EE97937791B4782F0739AF1820590F8 /* RxAlertViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxAlertViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxAlertViewDelegateProxy.swift; sourceTree = ""; }; + 9C553036256B62564E4D8492111154EF /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Implementations/Timer.swift; sourceTree = ""; }; + 9CB7473E863AA6C71F69C471258AF7C5 /* UIActionSheet+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIActionSheet+Rx.swift"; path = "RxCocoa/iOS/UIActionSheet+Rx.swift"; sourceTree = ""; }; + 9CEC3F71D366F8108B6367EE32E95998 /* StableCompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StableCompositeDisposable.swift; path = RxSwift/Disposables/StableCompositeDisposable.swift; sourceTree = ""; }; + 9DD4DEB0DD4F34F675103CCD1B62157E /* BeLogical.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLogical.swift; path = Nimble/Matchers/BeLogical.swift; sourceTree = ""; }; + 9DF24A1794FAD3B5FF1DBDDF5B94D371 /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; + 9E3377475D573BAE3B60CCB9D8243047 /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; + 9E5835CFCEE7B51F8732493C99EDC237 /* KVORepresentable+CoreGraphics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+CoreGraphics.swift"; path = "RxCocoa/Common/KVORepresentable+CoreGraphics.swift"; sourceTree = ""; }; + 9EE41AF090FC632BC4DFE810009FE26E /* RxTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTarget.swift; path = RxCocoa/Common/RxTarget.swift; sourceTree = ""; }; + 9F1FC37D81D90BF69B27B974909461BF /* RxCocoa-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-prefix.pch"; sourceTree = ""; }; + 9F4EA0951090CB207280EDF22B33DED0 /* QuickSpec.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickSpec.m; path = Quick/QuickSpec.m; sourceTree = ""; }; + 9F604671628815BCC898D75FDEA1A36E /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; 9FA8C99BDA88331103A6B1E2ACE8394B /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/System/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; - 9FE422556D9E4587B5454E739333A0D7 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - A038CEF95F7A2C061E11F117ABB2EA3B /* ObserverType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObserverType+Extensions.swift"; path = "RxSwift/ObserverType+Extensions.swift"; sourceTree = ""; }; - A072804A7541C17A1D75E9C38F17D6B3 /* UITextField+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextField+Rx.swift"; path = "RxCocoa/iOS/UITextField+Rx.swift"; sourceTree = ""; }; - A1121DEB33BFB6933F2528F80A7A91EE /* World.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = World.swift; path = Quick/World.swift; sourceTree = ""; }; - A22BE4E45F0E081F915C9610EB873A9D /* Nimble-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-umbrella.h"; sourceTree = ""; }; - A2409C5A0C0CBBB302740DE0CE39C88E /* NMBExceptionCapture.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBExceptionCapture.m; path = Nimble/objc/NMBExceptionCapture.m; sourceTree = ""; }; + A04EB0B5B16C8CEBB397BA1ECC758EB2 /* UIControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIControl+Rx.swift"; path = "RxCocoa/iOS/UIControl+Rx.swift"; sourceTree = ""; }; + A084BED264B6528A10964FB9C865A01D /* ThrowError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowError.swift; path = Nimble/Matchers/ThrowError.swift; sourceTree = ""; }; + A08CAE5C64495158660C39CE9E3B6E39 /* _RX.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RX.h; path = RxCocoa/Common/_RX.h; sourceTree = ""; }; + A1D1921164D227854B314A963190B39B /* KVORepresentable+Swift.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+Swift.swift"; path = "RxCocoa/Common/KVORepresentable+Swift.swift"; sourceTree = ""; }; A274000F72FF57541406AC7960CD87EF /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - A4B206C5A7482E99F05F1D70BC73086D /* Observable+Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Binding.swift"; path = "RxSwift/Observables/Observable+Binding.swift"; sourceTree = ""; }; - A788A7AFBDB630B9E55AB7928FB9AD43 /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Implementations/Throttle.swift; sourceTree = ""; }; - A79CBC9FA88AEBF8FD503B0AD6773AD4 /* Deallocating.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deallocating.swift; path = RxCocoa/Common/Observables/Implementations/Deallocating.swift; sourceTree = ""; }; - A8592E7001E03D33C2EB27C79FD8D1DE /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Implementations/Just.swift; sourceTree = ""; }; - A99087D4B3FC99BBDEFA644D079015C1 /* ControlProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlProperty.swift; path = RxCocoa/Common/CocoaUnits/ControlProperty.swift; sourceTree = ""; }; - A9A2D846B03C92B3B54E3CB953AD3439 /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/Implementations/ToArray.swift; sourceTree = ""; }; - AB21AC40AC486142D4927E49C1F55B29 /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/Implementations/WithLatestFrom.swift; sourceTree = ""; }; - ABB9E857555505F6C442ADE199AC4463 /* ObserveOnSerialDispatchQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOnSerialDispatchQueue.swift; path = RxSwift/Observables/Implementations/ObserveOnSerialDispatchQueue.swift; sourceTree = ""; }; - AC7FA94CCE44E93C1D25D2ADFD541058 /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; - ACC187B85735345246A380AB65D3C1B0 /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/Implementations/TakeLast.swift; sourceTree = ""; }; - AD30AC8335AB322E76C999FFCBF4AB47 /* RxCocoa-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-umbrella.h"; sourceTree = ""; }; - AD7FB07C4DE4E0ABD8E8A842ACB11E0C /* RxTableViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift; sourceTree = ""; }; - ADFD47AABABDB001922A246221E65FDA /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Implementations/Take.swift; sourceTree = ""; }; - AEB11046C81ABDED672BC78A7F3FB452 /* UISlider+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISlider+Rx.swift"; path = "RxCocoa/iOS/UISlider+Rx.swift"; sourceTree = ""; }; - AEEE8554C1D671925C6ADAA942C4FED3 /* DispatchQueueSchedulerPriority.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueSchedulerPriority.swift; path = RxSwift/Schedulers/DispatchQueueSchedulerPriority.swift; sourceTree = ""; }; + A32ADE721CA95AFDB5F113DD9C757600 /* Observable+Concurrency.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Concurrency.swift"; path = "RxSwift/Observables/Observable+Concurrency.swift"; sourceTree = ""; }; + A4EBE78F08CAF0EE3CCD466260124052 /* Quick.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Quick.h; path = Quick/Quick.h; sourceTree = ""; }; + A50485E481A84BE71BF6C6A50122D7ED /* Observable+StandardSequenceOperators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+StandardSequenceOperators.swift"; path = "RxSwift/Observables/Observable+StandardSequenceOperators.swift"; sourceTree = ""; }; + A6685BB0EBBB2FCCB339E22A72A2BD5B /* Nimble-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-prefix.pch"; sourceTree = ""; }; + A7BF3D9C0DB4974103CF27272594A716 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; + A8EF3513D1B63AD0D6498510CB8A2C2E /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; + A9BDD953D4A49F0D098D1879D28BF30F /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; + AA73C89836EA44E053FA87395A20E84F /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = RxSwift/DataStructures/Bag.swift; sourceTree = ""; }; + AA7F195B3F39D19A812A1F222B736499 /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Implementations/Catch.swift; sourceTree = ""; }; + AAB485B7259CC802C69B2E31389CD047 /* Window.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Window.swift; path = RxSwift/Observables/Implementations/Window.swift; sourceTree = ""; }; + AB4547B2BB622839AA5708674F1D147E /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Implementations/Just.swift; sourceTree = ""; }; + AF6875A65087E7134F2DDBB26663183C /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThanOrEqualTo.swift; path = Nimble/Matchers/BeGreaterThanOrEqualTo.swift; sourceTree = ""; }; + AF718324F2D68CD303A31E2986375896 /* AnonymousInvocable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousInvocable.swift; path = RxSwift/Schedulers/AnonymousInvocable.swift; sourceTree = ""; }; + B00CCC663F71B4DAB9F282C0F1F12375 /* RxSearchBarDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxSearchBarDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift; sourceTree = ""; }; B023B655568A2339153A3EE406C638C0 /* RxViewModel.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxViewModel.xcconfig; sourceTree = ""; }; - B2C374093FD81C7362B5C31C0E24B0DF /* Stringers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stringers.swift; path = Nimble/Utils/Stringers.swift; sourceTree = ""; }; - B35E59A8D8A2AB7EB8F07C4B4E5F9C15 /* MatcherFunc.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherFunc.swift; path = Nimble/Wrappers/MatcherFunc.swift; sourceTree = ""; }; - B4634CEAC67AFD4A30CC348ED2C01A16 /* RxCLLocationManagerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCLLocationManagerDelegateProxy.swift; path = RxCocoa/Common/Proxies/RxCLLocationManagerDelegateProxy.swift; sourceTree = ""; }; - B47431C709D59719FD27EE23C5D3DFCD /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Implementations/Sink.swift; sourceTree = ""; }; - B48AA326C2517B4A3AD46710CAFABEB3 /* Quick-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-prefix.pch"; sourceTree = ""; }; - B67B9DC0DD7F425E986B5A23737BF1AE /* Variable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Variable.swift; path = RxSwift/Subjects/Variable.swift; sourceTree = ""; }; - B7486859C828FCAE8A4248720078577A /* RxCocoa-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxCocoa-dummy.m"; sourceTree = ""; }; - B8E7A38730430C243D0EF0B47E95682D /* EndWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EndWith.swift; path = Nimble/Matchers/EndWith.swift; sourceTree = ""; }; - B900E0C494CB8E8E28199EA601D10E98 /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Implementations/Merge.swift; sourceTree = ""; }; - B919E4A1CC4CB44A17090E82AA072183 /* AssertionDispatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionDispatcher.swift; path = Nimble/Adapters/AssertionDispatcher.swift; sourceTree = ""; }; + B099697B884818E7E6787FB34D19E211 /* UITableView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITableView+Rx.swift"; path = "RxCocoa/iOS/UITableView+Rx.swift"; sourceTree = ""; }; + B457A6AF4CD5E7C80CC8DCF0DAE8BE20 /* QCKDSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QCKDSL.h; path = Quick/DSL/QCKDSL.h; sourceTree = ""; }; + B60BC241B804A367AE8A6FC5F1075944 /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; + B6675BF92A81734F5665E4B57A66191B /* Observable+Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Binding.swift"; path = "RxSwift/Observables/Observable+Binding.swift"; sourceTree = ""; }; + B6EBDBEA168F789D06B877D03D8C88C5 /* QuickConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickConfiguration.h; path = Quick/Configuration/QuickConfiguration.h; sourceTree = ""; }; + B895EA7CD2498F6E35257DB645382D29 /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; BA6428E9F66FD5A23C0A2E06ED26CD2F /* Podfile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - BA64B6BF6E6FA979522A45111F0525A4 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Quick/DSL/DSL.swift; sourceTree = ""; }; - BA8E627603798B25C0B0E5065A21D083 /* BeginWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeginWith.swift; path = Nimble/Matchers/BeginWith.swift; sourceTree = ""; }; + BAC8F469BBDFD201243931A361BFDA78 /* Zip+CollectionType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+CollectionType.swift"; path = "RxSwift/Observables/Implementations/Zip+CollectionType.swift"; sourceTree = ""; }; BAD68D5948AAD143EF5DF6DBAFC31034 /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - BBC998D496E40CE591FF8B166F969AA5 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - BD7D6E8CE23EC55E42632BF972AF293A /* FlatMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FlatMap.swift; path = RxSwift/Observables/Implementations/FlatMap.swift; sourceTree = ""; }; - BF03384A224C7C49FE089A977469D9CE /* Observable+StandardSequenceOperators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+StandardSequenceOperators.swift"; path = "RxSwift/Observables/Observable+StandardSequenceOperators.swift"; sourceTree = ""; }; - BF279331494C822EF388781ECCDC2EBC /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; - C09CA00328A4226DC4368D404EFCCA70 /* FailureMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FailureMessage.swift; path = Nimble/FailureMessage.swift; sourceTree = ""; }; - C158F8BDAB04FDB093F59DD7AF0034D0 /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; - C37BE81A0CE9050DDC7110C02E771FF6 /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Implementations/Generate.swift; sourceTree = ""; }; - C7AF430162E5A114E7FBB75DA3A409E0 /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; - C7C551CEED21EF475F84419D3389E46D /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; - C85070A5252E0027FF243A420683C390 /* UIImageView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Rx.swift"; path = "RxCocoa/iOS/UIImageView+Rx.swift"; sourceTree = ""; }; - C8F63C76413A928999F69517FDE355F6 /* Example.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Example.swift; path = Quick/Example.swift; sourceTree = ""; }; - CA87AB80A3E1ACAF8912EA7A7A391EE5 /* RxScrollViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxScrollViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift; sourceTree = ""; }; - CA8BB4040BEAF26ADB45045A304B59E8 /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Implementations/Range.swift; sourceTree = ""; }; - CAE5F0F54B6CA4C21F28816D1336D7F7 /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; - CB6D29C2832637F8C1A07C85C55869A7 /* RxTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTarget.swift; path = RxCocoa/Common/RxTarget.swift; sourceTree = ""; }; - CBB3F9C7669D32D842DE9EDD75ED00B0 /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/Implementations/DelaySubscription.swift; sourceTree = ""; }; + BB207DE8AF3E7B9EBF924BCBB0A40DA3 /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Implementations/Never.swift; sourceTree = ""; }; + BCB8D9B11B68159F9A1FC6AF9F5E3B7F /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/Implementations/CombineLatest.swift; sourceTree = ""; }; + BD376C8DBAB95C460CB607A71EE44CFB /* RxBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxBox.swift; path = RxSwift/RxBox.swift; sourceTree = ""; }; + BED4B116D8E1664F18C1B1895DDC84AD /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Implementations/Zip.swift; sourceTree = ""; }; + BEEFE7D9752C014AFE138D5283A4EED8 /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/Implementations/CombineLatest+arity.swift"; sourceTree = ""; }; + BF1E353332B68B05530985AD9DC5B24F /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Implementations/Switch.swift; sourceTree = ""; }; + C0FFE08D35888481F6691CC544F6291D /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Implementations/Using.swift; sourceTree = ""; }; + C12E9E0536F109FD5CB0FE545B5A4C5C /* Nimble.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Nimble.xcconfig; sourceTree = ""; }; + C14BC8D859C676A34926954CA95588CD /* ObjCExpectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjCExpectation.swift; path = Nimble/ObjCExpectation.swift; sourceTree = ""; }; + C1C5893D5334F7E6C2AE7F0C53DED598 /* AnonymousObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObservable.swift; path = RxSwift/Observables/Implementations/AnonymousObservable.swift; sourceTree = ""; }; + C1EE641DDD264282CAB32BE7D2347BA1 /* Nimble-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-umbrella.h"; sourceTree = ""; }; + C4D3C92CA79CC7E3348BD45A3BCB570A /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RxSwift.modulemap; sourceTree = ""; }; + C5203040A4AEDB1CB47508D08CA9917F /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; + C62F8CCD794858ADBC4A92B49002B821 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Implementations/Filter.swift; sourceTree = ""; }; + C67BE22535E8CD7AA51FC384D8CDDA12 /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/Implementations/DelaySubscription.swift; sourceTree = ""; }; + C69D7E0ED6223B221E40C5D03D81EB2D /* NSNotificationCenter+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSNotificationCenter+Rx.swift"; path = "RxCocoa/Common/Observables/NSNotificationCenter+Rx.swift"; sourceTree = ""; }; + C6F0C341DE00793E810579774936FE92 /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/Implementations/SubscribeOn.swift; sourceTree = ""; }; + C7009C6DD0F337915BA03F2CE49A1C15 /* RxCocoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoa.h; path = RxCocoa/RxCocoa.h; sourceTree = ""; }; + C7266268CE1FE0350B58F4F5FDB9DAE4 /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; + C8529ECA5C586B778AD5A79D247B267E /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; + C8BF6E9BA570DC6F24B2746C03BF36BB /* Observable+Aggregate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Aggregate.swift"; path = "RxSwift/Observables/Observable+Aggregate.swift"; sourceTree = ""; }; + C9265016DED23A992EA8F3CDB9FBD629 /* RxCocoa.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RxCocoa.modulemap; sourceTree = ""; }; + CB74AD557DB4673481B5FC96898249D4 /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; CBC0F7C552B739C909B650A0F42F7F38 /* Pods-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-resources.sh"; sourceTree = ""; }; - CCED0E40CD9DC1C2ED678A7D1F149A8E /* QuickConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickConfiguration.m; path = Quick/Configuration/QuickConfiguration.m; sourceTree = ""; }; - CCF5CF30005BDD7EDBE2F72F21C6C179 /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Implementations/Skip.swift; sourceTree = ""; }; - CD5E8EF3F8D1CBF737BD2454706E2382 /* Observable+Concurrency.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Concurrency.swift"; path = "RxSwift/Observables/Observable+Concurrency.swift"; sourceTree = ""; }; - CD815A5A99E0BB56AD79FC3F9C8AAFDC /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Implementations/Zip.swift; sourceTree = ""; }; - CDAFB4E1ED30C2B7B4F0BC9BEBCD4E62 /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; - CDBD14EABE18002AE153AB141B423F89 /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Implementations/Producer.swift; sourceTree = ""; }; - CF7D3EA8386497657852A7CF710D57E9 /* UISwitch+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISwitch+Rx.swift"; path = "RxCocoa/iOS/UISwitch+Rx.swift"; sourceTree = ""; }; + CC5A18CC190429427C7BD59CBBA630D3 /* RefCountDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCountDisposable.swift; path = RxSwift/Disposables/RefCountDisposable.swift; sourceTree = ""; }; + CF31BF407F9C0BB04874E440D1281FB7 /* KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVORepresentable.swift; path = RxCocoa/Common/KVORepresentable.swift; sourceTree = ""; }; + CF3A015F9C94146E9CFC03C3F313068B /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; + CF4ACB9F8D0BE8FD4E98074BB4D41C47 /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; + CF8F406F429A64F8560F1457CFFFDACF /* Observable+Multiple.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Multiple.swift"; path = "RxSwift/Observables/Observable+Multiple.swift"; sourceTree = ""; }; D0405803033A2A777B8E4DFA0C1800ED /* Pods-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-acknowledgements.markdown"; sourceTree = ""; }; - D203DD4D070439D33D6A186B1989AF3A /* NSObject+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx.swift"; path = "RxCocoa/Common/Observables/NSObject+Rx.swift"; sourceTree = ""; }; - D3B761926C010F01CC7A43484BC4A26F /* UIBarButtonItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIBarButtonItem+Rx.swift"; path = "RxCocoa/iOS/UIBarButtonItem+Rx.swift"; sourceTree = ""; }; - D3C9C2CA7C7F3493302CEE45B5FEB5B6 /* RxActionSheetDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxActionSheetDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxActionSheetDelegateProxy.swift; sourceTree = ""; }; - D3CF858E9596F11BE3F20B2738C11D9B /* NSNotificationCenter+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSNotificationCenter+Rx.swift"; path = "RxCocoa/Common/Observables/NSNotificationCenter+Rx.swift"; sourceTree = ""; }; - D546CDC51A2B68A69B18FB861578BC92 /* Quick-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Quick-dummy.m"; sourceTree = ""; }; - D5F51A8DB7A24179289EC3896870A33A /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/Implementations/TakeWhile.swift; sourceTree = ""; }; - D61639B81197A5761B9C63F12FC3D901 /* DeinitAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeinitAction.swift; path = RxCocoa/Common/Observables/Implementations/DeinitAction.swift; sourceTree = ""; }; - D6349EB4116596770D5ACAC77331FFC3 /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Implementations/Reduce.swift; sourceTree = ""; }; - D75BAF9F860D7B9132609905D532801C /* BeAKindOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAKindOf.swift; path = Nimble/Matchers/BeAKindOf.swift; sourceTree = ""; }; - D9EA4A123895DC00E865EB345D15BFA3 /* NMBExceptionCapture.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBExceptionCapture.h; path = Nimble/objc/NMBExceptionCapture.h; sourceTree = ""; }; + D0D4F9A8E177DFF14D2F956639EBD48D /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/Implementations/TakeUntil.swift; sourceTree = ""; }; + D13B4C4657F1B1A74A55528A47EEFCEE /* NSString+QCKSelectorName.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSString+QCKSelectorName.m"; path = "Quick/NSString+QCKSelectorName.m"; sourceTree = ""; }; + D32570E3702A2CA017BC7CE63E489DA1 /* Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Driver.swift; path = RxCocoa/Common/CocoaUnits/Driver/Driver.swift; sourceTree = ""; }; + D3B7F73A557870C9A6C543B0B2A5ECCA /* ImmediateScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateScheduler.swift; path = RxSwift/Schedulers/ImmediateScheduler.swift; sourceTree = ""; }; + D3BC54443407FA6EA5A51A912E4D9330 /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Implementations/Sample.swift; sourceTree = ""; }; + D5AEA58F0840D12561262A3075F19255 /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; + D6DE8AF314F8580A69ECC9C1BE253FF5 /* SingleAsync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAsync.swift; path = RxSwift/Observables/Implementations/SingleAsync.swift; sourceTree = ""; }; + D7114D3F0143B75A7C06F4BB8E655A6C /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; + D7D4F188C6337C18F6628EA0D724E912 /* UISwitch+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISwitch+Rx.swift"; path = "RxCocoa/iOS/UISwitch+Rx.swift"; sourceTree = ""; }; + D827BC2E8A02C11BD6B9CF6AFBB879C0 /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/Implementations/SkipWhile.swift; sourceTree = ""; }; DA312349A49333542E6F4B36B329960E /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.release.xcconfig; sourceTree = ""; }; - DB915CAB6564552D79A4C03C7EDAF418 /* ExampleHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleHooks.swift; path = Quick/Hooks/ExampleHooks.swift; sourceTree = ""; }; - DC07EFF850FA2505707D94F268443A28 /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; - DCA5215317464AC4EA073407712948D8 /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; + DA811EAF305882306461D825ABECDF55 /* QCKDSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QCKDSL.m; path = Quick/DSL/QCKDSL.m; sourceTree = ""; }; + DB53E3ADA163D632662BE585A559FC7F /* BeLessThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThan.swift; path = Nimble/Matchers/BeLessThan.swift; sourceTree = ""; }; + DB92FD0ED8B4E577D26620D1117D487C /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; + DBA03286BE95DC778D2B75C7715047BE /* NMBExceptionCapture.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBExceptionCapture.h; path = Nimble/objc/NMBExceptionCapture.h; sourceTree = ""; }; + DC24164C27FBE96E1BF7970C116CD4BF /* UIImageView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Rx.swift"; path = "RxCocoa/iOS/UIImageView+Rx.swift"; sourceTree = ""; }; + DC49151F6A6EE51798431569783E7E8F /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Implementations/Generate.swift; sourceTree = ""; }; + DCE9439768C33B06124378CF1F74EF34 /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/Implementations/WithLatestFrom.swift; sourceTree = ""; }; DCEE1E62C5EE69B227656C4BD1500384 /* RxViewModel-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxViewModel-umbrella.h"; sourceTree = ""; }; - DEBC89066198F06C60ED572BAB1C3277 /* Zip+CollectionType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+CollectionType.swift"; path = "RxSwift/Observables/Implementations/Zip+CollectionType.swift"; sourceTree = ""; }; - DF21A2A7653EF7DCB3A14EB032F49341 /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; - E1AAAAF7282E26D0C1B27BA6184E5306 /* NSString+QCKSelectorName.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSString+QCKSelectorName.h"; path = "Quick/NSString+QCKSelectorName.h"; sourceTree = ""; }; - E1B1DC4CD6D292C95C558277FC3797F4 /* UIButton+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Rx.swift"; path = "RxCocoa/iOS/UIButton+Rx.swift"; sourceTree = ""; }; - E2D5619623EE2F355F141B950AE0E213 /* AllPass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AllPass.swift; path = Nimble/Matchers/AllPass.swift; sourceTree = ""; }; - E36DA5CEC0BC84ADEFBBB07041F80D9E /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Implementations/Deferred.swift; sourceTree = ""; }; - E4D33A4839D7655D7AC021B9678921DC /* RxBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxBox.swift; path = RxSwift/RxBox.swift; sourceTree = ""; }; - E52B04F7B8CD13298E238E816836A14E /* CombineLatest+CollectionType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+CollectionType.swift"; path = "RxSwift/Observables/Implementations/CombineLatest+CollectionType.swift"; sourceTree = ""; }; - E5A3FADD331156041D29646F0A94BAEF /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = RxSwift/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; - E5E2EDE3179B69DA143B5CF56B48851E /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; - E6D9E3DB6053BC8CCDB99F71B0B03327 /* UISearchBar+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISearchBar+Rx.swift"; path = "RxCocoa/iOS/UISearchBar+Rx.swift"; sourceTree = ""; }; - E70357FF88CE8F56758295CA78D87AA3 /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; - E7E014CBA054C59A5FCA80FFA2A07244 /* UITextView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextView+Rx.swift"; path = "RxCocoa/iOS/UITextView+Rx.swift"; sourceTree = ""; }; + DD467BD8DAF758482FEF52B35C1E4F29 /* CLLocationManager+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CLLocationManager+Rx.swift"; path = "RxCocoa/Common/CLLocationManager+Rx.swift"; sourceTree = ""; }; + DD574066343290EB530217A0A6070AB6 /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; + DD654863A9FFDE1CA553FCF10D794FFC /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; + DE3AAE456D863F1B49A07D8D9C74DDF2 /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; + DEBBA970CF0BCB7422491673F960F0AF /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DF2EC7FB06ADB0708E8363ABD1A529CC /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; + DFF6880E6D321FD91906B7EF3F6E973C /* _RXKVOObserver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXKVOObserver.m; path = RxCocoa/Common/_RXKVOObserver.m; sourceTree = ""; }; + E0DA9989EFEFC1C87B7044A74842F68F /* AsyncMatcherWrapper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncMatcherWrapper.swift; path = Nimble/Wrappers/AsyncMatcherWrapper.swift; sourceTree = ""; }; + E147FD66EF593B3A7FFB688431FF87EC /* Observable+Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Single.swift"; path = "RxSwift/Observables/Observable+Single.swift"; sourceTree = ""; }; + E2418D4539AEBAD5AB79903535A90516 /* UISegmentedControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISegmentedControl+Rx.swift"; path = "RxCocoa/iOS/UISegmentedControl+Rx.swift"; sourceTree = ""; }; + E254D0FA25E45D3DEC3343352BAAF46A /* KVOObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVOObservable.swift; path = RxCocoa/Common/Observables/Implementations/KVOObservable.swift; sourceTree = ""; }; + E38689B19217A53700AD6E2912329494 /* RxScrollViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxScrollViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift; sourceTree = ""; }; + E3B31F78E2E8AD1A74BB93E0AB807472 /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; + E434229D854327B5166E099021AB2C96 /* Poll.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Poll.swift; path = Nimble/Utils/Poll.swift; sourceTree = ""; }; + E43580949E4A266F2FF7FE0A12FA4827 /* Driver+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Subscription.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/Driver+Subscription.swift"; sourceTree = ""; }; + E57A87F6D6479BF124B477B312716440 /* Quick-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-umbrella.h"; sourceTree = ""; }; + E6A2577B973AEC422592A8C321F2B708 /* BeAKindOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAKindOf.swift; path = Nimble/Matchers/BeAKindOf.swift; sourceTree = ""; }; + E719026C02B7C5BBE36BE443A1CD36E8 /* QuickSpec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickSpec.h; path = Quick/QuickSpec.h; sourceTree = ""; }; + E7456CE2F8D8AEE4A092F0F2BE565199 /* Nimble.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Nimble.h; path = Nimble/Nimble.h; sourceTree = ""; }; + E790B2298E9951AA9B3616DD079C014B /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; + E7D497D8A56693FBCCB0E15109E9CD72 /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Implementations/Skip.swift; sourceTree = ""; }; + E7EADC5F8AB6E21C05BA7CBF3343A66A /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/Implementations/TakeLast.swift; sourceTree = ""; }; E7F21354943D9F42A70697D5A5EF72E9 /* Pods-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-frameworks.sh"; sourceTree = ""; }; E8446514FBAD26C0E18F24A5715AEF67 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - E903ADB7D0BE9C512DB37F8617A9EAE0 /* Expectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expectation.swift; path = Nimble/Expectation.swift; sourceTree = ""; }; - EAB4AF917A69587F38A90FEFD2170452 /* Observable+Aggregate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Aggregate.swift"; path = "RxSwift/Observables/Observable+Aggregate.swift"; sourceTree = ""; }; - EB1A5249CE6A96DEEDF1CD6748F74D93 /* DSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = DSL.m; path = Nimble/objc/DSL.m; sourceTree = ""; }; - EBBCDF5ADFD265EC93DFFF7B40D7308B /* DSL+Wait.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DSL+Wait.swift"; path = "Nimble/DSL+Wait.swift"; sourceTree = ""; }; - ECFD20F48143B462EF801C2CB4F04C8C /* ControlTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlTarget.swift; path = RxCocoa/Common/Observables/Implementations/ControlTarget.swift; sourceTree = ""; }; - EE599BE05EB8F9026548B653EFE0456A /* UIStepper+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIStepper+Rx.swift"; path = "RxCocoa/iOS/UIStepper+Rx.swift"; sourceTree = ""; }; - EFB0F993121D74A856A31CA4FCBA5A54 /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Implementations/Using.swift; sourceTree = ""; }; - F1BA48126B8C837F687406E5E51B7F53 /* KVOObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVOObservable.swift; path = RxCocoa/Common/Observables/Implementations/KVOObservable.swift; sourceTree = ""; }; - F60BFE7B5FC2C0B533992CA4F0B18961 /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; - F66F3D525007F0884B2B2662EC1B4EA7 /* UISegmentedControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISegmentedControl+Rx.swift"; path = "RxCocoa/iOS/UISegmentedControl+Rx.swift"; sourceTree = ""; }; - F767782241C4B61653D82472DDDD3488 /* Poll.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Poll.swift; path = Nimble/Utils/Poll.swift; sourceTree = ""; }; - F79641FCE36B6CE9AFF76747D4C53ABE /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/Implementations/SubscribeOn.swift; sourceTree = ""; }; - F7A2C7273F5FE15F8D9988D85507F57D /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleXCTestHandler.swift; path = Nimble/Adapters/NimbleXCTestHandler.swift; sourceTree = ""; }; - F7A867480FE2A7C5CE8B674EEFF09590 /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; - F811E9065F93E232946CDFA9608645A2 /* KVOObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVOObserver.swift; path = RxCocoa/Common/Observables/Implementations/KVOObserver.swift; sourceTree = ""; }; - F828D956A4B95E63279D53E474090C09 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - F883D1274BED93DCFDED43F315237665 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; - FF2B73B4F8E58FF03ABDD8DFA6157835 /* UIDatePicker+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIDatePicker+Rx.swift"; path = "RxCocoa/iOS/UIDatePicker+Rx.swift"; sourceTree = ""; }; + E8786AA95E0F16E226F7083A064148D7 /* AdapterProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdapterProtocols.swift; path = Nimble/Adapters/AdapterProtocols.swift; sourceTree = ""; }; + EA5B8E06731177B3845436D6477E3E4A /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; + EC21EEB4A75650C1603E9B4F6B48EE57 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThanOrEqual.swift; path = Nimble/Matchers/BeLessThanOrEqual.swift; sourceTree = ""; }; + EC608B7C36B9EAF6DDBBAAD3576D9D80 /* RxCocoa.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCocoa.swift; path = RxCocoa/Common/RxCocoa.swift; sourceTree = ""; }; + EDD044C877A84C26DE2454976F4554A1 /* BeNil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeNil.swift; path = Nimble/Matchers/BeNil.swift; sourceTree = ""; }; + EFD77CFE8B32E2CC5FF01DD9FF6E3534 /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Implementations/Empty.swift; sourceTree = ""; }; + EFFDD4779DF565C0B366CC17E693DA1D /* Quick.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Quick.xcconfig; sourceTree = ""; }; + F1F12C3D12900252C217BE67AD87F87F /* BeIdenticalTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeIdenticalTo.swift; path = Nimble/Matchers/BeIdenticalTo.swift; sourceTree = ""; }; + F377D5AC803F858321F98675DD502AF5 /* RxCocoa-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxCocoa-dummy.m"; sourceTree = ""; }; + F656B49AAC99C3C36203180D1B9A2711 /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Implementations/Do.swift; sourceTree = ""; }; + F6D03D12E8FAB6F62CCAC73D1BE83763 /* World+DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "World+DSL.h"; path = "Quick/DSL/World+DSL.h"; sourceTree = ""; }; + F719EBA6222168F1FC859D658FAE541B /* FailWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FailWith.swift; path = RxSwift/Observables/Implementations/FailWith.swift; sourceTree = ""; }; + F785AD5690BC5718F5CADC2F982B825B /* CombineLatest+CollectionType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+CollectionType.swift"; path = "RxSwift/Observables/Implementations/CombineLatest+CollectionType.swift"; sourceTree = ""; }; + F8021E5D89C8ED8ADC18D2EC9E161662 /* BooleanDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BooleanDisposable.swift; path = RxSwift/Disposables/BooleanDisposable.swift; sourceTree = ""; }; + F8BBF406505BCDAD50C85A8B3C2FFE18 /* InvocableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableType.swift; path = RxSwift/Schedulers/InvocableType.swift; sourceTree = ""; }; + F9DCA9191E095089BE1DB5A56074C76D /* ObservableConvertibleType+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Driver.swift"; path = "RxCocoa/Common/CocoaUnits/Driver/ObservableConvertibleType+Driver.swift"; sourceTree = ""; }; + FA76B09BC8DDA06A5D050B11D182A766 /* RxCollectionViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift; sourceTree = ""; }; + FB680C80A639FB045A2713763FE9158B /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FCE223727C1469290B30AE7D5DEDA5F6 /* ShareReplay1.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplay1.swift; path = RxSwift/Observables/Implementations/ShareReplay1.swift; sourceTree = ""; }; + FD2822E94B8990E4673A22E2C229575F /* Observable+Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Debug.swift"; path = "RxSwift/Observables/Observable+Debug.swift"; sourceTree = ""; }; + FDE133BC5A2820E9A447EB50D18F1C7A /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Implementations/Reduce.swift; sourceTree = ""; }; + FE11866B85BC5F4A480944AF99FF737B /* SuiteHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SuiteHooks.swift; path = Quick/Hooks/SuiteHooks.swift; sourceTree = ""; }; + FE8BE52898C940FFA15D25F86CF426DB /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; + FF05D7DD591E1DFA668D36A13C8399B6 /* RxCollectionViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift; sourceTree = ""; }; + FFED7D5125E9E4D5EFF12F9845B54E01 /* UIBarButtonItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIBarButtonItem+Rx.swift"; path = "RxCocoa/iOS/UIBarButtonItem+Rx.swift"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -736,157 +766,178 @@ path = Classes; sourceTree = ""; }; - 264C63B86695C5B67AEEADD6179D5BD0 /* Frameworks */ = { + 22F2856656B2419B1F0B3493B499C340 /* RxSwift */ = { isa = PBXGroup; children = ( - A274000F72FF57541406AC7960CD87EF /* RxCocoa.framework */, - 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */, - 89905F5A36DDFB73A6F55467EE6072A0 /* iOS */, + 4A69237022F43A92BEA1F2485A6B7B14 /* AddRef.swift */, + 13E2481069D2D3F9E106CAE2FBBC7539 /* Amb.swift */, + 1F6DBF6D8329BC8C46E454408A2B2D22 /* AnonymousDisposable.swift */, + AF718324F2D68CD303A31E2986375896 /* AnonymousInvocable.swift */, + C1C5893D5334F7E6C2AE7F0C53DED598 /* AnonymousObservable.swift */, + A9BDD953D4A49F0D098D1879D28BF30F /* AnonymousObserver.swift */, + 7942AF174140A6273854BFE369AA418D /* AnyObserver.swift */, + 759AF22407C57226C8C5E88D895E1192 /* AsyncLock.swift */, + AA73C89836EA44E053FA87395A20E84F /* Bag.swift */, + CB74AD557DB4673481B5FC96898249D4 /* BehaviorSubject.swift */, + 140FCD3F618A2E1CA23161B81C19D371 /* BinaryDisposable.swift */, + F8021E5D89C8ED8ADC18D2EC9E161662 /* BooleanDisposable.swift */, + 288672EA423DE31264BEC43B7889E25D /* Buffer.swift */, + 00979EFA7F83AD637F723414D57417AD /* Cancelable.swift */, + AA7F195B3F39D19A812A1F222B736499 /* Catch.swift */, + BCB8D9B11B68159F9A1FC6AF9F5E3B7F /* CombineLatest.swift */, + BEEFE7D9752C014AFE138D5283A4EED8 /* CombineLatest+arity.swift */, + F785AD5690BC5718F5CADC2F982B825B /* CombineLatest+CollectionType.swift */, + 23D2BC7DB21DEE4C7A840CC953104F93 /* CompositeDisposable.swift */, + 18B24510B5AF73C6391CC621000AFADF /* Concat.swift */, + CF3A015F9C94146E9CFC03C3F313068B /* ConcurrentDispatchQueueScheduler.swift */, + C5203040A4AEDB1CB47508D08CA9917F /* ConcurrentMainScheduler.swift */, + 97739B773553EABB6EE683B8E7C401F6 /* ConnectableObservable.swift */, + DB92FD0ED8B4E577D26620D1117D487C /* ConnectableObservableType.swift */, + DD654863A9FFDE1CA553FCF10D794FFC /* CurrentThreadScheduler.swift */, + 0D9C8E7CDAED56716D01DABF9F26D61A /* Debug.swift */, + 589DEA4B1D6ACF0F1E0613741F11A675 /* Deferred.swift */, + C67BE22535E8CD7AA51FC384D8CDDA12 /* DelaySubscription.swift */, + 82F46CA8C51B741C815D09BF8B4F449E /* DispatchQueueSchedulerPriority.swift */, + 23E877D095D92AF0163E5C387773B9AE /* Disposable.swift */, + D5AEA58F0840D12561262A3075F19255 /* DisposeBag.swift */, + 24337844652E21267BDF4CA1101ED35C /* DisposeBase.swift */, + 6BBA7A3AC4847165B293B4934173AB86 /* DistinctUntilChanged.swift */, + F656B49AAC99C3C36203180D1B9A2711 /* Do.swift */, + 56D814F83C5D2604E120A2E475CDDE5B /* ElementAt.swift */, + EFD77CFE8B32E2CC5FF01DD9FF6E3534 /* Empty.swift */, + 3DB7BDD740D75E3D67B01AD0DF71ABA4 /* Error.swift */, + 8FB12536EC6691BB1C54E08F32DCBF7B /* Event.swift */, + F719EBA6222168F1FC859D658FAE541B /* FailWith.swift */, + C62F8CCD794858ADBC4A92B49002B821 /* Filter.swift */, + DC49151F6A6EE51798431569783E7E8F /* Generate.swift */, + D3B7F73A557870C9A6C543B0B2A5ECCA /* ImmediateScheduler.swift */, + CF4ACB9F8D0BE8FD4E98074BB4D41C47 /* ImmediateSchedulerType.swift */, + 0CE366AC79861586231B97FEBBEA8083 /* InfiniteSequence.swift */, + 8028ADF9BD8375F2D5E3E389430670D2 /* InvocableScheduledItem.swift */, + F8BBF406505BCDAD50C85A8B3C2FFE18 /* InvocableType.swift */, + AB4547B2BB622839AA5708674F1D147E /* Just.swift */, + 380BA4A83340E1D867A2AAA557993076 /* Lock.swift */, + A7BF3D9C0DB4974103CF27272594A716 /* LockOwnerType.swift */, + DE3AAE456D863F1B49A07D8D9C74DDF2 /* MainScheduler.swift */, + 7399C39289C4E22A1DB50C8B944CDCB9 /* Map.swift */, + 66F62373F11D5D7CD6E6889AC828A36E /* Merge.swift */, + 2E033A13E50C7427EA001C81974A9B33 /* Multicast.swift */, + 01CC2800ABF6A82B7FEB6FEEED040BBD /* NAryDisposable.swift */, + BB207DE8AF3E7B9EBF924BCBB0A40DA3 /* Never.swift */, + B60BC241B804A367AE8A6FC5F1075944 /* NopDisposable.swift */, + 618F5E56B2A6FC37351C5C1AE58F8495 /* Observable.swift */, + C8BF6E9BA570DC6F24B2746C03BF36BB /* Observable+Aggregate.swift */, + B6675BF92A81734F5665E4B57A66191B /* Observable+Binding.swift */, + A32ADE721CA95AFDB5F113DD9C757600 /* Observable+Concurrency.swift */, + 7DF46426F6CA345FC0C6BBF03E700D49 /* Observable+Creation.swift */, + FD2822E94B8990E4673A22E2C229575F /* Observable+Debug.swift */, + 4BC47539797A77AD243A3067C70E3AEE /* Observable+Extensions.swift */, + CF8F406F429A64F8560F1457CFFFDACF /* Observable+Multiple.swift */, + E147FD66EF593B3A7FFB688431FF87EC /* Observable+Single.swift */, + A50485E481A84BE71BF6C6A50122D7ED /* Observable+StandardSequenceOperators.swift */, + 69C59401595D643C48952856F4FF9ED9 /* Observable+Time.swift */, + 7D9673655F1202774F93D5EF882C1DF1 /* ObservableConvertibleType.swift */, + DD574066343290EB530217A0A6070AB6 /* ObservableType.swift */, + 7B38F003E4FF76D98A91DDB9578E1574 /* ObserveOn.swift */, + 4721770F0DC68C036384F949D602A29E /* ObserveOnSerialDispatchQueue.swift */, + E790B2298E9951AA9B3616DD079C014B /* ObserverBase.swift */, + E3B31F78E2E8AD1A74BB93E0AB807472 /* ObserverType.swift */, + 20090F6CFA375ACDA72C0F82B8F2AED6 /* ObserverType+Extensions.swift */, + C8529ECA5C586B778AD5A79D247B267E /* OperationQueueScheduler.swift */, + 13830E8810FE6FF393CF9DD380E0637E /* Producer.swift */, + A8EF3513D1B63AD0D6498510CB8A2C2E /* PublishSubject.swift */, + 68091D4E864C63E1656C76DE3E16E2A8 /* Queue.swift */, + 60641188C9C660FCC478943FF4D4816A /* Range.swift */, + EA5B8E06731177B3845436D6477E3E4A /* RecursiveScheduler.swift */, + FDE133BC5A2820E9A447EB50D18F1C7A /* Reduce.swift */, + 8A5CB41370065E09BFABC4D48D896619 /* RefCount.swift */, + CC5A18CC190429427C7BD59CBBA630D3 /* RefCountDisposable.swift */, + 45B27ADCD2F92F0CFFF807CB96E89E50 /* Repeat.swift */, + C7266268CE1FE0350B58F4F5FDB9DAE4 /* ReplaySubject.swift */, + 01FF485F4DAC368D17B9D6D0EA2D400D /* RetryWhen.swift */, + 9F604671628815BCC898D75FDEA1A36E /* Rx.swift */, + BD376C8DBAB95C460CB607A71EE44CFB /* RxBox.swift */, + D3BC54443407FA6EA5A51A912E4D9330 /* Sample.swift */, + 92CBC55BC6349FA716827DF31E6E3592 /* Scan.swift */, + 9E3377475D573BAE3B60CCB9D8243047 /* ScheduledDisposable.swift */, + 853501FE2DF6821DAC1D2951BC96A8DB /* ScheduledItem.swift */, + 98D11EA888935A628F836F5EA0F4B756 /* ScheduledItemType.swift */, + 476A3ADAE2600A8EA56DBD607FE7E2CD /* SchedulerServices+Emulation.swift */, + FE8BE52898C940FFA15D25F86CF426DB /* SchedulerType.swift */, + 377BEB62136C70820CFBA24C8EB5BBDE /* ScopedDisposable.swift */, + 7897D286EA02AAFF268BA0BD774C559E /* Sequence.swift */, + 7921F1420AD083E1D9DC5CDCBE1C94E5 /* SerialDispatchQueueScheduler.swift */, + 99CC9901327E1DEA90D53489BB1AC86B /* SerialDisposable.swift */, + FCE223727C1469290B30AE7D5DEDA5F6 /* ShareReplay1.swift */, + 0F3E6C27AD968610CAD90CFAF45B9A75 /* SingleAssignmentDisposable.swift */, + D6DE8AF314F8580A69ECC9C1BE253FF5 /* SingleAsync.swift */, + 35F3334E237C9A625B1223C909EBF72F /* Sink.swift */, + E7D497D8A56693FBCCB0E15109E9CD72 /* Skip.swift */, + 5CCC4BDD19C31493E3BBFEE0721D95B6 /* SkipUntil.swift */, + D827BC2E8A02C11BD6B9CF6AFBB879C0 /* SkipWhile.swift */, + 9CEC3F71D366F8108B6367EE32E95998 /* StableCompositeDisposable.swift */, + 4B9F13B545FEE8090CCAD61C4D3D4CF5 /* StartWith.swift */, + 0C557CB353DB77E5A57A91CA9BF22551 /* SubjectType.swift */, + C6F0C341DE00793E810579774936FE92 /* SubscribeOn.swift */, + 9B634E6465E7C25A976AD8ED3C77C1C3 /* SubscriptionDisposable.swift */, + BF1E353332B68B05530985AD9DC5B24F /* Switch.swift */, + DF2EC7FB06ADB0708E8363ABD1A529CC /* SynchronizedDisposeType.swift */, + 64D8C78125A70ED0C8C1C69D7A363395 /* SynchronizedOnType.swift */, + 3F843078BD9EB4603EB457B37C22DA20 /* SynchronizedSubscribeType.swift */, + D7114D3F0143B75A7C06F4BB8E655A6C /* SynchronizedUnsubscribeType.swift */, + 01D936A271CDB317E9313314F3B2E5FF /* TailRecursiveSink.swift */, + 536E2587935CB100C8A289D71B3922A1 /* Take.swift */, + E7EADC5F8AB6E21C05BA7CBF3343A66A /* TakeLast.swift */, + D0D4F9A8E177DFF14D2F956639EBD48D /* TakeUntil.swift */, + 0159BFBF4C98C7D6C2529388538BF2F9 /* TakeWhile.swift */, + 4FEC0A3052DFFD340E01154B2B782E24 /* Throttle.swift */, + 9C553036256B62564E4D8492111154EF /* Timer.swift */, + 2AECA1A9963760DE4395106BFDFCF844 /* ToArray.swift */, + C0FFE08D35888481F6691CC544F6291D /* Using.swift */, + 2C4F4D4B839D41FBF242073B3206F3EB /* Variable.swift */, + AAB485B7259CC802C69B2E31389CD047 /* Window.swift */, + DCE9439768C33B06124378CF1F74EF34 /* WithLatestFrom.swift */, + BED4B116D8E1664F18C1B1895DDC84AD /* Zip.swift */, + 3B39D16EDDB9EF932A0D42AC4A036441 /* Zip+arity.swift */, + BAC8F469BBDFD201243931A361BFDA78 /* Zip+CollectionType.swift */, + 7DF980DA4652CF1E4EB69A9CD8E55637 /* Support Files */, ); - name = Frameworks; + path = RxSwift; sourceTree = ""; }; - 46D52742FE1EB26516C08A1ADB9A636C /* Support Files */ = { + 24B5D2A38E0986AF9366A7E640F1B8B4 /* Support Files */ = { isa = PBXGroup; children = ( - F828D956A4B95E63279D53E474090C09 /* Info.plist */, - 2CEAD1F8A8EAA1874A4B4416690E8249 /* Nimble.modulemap */, - 6E263D3FCA84FB00B80CE1A5470E4999 /* Nimble.xcconfig */, - 0584E929F7AC4E49C74F3856EC93AF11 /* Nimble-dummy.m */, - 97D918B019FBF717EA0C78F7AA13432E /* Nimble-prefix.pch */, - A22BE4E45F0E081F915C9610EB873A9D /* Nimble-umbrella.h */, + DEBBA970CF0BCB7422491673F960F0AF /* Info.plist */, + 8DAFE4ABDBC514BBE76C9D8D3913E786 /* Nimble.modulemap */, + C12E9E0536F109FD5CB0FE545B5A4C5C /* Nimble.xcconfig */, + 401EB93C5615EC63A288974F6843A762 /* Nimble-dummy.m */, + A6685BB0EBBB2FCCB339E22A72A2BD5B /* Nimble-prefix.pch */, + C1EE641DDD264282CAB32BE7D2347BA1 /* Nimble-umbrella.h */, ); name = "Support Files"; path = "../Target Support Files/Nimble"; sourceTree = ""; }; - 531A40B7A343EFD2699B515FA51E8858 /* RxSwift */ = { + 264C63B86695C5B67AEEADD6179D5BD0 /* Frameworks */ = { isa = PBXGroup; children = ( - 408DAA098E182010E3E8D3D056A909A0 /* Amb.swift */, - 577AB6CBDB217F139849146F5976C308 /* AnonymousDisposable.swift */, - 038E47518E20C7EB2D4CAD41444FA30E /* AnonymousObservable.swift */, - 0F8F414DF16A7BC1DD914032020EDE19 /* AnonymousObserver.swift */, - 647148ACCD987D2CD868F5A743C814C1 /* AnyObserver.swift */, - 287699968002DCAA04BB043CDDDE919A /* AsyncLock.swift */, - 0DA4D93FF9D072A3528089D887AAEE7C /* Bag.swift */, - 3A7640176A9ADC15DF9AA89C35281F8B /* BehaviorSubject.swift */, - 9C39A5E44A8B651BB1CEFAE38F872A96 /* BinaryDisposable.swift */, - 8CB443C01B04CFD340C8F303BC1AA72F /* Buffer.swift */, - 1389CFA5B65CA0C2E3D75BA27C43C117 /* Cancelable.swift */, - 35A8D78D59F836E13DF96F871C9A9812 /* Catch.swift */, - 27304CAC8A15942A9C4040A568EA4A22 /* CombineLatest.swift */, - 89A531697D92D99CAE6BF99C76E6A820 /* CombineLatest+arity.swift */, - E52B04F7B8CD13298E238E816836A14E /* CombineLatest+CollectionType.swift */, - 180238F515BDFAB7AA37019F846F9CFA /* CompositeDisposable.swift */, - 83F041F0A127B4AF0A5AB6914E8EB630 /* Concat.swift */, - 5D91E2AA569717D88A10F56B22AB4B73 /* ConcurrentDispatchQueueScheduler.swift */, - 34374DF42E4251B5FE6EADDFFE7B3B3C /* ConcurrentMainScheduler.swift */, - 4B6C5F9A32F77E4FBBA80403980B9FE6 /* ConnectableObservable.swift */, - C7AF430162E5A114E7FBB75DA3A409E0 /* ConnectableObservableType.swift */, - 27F698B57CB973574C6A5CFC9F3BE7C6 /* CurrentThreadScheduler.swift */, - 7977F35269B5E75AAE6D8D7BF6A6271B /* Debug.swift */, - E36DA5CEC0BC84ADEFBBB07041F80D9E /* Deferred.swift */, - CBB3F9C7669D32D842DE9EDD75ED00B0 /* DelaySubscription.swift */, - AEEE8554C1D671925C6ADAA942C4FED3 /* DispatchQueueSchedulerPriority.swift */, - C7C551CEED21EF475F84419D3389E46D /* Disposable.swift */, - DCA5215317464AC4EA073407712948D8 /* DisposeBag.swift */, - 7F0CDC526B64CBFCC2D0BA6FAF71FB4B /* DisposeBase.swift */, - 620FD3A730916E029434437C9525520F /* DistinctUntilChanged.swift */, - 20FAC65FF1C91AD941D2B1653E9C8A1D /* Do.swift */, - 8D84E9A67B7FFBFFECD1B2CCDCC81721 /* ElementAt.swift */, - 716DF7D88D9098A5C4DDB6A8F8DCB492 /* Empty.swift */, - 027EFF04490F43C61C16661A64BE7922 /* Error.swift */, - E5E2EDE3179B69DA143B5CF56B48851E /* Event.swift */, - 4CB6CFEC2D1B7EF4A0C0CAB242BB8BFC /* FailWith.swift */, - 2176D88EA17B4C35EB29AA4B0A3DF4A1 /* Filter.swift */, - BD7D6E8CE23EC55E42632BF972AF293A /* FlatMap.swift */, - C37BE81A0CE9050DDC7110C02E771FF6 /* Generate.swift */, - 50C060C33E78E637E0A5CC177DF3A44F /* ImmediateScheduler.swift */, - 8E2246AE4D0CABE813B9B83998C5C55E /* ImmediateSchedulerType.swift */, - E5A3FADD331156041D29646F0A94BAEF /* InfiniteSequence.swift */, - A8592E7001E03D33C2EB27C79FD8D1DE /* Just.swift */, - 8C924BE6D90EED302FD3638B24F1BB13 /* Lock.swift */, - 0099727B8E0F5A49C6740959D3764041 /* LockOwnerType.swift */, - AC7FA94CCE44E93C1D25D2ADFD541058 /* MainScheduler.swift */, - 4CBE740BC06EC5B6FC35BC1EA3143DCA /* Map.swift */, - B900E0C494CB8E8E28199EA601D10E98 /* Merge.swift */, - 105AF714125E6C0F2FA3719A36EBCA77 /* Multicast.swift */, - 2734AD71843BE29D2BB3F97EA3D7911E /* NAryDisposable.swift */, - 42714C79A35CFDA324EB4CF7739303EC /* Never.swift */, - BF279331494C822EF388781ECCDC2EBC /* NopDisposable.swift */, - F883D1274BED93DCFDED43F315237665 /* Observable.swift */, - EAB4AF917A69587F38A90FEFD2170452 /* Observable+Aggregate.swift */, - A4B206C5A7482E99F05F1D70BC73086D /* Observable+Binding.swift */, - CD5E8EF3F8D1CBF737BD2454706E2382 /* Observable+Concurrency.swift */, - 512E357774AAA94B84EEE43B3B02BBE6 /* Observable+Creation.swift */, - 75848AAC5E1425737149F92C0036EFAC /* Observable+Debug.swift */, - 8A72AABFFE33DCEB8601DDC71B235FF5 /* Observable+Extensions.swift */, - 40109AF9B8E1691FB89AFB820B36D2D6 /* Observable+Multiple.swift */, - 58C7AAB263B4D5BE2875E1985BB600EE /* Observable+Single.swift */, - BF03384A224C7C49FE089A977469D9CE /* Observable+StandardSequenceOperators.swift */, - 058F7C74A794D9CFEAEE3F989F310F7F /* Observable+Time.swift */, - 3A9A5C40057713AFC20E3B77FEDB3548 /* ObservableConvertibleType.swift */, - 54739DE70D93F235E3D3AFDBDF18B514 /* ObservableType.swift */, - 6E959C073BE8B454A04820866EE721CA /* ObserveOn.swift */, - ABB9E857555505F6C442ADE199AC4463 /* ObserveOnSerialDispatchQueue.swift */, - 83B06E664608F2502D5271D3FA1230A4 /* ObserverBase.swift */, - 3CB1EC0A79AAC6262838E491B4963F3E /* ObserverType.swift */, - A038CEF95F7A2C061E11F117ABB2EA3B /* ObserverType+Extensions.swift */, - 48358C3AF9613AFAFF9B4360A2DD1015 /* OperationQueueScheduler.swift */, - CDBD14EABE18002AE153AB141B423F89 /* Producer.swift */, - 9DE2419359173399B1E754F4D135DA7D /* PublishSubject.swift */, - 242683E70916DD3C3316270E79FD246D /* Queue.swift */, - CA8BB4040BEAF26ADB45045A304B59E8 /* Range.swift */, - F7A867480FE2A7C5CE8B674EEFF09590 /* RecursiveScheduler.swift */, - D6349EB4116596770D5ACAC77331FFC3 /* Reduce.swift */, - 6A020C902166597A72A982F88204C4E4 /* RefCount.swift */, - 3F45E58688DC32831A3A3E720B86A7D4 /* Repeat.swift */, - DF21A2A7653EF7DCB3A14EB032F49341 /* ReplaySubject.swift */, - 69A767DA48770146A2650D8FAAA48D5B /* Rx.swift */, - E4D33A4839D7655D7AC021B9678921DC /* RxBox.swift */, - 977BE4CDEB254BE9519AEC3FBE0F3815 /* Sample.swift */, - 1B00410E4A50EC1F17BA5CDD2B46E62F /* Scan.swift */, - DC07EFF850FA2505707D94F268443A28 /* ScheduledDisposable.swift */, - 7799EB0E5B7A4861D593F0837C63C80E /* ScheduledItem.swift */, - 52F6A2AC8D7E3369B35144C06004D8D6 /* SchedulerServices+Emulation.swift */, - 5217562ACB76F601E3DD25781308B744 /* SchedulerType.swift */, - 0C18229175AF93C76A09938907DAF108 /* ScopedDisposable.swift */, - F60BFE7B5FC2C0B533992CA4F0B18961 /* SerialDispatchQueueScheduler.swift */, - 01D45D57D133DEFEB48B233B626A5487 /* SerialDisposable.swift */, - 0249B015FAA6BA9A31F6EDF31055A76E /* ShareReplay1.swift */, - E70357FF88CE8F56758295CA78D87AA3 /* SingleAssignmentDisposable.swift */, - B47431C709D59719FD27EE23C5D3DFCD /* Sink.swift */, - CCF5CF30005BDD7EDBE2F72F21C6C179 /* Skip.swift */, - 6C326129B219BC8FD5C395449B2C2CBD /* SkipUntil.swift */, - 47DC0D179B9383793B7669A29BCD284C /* SkipWhile.swift */, - 77BD6AC079287430D9B6C5A4D2F853AB /* StableCompositeDisposable.swift */, - 4C28EA0F6E131978E6A054CB804D8A1A /* StartWith.swift */, - 4C6FAD05630443BA7B020357E67D0A07 /* SubjectType.swift */, - F79641FCE36B6CE9AFF76747D4C53ABE /* SubscribeOn.swift */, - 0C99E301BEF331E1DE4BE183AB958B01 /* SubscriptionDisposable.swift */, - 06BFA849D48EF96E376180DB67C15F7F /* Switch.swift */, - 56DDB2205C540AB0027DC178150A2211 /* SynchronizedDisposeType.swift */, - 2EE2C60696E267BBBC464C7345E34EF8 /* SynchronizedOnType.swift */, - 721F621350EFF2B69B2906E6713EBD68 /* SynchronizedSubscribeType.swift */, - 84C297F08F58EAEFD2F6A171E3658D1B /* SynchronizedUnsubscribeType.swift */, - C158F8BDAB04FDB093F59DD7AF0034D0 /* TailRecursiveSink.swift */, - ADFD47AABABDB001922A246221E65FDA /* Take.swift */, - ACC187B85735345246A380AB65D3C1B0 /* TakeLast.swift */, - 88E68A5C5DA1B8D43ED12EB86459902F /* TakeUntil.swift */, - D5F51A8DB7A24179289EC3896870A33A /* TakeWhile.swift */, - A788A7AFBDB630B9E55AB7928FB9AD43 /* Throttle.swift */, - 1B8E1C8CE0E83DACDB71F3FB6ABB636A /* Timer.swift */, - A9A2D846B03C92B3B54E3CB953AD3439 /* ToArray.swift */, - EFB0F993121D74A856A31CA4FCBA5A54 /* Using.swift */, - B67B9DC0DD7F425E986B5A23737BF1AE /* Variable.swift */, - AB21AC40AC486142D4927E49C1F55B29 /* WithLatestFrom.swift */, - CD815A5A99E0BB56AD79FC3F9C8AAFDC /* Zip.swift */, - 4240A9D5142AB1F096D34ADD2A969F3E /* Zip+arity.swift */, - DEBC89066198F06C60ED572BAB1C3277 /* Zip+CollectionType.swift */, - FEE4B7F8972217C1641A75AE30626993 /* Support Files */, + A274000F72FF57541406AC7960CD87EF /* RxCocoa.framework */, + 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */, + 89905F5A36DDFB73A6F55467EE6072A0 /* iOS */, ); - path = RxSwift; + name = Frameworks; + sourceTree = ""; + }; + 3C4C0E8EDC15ECD48566DFE45D97500D /* Pods */ = { + isa = PBXGroup; + children = ( + A944D51C6A1514904C8425C1B361D6F2 /* Nimble */, + 9B289D69E7A1875598F6BC47AEF738C9 /* Quick */, + 99AB31FADABE592CDEA3CEB70FDB8EF9 /* RxCocoa */, + 22F2856656B2419B1F0B3493B499C340 /* RxSwift */, + ); + name = Pods; sourceTree = ""; }; 5AC9943AF1158DAAAF3ED0E901806DAC /* Support Files */ = { @@ -903,63 +954,26 @@ path = "Example/Pods/Target Support Files/RxViewModel"; sourceTree = ""; }; - 6129B490AB2BE1227EA1C7604E23C9BB /* Development Pods */ = { + 5FCB85608BD92683E778E0AC08F51A6B /* Support Files */ = { isa = PBXGroup; children = ( - 6E7D287FBA39FAEBB8B533A754E0D5CA /* RxViewModel */, + 63D7FF86975C60085381E3853F046770 /* Info.plist */, + C9265016DED23A992EA8F3CDB9FBD629 /* RxCocoa.modulemap */, + 22298CBD1F3638A425A5BFC5A94A34ED /* RxCocoa.xcconfig */, + F377D5AC803F858321F98675DD502AF5 /* RxCocoa-dummy.m */, + 9F1FC37D81D90BF69B27B974909461BF /* RxCocoa-prefix.pch */, + 3B64DEA0175BE28C164D01815055C294 /* RxCocoa-umbrella.h */, ); - name = "Development Pods"; + name = "Support Files"; + path = "../Target Support Files/RxCocoa"; sourceTree = ""; }; - 66215C0ECE52CE7EF5AE8996C5BF5702 /* Nimble */ = { + 6129B490AB2BE1227EA1C7604E23C9BB /* Development Pods */ = { isa = PBXGroup; children = ( - 60312B4B7E20AF978F46E2B41716E47B /* AdapterProtocols.swift */, - E2D5619623EE2F355F141B950AE0E213 /* AllPass.swift */, - B919E4A1CC4CB44A17090E82AA072183 /* AssertionDispatcher.swift */, - 9074E2CD379382DF310CB0FE22275C74 /* AssertionRecorder.swift */, - 3B4F8A7541A042C3612032C61A860B8F /* AsyncMatcherWrapper.swift */, - D75BAF9F860D7B9132609905D532801C /* BeAKindOf.swift */, - 1E7DDA4B9D7D0D4DB159D86006167CBD /* BeAnInstanceOf.swift */, - 9A50D80D51FE9BF5CA865E43CCEC6334 /* BeCloseTo.swift */, - 2F5B81F3B45DB4DF74045E0C8D85460F /* BeEmpty.swift */, - BA8E627603798B25C0B0E5065A21D083 /* BeginWith.swift */, - 0E6E6394D1627ECE2165EB80234BBA15 /* BeGreaterThan.swift */, - 6278EEFBE6B030D28ED0E3AB9F6983EE /* BeGreaterThanOrEqualTo.swift */, - 8E34EFA722717F840DCA1C735ABA9544 /* BeIdenticalTo.swift */, - 1950C080DC269BB5AC6C3B797F2E5E67 /* BeLessThan.swift */, - 66DF41528ADD55CAA61F2312AC692AA4 /* BeLessThanOrEqual.swift */, - 4C78912365638B53DB7A6D35BEEF9C6E /* BeLogical.swift */, - 846C858626A3167F43C71A44B8137E74 /* BeNil.swift */, - 8FBE78DAD584698FD282DD61D5EBC573 /* Contain.swift */, - 68C4E5BDF28682E1099CC7E9BD6B556D /* DSL.h */, - EB1A5249CE6A96DEEDF1CD6748F74D93 /* DSL.m */, - 7F9D7E8AABBF9EF914AE07C1E8D22424 /* DSL.swift */, - EBBCDF5ADFD265EC93DFFF7B40D7308B /* DSL+Wait.swift */, - B8E7A38730430C243D0EF0B47E95682D /* EndWith.swift */, - 954720B99845BBF73BC2DC6861C8557F /* Equal.swift */, - E903ADB7D0BE9C512DB37F8617A9EAE0 /* Expectation.swift */, - 0B7859E68235BE9179B986C969165ADB /* Expression.swift */, - C09CA00328A4226DC4368D404EFCCA70 /* FailureMessage.swift */, - 4F9F48B349DAD390A7ED685940F16DDF /* Functional.swift */, - 4F5302456AFA70E8C570BF7EFB88ACE0 /* HaveCount.swift */, - 2780338C4C425B371D77C423A3101875 /* Match.swift */, - B35E59A8D8A2AB7EB8F07C4B4E5F9C15 /* MatcherFunc.swift */, - 0633D5DF9AB294620DA9548DAC793201 /* MatcherProtocols.swift */, - 2DFDF23A5C22B68CEA611CE7FDC5BAD4 /* Nimble.h */, - F7A2C7273F5FE15F8D9988D85507F57D /* NimbleXCTestHandler.swift */, - D9EA4A123895DC00E865EB345D15BFA3 /* NMBExceptionCapture.h */, - A2409C5A0C0CBBB302740DE0CE39C88E /* NMBExceptionCapture.m */, - 3BBE4280C7F7B86B844A8E317C1471E0 /* ObjCExpectation.swift */, - 711B1FF93206DADEAB81AA7B2B7D374E /* ObjCMatcher.swift */, - F767782241C4B61653D82472DDDD3488 /* Poll.swift */, - 84187A6D1C5DF52C2350939345D492C6 /* RaisesException.swift */, - 42970168A7FB87E85E152816353607C9 /* SourceLocation.swift */, - B2C374093FD81C7362B5C31C0E24B0DF /* Stringers.swift */, - 0149645A410719261F296478A02DE73E /* ThrowError.swift */, - 46D52742FE1EB26516C08A1ADB9A636C /* Support Files */, + 6E7D287FBA39FAEBB8B533A754E0D5CA /* RxViewModel */, ); - path = Nimble; + name = "Development Pods"; sourceTree = ""; }; 69E1DB12FCCA87F9160A0A799F9E4850 /* RxCocoa Categories */ = { @@ -1004,41 +1018,24 @@ BA6428E9F66FD5A23C0A2E06ED26CD2F /* Podfile */, 6129B490AB2BE1227EA1C7604E23C9BB /* Development Pods */, 264C63B86695C5B67AEEADD6179D5BD0 /* Frameworks */, - F6C336BE73C171CA333BBC2B0AC72235 /* Pods */, + 3C4C0E8EDC15ECD48566DFE45D97500D /* Pods */, 08C80C1B3F3DE89B86C6EBB26854A56E /* Products */, B7B80995527643776607AFFA75B91E24 /* Targets Support Files */, ); sourceTree = ""; }; - 8672A137730F8F16C2947400CE9E0272 /* Quick */ = { + 7DF980DA4652CF1E4EB69A9CD8E55637 /* Support Files */ = { isa = PBXGroup; children = ( - 676593B34C70A0D15B5241549B20D915 /* Callsite.swift */, - 44E0BAEC92AC1F5C81A0626CAE18F1B1 /* Closures.swift */, - 7840D877B39F7B0C475A3CE4078F1F93 /* Configuration.swift */, - BA64B6BF6E6FA979522A45111F0525A4 /* DSL.swift */, - C8F63C76413A928999F69517FDE355F6 /* Example.swift */, - 524CD8975A004916354F518407A8FDB7 /* ExampleGroup.swift */, - DB915CAB6564552D79A4C03C7EDAF418 /* ExampleHooks.swift */, - 13204C41A15FCA68E682C8E35FC44A12 /* ExampleMetadata.swift */, - 7016E942AE4A0D114196611D832ACDF4 /* Filter.swift */, - E1AAAAF7282E26D0C1B27BA6184E5306 /* NSString+QCKSelectorName.h */, - 0809ACA9399A3799F4C867C9CFD17BA5 /* NSString+QCKSelectorName.m */, - 45A89CD12A7F579A7FF6CB3886A47F3B /* QCKDSL.h */, - 30DF4D5B96C10C21B43A61B43D36E5CF /* QCKDSL.m */, - 3190C07B05C3C732C6A30F00B08917C6 /* Quick.h */, - 4B4FC1AD94D0A447C1A80E2689A0B0DF /* QuickConfiguration.h */, - CCED0E40CD9DC1C2ED678A7D1F149A8E /* QuickConfiguration.m */, - 0BF495999F60015B38EDE732CDE7009C /* QuickSpec.h */, - 34847B5398E5D154BA3CF3F41F06054C /* QuickSpec.m */, - 0EFF988768969B8A750CF0F13D878879 /* SuiteHooks.swift */, - 621B6F8289FDA0601018C5EEFF550704 /* World.h */, - A1121DEB33BFB6933F2528F80A7A91EE /* World.swift */, - 9AA94FA3BEA21E28EFF25A239B3ED226 /* World+DSL.h */, - 848C18AD323097DD667D398E35C4501B /* World+DSL.swift */, - F041EA47E1F58C91BDD7A6388EF61B2A /* Support Files */, + 6D3E219956D8E0F27D7BE771578EC2AA /* Info.plist */, + C4D3C92CA79CC7E3348BD45A3BCB570A /* RxSwift.modulemap */, + B895EA7CD2498F6E35257DB645382D29 /* RxSwift.xcconfig */, + 9DF24A1794FAD3B5FF1DBDDF5B94D371 /* RxSwift-dummy.m */, + 87471DBC3302D1D419A0D92D3F435E43 /* RxSwift-prefix.pch */, + 42E808C64E541D1837397BB934FAA4AA /* RxSwift-umbrella.h */, ); - path = Quick; + name = "Support Files"; + path = "../Target Support Files/RxSwift"; sourceTree = ""; }; 89905F5A36DDFB73A6F55467EE6072A0 /* iOS */ = { @@ -1050,149 +1047,197 @@ name = iOS; sourceTree = ""; }; - A60067B904CBD17F23ED295292EA0636 /* Support Files */ = { - isa = PBXGroup; - children = ( - 9FE422556D9E4587B5454E739333A0D7 /* Info.plist */, - 0F787D59ACD94F4ECB252B288E46FA8F /* RxCocoa.modulemap */, - 5D45EE640C2A7337A3E1CA5B2B54853E /* RxCocoa.xcconfig */, - B7486859C828FCAE8A4248720078577A /* RxCocoa-dummy.m */, - 56CD567D17B54BCA684F35627D285121 /* RxCocoa-prefix.pch */, - AD30AC8335AB322E76C999FFCBF4AB47 /* RxCocoa-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/RxCocoa"; - sourceTree = ""; - }; - B7B80995527643776607AFFA75B91E24 /* Targets Support Files */ = { + 99AB31FADABE592CDEA3CEB70FDB8EF9 /* RxCocoa */ = { isa = PBXGroup; children = ( - 75D98FF52E597A11900E131B6C4E1ADA /* Pods */, + A08CAE5C64495158660C39CE9E3B6E39 /* _RX.h */, + 678278BBC2928244DF8C062793B207C6 /* _RX.m */, + 4DA878ACA1AEE503F71C928D06EF1BB5 /* _RXDelegateProxy.h */, + 5920D6F229288982F67CD980B4310933 /* _RXDelegateProxy.m */, + 59B779EB814A3E4141959D29B28A2A7E /* _RXKVOObserver.h */, + DFF6880E6D321FD91906B7EF3F6E973C /* _RXKVOObserver.m */, + 6B8185140677A481781332D40BAD805B /* _RXSwizzling.h */, + 8FB589970C962E1EF6ADE189169F81FD /* _RXSwizzling.m */, + DD467BD8DAF758482FEF52B35C1E4F29 /* CLLocationManager+Rx.swift */, + 97C5B368C9DFE9E606A4669CBED47525 /* ControlEvent.swift */, + 3B97B41606163A1F1232888B3DE7EE8A /* ControlEvent+Driver.swift */, + 9027692736A439BE3B3955E664C1C79A /* ControlProperty.swift */, + 44FD5BA58D6037A4207730CA24F8B768 /* ControlProperty+Driver.swift */, + 55125FED51B4A1C8F88E5E5C14A73450 /* ControlTarget.swift */, + 88E988C5DA0654B3CBF5BB052BE9B410 /* Deallocating.swift */, + 8EDF76DC53AB94AC8E6EFE81C315FA25 /* DeinitAction.swift */, + 923ED4FBFA12D720E45B11E93B0E889C /* DelegateProxy.swift */, + 81E6A87B8A065D7F3B558F2C6859A448 /* DelegateProxyType.swift */, + D32570E3702A2CA017BC7CE63E489DA1 /* Driver.swift */, + 4115A136E1C8CCB2A064F673C37B94E8 /* Driver+Operators.swift */, + 3443126532711E6187542ACE47AC595F /* Driver+Operators+arity.swift */, + E43580949E4A266F2FF7FE0A12FA4827 /* Driver+Subscription.swift */, + 80AA56B1B5E90C0E0056F07CFA33E03C /* ItemEvents.swift */, + E254D0FA25E45D3DEC3343352BAAF46A /* KVOObservable.swift */, + 770C0369AE93125C223FBEF7C9E48FAA /* KVOObserver.swift */, + CF31BF407F9C0BB04874E440D1281FB7 /* KVORepresentable.swift */, + 9E5835CFCEE7B51F8732493C99EDC237 /* KVORepresentable+CoreGraphics.swift */, + A1D1921164D227854B314A963190B39B /* KVORepresentable+Swift.swift */, + 7573DC7675C1FE797617B3A6AF323B3B /* Logging.swift */, + C69D7E0ED6223B221E40C5D03D81EB2D /* NSNotificationCenter+Rx.swift */, + 438E7627FE927F7A5324B486CE70355C /* NSObject+Rx.swift */, + 2239DF539CA80A6D65804AE9830310FD /* NSObject+Rx+CoreGraphics.swift */, + 2405A5535A5A7CD2CE383E86964A5B65 /* NSObject+Rx+KVORepresentable.swift */, + 5715F1D5FE43EDAA3D5433783793F132 /* NSObject+Rx+RawRepresentable.swift */, + 4831C27D43DF4EACE759A9C7A9ADBB4D /* NSURLSession+Rx.swift */, + 04C1F5C6D30F3910DBBA95C092F7E059 /* Observable+Bind.swift */, + F9DCA9191E095089BE1DB5A56074C76D /* ObservableConvertibleType+Driver.swift */, + 3EAAE49DBA6699A7D8B331C0F6A7156F /* RxActionSheetDelegateProxy.swift */, + 43CFD25EFB8C81164453B4F96C43A043 /* RxAlertViewDelegateProxy.swift */, + 8D7A685B60034EBB4E63C465D8008F54 /* RxCLLocationManagerDelegateProxy.swift */, + C7009C6DD0F337915BA03F2CE49A1C15 /* RxCocoa.h */, + EC608B7C36B9EAF6DDBBAAD3576D9D80 /* RxCocoa.swift */, + 00173EDD066444578DCE95C1D99DCA5D /* RxCollectionViewDataSourceProxy.swift */, + 512DF8A19EAD6031E47E7AEE1F408F99 /* RxCollectionViewDataSourceType.swift */, + FF05D7DD591E1DFA668D36A13C8399B6 /* RxCollectionViewDelegateProxy.swift */, + FA76B09BC8DDA06A5D050B11D182A766 /* RxCollectionViewReactiveArrayDataSource.swift */, + E38689B19217A53700AD6E2912329494 /* RxScrollViewDelegateProxy.swift */, + B00CCC663F71B4DAB9F282C0F1F12375 /* RxSearchBarDelegateProxy.swift */, + 0D4BC6C6E31CF219BCCA80E87C9C4B31 /* RxTableViewDataSourceProxy.swift */, + 9BC5951735C5F6EA18DA67AC7873CF22 /* RxTableViewDataSourceType.swift */, + 80346C899F761612BEF8C3459A6F0F9E /* RxTableViewDelegateProxy.swift */, + 5369B1758FB3678CB068E0311581A216 /* RxTableViewReactiveArrayDataSource.swift */, + 9EE41AF090FC632BC4DFE810009FE26E /* RxTarget.swift */, + 33D33C1068658D90B9C42E6A1B09BFCE /* RxTextViewDelegateProxy.swift */, + 9CB7473E863AA6C71F69C471258AF7C5 /* UIActionSheet+Rx.swift */, + 247766FF5A2DC1C9DFB67EFDB0DAA5D8 /* UIAlertView+Rx.swift */, + FFED7D5125E9E4D5EFF12F9845B54E01 /* UIBarButtonItem+Rx.swift */, + 35DF3315E981C88B1B398C608FE543D3 /* UIButton+Rx.swift */, + 2859E9EF04FD64673FFB0E491CC4A64E /* UICollectionView+Rx.swift */, + A04EB0B5B16C8CEBB397BA1ECC758EB2 /* UIControl+Rx.swift */, + 4224745547ADF2F9DB9C33ED1B26E11A /* UIDatePicker+Rx.swift */, + 100D3E4F53D7BD07C07EAD7753BCD8DB /* UIGestureRecognizer+Rx.swift */, + DC24164C27FBE96E1BF7970C116CD4BF /* UIImageView+Rx.swift */, + 10DDCFC484D3E8099D73EC21EED7B6A0 /* UILabel+Rx.swift */, + 735B552A3B81164E68CD456E6032DBC0 /* UIScrollView+Rx.swift */, + 3D6B2E2EA841BF9BF0CA435936732E97 /* UISearchBar+Rx.swift */, + E2418D4539AEBAD5AB79903535A90516 /* UISegmentedControl+Rx.swift */, + 6CA03372E8CFB26F0C771CDFC0D8D29B /* UISlider+Rx.swift */, + 1A62D79EB1E3F825D6DC2D075A61A9CD /* UIStepper+Rx.swift */, + D7D4F188C6337C18F6628EA0D724E912 /* UISwitch+Rx.swift */, + B099697B884818E7E6787FB34D19E211 /* UITableView+Rx.swift */, + 7B70F663011E708A1C707C071464AA65 /* UITextField+Rx.swift */, + 3234AE5901342805DB9EDBC72C34693E /* UITextView+Rx.swift */, + 5FCB85608BD92683E778E0AC08F51A6B /* Support Files */, ); - name = "Targets Support Files"; + path = RxCocoa; sourceTree = ""; }; - C6CEFDC3079EEA2E212039DD33F933D5 /* RxCocoa */ = { + 9B289D69E7A1875598F6BC47AEF738C9 /* Quick */ = { isa = PBXGroup; children = ( - 97C9C2D8C3D3C17F48C014C868B630CA /* _RX.h */, - 52150C7AF234CD4CCB8DBFF5681AA531 /* _RX.m */, - 4B6951430DE067CC087EC248997C5805 /* _RXDelegateProxy.h */, - 4545AD6A53CF194FA8E3748CDEE4E267 /* _RXDelegateProxy.m */, - 32D9359D65D800D452E2E42A612FF43C /* _RXKVOObserver.h */, - 08F6BB744101A19B3984696D27D0537B /* _RXKVOObserver.m */, - 3D3850029D41C0A572137FE33C488FCF /* _RXSwizzling.h */, - 75307EA93E437E56D6F308F6FF3F3E91 /* _RXSwizzling.m */, - 24E0DD3135F4BC5173954AB07322240F /* CLLocationManager+Rx.swift */, - 5976E4B60A9C51B552357148FAD0E684 /* ControlEvent.swift */, - 2FC4DEC4D1E82298E71BD41B94BD62AD /* ControlEvent+Driver.swift */, - A99087D4B3FC99BBDEFA644D079015C1 /* ControlProperty.swift */, - 3D793DE4E519AA4ADE0C0C35C789FC21 /* ControlProperty+Driver.swift */, - ECFD20F48143B462EF801C2CB4F04C8C /* ControlTarget.swift */, - A79CBC9FA88AEBF8FD503B0AD6773AD4 /* Deallocating.swift */, - D61639B81197A5761B9C63F12FC3D901 /* DeinitAction.swift */, - 549521D9F919D1BA9A7502EFE547FAA1 /* DelegateProxy.swift */, - 7FD93714CC66807F92BFABF29378A3D3 /* DelegateProxyType.swift */, - 71FEEA21C1440131C7B6BCC33C04DCCB /* Driver.swift */, - 51E8DEA4FF4C288DEA9F9E5A76525CA3 /* Driver+Operators.swift */, - 47209D61236DEC7876158F93E8224AA9 /* Driver+Operators+arity.swift */, - 719FC95AEAAB6F6D4A987E7230BA3F5F /* Driver+Subscription.swift */, - 491035D94D03B754615EBD82D07A517B /* ItemEvents.swift */, - F1BA48126B8C837F687406E5E51B7F53 /* KVOObservable.swift */, - F811E9065F93E232946CDFA9608645A2 /* KVOObserver.swift */, - 3C49B64CC294290E12494333E5A0B806 /* Logging.swift */, - D3CF858E9596F11BE3F20B2738C11D9B /* NSNotificationCenter+Rx.swift */, - D203DD4D070439D33D6A186B1989AF3A /* NSObject+Rx.swift */, - 4EB74D37C4FEA523D1EBD951B336F6CF /* NSObject+Rx+CoreGraphics.swift */, - 0AF2017C8E36AB1C72730FC7CA548C24 /* NSURLSession+Rx.swift */, - 486C29A435068044DA17BBD8D78B6979 /* Observable+Bind.swift */, - 45FFCD06550CCA881CAC18AD05771ACE /* ObservableConvertibleType+Driver.swift */, - D3C9C2CA7C7F3493302CEE45B5FEB5B6 /* RxActionSheetDelegateProxy.swift */, - 9EE97937791B4782F0739AF1820590F8 /* RxAlertViewDelegateProxy.swift */, - B4634CEAC67AFD4A30CC348ED2C01A16 /* RxCLLocationManagerDelegateProxy.swift */, - 7748143504951DA4285FA3AC024B420C /* RxCocoa.h */, - 2F8942D72D28C05E1EF86A084ECFD4C4 /* RxCocoa.swift */, - 33745B29A0361F16C643701F933B9547 /* RxCollectionViewDataSourceProxy.swift */, - 31DE4A11017EE2B23F666EEF72D8DD13 /* RxCollectionViewDataSourceType.swift */, - 7F60E02AD620518DE4187779D601D9CE /* RxCollectionViewDelegateProxy.swift */, - 62ADF8CA32D438481AC9D4F39918FBB1 /* RxCollectionViewReactiveArrayDataSource.swift */, - CA87AB80A3E1ACAF8912EA7A7A391EE5 /* RxScrollViewDelegateProxy.swift */, - 5304DE6F90A87843CA581060E177AF47 /* RxSearchBarDelegateProxy.swift */, - 97B28CB4E897103F382350BB5055CD7A /* RxTableViewDataSourceProxy.swift */, - 5F442A61878CC7EABCE01567AE475BB2 /* RxTableViewDataSourceType.swift */, - 21736865BF176B691B3712CEE924AE01 /* RxTableViewDelegateProxy.swift */, - AD7FB07C4DE4E0ABD8E8A842ACB11E0C /* RxTableViewReactiveArrayDataSource.swift */, - CB6D29C2832637F8C1A07C85C55869A7 /* RxTarget.swift */, - 0227A5BE677565AC27E7C7A9B167B360 /* RxTextViewDelegateProxy.swift */, - 2DA8C4703A00166A84C45BF5FFB7FED9 /* UIActionSheet+Rx.swift */, - 04BA5A10484466882621511AA5A9827D /* UIAlertView+Rx.swift */, - D3B761926C010F01CC7A43484BC4A26F /* UIBarButtonItem+Rx.swift */, - E1B1DC4CD6D292C95C558277FC3797F4 /* UIButton+Rx.swift */, - 48B0F952D8165837AC851E43B85DF3D2 /* UICollectionView+Rx.swift */, - 3AFBD64086A4CD7AC0C5475AC0ED375B /* UIControl+Rx.swift */, - FF2B73B4F8E58FF03ABDD8DFA6157835 /* UIDatePicker+Rx.swift */, - 3D55E01B616C09EF231F0BF50207C928 /* UIGestureRecognizer+Rx.swift */, - C85070A5252E0027FF243A420683C390 /* UIImageView+Rx.swift */, - 12F9F0973D955A672B0D3E67FCC00B84 /* UILabel+Rx.swift */, - 4BFF6BC6EB41BDE740158E0F6FA263B0 /* UIScrollView+Rx.swift */, - E6D9E3DB6053BC8CCDB99F71B0B03327 /* UISearchBar+Rx.swift */, - F66F3D525007F0884B2B2662EC1B4EA7 /* UISegmentedControl+Rx.swift */, - AEB11046C81ABDED672BC78A7F3FB452 /* UISlider+Rx.swift */, - EE599BE05EB8F9026548B653EFE0456A /* UIStepper+Rx.swift */, - CF7D3EA8386497657852A7CF710D57E9 /* UISwitch+Rx.swift */, - 41848127CFD528CE5BC19E99291E7375 /* UITableView+Rx.swift */, - A072804A7541C17A1D75E9C38F17D6B3 /* UITextField+Rx.swift */, - E7E014CBA054C59A5FCA80FFA2A07244 /* UITextView+Rx.swift */, - A60067B904CBD17F23ED295292EA0636 /* Support Files */, + 4FEDA23B714E69283C2BF9BC26135EC4 /* Callsite.swift */, + 12FB4D51418CFC361F89C173C379CEBA /* Closures.swift */, + 1120897B8C7FEAD5427047C87758E123 /* Configuration.swift */, + 4B8E51A696C692618BF3F8B3F2AB96FE /* DSL.swift */, + 8E51B0918C53FF2B2DCF6FBEB328CFEC /* Example.swift */, + 3DF914D869F86ECC5DB5D90617A12D5D /* ExampleGroup.swift */, + 5249FA2C20FF7621CD08880021218A00 /* ExampleHooks.swift */, + 5B3E7402372AFAC94C25ED6F3C9F21FE /* ExampleMetadata.swift */, + 61ABCF25085B470DE27AFE7F4237290C /* Filter.swift */, + 45BA8BCB5D0B7149A61A549C6D828D05 /* NSString+QCKSelectorName.h */, + D13B4C4657F1B1A74A55528A47EEFCEE /* NSString+QCKSelectorName.m */, + B457A6AF4CD5E7C80CC8DCF0DAE8BE20 /* QCKDSL.h */, + DA811EAF305882306461D825ABECDF55 /* QCKDSL.m */, + A4EBE78F08CAF0EE3CCD466260124052 /* Quick.h */, + B6EBDBEA168F789D06B877D03D8C88C5 /* QuickConfiguration.h */, + 661EB02883EF30EF676A1A85103B8AD6 /* QuickConfiguration.m */, + E719026C02B7C5BBE36BE443A1CD36E8 /* QuickSpec.h */, + 9F4EA0951090CB207280EDF22B33DED0 /* QuickSpec.m */, + FE11866B85BC5F4A480944AF99FF737B /* SuiteHooks.swift */, + 03981B0FA308AE420FED8B79B0693BE2 /* World.h */, + 82754B1048547A05031F62DAD4858122 /* World.swift */, + F6D03D12E8FAB6F62CCAC73D1BE83763 /* World+DSL.h */, + 71FABCCA7F9580B6D2490461BD611901 /* World+DSL.swift */, + A3EA96588DB6A51D840253B72BD70B26 /* Support Files */, ); - path = RxCocoa; + path = Quick; sourceTree = ""; }; - DB1F517A37DC3EC7B015FBA7DEC7A717 /* Pod */ = { + A3EA96588DB6A51D840253B72BD70B26 /* Support Files */ = { isa = PBXGroup; children = ( - 1E1E9148A29748B313FA5C27112D13E7 /* Classes */, + FB680C80A639FB045A2713763FE9158B /* Info.plist */, + 808C133A0C38919540482FEE02529A8D /* Quick.modulemap */, + EFFDD4779DF565C0B366CC17E693DA1D /* Quick.xcconfig */, + 1369288C6F4B1CABE00859A2139756D5 /* Quick-dummy.m */, + 6C07A49A99A3C40BFDD037516E330A1A /* Quick-prefix.pch */, + E57A87F6D6479BF124B477B312716440 /* Quick-umbrella.h */, ); - path = Pod; + name = "Support Files"; + path = "../Target Support Files/Quick"; sourceTree = ""; }; - F041EA47E1F58C91BDD7A6388EF61B2A /* Support Files */ = { + A944D51C6A1514904C8425C1B361D6F2 /* Nimble */ = { isa = PBXGroup; children = ( - 861F5443554B9A5F40418F73845339F1 /* Info.plist */, - 54476A40BF1D5C889DDD51FD49F813D6 /* Quick.modulemap */, - 1496FE073B8DF8A4F2FD4B4320333670 /* Quick.xcconfig */, - D546CDC51A2B68A69B18FB861578BC92 /* Quick-dummy.m */, - B48AA326C2517B4A3AD46710CAFABEB3 /* Quick-prefix.pch */, - 855664731536D04DA3043D9B1B96F6C2 /* Quick-umbrella.h */, + E8786AA95E0F16E226F7083A064148D7 /* AdapterProtocols.swift */, + 2FC79F324FAEEB04CC7920F262A71E19 /* AllPass.swift */, + 2BF8B9C7CCD3BC8D1CA4266EFAE2061B /* AssertionDispatcher.swift */, + 13A89FAF58F8775CF99765515CC0D92D /* AssertionRecorder.swift */, + E0DA9989EFEFC1C87B7044A74842F68F /* AsyncMatcherWrapper.swift */, + E6A2577B973AEC422592A8C321F2B708 /* BeAKindOf.swift */, + 2DF8C44EB7809A8F5112A670F61F01E6 /* BeAnInstanceOf.swift */, + 6C04402FD45FB0175B2825E004971407 /* BeCloseTo.swift */, + 555ABDAE3554117683373A6BF333F6CE /* BeEmpty.swift */, + 21EBB23CA7B60CE7BA7E2C899CD2563E /* BeginWith.swift */, + 13A05233DA4A23B026E504504FC50400 /* BeGreaterThan.swift */, + AF6875A65087E7134F2DDBB26663183C /* BeGreaterThanOrEqualTo.swift */, + F1F12C3D12900252C217BE67AD87F87F /* BeIdenticalTo.swift */, + DB53E3ADA163D632662BE585A559FC7F /* BeLessThan.swift */, + EC21EEB4A75650C1603E9B4F6B48EE57 /* BeLessThanOrEqual.swift */, + 9DD4DEB0DD4F34F675103CCD1B62157E /* BeLogical.swift */, + EDD044C877A84C26DE2454976F4554A1 /* BeNil.swift */, + 665611D0B629D7060B4D67D6976EB27B /* Contain.swift */, + 20CC9DC58EC6B98B8511226F337CB01F /* DSL.h */, + 636794D65F93F393CF47578BEDF5A6E7 /* DSL.m */, + 325890D356E2DA4D654195D4D8787DA7 /* DSL.swift */, + 61E2B3B9BF24496F8F074B6A7567A8AF /* DSL+Wait.swift */, + 2E9C7E0B72D53951B0E0C91723C76CCA /* EndWith.swift */, + 2FF7CF31501BCA76821E982E0C0BC840 /* Equal.swift */, + 65D4B54BD8014F2C4D341991F579090A /* Expectation.swift */, + 13221085EE95F2154C02325653E9BF98 /* Expression.swift */, + 6B7A95CD86CC97C57FCA56128F92D4D7 /* FailureMessage.swift */, + 88A7A16270583F0773A8B14CA14DA94F /* Functional.swift */, + 07D575B62F7EC6A37E087AA37A896542 /* HaveCount.swift */, + 403FCF321BD600B9F349E53E6848C059 /* Match.swift */, + 2A826522DFB8C2E183B06677EC9F1872 /* MatcherFunc.swift */, + 5EF98A6DE6E533C38537E34E2DF35FBC /* MatcherProtocols.swift */, + E7456CE2F8D8AEE4A092F0F2BE565199 /* Nimble.h */, + 9B2F863710EF743EBA917532D4DAF47D /* NimbleXCTestHandler.swift */, + DBA03286BE95DC778D2B75C7715047BE /* NMBExceptionCapture.h */, + 717FE6F478655CA66A4496D0A02F5FE2 /* NMBExceptionCapture.m */, + C14BC8D859C676A34926954CA95588CD /* ObjCExpectation.swift */, + 346001855A0E8BD78989E85D36C738A9 /* ObjCMatcher.swift */, + E434229D854327B5166E099021AB2C96 /* Poll.swift */, + 0AB78BF3A5A82F245298A6571570C019 /* RaisesException.swift */, + 56557B1B1ACBF8792DC063BB44AC26C1 /* SourceLocation.swift */, + 12B6DE6FC7FD18517BDACE864CDC972C /* Stringers.swift */, + A084BED264B6528A10964FB9C865A01D /* ThrowError.swift */, + 24B5D2A38E0986AF9366A7E640F1B8B4 /* Support Files */, ); - name = "Support Files"; - path = "../Target Support Files/Quick"; + path = Nimble; sourceTree = ""; }; - F6C336BE73C171CA333BBC2B0AC72235 /* Pods */ = { + B7B80995527643776607AFFA75B91E24 /* Targets Support Files */ = { isa = PBXGroup; children = ( - 66215C0ECE52CE7EF5AE8996C5BF5702 /* Nimble */, - 8672A137730F8F16C2947400CE9E0272 /* Quick */, - C6CEFDC3079EEA2E212039DD33F933D5 /* RxCocoa */, - 531A40B7A343EFD2699B515FA51E8858 /* RxSwift */, + 75D98FF52E597A11900E131B6C4E1ADA /* Pods */, ); - name = Pods; + name = "Targets Support Files"; sourceTree = ""; }; - FEE4B7F8972217C1641A75AE30626993 /* Support Files */ = { + DB1F517A37DC3EC7B015FBA7DEC7A717 /* Pod */ = { isa = PBXGroup; children = ( - BBC998D496E40CE591FF8B166F969AA5 /* Info.plist */, - 72ABEC03004956AA843B63941B391EA5 /* RxSwift.modulemap */, - 10293EA48C95665265E02EF7F984D755 /* RxSwift.xcconfig */, - 6F1EF12172398D5FD7ACC6F709C8ADC5 /* RxSwift-dummy.m */, - CAE5F0F54B6CA4C21F28816D1336D7F7 /* RxSwift-prefix.pch */, - CDAFB4E1ED30C2B7B4F0BC9BEBCD4E62 /* RxSwift-umbrella.h */, + 1E1E9148A29748B313FA5C27112D13E7 /* Classes */, ); - name = "Support Files"; - path = "../Target Support Files/RxSwift"; + path = Pod; sourceTree = ""; }; /* End PBXGroup section */ @@ -1268,7 +1313,7 @@ isa = PBXNativeTarget; buildConfigurationList = C3401862F9110E36BE946F590F3714B9 /* Build configuration list for PBXNativeTarget "RxCocoa" */; buildPhases = ( - 13E5E5329C356E21BE0A1DF0FDE7BBF9 /* Sources */, + 091CA5927C99CFB937F8B9CA63179135 /* Sources */, 24996C766550EA5DB222C4507D013399 /* Frameworks */, 1BB4DB7BCF39508B3018D7B35CF3F54D /* Headers */, ); @@ -1308,7 +1353,7 @@ isa = PBXNativeTarget; buildConfigurationList = 5F5D759357EBF000E76572AA308A0437 /* Build configuration list for PBXNativeTarget "RxSwift" */; buildPhases = ( - 53CFD410E1D64902061B75A8C8068F9E /* Sources */, + 30BA7665B4BDE0BA59E2A234F30FB103 /* Sources */, A1DF12787F5FC19099513FCB1C7999C5 /* Frameworks */, 7FE130ADE28C36A72F72FF32DF352A3E /* Headers */, ); @@ -1325,7 +1370,7 @@ isa = PBXNativeTarget; buildConfigurationList = 2CB2ED8C9F2870A78EC99D2CBB39D095 /* Build configuration list for PBXNativeTarget "Quick" */; buildPhases = ( - A8B88FE7F04ED8BC764A5140E118EBAE /* Sources */, + 8691DEC3FB291C307263661395027868 /* Sources */, 24822D7D804E3708F15F3F98DA65BA23 /* Frameworks */, 475DB07769DEFA7EFE9FD2222BFA1A5C /* Headers */, ); @@ -1342,7 +1387,7 @@ isa = PBXNativeTarget; buildConfigurationList = D4DCEA35595251EC6B9BDC29A571E7B2 /* Build configuration list for PBXNativeTarget "Nimble" */; buildPhases = ( - CC264E557A8A184C30ECCED31C74BB34 /* Sources */, + 8EBE0468DF062B223C25A0A03DDC4664 /* Sources */, 7FBD7B1537B634BB7C94BB4D4384BD63 /* Frameworks */, E558CFA5C045F339837B0B7645133081 /* Headers */, ); @@ -1359,7 +1404,7 @@ isa = PBXNativeTarget; buildConfigurationList = A35429A0DCD8CE97B9D5EDC4AC59387E /* Build configuration list for PBXNativeTarget "RxViewModel" */; buildPhases = ( - 04320F96AFC2A8E68F371533FBCFAAE5 /* Sources */, + 498281D397EE4F4EB853BF5CB0C4EDBD /* Sources */, 320D559BC9BC689F0E8F2C438F6E6188 /* Frameworks */, 48FA9A6FF011CF9BB52BCC555B35A524 /* Headers */, ); @@ -1381,7 +1426,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0700; + LastUpgradeCheck = 0710; }; buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; @@ -1406,293 +1451,308 @@ /* End PBXProject section */ /* Begin PBXSourcesBuildPhase section */ - 04320F96AFC2A8E68F371533FBCFAAE5 /* Sources */ = { + 091CA5927C99CFB937F8B9CA63179135 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - A7BEDE7090C0D92B53F9521376817538 /* Observable + Operations.swift in Sources */, - 73CCD4AC6B4FC93805173AF117E09314 /* RxViewModel-dummy.m in Sources */, - 8A24DF847DF11C57C4A0F992A053DD5A /* RxViewModel.swift in Sources */, + 1E300752100F1E38295702630C4CAEC6 /* _RX.m in Sources */, + 3416569D4E949EA49142D4C56493E5B1 /* _RXDelegateProxy.m in Sources */, + F44870C5F269537D083F6B4268F42657 /* _RXKVOObserver.m in Sources */, + C5D87AF4C76D94E88544A187BAD7E1B1 /* _RXSwizzling.m in Sources */, + 9A3F974A57A2AE11071620438C912BD8 /* CLLocationManager+Rx.swift in Sources */, + F92E438998BE7C612D45DBABEDB9FFFC /* ControlEvent+Driver.swift in Sources */, + 598B9EB353BB86F764057890411722CE /* ControlEvent.swift in Sources */, + 573DA16D62ADAA3F2AB014638B8EE5B6 /* ControlProperty+Driver.swift in Sources */, + 2C2C551762326077E096674BAD274B4C /* ControlProperty.swift in Sources */, + 1A9B78EC4CBBC55E932AF1EF8723878C /* ControlTarget.swift in Sources */, + 05591ADB73B176FDB9C8DEC6482E88A0 /* Deallocating.swift in Sources */, + 29EDA59028FDEA327F9859827A45A34B /* DeinitAction.swift in Sources */, + B6EDD524072AEE8AC2640246A9B3C01B /* DelegateProxy.swift in Sources */, + 89269AD39EF1F188CA826A1D10FB1E38 /* DelegateProxyType.swift in Sources */, + 2F6BB92D94F129AFA832930F4DF3E117 /* Driver+Operators+arity.swift in Sources */, + FD8FCAEF23275CE11EB50C06FCA9520C /* Driver+Operators.swift in Sources */, + AA99D01636D392E3250BFAAA2E4EF3FC /* Driver+Subscription.swift in Sources */, + AE35110B69DA612B83AE58B7DA8F3D64 /* Driver.swift in Sources */, + 92260841EA0F17C9EC3A29EEF9663CFE /* ItemEvents.swift in Sources */, + 18AA88CC3309FF2EA3C49EB17C2B5A8D /* KVOObservable.swift in Sources */, + 9B2D2557683BD793C89C722E55C2EBBC /* KVOObserver.swift in Sources */, + D3DD923DE3B05EFA95985D678CBA74A9 /* KVORepresentable+CoreGraphics.swift in Sources */, + 9F488A219731F80E37207B12FA0E21FD /* KVORepresentable+Swift.swift in Sources */, + EEAAC9A0F987F37066673248A7680A09 /* KVORepresentable.swift in Sources */, + 1B1E74DEE9AF126702041D2CE1AECB60 /* Logging.swift in Sources */, + EC545653122871760DCC1BB0C2DDFDC0 /* NSNotificationCenter+Rx.swift in Sources */, + 2C4E8458E8229ACE2E44683A032879D9 /* NSObject+Rx+CoreGraphics.swift in Sources */, + 2E3A067150D042CFAA9F03828A6AA4E0 /* NSObject+Rx+KVORepresentable.swift in Sources */, + 878A297C62E1F2C3B3964A6C61378209 /* NSObject+Rx+RawRepresentable.swift in Sources */, + 0B82D988A17A387546E3BCB1A71D6434 /* NSObject+Rx.swift in Sources */, + CE210B51F4624525B3D01D576098C94C /* NSURLSession+Rx.swift in Sources */, + 5E0473642B6ED5D07C42D136E6421281 /* Observable+Bind.swift in Sources */, + 1C0EBFFE446B0C00EC595458FFFF2046 /* ObservableConvertibleType+Driver.swift in Sources */, + F08D88A1AB0E71F7333D2CD819315543 /* RxActionSheetDelegateProxy.swift in Sources */, + 219004B3DB934C5E60052A2BE3E2A06B /* RxAlertViewDelegateProxy.swift in Sources */, + C827BA92ED133C5D19635B067109F5DE /* RxCLLocationManagerDelegateProxy.swift in Sources */, + A02C1B3B42D0E42A943F9EAB9FB4FA5D /* RxCocoa-dummy.m in Sources */, + 3D2107FB2C33D709FC46D3199474E308 /* RxCocoa.swift in Sources */, + CF74C2E3F740A60A27F33C2658DEC3FD /* RxCollectionViewDataSourceProxy.swift in Sources */, + 65461F05F182DA812A391B691F10CFFF /* RxCollectionViewDataSourceType.swift in Sources */, + E0805CF687D4BE3FC7F0A00645DF151D /* RxCollectionViewDelegateProxy.swift in Sources */, + CD8D44DE1572AE6D4D02C5E25C15F945 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */, + 08D820256981EA1C8232C1DC6A709766 /* RxScrollViewDelegateProxy.swift in Sources */, + 3B291C8EEC0913276EF89C07A07B816A /* RxSearchBarDelegateProxy.swift in Sources */, + ACDDCC5FAA5508735577ADA2C1752211 /* RxTableViewDataSourceProxy.swift in Sources */, + C68582E76A3C51BE0C23183A9E846AFD /* RxTableViewDataSourceType.swift in Sources */, + E94930D05F4F68FAB63A8FBBAD8B9042 /* RxTableViewDelegateProxy.swift in Sources */, + 0CF5E5D0A68C82359E543C290E524341 /* RxTableViewReactiveArrayDataSource.swift in Sources */, + 7653803BCD763043C92715ACA962DF47 /* RxTarget.swift in Sources */, + AB9696031EC7EAD6A9B8DE237C0E1F21 /* RxTextViewDelegateProxy.swift in Sources */, + B6ECB13C586B52DE4F9D7B8B4F9568F9 /* UIActionSheet+Rx.swift in Sources */, + 2F4CA8BBAB334AB8FA411DB1D2EDE216 /* UIAlertView+Rx.swift in Sources */, + 71F08CBF8A3D754EAD68FF263CBB9CC3 /* UIBarButtonItem+Rx.swift in Sources */, + CD56FCEBBA44EC98A59E59FFAFD0C1C2 /* UIButton+Rx.swift in Sources */, + 0EC967366C034714F38D1AE46414607E /* UICollectionView+Rx.swift in Sources */, + 55A789B421A837266C9C3132789241A3 /* UIControl+Rx.swift in Sources */, + 8439610E5269FDE8FD019C9ED8CF09E9 /* UIDatePicker+Rx.swift in Sources */, + 90BD973AFFF908EDE9BF7CCCFF580DC0 /* UIGestureRecognizer+Rx.swift in Sources */, + D9817C16EAC54DD6231C940B71997D5F /* UIImageView+Rx.swift in Sources */, + 0FD8C08D17B5106B80E2ECCB1264BCDF /* UILabel+Rx.swift in Sources */, + 605E0A36043332C88B592412C87A6BD9 /* UIScrollView+Rx.swift in Sources */, + 9A11711A4026E16D9BB753BAF222DF96 /* UISearchBar+Rx.swift in Sources */, + 4158E7886C1CDFD9489719BEC694C106 /* UISegmentedControl+Rx.swift in Sources */, + C29F445840722830229F35FCBEE4C62B /* UISlider+Rx.swift in Sources */, + 00260BE5558B6A22EE0E22C57E8BBAE0 /* UIStepper+Rx.swift in Sources */, + 2E42D5C4C58545D690613AA478700292 /* UISwitch+Rx.swift in Sources */, + 3D4BD7DA7301A06E15F4BA8BACAF3B9E /* UITableView+Rx.swift in Sources */, + 8B20DE51808EAF8F76E78BDC29EFD2FC /* UITextField+Rx.swift in Sources */, + 5A2753D00CB4BB969132A451F2E83CD3 /* UITextView+Rx.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 13E5E5329C356E21BE0A1DF0FDE7BBF9 /* Sources */ = { + 30BA7665B4BDE0BA59E2A234F30FB103 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 2D86F8942E7955AC953CAA5A87612059 /* _RX.m in Sources */, - 9F7B1DAE5EBD3F1ECC7A5A3B09CD5D59 /* _RXDelegateProxy.m in Sources */, - 2195104D691627D25075A7421FF8B609 /* _RXKVOObserver.m in Sources */, - C113AE471641AA09478BC93B09C84984 /* _RXSwizzling.m in Sources */, - ECC5EE2A87EBA828D3560EFB1887E43E /* CLLocationManager+Rx.swift in Sources */, - D1E52696DB392488D25C9A46A5BDAB5D /* ControlEvent+Driver.swift in Sources */, - 63940C1FD9873C5C4D8973B2256F27FE /* ControlEvent.swift in Sources */, - 33B9E1276DDEE4E68075B9F7C67A7041 /* ControlProperty+Driver.swift in Sources */, - 3CC7F815D61AB4240638B97CDFA4937F /* ControlProperty.swift in Sources */, - 49B92949E7F1A9D1C9ECAE8E51040B62 /* ControlTarget.swift in Sources */, - C7D4F4273F2837AD0C80A9F4069D0038 /* Deallocating.swift in Sources */, - 8CAEE723321E7D2A50F7637F8251E23D /* DeinitAction.swift in Sources */, - 5C41087D5303BA20256DCF7C4F3F65D3 /* DelegateProxy.swift in Sources */, - 76EF98D0915113B8548E1FE195F4F838 /* DelegateProxyType.swift in Sources */, - 887C1A3A2F76DDA5110AEAC52B81E6C4 /* Driver+Operators+arity.swift in Sources */, - CCC7957A00FB4FA2FEB38A51C86302B5 /* Driver+Operators.swift in Sources */, - C589F34CEFDBB08093364625CC2E9EAD /* Driver+Subscription.swift in Sources */, - AAB81BA6C6EAE000C2D6B8C7679BCA12 /* Driver.swift in Sources */, - 5B00BF01611837E6ADC5E86C650BE6B3 /* ItemEvents.swift in Sources */, - EBAB1DFBBA5B2D63C1BDD08A3F87D4FB /* KVOObservable.swift in Sources */, - 3FF3A05D2925BDAE48DCC0A211D74A10 /* KVOObserver.swift in Sources */, - AF066DEF6FE5F1BBCE6E95024C0769D0 /* Logging.swift in Sources */, - 0B535234D99DF2983A2400A3C143550E /* NSNotificationCenter+Rx.swift in Sources */, - D0F7CC9A3924711B7866C76B99221CC4 /* NSObject+Rx+CoreGraphics.swift in Sources */, - D8413629951869E720290975BC1F090A /* NSObject+Rx.swift in Sources */, - 6D938A3AF2535E3B9E2D57913AEFBF47 /* NSURLSession+Rx.swift in Sources */, - 8123AF1C85A57133D2B8BE04FA13D011 /* Observable+Bind.swift in Sources */, - B38930FB2B6DA14744D54B83B31089E7 /* ObservableConvertibleType+Driver.swift in Sources */, - 39A4583EC2FAA20578DA099841978236 /* RxActionSheetDelegateProxy.swift in Sources */, - A306BC11C32578A5414FEE52E7027C54 /* RxAlertViewDelegateProxy.swift in Sources */, - 903904607C724FC8E9E1916D5DE70B47 /* RxCLLocationManagerDelegateProxy.swift in Sources */, - F61080163ADF9AD341936DE28EB27B51 /* RxCocoa-dummy.m in Sources */, - 2CCF0F43FA0DAFE8623D26CE573C0F57 /* RxCocoa.swift in Sources */, - 169A490B21A475B88A83E84DD1C37526 /* RxCollectionViewDataSourceProxy.swift in Sources */, - 4995B1E340FC3B18B81CCF18EDA16294 /* RxCollectionViewDataSourceType.swift in Sources */, - B5302416950805B8CC94A1706CCA5709 /* RxCollectionViewDelegateProxy.swift in Sources */, - 15102951F2B9859AAC923B0C22EE4D50 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */, - F4FA2AB0F102898C97B7939C61D542C2 /* RxScrollViewDelegateProxy.swift in Sources */, - 7CA3431FAFD4A06A2F9A4BFA862C58F7 /* RxSearchBarDelegateProxy.swift in Sources */, - 62D084F031893CE13FAC6FB40E777F6B /* RxTableViewDataSourceProxy.swift in Sources */, - 6D664B7C28700275D18629A558735A27 /* RxTableViewDataSourceType.swift in Sources */, - B7315562903BF6831B2D4A31DB6684F7 /* RxTableViewDelegateProxy.swift in Sources */, - 170E42BD00E888836BDADCAC5A277E6A /* RxTableViewReactiveArrayDataSource.swift in Sources */, - E472924B4B0E7A91499C86B5307BD2EB /* RxTarget.swift in Sources */, - 78CF4C64A9BCCBE5588A63C455886274 /* RxTextViewDelegateProxy.swift in Sources */, - 3EADB9BDA8B915A53DE7EB325DC54ABC /* UIActionSheet+Rx.swift in Sources */, - C21095EF357CCD8E577CAFB5E857AD3E /* UIAlertView+Rx.swift in Sources */, - 2CD69C9423CBE17F69AEB40CC7B7A662 /* UIBarButtonItem+Rx.swift in Sources */, - 4B50126FD5E8777F8F9971EC125A046E /* UIButton+Rx.swift in Sources */, - 87CF09869FB63F548FA1A574BB766835 /* UICollectionView+Rx.swift in Sources */, - 69EE143886E1D18B526A438C5B704F2E /* UIControl+Rx.swift in Sources */, - 7E1F2F5B73A4241B6184591ECC2367A0 /* UIDatePicker+Rx.swift in Sources */, - 98A24724608850968D2C550C214BAEA2 /* UIGestureRecognizer+Rx.swift in Sources */, - 4BE4818D4B81C8906C431826D1FF0497 /* UIImageView+Rx.swift in Sources */, - D3E3A5B9426B490E6E56C63DF0AEEC26 /* UILabel+Rx.swift in Sources */, - F178271C7CC37D0558A4DCD4D5B064A1 /* UIScrollView+Rx.swift in Sources */, - 17F55EBB935F79340EF0B47219ED91F4 /* UISearchBar+Rx.swift in Sources */, - 33DB05E4D6DCCC98B94944DD00734849 /* UISegmentedControl+Rx.swift in Sources */, - A4DBD83644B97FFC130CC23ECB92B22A /* UISlider+Rx.swift in Sources */, - 4F1384A0ED65484BE87CCBB31A1E6CEB /* UIStepper+Rx.swift in Sources */, - 378F8701C22210D12ACBA5153F383B1E /* UISwitch+Rx.swift in Sources */, - EBE92264498B16747F9C390E6894F505 /* UITableView+Rx.swift in Sources */, - 7C7CB2A01AA1B79ACC4AEC65CF719BE8 /* UITextField+Rx.swift in Sources */, - D04A78D59829BB063F20B2D926B5FA19 /* UITextView+Rx.swift in Sources */, + 6CF908F3C54D187B41D7C183E83B3809 /* AddRef.swift in Sources */, + 6BEE5572CCAEEFC43FD227073B6B00A5 /* Amb.swift in Sources */, + 478ED67C193B57F9A6BB6C2FC72882F9 /* AnonymousDisposable.swift in Sources */, + D01EA3C98D502281B6E654DB64F4761D /* AnonymousInvocable.swift in Sources */, + CEC489B7560EC352A50032A6B7B355C6 /* AnonymousObservable.swift in Sources */, + 3EE005A9D588934E3E62B5A403021251 /* AnonymousObserver.swift in Sources */, + 2388ED0F0C862ACD7513FABBBC2176FF /* AnyObserver.swift in Sources */, + FBA4A98AB649EF7AC1E287DA5BAC8325 /* AsyncLock.swift in Sources */, + 95860A4C6B63FE9B53320DE11E4F8CC7 /* Bag.swift in Sources */, + A6DA41895A2B7E2FCD9B89CF8EB469FB /* BehaviorSubject.swift in Sources */, + 08E6B8ECA8EF22BADCA792ECDFD2E81F /* BinaryDisposable.swift in Sources */, + 601BAC8FD195D5C215E0A696A83B91E2 /* BooleanDisposable.swift in Sources */, + 55F90E4ACF8C478AB41BE66EA57D881C /* Buffer.swift in Sources */, + A35D08AE2AD2D0CD0008FBB99620BE7A /* Cancelable.swift in Sources */, + 40540FC48F5FE9D526B825E0E573030E /* Catch.swift in Sources */, + BAEA2F5B537B3BCD8563BCD6A9F760BA /* CombineLatest+arity.swift in Sources */, + 27CF3A354CDF832B2999D1B93803E3F5 /* CombineLatest+CollectionType.swift in Sources */, + 900E2DB65937E49ADAB1FCA376D8A2D6 /* CombineLatest.swift in Sources */, + 98606F0E76ED466D25FAF0FCA82FABE2 /* CompositeDisposable.swift in Sources */, + 73BA135C524FB52201827980BFD7D18D /* Concat.swift in Sources */, + C858F019237B606ED5987B1DC45F4610 /* ConcurrentDispatchQueueScheduler.swift in Sources */, + 229F47DBAFEB3530F01019E14C40F5AE /* ConcurrentMainScheduler.swift in Sources */, + D830CD354CA9CCB324A8254B962B7E54 /* ConnectableObservable.swift in Sources */, + 465C646FCF06FEF0F7934EB4BD80438B /* ConnectableObservableType.swift in Sources */, + 562BFF295C7A2C5B2F4B9817F3994BBF /* CurrentThreadScheduler.swift in Sources */, + E111AE2BD744870A0902D5AE75F74207 /* Debug.swift in Sources */, + 78BEBEF17F9CE8BF45CDEF60330C6357 /* Deferred.swift in Sources */, + 7199915BF882EF42DEC86054E1CD2CEF /* DelaySubscription.swift in Sources */, + 54BAFE95048EE701B6C782F3C3B1AF70 /* DispatchQueueSchedulerPriority.swift in Sources */, + 1223C22B909DEDFAF45459E9737C091E /* Disposable.swift in Sources */, + 9BD95AEFD69C0CCC23E6B6DD654C96AD /* DisposeBag.swift in Sources */, + F383A28626A08D65B9C5AF674A9C5D5A /* DisposeBase.swift in Sources */, + DC221123ED4FB6BB4987B0DC8E6F3918 /* DistinctUntilChanged.swift in Sources */, + 6E184482BE36679E6DE742968A2B80B3 /* Do.swift in Sources */, + 8DC3C0A301A17E07D7FAFC8D0F06AF47 /* ElementAt.swift in Sources */, + B4CB215FD42A896689C2929161B889BF /* Empty.swift in Sources */, + 8E6DCA484CA1B0CD4F5CFC90262DDF83 /* Error.swift in Sources */, + 8FFA6699E85E69EE11387240232612FB /* Event.swift in Sources */, + 1141A7923E83923A580DC6BB0101501B /* FailWith.swift in Sources */, + FF4E5B87C3FF1F6A51F918159CD1A359 /* Filter.swift in Sources */, + 87F44DE7E98711BC33A824BBBA48F5C4 /* Generate.swift in Sources */, + F428336E9611EA2FC31A46398EC8A8DA /* ImmediateScheduler.swift in Sources */, + 73E0D63250771D1939487B656C4F7FFB /* ImmediateSchedulerType.swift in Sources */, + 2F66104526B6BAD3AE1240B42CBAE45A /* InfiniteSequence.swift in Sources */, + B46798AAA28746629E0321215C17E8A0 /* InvocableScheduledItem.swift in Sources */, + 16DD60934CEF501BA14A362E417389F3 /* InvocableType.swift in Sources */, + 457F06563A3E676AF62E412D42B8B039 /* Just.swift in Sources */, + 787468AB34B55DE5F1510F5110E767B4 /* Lock.swift in Sources */, + 0933E1D852C6DE1BAAC47056BF4FE5C7 /* LockOwnerType.swift in Sources */, + 16D61DE0E467EB7D4F6DE2C9CC9747AF /* MainScheduler.swift in Sources */, + 9A0C1F487594C8AA0C8E5EE9D4791000 /* Map.swift in Sources */, + CB18DF5E8D5E30D71B50550B98AFE48A /* Merge.swift in Sources */, + 647CEEEFDADC47FDBB443267C4296795 /* Multicast.swift in Sources */, + DFE38F0A191D16706AC4F36CFA9F3F91 /* NAryDisposable.swift in Sources */, + 753E676D4243C050A23F7C1382CEDF09 /* Never.swift in Sources */, + 48CBC3C15CB0FC697FBAAA26A7030AE6 /* NopDisposable.swift in Sources */, + 9061D81C3FBABE4A45C628C39BC3D22B /* Observable+Aggregate.swift in Sources */, + 18FF00DFDE7D2EB631BF426B0AB45CA2 /* Observable+Binding.swift in Sources */, + FA56C39B1E21E763306FFBECE4B0A89A /* Observable+Concurrency.swift in Sources */, + 622AC5273F918E0CFAA42B1653CDED2E /* Observable+Creation.swift in Sources */, + 93B6BD01790BDAC5C07AF7BFA1BFF33A /* Observable+Debug.swift in Sources */, + D8488287B871C72992F713CF60877332 /* Observable+Extensions.swift in Sources */, + E03B2E56B761CE041243AA23C69901A4 /* Observable+Multiple.swift in Sources */, + 4B6E8F3FD76AD1E47934942FF5836455 /* Observable+Single.swift in Sources */, + 561D3727F9015D9090435B719CC17A95 /* Observable+StandardSequenceOperators.swift in Sources */, + EA830C761C60EA1D18E77DAF725A8BFA /* Observable+Time.swift in Sources */, + 2A43C40E1723F2E1A51E5DE8B7E67320 /* Observable.swift in Sources */, + FD6A076A9F756C1BE90E4288361D4373 /* ObservableConvertibleType.swift in Sources */, + 1A0D9EAD69055F4CFC08B84E74A6EEC7 /* ObservableType.swift in Sources */, + DCF32EBD94A310862907600F0C58F944 /* ObserveOn.swift in Sources */, + 3F091BFA871873E0D57A0627B843B44D /* ObserveOnSerialDispatchQueue.swift in Sources */, + C659C03BA1CA13C620A4C6A2F3998026 /* ObserverBase.swift in Sources */, + 2506CE2CA9D390C363BE7BB19D2189B1 /* ObserverType+Extensions.swift in Sources */, + 0042CCD2DDC86BB0D1360CDBB46356A9 /* ObserverType.swift in Sources */, + 07E7A5D77AA06C2FE5638E53E70784D1 /* OperationQueueScheduler.swift in Sources */, + 61A6834D1E3A4785AADA05428BF78C45 /* Producer.swift in Sources */, + 3196B5AFC90D5F3472E1F7F134CDB60D /* PublishSubject.swift in Sources */, + 9FCADE3A1A125C2EFAFCEAB2A67C6396 /* Queue.swift in Sources */, + 5F387EA4759DF80EF5C0A9177FD310D8 /* Range.swift in Sources */, + B5ED0C1EE487A7A07A080F56204B3A05 /* RecursiveScheduler.swift in Sources */, + 88E77CBF27461B82E2EFCE184429BDA0 /* Reduce.swift in Sources */, + 480EE6AD17FF0981368F389FE9CA6B1E /* RefCount.swift in Sources */, + 6FA1B946440A3C62CD5C355B60723437 /* RefCountDisposable.swift in Sources */, + 4E539425C3DBA82658E3D63690FDA6DF /* Repeat.swift in Sources */, + 50C4AF642DA2CA38E71B65D52E58EC0D /* ReplaySubject.swift in Sources */, + A55EF88CA7FCBF3C0CF1A349ADBFA00E /* RetryWhen.swift in Sources */, + 75B1F942FCA0D3E19634EC0F98E59DD2 /* Rx.swift in Sources */, + 51B7AC170A4A95149C4BA210918D9792 /* RxBox.swift in Sources */, + 74542118BE5FD6B135F27B840F1B469F /* RxSwift-dummy.m in Sources */, + 2D339AC127995D322F14D7EFF24EA219 /* Sample.swift in Sources */, + C9B5B39DDFD4DC1F421D3247C1FB2EB0 /* Scan.swift in Sources */, + 836A0FF5AB4D1011BE943111970C2A89 /* ScheduledDisposable.swift in Sources */, + 84F065BAD74CCEEAA37A4D766F7C7AB0 /* ScheduledItem.swift in Sources */, + 2E6E09BF7ABDB18FCD1CBCC65826E161 /* ScheduledItemType.swift in Sources */, + 1C85C22AA28666912E49EFD67C4837D7 /* SchedulerServices+Emulation.swift in Sources */, + F98FF0C7C7B1F9201716719D5B24788E /* SchedulerType.swift in Sources */, + 9FD0AD1222536F8BE8B2608055FD67BD /* ScopedDisposable.swift in Sources */, + BB3F04069C5AD9D358364341DB3166B4 /* Sequence.swift in Sources */, + BF73D6ADA66E0DF565D4250363D99EE9 /* SerialDispatchQueueScheduler.swift in Sources */, + 4D6775C42279C617C2B0B42A1A8FABE5 /* SerialDisposable.swift in Sources */, + 66D014ECE6B1C5786F166F99C991A5E7 /* ShareReplay1.swift in Sources */, + 29A0F4B927E6805FF8D7A343371EF38E /* SingleAssignmentDisposable.swift in Sources */, + D56CC1BB7E4175B29D6C257B51D5C1E9 /* SingleAsync.swift in Sources */, + 92996AF407E1F786CD7717BB8A4D67C3 /* Sink.swift in Sources */, + 04A99244BAE6DD14A1701A8084BF1121 /* Skip.swift in Sources */, + E7C3009A81607F5777FF5BBF47454E1B /* SkipUntil.swift in Sources */, + 1FA02C3EF81735D50FCE269CEDA697F9 /* SkipWhile.swift in Sources */, + 6DDB4C576F30231EC34EDC3BBABE7924 /* StableCompositeDisposable.swift in Sources */, + FD1654BCD9F5FCD04903DCC48F17EBB5 /* StartWith.swift in Sources */, + F0F8212065ED4E87869F03E6A69B92EF /* SubjectType.swift in Sources */, + E5960865E152FFB7452321881324487D /* SubscribeOn.swift in Sources */, + 954601AEA81A9B63771D3C254A780D65 /* SubscriptionDisposable.swift in Sources */, + 6D41785BDDE96062AB4B1A6D4D969756 /* Switch.swift in Sources */, + 87F7F80E4205F102E2864A6EDB527CE8 /* SynchronizedDisposeType.swift in Sources */, + A48256B2FE44B3DD2528828A9FB49D55 /* SynchronizedOnType.swift in Sources */, + CC442683DF47EC131B86E2B20D0159C9 /* SynchronizedSubscribeType.swift in Sources */, + 6620D0C35F5107EB2A900F0D15A6B0DB /* SynchronizedUnsubscribeType.swift in Sources */, + 48C92830CE40EC741B2AD64C8118F6D2 /* TailRecursiveSink.swift in Sources */, + 4D3026322DBD623C0069B2C57BD6653D /* Take.swift in Sources */, + 49BA79CBE6C2D07BACE92BDEC4C8563A /* TakeLast.swift in Sources */, + 7508CDD1A4E987609D4FDC5A457444DD /* TakeUntil.swift in Sources */, + F37814A7A1827B05D60C6F492DB5FA53 /* TakeWhile.swift in Sources */, + 26F35333137F7E4EED15F0B48AADE629 /* Throttle.swift in Sources */, + DE05379D2523221E7F1A53B8656D82D7 /* Timer.swift in Sources */, + EC03DD68D6B18523F9DC50DCFBACD427 /* ToArray.swift in Sources */, + 2DFEBA02B28BBA0E16C5098490979452 /* Using.swift in Sources */, + 13E87C820551FB7CDF7B32D78003CF62 /* Variable.swift in Sources */, + 394EC4D048975113E21F60138B520F12 /* Window.swift in Sources */, + 357B54A17D2E512E6400464ED23FBA84 /* WithLatestFrom.swift in Sources */, + 761B8D6A3A1B4C8B43F97EBB4DD25721 /* Zip+arity.swift in Sources */, + 3EBF35C68CA4FE0903C6E01636C4A9EF /* Zip+CollectionType.swift in Sources */, + 0D2FE7EAC0348D4300A49D3710A62CF1 /* Zip.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 53CFD410E1D64902061B75A8C8068F9E /* Sources */ = { + 498281D397EE4F4EB853BF5CB0C4EDBD /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 617AC208D54C1C607ABC182225990D93 /* Amb.swift in Sources */, - A64EAAE2E55D1300C74690D893193F24 /* AnonymousDisposable.swift in Sources */, - 3B55C32BE307D8766E55253B63581088 /* AnonymousObservable.swift in Sources */, - 3922208E5CD9DD850803E6D1C4B39597 /* AnonymousObserver.swift in Sources */, - 02364EF561D193BD7AD0D1914C251B37 /* AnyObserver.swift in Sources */, - 156130110DAE02079D546DE7491A9591 /* AsyncLock.swift in Sources */, - 09830D24F28D74303DFD209062C7BD89 /* Bag.swift in Sources */, - 11AEAE43B97CBD032AA71BD4169EF6AE /* BehaviorSubject.swift in Sources */, - 751C567D5BE9858C26329ED608F85A61 /* BinaryDisposable.swift in Sources */, - FA03E00AD745338D5236D8479388875F /* Buffer.swift in Sources */, - 00F925B909EC59BFF9599A9B76E640E1 /* Cancelable.swift in Sources */, - 3971F04715FF163F37085176A5A22128 /* Catch.swift in Sources */, - 2895B403FBEDF5B6C9AFB8F4C0164CAE /* CombineLatest+arity.swift in Sources */, - 6042FEAF4070B5231CAE491B623DC149 /* CombineLatest+CollectionType.swift in Sources */, - 9B406E901A456FD9B048E17B7A92D1D6 /* CombineLatest.swift in Sources */, - 5D6EE67E85C354939842F41C5F46FAB7 /* CompositeDisposable.swift in Sources */, - 2BBE3A08D1EF16AC024A41393A8533AD /* Concat.swift in Sources */, - 524D4D66F5B6124E64EF8EBCF174B5DC /* ConcurrentDispatchQueueScheduler.swift in Sources */, - 9F676EEC4955042926BB3A459731C2DF /* ConcurrentMainScheduler.swift in Sources */, - A101C8307D94FAF814B9D017C921ED03 /* ConnectableObservable.swift in Sources */, - C97EB21DA6B70BA2BEA15D27E0EBCEC4 /* ConnectableObservableType.swift in Sources */, - B1254027BA3190CCBE42B02073A8BA85 /* CurrentThreadScheduler.swift in Sources */, - BD3AF062701E06FC871295EC9EB049C5 /* Debug.swift in Sources */, - 8B45CF928F5BD9AB6B522888BD24918E /* Deferred.swift in Sources */, - E9E3652DB1CE1A2EEE4D06A0D61DB8C4 /* DelaySubscription.swift in Sources */, - BEA71498CEB2EE9A85665FBCD42272A9 /* DispatchQueueSchedulerPriority.swift in Sources */, - EAB0FA8926DC0452D7867B4898BC9B64 /* Disposable.swift in Sources */, - 8B3C09C4E8A4EE6D52A6A000F71F1E93 /* DisposeBag.swift in Sources */, - 39B1E70FEE5FCF5C9BB92C6705994DEF /* DisposeBase.swift in Sources */, - A3618F082D38A7D1DD9EE1D151B0CDC8 /* DistinctUntilChanged.swift in Sources */, - 3C0BF5C4DC01644A84B3E61444591861 /* Do.swift in Sources */, - 2B8353D85C387D4D8C829835E532F654 /* ElementAt.swift in Sources */, - 4B0B0DE6085D14462F9AAD7E0CBAF837 /* Empty.swift in Sources */, - 39C7B56A4552FA7EC1B8C9503D647C0B /* Error.swift in Sources */, - C62DE4802D468B4FD469BD7A5F5EB4C6 /* Event.swift in Sources */, - EB96D7C6295232E49DD13E81404C02ED /* FailWith.swift in Sources */, - 43607D4772E8B431E49A2E41ADF17E72 /* Filter.swift in Sources */, - FDCED8837011DE7E04D0BB1A8D324393 /* FlatMap.swift in Sources */, - C06832EFBFAC9DBBD85ED712EEE5C073 /* Generate.swift in Sources */, - 0E905AAABB6A4B274F12C871EEA328D3 /* ImmediateScheduler.swift in Sources */, - F8E28DE7EFF968325EC78E23783AF603 /* ImmediateSchedulerType.swift in Sources */, - D20C4ABF4D3BA73CF8EB36A33D223415 /* InfiniteSequence.swift in Sources */, - 314084598308D3A41776C4F9BE8186E5 /* Just.swift in Sources */, - CB299D2B3BF48C577546A2C8854C9CBE /* Lock.swift in Sources */, - AB3EBD33056A71397DA0178307685A66 /* LockOwnerType.swift in Sources */, - 7752454F475001267003CEE26E4E4176 /* MainScheduler.swift in Sources */, - 44F8120A0EE10522737707449F849E03 /* Map.swift in Sources */, - F9C97DFE079B6706322FFC4A6C3C2EE3 /* Merge.swift in Sources */, - 679E6219BAA9B30148A3F777337D53D7 /* Multicast.swift in Sources */, - E93551B9AF2ABA2CD8F7FA6EC5AE67DA /* NAryDisposable.swift in Sources */, - 63E61AAC71B72834D67A567BCC196C28 /* Never.swift in Sources */, - 1B1AA86F86284CDBCD505FDAA4918FC7 /* NopDisposable.swift in Sources */, - AD98A57EC8A36CD4AF00298E7C4F56EC /* Observable+Aggregate.swift in Sources */, - 56CE94C466CFD524A4F741BE638ED7D0 /* Observable+Binding.swift in Sources */, - A57C892A89AF129859E68B7DA1A85F4A /* Observable+Concurrency.swift in Sources */, - 22F4AE1EDAE7C223ABD82D5B1BC9ECBE /* Observable+Creation.swift in Sources */, - 7C5E5454616EF1CD107E9D810BE88F14 /* Observable+Debug.swift in Sources */, - 53A04D04E9A9CBB0045F123DB14D3C36 /* Observable+Extensions.swift in Sources */, - C01062477E8FB67EA8DFB5608643CDAB /* Observable+Multiple.swift in Sources */, - A24B045971B2713A1B396DCD5B7C636E /* Observable+Single.swift in Sources */, - E1AD542A389721742C93D14C8C3BBBC9 /* Observable+StandardSequenceOperators.swift in Sources */, - C74D1CB166E5275B3FC8A5083874A86C /* Observable+Time.swift in Sources */, - 2B06D6718CFB0322591A7F2730196F9E /* Observable.swift in Sources */, - 3B81F38B6EAB566C1062BB3DA3D73D2E /* ObservableConvertibleType.swift in Sources */, - 6EAF736151625A75E65D76AE7218083E /* ObservableType.swift in Sources */, - 3D0A4E195362D92639D7AD252235FEF2 /* ObserveOn.swift in Sources */, - 3CE2CCA37496244687E93817801FB5F5 /* ObserveOnSerialDispatchQueue.swift in Sources */, - 7EE2B9115A521713F803E4C326EDF7D3 /* ObserverBase.swift in Sources */, - 240D5BB3B98FB217B75233FD27CAFA69 /* ObserverType+Extensions.swift in Sources */, - 6097D1EF3E116B8931CF8D5FC23EFE38 /* ObserverType.swift in Sources */, - AA9D25693CADBEBB2867566202060887 /* OperationQueueScheduler.swift in Sources */, - CAE800974B0310008FD4BDC737198FD7 /* Producer.swift in Sources */, - 16CCA75D2FF854988E0843490CDD4B36 /* PublishSubject.swift in Sources */, - B84B48C9EEC7D8FC2ECBCE8F6E43D4C6 /* Queue.swift in Sources */, - EE5FBB8098E5B654E8BFF9441F66D027 /* Range.swift in Sources */, - 27CA95413B85E3C17B6E7D23AB6EDE60 /* RecursiveScheduler.swift in Sources */, - D438C87F99042C34C616960B1D3A3134 /* Reduce.swift in Sources */, - 15D9F7262BC336C423BB5F37DCC6AD22 /* RefCount.swift in Sources */, - 48C1563065A4560D486773827E8A04FD /* Repeat.swift in Sources */, - 8AC8194EA1C7F8D8F233DBC5EDEE8766 /* ReplaySubject.swift in Sources */, - BD839F625D0FCE322155C18B1B88A329 /* Rx.swift in Sources */, - C961FA9A17BBABDA75C75A37F07434F3 /* RxBox.swift in Sources */, - CFEBE4BC60422E6AF752363A21145085 /* RxSwift-dummy.m in Sources */, - 82426B230F2A501B6D6F4DEE8D22E341 /* Sample.swift in Sources */, - 06AD6911D9DBAB80EE1EB9E130818696 /* Scan.swift in Sources */, - A5CC3AEC1CB1AE22D1A0AE0484473D81 /* ScheduledDisposable.swift in Sources */, - 9139469249472A608525A83F154C640B /* ScheduledItem.swift in Sources */, - A5B2630D74CF4DC1F708B92DDD2CEF5C /* SchedulerServices+Emulation.swift in Sources */, - 51F4D4190673506BD2FCCBD84FD364AD /* SchedulerType.swift in Sources */, - F1D9B933B7E75C692192EEF3E798A7F7 /* ScopedDisposable.swift in Sources */, - 0BFE054266973CFAA9D9C8EBAAFBF3F9 /* SerialDispatchQueueScheduler.swift in Sources */, - 65E53B753C9B241DD14D2170C0EEDB6F /* SerialDisposable.swift in Sources */, - 08D30BCD7829A9A934F51CDABE26720B /* ShareReplay1.swift in Sources */, - FCD6FDAC87D18BAB63D1B84C176F65EE /* SingleAssignmentDisposable.swift in Sources */, - BAE239C29E765759ACFA8CE1E98CD6CB /* Sink.swift in Sources */, - 96186977C3B38CE7A512EE6DD0FF8826 /* Skip.swift in Sources */, - 7E9658A1E7401D4FAF083C56EF7EFC8C /* SkipUntil.swift in Sources */, - 5602155230754C686CC30C5516361048 /* SkipWhile.swift in Sources */, - E3DD60734C952E926A6E9DABD52683F0 /* StableCompositeDisposable.swift in Sources */, - 902D3833159B38BD2430FBA5A7CB7DE3 /* StartWith.swift in Sources */, - 226B4ACEB3723FD9525F51DCBB866AC6 /* SubjectType.swift in Sources */, - A05D356AEC633150EE704DF5B1B0A4DE /* SubscribeOn.swift in Sources */, - 2522018FEACC8795DE86FE200D14AA26 /* SubscriptionDisposable.swift in Sources */, - 5CCD61335908A7CEC14CBF3A44F40F70 /* Switch.swift in Sources */, - 3C3E0E6135C6B0242E2C513BD920EC5B /* SynchronizedDisposeType.swift in Sources */, - 8B18AACC6C113B343BBF402FEF5032EB /* SynchronizedOnType.swift in Sources */, - 396BAF0EE51BFAA030A57F6F8BAE7850 /* SynchronizedSubscribeType.swift in Sources */, - 02AC4569357E0EB2BFA99A6651CB5B36 /* SynchronizedUnsubscribeType.swift in Sources */, - 1CBA4093B2FE51EDD1243C785D395A5F /* TailRecursiveSink.swift in Sources */, - F9A50E322EFDDB0896E2FD452EDBA36A /* Take.swift in Sources */, - C5E613E1B968EFD809836DC6E5E81B26 /* TakeLast.swift in Sources */, - 7C104718799C7C1B9084D5DD4B4BB306 /* TakeUntil.swift in Sources */, - DF880D89239FED0266E938B5B37B915A /* TakeWhile.swift in Sources */, - 7BD5DE22106C8435F451E1CAC2A42C32 /* Throttle.swift in Sources */, - 9058270350EF88CC7C763F690277611A /* Timer.swift in Sources */, - A01429CEE2EC3A9367F391F4A6DF4F68 /* ToArray.swift in Sources */, - 59AA1CDA60AED5DFE46858456ABB41A9 /* Using.swift in Sources */, - B3F545E190FF0C9AD65E9866BF6ED2B6 /* Variable.swift in Sources */, - B806FA7EC2260600CE31898AF90FFB24 /* WithLatestFrom.swift in Sources */, - 91FA9A4DAAFC680F9E90F6CD4214D038 /* Zip+arity.swift in Sources */, - D0E680F8B51C841E0532DBCD06270383 /* Zip+CollectionType.swift in Sources */, - 57031C753BC4E60A68C301CEA429CC92 /* Zip.swift in Sources */, + 9135D3B299F6054D860C7670540DD52B /* Observable + Operations.swift in Sources */, + C4C2012CF96F32547F0C4A1DE96B6AD7 /* RxViewModel-dummy.m in Sources */, + 7C32677CFA358CBF07238D37838F61AA /* RxViewModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 92B0952DD64D0CEBCC8509CD736E5E31 /* Sources */ = { + 8691DEC3FB291C307263661395027868 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 180F09E4C16BF74B0A2DB2ABAF0FC670 /* Pods-dummy.m in Sources */, + F6AB7FBAFE2EA74E93758297A5605353 /* Callsite.swift in Sources */, + 3E741D3BB7D644467652F307A3E67F49 /* Closures.swift in Sources */, + 0318D073C237AE743141E7BBB8655579 /* Configuration.swift in Sources */, + 0ADD9C956D56B3738CEC3DF9A58271E3 /* DSL.swift in Sources */, + 4D506DE03D00E6BF71BF142BF2A7E62B /* Example.swift in Sources */, + 32BE30A95A56BEF7217F1297EBDF3D94 /* ExampleGroup.swift in Sources */, + A30450B88FC9812C55B872FAF6965B74 /* ExampleHooks.swift in Sources */, + 7AAECA3FC69EDD9EBB24AEF93C43A77E /* ExampleMetadata.swift in Sources */, + 357F12B59C05D88B56E483E33DA46D90 /* Filter.swift in Sources */, + 521E116463C55010200D6AA8710B3BD9 /* NSString+QCKSelectorName.m in Sources */, + 1A861EBD8B519FB29F299E0C61A8FDAB /* QCKDSL.m in Sources */, + 0AB60E0B22B0135731326DDFA96B1022 /* Quick-dummy.m in Sources */, + 86F1AC5CF4C9FBAC453238DCD4F8CFCE /* QuickConfiguration.m in Sources */, + 1B7152CFBA9138C3910A7F9ACCC47A0C /* QuickSpec.m in Sources */, + A0D801DED0D49E2D0BCB3DD49C4AB5D8 /* SuiteHooks.swift in Sources */, + 021529A201E0993A9C2DBD698C430957 /* World+DSL.swift in Sources */, + E4578B430885B7827EA91A40CAE68CC8 /* World.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - A8B88FE7F04ED8BC764A5140E118EBAE /* Sources */ = { + 8EBE0468DF062B223C25A0A03DDC4664 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - F9BFDA2EC452E6A4E95B198B3D2F8D24 /* Callsite.swift in Sources */, - 02756CD640BB1A301F93D777AC9D7FDA /* Closures.swift in Sources */, - FC8CC8768515BEDC49EFFA2F4340C7EF /* Configuration.swift in Sources */, - 86F4168F623CA3AADFAE2811FB3708D3 /* DSL.swift in Sources */, - B4A40E95FD0BEDE44B72200077A39C3F /* Example.swift in Sources */, - CAFD9893D73CAF218B48228D7A735E8A /* ExampleGroup.swift in Sources */, - 061A8E3A5FBFB1FE91D2A2DC51041059 /* ExampleHooks.swift in Sources */, - A882877309284DB9B15D4AC4A196799B /* ExampleMetadata.swift in Sources */, - 651D29CC290366282C758B40E7512DC7 /* Filter.swift in Sources */, - 891A49686925A8CC687FEA58B48FFE5D /* NSString+QCKSelectorName.m in Sources */, - A30CCA442515EEA1157D987E747E4A40 /* QCKDSL.m in Sources */, - 53FCDDAD714F93DD9415FB6267FC1872 /* Quick-dummy.m in Sources */, - 92333783E6BC88C95D7214F70B5FABD1 /* QuickConfiguration.m in Sources */, - E2A0A662CB66E8BD0F457FA02BC8AC54 /* QuickSpec.m in Sources */, - BB8049BB69D4EE2019ED372AE24CD29D /* SuiteHooks.swift in Sources */, - 1CF12B98BBC6800108ACC4A250AF3ED2 /* World+DSL.swift in Sources */, - 6EAD31AE718BB1F1E27944421879675D /* World.swift in Sources */, + 99C930CF7ED75388B485CB7A75CF4595 /* AdapterProtocols.swift in Sources */, + 8B22B4E7B1ECB9BA6E43171CE6F80A77 /* AllPass.swift in Sources */, + 50CD3AC8AAB52BD805B2D525A0A4640A /* AssertionDispatcher.swift in Sources */, + 05DF587F586EF6E8035A020194DCE566 /* AssertionRecorder.swift in Sources */, + 4ECC57E65359D346627ECB985C45E57B /* AsyncMatcherWrapper.swift in Sources */, + 68CCD0DA60562967CC9FE6EDC09CCF81 /* BeAKindOf.swift in Sources */, + 387F10098AD2A3A0C91B9CC4CDF063A3 /* BeAnInstanceOf.swift in Sources */, + 7153CFD27DF975680774D7398D9245F9 /* BeCloseTo.swift in Sources */, + B38DC2DEA783AE5413CD601913A379F2 /* BeEmpty.swift in Sources */, + 03CDAD487D6ECC539EA7F31501D5DD44 /* BeginWith.swift in Sources */, + 3DDFCF34A36767E328E4B32F84710DD0 /* BeGreaterThan.swift in Sources */, + 668F1D6C07AF0452ED04C9C7FFDBFA76 /* BeGreaterThanOrEqualTo.swift in Sources */, + F2733901D2524B7ED8F9BF41C434987A /* BeIdenticalTo.swift in Sources */, + BDF4D42FEC581ABD228DA9050DF952C3 /* BeLessThan.swift in Sources */, + CDF8B383151DDC372D0F4AAC5E85456E /* BeLessThanOrEqual.swift in Sources */, + 7B64E186E1D2013425ABC96EE5E02FFB /* BeLogical.swift in Sources */, + C44AF1A632D223BD01A400E8B3A97CC4 /* BeNil.swift in Sources */, + 229D5D98B342EC1CA488F9FCCC5B0BCB /* Contain.swift in Sources */, + 249B9E5EE749854FB05C26FC36FD6BAD /* DSL+Wait.swift in Sources */, + 5659DBFED3CF649717F1F9F313D6D102 /* DSL.m in Sources */, + 77309699F0F7C7D755E87BDF8899954E /* DSL.swift in Sources */, + B431B1CB13DDA79FD12F4DFD25C93DF7 /* EndWith.swift in Sources */, + E63CF45548C4179F18A0521F6258D954 /* Equal.swift in Sources */, + EFAA5E4CF8B628E4EF0EA35B3099256E /* Expectation.swift in Sources */, + 24B9AD723F6FB0834853D1995255BDC6 /* Expression.swift in Sources */, + FB3D4A524B5C442500217E325D782E13 /* FailureMessage.swift in Sources */, + B2E012B331B350C64E5691FEEC954A8A /* Functional.swift in Sources */, + 0896491BD1172207396EF07E835C9CCF /* HaveCount.swift in Sources */, + C6F33CABA62DBAD2F2429929A9EF9AC2 /* Match.swift in Sources */, + C801A88539BE234CE1C1BD74E3B1A889 /* MatcherFunc.swift in Sources */, + 26E8A92872DB386F988FD92D2992E745 /* MatcherProtocols.swift in Sources */, + 6F3397ABF23FE82F49A682D80C58FBE8 /* Nimble-dummy.m in Sources */, + E008532B9ECFB1825390C69332A4A8BD /* NimbleXCTestHandler.swift in Sources */, + 88BD8527D6671B8B147DF22FEF15D736 /* NMBExceptionCapture.m in Sources */, + 72C5DAA56A938A00EA7B63876848C0F8 /* ObjCExpectation.swift in Sources */, + 08F4646B0DD2234960E43468E97DFEE9 /* ObjCMatcher.swift in Sources */, + BCB91034C63C9D5F754B80EF96A910E8 /* Poll.swift in Sources */, + C09461252B2E16FFA265246FCB06383D /* RaisesException.swift in Sources */, + 18E8EB32A900033FA3DA8C42ADD0694D /* SourceLocation.swift in Sources */, + C22F4D717F12A9C5F0D53163A67AB37A /* Stringers.swift in Sources */, + 87E4E0DC3E595A6717A6175D45093867 /* ThrowError.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC264E557A8A184C30ECCED31C74BB34 /* Sources */ = { + 92B0952DD64D0CEBCC8509CD736E5E31 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - CAAED5FB81DB035A9EC080917C783FA6 /* AdapterProtocols.swift in Sources */, - D429691F39B4C30A8993360FB8A3E334 /* AllPass.swift in Sources */, - 33514FEE6EA65605EFB6F1801834B692 /* AssertionDispatcher.swift in Sources */, - E6E7B15FAD6C56681511813DB2666478 /* AssertionRecorder.swift in Sources */, - 0A6E71555F55082003A3DB2B03CA85D2 /* AsyncMatcherWrapper.swift in Sources */, - 77128C0365A98E3BAC038A915B38791C /* BeAKindOf.swift in Sources */, - 7A6E2730A25A55D8DFA74D3D7CB005EF /* BeAnInstanceOf.swift in Sources */, - B905718B2501DDA22F2AE73CB6E76E6B /* BeCloseTo.swift in Sources */, - 9E7786C034F0E0A6B5F0A0E6BE7D7E4A /* BeEmpty.swift in Sources */, - 9646787942A85613FE77F45794E9B5CD /* BeginWith.swift in Sources */, - 1E28F9362956B758C4C981D3C1129C90 /* BeGreaterThan.swift in Sources */, - 33264C6A7A3536AD91EF42B3E8CC8220 /* BeGreaterThanOrEqualTo.swift in Sources */, - 7680F08C43B965EC873D26E6AD854C9F /* BeIdenticalTo.swift in Sources */, - BCB53F24DCADF12601B8BA90AE3190AE /* BeLessThan.swift in Sources */, - 4E87C6AE24AB15700A39FC24A2F1C93B /* BeLessThanOrEqual.swift in Sources */, - 02DF5BD2281BA10105A447F95FCF8CF3 /* BeLogical.swift in Sources */, - F1D4A8A1FC68EFA7F45945908D70A352 /* BeNil.swift in Sources */, - B41E8E775408ACE233F29CE93388B270 /* Contain.swift in Sources */, - DEE170DD3064F7343884A4016546B762 /* DSL+Wait.swift in Sources */, - B0A26F58BA3E6222E50AE5AC883B8EAF /* DSL.m in Sources */, - 58EBA2C1A43283FB2188AB1FB592D32B /* DSL.swift in Sources */, - 3A92AEE86034356AF8987F20EE1F82DF /* EndWith.swift in Sources */, - FB1347627E64CA7E98C19DC985E13D95 /* Equal.swift in Sources */, - E2FBD93D72DF01427486D1A6853FC689 /* Expectation.swift in Sources */, - C63AB521EA514A811A167E507C0CF9AD /* Expression.swift in Sources */, - 0492354DA7EF0C9068F7B4E8F74001B0 /* FailureMessage.swift in Sources */, - D7B45D4600C6166C124C0A926EE65284 /* Functional.swift in Sources */, - BB4F35062294C1A461DA3CEF6306A1DB /* HaveCount.swift in Sources */, - E36C5201AE7F1CBB25F9D2E7CBFC3C20 /* Match.swift in Sources */, - 3AEAC447B09E7AABC140654C8529BC94 /* MatcherFunc.swift in Sources */, - C9AC658F3FCB67B50E96313C2687B33D /* MatcherProtocols.swift in Sources */, - 73695FA6A6CDFBB13C0CC73C2E5126C0 /* Nimble-dummy.m in Sources */, - 831D33A4C5C5BBC1EC158D9A236C61D7 /* NimbleXCTestHandler.swift in Sources */, - 9187EEC2982DB82AD8D3A7001AA647D6 /* NMBExceptionCapture.m in Sources */, - CD9D31B6063C50689EAC2A0745C282DC /* ObjCExpectation.swift in Sources */, - 7BFD25B1BB1116D8AC47E2C3874C5B76 /* ObjCMatcher.swift in Sources */, - 8D0BF52FF564A170A3D1DE28C27B233E /* Poll.swift in Sources */, - FFC311AC1E19A23E0EB7B1B3A7A5A744 /* RaisesException.swift in Sources */, - 7DA9FF8513AA48310B15A0744A541818 /* SourceLocation.swift in Sources */, - F10FD3129985704FA1610F84FB98EDF5 /* Stringers.swift in Sources */, - 2D3B916F7168E9412EDB95BA203A5BB4 /* ThrowError.swift in Sources */, + 180F09E4C16BF74B0A2DB2ABAF0FC670 /* Pods-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1771,6 +1831,7 @@ OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = Pods; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -1832,6 +1893,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/RxViewModel/RxViewModel.modulemap"; MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = RxViewModel; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -1843,7 +1905,7 @@ }; 2ADF4FCB467253BED94A7A9EC0395FE3 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1496FE073B8DF8A4F2FD4B4320333670 /* Quick.xcconfig */; + baseConfigurationReference = EFFDD4779DF565C0B366CC17E693DA1D /* Quick.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -1859,6 +1921,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Quick/Quick.modulemap"; MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = Quick; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -1871,7 +1934,7 @@ }; 3A931A7644CC926D3162E0BA9E4ACFA6 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 6E263D3FCA84FB00B80CE1A5470E4999 /* Nimble.xcconfig */; + baseConfigurationReference = C12E9E0536F109FD5CB0FE545B5A4C5C /* Nimble.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -1887,6 +1950,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Nimble/Nimble.modulemap"; MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = Nimble; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -1899,7 +1963,7 @@ }; 4EF564BEA62C557AE8F9B8C1693AA239 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 6E263D3FCA84FB00B80CE1A5470E4999 /* Nimble.xcconfig */; + baseConfigurationReference = C12E9E0536F109FD5CB0FE545B5A4C5C /* Nimble.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -1915,6 +1979,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Nimble/Nimble.modulemap"; MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = Nimble; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -1942,6 +2007,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -1965,7 +2031,7 @@ }; 57860FED7CFFDA92858D8D7EED8791BD /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5D45EE640C2A7337A3E1CA5B2B54853E /* RxCocoa.xcconfig */; + baseConfigurationReference = 22298CBD1F3638A425A5BFC5A94A34ED /* RxCocoa.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -1981,6 +2047,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = RxCocoa; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -1992,7 +2059,7 @@ }; 57A14B074B49FEB2B7592C9ADEBEE557 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1496FE073B8DF8A4F2FD4B4320333670 /* Quick.xcconfig */; + baseConfigurationReference = EFFDD4779DF565C0B366CC17E693DA1D /* Quick.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -2008,6 +2075,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/Quick/Quick.modulemap"; MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = Quick; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -2038,6 +2106,7 @@ OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = Pods; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -2050,7 +2119,7 @@ }; 6208B6DBABF324C69584AA82367E1875 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5D45EE640C2A7337A3E1CA5B2B54853E /* RxCocoa.xcconfig */; + baseConfigurationReference = 22298CBD1F3638A425A5BFC5A94A34ED /* RxCocoa.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -2066,6 +2135,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = RxCocoa; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -2094,6 +2164,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/RxViewModel/RxViewModel.modulemap"; MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = RxViewModel; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -2106,7 +2177,7 @@ }; E8B1A8FC205C2FC935951A60590B8025 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 10293EA48C95665265E02EF7F984D755 /* RxSwift.xcconfig */; + baseConfigurationReference = B895EA7CD2498F6E35257DB645382D29 /* RxSwift.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -2122,6 +2193,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = RxSwift; SDKROOT = iphoneos; SKIP_INSTALL = YES; @@ -2133,7 +2205,7 @@ }; EF352DDD01D89978540011EDFF9A88DF /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 10293EA48C95665265E02EF7F984D755 /* RxSwift.xcconfig */; + baseConfigurationReference = B895EA7CD2498F6E35257DB645382D29 /* RxSwift.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CURRENT_PROJECT_VERSION = 1; @@ -2149,6 +2221,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = RxSwift; SDKROOT = iphoneos; SKIP_INSTALL = YES; diff --git a/Example/Pods/Pods.xcodeproj/xcshareddata/xcschemes/RxViewModel.xcscheme b/Example/Pods/Pods.xcodeproj/xcshareddata/xcschemes/RxViewModel.xcscheme index d11e2d5..e949bcd 100644 --- a/Example/Pods/Pods.xcodeproj/xcshareddata/xcschemes/RxViewModel.xcscheme +++ b/Example/Pods/Pods.xcodeproj/xcshareddata/xcschemes/RxViewModel.xcscheme @@ -1,36 +1,58 @@ + buildForArchiving = "YES" + buildForAnalyzing = "YES"> + BuildableIdentifier = "primary" + BlueprintIdentifier = "F4779D35375DFEABDC23D841BC9E74C3" + BuildableName = "RxViewModel.framework" + BlueprintName = "RxViewModel" + ReferencedContainer = "container:Pods.xcodeproj"> + shouldUseLaunchSchemeArgsEnv = "YES"> + + + + + + + + + + + + + + + debugDocumentVersioning = "YES"> + + + + diff --git a/Example/Pods/RxCocoa/README.md b/Example/Pods/RxCocoa/README.md index 2f475f0..73b8883 100644 --- a/Example/Pods/RxCocoa/README.md +++ b/Example/Pods/RxCocoa/README.md @@ -190,13 +190,12 @@ Writing all of this and properly testing it would be tedious. This is that same searchTextField.rx_text .throttle(0.3, MainScheduler.sharedInstance) .distinctUntilChanged() - .map { query in + .flatMapLatest { query in API.getSearchResults(query) .retry(3) .startWith([]) // clears results on new search term .catchErrorJustReturn([]) } - .switchLatest() .subscribeNext { results in // bind to ui } @@ -480,7 +479,7 @@ $ pod install Add this to `Cartfile` ``` -git "git@github.com:ReactiveX/RxSwift.git" "2.0.0-beta.2" +github "ReactiveX/RxSwift" "2.0.0-beta.3" ``` ``` diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver+Operators.swift b/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver+Operators.swift index 12b2bf1..fff3763 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver+Operators.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver+Operators.swift @@ -63,6 +63,27 @@ extension DriverConvertibleType where E : DriverConvertibleType { } } +extension DriverConvertibleType { + /** + Projects each element of an observable sequence into a new sequence of observable sequences and then + transforms an observable sequence of observable sequences into an observable sequence producing values only from the most recent observable sequence. + + It is a combination of `map` + `switchLatest` operator + + - parameter selector: A transform function to apply to each element. + - returns: An observable sequence whose elements are the result of invoking the transform function on each element of source producing an + Observable of Observable sequences and that at any point in time produces the elements of the most recent inner observable sequence that has been received. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func flatMapLatest(selector: (E) -> Driver) + -> Driver { + let source: Observable = self + .asObservable() + .flatMapLatest(selector) + return Driver(source) + } +} + extension DriverConvertibleType { /** diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver.swift b/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver.swift index 2536d8d..bbd534c 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/CocoaUnits/Driver/Driver.swift @@ -153,7 +153,7 @@ public struct Drive { @warn_unused_result(message="http://git.io/rxs.uo") public static func sequenceOf(elements: E ...) -> Driver { - let source = elements.asObservable().subscribeOn(ConcurrentMainScheduler.sharedInstance) + let source = elements.toObservable().subscribeOn(ConcurrentMainScheduler.sharedInstance) return Driver(raw: source) } diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+CoreGraphics.swift b/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+CoreGraphics.swift new file mode 100644 index 0000000..19abf65 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+CoreGraphics.swift @@ -0,0 +1,71 @@ +// +// KVORepresentable+CoreGraphics.swift +// Rx +// +// Created by Krunoslav Zaher on 11/14/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation +#if !RX_NO_MODULE + import RxSwift +#endif +import CoreGraphics + +#if arch(x86_64) || arch(arm64) +let CGRectType = "{CGRect={CGPoint=dd}{CGSize=dd}}" +let CGSizeType = "{CGSize=dd}" +let CGPointType = "{CGPoint=dd}" +#elseif arch(i386) || arch(arm) +let CGRectType = "{CGRect={CGPoint=ff}{CGSize=ff}}" +let CGSizeType = "{CGSize=ff}" +let CGPointType = "{CGPoint=ff}" +#endif + +extension CGRect : KVORepresentable { + public typealias KVOType = NSValue + + /** + Constructs self from `NSValue`. + */ + public init?(KVOValue: KVOType) { + if strcmp(KVOValue.objCType, CGRectType) != 0 { + return nil + } + var typedValue = CGRect(x: 0, y: 0, width: 0, height: 0) + KVOValue.getValue(&typedValue) + self = typedValue + } +} + +extension CGPoint : KVORepresentable { + public typealias KVOType = NSValue + + /** + Constructs self from `NSValue`. + */ + public init?(KVOValue: KVOType) { + if strcmp(KVOValue.objCType, CGPointType) != 0 { + return nil + } + var typedValue = CGPoint(x: 0, y: 0) + KVOValue.getValue(&typedValue) + self = typedValue + } +} + +extension CGSize : KVORepresentable { + public typealias KVOType = NSValue + + /** + Constructs self from `NSValue`. + */ + public init?(KVOValue: KVOType) { + if strcmp(KVOValue.objCType, CGSizeType) != 0 { + return nil + } + var typedValue = CGSize(width: 0, height: 0) + KVOValue.getValue(&typedValue) + self = typedValue + } +} \ No newline at end of file diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+Swift.swift b/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+Swift.swift new file mode 100644 index 0000000..a118bc4 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable+Swift.swift @@ -0,0 +1,93 @@ +// +// KVORepresentable+Swift.swift +// Rx +// +// Created by Krunoslav Zaher on 11/14/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +extension Int : KVORepresentable { + public typealias KVOType = NSNumber + + /** + Constructs `Self` using KVO value. + */ + public init?(KVOValue: KVOType) { + self.init(KVOValue.integerValue) + } +} + +extension Int32 : KVORepresentable { + public typealias KVOType = NSNumber + + /** + Constructs `Self` using KVO value. + */ + public init?(KVOValue: KVOType) { + self.init(KVOValue.intValue) + } +} + +extension Int64 : KVORepresentable { + public typealias KVOType = NSNumber + + /** + Constructs `Self` using KVO value. + */ + public init?(KVOValue: KVOType) { + self.init(KVOValue.longLongValue) + } +} + +extension UInt : KVORepresentable { + public typealias KVOType = NSNumber + + /** + Constructs `Self` using KVO value. + */ + public init?(KVOValue: KVOType) { + self.init(KVOValue.unsignedLongValue) + } +} + +extension UInt32 : KVORepresentable { + public typealias KVOType = NSNumber + + /** + Constructs `Self` using KVO value. + */ + public init?(KVOValue: KVOType) { + self.init(KVOValue.unsignedIntValue) + } +} + +extension UInt64 : KVORepresentable { + public typealias KVOType = NSNumber + + /** + Constructs `Self` using KVO value. + */ + public init?(KVOValue: KVOType) { + self.init(KVOValue.unsignedLongLongValue) + } +} + + +extension RawRepresentable where RawValue: KVORepresentable { + /** + Constructs `Self` using optional KVO value. + */ + init?(KVOValue: RawValue.KVOType?) { + guard let KVOValue = KVOValue else { + return nil + } + + guard let rawValue = RawValue(KVOValue: KVOValue) else { + return nil + } + + self.init(rawValue: rawValue) + } +} \ No newline at end of file diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable.swift b/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable.swift new file mode 100644 index 0000000..481b06e --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Common/KVORepresentable.swift @@ -0,0 +1,35 @@ +// +// KVORepresentable.swift +// Rx +// +// Created by Krunoslav Zaher on 11/14/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +/** +Type that is KVO representable (KVO mechanism can be used to observe it). +*/ +public protocol KVORepresentable { + /** + Associated KVO type. + */ + typealias KVOType + + /** + Constructs `Self` using KVO value. + */ + init?(KVOValue: KVOType) +} + +extension KVORepresentable { + init?(KVOValue: KVOType?) { + guard let KVOValue = KVOValue else { + return nil + } + + self.init(KVOValue: KVOValue) + } +} + diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/Implementations/KVOObservable.swift b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/Implementations/KVOObservable.swift index c5a0bac..b0dc053 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/Implementations/KVOObservable.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/Implementations/KVOObservable.swift @@ -102,7 +102,7 @@ func observeWeaklyKeyPathFor( let property = class_getProperty(object_getClass(target), propertyName); if property == nil { - return failWith(rxError(.KeyPathInvalid, "Object \(target) doesn't have property named `\(propertyName)`")) + return failWith(RxCocoaError.InvalidPropertyName(object: target, propertyName: propertyName)) } let propertyAttributes = property_getAttributes(property); @@ -112,7 +112,7 @@ func observeWeaklyKeyPathFor( // KVO recursion for value changes return propertyObservable - .map { (nextTarget: AnyObject?) -> Observable in + .flatMapLatest { (nextTarget: AnyObject?) -> Observable in if nextTarget == nil { return just(nil) } @@ -121,7 +121,7 @@ func observeWeaklyKeyPathFor( let strongTarget: AnyObject? = weakTarget if nextObject == nil { - return failWith(rxError(.KeyPathInvalid, "Observed \(nextTarget) as property `\(propertyName)` on `\(strongTarget)` which is not `NSObject`.")) + return failWith(RxCocoaError.InvalidObjectOnKeyPath(object: nextTarget!, sourceObject: strongTarget ?? NSNull(), propertyName: propertyName)) } // if target is alive, then send change @@ -142,7 +142,6 @@ func observeWeaklyKeyPathFor( return nextElementsObservable } } - .switchLatest() } #endif diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+CoreGraphics.swift b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+CoreGraphics.swift index 765a6e3..435d11e 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+CoreGraphics.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+CoreGraphics.swift @@ -12,39 +12,19 @@ import RxSwift #endif import CoreGraphics -#if arch(x86_64) || arch(arm64) -let CGRectType = "{CGRect={CGPoint=dd}{CGSize=dd}}" -let CGSizeType = "{CGSize=dd}" -let CGPointType = "{CGPoint=dd}" -#elseif arch(i386) || arch(arm) -let CGRectType = "{CGRect={CGPoint=ff}{CGSize=ff}}" -let CGSizeType = "{CGSize=ff}" -let CGPointType = "{CGPoint=ff}" -#endif +// MARK: Deprecated, CGPoint, CGRect, CGSize are now KVORepresentable -// rx_observe + CoreGraphics extension NSObject { /** Specialization of generic `rx_observe` method. - + For more information take a look at `rx_observe` method. */ @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument.") public func rx_observe(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable { - return rx_observe(keyPath, options: options, retainSelf: retainSelf) - .map { (value: NSValue?) in - if let value = value { - if strcmp(value.objCType, CGRectType) != 0 { - return nil - } - var typedValue = CGRect(x: 0, y: 0, width: 0, height: 0) - value.getValue(&typedValue) - return typedValue - } - else { - return nil - } - } + return rx_observe(NSValue.self, keyPath, options: options, retainSelf: retainSelf) + .map(CGRect.init) } /** @@ -53,21 +33,10 @@ extension NSObject { For more information take a look at `rx_observe` method. */ @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument.") public func rx_observe(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable { - return rx_observe(keyPath, options: options, retainSelf: retainSelf) - .map { (value: NSValue?) in - if let value = value { - if strcmp(value.objCType, CGSizeType) != 0 { - return nil - } - var typedValue = CGSize(width: 0, height: 0) - value.getValue(&typedValue) - return typedValue - } - else { - return nil - } - } + return rx_observe(NSValue.self, keyPath, options: options, retainSelf: retainSelf) + .map(CGSize.init) } /** @@ -76,21 +45,10 @@ extension NSObject { For more information take a look at `rx_observe` method. */ @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument.") public func rx_observe(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable { - return rx_observe(keyPath, options: options, retainSelf: retainSelf) - .map { (value: NSValue?) in - if let value = value { - if strcmp(value.objCType, CGPointType) != 0 { - return nil - } - var typedValue = CGPoint(x: 0, y: 0) - value.getValue(&typedValue) - return typedValue - } - else { - return nil - } - } + return rx_observe(NSValue.self, keyPath, options: options, retainSelf: retainSelf) + .map(CGPoint.init) } } @@ -105,21 +63,10 @@ extension NSObject { For more information take a look at `rx_observeWeakly` method. */ @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument.") public func rx_observeWeakly(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable { - return rx_observeWeakly(keyPath, options: options) - .map { (value: NSValue?) in - if let value = value { - if strcmp(value.objCType, CGRectType) != 0 { - return nil - } - var typedValue = CGRect(x: 0, y: 0, width: 0, height: 0) - value.getValue(&typedValue) - return typedValue - } - else { - return nil - } - } + return rx_observeWeakly(NSValue.self, keyPath, options: options) + .map(CGRect.init) } /** @@ -128,21 +75,10 @@ extension NSObject { For more information take a look at `rx_observeWeakly` method. */ @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument.") public func rx_observeWeakly(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable { - return rx_observeWeakly(keyPath, options: options) - .map { (value: NSValue?) in - if let value = value { - if strcmp(value.objCType, CGSizeType) != 0 { - return nil - } - var typedValue = CGSize(width: 0, height: 0) - value.getValue(&typedValue) - return typedValue - } - else { - return nil - } - } + return rx_observeWeakly(NSValue.self, keyPath, options: options) + .map(CGSize.init) } /** @@ -151,21 +87,10 @@ extension NSObject { For more information take a look at `rx_observeWeakly` method. */ @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument.") public func rx_observeWeakly(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable { - return rx_observeWeakly(keyPath, options: options) - .map { (value: NSValue?) in - if let value = value { - if strcmp(value.objCType, CGPointType) != 0 { - return nil - } - var typedValue = CGPoint(x: 0, y: 0) - value.getValue(&typedValue) - return typedValue - } - else { - return nil - } - } + return rx_observeWeakly(NSValue.self, keyPath, options: options) + .map(CGPoint.init) } } diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+KVORepresentable.swift b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+KVORepresentable.swift new file mode 100644 index 0000000..91ac289 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+KVORepresentable.swift @@ -0,0 +1,45 @@ +// +// NSObject+Rx+KVORepresentable.swift +// Rx +// +// Created by Krunoslav Zaher on 11/14/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation +#if !RX_NO_MODULE + import RxSwift +#endif + +extension NSObject { + + /** + Specialization of generic `rx_observe` method. + + This is a special overload because to observe values of some type (for example `Int`), first values of KVO type + need to be observed (`NSNumber`), and then converted to result type. + + For more information take a look at `rx_observe` method. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func rx_observe(type: E.Type, _ keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable { + return rx_observe(E.KVOType.self, keyPath, options: options, retainSelf: retainSelf) + .map(E.init) + } +} + +#if !DISABLE_SWIZZLING + // KVO + extension NSObject { + /** + Specialization of generic `rx_observeWeakly` method. + + For more information take a look at `rx_observeWeakly` method. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func rx_observeWeakly(type: E.Type, _ keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable { + return rx_observeWeakly(E.KVOType.self, keyPath, options: options) + .map(E.init) + } + } +#endif diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+RawRepresentable.swift b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+RawRepresentable.swift new file mode 100644 index 0000000..7ff37f4 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx+RawRepresentable.swift @@ -0,0 +1,51 @@ +// +// NSObject+Rx+RawRepresentable.swift +// Rx +// +// Created by Krunoslav Zaher on 11/9/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation +#if !RX_NO_MODULE + import RxSwift +#endif + +extension NSObject { + /** + Specialization of generic `rx_observe` method. + + This specialization first observes `KVORepresentable` value and then converts it to `RawRepresentable` value. + + It is useful for observing bridged ObjC enum values. + + For more information take a look at `rx_observe` method. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func rx_observe(type: E.Type, _ keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable { + return rx_observe(E.RawValue.KVOType.self, keyPath, options: options, retainSelf: retainSelf) + .map(E.init) + } +} + +#if !DISABLE_SWIZZLING + + // rx_observeWeakly + RawRepresentable + extension NSObject { + + /** + Specialization of generic `rx_observeWeakly` method. + + This specialization first observes `KVORepresentable` value and then converts it to `RawRepresentable` value. + + It is useful for observing bridged ObjC enum values. + + For more information take a look at `rx_observeWeakly` method. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func rx_observeWeakly(type: E.Type, _ keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable { + return rx_observeWeakly(E.RawValue.KVOType.self, keyPath, options: options) + .map(E.init) + } + } +#endif diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx.swift index 4f3acd3..8629066 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSObject+Rx.swift @@ -18,29 +18,52 @@ var deallocatingSubjectContext: UInt8 = 0 var deallocatedSubjectTriggerContext: UInt8 = 0 var deallocatedSubjectContext: UInt8 = 0 -// KVO is a tricky mechanism. -// -// When observing child in a ownership hierarchy, usually retaining observing target is wanted behavior. -// When observing parent in a ownership hierarchy, usually retaining target isn't wanter behavior. -// -// KVO with weak references is especially tricky. For it to work, some kind of swizzling is required. -// That can be done by -// * replacing object class dynamically (like KVO does) -// * by swizzling `dealloc` method on all instances for a class. -// * some third method ... -// -// Both approaches can fail in certain scenarios: -// * problems arise when swizzlers return original object class (like KVO does when nobody is observing) -// * Problems can arise because replacing dealloc method isn't atomic operation (get implementation, -// set implementation). -// -// Second approach is chosen. It can fail in case there are multiple libraries dynamically trying -// to replace dealloc method. In case that isn't the case, it should be ok. -// +/** +KVO is a tricky mechanism. -// KVO +When observing child in a ownership hierarchy, usually retaining observing target is wanted behavior. +When observing parent in a ownership hierarchy, usually retaining target isn't wanter behavior. + +KVO with weak references is especially tricky. For it to work, some kind of swizzling is required. +That can be done by + * replacing object class dynamically (like KVO does) + * by swizzling `dealloc` method on all instances for a class. + * some third method ... + +Both approaches can fail in certain scenarios: + * problems arise when swizzlers return original object class (like KVO does when nobody is observing) + * Problems can arise because replacing dealloc method isn't atomic operation (get implementation, + set implementation). + +Second approach is chosen. It can fail in case there are multiple libraries dynamically trying +to replace dealloc method. In case that isn't the case, it should be ok. +*/ extension NSObject { + + /** + Observes values on `keyPath` starting from `self` with `options` and retains `self` if `retainSelf` is set. + + `rx_observe` is just a simple and performant wrapper around KVO mechanism. + + * it can be used to observe paths starting from `self` or from ancestors in ownership graph (`retainSelf = false`) + * it can be used to observe paths starting from descendants in ownership graph (`retainSelf = true`) + * the paths have to consist only of `strong` properties, otherwise you are risking crashing the system by not unregistering KVO observer before dealloc. + + If support for weak properties is needed or observing arbitrary or unknown relationships in the + ownership tree, `rx_observeWeakly` is the preferred option. + + - parameter keyPath: Key path of property names to observe. + - parameter options: KVO mechanism notification options. + - parameter retainSelf: Retains self during observation if set `true`. + - returns: Observable sequence of objects on `keyPath`. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func rx_observe(type: E.Type, _ keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable { + return KVOObservable(object: self, keyPath: keyPath, options: options, retainTarget: retainSelf).asObservable() + } + + /** Observes values on `keyPath` starting from `self` with `options` and retains `self` if `retainSelf` is set. @@ -58,6 +81,8 @@ extension NSObject { - parameter retainSelf: Retains self during observation if set `true`. - returns: Observable sequence of objects on `keyPath`. */ + @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument `rx_observe(type: Element.Type, _ keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable`") public func rx_observe(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial], retainSelf: Bool = true) -> Observable { return KVOObservable(object: self, keyPath: keyPath, options: options, retainTarget: retainSelf).asObservable() } @@ -67,7 +92,28 @@ extension NSObject { #if !DISABLE_SWIZZLING // KVO extension NSObject { - + /** + Observes values on `keyPath` starting from `self` with `options` and doesn't retain `self`. + + It can be used in all cases where `rx_observe` can be used and additionally + + * because it won't retain observed target, it can be used to observe arbitrary object graph whose ownership relation is unknown + * it can be used to observe `weak` properties + + **Since it needs to intercept object deallocation process it needs to perform swizzling of `dealloc` method on observed object.** + + - parameter keyPath: Key path of property names to observe. + - parameter options: KVO mechanism notification options. + - returns: Observable sequence of objects on `keyPath`. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func rx_observeWeakly(type: E.Type, _ keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable { + return observeWeaklyKeyPathFor(self, keyPath: keyPath, options: options) + .map { n in + return n as? E + } + } + /** Observes values on `keyPath` starting from `self` with `options` and doesn't retain `self`. @@ -82,6 +128,8 @@ extension NSObject { - parameter options: KVO mechanism notification options. - returns: Observable sequence of objects on `keyPath`. */ + @available(*, deprecated=2.0.0, message="Please use version that takes type as first argument `rx_observeWeakly(type: Element.Type, keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable`") + @warn_unused_result(message="http://git.io/rxs.uo") public func rx_observeWeakly(keyPath: String, options: NSKeyValueObservingOptions = [.New, .Initial]) -> Observable { return observeWeaklyKeyPathFor(self, keyPath: keyPath, options: options) .map { n in diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSURLSession+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSURLSession+Rx.swift index a22476d..efe4b5d 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSURLSession+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/Observables/NSURLSession+Rx.swift @@ -11,6 +11,48 @@ import Foundation import RxSwift #endif +/** +RxCocoa URL errors. +*/ +public enum RxCocoaURLError + : ErrorType + , CustomDebugStringConvertible { + /** + Unknown error occurred. + */ + case Unknown + /** + Response is not NSHTTPURLResponse + */ + case NonHTTPResponse(response: NSURLResponse) + /** + Response is not successful. (not in `200 ..< 300` range) + */ + case HTTPRequestFailed(response: NSHTTPURLResponse, data: NSData?) + /** + Deserialization error. + */ + case DeserializationError(error: ErrorType) +} + +public extension RxCocoaURLError { + /** + A textual representation of `self`, suitable for debugging. + */ + public var debugDescription: String { + switch self { + case .Unknown: + return "Unknown error has occurred." + case let .NonHTTPResponse(response): + return "Response is not NSHTTPURLResponse `\(response)`." + case let .HTTPRequestFailed(response, _): + return "HTTP request failed with `\(response.statusCode)`." + case let .DeserializationError(error): + return "Error during deserialization of the response: \(error)" + } + } +} + func escapeTerminalString(value: String) -> String { return value.stringByReplacingOccurrencesOfString("\"", withString: "\\\"", options:[], range: nil) } @@ -75,7 +117,7 @@ extension NSURLSession { - returns: Observable sequence of URL responses. */ @warn_unused_result(message="http://git.io/rxs.uo") - public func rx_response(request: NSURLRequest) -> Observable<(NSData!, NSURLResponse!)> { + public func rx_response(request: NSURLRequest) -> Observable<(NSData!, NSHTTPURLResponse)> { return create { observer in // smart compiler should be able to optimize this out @@ -93,13 +135,18 @@ extension NSURLSession { print(convertResponseToString(data, response, error, interval)) } - if data == nil || response == nil { - observer.on(.Error(error ?? RxError.UnknownError)) + guard let response = response, data = data else { + observer.on(.Error(error ?? RxCocoaURLError.Unknown)) + return } - else { - observer.on(.Next(data as NSData!, response as NSURLResponse!)) - observer.on(.Completed) + + guard let httpResponse = response as? NSHTTPURLResponse else { + observer.on(.Error(RxCocoaURLError.NonHTTPResponse(response: response))) + return } + + observer.on(.Next(data as NSData!, httpResponse)) + observer.on(.Completed) } @@ -130,18 +177,11 @@ extension NSURLSession { @warn_unused_result(message="http://git.io/rxs.uo") public func rx_data(request: NSURLRequest) -> Observable { return rx_response(request).map { (data, response) -> NSData in - guard let response = response as? NSHTTPURLResponse else { - throw RxError.UnknownError - } - if 200 ..< 300 ~= response.statusCode { return data ?? NSData() } else { - throw rxError(.NetworkError, message: "Server returned failure", userInfo: [ - RxCocoaErrorHTTPResponseKey: response, - RxCocoaErrorHTTPResponseDataKey: data ?? NSData() - ]) + throw RxCocoaURLError.HTTPRequestFailed(response: response, data: data) } } } @@ -166,7 +206,11 @@ extension NSURLSession { @warn_unused_result(message="http://git.io/rxs.uo") public func rx_JSON(request: NSURLRequest) -> Observable { return rx_data(request).map { (data) -> AnyObject! in - return try NSJSONSerialization.JSONObjectWithData(data ?? NSData(), options: []) + do { + return try NSJSONSerialization.JSONObjectWithData(data ?? NSData(), options: []) + } catch let error { + throw RxCocoaURLError.DeserializationError(error: error) + } } } diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoa.swift b/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoa.swift index 8070790..3fd743f 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoa.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoa.swift @@ -14,45 +14,52 @@ import RxSwift import UIKit #endif -public enum RxCocoaError : Int { - case Unknown = 0 - case NetworkError = 1 - case InvalidOperation = 2 - case KeyPathInvalid = 3 -} - -/** -Error domain for internal RxCocoa errors. -*/ -public let RxCocoaErrorDomain = "RxCocoaError" - -/** -`userInfo` key for `NSURLResponse` object when `RxCocoaError.NetworkError` happens. -*/ -public let RxCocoaErrorHTTPResponseKey = "RxCocoaErrorHTTPResponseKey" - /** -`userInfo` key for `NSData` object when `RxCocoaError.NetworkError` happens. +RxCocoa errors. */ -public let RxCocoaErrorHTTPResponseDataKey = "RxCocoaErrorHTTPResponseDataKey" - -func rxError(errorCode: RxCocoaError, _ message: String) -> NSError { - return NSError(domain: RxCocoaErrorDomain, code: errorCode.rawValue, userInfo: [NSLocalizedDescriptionKey: message]) +public enum RxCocoaError + : ErrorType + , CustomDebugStringConvertible { + /** + Unknown error has occurred. + */ + case Unknown + /** + Invalid operation was attempted. + */ + case InvalidOperation(object: AnyObject) + /** + Items are not yet bound to user interface but have been requested. + */ + case ItemsNotYetBound(object: AnyObject) + /** + Invalid KVO Path. + */ + case InvalidPropertyName(object: AnyObject, propertyName: String) + /** + Invalid object on key path. + */ + case InvalidObjectOnKeyPath(object: AnyObject, sourceObject: AnyObject, propertyName: String) } -#if !RELEASE -public func _rxError(errorCode: RxCocoaError, message: String, userInfo: NSDictionary) -> NSError { - return rxError(errorCode, message: message, userInfo: userInfo) -} -#endif - -func rxError(errorCode: RxCocoaError, message: String, userInfo: NSDictionary) -> NSError { - var resultInfo: [NSObject: AnyObject] = [:] - resultInfo[NSLocalizedDescriptionKey] = message - for k in userInfo.allKeys { - resultInfo[k as! NSObject] = userInfo[k as! NSCopying] +public extension RxCocoaError { + /** + A textual representation of `self`, suitable for debugging. + */ + public var debugDescription: String { + switch self { + case .Unknown: + return "Unknown error occurred" + case let .InvalidOperation(object): + return "Invalid operation was attempted on `\(object)`" + case let .ItemsNotYetBound(object): + return "Data source is set, but items are not yet bound to user interface for `\(object)`" + case let .InvalidPropertyName(object, propertyName): + return "Object `\(object)` dosn't have a property named `\(propertyName)`" + case let .InvalidObjectOnKeyPath(object, sourceObject, propertyName): + return "Unobservable object `\(object)` was observed as `\(propertyName)` of `\(sourceObject)`" + } } - return NSError(domain: RxCocoaErrorDomain, code: Int(errorCode.rawValue), userInfo: resultInfo) } func bindingErrorToInterface(error: ErrorType) { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift index 9621acb..6c16240 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift @@ -6,7 +6,7 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // -#if os(iOS) || os(tvOS) +#if os(iOS) import Foundation #if !RX_NO_MODULE @@ -26,3 +26,23 @@ extension UIButton { } #endif + +#if os(tvOS) + +import Foundation +#if !RX_NO_MODULE + import RxSwift +#endif +import UIKit + +extension UIButton { + + /** + Reactive wrapper for `PrimaryActionTriggered` control event. + */ + public var rx_primaryAction: ControlEvent { + return rx_controlEvents(.PrimaryActionTriggered) + } +} + +#endif diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift index 5024b61..0e729c2 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift @@ -161,7 +161,7 @@ extension UICollectionView { let dataSource: RxCollectionViewReactiveArrayDataSource = castOrFatalError(self.rx_dataSource.forwardToDelegate(), message: "This method only works in case one of the `rx_itemsWith*` methods was used.") guard let element = dataSource.modelAtIndex(indexPath.item) else { - throw rxError(.InvalidOperation, "Items not set yet.") + throw RxCocoaError.ItemsNotYetBound(object: self) } return element diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift index a3e62a3..e14a688 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift @@ -19,7 +19,7 @@ extension UIImageView { /** Bindable sink for `image` property. */ - public var rx_image: AnyObserver { + public var rx_image: AnyObserver { return self.rx_imageAnimated(nil) } @@ -28,7 +28,7 @@ extension UIImageView { - parameter transitionType: Optional transition type while setting the image (kCATransitionFade, kCATransitionMoveIn, ...) */ - public func rx_imageAnimated(transitionType: String?) -> AnyObserver { + public func rx_imageAnimated(transitionType: String?) -> AnyObserver { return AnyObserver { [weak self] event in MainScheduler.ensureExecutingOnScheduler() diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift index 898300a..fbfa008 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift @@ -205,7 +205,7 @@ extension UITableView { let dataSource: RxTableViewReactiveArrayDataSource = castOrFatalError(self.rx_dataSource.forwardToDelegate(), message: "This method only works in case one of the `rx_items*` methods was used.") guard let element = dataSource.modelAtIndex(indexPath.item) else { - throw rxError(.InvalidOperation, "Items not set yet.") + throw RxCocoaError.ItemsNotYetBound(object: self) } return element diff --git a/Example/Pods/RxSwift/README.md b/Example/Pods/RxSwift/README.md index 2f475f0..73b8883 100644 --- a/Example/Pods/RxSwift/README.md +++ b/Example/Pods/RxSwift/README.md @@ -190,13 +190,12 @@ Writing all of this and properly testing it would be tedious. This is that same searchTextField.rx_text .throttle(0.3, MainScheduler.sharedInstance) .distinctUntilChanged() - .map { query in + .flatMapLatest { query in API.getSearchResults(query) .retry(3) .startWith([]) // clears results on new search term .catchErrorJustReturn([]) } - .switchLatest() .subscribeNext { results in // bind to ui } @@ -480,7 +479,7 @@ $ pod install Add this to `Cartfile` ``` -git "git@github.com:ReactiveX/RxSwift.git" "2.0.0-beta.2" +github "ReactiveX/RxSwift" "2.0.0-beta.3" ``` ``` diff --git a/Example/Pods/RxSwift/RxSwift/AnyObserver.swift b/Example/Pods/RxSwift/RxSwift/AnyObserver.swift index a22101b..fff46cd 100644 --- a/Example/Pods/RxSwift/RxSwift/AnyObserver.swift +++ b/Example/Pods/RxSwift/RxSwift/AnyObserver.swift @@ -41,9 +41,7 @@ public struct AnyObserver : ObserverType { - parameter observer: Observer that receives sequence events. */ public init(_ observer: O) { - self.observer = { e in - return observer.on(e) - } + self.observer = observer.on } /** @@ -54,6 +52,15 @@ public struct AnyObserver : ObserverType { public func on(event: Event) { return self.observer(event) } + + /** + Erases type of observer and returns canonical observer. + + - returns: type erased observer. + */ + func asObserver() -> AnyObserver { + return self + } } extension ObserverType { diff --git a/Example/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift b/Example/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift index 04b57b6..e453f99 100644 --- a/Example/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift +++ b/Example/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift @@ -18,50 +18,74 @@ and pending work. That means that enqueued work could possibly be executed later on a different thread. */ -class AsyncLock : Disposable { +class AsyncLock + : Disposable + , Lock + , SynchronizedDisposeType { typealias Action = () -> Void - private let _lock = NSRecursiveLock() + var _lock = SpinLock() - private var _queue: Queue = Queue(capacity: 2) + private var _queue: Queue = Queue(capacity: 0) - private var _isAcquired: Bool = false + private var _isExecuting: Bool = false private var _hasFaulted: Bool = false - - init() { - + + // lock { + func lock() { + _lock.lock() } - - func wait(action: Action) { - let isOwner = _lock.calculateLocked { () -> Bool in + + func unlock() { + _lock.unlock() + } + // } + + private func enqueue(action: I) -> I? { + _lock.lock(); defer { _lock.unlock() } // { if _hasFaulted { - return false + return nil } - - _queue.enqueue(action) - let isOwner = !_isAcquired - _isAcquired = true - - return isOwner - } + + if _isExecuting { + _queue.enqueue(action) + return nil + } + + _isExecuting = true + + return action + // } + } + + private func dequeue() -> I? { + _lock.lock(); defer { _lock.unlock() } // { + if _queue.count > 0 { + return _queue.dequeue() + } + else { + _isExecuting = false + return nil + } + // } + } + + func invoke(action: I) { + let firstEnqueuedAction = enqueue(action) - if !isOwner { + if let firstEnqueuedAction = firstEnqueuedAction { + firstEnqueuedAction.invoke() + } + else { + // action is enqueued, it's somebody else's concern now return } while true { - let nextAction = _lock.calculateLocked { () -> Action? in - if _queue.count > 0 { - return _queue.dequeue() - } - else { - _isAcquired = false - return nil - } - } - + let nextAction = dequeue() + if let nextAction = nextAction { - nextAction() + nextAction.invoke() } else { return @@ -70,9 +94,11 @@ class AsyncLock : Disposable { } func dispose() { - _lock.performLocked { oldState in - _queue = Queue(capacity: 0) - _hasFaulted = true - } + synchronizedDispose() + } + + func _synchronized_dispose() { + _queue = Queue(capacity: 0) + _hasFaulted = true } } diff --git a/Example/Pods/RxSwift/RxSwift/Concurrency/Lock.swift b/Example/Pods/RxSwift/RxSwift/Concurrency/Lock.swift index df4d6f4..815133c 100644 --- a/Example/Pods/RxSwift/RxSwift/Concurrency/Lock.swift +++ b/Example/Pods/RxSwift/RxSwift/Concurrency/Lock.swift @@ -76,4 +76,30 @@ extension NSRecursiveLock : Lock { let result = try action() return result } -} \ No newline at end of file +} + +/* +let RECURSIVE_MUTEX = _initializeRecursiveMutex() + +func _initializeRecursiveMutex() -> pthread_mutex_t { + var mutex: pthread_mutex_t = pthread_mutex_t() + var mta: pthread_mutexattr_t = pthread_mutexattr_t() + + pthread_mutex_init(&mutex, nil) + pthread_mutexattr_init(&mta) + pthread_mutexattr_settype(&mta, PTHREAD_MUTEX_RECURSIVE) + pthread_mutex_init(&mutex, &mta) + + return mutex +} + +extension pthread_mutex_t { + mutating func lock() { + pthread_mutex_lock(&self) + } + + mutating func unlock() { + pthread_mutex_unlock(&self) + } +} +*/ \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift b/Example/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift index a73f8fc..3bb6849 100644 --- a/Example/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift +++ b/Example/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift @@ -8,15 +8,8 @@ import Foundation -protocol SynchronizedUnsubscribeType : class, Lock { +protocol SynchronizedUnsubscribeType : class { typealias DisposeKey - func _synchronized_unsubscribe(disposeKey: DisposeKey) -} - -extension SynchronizedUnsubscribeType { - func synchronizedUnsubscribe(disposeKey: DisposeKey) { - lock(); defer { unlock() } - _synchronized_unsubscribe(disposeKey) - } + func synchronizedUnsubscribe(disposeKey: DisposeKey) } \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/DataStructures/Bag.swift b/Example/Pods/RxSwift/RxSwift/DataStructures/Bag.swift index 3bc66e6..5953ebd 100644 --- a/Example/Pods/RxSwift/RxSwift/DataStructures/Bag.swift +++ b/Example/Pods/RxSwift/RxSwift/DataStructures/Bag.swift @@ -62,7 +62,7 @@ Time and space complexity of insertion an deletion is O(n). It is suitable for storing small number of elements. */ -public struct Bag : CustomStringConvertible { +public struct Bag : CustomDebugStringConvertible { /** Type of identifier for inserted elements. */ @@ -90,21 +90,14 @@ public struct Bag : CustomStringConvertible { // last is sparse dictionary private var _dictionary: [BagKey : T]? = nil + private var _onlyFastPath = true + /** Creates new empty `Bag`. */ public init() { } - /** - - returns: Bag description. - */ - public var description : String { - get { - return "\(self.count) elements in Bag" - } - } - /** Inserts `value` into bag. @@ -130,6 +123,8 @@ public struct Bag : CustomStringConvertible { return key } + _onlyFastPath = false + if _key1 == nil { _key1 = key _value1 = element @@ -212,6 +207,18 @@ public struct Bag : CustomStringConvertible { } } +extension Bag { + /** + A textual representation of `self`, suitable for debugging. + */ + public var debugDescription : String { + get { + return "\(self.count) elements in Bag" + } + } +} + + // MARK: forEach extension Bag { @@ -221,6 +228,13 @@ extension Bag { - parameter action: Enumeration closure. */ public func forEach(@noescape action: (T) -> Void) { + if _onlyFastPath { + if let value0 = _value0 { + action(value0) + } + return + } + let pairs = _pairs let value0 = _value0 let value1 = _value1 @@ -253,7 +267,12 @@ extension Bag where T: ObserverType { - parameter action: Enumeration closure. */ public func on(event: Event) { - let pairs = self._pairs + if _onlyFastPath { + _value0?.on(event) + return + } + + let pairs = _pairs let value0 = _value0 let value1 = _value1 let dictionary = _dictionary @@ -282,6 +301,11 @@ extension Bag where T: ObserverType { Dispatches `dispose` to all disposables contained inside bag. */ public func disposeAllIn(bag: Bag) { + if bag._onlyFastPath { + bag._value0?.dispose() + return + } + let pairs = bag._pairs let value0 = bag._value0 let value1 = bag._value1 diff --git a/Example/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift b/Example/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift new file mode 100644 index 0000000..ec33b80 --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift @@ -0,0 +1,47 @@ +// +// BooleanDisposable.swift +// Rx +// +// Created by Junior B. on 10/29/15. +// Copyright (c) 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +/** +Represents a disposable resource that can be checked for disposal status. +*/ +public class BooleanDisposable : Disposable, Cancelable { + + internal static let BooleanDisposableTrue = BooleanDisposable(disposed: true) + private var _disposed = false + + /** + Initializes a new instance of the `BooleanDisposable` class + */ + public init() { + } + + /** + Initializes a new instance of the `BooleanDisposable` class with given value + */ + public init(disposed: Bool) { + self._disposed = disposed + } + + /** + - returns: Was resource disposed. + */ + public var disposed: Bool { + get { + return _disposed + } + } + + /** + Sets the status to disposed, which can be observer through the `disposed` property. + */ + public func dispose() { + _disposed = true + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift b/Example/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift index 189424d..3ff4e54 100644 --- a/Example/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift +++ b/Example/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift @@ -13,7 +13,7 @@ Represents a disposable that does nothing on disposal. Nop = No Operation */ -public class NopDisposable : Disposable { +public struct NopDisposable : Disposable { /** Singleton instance of `NopDisposable`. diff --git a/Example/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift b/Example/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift new file mode 100644 index 0000000..53e308d --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift @@ -0,0 +1,129 @@ +// +// RefCountDisposable.swift +// Rx +// +// Created by Junior B. on 10/29/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +/** + Represents a disposable resource that only disposes its underlying disposable resource when all dependent disposable objects have been disposed. + */ +public class RefCountDisposable : DisposeBase, Cancelable { + private var _lock = SpinLock() + private var _disposable = nil as Disposable? + private var _primaryDisposed = false + private var _count = 0 + + /** + - returns: Was resource disposed. + */ + public var disposed: Bool { + get { + _lock.lock(); defer { _lock.unlock() } + return _disposable == nil + } + } + + /** + Initializes a new instance of the `RefCountDisposable`. + */ + public init(disposable: Disposable) { + _disposable = disposable + super.init() + } + + /** + Holds a dependent disposable that when disposed decreases the refcount on the underlying disposable. + + When getter is called, a dependent disposable contributing to the reference count that manages the underlying disposable's lifetime is returned. + */ + public func retain() -> Disposable { + return _lock.calculateLocked { + if let _ = _disposable { + + do { + try incrementChecked(&_count) + } catch (_) { + rxFatalError("RefCountDisposable increment failed") + } + + return RefCountInnerDisposable(self) + } else { + return NopDisposable.instance + } + } + } + + /** + Disposes the underlying disposable only when all dependent disposables have been disposed. + */ + public func dispose() { + let oldDisposable: Disposable? = _lock.calculateLocked { + if let oldDisposable = _disposable where !_primaryDisposed + { + _primaryDisposed = true; + + if (_count == 0) + { + _disposable = nil + return oldDisposable + } + } + + return nil + } + + if let disposable = oldDisposable { + disposable.dispose() + } + } + + private func release() { + let oldDisposable: Disposable? = _lock.calculateLocked { + if let oldDisposable = _disposable { + do { + try decrementChecked(&_count) + } catch (_) { + rxFatalError("RefCountDisposable decrement on release failed") + } + + guard _count >= 0 else { + rxFatalError("RefCountDisposable counter is lower than 0") + } + + if _primaryDisposed && _count == 0 { + _disposable = nil + return oldDisposable + } + } + + return nil + } + + if let disposable = oldDisposable { + disposable.dispose() + } + } +} + +internal final class RefCountInnerDisposable: DisposeBase, Disposable +{ + private let _parent: RefCountDisposable + private var _disposed: Int32 = 0 + + init(_ parent: RefCountDisposable) + { + _parent = parent; + super.init() + } + + internal func dispose() + { + if OSAtomicCompareAndSwap32(0, 1, &_disposed) { + _parent.release() + } + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Error.swift b/Example/Pods/RxSwift/RxSwift/Error.swift index 74307fe..e6a9438 100644 --- a/Example/Pods/RxSwift/RxSwift/Error.swift +++ b/Example/Pods/RxSwift/RxSwift/Error.swift @@ -14,56 +14,53 @@ let RxCompositeFailures = "RxCompositeFailures" /** Generic Rx error codes. */ -public enum RxErrorCode : Int { +public enum RxError + : ErrorType + , CustomDebugStringConvertible { /** - Unknown error occured + Unknown error occured. */ - case Unknown = 0 + case Unknown /** - Casting error + Performing an action on disposed object. */ - case Cast = 2 - /** - Performing an action on disposed object - */ - case Disposed = 3 + case Disposed(object: AnyObject) /** Aritmetic overflow error. */ - case Overflow = 4 + case Overflow /** Argument out of range error. */ - case ArgumentOutOfRange = 5 -} - -/** -Singleton instances of RxErrors -*/ -public struct RxError { - /** - Singleton instance of unknown Error - */ - public static let UnknownError = NSError(domain: RxErrorDomain, code: RxErrorCode.Unknown.rawValue, userInfo: nil) - + case ArgumentOutOfRange /** - Singleton instance of error during casting. + Sequence doesn't contain any element. */ - public static let CastError = NSError(domain: RxErrorDomain, code: RxErrorCode.Cast.rawValue, userInfo: nil) - + case NoElements /** - Singleton instance of doing something on a disposed object error. + Sequence contains more then one element. */ - public static let DisposedError = NSError(domain: RxErrorDomain, code: RxErrorCode.Disposed.rawValue, userInfo: nil) + case MoreThanOneElement +} +public extension RxError { /** - Singleton instance of aritmetic overflow error. + A textual representation of `self`, suitable for debugging. */ - public static let OverflowError = NSError(domain: RxErrorDomain, code: RxErrorCode.Overflow.rawValue, userInfo: nil) - - /** - Singleton instance of argument out of range error. - */ - public static let ArgumentOutOfRange = NSError(domain: RxErrorDomain, code: RxErrorCode.ArgumentOutOfRange.rawValue, userInfo: nil) - + public var debugDescription: String { + switch self { + case .Unknown: + return "Unknown error occured." + case .Disposed(let object): + return "Object `\(object)` was already disposed." + case .Overflow: + return "Arithmetic overflow occured." + case .ArgumentOutOfRange: + return "Argument out of range." + case .NoElements: + return "Sequence doesn't contain any element." + case .MoreThanOneElement: + return "Sequence contains more then one element." + } + } } \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Event.swift b/Example/Pods/RxSwift/RxSwift/Event.swift index e97f28f..2e23301 100644 --- a/Example/Pods/RxSwift/RxSwift/Event.swift +++ b/Example/Pods/RxSwift/RxSwift/Event.swift @@ -15,7 +15,7 @@ Represents sequence event Sequence grammar: Next\* (Error | Completed) */ -public enum Event : CustomStringConvertible { +public enum Event : CustomDebugStringConvertible { /** Next element is produced */ @@ -30,11 +30,13 @@ public enum Event : CustomStringConvertible { Sequence completes sucessfully */ case Completed - +} + +extension Event { /** - returns: Description of event */ - public var description: String { + public var debugDescription: String { get { switch self { case .Next(let value): diff --git a/Example/Pods/RxSwift/RxSwift/Observable.swift b/Example/Pods/RxSwift/RxSwift/Observable.swift index 8fa99d3..0bc931b 100644 --- a/Example/Pods/RxSwift/RxSwift/Observable.swift +++ b/Example/Pods/RxSwift/RxSwift/Observable.swift @@ -38,4 +38,14 @@ public class Observable : ObservableType { OSAtomicDecrement32(&resourceCount) #endif } + + // this is kind of ugly I know :( + // Swift compiler reports "Not supported yet" when trying to override protocol extensions, so ¯\_(ツ)_/¯ + + /** + Optimizations for map operator + */ + internal func composeMap(selector: Element throws -> R) -> Observable { + return Map(source: self, selector: selector) + } } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/AddRef.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/AddRef.swift new file mode 100644 index 0000000..50358ec --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/AddRef.swift @@ -0,0 +1,47 @@ +// +// AddRef.swift +// Rx +// +// Created by Junior B. on 30/10/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +class AddRefSink : Sink, ObserverType { + typealias Element = O.E + + override init(observer: O) { + super.init(observer: observer) + } + + func on(event: Event) { + switch event { + case .Next(_): + forwardOn(event) + case .Completed, .Error(_): + forwardOn(event) + dispose() + } + } +} + +class AddRef : Producer { + typealias EventHandler = Event throws -> Void + + private let _source: Observable + private let _refCount: RefCountDisposable + + init(source: Observable, refCount: RefCountDisposable) { + _source = source + _refCount = refCount + } + + override func run(observer: O) -> Disposable { + let releaseDisposable = _refCount.retain() + let sink = AddRefSink(observer: observer) + sink.disposable = StableCompositeDisposable.create(releaseDisposable, _source.subscribeSafe(sink)) + + return sink + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/AnonymousObservable.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/AnonymousObservable.swift index 3c98188..9ea13e1 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/AnonymousObservable.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/AnonymousObservable.swift @@ -29,8 +29,8 @@ class AnonymousObservableSink : Sink, ObserverType { forwardOn(event) case .Error, .Completed: if OSAtomicCompareAndSwap32(0, 1, &_isStopped) { - self.forwardOn(event) - self.dispose() + forwardOn(event) + dispose() } } } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Buffer.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Buffer.swift index b941e64..bc07a90 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Buffer.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Buffer.swift @@ -99,8 +99,12 @@ class BufferTimeCountSink : Producer { // catch enumerable -class CatchSequenceSink : TailRecursiveSink { +class CatchSequenceSink + : TailRecursiveSink + , ObserverType { typealias Element = O.E typealias Parent = CatchSequence @@ -105,18 +107,22 @@ class CatchSequenceSink) { + func on(event: Event) { switch event { case .Next: forwardOn(event) case .Error(let error): _lastError = error - scheduleMoveNext() + schedule(.MoveNext) case .Completed: forwardOn(event) dispose() } } + + override func subscribeToNext(source: Observable) -> Disposable { + return source.subscribe(self) + } override func done() { if let lastError = _lastError { diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Concat.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Concat.swift index 9aac20b..c8f5205 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Concat.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Concat.swift @@ -9,14 +9,16 @@ import Foundation -class ConcatSink : TailRecursiveSink { +class ConcatSink + : TailRecursiveSink + , ObserverType { typealias Element = O.E override init(observer: O) { super.init(observer: observer) } - override func on(event: Event){ + func on(event: Event){ switch event { case .Next: forwardOn(event) @@ -24,9 +26,13 @@ class ConcatSink) -> Disposable { + return source.subscribe(self) + } override func extract(observable: Observable) -> S.Generator? { if let source = observable as? Concat { diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Filter.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Filter.swift index 3f3f013..937771b 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Filter.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Filter.swift @@ -9,14 +9,15 @@ import Foundation class FilterSink: Sink, ObserverType { + typealias Predicate = (Element) throws -> Bool typealias Element = O.E typealias Parent = Filter - private let _parent: Parent + private let _predicate: Predicate - init(parent: Parent, observer: O) { - _parent = parent + init(predicate: Predicate, observer: O) { + _predicate = predicate super.init(observer: observer) } @@ -24,7 +25,7 @@ class FilterSink: Sink, ObserverType { switch event { case .Next(let value): do { - let satisfies = try _parent._predicate(value) + let satisfies = try _predicate(value) if satisfies { forwardOn(.Next(value)) } @@ -52,7 +53,7 @@ class Filter : Producer { } override func run(observer: O) -> Disposable { - let sink = FilterSink(parent: self, observer: observer) + let sink = FilterSink(predicate: _predicate, observer: observer) sink.disposable = _source.subscribe(sink) return sink } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/FlatMap.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/FlatMap.swift deleted file mode 100644 index 458c7ce..0000000 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/FlatMap.swift +++ /dev/null @@ -1,185 +0,0 @@ -// -// FlatMap.swift -// RxSwift -// -// Created by Krunoslav Zaher on 6/11/15. -// Copyright (c) 2015 Krunoslav Zaher. All rights reserved. -// - -import Foundation - -// It's value is one because initial source subscription is always in CompositeDisposable -let FlatMapNoIterators = 1 - -class FlatMapSinkIter : ObserverType { - typealias Parent = FlatMapSink - typealias DisposeKey = CompositeDisposable.DisposeKey - typealias E = O.E - - private let _parent: Parent - private let _disposeKey: DisposeKey - - init(parent: Parent, disposeKey: DisposeKey) { - _parent = parent - _disposeKey = disposeKey - } - - func on(event: Event) { - switch event { - case .Next(let value): - _parent._lock.lock(); defer { _parent._lock.unlock() } // lock { - _parent.forwardOn(.Next(value)) - // } - case .Error(let error): - _parent._lock.lock(); defer { _parent._lock.unlock() } // lock { - _parent.forwardOn(.Error(error)) - _parent.dispose() - // } - case .Completed: - _parent._group.removeDisposable(_disposeKey) - // If this has returned true that means that `Completed` should be sent. - // In case there is a race who will sent first completed, - // lock will sort it out. When first Completed message is sent - // it will set observer to nil, and thus prevent further complete messages - // to be sent, and thus preserving the sequence grammar. - if _parent._stopped && _parent._group.count == FlatMapNoIterators { - _parent._lock.lock(); defer { _parent._lock.unlock() } // lock { - _parent.forwardOn(.Completed) - _parent.dispose() - // } - } - } - } -} - -class FlatMapSink : Sink, ObserverType { - typealias ResultType = O.E - typealias Element = SourceType - typealias Parent = FlatMap - - private let _parent: Parent - - private let _lock = NSRecursiveLock() - - // state - private let _group = CompositeDisposable() - private let _sourceSubscription = SingleAssignmentDisposable() - - private var _stopped = false - - init(parent: Parent, observer: O) { - _parent = parent - super.init(observer: observer) - } - - func performMap(element: SourceType) throws -> S { - abstractMethod() - } - - func on(event: Event) { - switch event { - case .Next(let element): - do { - let value = try performMap(element) - subscribeInner(value.asObservable()) - } - catch let e { - forwardOn(.Error(e)) - dispose() - } - case .Error(let error): - _lock.lock(); defer { _lock.unlock() } // lock { - forwardOn(.Error(error)) - dispose() - // } - case .Completed: - _lock.lock(); defer { _lock.unlock() } // lock { - _stopped = true - if _group.count == FlatMapNoIterators { - forwardOn(.Completed) - dispose() - } - else { - _sourceSubscription.dispose() - } - //} - } - } - - func subscribeInner(source: Observable) { - let iterDisposable = SingleAssignmentDisposable() - if let disposeKey = _group.addDisposable(iterDisposable) { - let iter = FlatMapSinkIter(parent: self, disposeKey: disposeKey) - let subscription = source.subscribe(iter) - iterDisposable.disposable = subscription - } - } - - func run() -> Disposable { - _group.addDisposable(_sourceSubscription) - - let subscription = _parent._source.subscribe(self) - _sourceSubscription.disposable = subscription - - return _group - } -} - -class FlatMapSink1 : FlatMapSink { - override init(parent: Parent, observer: O) { - super.init(parent: parent, observer: observer) - } - - override func performMap(element: SourceType) throws -> S { - return try _parent._selector1!(element) - } -} - -class FlatMapSink2 : FlatMapSink { - private var _index = 0 - - override init(parent: Parent, observer: O) { - super.init(parent: parent, observer: observer) - } - - override func performMap(element: SourceType) throws -> S { - return try _parent._selector2!(element, try incrementChecked(&_index)) - } -} - -class FlatMap: Producer { - typealias Selector1 = (SourceType) throws -> S - typealias Selector2 = (SourceType, Int) throws -> S - - private let _source: Observable - - private let _selector1: Selector1? - private let _selector2: Selector2? - - init(source: Observable, selector: Selector1) { - _source = source - _selector1 = selector - _selector2 = nil - } - - init(source: Observable, selector: Selector2) { - _source = source - _selector2 = selector - _selector1 = nil - } - - override func run(observer: O) -> Disposable { - let sink: FlatMapSink - if let _ = _selector1 { - sink = FlatMapSink1(parent: self, observer: observer) - } - else { - sink = FlatMapSink2(parent: self, observer: observer) - } - - let subscription = sink.run() - sink.disposable = subscription - - return sink - } -} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Just.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Just.swift index fecb935..280827a 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Just.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Just.swift @@ -8,6 +8,44 @@ import Foundation +class JustScheduledSink : Sink { + typealias Parent = JustScheduled + + private let _parent: Parent + + init(parent: Parent, observer: O) { + _parent = parent + super.init(observer: observer) + } + + func run() -> Disposable { + let scheduler = _parent._scheduler + return scheduler.schedule(_parent._element) { element in + self.forwardOn(.Next(element)) + return scheduler.schedule(()) { _ in + self.forwardOn(.Completed) + return NopDisposable.instance + } + } + } +} + +class JustScheduled : Producer { + private let _scheduler: ImmediateSchedulerType + private let _element: Element + + init(element: Element, scheduler: ImmediateSchedulerType) { + _scheduler = scheduler + _element = element + } + + override func subscribe(observer: O) -> Disposable { + let sink = JustScheduledSink(parent: self, observer: observer) + sink.disposable = sink.run() + return sink + } +} + class Just : Producer { private let _element: Element diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Map.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Map.swift index 20c6bd1..fbf85f9 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Map.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Map.swift @@ -9,26 +9,23 @@ import Foundation class MapSink : Sink, ObserverType { + typealias Selector = (SourceType) throws -> ResultType + typealias ResultType = O.E typealias Element = SourceType - typealias Parent = Map - - private let _parent: Parent + + private let _selector: Selector - init(parent: Parent, observer: O) { - _parent = parent + init(selector: Selector, observer: O) { + _selector = selector super.init(observer: observer) } - - func performMap(element: SourceType) throws -> ResultType { - abstractMethod() - } func on(event: Event) { switch event { case .Next(let element): do { - let mappedElement = try performMap(element) + let mappedElement = try _selector(element) forwardOn(.Next(mappedElement)) } catch let e { @@ -45,63 +42,99 @@ class MapSink : Sink, ObserverType { } } -class MapSink1 : MapSink { +class MapWithIndexSink : Sink, ObserverType { + typealias Selector = (SourceType, Int) throws -> ResultType + typealias ResultType = O.E + typealias Element = SourceType + typealias Parent = MapWithIndex - override init(parent: Map, observer: O) { - super.init(parent: parent, observer: observer) + private let _selector: Selector + + private var _index = 0 + + init(selector: Selector, observer: O) { + _selector = selector + super.init(observer: observer) } - - override func performMap(element: SourceType) throws -> ResultType { - return try _parent._selector1!(element) + + func on(event: Event) { + switch event { + case .Next(let element): + do { + let mappedElement = try _selector(element, try incrementChecked(&_index)) + forwardOn(.Next(mappedElement)) + } + catch let e { + forwardOn(.Error(e)) + dispose() + } + case .Error(let error): + forwardOn(.Error(error)) + dispose() + case .Completed: + forwardOn(.Completed) + dispose() + } } } -class MapSink2 : MapSink { - typealias ResultType = O.E - - private var _index = 0 - - override init(parent: Map, observer: O) { - super.init(parent: parent, observer: observer) +class MapWithIndex : Producer { + typealias Selector = (SourceType, Int) throws -> ResultType + + private let _source: Observable + + private let _selector: Selector + + init(source: Observable, selector: Selector) { + _source = source + _selector = selector } - override func performMap(element: SourceType) throws -> ResultType { - return try _parent._selector2!(element, try incrementChecked(&_index)) + + override func run(observer: O) -> Disposable { + let sink = MapWithIndexSink(selector: _selector, observer: observer) + sink.disposable = _source.subscribe(sink) + return sink } } +#if TRACE_RESOURCES +public var numberOfMapOperators: Int32 = 0 +#endif + class Map: Producer { - typealias Selector1 = (SourceType) throws -> ResultType - typealias Selector2 = (SourceType, Int) throws -> ResultType - + typealias Selector = (SourceType) throws -> ResultType + private let _source: Observable - - private let _selector1: Selector1? - private let _selector2: Selector2? - - init(source: Observable, selector: Selector1) { + + private let _selector: Selector + + init(source: Observable, selector: Selector) { _source = source - _selector1 = selector - _selector2 = nil + _selector = selector + +#if TRACE_RESOURCES + OSAtomicIncrement32(&numberOfMapOperators) +#endif } - - init(source: Observable, selector: Selector2) { - _source = source - _selector2 = selector - _selector1 = nil + + override func composeMap(selector: ResultType throws -> R) -> Observable { + let originalSelector = _selector + return Map(source: _source, selector: { (s: SourceType) throws -> R in + let r: ResultType = try originalSelector(s) + return try selector(r) + }) } override func run(observer: O) -> Disposable { - if let _ = _selector1 { - let sink = MapSink1(parent: self, observer: observer) - sink.disposable = _source.subscribe(sink) - return sink - } - else { - let sink = MapSink2(parent: self, observer: observer) - sink.disposable = _source.subscribe(sink) - return sink - } - + let sink = MapSink(selector: _selector, observer: observer) + sink.disposable = _source.subscribe(sink) + return sink + } + + #if TRACE_RESOURCES + deinit { + OSAtomicDecrement32(&numberOfMapOperators) } + #endif } \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Merge.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Merge.swift index d2d97e5..01301df 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Merge.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Merge.swift @@ -8,130 +8,15 @@ import Foundation -// sequential +// MARK: Limited concurrency version -class MergeSinkIter +class MergeLimitedSinkIter : ObserverType , LockOwnerType , SynchronizedOnType { typealias E = O.E typealias DisposeKey = Bag.KeyType - typealias Parent = MergeSink - - private let _parent: Parent - private let _disposeKey: DisposeKey - - var _lock: NSRecursiveLock { - return _parent._lock - } - - init(parent: Parent, disposeKey: DisposeKey) { - _parent = parent - _disposeKey = disposeKey - } - - func on(event: Event) { - synchronizedOn(event) - } - - func _synchronized_on(event: Event) { - switch event { - case .Next: - _parent.forwardOn(event) - case .Error: - _parent.forwardOn(event) - _parent.dispose() - case .Completed: - _parent._group.removeDisposable(_disposeKey) - - if _parent._stopped && _parent._group.count == 1 { - _parent.forwardOn(.Completed) - _parent.dispose() - } - } - } -} - -class MergeSink - : Sink - , ObserverType - , LockOwnerType - , SynchronizedOnType { - typealias E = S - typealias Parent = Merge - - private let _parent: Parent - - let _lock = NSRecursiveLock() - - // state - private var _stopped = false - - private let _group = CompositeDisposable() - private let _sourceSubscription = SingleAssignmentDisposable() - - init(parent: Parent, observer: O) { - _parent = parent - - super.init(observer: observer) - } - - func run() -> Disposable { - _group.addDisposable(_sourceSubscription) - - let disposable = _parent._sources.subscribe(self) - _sourceSubscription.disposable = disposable - - return _group - } - - func on(event: Event) { - if case .Next(let value) = event { - let innerSubscription = SingleAssignmentDisposable() - let maybeKey = _group.addDisposable(innerSubscription) - - if let key = maybeKey { - let observer = MergeSinkIter(parent: self, disposeKey: key) - let disposable = value.asObservable().subscribe(observer) - innerSubscription.disposable = disposable - } - - return - } - - synchronizedOn(event) - } - - func _synchronized_on(event: Event) { - switch event { - case .Next: - rxFatalError("Next should have been handled") - case .Error(let error): - forwardOn(.Error(error)) - dispose() - case .Completed: - _stopped = true - - if _group.count == 1 { - forwardOn(.Completed) - dispose() - } - else { - _sourceSubscription.dispose() - } - } - } -} - -// concurrent - -class MergeConcurrentSinkIter - : ObserverType - , LockOwnerType - , SynchronizedOnType { - typealias E = O.E - typealias DisposeKey = Bag.KeyType - typealias Parent = MergeConcurrentSink + typealias Parent = MergeLimitedSink private let _parent: Parent private let _disposeKey: DisposeKey @@ -175,17 +60,16 @@ class MergeConcurrentSinkIter +class MergeLimitedSink : Sink , ObserverType , LockOwnerType , SynchronizedOnType { typealias E = S - typealias Parent = Merge typealias QueueType = Queue - - private let _parent: Parent - + + private let _maxConcurrent: Int + let _lock = NSRecursiveLock() // state @@ -196,17 +80,17 @@ class MergeConcurrentSink Disposable { + func run(source: Observable) -> Disposable { _group.addDisposable(_sourceSubscription) - let disposable = _parent._sources.subscribe(self) + let disposable = source.subscribe(self) _sourceSubscription.disposable = disposable return _group } @@ -217,7 +101,7 @@ class MergeConcurrentSink : Producer { - private let _sources: Observable +class MergeLimited : Producer { + private let _source: Observable private let _maxConcurrent: Int - init(sources: Observable, maxConcurrent: Int) { - _sources = sources + init(source: Observable, maxConcurrent: Int) { + _source = source _maxConcurrent = maxConcurrent } override func run(observer: O) -> Disposable { - if _maxConcurrent > 0 { - let sink = MergeConcurrentSink(parent: self, observer: observer) - sink.disposable = sink.run() - return sink + let sink = MergeLimitedSink(maxConcurrent: _maxConcurrent, observer: observer) + sink.disposable = sink.run(_source) + return sink + } +} + +// MARK: Merge + +final class MergeBasicSink : MergeSink { + override init(observer: O) { + super.init(observer: observer) + } + + override func performMap(element: S) throws -> S { + return element + } +} + +// MARK: flatMap + +final class FlatMapSink : MergeSink { + typealias Selector = (SourceType) throws -> S + + private let _selector: Selector + + init(selector: Selector, observer: O) { + _selector = selector + super.init(observer: observer) + } + + override func performMap(element: SourceType) throws -> S { + return try _selector(element) + } +} + +final class FlatMapWithIndexSink : MergeSink { + typealias Selector = (SourceType, Int) throws -> S + + private var _index = 0 + private let _selector: Selector + + init(selector: Selector, observer: O) { + _selector = selector + super.init(observer: observer) + } + + override func performMap(element: SourceType) throws -> S { + return try _selector(element, try incrementChecked(&_index)) + } +} + +// MARK: FlatMapFirst + +final class FlatMapFirstSink : MergeSink { + typealias Selector = (SourceType) throws -> S + + private let _selector: Selector + + override var subscribeNext: Bool { + return _group.count == MergeNoIterators + } + + init(selector: Selector, observer: O) { + _selector = selector + super.init(observer: observer) + } + + override func performMap(element: SourceType) throws -> S { + return try _selector(element) + } +} + +// It's value is one because initial source subscription is always in CompositeDisposable +private let MergeNoIterators = 1 + +class MergeSinkIter : ObserverType { + typealias Parent = MergeSink + typealias DisposeKey = CompositeDisposable.DisposeKey + typealias E = O.E + + private let _parent: Parent + private let _disposeKey: DisposeKey + + init(parent: Parent, disposeKey: DisposeKey) { + _parent = parent + _disposeKey = disposeKey + } + + func on(event: Event) { + switch event { + case .Next(let value): + _parent._lock.lock(); defer { _parent._lock.unlock() } // lock { + _parent.forwardOn(.Next(value)) + // } + case .Error(let error): + _parent._lock.lock(); defer { _parent._lock.unlock() } // lock { + _parent.forwardOn(.Error(error)) + _parent.dispose() + // } + case .Completed: + _parent._group.removeDisposable(_disposeKey) + // If this has returned true that means that `Completed` should be sent. + // In case there is a race who will sent first completed, + // lock will sort it out. When first Completed message is sent + // it will set observer to nil, and thus prevent further complete messages + // to be sent, and thus preserving the sequence grammar. + if _parent._stopped && _parent._group.count == MergeNoIterators { + _parent._lock.lock(); defer { _parent._lock.unlock() } // lock { + _parent.forwardOn(.Completed) + _parent.dispose() + // } + } } - else { - let sink = MergeSink(parent: self, observer: observer) - sink.disposable = sink.run() - return sink + } +} + + +class MergeSink + : Sink + , ObserverType { + typealias ResultType = O.E + typealias Element = SourceType + + private let _lock = NSRecursiveLock() + + private var subscribeNext: Bool { + return true + } + + // state + private let _group = CompositeDisposable() + private let _sourceSubscription = SingleAssignmentDisposable() + + private var _stopped = false + + override init(observer: O) { + super.init(observer: observer) + } + + func performMap(element: SourceType) throws -> S { + abstractMethod() + } + + func on(event: Event) { + switch event { + case .Next(let element): + if !subscribeNext { + return + } + do { + let value = try performMap(element) + subscribeInner(value.asObservable()) + } + catch let e { + forwardOn(.Error(e)) + dispose() + } + case .Error(let error): + _lock.lock(); defer { _lock.unlock() } // lock { + forwardOn(.Error(error)) + dispose() + // } + case .Completed: + _lock.lock(); defer { _lock.unlock() } // lock { + _stopped = true + if _group.count == MergeNoIterators { + forwardOn(.Completed) + dispose() + } + else { + _sourceSubscription.dispose() + } + //} + } + } + + func subscribeInner(source: Observable) { + let iterDisposable = SingleAssignmentDisposable() + if let disposeKey = _group.addDisposable(iterDisposable) { + let iter = MergeSinkIter(parent: self, disposeKey: disposeKey) + let subscription = source.subscribe(iter) + iterDisposable.disposable = subscription } } -} \ No newline at end of file + + func run(source: Observable) -> Disposable { + _group.addDisposable(_sourceSubscription) + + let subscription = source.subscribe(self) + _sourceSubscription.disposable = subscription + + return _group + } +} + +// MARK: Producers + +final class FlatMap: Producer { + typealias Selector = (SourceType) throws -> S + + private let _source: Observable + + private let _selector: Selector + + init(source: Observable, selector: Selector) { + _source = source + _selector = selector + } + + override func run(observer: O) -> Disposable { + let sink = FlatMapSink(selector: _selector, observer: observer) + sink.disposable = sink.run(_source) + return sink + } +} + +final class FlatMapWithIndex: Producer { + typealias Selector = (SourceType, Int) throws -> S + + private let _source: Observable + + private let _selector: Selector + + init(source: Observable, selector: Selector) { + _source = source + _selector = selector + } + + override func run(observer: O) -> Disposable { + let sink = FlatMapWithIndexSink(selector: _selector, observer: observer) + sink.disposable = sink.run(_source) + return sink + } + +} + +final class FlatMapFirst: Producer { + typealias Selector = (SourceType) throws -> S + + private let _source: Observable + + private let _selector: Selector + + init(source: Observable, selector: Selector) { + _source = source + _selector = selector + } + + override func run(observer: O) -> Disposable { + let sink = FlatMapFirstSink(selector: _selector, observer: observer) + sink.disposable = sink.run(_source) + return sink + } +} + +final class Merge : Producer { + private let _source: Observable + + init(source: Observable) { + _source = source + } + + override func run(observer: O) -> Disposable { + let sink = MergeBasicSink(observer: observer) + sink.disposable = sink.run(_source) + return sink + } +} + diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/RetryWhen.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/RetryWhen.swift new file mode 100644 index 0000000..3ab3fa0 --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/RetryWhen.swift @@ -0,0 +1,152 @@ +// +// RetryWhen.swift +// Rx +// +// Created by Junior B. on 06/10/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +class RetryTriggerSink + : ObserverType { + typealias E = TriggerObservable.E + + typealias Parent = RetryWhenSequenceSinkIter + + private let _parent: Parent + + init(parent: Parent) { + _parent = parent + } + + func on(event: Event) { + switch event { + case .Next: + _parent._parent._lastError = nil + _parent._parent.schedule(.MoveNext) + case .Error(let e): + _parent._parent.forwardOn(.Error(e)) + _parent._parent.dispose() + case .Completed: + _parent._parent.forwardOn(.Completed) + _parent._parent.dispose() + } + } +} + +class RetryWhenSequenceSinkIter + : SingleAssignmentDisposable + , ObserverType { + typealias E = O.E + typealias Parent = RetryWhenSequenceSink + + private let _parent: Parent + private let _errorHandlerSubscription = SingleAssignmentDisposable() + + init(parent: Parent) { + _parent = parent + } + + func on(event: Event) { + switch event { + case .Next: + _parent.forwardOn(event) + case .Error(let error): + _parent._lastError = error + + if let failedWith = error as? Error { + // dispose current subscription + super.dispose() + + let errorHandlerSubscription = _parent._notifier.subscribe(RetryTriggerSink(parent: self)) + _errorHandlerSubscription.disposable = errorHandlerSubscription + _parent._errorSubject.on(.Next(failedWith)) + } + else { + _parent.forwardOn(.Error(error)) + _parent.dispose() + } + case .Completed: + _parent.forwardOn(event) + _parent.dispose() + } + } + + override func dispose() { + super.dispose() + _errorHandlerSubscription.dispose() + } +} + +class RetryWhenSequenceSink + : TailRecursiveSink { + typealias Element = O.E + typealias Parent = RetryWhenSequence + + let _lock = NSRecursiveLock() + + private let _parent: Parent + + private var _lastError: ErrorType? + private let _errorSubject = PublishSubject() + private let _handler: Observable + private let _notifier = PublishSubject() + + init(parent: Parent, observer: O) { + _parent = parent + _handler = parent._notificationHandler(_errorSubject).asObservable() + super.init(observer: observer) + } + + override func done() { + if let lastError = _lastError { + forwardOn(.Error(lastError)) + _lastError = nil + } + else { + forwardOn(.Completed) + } + + dispose() + } + + override func extract(observable: Observable) -> S.Generator? { + if let onError = observable as? RetryWhenSequence { + return onError._sources.generate() + } + else { + return nil + } + } + + override func subscribeToNext(source: Observable) -> Disposable { + let iter = RetryWhenSequenceSinkIter(parent: self) + iter.disposable = source.subscribe(iter) + return iter + } + + override func run(sources: S.Generator) -> Disposable { + let triggerSubscription = _handler.subscribe(_notifier.asObserver()) + let superSubscription = super.run(sources) + return StableCompositeDisposable.create(superSubscription, triggerSubscription) + } +} + +class RetryWhenSequence : Producer { + typealias Element = S.Generator.Element.E + + private let _sources: S + private let _notificationHandler: Observable -> TriggerObservable + + init(sources: S, notificationHandler: Observable -> TriggerObservable) { + _sources = sources + _notificationHandler = notificationHandler + } + + override func run(observer: O) -> Disposable { + let sink = RetryWhenSequenceSink(parent: self, observer: observer) + sink.disposable = sink.run(self._sources.generate()) + return sink + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sequence.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sequence.swift new file mode 100644 index 0000000..63ee713 --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sequence.swift @@ -0,0 +1,58 @@ +// +// Sequence.swift +// Rx +// +// Created by Krunoslav Zaher on 11/14/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +class SequenceSink : Sink { + typealias Parent = Sequence + + private let _parent: Parent + + init(parent: Parent, observer: O) { + _parent = parent + super.init(observer: observer) + } + + func run() -> Disposable { + return _parent._scheduler!.scheduleRecursive((0, _parent._elements)) { (state, recurse) in + if state.0 < state.1.count { + self.forwardOn(.Next(state.1[state.0])) + recurse((state.0 + 1, state.1)) + } + else { + self.forwardOn(.Completed) + } + } + } +} + +class Sequence : Producer { + private let _elements: [E] + private let _scheduler: ImmediateSchedulerType? + + init(elements: [E], scheduler: ImmediateSchedulerType?) { + _elements = elements + _scheduler = scheduler + } + + override func subscribe(observer: O) -> Disposable { + // optimized version without scheduler + guard _scheduler != nil else { + for element in _elements { + observer.on(.Next(element)) + } + + observer.on(.Completed) + return NopDisposable.instance + } + + let sink = SequenceSink(parent: self, observer: observer) + sink.disposable = sink.run() + return sink + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/ShareReplay1.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/ShareReplay1.swift index 0707b84..52cb5eb 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/ShareReplay1.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/ShareReplay1.swift @@ -9,22 +9,20 @@ import Foundation // optimized version of share replay for most common case -class ShareReplay1 +final class ShareReplay1 : Observable , ObserverType - , LockOwnerType - , SynchronizedOnType - , SynchronizedSubscribeType , SynchronizedUnsubscribeType { typealias DisposeKey = Bag>.KeyType private let _source: Observable - let _lock = NSRecursiveLock() + private var _lock = NSRecursiveLock() private var _connection: SingleAssignmentDisposable? private var _element: Element? + private var _stopped = false private var _stopEvent = nil as Event? private var _observers = Bag>() @@ -33,7 +31,8 @@ class ShareReplay1 } override func subscribe(observer: O) -> Disposable { - return synchronizedSubscribe(observer) + _lock.lock(); defer { _lock.unlock() } + return _synchronized_subscribe(observer) } func _synchronized_subscribe(observer: O) -> Disposable { @@ -60,6 +59,11 @@ class ShareReplay1 return SubscriptionDisposable(owner: self, key: disposeKey) } + func synchronizedUnsubscribe(disposeKey: DisposeKey) { + _lock.lock(); defer { _lock.unlock() } + _synchronized_unsubscribe(disposeKey) + } + func _synchronized_unsubscribe(disposeKey: DisposeKey) { // if already unsubscribed, just return if self._observers.removeKey(disposeKey) == nil { @@ -73,20 +77,21 @@ class ShareReplay1 } func on(event: Event) { - synchronizedOn(event) + _lock.lock(); defer { _lock.unlock() } + _synchronized_on(event) } func _synchronized_on(event: Event) { - if _stopEvent != nil { + if _stopped { return } - if case .Next(let element) = event { + switch event { + case .Next(let element): _element = element - } - - if event.isStopEvent { + case .Error, .Completed: _stopEvent = event + _stopped = true _connection?.dispose() _connection = nil } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/SingleAsync.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/SingleAsync.swift new file mode 100644 index 0000000..3893814 --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/SingleAsync.swift @@ -0,0 +1,76 @@ +// +// SingleAsync.swift +// Rx +// +// Created by Junior B. on 09/11/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +class SingleAsyncSink : Sink, ObserverType { + typealias Parent = SingleAsync + typealias E = ElementType + + private let _parent: Parent + private var _seenValue: Bool = false + + init(parent: Parent, observer: O) { + _parent = parent + super.init(observer: observer) + } + + func on(event: Event) { + switch event { + case .Next(let value): + do { + let forward = try _parent._predicate?(value) ?? true + if !forward { + return + } + } + catch let error { + forwardOn(.Error(error as ErrorType)) + dispose() + return + } + + if _seenValue == false { + forwardOn(.Next(value)) + _seenValue = true + } else { + forwardOn(.Error(RxError.MoreThanOneElement)) + dispose() + } + + case .Error: + forwardOn(event) + dispose() + case .Completed: + if (!_seenValue) { + forwardOn(.Error(RxError.NoElements)) + } else { + forwardOn(.Completed) + } + dispose() + } + } +} + +class SingleAsync: Producer { + typealias Predicate = (Element) throws -> Bool + + private let _source: Observable + private let _predicate: Predicate? + + init(source: Observable, predicate: Predicate? = nil) { + _source = source + _predicate = predicate + } + + override func run(observer: O) -> Disposable { + let sink = SingleAsyncSink(parent: self, observer: observer) + sink.disposable = _source.subscribe(sink) + return sink + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sink.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sink.swift index fec16dd..a8ef5c3 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sink.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Sink.swift @@ -11,7 +11,7 @@ import Foundation class Sink : SingleAssignmentDisposable { private let _observer: O - func forwardOn(event: Event) { + final func forwardOn(event: Event) { if disposed { return } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Switch.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Switch.swift index e604864..700b101 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Switch.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Switch.swift @@ -8,18 +8,16 @@ import Foundation -class SwitchSink +class SwitchSink : Sink , ObserverType , LockOwnerType , SynchronizedOnType { - typealias E = S - typealias Parent = Switch + typealias E = SourceType private let _subscriptions: SingleAssignmentDisposable = SingleAssignmentDisposable() private let _innerSubscription: SerialDisposable = SerialDisposable() - private let _parent: Parent - + let _lock = NSRecursiveLock() // state @@ -27,14 +25,12 @@ class SwitchSink private var _latest = 0 private var _hasLatest = false - init(parent: Parent, observer: O) { - _parent = parent - + override init(observer: O) { super.init(observer: observer) } - func run() -> Disposable { - let subscription = _parent._sources.subscribe(self) + func run(source: Observable) -> Disposable { + let subscription = source.subscribe(self) _subscriptions.disposable = subscription return StableCompositeDisposable.create(_subscriptions, _innerSubscription) } @@ -43,19 +39,30 @@ class SwitchSink synchronizedOn(event) } + func performMap(element: SourceType) throws -> S { + abstractMethod() + } + func _synchronized_on(event: Event) { switch event { - case .Next(let observable): - _hasLatest = true - _latest = _latest &+ 1 - let latest = _latest - - let d = SingleAssignmentDisposable() - _innerSubscription.disposable = d - - let observer = SwitchSinkIter(parent: self, id: latest, _self: d) - let disposable = observable.asObservable().subscribe(observer) - d.disposable = disposable + case .Next(let element): + do { + let observable = try performMap(element).asObservable() + _hasLatest = true + _latest = _latest &+ 1 + let latest = _latest + + let d = SingleAssignmentDisposable() + _innerSubscription.disposable = d + + let observer = SwitchSinkIter(parent: self, id: latest, _self: d) + let disposable = observable.subscribe(observer) + d.disposable = disposable + } + catch let error { + forwardOn(.Error(error)) + dispose() + } case .Error(let error): forwardOn(.Error(error)) dispose() @@ -72,12 +79,12 @@ class SwitchSink } } -class SwitchSinkIter +class SwitchSinkIter : ObserverType , LockOwnerType , SynchronizedOnType { - typealias E = O.E - typealias Parent = SwitchSink + typealias E = S.E + typealias Parent = SwitchSink private let _parent: Parent private let _id: Int @@ -124,16 +131,63 @@ class SwitchSinkIter : Producer { - private let _sources: Observable +// MARK: Specializations + +final class SwitchIdentitySink : SwitchSink { + override init(observer: O) { + super.init(observer: observer) + } + + override func performMap(element: S) throws -> S { + return element + } +} + +final class MapSwitchSink : SwitchSink { + typealias Selector = SourceType throws -> S + + private let _selector: Selector + + init(selector: Selector, observer: O) { + _selector = selector + super.init(observer: observer) + } + + override func performMap(element: SourceType) throws -> S { + return try _selector(element) + } +} + +// MARK: Producers + +final class Switch : Producer { + private let _source: Observable - init(sources: Observable) { - _sources = sources + init(source: Observable) { + _source = source } override func run(observer: O) -> Disposable { - let sink = SwitchSink(parent: self, observer: observer) - sink.disposable = sink.run() + let sink = SwitchIdentitySink(observer: observer) + sink.disposable = sink.run(_source) + return sink + } +} + +final class FlatMapLatest : Producer { + typealias Selector = SourceType throws -> S + + private let _source: Observable + private let _selector: Selector + + init(source: Observable, selector: Selector) { + _source = source + _selector = selector + } + + override func run(observer: O) -> Disposable { + let sink = MapSwitchSink(selector: _selector, observer: observer) + sink.disposable = sink.run(_source) return sink } } \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Window.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Window.swift new file mode 100644 index 0000000..3c30278 --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Window.swift @@ -0,0 +1,151 @@ +// +// Buffer.swift +// Rx +// +// Created by Junior B. on 29/10/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +class WindowTimeCountSink> + : Sink + , ObserverType + , LockOwnerType + , SynchronizedOnType { + typealias Parent = WindowTimeCount + typealias E = Element + + private let _parent: Parent + + let _lock = NSRecursiveLock() + + private var _subject = PublishSubject() + private var _count = 0 + private var _windowId = 0 + + private let _timerD = SerialDisposable() + private let _refCountDisposable: RefCountDisposable + private let _groupDisposable = CompositeDisposable() + + init(parent: Parent, observer: O) { + _parent = parent + + _groupDisposable.addDisposable(_timerD) + + _refCountDisposable = RefCountDisposable(disposable: _groupDisposable) + super.init(observer: observer) + } + + func run() -> Disposable { + + forwardOn(.Next(AddRef(source: _subject, refCount: _refCountDisposable).asObservable())) + createTimer(_windowId) + + _groupDisposable.addDisposable(_parent._source.subscribeSafe(self)) + return _refCountDisposable + } + + func startNewWindowAndCompleteCurrentOne() { + _subject.on(.Completed) + _subject = PublishSubject() + + forwardOn(.Next(AddRef(source: _subject, refCount: _refCountDisposable).asObservable())) + } + + func on(event: Event) { + synchronizedOn(event) + } + + func _synchronized_on(event: Event) { + var newWindow = false + var newId = 0 + + switch event { + case .Next(let element): + _subject.on(.Next(element)) + + do { + try incrementChecked(&_count) + } catch (let e) { + _subject.on(.Error(e as ErrorType)) + dispose() + } + + if (_count == _parent._count) { + newWindow = true + _count = 0 + newId = ++_windowId + self.startNewWindowAndCompleteCurrentOne() + } + + case .Error(let error): + _subject.on(.Error(error)) + forwardOn(.Error(error)) + dispose() + case .Completed: + _subject.on(.Completed) + forwardOn(.Completed) + dispose() + } + + if newWindow { + createTimer(newId) + } + } + + func createTimer(windowId: Int) { + if _timerD.disposed { + return + } + + if _windowId != windowId { + return + } + + let nextTimer = SingleAssignmentDisposable() + + _timerD.disposable = nextTimer + + nextTimer.disposable = _parent._scheduler.scheduleRelative(windowId, dueTime: _parent._timeSpan) { previousWindowId in + + var newId = 0 + + self._lock.performLocked { + if previousWindowId != self._windowId { + return + } + + self._count = 0 + self._windowId = self._windowId &+ 1 + newId = self._windowId + self.startNewWindowAndCompleteCurrentOne() + } + + self.createTimer(newId) + + return NopDisposable.instance + } + } +} + +class WindowTimeCount : Producer> { + + private let _timeSpan: S.TimeInterval + private let _count: Int + private let _scheduler: S + private let _source: Observable + + init(source: Observable, timeSpan: S.TimeInterval, count: Int, scheduler: S) { + _source = source + _timeSpan = timeSpan + _count = count + _scheduler = scheduler + } + + override func run>(observer: O) -> Disposable { + let sink = WindowTimeCountSink(parent: self, observer: observer) + sink.disposable = sink.run() + return sink + } +} diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Zip+arity.swift b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Zip+arity.swift index 7d70640..52ffe35 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Zip+arity.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Implementations/Zip+arity.swift @@ -21,7 +21,7 @@ Merges the specified observable sequences into one observable sequence by using - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func zip +public func zip (source1: O1, _ source2: O2, resultSelector: (O1.E, O2.E) throws -> R) -> Observable { return Zip2( @@ -110,7 +110,7 @@ Merges the specified observable sequences into one observable sequence by using - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func zip +public func zip (source1: O1, _ source2: O2, _ source3: O3, resultSelector: (O1.E, O2.E, O3.E) throws -> R) -> Observable { return Zip3( @@ -207,7 +207,7 @@ Merges the specified observable sequences into one observable sequence by using - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func zip +public func zip (source1: O1, _ source2: O2, _ source3: O3, _ source4: O4, resultSelector: (O1.E, O2.E, O3.E, O4.E) throws -> R) -> Observable { return Zip4( @@ -312,7 +312,7 @@ Merges the specified observable sequences into one observable sequence by using - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func zip +public func zip (source1: O1, _ source2: O2, _ source3: O3, _ source4: O4, _ source5: O5, resultSelector: (O1.E, O2.E, O3.E, O4.E, O5.E) throws -> R) -> Observable { return Zip5( @@ -425,7 +425,7 @@ Merges the specified observable sequences into one observable sequence by using - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func zip +public func zip (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 -> R) -> Observable { return Zip6( @@ -546,7 +546,7 @@ Merges the specified observable sequences into one observable sequence by using - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func zip +public func zip (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 -> R) -> Observable { return Zip7( @@ -675,7 +675,7 @@ Merges the specified observable sequences into one observable sequence by using - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func zip +public func zip (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 -> R) -> Observable { return Zip8( diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Creation.swift b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Creation.swift index 9b3e967..b7dfc66 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Creation.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Creation.swift @@ -58,23 +58,30 @@ public func just(element: E) -> Observable { return Just(element: element) } +/** +Returns an observable sequence that contains a single element. + +- parameter element: Single element in the resulting observable sequence. +- parameter: Scheduler to send the single element on. +- returns: An observable sequence containing the single specified element. +*/ +@warn_unused_result(message="http://git.io/rxs.uo") +public func just(element: E, scheduler: ImmediateSchedulerType) -> Observable { + return JustScheduled(element: element, scheduler: scheduler) +} + // MARK: of /** This method creates a new Observable instance with a variable number of elements. +- parameter elements: Elements to generate. +- parameter scheduler: Scheduler to send elements on. If `nil`, elements are sent immediatelly on subscription. - returns: The observable sequence whose elements are pulled from the given arguments. */ @warn_unused_result(message="http://git.io/rxs.uo") -public func sequenceOf(elements: E ...) -> Observable { - return AnonymousObservable { observer in - for element in elements { - observer.on(.Next(element)) - } - - observer.on(.Completed) - return NopDisposable.instance - } +public func sequenceOf(elements: E ..., scheduler: ImmediateSchedulerType? = nil) -> Observable { + return Sequence(elements: elements, scheduler: scheduler) } @@ -85,15 +92,31 @@ extension SequenceType { - returns: The observable sequence whose elements are pulled from the given enumerable sequence. */ @warn_unused_result(message="http://git.io/rxs.uo") + @available(*, deprecated=2.0.0, message="Please use toObservable extension.") public func asObservable() -> Observable { - return AnonymousObservable { observer in - for element in self { - observer.on(.Next(element)) - } - - observer.on(.Completed) - return NopDisposable.instance - } + return Sequence(elements: Array(self), scheduler: nil) + } + + /** + Converts a sequence to an observable sequence. + + - returns: The observable sequence whose elements are pulled from the given enumerable sequence. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func toObservable(scheduler: ImmediateSchedulerType? = nil) -> Observable { + return Sequence(elements: Array(self), scheduler: scheduler) + } +} + +extension Array { + /** + Converts a sequence to an observable sequence. + + - returns: The observable sequence whose elements are pulled from the given enumerable sequence. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func toObservable(scheduler: ImmediateSchedulerType? = nil) -> Observable { + return Sequence(elements: self, scheduler: scheduler) } } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Multiple.swift b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Multiple.swift index d6b4dd6..a425d74 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Multiple.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Multiple.swift @@ -55,7 +55,7 @@ extension ObservableType where E : ObservableConvertibleType { */ @warn_unused_result(message="http://git.io/rxs.uo") public func switchLatest() -> Observable { - return Switch(sources: self.asObservable()) + return Switch(source: asObservable()) } } @@ -71,7 +71,7 @@ extension ObservableType { */ @warn_unused_result(message="http://git.io/rxs.uo") public func concat(second: O) -> Observable { - return [self.asObservable(), second.asObservable()].concat() + return [asObservable(), second.asObservable()].concat() } } @@ -98,7 +98,7 @@ extension ObservableType where E : ObservableConvertibleType { */ @warn_unused_result(message="http://git.io/rxs.uo") public func concat() -> Observable { - return self.merge(maxConcurrent: 1) + return merge(maxConcurrent: 1) } } @@ -109,23 +109,23 @@ extension ObservableType where E : ObservableConvertibleType { /** Merges elements from all observable sequences in the given enumerable sequence into a single observable sequence. - - parameter maxConcurrent: Maximum number of inner observable sequences being subscribed to concurrently. - returns: The observable sequence that merges the elements of the observable sequences. */ @warn_unused_result(message="http://git.io/rxs.uo") public func merge() -> Observable { - return Merge(sources: self.asObservable(), maxConcurrent: 0) + return Merge(source: asObservable()) } /** Merges elements from all inner observable sequences into a single observable sequence, limiting the number of concurrent subscriptions to inner sequences. + - parameter maxConcurrent: Maximum number of inner observable sequences being subscribed to concurrently. - returns: The observable sequence that merges the elements of the inner sequences. */ @warn_unused_result(message="http://git.io/rxs.uo") public func merge(maxConcurrent maxConcurrent: Int) -> Observable { - return Merge(sources: self.asObservable(), maxConcurrent: maxConcurrent) + return MergeLimited(source: asObservable(), maxConcurrent: maxConcurrent) } } @@ -142,7 +142,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func catchError(handler: (ErrorType) throws -> Observable) -> Observable { - return Catch(source: self.asObservable(), handler: handler) + return Catch(source: asObservable(), handler: handler) } /** @@ -154,7 +154,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func catchErrorJustReturn(element: E) -> Observable { - return Catch(source: self.asObservable(), handler: { _ in just(element) }) + return Catch(source: asObservable(), handler: { _ in just(element) }) } } @@ -185,7 +185,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func takeUntil(other: O) -> Observable { - return TakeUntil(source: self.asObservable(), other: other.asObservable()) + return TakeUntil(source: asObservable(), other: other.asObservable()) } } @@ -202,7 +202,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func skipUntil(other: O) -> Observable { - return SkipUntil(source: self.asObservable(), other: other.asObservable()) + return SkipUntil(source: asObservable(), other: other.asObservable()) } } @@ -220,7 +220,7 @@ extension ObservableType { public func amb (right: O2) -> Observable { - return Amb(left: self.asObservable(), right: right.asObservable()) + return Amb(left: asObservable(), right: right.asObservable()) } } @@ -252,7 +252,7 @@ extension ObservableType { - returns: An observable sequence containing the result of combining each element of the self with the latest element from the second source, if any, using the specified result selector function. */ public func withLatestFrom(second: SecondO, resultSelector: (E, SecondO.E) throws -> ResultType) -> Observable { - return WithLatestFrom(first: self.asObservable(), second: second.asObservable(), resultSelector: resultSelector) + return WithLatestFrom(first: asObservable(), second: second.asObservable(), resultSelector: resultSelector) } /** @@ -262,6 +262,6 @@ extension ObservableType { - returns: An observable sequence containing the result of combining each element of the self with the latest element from the second source, if any, using the specified result selector function. */ public func withLatestFrom(second: SecondO) -> Observable { - return WithLatestFrom(first: self.asObservable(), second: second.asObservable(), resultSelector: { $1 }) + return WithLatestFrom(first: asObservable(), second: second.asObservable(), resultSelector: { $1 }) } } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Single.swift b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Single.swift index 4cf01d7..54df907 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Single.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Single.swift @@ -149,6 +149,32 @@ extension ObservableType { -> Observable { return CatchSequence(sources: Repeat(count: maxAttemptCount, repeatedValue: self.asObservable())) } + + /** + Repeats the source observable sequence on error when the notifier emits a next value. + If the source observable errors and the notifier completes, it will complete the source sequence. + + - parameter notificationHandler: A handler that is passed an observable sequence of errors raised by the source observable and returns and observable that either continues, completes or errors. This behavior is then applied to the source observable. + - returns: An observable sequence producing the elements of the given sequence repeatedly until it terminates successfully or is notified to error or complete. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func retryWhen(notificationHandler: Observable -> TriggerObservable) + -> Observable { + return RetryWhenSequence(sources: InfiniteSequence(repeatedValue: self.asObservable()), notificationHandler: notificationHandler) + } + + /** + Repeats the source observable sequence on error when the notifier emits a next value. + If the source observable errors and the notifier completes, it will complete the source sequence. + + - parameter notificationHandler: A handler that is passed an observable sequence of errors raised by the source observable and returns and observable that either continues, completes or errors. This behavior is then applied to the source observable. + - returns: An observable sequence producing the elements of the given sequence repeatedly until it terminates successfully or is notified to error or complete. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func retryWhen(notificationHandler: Observable -> TriggerObservable) + -> Observable { + return RetryWhenSequence(sources: InfiniteSequence(repeatedValue: self.asObservable()), notificationHandler: notificationHandler) + } } // MARK: scan diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Observable+StandardSequenceOperators.swift b/Example/Pods/RxSwift/RxSwift/Observables/Observable+StandardSequenceOperators.swift index 5278c3d..755a200 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Observable+StandardSequenceOperators.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Observable+StandardSequenceOperators.swift @@ -21,7 +21,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func filter(predicate: (E) throws -> Bool) -> Observable { - return Filter(source: self.asObservable(), predicate: predicate) + return Filter(source: asObservable(), predicate: predicate) } } @@ -73,7 +73,7 @@ extension ObservableType { return empty() } else { - return TakeCount(source: self.asObservable(), count: count) + return TakeCount(source: asObservable(), count: count) } } } @@ -93,7 +93,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func takeLast(count: Int) -> Observable { - return TakeLast(source: self.asObservable(), count: count) + return TakeLast(source: asObservable(), count: count) } } @@ -111,7 +111,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func skip(count: Int) -> Observable { - return SkipCount(source: self.asObservable(), count: count) + return SkipCount(source: asObservable(), count: count) } } @@ -127,7 +127,7 @@ extension ObservableType { */ @warn_unused_result(message="http://git.io/rxs.uo") public func skipWhile(predicate: (E) throws -> Bool) -> Observable { - return SkipWhile(source: self.asObservable(), predicate: predicate) + return SkipWhile(source: asObservable(), predicate: predicate) } /** @@ -139,7 +139,7 @@ extension ObservableType { */ @warn_unused_result(message="http://git.io/rxs.uo") public func skipWhileWithIndex(predicate: (E, Int) throws -> Bool) -> Observable { - return SkipWhile(source: self.asObservable(), predicate: predicate) + return SkipWhile(source: asObservable(), predicate: predicate) } } @@ -156,7 +156,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func map(selector: E throws -> R) -> Observable { - return Map(source: self.asObservable(), selector: selector) + return self.asObservable().composeMap(selector) } /** @@ -168,7 +168,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func mapWithIndex(selector: (E, Int) throws -> R) -> Observable { - return Map(source: self.asObservable(), selector: selector) + return MapWithIndex(source: asObservable(), selector: selector) } } @@ -185,7 +185,7 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func flatMap(selector: (E) throws -> O) -> Observable { - return FlatMap(source: self.asObservable(), selector: selector) + return FlatMap(source: asObservable(), selector: selector) } /** @@ -197,11 +197,48 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func flatMapWithIndex(selector: (E, Int) throws -> O) -> Observable { - return FlatMap(source: self.asObservable(), selector: selector) + return FlatMapWithIndex(source: asObservable(), selector: selector) } } -// elementAt +// MARK: flatMapFirst + +extension ObservableType { + + /** + Projects each element of an observable sequence to an observable sequence and merges the resulting observable sequences into one observable sequence. + + - parameter selector: A transform function to apply to each element. + - returns: An observable sequence whose elements are the result of invoking the one-to-many transform function on each element of the input sequence. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func flatMapFirst(selector: (E) throws -> O) + -> Observable { + return FlatMapFirst(source: asObservable(), selector: selector) + } +} + +// MARK: flatMapLatest + +extension ObservableType { + /** + Projects each element of an observable sequence into a new sequence of observable sequences and then + transforms an observable sequence of observable sequences into an observable sequence producing values only from the most recent observable sequence. + + It is a combination of `map` + `switchLatest` operator + + - parameter selector: A transform function to apply to each element. + - returns: An observable sequence whose elements are the result of invoking the transform function on each element of source producing an + Observable of Observable sequences and that at any point in time produces the elements of the most recent inner observable sequence that has been received. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func flatMapLatest(selector: (E) throws -> O) + -> Observable { + return FlatMapLatest(source: asObservable(), selector: selector) + } +} + +// MARK: elementAt extension ObservableType { @@ -214,6 +251,37 @@ extension ObservableType { @warn_unused_result(message="http://git.io/rxs.uo") public func elementAt(index: Int) -> Observable { - return ElementAt(source: self.asObservable(), index: index, throwOnEmpty: true) + return ElementAt(source: asObservable(), index: index, throwOnEmpty: true) + } +} + +// MARK: single + +extension ObservableType { + + /** + The single operator is similar to first, but throws a `RxError.NoElements` or `RxError.MoreThanOneElement` + if the source Observable does not emit exactly one item before successfully completing. + + - returns: An observable sequence that emits a single item or throws an exception if more (or none) of them are emitted. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func single() + -> Observable { + return SingleAsync(source: asObservable()) } + + /** + The single operator is similar to first, but throws a `RxError.NoElements` or `RxError.MoreThanOneElement` + if the source Observable does not emit exactly one item before successfully completing. + + - parameter predicate: A function to test each source element for a condition. + - returns: An observable sequence that emits a single item or throws an exception if more (or none) of them are emitted. + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func single(predicate: (E) throws -> Bool) + -> Observable { + return SingleAsync(source: asObservable(), predicate: predicate) + } + } \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Time.swift b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Time.swift index 6917b79..7b46104 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Observable+Time.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Observable+Time.swift @@ -209,3 +209,22 @@ extension ObservableType { return BufferTimeCount(source: self.asObservable(), timeSpan: timeSpan, count: count, scheduler: scheduler) } } + +// MARK: window + +extension ObservableType { + + /** + Projects each element of an observable sequence into a window that is completed when either it’s full or a given amount of time has elapsed. + + - parameter timeSpan: Maximum time length of a window. + - parameter count: Maximum element count of a window. + - parameter scheduler: Scheduler to run windowing timers on. + - returns: An observable sequence of windows (instances of `Observable`). + */ + @warn_unused_result(message="http://git.io/rxs.uo") + public func window(timeSpan timeSpan: S.TimeInterval, count: Int, scheduler: S) + -> Observable> { + return WindowTimeCount(source: self.asObservable(), timeSpan: timeSpan, count: count, scheduler: scheduler) + } +} diff --git a/Example/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift b/Example/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift index c650b89..6f4a85f 100644 --- a/Example/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift +++ b/Example/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift @@ -8,8 +8,16 @@ import Foundation +enum TailRecursiveSinkCommand { + case MoveNext + case Dispose +} + /// This class is usually used with `Generator` version of the operators. -class TailRecursiveSink : Sink, ObserverType { +class TailRecursiveSink + : Sink + , InvocableWithValueType { + typealias Value = TailRecursiveSinkCommand typealias E = O.E var _generators:[S.Generator] = [] @@ -17,7 +25,7 @@ class TailRecursiveSink>>() override init(observer: O) { super.init(observer: observer) @@ -25,27 +33,24 @@ class TailRecursiveSink Disposable { _generators.append(sources) + + schedule(.MoveNext) - scheduleMoveNext() - - let disposeSinkStack = AnonymousDisposable { - self.schedule { - self.disposePrivate() - } - } - - return StableCompositeDisposable.create(_subscription, disposeSinkStack) + return _subscription } - - func scheduleMoveNext() { - return schedule { - self.moveNext() + + func invoke(command: TailRecursiveSinkCommand) { + switch command { + case .Dispose: + disposeCommand() + case .MoveNext: + moveNextCommand() } } // simple implementation for now - func schedule(action: () -> Void) { - _gate.wait(action) + func schedule(command: TailRecursiveSinkCommand) { + _gate.invoke(InvocableScheduledItem(invocable: self, state: command)) } func done() { @@ -57,13 +62,9 @@ class TailRecursiveSink) { - abstractMethod() - } - // should be done on gate locked - private func moveNext() { + private func moveNextCommand() { var next: Observable? = nil repeat { @@ -101,13 +102,24 @@ class TailRecursiveSink) -> Disposable { + abstractMethod() + } + + func disposeCommand() { _disposed = true _generators.removeAll(keepCapacity: false) } - + + override func dispose() { + super.dispose() + + _subscription.dispose() + + schedule(.Dispose) + } } diff --git a/Example/Pods/RxSwift/RxSwift/Rx.swift b/Example/Pods/RxSwift/RxSwift/Rx.swift index 4621c98..dccb10a 100644 --- a/Example/Pods/RxSwift/RxSwift/Rx.swift +++ b/Example/Pods/RxSwift/RxSwift/Rx.swift @@ -30,7 +30,7 @@ public var resourceCount: Int32 = 0 func incrementChecked(inout i: Int) throws -> Int { if i == Int.max { - throw RxError.OverflowError + throw RxError.Overflow } let result = i i += 1 @@ -39,7 +39,7 @@ func incrementChecked(inout i: Int) throws -> Int { func decrementChecked(inout i: Int) throws -> Int { if i == Int.min { - throw RxError.OverflowError + throw RxError.Overflow } let result = i i -= 1 diff --git a/Example/Pods/RxSwift/RxSwift/RxBox.swift b/Example/Pods/RxSwift/RxSwift/RxBox.swift index b688c1f..7141e9b 100644 --- a/Example/Pods/RxSwift/RxSwift/RxBox.swift +++ b/Example/Pods/RxSwift/RxSwift/RxBox.swift @@ -11,7 +11,7 @@ import Foundation /** Creates immutable reference wrapper for any type. */ -public class RxBox : CustomStringConvertible { +public class RxBox : CustomDebugStringConvertible { /** Wrapped value */ @@ -25,11 +25,13 @@ public class RxBox : CustomStringConvertible { public init (_ value: T) { self.value = value } - +} + +extension RxBox { /** - returns: Box description. */ - public var description: String { + public var debugDescription: String { get { return "Box(\(self.value))" } @@ -39,7 +41,7 @@ public class RxBox : CustomStringConvertible { /** Creates mutable reference wrapper for any type. */ -public class RxMutableBox : CustomStringConvertible { +public class RxMutableBox : CustomDebugStringConvertible { /** Wrapped value */ @@ -53,11 +55,13 @@ public class RxMutableBox : CustomStringConvertible { public init (_ value: T) { self.value = value } - +} + +extension RxMutableBox { /** - returns: Box description. */ - public var description: String { + public var debugDescription: String { get { return "MutatingBox(\(self.value))" } diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/AnonymousInvocable.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/AnonymousInvocable.swift new file mode 100644 index 0000000..8525db4 --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/AnonymousInvocable.swift @@ -0,0 +1,21 @@ +// +// AnonymousInvocable.swift +// Rx +// +// Created by Krunoslav Zaher on 11/7/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +struct AnonymousInvocable : InvocableType { + private let _action: () -> () + + init(_ action: () -> ()) { + _action = action + } + + func invoke() { + _action() + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift index 5c5e0b2..a880f00 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift @@ -9,7 +9,7 @@ import Foundation /** -Abstracts the work that needs to be peformed on a specific `dispatch_queue_t`. You can also pass a serial dispatch queue, it shouldn't cause any problems. +Abstracts the work that needs to be performed on a specific `dispatch_queue_t`. You can also pass a serial dispatch queue, it shouldn't cause any problems. This scheduler is suitable when some work needs to be performed in background. */ diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift index ada3b89..e2d5b2b 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift @@ -136,7 +136,7 @@ public class CurrentThreadScheduler : ImmediateSchedulerType { CurrentThreadScheduler.queue = queue } - let scheduledItem = ScheduledItem(action: action, state: state, time: 0) + let scheduledItem = ScheduledItem(action: action, state: state) queue.value.enqueue(scheduledItem) return scheduledItem } diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/ImmediateScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/ImmediateScheduler.swift index 53ef92f..fc54fd5 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/ImmediateScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/ImmediateScheduler.swift @@ -13,7 +13,7 @@ Represents an object that schedules units of work to run immediately on the curr */ private class ImmediateScheduler : ImmediateSchedulerType { - private let _asyncLock = AsyncLock() + private let _asyncLock = AsyncLock() /** Schedules an action to be executed immediatelly. @@ -27,12 +27,12 @@ private class ImmediateScheduler : ImmediateSchedulerType { */ func schedule(state: StateType, action: (StateType) -> Disposable) -> Disposable { let disposable = SingleAssignmentDisposable() - _asyncLock.wait { + _asyncLock.invoke(AnonymousInvocable { if disposable.disposed { return } disposable.disposable = action(state) - } + }) return disposable } diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/InvocableScheduledItem.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/InvocableScheduledItem.swift new file mode 100644 index 0000000..1a4e3aa --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/InvocableScheduledItem.swift @@ -0,0 +1,24 @@ +// +// InvocableScheduledItem.swift +// Rx +// +// Created by Krunoslav Zaher on 11/7/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +struct InvocableScheduledItem : InvocableType { + + let _invocable: I + let _state: I.Value + + init(invocable: I, state: I.Value) { + _invocable = invocable + _state = state + } + + func invoke() { + _invocable.invoke(_state) + } +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/InvocableType.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/InvocableType.swift new file mode 100644 index 0000000..0f1bcee --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/InvocableType.swift @@ -0,0 +1,19 @@ +// +// InvocableType.swift +// Rx +// +// Created by Krunoslav Zaher on 11/7/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +protocol InvocableType { + func invoke() +} + +protocol InvocableWithValueType { + typealias Value + + func invoke(value: Value) +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift index a2069d0..5ed07c7 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift @@ -9,7 +9,7 @@ import Foundation /** -Abstracts the work that needs to be peformed on a specific `NSOperationQueue`. +Abstracts the work that needs to be performed on a specific `NSOperationQueue`. This scheduler is suitable for cases when there is some bigger chunk of work that needs to be performed in background and you want to fine tune concurrent processing using `maxConcurrentOperationCount`. */ diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItem.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItem.swift index e4b7d45..d29bef4 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItem.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItem.swift @@ -8,40 +8,32 @@ import Foundation -protocol ScheduledItemType : Cancelable { - var time: Int { - get - } - - func invoke() -} - -class ScheduledItem : ScheduledItemType { +struct ScheduledItem + : ScheduledItemType + , InvocableType { typealias Action = T -> Disposable - let action: Action - let state: T - let time: Int - + private let _action: Action + private let _state: T + + private let _disposable = SingleAssignmentDisposable() + var disposed: Bool { get { - return disposable.disposed + return _disposable.disposed } } - var disposable = SingleAssignmentDisposable() - - init(action: Action, state: T, time: Int) { - self.action = action - self.state = state - self.time = time + init(action: Action, state: T) { + _action = action + _state = state } func invoke() { - self.disposable.disposable = action(state) + _disposable.disposable = _action(_state) } func dispose() { - self.disposable.dispose() + _disposable.dispose() } -} +} \ No newline at end of file diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItemType.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItemType.swift new file mode 100644 index 0000000..2a1eca2 --- /dev/null +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/ScheduledItemType.swift @@ -0,0 +1,15 @@ +// +// ScheduledItemType.swift +// Rx +// +// Created by Krunoslav Zaher on 11/7/15. +// Copyright © 2015 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +protocol ScheduledItemType + : Cancelable + , InvocableType { + func invoke() +} diff --git a/Example/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift b/Example/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift index 4059ce8..7c6284f 100644 --- a/Example/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift +++ b/Example/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift @@ -17,9 +17,6 @@ public final class BehaviorSubject : Observable , SubjectType , ObserverType - , LockOwnerType - , SynchronizedOnType - , SynchronizedSubscribeType , SynchronizedUnsubscribeType , Disposable { public typealias SubjectObserverType = BehaviorSubject @@ -57,7 +54,7 @@ public final class BehaviorSubject public func value() throws -> Element { _lock.lock(); defer { _lock.unlock() } // { if _disposed { - throw RxError.DisposedError + throw RxError.Disposed(object: self) } if let error = _stoppedEvent?.error { @@ -76,7 +73,8 @@ public final class BehaviorSubject - parameter event: Event to send to the observers. */ public func on(event: Event) { - synchronizedOn(event) + _lock.lock(); defer { _lock.unlock() } + _synchronized_on(event) } func _synchronized_on(event: Event) { @@ -101,12 +99,13 @@ public final class BehaviorSubject - returns: Disposable object that can be used to unsubscribe the observer from the subject. */ public override func subscribe(observer: O) -> Disposable { - return synchronizedSubscribe(observer) + _lock.lock(); defer { _lock.unlock() } + return _synchronized_subscribe(observer) } func _synchronized_subscribe(observer: O) -> Disposable { if _disposed { - observer.on(.Error(RxError.DisposedError)) + observer.on(.Error(RxError.Disposed(object: self))) return NopDisposable.instance } @@ -121,6 +120,11 @@ public final class BehaviorSubject return SubscriptionDisposable(owner: self, key: key) } + func synchronizedUnsubscribe(disposeKey: DisposeKey) { + _lock.lock(); defer { _lock.unlock() } + _synchronized_unsubscribe(disposeKey) + } + func _synchronized_unsubscribe(disposeKey: DisposeKey) { if _disposed { return diff --git a/Example/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift b/Example/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift index fd1d571..2ed8f70 100644 --- a/Example/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift +++ b/Example/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift @@ -13,25 +13,22 @@ Represents an object that is both an observable sequence as well as an observer. Each notification is broadcasted to all subscribed observers. */ -public class PublishSubject +final public class PublishSubject : Observable , SubjectType , Cancelable , ObserverType - , LockOwnerType - , SynchronizedOnType - , SynchronizedSubscribeType - , SynchronizedUnsubscribeType - , SynchronizedDisposeType { + , SynchronizedUnsubscribeType { public typealias SubjectObserverType = PublishSubject typealias DisposeKey = Bag>.KeyType - let _lock = NSRecursiveLock() + private var _lock = NSRecursiveLock() // state private var _disposed = false private var _observers = Bag>() + private var _stopped = false private var _stoppedEvent = nil as Event? /** @@ -56,13 +53,14 @@ public class PublishSubject - parameter event: Event to send to the observers. */ public func on(event: Event) { - synchronizedOn(event) + _lock.lock(); defer { _lock.unlock() } + _synchronized_on(event) } func _synchronized_on(event: Event) { switch event { case .Next(_): - if _disposed || _stoppedEvent != nil { + if _disposed || _stopped { return } @@ -70,6 +68,7 @@ public class PublishSubject case .Completed, .Error: if _stoppedEvent == nil { _stoppedEvent = event + _stopped = true _observers.on(event) _observers.removeAll() } @@ -83,7 +82,8 @@ public class PublishSubject - returns: Disposable object that can be used to unsubscribe the observer from the subject. */ public override func subscribe(observer: O) -> Disposable { - return synchronizedSubscribe(observer) + _lock.lock(); defer { _lock.unlock() } + return _synchronized_subscribe(observer) } func _synchronized_subscribe(observer: O) -> Disposable { @@ -93,7 +93,7 @@ public class PublishSubject } if _disposed { - observer.on(.Error(RxError.DisposedError)) + observer.on(.Error(RxError.Disposed(object: self))) return NopDisposable.instance } @@ -101,6 +101,10 @@ public class PublishSubject return SubscriptionDisposable(owner: self, key: key) } + func synchronizedUnsubscribe(disposeKey: DisposeKey) { + _lock.lock(); defer { _lock.unlock() } + _synchronized_unsubscribe(disposeKey) + } func _synchronized_unsubscribe(disposeKey: DisposeKey) { _ = _observers.removeKey(disposeKey) @@ -117,10 +121,11 @@ public class PublishSubject Unsubscribe all observers and release resources. */ public func dispose() { - synchronizedDispose() + _lock.lock(); defer { _lock.unlock() } + _synchronized_dispose() } - func _synchronized_dispose() { + final func _synchronized_dispose() { _disposed = true _observers.removeAll() _stoppedEvent = nil diff --git a/Example/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift b/Example/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift index 3ad58d4..818521e 100644 --- a/Example/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift +++ b/Example/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift @@ -66,23 +66,15 @@ public class ReplaySubject class ReplayBufferBase : ReplaySubject - , LockOwnerType - , SynchronizedOnType - , SynchronizedSubscribeType - , SynchronizedUnsubscribeType - , SynchronizedDisposeType { - - let _lock = NSRecursiveLock() + , SynchronizedUnsubscribeType { + private var _lock = NSRecursiveLock() + // state private var _disposed = false private var _stoppedEvent = nil as Event? private var _observers = Bag>() - override init() { - - } - func trim() { abstractMethod() } @@ -96,7 +88,8 @@ class ReplayBufferBase } override func on(event: Event) { - synchronizedOn(event) + _lock.lock(); defer { _lock.unlock() } + _synchronized_on(event) } func _synchronized_on(event: Event) { @@ -122,12 +115,13 @@ class ReplayBufferBase } override func subscribe(observer: O) -> Disposable { - return synchronizedSubscribe(observer) + _lock.lock(); defer { _lock.unlock() } + return _synchronized_subscribe(observer) } func _synchronized_subscribe(observer: O) -> Disposable { if _disposed { - observer.on(.Error(RxError.DisposedError)) + observer.on(.Error(RxError.Disposed(object: self))) return NopDisposable.instance } @@ -144,6 +138,11 @@ class ReplayBufferBase } } + func synchronizedUnsubscribe(disposeKey: DisposeKey) { + _lock.lock(); defer { _lock.unlock() } + _synchronized_unsubscribe(disposeKey) + } + func _synchronized_unsubscribe(disposeKey: DisposeKey) { if _disposed { return @@ -158,6 +157,11 @@ class ReplayBufferBase synchronizedDispose() } + func synchronizedDispose() { + _lock.lock(); defer { _lock.unlock() } + _synchronized_dispose() + } + func _synchronized_dispose() { _disposed = true _stoppedEvent = nil @@ -165,7 +169,7 @@ class ReplayBufferBase } } -class ReplayOne : ReplayBufferBase { +final class ReplayOne : ReplayBufferBase { private var _value: Element? override init() { @@ -215,7 +219,7 @@ class ReplayManyBase : ReplayBufferBase { } } -class ReplayMany : ReplayManyBase { +final class ReplayMany : ReplayManyBase { private let _bufferSize: Int init(bufferSize: Int) { @@ -231,7 +235,7 @@ class ReplayMany : ReplayManyBase { } } -class ReplayAll : ReplayManyBase { +final class ReplayAll : ReplayManyBase { init() { super.init(queueSize: 0) } diff --git a/Example/Pods/Target Support Files/Nimble/Info.plist b/Example/Pods/Target Support Files/Nimble/Info.plist index dc92af9..0abb05e 100644 --- a/Example/Pods/Target Support Files/Nimble/Info.plist +++ b/Example/Pods/Target Support Files/Nimble/Info.plist @@ -2,25 +2,25 @@ - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 3.0.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 3.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + diff --git a/Example/Pods/Target Support Files/Pods/Info.plist b/Example/Pods/Target Support Files/Pods/Info.plist index 6974542..11db4b7 100644 --- a/Example/Pods/Target Support Files/Pods/Info.plist +++ b/Example/Pods/Target Support Files/Pods/Info.plist @@ -2,25 +2,25 @@ - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + diff --git a/Example/Pods/Target Support Files/Quick/Info.plist b/Example/Pods/Target Support Files/Quick/Info.plist index d630b1c..fda5845 100644 --- a/Example/Pods/Target Support Files/Quick/Info.plist +++ b/Example/Pods/Target Support Files/Quick/Info.plist @@ -2,25 +2,25 @@ - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.8.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 0.8.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + diff --git a/Example/Pods/Target Support Files/RxCocoa/Info.plist b/Example/Pods/Target Support Files/RxCocoa/Info.plist index 931acc2..381f913 100644 --- a/Example/Pods/Target Support Files/RxCocoa/Info.plist +++ b/Example/Pods/Target Support Files/RxCocoa/Info.plist @@ -2,25 +2,25 @@ - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 2.0.0-beta.2 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 2.0.0-beta.3 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + diff --git a/Example/Pods/Target Support Files/RxSwift/Info.plist b/Example/Pods/Target Support Files/RxSwift/Info.plist index 931acc2..381f913 100644 --- a/Example/Pods/Target Support Files/RxSwift/Info.plist +++ b/Example/Pods/Target Support Files/RxSwift/Info.plist @@ -2,25 +2,25 @@ - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 2.0.0-beta.2 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 2.0.0-beta.3 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + diff --git a/Example/Pods/Target Support Files/RxViewModel/Info.plist b/Example/Pods/Target Support Files/RxViewModel/Info.plist index a98a41a..20aa983 100644 --- a/Example/Pods/Target Support Files/RxViewModel/Info.plist +++ b/Example/Pods/Target Support Files/RxViewModel/Info.plist @@ -2,25 +2,25 @@ - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 2.3.1 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 2.3.1 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + diff --git a/Example/Tests/Tests.swift b/Example/Tests/Tests.swift index 1b6d3f8..d9811cb 100644 --- a/Example/Tests/Tests.swift +++ b/Example/Tests/Tests.swift @@ -140,7 +140,7 @@ class RxViewModelSpec: QuickSpec { expect(completed).to(beFalsy()) expectedValues = ["0", "1", "3"] - expect(values).toEventually(equal(expectedValues), timeout: 2.2, pollInterval: 2.1) + expect(values).toEventually(equal(expectedValues), timeout: 2.2, pollInterval: 2.0) expect(completed).to(beFalsy()) // After reactivating, we should still get this event. diff --git a/Gemfile.lock b/Gemfile.lock index ef1b954..24c1d3f 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ GEM remote: https://rubygems.org/ specs: - activesupport (4.2.4) + activesupport (4.2.5) i18n (~> 0.7) json (~> 1.7, >= 1.7.7) minitest (~> 5.1) @@ -59,20 +59,20 @@ GEM github_changelog_generator (1.9.0) colorize (~> 0.7) github_api (~> 0.12) - hashie (3.4.2) + hashie (3.4.3) i18n (0.7.0) json (1.8.3) - jwt (1.5.1) + jwt (1.5.2) label (1.0.0) mini_portile (0.6.2) - minitest (5.8.1) + minitest (5.8.2) molinillo (0.4.0) multi_json (1.11.2) multi_xml (0.5.5) multipart-post (2.0.0) nap (1.0.0) netrc (0.7.8) - nokogiri (1.6.6.2) + nokogiri (1.6.6.3) mini_portile (~> 0.6.0) oauth2 (1.0.0) faraday (>= 0.8, < 0.10) diff --git a/Pod/Classes/RxViewModel.swift b/Pod/Classes/RxViewModel.swift index e318dd7..5723213 100644 --- a/Pod/Classes/RxViewModel.swift +++ b/Pod/Classes/RxViewModel.swift @@ -55,7 +55,7 @@ public class RxViewModel: NSObject { public override init() { super.init() - let observable = self.rx_observe("_active") as Observable + let observable = self.rx_observe(Bool.self, "_active") as Observable /// Start observing changes on our underlying `_active` property. observable.subscribeNext { active in /// If we have an active subject and the flag is true send ourselves @@ -123,7 +123,7 @@ public class RxViewModel: NSObject { an error at any point, the returned signal will error out as well. */ public func forwardSignalWhileActive(observable: Observable) -> Observable { - let signal = self.rx_observe("_active", options: [.Initial, .New]) as Observable + let signal = self.rx_observe(Bool.self, "_active", options: [.Initial, .New]) as Observable return create { (o: AnyObserver) -> Disposable in let disposable = CompositeDisposable() @@ -177,7 +177,7 @@ public class RxViewModel: NSObject { // observable.replay(1) let result = ReplaySubject.create(bufferSize: 1) - let activeSignal = (self.rx_observe("_active", options: [.Initial, .New]) as Observable).takeUntil(create { (o: AnyObserver) -> Disposable in + let activeSignal = (self.rx_observe(Bool.self, "_active", options: [.Initial, .New]) as Observable).takeUntil(create { (o: AnyObserver) -> Disposable in observable.subscribeCompleted { defer { result.dispose() } diff --git a/RxViewModel.podspec b/RxViewModel.podspec index 6924705..f0729a0 100644 --- a/RxViewModel.podspec +++ b/RxViewModel.podspec @@ -25,7 +25,7 @@ Long story short: a blatant «imitation» of `ReactiveViewModel `using `RxCocoa` s.requires_arc = true s.source_files = 'Pod/Classes/**/*' - s.dependency 'RxCocoa', '~> 2.0.0-beta.2' - s.dependency 'RxSwift', '~> 2.0.0-beta.2' + s.dependency 'RxCocoa', '~> 2.0.0-beta.3' + s.dependency 'RxSwift', '~> 2.0.0-beta.3' s.frameworks = 'Foundation' end From 00f1faec06381d5890285eb3ce3f502af178f586 Mon Sep 17 00:00:00 2001 From: Esteban Torres Date: Tue, 17 Nov 2015 16:03:57 -0600 Subject: [PATCH 2/3] Bumped pod version --- RxViewModel.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RxViewModel.podspec b/RxViewModel.podspec index f0729a0..944761f 100644 --- a/RxViewModel.podspec +++ b/RxViewModel.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |s| s.name = "RxViewModel" - s.version = "2.3.1" + s.version = "2.4.0" s.summary = "`RxViewModel` is the marriage between `MVVM` and `Rx` extensions. A blatant «imitation» of `ReactiveViewModel` using `RxCocoa`." s.description = <<-DESC `RxViewModel` is the marriage between `MVVM` and `Rx` extensions From 560fda84c1214ba1d0238cf35154833152d6d610 Mon Sep 17 00:00:00 2001 From: Esteban Torres Date: Wed, 18 Nov 2015 19:34:09 -0600 Subject: [PATCH 3/3] Changes before transitioning ownershipg to the RxSwiftCommunity --- README.md | 4 ++-- RxViewModel.podspec | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 9341fa2..e9c2fe6 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # RxViewModel -[![Circle CI](https://circleci.com/gh/esttorhe/RxViewModel/tree/master.svg?style=svg)](https://circleci.com/gh/esttorhe/RxViewModel/tree/master) +[![Circle CI](https://circleci.com/gh/RxSwiftCommunity/RxViewModel/tree/master.svg?style=svg)](https://circleci.com/gh/RxSwiftCommunity/RxViewModel/tree/master) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Version](https://img.shields.io/cocoapods/v/RxViewModel.svg?style=flat)](http://cocoapods.org/pods/RxViewModel) [![License](https://img.shields.io/cocoapods/l/RxViewModel.svg?style=flat)](http://cocoapods.org/pods/RxViewModel) @@ -57,7 +57,7 @@ pod install Just add the following to your [`Cartfile`](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfile) ```swift -github "esttorhe/RxViewModel", ~> 2.3.1 +github "esttorhe/RxViewModel" ``` And run: diff --git a/RxViewModel.podspec b/RxViewModel.podspec index 944761f..1acb8da 100644 --- a/RxViewModel.podspec +++ b/RxViewModel.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |s| s.name = "RxViewModel" - s.version = "2.4.0" + s.version = "2.4.1" s.summary = "`RxViewModel` is the marriage between `MVVM` and `Rx` extensions. A blatant «imitation» of `ReactiveViewModel` using `RxCocoa`." s.description = <<-DESC `RxViewModel` is the marriage between `MVVM` and `Rx` extensions @@ -12,10 +12,10 @@ Given the fact that there's no `Swift` branch and the lack of interest in the pr Long story short: a blatant «imitation» of `ReactiveViewModel `using `RxCocoa`. DESC - s.homepage = "https://github.com/esttorhe/RxViewModel" + s.homepage = "https://github.com/RxSwiftCommunity/RxViewModel" s.license = 'MIT' s.author = { "esttorhe" => "me@estebantorr.es" } - s.source = { :git => "https://github.com/esttorhe/RxViewModel.git", :tag => s.version.to_s } + s.source = { :git => "https://github.com/RxSwiftCommunity/RxViewModel.git", :tag => s.version.to_s } s.social_media_url = 'https://twitter.com/esttorhe' s.ios.deployment_target = '8.0'