From 04ac5c1c309d968f0709d0a98192b1861519713c Mon Sep 17 00:00:00 2001 From: Diogo Tridapalli Date: Wed, 17 Oct 2018 15:39:55 -0300 Subject: [PATCH] Swift 4.2 and Xcode 10 support (#38) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update Pods * Update Carthage * Update to Swift 4.2 * Update podspec * Update podspec on example * Update circleci config * Disable code sign for tests * Run and cache CocoaPods on CI * Remove unnecessary “sdk” * Save Xcode logs and test results * Clean before build * Remove unnecessary Pods file cache * Move pipefail to shell definition * Remove pod install from CI * Temporary disable cache * Update artefacts path * Ignore just Carthage in root * Reenable cache * Update readme --- .circleci/config.yml | 15 +- .gitignore | 2 +- Cartfile | 2 +- Cartfile.resolved | 2 +- Example/Podfile | 8 + Example/Podfile.lock | 26 +- .../Local Podspecs/RxMKMapView.podspec.json | 9 +- Example/Pods/Manifest.lock | 26 +- .../CwlCatchException/CwlCatchException.swift | 8 +- .../CwlCatchException.m | 0 .../include/CwlCatchException.h | 1 - .../CwlMachBadInstructionHandler.m | 0 .../include/CwlMachBadInstructionHandler.h | 2 +- .../mach_excServer.c | 0 .../mach_excServer.h | 0 .../CwlBadInstructionException.swift | 0 .../CwlCatchBadInstruction.swift | 46 +- .../CwlDarwinDefinitions.swift | 0 .../Mach/CwlPreconditionTesting.h | 2 + Example/Pods/Nimble/README.md | 84 +- .../Nimble/Adapters/AssertionRecorder.swift | 4 +- .../Nimble/Adapters/NMBExpectation.swift | 6 +- .../Nimble/Adapters/NMBObjCMatcher.swift | 36 +- .../Nimble/Adapters/NimbleXCTestHandler.swift | 13 +- .../Pods/Nimble/Sources/Nimble/DSL+Wait.swift | 2 +- .../Nimble/Sources/Nimble/Expectation.swift | 35 +- .../Sources/Nimble/ExpectationMessage.swift | 4 +- .../Sources/Nimble/Matchers/AllPass.swift | 6 +- ...{AsyncMatcherWrapper.swift => Async.swift} | 99 +- .../Sources/Nimble/Matchers/BeAKindOf.swift | 4 +- .../Nimble/Matchers/BeAnInstanceOf.swift | 4 +- .../Sources/Nimble/Matchers/BeCloseTo.swift | 20 +- .../Sources/Nimble/Matchers/BeEmpty.swift | 6 +- .../Nimble/Matchers/BeGreaterThan.swift | 10 +- .../Matchers/BeGreaterThanOrEqualTo.swift | 20 +- .../Nimble/Matchers/BeIdenticalTo.swift | 21 +- .../Sources/Nimble/Matchers/BeLessThan.swift | 20 +- .../Nimble/Matchers/BeLessThanOrEqual.swift | 21 +- .../Sources/Nimble/Matchers/BeLogical.swift | 8 +- .../Sources/Nimble/Matchers/BeNil.swift | 2 +- .../Sources/Nimble/Matchers/BeVoid.swift | 5 +- .../Sources/Nimble/Matchers/BeginWith.swift | 6 +- .../Sources/Nimble/Matchers/Contain.swift | 48 +- .../Matchers/ContainElementSatisfying.swift | 22 +- .../Sources/Nimble/Matchers/EndWith.swift | 38 +- .../Sources/Nimble/Matchers/Equal.swift | 4 +- .../Sources/Nimble/Matchers/HaveCount.swift | 40 +- .../Sources/Nimble/Matchers/Match.swift | 15 +- .../Sources/Nimble/Matchers/MatchError.swift | 46 +- .../Nimble/Matchers/MatcherProtocols.swift | 30 +- .../Nimble/Matchers/PostNotification.swift | 38 +- .../Sources/Nimble/Matchers/Predicate.swift | 24 +- .../Nimble/Matchers/RaisesException.swift | 30 +- .../Nimble/Matchers/SatisfyAllOf.swift | 76 + .../Nimble/Matchers/SatisfyAnyOf.swift | 37 +- .../Nimble/Matchers/ThrowAssertion.swift | 28 +- .../Sources/Nimble/Matchers/ThrowError.swift | 84 +- Example/Pods/Nimble/Sources/Nimble/Nimble.h | 6 +- .../Nimble/Utils/{Async.swift => Await.swift} | 4 + .../Sources/Nimble/Utils/Stringers.swift | 12 +- .../NimbleObjectiveC/CurrentTestCaseTracker.h | 9 - .../Nimble/Sources/NimbleObjectiveC/DSL.h | 6 + .../Nimble/Sources/NimbleObjectiveC/DSL.m | 17 +- .../NimbleObjectiveC/NMBExceptionCapture.m | 2 +- .../Sources/NimbleObjectiveC/NMBStringify.m | 5 + .../XCTestObservationCenter+Register.m | 7 +- Example/Pods/Pods.xcodeproj/project.pbxproj | 4136 +++++++++-------- .../Quick/Sources/Quick/DSL/World+DSL.swift | 13 +- .../Pods/Quick/Sources/Quick/Example.swift | 3 + .../NSString+C99ExtendedIdentifier.swift | 22 +- Example/Pods/Quick/Sources/Quick/World.swift | 2 +- .../Configuration/QuickConfiguration.m | 7 +- .../Sources/QuickObjectiveC/DSL/QCKDSL.m | 8 +- .../Sources/QuickObjectiveC/DSL/World+DSL.h | 20 - .../Quick/Sources/QuickObjectiveC/QuickSpec.h | 6 + .../Quick/Sources/QuickObjectiveC/QuickSpec.m | 14 +- .../Quick/Sources/QuickObjectiveC/World.h | 18 - .../XCTestSuite+QuickTestSuiteBuilder.m | 5 + .../RxCocoa/Platform/DataStructures/Bag.swift | 10 +- .../RxCocoa/Platform/DeprecationWarner.swift | 43 + Example/Pods/RxCocoa/README.md | 44 +- .../RxCocoa/Common/ControlTarget.swift | 9 +- .../RxCocoa/Common/DelegateProxy.swift | 55 +- .../RxCocoa/Common/DelegateProxyType.swift | 88 +- .../RxCocoa/Common/KeyPathBinder.swift | 36 + .../Common/NSLayoutConstraint+Rx.swift | 6 +- .../RxCocoa/Common/Observable+Bind.swift | 88 +- .../RxCocoaObjCRuntimeError+Extensions.swift | 6 +- .../RxCocoa/RxCocoa/Common/RxTarget.swift | 2 - .../RxCocoa/RxCocoa/Common/TextInput.swift | 4 +- Example/Pods/RxCocoa/RxCocoa/Deprecated.swift | 97 +- .../KVORepresentable+CoreGraphics.swift | 22 +- .../NSObject+Rx+KVORepresentable.swift | 28 +- .../NSObject+Rx+RawRepresentable.swift | 5 +- .../RxCocoa/Foundation/NSObject+Rx.swift | 8 +- .../Foundation/NotificationCenter+Rx.swift | 2 - .../RxCocoa/Foundation/URLSession+Rx.swift | 2 - Example/Pods/RxCocoa/RxCocoa/RxCocoa.swift | 7 +- .../RxCocoa/Traits/BehaviorRelay.swift | 8 +- .../RxCocoa/RxCocoa/Traits/ControlEvent.swift | 4 +- .../RxCocoa/Traits/ControlProperty.swift | 8 +- .../Traits/Driver/BehaviorRelay+Driver.swift | 4 +- .../Traits/Driver/ControlEvent+Driver.swift | 2 - .../Driver/ControlProperty+Driver.swift | 2 - .../Traits/Driver/Driver+Subscription.swift | 12 +- .../RxCocoa/Traits/Driver/Driver.swift | 5 +- .../ObservableConvertibleType+Driver.swift | 2 - .../RxCocoa/RxCocoa/Traits/PublishRelay.swift | 6 +- ...rvableConvertibleType+SharedSequence.swift | 57 + .../SharedSequence+Operators+arity.swift | 2 - .../SharedSequence+Operators.swift | 2 - .../SharedSequence/SharedSequence.swift | 4 +- .../Traits/Signal/ControlEvent+Signal.swift | 25 + .../ObservableConvertibleType+Signal.swift | 4 +- .../Traits/Signal/PublishRelay+Signal.swift | 4 +- .../Traits/Signal/Signal+Subscription.swift | 34 +- .../RxCocoa/Traits/Signal/Signal.swift | 4 +- ...ollectionViewReactiveArrayDataSource.swift | 2 - .../iOS/DataSources/RxPickerViewAdapter.swift | 7 +- .../RxTableViewReactiveArrayDataSource.swift | 2 - .../RxCocoa/iOS/NSTextStorage+Rx.swift | 6 +- .../RxCollectionViewDataSourceType.swift | 2 - .../RxPickerViewDataSourceType.swift | 6 +- .../Protocols/RxTableViewDataSourceType.swift | 2 - ...ectionViewDataSourcePrefetchingProxy.swift | 92 + .../RxCollectionViewDataSourceProxy.swift | 7 +- .../RxCollectionViewDelegateProxy.swift | 2 - .../RxNavigationControllerDelegateProxy.swift | 4 +- .../Proxies/RxPickerViewDataSourceProxy.swift | 6 +- .../Proxies/RxPickerViewDelegateProxy.swift | 2 - .../Proxies/RxScrollViewDelegateProxy.swift | 2 - .../Proxies/RxSearchBarDelegateProxy.swift | 2 - .../RxSearchControllerDelegateProxy.swift | 8 +- .../RxTabBarControllerDelegateProxy.swift | 4 +- .../iOS/Proxies/RxTabBarDelegateProxy.swift | 4 +- ...xTableViewDataSourcePrefetchingProxy.swift | 93 + .../Proxies/RxTableViewDataSourceProxy.swift | 6 +- .../Proxies/RxTableViewDelegateProxy.swift | 2 - .../Proxies/RxTextStorageDelegateProxy.swift | 6 +- .../iOS/Proxies/RxTextViewDelegateProxy.swift | 2 - .../iOS/Proxies/RxWebViewDelegateProxy.swift | 4 +- .../iOS/UIActivityIndicatorView+Rx.swift | 4 +- .../RxCocoa/iOS/UIAlertAction+Rx.swift | 3 - .../RxCocoa/iOS/UIApplication+Rx.swift | 4 +- .../RxCocoa/iOS/UIBarButtonItem+Rx.swift | 2 - .../RxCocoa/RxCocoa/iOS/UIButton+Rx.swift | 18 +- .../RxCocoa/iOS/UICollectionView+Rx.swift | 54 +- .../RxCocoa/RxCocoa/iOS/UIControl+Rx.swift | 10 +- .../RxCocoa/RxCocoa/iOS/UIDatePicker+Rx.swift | 2 - .../RxCocoa/iOS/UIGestureRecognizer+Rx.swift | 3 - .../RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift | 2 - .../Pods/RxCocoa/RxCocoa/iOS/UILabel+Rx.swift | 2 - .../iOS/UINavigationController+Rx.swift | 2 - .../RxCocoa/iOS/UINavigationItem+Rx.swift | 2 - .../RxCocoa/iOS/UIPageControl+Rx.swift | 4 +- .../RxCocoa/RxCocoa/iOS/UIPickerView+Rx.swift | 2 - .../RxCocoa/iOS/UIProgressView+Rx.swift | 2 - .../RxCocoa/iOS/UIRefreshControl+Rx.swift | 4 +- .../RxCocoa/RxCocoa/iOS/UIScrollView+Rx.swift | 5 +- .../RxCocoa/RxCocoa/iOS/UISearchBar+Rx.swift | 2 - .../RxCocoa/iOS/UISearchController+Rx.swift | 2 - .../RxCocoa/iOS/UISegmentedControl+Rx.swift | 24 +- .../RxCocoa/RxCocoa/iOS/UISlider+Rx.swift | 2 - .../RxCocoa/RxCocoa/iOS/UIStepper+Rx.swift | 9 +- .../RxCocoa/RxCocoa/iOS/UISwitch+Rx.swift | 3 - .../RxCocoa/RxCocoa/iOS/UITabBar+Rx.swift | 4 +- .../RxCocoa/iOS/UITabBarController+Rx.swift | 4 +- .../RxCocoa/RxCocoa/iOS/UITabBarItem+Rx.swift | 6 +- .../RxCocoa/RxCocoa/iOS/UITableView+Rx.swift | 81 +- .../RxCocoa/RxCocoa/iOS/UITextField+Rx.swift | 2 - .../RxCocoa/RxCocoa/iOS/UITextView+Rx.swift | 2 - .../Pods/RxCocoa/RxCocoa/iOS/UIView+Rx.swift | 2 - .../RxCocoa/iOS/UIViewController+Rx.swift | 6 +- .../RxCocoa/RxCocoa/iOS/UIWebView+Rx.swift | 7 +- .../RxSwift/Platform/DataStructures/Bag.swift | 10 +- .../RxSwift/Platform/DeprecationWarner.swift | 43 + Example/Pods/RxSwift/README.md | 44 +- Example/Pods/RxSwift/RxSwift/Deprecated.swift | 17 +- Example/Pods/RxSwift/RxSwift/Disposable.swift | 2 +- .../RxSwift/Disposables/DisposeBag.swift | 36 +- .../Disposables/SerialDisposable.swift | 2 +- Example/Pods/RxSwift/RxSwift/Event.swift | 8 +- .../RxSwift/RxSwift/Extensions/Bag+Rx.swift | 24 +- .../RxSwift/ObservableType+Extensions.swift | 120 +- .../RxSwift/RxSwift/Observables/Delay.swift | 14 +- .../RxSwift/RxSwift/Observables/Filter.swift | 2 +- .../RxSwift/RxSwift/Observables/Just.swift | 2 +- .../RxSwift/RxSwift/Observables/Merge.swift | 2 - .../RxSwift/Observables/Optional.swift | 2 +- .../RxSwift/RxSwift/Observables/Scan.swift | 25 +- .../Observables/ShareReplayScope.swift | 2 +- Example/Pods/RxSwift/RxSwift/Rx.swift | 11 +- .../ConcurrentDispatchQueueScheduler.swift | 2 + .../Schedulers/CurrentThreadScheduler.swift | 4 + .../HistoricalSchedulerTimeConverter.swift | 2 +- .../RxSwift/Schedulers/MainScheduler.swift | 2 +- .../Schedulers/OperationQueueScheduler.swift | 8 +- .../SerialDispatchQueueScheduler.swift | 9 + .../Schedulers/VirtualTimeConverterType.swift | 6 +- .../RxSwift/RxSwift/Traits/Completable.swift | 16 +- .../Pods/RxSwift/RxSwift/Traits/Maybe.swift | 67 +- .../ObservableType+PrimitiveSequence.swift | 2 +- .../RxSwift/Traits/PrimitiveSequence.swift | 6 +- .../Pods/RxSwift/RxSwift/Traits/Single.swift | 141 +- .../Target Support Files/Nimble/Info.plist | 2 +- .../Nimble/Nimble-umbrella.h | 8 +- .../Nimble/Nimble.xcconfig | 5 +- .../Target Support Files/Quick/Info.plist | 2 +- .../Target Support Files/Quick/Quick.xcconfig | 5 +- .../Target Support Files/RxCocoa/Info.plist | 2 +- .../RxCocoa/RxCocoa.xcconfig | 2 +- .../RxMKMapView/Info.plist | 2 +- .../RxMKMapView/RxMKMapView.xcconfig | 2 +- .../Target Support Files/RxSwift/Info.plist | 2 +- .../RxSwift/RxSwift.xcconfig | 2 +- Example/RxMKMapView.xcodeproj/project.pbxproj | 12 +- Example/RxMKMapView/ViewController.swift | 15 +- Example/Tests/RxMKMapViewTests.swift | 12 +- README.md | 2 +- RxMKMapView.podspec | 7 +- RxMKMapView.xcodeproj/project.pbxproj | 5 +- Sources/MKMapView+Rx.swift | 12 +- 222 files changed, 4203 insertions(+), 3299 deletions(-) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlCatchException/Sources}/CwlCatchException/CwlCatchException.swift (76%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlCatchException/Sources}/CwlCatchExceptionSupport/CwlCatchException.m (100%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlCatchException/Sources}/CwlCatchExceptionSupport/include/CwlCatchException.h (99%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m (100%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h (98%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlMachBadInstructionHandler/mach_excServer.c (100%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlMachBadInstructionHandler/mach_excServer.h (100%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlPreconditionTesting/CwlBadInstructionException.swift (100%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlPreconditionTesting/CwlCatchBadInstruction.swift (76%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlPreconditionTesting/CwlDarwinDefinitions.swift (100%) rename Example/Pods/Nimble/{Sources/Lib/CwlPreconditionTesting => Carthage/Checkouts/CwlPreconditionTesting/Sources}/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h (96%) rename Example/Pods/Nimble/Sources/Nimble/Matchers/{AsyncMatcherWrapper.swift => Async.swift} (68%) create mode 100644 Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAllOf.swift rename Example/Pods/Nimble/Sources/Nimble/Utils/{Async.swift => Await.swift} (98%) delete mode 100644 Example/Pods/Nimble/Sources/NimbleObjectiveC/CurrentTestCaseTracker.h delete mode 100644 Example/Pods/Quick/Sources/QuickObjectiveC/DSL/World+DSL.h delete mode 100644 Example/Pods/Quick/Sources/QuickObjectiveC/World.h create mode 100644 Example/Pods/RxCocoa/Platform/DeprecationWarner.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/Common/KeyPathBinder.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/ObservableConvertibleType+SharedSequence.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ControlEvent+Signal.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourcePrefetchingProxy.swift create mode 100644 Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourcePrefetchingProxy.swift create mode 100644 Example/Pods/RxSwift/Platform/DeprecationWarner.swift diff --git a/.circleci/config.yml b/.circleci/config.yml index 3058f54..15b4648 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,11 +3,11 @@ jobs: build: working_directory: ~/RxSwiftCommunity/RxMKMapView parallelism: 1 - shell: /bin/bash --login + shell: /bin/bash --login -o pipefail environment: LANG: en_US.UTF-8 macos: - xcode: '9.4.0' + xcode: '10.0.0' steps: - checkout - restore_cache: @@ -15,6 +15,9 @@ jobs: - v1-dep-{{ .Branch }}- - v1-dep-master- - v1-dep- + - run: + name: Create artifacts paths + command: mkdir -p /tmp/test-results /tmp/xcode-test-artifacts - run: name: Bootstrap Carthage command: scripts/bootstrap-if-needed.sh @@ -24,11 +27,11 @@ jobs: - Carthage - run: name: Run Tests - command: set -o pipefail && xcodebuild -workspace 'Example/RxMKMapView.xcworkspace' -scheme 'RxMKMapView-Example' -configuration 'Debug' -destination 'platform=iOS Simulator,name=iPhone 8' -sdk iphonesimulator build test | xcpretty -c --test + command: xcodebuild -workspace 'Example/RxMKMapView.xcworkspace' -scheme 'RxMKMapView-Example' -configuration 'Debug' CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= PROVISIONING_PROFILE= -destination 'platform=iOS Simulator,name=iPhone 8' clean build test | tee '/tmp/xcode-test-artifacts/tests.log' | xcpretty --color --no-utf -r junit -o '/tmp/test-results/test.xml' - run: name: Build Framework Workspace - command: set -o pipefail && xcodebuild -workspace 'RxMKMapView.xcworkspace' -scheme 'RxMKMapView' -configuration 'Debug' -destination 'platform=iOS Simulator,name=iPhone 8' -sdk iphonesimulator build | xcpretty -c + command: xcodebuild -workspace 'RxMKMapView.xcworkspace' -scheme 'RxMKMapView' -configuration 'Debug' CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= PROVISIONING_PROFILE= -destination 'platform=iOS Simulator,name=iPhone 8' clean build | tee '/tmp/xcode-test-artifacts/build.log' | xcpretty -c - store_test_results: - path: test-results + path: /tmp/test-results - store_artifacts: - path: /tmp/xcode-test-artifcats + path: /tmp/xcode-test-artifacts diff --git a/.gitignore b/.gitignore index 98726fb..0393e3f 100644 --- a/.gitignore +++ b/.gitignore @@ -22,4 +22,4 @@ DerivedData # Bundler .bundle -Carthage +Carthage/** diff --git a/Cartfile b/Cartfile index 4cb3fb3..6c7e3a8 100644 --- a/Cartfile +++ b/Cartfile @@ -1 +1 @@ -github "ReactiveX/RxSwift" ~> 4.0 +github "ReactiveX/RxSwift" ~> 4.3.1 diff --git a/Cartfile.resolved b/Cartfile.resolved index 00b43a8..b34f3f7 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -1 +1 @@ -github "ReactiveX/RxSwift" "4.2.0" +github "ReactiveX/RxSwift" "4.3.1" diff --git a/Example/Podfile b/Example/Podfile index 652466a..c90b360 100644 --- a/Example/Podfile +++ b/Example/Podfile @@ -1,6 +1,7 @@ platform :"ios", "8.0" source 'https://github.com/CocoaPods/Specs.git' use_frameworks! +inhibit_all_warnings! target 'RxMKMapView_Example' do pod "RxMKMapView", :path => "../" @@ -14,3 +15,10 @@ target 'RxMKMapView_Tests' do pod 'Nimble' end +post_install do |installer| + installer.pods_project.targets.each do |target| + target.build_configurations.each do |config| + config.build_settings['SWIFT_VERSION'] = '4.2' + end + end +end \ No newline at end of file diff --git a/Example/Podfile.lock b/Example/Podfile.lock index 14c78ff..96a60d3 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,12 +1,12 @@ PODS: - - Nimble (7.0.2) - - Quick (1.2.0) - - RxCocoa (4.0.0): + - Nimble (7.3.1) + - Quick (1.3.2) + - RxCocoa (4.3.1): - RxSwift (~> 4.0) - - RxMKMapView (4.1.0): - - RxCocoa (~> 4.0) - - RxSwift (~> 4.0) - - RxSwift (4.0.0) + - RxMKMapView (4.3.0): + - RxCocoa (~> 4.3) + - RxSwift (~> 4.3) + - RxSwift (4.3.1) DEPENDENCIES: - Nimble @@ -25,12 +25,12 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Nimble: bfe1f814edabba69ff145cb1283e04ed636a67f2 - Quick: 58d203b1c5e27fff7229c4c1ae445ad7069a7a08 - RxCocoa: d62846ca96495d862fa4c59ea7d87e5031d7340e - RxMKMapView: 49f09ef2310493e99d1ce45b0f7e52104c66f3ec - RxSwift: fd680d75283beb5e2559486f3c0ff852f0d35334 + Nimble: 04f732da099ea4d153122aec8c2a88fd0c7219ae + Quick: 2623cb30d7a7f41ca62f684f679586558f483d46 + RxCocoa: 78763c7b07d02455598d9fc3c1ad091a28b73635 + RxMKMapView: f70f2837e201ce9598960dae8e415d3e2023305e + RxSwift: fe0fd770a43acdb7d0a53da411c9b892e69bb6e4 -PODFILE CHECKSUM: dcb7c4a2c562542c61937b0ec0c905b668797963 +PODFILE CHECKSUM: 71ce9fa2b867d95f8b9aca3810e348d809d86709 COCOAPODS: 1.5.3 diff --git a/Example/Pods/Local Podspecs/RxMKMapView.podspec.json b/Example/Pods/Local Podspecs/RxMKMapView.podspec.json index fd1863f..bfe2362 100644 --- a/Example/Pods/Local Podspecs/RxMKMapView.podspec.json +++ b/Example/Pods/Local Podspecs/RxMKMapView.podspec.json @@ -1,6 +1,6 @@ { "name": "RxMKMapView", - "version": "4.1.0", + "version": "4.3.0", "summary": "Reactive wrapper for MKMapView `delegate`", "description": "RxMKMapView is a Reactive wrapper for MKMapView `delegate`.\n\n## Installation\n\nRxMKMapView is available through [CocoaPods](http://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod \"RxMKMapView\"\n```\n\n## Example Usages\n\n```swift\n// MARK: Setup MKMapView\nlet mapView = MKMapView(frame: view.frame)\nview.addSubview(mapView)\n\n// MARK: Bind Annotations\n\nrequestForAnnotations() // Observable\n .asDriver(onErrorJustReturn: [])\n .drive(mapView.rx.annotations)\n .disposed(by: disposeBag)\n\n// MARK: Respond to Loading Events\nmapView.rx.willStartLoadingMap\n .asDriver()\n .drive(onNext: {\n print(\"map started loadedloading)\n })\n .disposed(by: disposeBag)\n\nmapView.rx.didFinishLoadingMap\n .asDriver()\n .drive(onNext: {\n print(\"map finished loading\")\n })\n .disposed(by: disposeBag)\n```", "homepage": "https://github.com/RxSwiftCommunity/RxMKMapView", @@ -10,9 +10,8 @@ }, "source": { "git": "https://github.com/RxSwiftCommunity/RxMKMapView.git", - "tag": "4.1.0" + "tag": "4.3.0" }, - "swift_version": "4.0", "platforms": { "ios": "8.0" }, @@ -20,10 +19,10 @@ "source_files": "Sources/**/*.swift", "dependencies": { "RxCocoa": [ - "~> 4.0" + "~> 4.3" ], "RxSwift": [ - "~> 4.0" + "~> 4.3" ] }, "frameworks": "Foundation" diff --git a/Example/Pods/Manifest.lock b/Example/Pods/Manifest.lock index 14c78ff..96a60d3 100644 --- a/Example/Pods/Manifest.lock +++ b/Example/Pods/Manifest.lock @@ -1,12 +1,12 @@ PODS: - - Nimble (7.0.2) - - Quick (1.2.0) - - RxCocoa (4.0.0): + - Nimble (7.3.1) + - Quick (1.3.2) + - RxCocoa (4.3.1): - RxSwift (~> 4.0) - - RxMKMapView (4.1.0): - - RxCocoa (~> 4.0) - - RxSwift (~> 4.0) - - RxSwift (4.0.0) + - RxMKMapView (4.3.0): + - RxCocoa (~> 4.3) + - RxSwift (~> 4.3) + - RxSwift (4.3.1) DEPENDENCIES: - Nimble @@ -25,12 +25,12 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Nimble: bfe1f814edabba69ff145cb1283e04ed636a67f2 - Quick: 58d203b1c5e27fff7229c4c1ae445ad7069a7a08 - RxCocoa: d62846ca96495d862fa4c59ea7d87e5031d7340e - RxMKMapView: 49f09ef2310493e99d1ce45b0f7e52104c66f3ec - RxSwift: fd680d75283beb5e2559486f3c0ff852f0d35334 + Nimble: 04f732da099ea4d153122aec8c2a88fd0c7219ae + Quick: 2623cb30d7a7f41ca62f684f679586558f483d46 + RxCocoa: 78763c7b07d02455598d9fc3c1ad091a28b73635 + RxMKMapView: f70f2837e201ce9598960dae8e415d3e2023305e + RxSwift: fe0fd770a43acdb7d0a53da411c9b892e69bb6e4 -PODFILE CHECKSUM: dcb7c4a2c562542c61937b0ec0c905b668797963 +PODFILE CHECKSUM: 71ce9fa2b867d95f8b9aca3810e348d809d86709 COCOAPODS: 1.5.3 diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchException/CwlCatchException.swift b/Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchException/CwlCatchException.swift similarity index 76% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchException/CwlCatchException.swift rename to Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchException/CwlCatchException.swift index 196ee9a..3e89e23 100644 --- a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchException/CwlCatchException.swift +++ b/Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchException/CwlCatchException.swift @@ -24,14 +24,12 @@ import Foundation import CwlCatchExceptionSupport #endif -private func catchReturnTypeConverter(_ instance: T, block: () -> Void) -> T? { - // Get the type from an *instance*, instead of a receiving the type directly - return catchExceptionOfKind(T.self, block) as? T +private func catchReturnTypeConverter(_ type: T.Type, block: () -> Void) -> T? { + return catchExceptionOfKind(type, block) as? T } extension NSException { public static func catchException(in block: () -> Void) -> Self? { - // Use a dummy instance of Self to provide the type - return catchReturnTypeConverter(self.init(), block: block) + return catchReturnTypeConverter(self, block: block) } } diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchExceptionSupport/CwlCatchException.m b/Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/CwlCatchException.m similarity index 100% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchExceptionSupport/CwlCatchException.m rename to Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/CwlCatchException.m diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchExceptionSupport/include/CwlCatchException.h b/Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/include/CwlCatchException.h similarity index 99% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchExceptionSupport/include/CwlCatchException.h rename to Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/include/CwlCatchException.h index ae48c23..0c8dd87 100644 --- a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlCatchExceptionSupport/include/CwlCatchException.h +++ b/Example/Pods/Nimble/Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/include/CwlCatchException.h @@ -30,4 +30,3 @@ FOUNDATION_EXPORT const unsigned char CwlCatchExceptionVersionString[]; __attribute__((visibility("hidden"))) #endif NSException* __nullable catchExceptionOfKind(Class __nonnull type, __attribute__((noescape)) void (^ __nonnull inBlock)(void)); - diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m similarity index 100% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h similarity index 98% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h index 5755bfc..aef59c2 100644 --- a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h +++ b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h @@ -1,5 +1,5 @@ // -// CwlMachBadExceptionHandler.h +// CwlMachBadInstructionHandler.h // CwlPreconditionTesting // // Created by Matt Gallagher on 2016/01/10. diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/mach_excServer.c b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.c similarity index 100% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/mach_excServer.c rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.c diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/mach_excServer.h b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.h similarity index 100% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/mach_excServer.h rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.h diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlBadInstructionException.swift b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlBadInstructionException.swift similarity index 100% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlBadInstructionException.swift rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlBadInstructionException.swift diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlCatchBadInstruction.swift b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlCatchBadInstruction.swift similarity index 76% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlCatchBadInstruction.swift rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlCatchBadInstruction.swift index 6e84115..f96ec63 100644 --- a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlCatchBadInstruction.swift +++ b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlCatchBadInstruction.swift @@ -21,7 +21,6 @@ import Foundation #if SWIFT_PACKAGE - import CwlCatchException import CwlMachBadInstructionHandler #endif @@ -38,16 +37,6 @@ import Foundation } } - extension execTypesCountTuple { - mutating func pointer(in block: (UnsafeMutablePointer) -> R) -> R { - return withUnsafeMutablePointer(to: &self) { p -> R in - return p.withMemoryRebound(to: T.self, capacity: EXC_TYPES_COUNT) { ptr -> R in - return block(ptr) - } - } - } - } - extension request_mach_exception_raise_t { mutating func withMsgHeaderPointer(in block: (UnsafeMutablePointer) -> R) -> R { return withUnsafeMutablePointer(to: &self) { p -> R in @@ -78,17 +67,23 @@ import Foundation var currentExceptionPort: mach_port_t = 0 var handlerThread: pthread_t? = nil - mutating func withUnsafeMutablePointers(in block: (UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer) -> R) -> R { - return masks.pointer { masksPtr in - return ports.pointer { portsPtr in - return behaviors.pointer { behaviorsPtr in - return flavors.pointer { flavorsPtr in - return block(masksPtr, portsPtr, behaviorsPtr, flavorsPtr) + static func internalMutablePointers(_ m: UnsafeMutablePointer>, _ c: UnsafeMutablePointer, _ p: UnsafeMutablePointer>, _ b: UnsafeMutablePointer>, _ f: UnsafeMutablePointer>, _ block: (UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer) -> R) -> R { + return m.withMemoryRebound(to: exception_mask_t.self, capacity: 1) { masksPtr in + return c.withMemoryRebound(to: mach_msg_type_number_t.self, capacity: 1) { countPtr in + return p.withMemoryRebound(to: mach_port_t.self, capacity: 1) { portsPtr in + return b.withMemoryRebound(to: exception_behavior_t.self, capacity: 1) { behaviorsPtr in + return f.withMemoryRebound(to: thread_state_flavor_t.self, capacity: 1) { flavorsPtr in + return block(masksPtr, countPtr, portsPtr, behaviorsPtr, flavorsPtr) + } } } } } } + + mutating func withUnsafeMutablePointers(in block: @escaping (UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer, UnsafeMutablePointer) -> R) -> R { + return MachContext.internalMutablePointers(&masks, &count, &ports, &behaviors, &flavors, block) + } } /// A function for receiving mach messages and parsing the first with mach_exc_server (and if any others are received, throwing them away). @@ -102,8 +97,9 @@ import Foundation // Request the next mach message from the port request.Head.msgh_local_port = context.currentExceptionPort request.Head.msgh_size = UInt32(MemoryLayout.size) + let requestSize = request.Head.msgh_size try kernCheck { request.withMsgHeaderPointer { requestPtr in - mach_msg(requestPtr, MACH_RCV_MSG | MACH_RCV_INTERRUPT, 0, request.Head.msgh_size, context.currentExceptionPort, 0, UInt32(MACH_PORT_NULL)) + mach_msg(requestPtr, MACH_RCV_MSG | MACH_RCV_INTERRUPT, 0, requestSize, context.currentExceptionPort, 0, UInt32(MACH_PORT_NULL)) } } // Prepare the reply structure @@ -121,13 +117,14 @@ import Foundation handledfirstException = true } else { - // If multiple fatal errors occur, don't handle subsequent errors (let the program crash) + // If multiple fatal errors occur, don't handle subsquent errors (let the program crash) reply.RetCode = KERN_FAILURE } // Send the reply + let replySize = reply.Head.msgh_size try kernCheck { reply.withMsgHeaderPointer { replyPtr in - mach_msg(replyPtr, MACH_SEND_MSG, reply.Head.msgh_size, 0, UInt32(MACH_PORT_NULL), 0, UInt32(MACH_PORT_NULL)) + mach_msg(replyPtr, MACH_SEND_MSG, replySize, 0, UInt32(MACH_PORT_NULL), 0, UInt32(MACH_PORT_NULL)) } } } catch let error as NSError where (error.domain == NSMachErrorDomain && (error.code == Int(MACH_RCV_PORT_CHANGED) || error.code == Int(MACH_RCV_INVALID_NAME))) { // Port was already closed before we started or closed while we were listening. @@ -170,14 +167,15 @@ import Foundation mach_port_insert_right(mach_task_self_, context.currentExceptionPort, context.currentExceptionPort, MACH_MSG_TYPE_MAKE_SEND) } - try kernCheck { context.withUnsafeMutablePointers { masksPtr, portsPtr, behaviorsPtr, flavorsPtr in + let currentExceptionPtr = context.currentExceptionPort + try kernCheck { context.withUnsafeMutablePointers { masksPtr, countPtr, portsPtr, behaviorsPtr, flavorsPtr in // 3. Apply the mach port as the handler for this thread - thread_swap_exception_ports(mach_thread_self(), EXC_MASK_BAD_INSTRUCTION, context.currentExceptionPort, Int32(bitPattern: UInt32(EXCEPTION_STATE) | MACH_EXCEPTION_CODES), x86_THREAD_STATE64, masksPtr, &context.count, portsPtr, behaviorsPtr, flavorsPtr) + thread_swap_exception_ports(mach_thread_self(), EXC_MASK_BAD_INSTRUCTION, currentExceptionPtr, Int32(bitPattern: UInt32(EXCEPTION_STATE) | MACH_EXCEPTION_CODES), x86_THREAD_STATE64, masksPtr, countPtr, portsPtr, behaviorsPtr, flavorsPtr) } } - defer { context.withUnsafeMutablePointers { masksPtr, portsPtr, behaviorsPtr, flavorsPtr in + defer { context.withUnsafeMutablePointers { masksPtr, countPtr, portsPtr, behaviorsPtr, flavorsPtr in // 6. Unapply the mach port - _ = thread_swap_exception_ports(mach_thread_self(), EXC_MASK_BAD_INSTRUCTION, 0, EXCEPTION_DEFAULT, THREAD_STATE_NONE, masksPtr, &context.count, portsPtr, behaviorsPtr, flavorsPtr) + _ = thread_swap_exception_ports(mach_thread_self(), EXC_MASK_BAD_INSTRUCTION, 0, EXCEPTION_DEFAULT, THREAD_STATE_NONE, masksPtr, countPtr, portsPtr, behaviorsPtr, flavorsPtr) } } try withUnsafeMutablePointer(to: &context) { c throws in diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlDarwinDefinitions.swift b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlDarwinDefinitions.swift similarity index 100% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlDarwinDefinitions.swift rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlDarwinDefinitions.swift diff --git a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h similarity index 96% rename from Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h rename to Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h index f9dbedd..7c50da1 100644 --- a/Example/Pods/Nimble/Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h +++ b/Example/Pods/Nimble/Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h @@ -20,6 +20,8 @@ #import +extern bool _swift_reportFatalErrorsToDebugger; + //! Project version number for CwlUtils. FOUNDATION_EXPORT double CwlPreconditionTestingVersionNumber; diff --git a/Example/Pods/Nimble/README.md b/Example/Pods/Nimble/README.md index a190ac6..19c562f 100644 --- a/Example/Pods/Nimble/README.md +++ b/Example/Pods/Nimble/README.md @@ -226,9 +226,9 @@ exception once evaluated: // that Nimble will catch. // (see https://github.com/Quick/Nimble/issues/220#issuecomment-172667064) let exception = NSException( - name: NSInternalInconsistencyException, - reason: "Not enough fish in the sea.", - userInfo: ["something": "is fishy"]) + name: NSInternalInconsistencyException, + reason: "Not enough fish in the sea.", + userInfo: ["something": "is fishy"]) expect { exception.raise() }.to(raiseException()) // Also, you can customize raiseException to be more specific @@ -714,7 +714,7 @@ expect(actual) ≈ expected expect(actual) ≈ (expected, delta) ``` -(Type Option-x to get ≈ on a U.S. keyboard) +(Type option+x to get `≈` on a U.S. keyboard) The former version uses the default delta of 0.0001. Here is yet another way to do this: @@ -725,7 +725,7 @@ expect(actual) ≈ expected ± delta expect(actual) == expected ± delta ``` -(Type Option-Shift-= to get ± on a U.S. keyboard) +(Type option+shift+= to get `±` on a U.S. keyboard) If you are comparing arrays of floating point numbers, you'll find the following useful: @@ -1043,10 +1043,10 @@ let turtles: [Turtle] = functionThatReturnsSomeTurtlesInAnyOrder() // [{color: "blue"}, {color: "green"}] or [{color: "green"}, {color: "blue"}]: expect(turtles).to(containElementSatisfying({ turtle in - return turtle.color == "green" + return turtle.color == "green" })) expect(turtles).to(containElementSatisfying({ turtle in - return turtle.color == "blue" + return turtle.color == "blue" }, "that is a turtle with color 'blue'")) // The second matcher will incorporate the provided string in the error message @@ -1069,10 +1069,10 @@ NSArray * __nonnull turtles = functionThatReturnsSomeTurtlesInAnyOrder // [{color: "blue"}, {color: "green"}] or [{color: "green"}, {color: "blue"}]: expect(turtles).to(containElementSatisfying(^BOOL(id __nonnull object) { - return [[turtle color] isEqualToString:@"green"]; + return [[turtle color] isEqualToString:@"green"]; })); expect(turtles).to(containElementSatisfying(^BOOL(id __nonnull object) { - return [[turtle color] isEqualToString:@"blue"]; + return [[turtle color] isEqualToString:@"blue"]; })); ``` @@ -1273,24 +1273,24 @@ value and return a `Predicate` closure. Take `equal`, for example: // Swift public func equal(expectedValue: T?) -> Predicate { - // Can be shortened to: - // Predicate { actual in ... } - // - // But shown with types here for clarity. - return Predicate { (actual: Expression) throws -> PredicateResult in - let msg = ExpectationMessage.expectedActualValueTo("equal <\(expectedValue)>") - if let actualValue = try actualExpression.evaluate() { - return PredicateResult( - bool: actualValue == expectedValue!, - message: msg - ) - } else { - return PredicateResult( - status: .fail, - message: msg.appendedBeNilHint() - ) + // Can be shortened to: + // Predicate { actual in ... } + // + // But shown with types here for clarity. + return Predicate { (actual: Expression) throws -> PredicateResult in + let msg = ExpectationMessage.expectedActualValueTo("equal <\(expectedValue)>") + if let actualValue = try actualExpression.evaluate() { + return PredicateResult( + bool: actualValue == expectedValue!, + message: msg + ) + } else { + return PredicateResult( + status: .fail, + message: msg.appendedBeNilHint() + ) + } } - } } ``` @@ -1382,11 +1382,11 @@ custom matchers should call `actualExpression.evaluate()`: // Swift public func beNil() -> Predicate { - // Predicate.simpleNilable(..) automatically generates ExpectationMessage for - // us based on the string we provide to it. Also, the 'Nilable' postfix indicates - // that this Predicate supports matching against nil actualExpressions, instead of - // always resulting in a PredicateStatus.fail result -- which is true for - // Predicate.simple(..) + // Predicate.simpleNilable(..) automatically generates ExpectationMessage for + // us based on the string we provide to it. Also, the 'Nilable' postfix indicates + // that this Predicate supports matching against nil actualExpressions, instead of + // always resulting in a PredicateStatus.fail result -- which is true for + // Predicate.simple(..) return Predicate.simpleNilable("be nil") { actualExpression in let actualValue = try actualExpression.evaluate() return PredicateStatus(bool: actualValue == nil) @@ -1412,9 +1412,9 @@ against the one provided to the matcher function, and passes if they are the sam // Swift public func haveDescription(description: String) -> Predicate { - return Predicate.simple("have description") { actual in - return PredicateStatus(bool: actual.evaluate().description == description) - } + return Predicate.simple("have description") { actual in + return PredicateStatus(bool: actual.evaluate().description == description) + } } ``` @@ -1489,7 +1489,7 @@ case expectedCustomValueTo(/* message: */ String, /* actual: */ String) // Emits standard error message without mentioning the actual value // eg - "expected to " -case expectedTo(/* message: */ String, /* actual: */ String) +case expectedTo(/* message: */ String) // ... } @@ -1526,13 +1526,13 @@ custom matcher. The example below defines the class method // Swift extension NMBObjCMatcher { - public class func beNilMatcher() -> NMBObjCMatcher { - return NMBObjCMatcher { actualBlock, failureMessage, location in - let block = ({ actualBlock() as NSObject? }) - let expr = Expression(expression: block, location: location) - return beNil().matches(expr, failureMessage: failureMessage) + public class func beNilMatcher() -> NMBObjCMatcher { + return NMBObjCMatcher { actualBlock, failureMessage, location in + let block = ({ actualBlock() as NSObject? }) + let expr = Expression(expression: block, location: location) + return beNil().matches(expr, failureMessage: failureMessage) + } } - } } ``` @@ -1551,7 +1551,7 @@ class method: // Objective-C FOUNDATION_EXPORT id beNil() { - return [NMBObjCMatcher beNilMatcher]; + return [NMBObjCMatcher beNilMatcher]; } ``` diff --git a/Example/Pods/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift b/Example/Pods/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift index 740c392..cc39636 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Adapters/AssertionRecorder.swift @@ -65,7 +65,7 @@ public func withAssertionHandler(_ tempAssertionHandler: AssertionHandler, closu /// assertion handler when this is true. Defaults to false. /// /// @see gatherFailingExpectations -public func gatherExpectations(silently: Bool = false, closure: @escaping () -> Void) -> [AssertionRecord] { +public func gatherExpectations(silently: Bool = false, closure: () -> Void) -> [AssertionRecord] { let previousRecorder = NimbleEnvironment.activeInstance.assertionHandler let recorder = AssertionRecorder() let handlers: [AssertionHandler] @@ -92,7 +92,7 @@ public func gatherExpectations(silently: Bool = false, closure: @escaping () -> /// /// @see gatherExpectations /// @see raiseException source for an example use case. -public func gatherFailingExpectations(silently: Bool = false, closure: @escaping () -> Void) -> [AssertionRecord] { +public func gatherFailingExpectations(silently: Bool = false, closure: () -> Void) -> [AssertionRecord] { let assertions = gatherExpectations(silently: silently, closure: closure) return assertions.filter { assertion in !assertion.success diff --git a/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBExpectation.swift b/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBExpectation.swift index 88d9406..add7d3f 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBExpectation.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBExpectation.swift @@ -4,7 +4,7 @@ import Foundation private func from(objcPredicate: NMBPredicate) -> Predicate { return Predicate { actualExpression in - let result = objcPredicate.satisfies(({ try! actualExpression.evaluate() }), + let result = objcPredicate.satisfies(({ try actualExpression.evaluate() }), location: actualExpression.location) return result.toSwift() } @@ -30,13 +30,13 @@ internal struct ObjCMatcherWrapper: Matcher { // Equivalent to Expectation, but for Nimble's Objective-C interface public class NMBExpectation: NSObject { - internal let _actualBlock: () -> NSObject! + internal let _actualBlock: () -> NSObject? internal var _negative: Bool internal let _file: FileString internal let _line: UInt internal var _timeout: TimeInterval = 1.0 - @objc public init(actualBlock: @escaping () -> NSObject!, negative: Bool, file: FileString, line: UInt) { + @objc public init(actualBlock: @escaping () -> NSObject?, negative: Bool, file: FileString, line: UInt) { self._actualBlock = actualBlock self._negative = negative self._file = file diff --git a/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBObjCMatcher.swift b/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBObjCMatcher.swift index 9ba2ffa..a114dff 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBObjCMatcher.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Adapters/NMBObjCMatcher.swift @@ -3,8 +3,8 @@ import Foundation #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) // swiftlint:disable line_length -public typealias MatcherBlock = (_ actualExpression: Expression, _ failureMessage: FailureMessage) -> Bool -public typealias FullMatcherBlock = (_ actualExpression: Expression, _ failureMessage: FailureMessage, _ shouldNotMatch: Bool) -> Bool +public typealias MatcherBlock = (_ actualExpression: Expression, _ failureMessage: FailureMessage) throws -> Bool +public typealias FullMatcherBlock = (_ actualExpression: Expression, _ failureMessage: FailureMessage, _ shouldNotMatch: Bool) throws -> Bool // swiftlint:enable line_length public class NMBObjCMatcher: NSObject, NMBMatcher { @@ -24,7 +24,7 @@ public class NMBObjCMatcher: NSObject, NMBMatcher { public convenience init(canMatchNil: Bool, matcher: @escaping MatcherBlock) { self.init(canMatchNil: canMatchNil, matcher: matcher, notMatcher: ({ actualExpression, failureMessage in - return !matcher(actualExpression, failureMessage) + return try !matcher(actualExpression, failureMessage) })) } @@ -34,9 +34,9 @@ public class NMBObjCMatcher: NSObject, NMBMatcher { public convenience init(canMatchNil: Bool, matcher: @escaping FullMatcherBlock) { self.init(canMatchNil: canMatchNil, matcher: ({ actualExpression, failureMessage in - return matcher(actualExpression, failureMessage, false) + return try matcher(actualExpression, failureMessage, false) }), notMatcher: ({ actualExpression, failureMessage in - return matcher(actualExpression, failureMessage, true) + return try matcher(actualExpression, failureMessage, true) })) } @@ -55,11 +55,16 @@ public class NMBObjCMatcher: NSObject, NMBMatcher { return true } - public func matches(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + public func matches(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { let expr = Expression(expression: actualBlock, location: location) - let result = _match( - expr, - failureMessage) + let result: Bool + do { + result = try _match(expr, failureMessage) + } catch let error { + failureMessage.stringValue = "unexpected error thrown: <\(error)>" + return false + } + if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) { return result } else { @@ -67,11 +72,16 @@ public class NMBObjCMatcher: NSObject, NMBMatcher { } } - public func doesNotMatch(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + public func doesNotMatch(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { let expr = Expression(expression: actualBlock, location: location) - let result = _doesNotMatch( - expr, - failureMessage) + let result: Bool + do { + result = try _doesNotMatch(expr, failureMessage) + } catch let error { + failureMessage.stringValue = "unexpected error thrown: <\(error)>" + return false + } + if self.canMatch(Expression(expression: actualBlock, location: location), failureMessage: failureMessage) { return result } else { diff --git a/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift b/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift index 0ad8590..14bb045 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleXCTestHandler.swift @@ -42,12 +42,23 @@ class NimbleXCTestUnavailableHandler: AssertionHandler { private(set) var currentTestCase: XCTestCase? + private var stashed_swift_reportFatalErrorsToDebugger: Bool = false + @objc func testCaseWillStart(_ testCase: XCTestCase) { + #if swift(>=3.2) + stashed_swift_reportFatalErrorsToDebugger = _swift_reportFatalErrorsToDebugger + _swift_reportFatalErrorsToDebugger = false + #endif + currentTestCase = testCase } @objc func testCaseDidFinish(_ testCase: XCTestCase) { currentTestCase = nil + + #if swift(>=3.2) + _swift_reportFatalErrorsToDebugger = stashed_swift_reportFatalErrorsToDebugger + #endif } } #endif @@ -61,7 +72,7 @@ func isXCTestAvailable() -> Bool { #endif } -private func recordFailure(_ message: String, location: SourceLocation) { +public func recordFailure(_ message: String, location: SourceLocation) { #if SWIFT_PACKAGE XCTFail("\(message)", file: location.file, line: location.line) #else diff --git a/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift b/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift index a84682f..e874136 100644 --- a/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift +++ b/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift @@ -111,6 +111,6 @@ internal func blockedRunLoopErrorMessageFor(_ fnName: String, leeway: TimeInterv /// /// This function manages the main run loop (`NSRunLoop.mainRunLoop()`) while this function /// is executing. Any attempts to touch the run loop may cause non-deterministic behavior. -public func waitUntil(timeout: TimeInterval = 1, file: FileString = #file, line: UInt = #line, action: @escaping (@escaping () -> Void) -> Void) { +public func waitUntil(timeout: TimeInterval = AsyncDefaults.Timeout, file: FileString = #file, line: UInt = #line, action: @escaping (@escaping () -> Void) -> Void) { NMBWait.until(timeout: timeout, file: file, line: line, action: action) } diff --git a/Example/Pods/Nimble/Sources/Nimble/Expectation.swift b/Example/Pods/Nimble/Sources/Nimble/Expectation.swift index e3f616a..41625a1 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Expectation.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Expectation.swift @@ -1,23 +1,5 @@ import Foundation -// Deprecated -internal func expressionMatches(_ expression: Expression, matcher: U, to: String, description: String?) -> (Bool, FailureMessage) - where U: Matcher, U.ValueType == T { - let msg = FailureMessage() - msg.userDescription = description - msg.to = to - do { - let pass = try matcher.matches(expression, failureMessage: msg) - if msg.actualValue == "" { - msg.actualValue = "<\(stringify(try expression.evaluate()))>" - } - return (pass, msg) - } catch let error { - msg.stringValue = "unexpected error thrown: <\(error)>" - return (false, msg) - } -} - // Deprecated internal func expressionDoesNotMatch(_ expression: Expression, matcher: U, toNot: String, description: String?) -> (Bool, FailureMessage) where U: Matcher, U.ValueType == T { @@ -75,6 +57,10 @@ public struct Expectation { public let expression: Expression + public init(expression: Expression) { + self.expression = expression + } + public func verify(_ pass: Bool, _ message: FailureMessage) { let handler = NimbleEnvironment.activeInstance.assertionHandler handler.assert(pass, message: message, location: expression.location) @@ -85,8 +71,15 @@ public struct Expectation { /// DEPRECATED: Tests the actual value using a matcher to match. public func to(_ matcher: U, description: String? = nil) where U: Matcher, U.ValueType == T { - let (pass, msg) = expressionMatches(expression, matcher: matcher, to: "to", description: description) - verify(pass, msg) + let (pass, msg) = execute( + expression, + .toMatch, + matcher.predicate, + to: "to", + description: description, + captureExceptions: false + ) + verify(pass, msg) } /// DEPRECATED: Tests the actual value using a matcher to not match. @@ -127,6 +120,6 @@ public struct Expectation { } // see: - // - AsyncMatcherWrapper for extension + // - `async` for extension // - NMBExpectation for Objective-C interface } diff --git a/Example/Pods/Nimble/Sources/Nimble/ExpectationMessage.swift b/Example/Pods/Nimble/Sources/Nimble/ExpectationMessage.swift index 992ee0e..7aae341 100644 --- a/Example/Pods/Nimble/Sources/Nimble/ExpectationMessage.swift +++ b/Example/Pods/Nimble/Sources/Nimble/ExpectationMessage.swift @@ -152,8 +152,10 @@ public indirect enum ExpectationMessage { // Backwards compatibility: converts ExpectationMessage tree to FailureMessage internal func update(failureMessage: FailureMessage) { switch self { - case let .fail(msg): + case let .fail(msg) where !msg.isEmpty: failureMessage.stringValue = msg + case .fail: + break case let .expectedTo(msg): failureMessage.actualValue = nil failureMessage.postfixMessage = msg diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/AllPass.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/AllPass.swift index 8affa62..cc6c24f 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/AllPass.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/AllPass.swift @@ -68,7 +68,7 @@ extension NMBObjCMatcher { @objc public class func allPassMatcher(_ matcher: NMBMatcher) -> NMBPredicate { return NMBPredicate { actualExpression in let location = actualExpression.location - let actualValue = try! actualExpression.evaluate() + let actualValue = try actualExpression.evaluate() var nsObjects = [NSObject]() var collectionIsUsable = true @@ -99,7 +99,7 @@ extension NMBObjCMatcher { let expr = Expression(expression: ({ nsObjects }), location: location) let pred: Predicate<[NSObject]> = createPredicate(Predicate { expr in if let predicate = matcher as? NMBPredicate { - return predicate.satisfies(({ try! expr.evaluate() }), location: expr.location).toSwift() + return predicate.satisfies(({ try expr.evaluate() }), location: expr.location).toSwift() } else { let failureMessage = FailureMessage() let result = matcher.matches( @@ -114,7 +114,7 @@ extension NMBObjCMatcher { ) } }) - return try! pred.satisfies(expr).toObjectiveC() + return try pred.satisfies(expr).toObjectiveC() } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/AsyncMatcherWrapper.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/Async.swift similarity index 68% rename from Example/Pods/Nimble/Sources/Nimble/Matchers/AsyncMatcherWrapper.swift rename to Example/Pods/Nimble/Sources/Nimble/Matchers/Async.swift index 3cba8b0..63e863e 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/AsyncMatcherWrapper.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/Async.swift @@ -32,76 +32,7 @@ private func async(style: ExpectationStyle, predicate: Predicate, timeout: // swiftlint:disable:next line_length return PredicateResult(status: .fail, message: lastPredicateResult!.message.appended(message: " (timed out, but main thread was unresponsive).")) case .incomplete: - internalError("Reached .incomplete state for toEventually(...).") - } - } -} - -// Deprecated -internal struct AsyncMatcherWrapper: Matcher - where U: Matcher, U.ValueType == T { - let fullMatcher: U - let timeoutInterval: TimeInterval - let pollInterval: TimeInterval - - init(fullMatcher: U, timeoutInterval: TimeInterval = AsyncDefaults.Timeout, pollInterval: TimeInterval = AsyncDefaults.PollInterval) { - self.fullMatcher = fullMatcher - self.timeoutInterval = timeoutInterval - self.pollInterval = pollInterval - } - - func matches(_ actualExpression: Expression, failureMessage: FailureMessage) -> Bool { - let uncachedExpression = actualExpression.withoutCaching() - let fnName = "expect(...).toEventually(...)" - let result = pollBlock( - pollInterval: pollInterval, - timeoutInterval: timeoutInterval, - file: actualExpression.location.file, - line: actualExpression.location.line, - fnName: fnName) { - try self.fullMatcher.matches(uncachedExpression, failureMessage: failureMessage) - } - switch result { - case let .completed(isSuccessful): return isSuccessful - case .timedOut: return false - case let .errorThrown(error): - failureMessage.stringValue = "an unexpected error thrown: <\(error)>" - return false - case let .raisedException(exception): - failureMessage.stringValue = "an unexpected exception thrown: <\(exception)>" - return false - case .blockedRunLoop: - failureMessage.postfixMessage += " (timed out, but main thread was unresponsive)." - return false - case .incomplete: - internalError("Reached .incomplete state for toEventually(...).") - } - } - - func doesNotMatch(_ actualExpression: Expression, failureMessage: FailureMessage) -> Bool { - let uncachedExpression = actualExpression.withoutCaching() - let result = pollBlock( - pollInterval: pollInterval, - timeoutInterval: timeoutInterval, - file: actualExpression.location.file, - line: actualExpression.location.line, - fnName: "expect(...).toEventuallyNot(...)") { - try self.fullMatcher.doesNotMatch(uncachedExpression, failureMessage: failureMessage) - } - switch result { - case let .completed(isSuccessful): return isSuccessful - case .timedOut: return false - case let .errorThrown(error): - failureMessage.stringValue = "an unexpected error thrown: <\(error)>" - return false - case let .raisedException(exception): - failureMessage.stringValue = "an unexpected exception thrown: <\(exception)>" - return false - case .blockedRunLoop: - failureMessage.postfixMessage += " (timed out, but main thread was unresponsive)." - return false - case .incomplete: - internalError("Reached .incomplete state for toEventuallyNot(...).") + internalError("Reached .incomplete state for \(fnName)(...).") } } } @@ -182,14 +113,19 @@ extension Expectation { public func toEventually(_ matcher: U, timeout: TimeInterval = AsyncDefaults.Timeout, pollInterval: TimeInterval = AsyncDefaults.PollInterval, description: String? = nil) where U: Matcher, U.ValueType == T { if expression.isClosure { - let (pass, msg) = expressionMatches( + let (pass, msg) = execute( expression, - matcher: AsyncMatcherWrapper( - fullMatcher: matcher, - timeoutInterval: timeout, - pollInterval: pollInterval), + .toMatch, + async( + style: .toMatch, + predicate: matcher.predicate, + timeout: timeout, + poll: pollInterval, + fnName: "toEventually" + ), to: "to eventually", - description: description + description: description, + captureExceptions: false ) verify(pass, msg) } else { @@ -208,10 +144,13 @@ extension Expectation { if expression.isClosure { let (pass, msg) = expressionDoesNotMatch( expression, - matcher: AsyncMatcherWrapper( - fullMatcher: matcher, - timeoutInterval: timeout, - pollInterval: pollInterval), + matcher: async( + style: .toNotMatch, + predicate: matcher.predicate, + timeout: timeout, + poll: pollInterval, + fnName: "toEventuallyNot" + ), toNot: "to eventually not", description: description ) diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift index 5674525..5d0f5a1 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAKindOf.swift @@ -59,8 +59,8 @@ public func beAKindOf(_ expectedClass: AnyClass) -> Predicate { extension NMBObjCMatcher { @objc public class func beAKindOfMatcher(_ expected: AnyClass) -> NMBMatcher { - return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in - return try! beAKindOf(expected).matches(actualExpression, failureMessage: failureMessage) + return NMBPredicate { actualExpression in + return try beAKindOf(expected).satisfies(actualExpression).toObjectiveC() } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift index 70c5661..bc1b02c 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeAnInstanceOf.swift @@ -48,8 +48,8 @@ public func beAnInstanceOf(_ expectedClass: AnyClass) -> Predicate { #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) extension NMBObjCMatcher { @objc public class func beAnInstanceOfMatcher(_ expected: AnyClass) -> NMBMatcher { - return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in - return try! beAnInstanceOf(expected).matches(actualExpression, failureMessage: failureMessage) + return NMBPredicate { actualExpression in + return try beAnInstanceOf(expected).satisfies(actualExpression).toObjectiveC() } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift index dfb4e28..b1e6f4c 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeCloseTo.swift @@ -43,22 +43,34 @@ public class NMBObjCBeCloseToMatcher: NSObject, NMBMatcher { _delta = within } - @objc public func matches(_ actualExpression: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + @objc public func matches(_ actualExpression: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { let actualBlock: () -> NMBDoubleConvertible? = ({ return actualExpression() as? NMBDoubleConvertible }) let expr = Expression(expression: actualBlock, location: location) let matcher = beCloseTo(self._expected, within: self._delta) - return try! matcher.matches(expr, failureMessage: failureMessage) + + do { + return try matcher.matches(expr, failureMessage: failureMessage) + } catch let error { + failureMessage.stringValue = "unexpected error thrown: <\(error)>" + return false + } } - @objc public func doesNotMatch(_ actualExpression: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + @objc public func doesNotMatch(_ actualExpression: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { let actualBlock: () -> NMBDoubleConvertible? = ({ return actualExpression() as? NMBDoubleConvertible }) let expr = Expression(expression: actualBlock, location: location) let matcher = beCloseTo(self._expected, within: self._delta) - return try! matcher.doesNotMatch(expr, failureMessage: failureMessage) + + do { + return try matcher.doesNotMatch(expr, failureMessage: failureMessage) + } catch let error { + failureMessage.stringValue = "unexpected error thrown: <\(error)>" + return false + } } @objc public var within: (CDouble) -> NMBObjCBeCloseToMatcher { diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeEmpty.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeEmpty.swift index 3cbc15d..8d73dcc 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeEmpty.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeEmpty.swift @@ -66,14 +66,14 @@ extension NMBObjCMatcher { @objc public class func beEmptyMatcher() -> NMBPredicate { return NMBPredicate { actualExpression in let location = actualExpression.location - let actualValue = try! actualExpression.evaluate() + let actualValue = try actualExpression.evaluate() if let value = actualValue as? NMBCollection { let expr = Expression(expression: ({ value as NMBCollection }), location: location) - return try! beEmpty().satisfies(expr).toObjectiveC() + return try beEmpty().satisfies(expr).toObjectiveC() } else if let value = actualValue as? NSString { let expr = Expression(expression: ({ value as String }), location: location) - return try! beEmpty().satisfies(expr).toObjectiveC() + return try beEmpty().satisfies(expr).toObjectiveC() } else if let actualValue = actualValue { // swiftlint:disable:next line_length let badTypeErrorMsg = "be empty (only works for NSArrays, NSSets, NSIndexSets, NSDictionaries, NSHashTables, and NSStrings)" diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift index 8717f97..b86f25d 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThan.swift @@ -13,13 +13,13 @@ public func beGreaterThan(_ expectedValue: T?) -> Predicate { /// A Nimble matcher that succeeds when the actual value is greater than the expected value. public func beGreaterThan(_ expectedValue: NMBComparable?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be greater than <\(stringify(expectedValue))>" + let errorMessage = "be greater than <\(stringify(expectedValue))>" + return Predicate.simple(errorMessage) { actualExpression in let actualValue = try actualExpression.evaluate() let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == ComparisonResult.orderedDescending - return matches - }.requireNonNil + return PredicateStatus(bool: matches) + } } public func >(lhs: Expectation, rhs: T) { @@ -35,7 +35,7 @@ extension NMBObjCMatcher { @objc public class func beGreaterThanMatcher(_ expected: NMBComparable?) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let expr = actualExpression.cast { $0 as? NMBComparable } - return try! beGreaterThan(expected).matches(expr, failureMessage: failureMessage) + return try beGreaterThan(expected).matches(expr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift index 55d8e7b..2a3ca4a 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift @@ -3,25 +3,25 @@ import Foundation /// A Nimble matcher that succeeds when the actual value is greater than /// or equal to the expected value. public func beGreaterThanOrEqualTo(_ expectedValue: T?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be greater than or equal to <\(stringify(expectedValue))>" + let message = "be greater than or equal to <\(stringify(expectedValue))>" + return Predicate.simple(message) { actualExpression in let actualValue = try actualExpression.evaluate() if let actual = actualValue, let expected = expectedValue { - return actual >= expected + return PredicateStatus(bool: actual >= expected) } - return false - }.requireNonNil + return .fail + } } /// A Nimble matcher that succeeds when the actual value is greater than /// or equal to the expected value. public func beGreaterThanOrEqualTo(_ expectedValue: T?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be greater than or equal to <\(stringify(expectedValue))>" + let message = "be greater than or equal to <\(stringify(expectedValue))>" + return Predicate.simple(message) { actualExpression in let actualValue = try actualExpression.evaluate() let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) != ComparisonResult.orderedAscending - return matches - }.requireNonNil + return PredicateStatus(bool: matches) + } } public func >=(lhs: Expectation, rhs: T) { @@ -37,7 +37,7 @@ extension NMBObjCMatcher { @objc public class func beGreaterThanOrEqualToMatcher(_ expected: NMBComparable?) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let expr = actualExpression.cast { $0 as? NMBComparable } - return try! beGreaterThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage) + return try beGreaterThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift index ad19def..94758c2 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift @@ -3,20 +3,27 @@ import Foundation /// A Nimble matcher that succeeds when the actual value is the same instance /// as the expected instance. public func beIdenticalTo(_ expected: Any?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in + return Predicate.define { actualExpression in #if os(Linux) let actual = try actualExpression.evaluate() as? AnyObject #else let actual = try actualExpression.evaluate() as AnyObject? #endif - failureMessage.actualValue = "\(identityAsString(actual))" - failureMessage.postfixMessage = "be identical to \(identityAsString(expected))" + + let bool: Bool #if os(Linux) - return actual === (expected as? AnyObject) && actual !== nil + bool = actual === (expected as? AnyObject) && actual !== nil #else - return actual === (expected as AnyObject?) && actual !== nil + bool = actual === (expected as AnyObject?) && actual !== nil #endif - }.requireNonNil + return PredicateResult( + bool: bool, + message: .expectedCustomValueTo( + "be identical to \(identityAsString(expected))", + "\(identityAsString(actual))" + ) + ) + } } public func === (lhs: Expectation, rhs: Any?) { @@ -39,7 +46,7 @@ extension NMBObjCMatcher { @objc public class func beIdenticalToMatcher(_ expected: NSObject?) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let aExpr = actualExpression.cast { $0 as Any? } - return try! beIdenticalTo(expected).matches(aExpr, failureMessage: failureMessage) + return try beIdenticalTo(expected).matches(aExpr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThan.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThan.swift index 8047efd..e1fbf1e 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThan.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThan.swift @@ -2,23 +2,23 @@ import Foundation /// A Nimble matcher that succeeds when the actual value is less than the expected value. public func beLessThan(_ expectedValue: T?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be less than <\(stringify(expectedValue))>" + let message = "be less than <\(stringify(expectedValue))>" + return Predicate.simple(message) { actualExpression in if let actual = try actualExpression.evaluate(), let expected = expectedValue { - return actual < expected + return PredicateStatus(bool: actual < expected) } - return false - }.requireNonNil + return .fail + } } /// A Nimble matcher that succeeds when the actual value is less than the expected value. public func beLessThan(_ expectedValue: NMBComparable?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be less than <\(stringify(expectedValue))>" + let message = "be less than <\(stringify(expectedValue))>" + return Predicate.simple(message) { actualExpression in let actualValue = try actualExpression.evaluate() let matches = actualValue != nil && actualValue!.NMB_compare(expectedValue) == ComparisonResult.orderedAscending - return matches - }.requireNonNil + return PredicateStatus(bool: matches) + } } public func <(lhs: Expectation, rhs: T) { @@ -34,7 +34,7 @@ extension NMBObjCMatcher { @objc public class func beLessThanMatcher(_ expected: NMBComparable?) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let expr = actualExpression.cast { $0 as? NMBComparable } - return try! beLessThan(expected).matches(expr, failureMessage: failureMessage) + return try beLessThan(expected).matches(expr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift index 098a852..c37cb16 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLessThanOrEqual.swift @@ -3,23 +3,22 @@ import Foundation /// A Nimble matcher that succeeds when the actual value is less than /// or equal to the expected value. public func beLessThanOrEqualTo(_ expectedValue: T?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be less than or equal to <\(stringify(expectedValue))>" + return Predicate.simple("be less than or equal to <\(stringify(expectedValue))>") { actualExpression in if let actual = try actualExpression.evaluate(), let expected = expectedValue { - return actual <= expected + return PredicateStatus(bool: actual <= expected) } - return false - }.requireNonNil + return .fail + } } /// A Nimble matcher that succeeds when the actual value is less than /// or equal to the expected value. public func beLessThanOrEqualTo(_ expectedValue: T?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be less than or equal to <\(stringify(expectedValue))>" + return Predicate.simple("be less than or equal to <\(stringify(expectedValue))>") { actualExpression in let actualValue = try actualExpression.evaluate() - return actualValue != nil && actualValue!.NMB_compare(expectedValue) != ComparisonResult.orderedDescending - }.requireNonNil + let matches = actualValue.map { $0.NMB_compare(expectedValue) != .orderedDescending } ?? false + return PredicateStatus(bool: matches) + } } public func <=(lhs: Expectation, rhs: T) { @@ -33,9 +32,9 @@ public func <=(lhs: Expectation, rhs: T) { #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) extension NMBObjCMatcher { @objc public class func beLessThanOrEqualToMatcher(_ expected: NMBComparable?) -> NMBObjCMatcher { - return NMBObjCMatcher(canMatchNil:false) { actualExpression, failureMessage in + return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let expr = actualExpression.cast { $0 as? NMBComparable } - return try! beLessThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage) + return try beLessThanOrEqualTo(expected).matches(expr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLogical.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLogical.swift index 2b18b4c..035500e 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLogical.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeLogical.swift @@ -139,28 +139,28 @@ extension NMBObjCMatcher { @objc public class func beTruthyMatcher() -> NMBObjCMatcher { return NMBObjCMatcher { actualExpression, failureMessage in let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false } - return try! beTruthy().matches(expr, failureMessage: failureMessage) + return try beTruthy().matches(expr, failureMessage: failureMessage) } } @objc public class func beFalsyMatcher() -> NMBObjCMatcher { return NMBObjCMatcher { actualExpression, failureMessage in let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false } - return try! beFalsy().matches(expr, failureMessage: failureMessage) + return try beFalsy().matches(expr, failureMessage: failureMessage) } } @objc public class func beTrueMatcher() -> NMBObjCMatcher { return NMBObjCMatcher { actualExpression, failureMessage in let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false } - return try! beTrue().matches(expr, failureMessage: failureMessage) + return try beTrue().matches(expr, failureMessage: failureMessage) } } @objc public class func beFalseMatcher() -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let expr = actualExpression.cast { ($0 as? NSNumber)?.boolValue ?? false } - return try! beFalse().matches(expr, failureMessage: failureMessage) + return try beFalse().matches(expr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeNil.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeNil.swift index a22e0f4..387420b 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeNil.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeNil.swift @@ -12,7 +12,7 @@ public func beNil() -> Predicate { extension NMBObjCMatcher { @objc public class func beNilMatcher() -> NMBObjCMatcher { return NMBObjCMatcher { actualExpression, failureMessage in - return try! beNil().matches(actualExpression, failureMessage: failureMessage) + return try beNil().matches(actualExpression, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeVoid.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeVoid.swift index f5bf22a..a9dbc28 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeVoid.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeVoid.swift @@ -2,10 +2,9 @@ import Foundation /// A Nimble matcher that succeeds when the actual value is Void. public func beVoid() -> Predicate<()> { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "be void" + return Predicate.simpleNilable("be void") { actualExpression in let actualValue: ()? = try actualExpression.evaluate() - return actualValue != nil + return PredicateStatus(bool: actualValue != nil) } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift index c2ab568..a013f9f 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift @@ -46,13 +46,13 @@ public func beginWith(_ startingSubstring: String) -> Predicate { extension NMBObjCMatcher { @objc public class func beginWithMatcher(_ expected: Any) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in - let actual = try! actualExpression.evaluate() + let actual = try actualExpression.evaluate() if (actual as? String) != nil { let expr = actualExpression.cast { $0 as? String } - return try! beginWith(expected as! String).matches(expr, failureMessage: failureMessage) + return try beginWith(expected as! String).matches(expr, failureMessage: failureMessage) } else { let expr = actualExpression.cast { $0 as? NMBOrderedCollection } - return try! beginWith(expected).matches(expr, failureMessage: failureMessage) + return try beginWith(expected).matches(expr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/Contain.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/Contain.swift index f1afb72..2c84c5c 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/Contain.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/Contain.swift @@ -8,15 +8,15 @@ public func contain(_ items: T...) -> Predicate public func contain(_ items: [T]) -> Predicate where S.Iterator.Element == T { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "contain <\(arrayAsString(items))>" + return Predicate.simple("contain <\(arrayAsString(items))>") { actualExpression in if let actual = try actualExpression.evaluate() { - return items.all { + let matches = items.all { return actual.contains($0) } + return PredicateStatus(bool: matches) } - return false - }.requireNonNil + return .fail + } } /// A Nimble matcher that succeeds when the actual string contains the expected substring. @@ -25,16 +25,16 @@ public func contain(_ substrings: String...) -> Predicate { } public func contain(_ substrings: [String]) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "contain <\(arrayAsString(substrings))>" + return Predicate.simple("contain <\(arrayAsString(substrings))>") { actualExpression in if let actual = try actualExpression.evaluate() { - return substrings.all { + let matches = substrings.all { let range = actual.range(of: $0) return range != nil && !range!.isEmpty } + return PredicateStatus(bool: matches) } - return false - }.requireNonNil + return .fail + } } /// A Nimble matcher that succeeds when the actual string contains the expected substring. @@ -43,13 +43,13 @@ public func contain(_ substrings: NSString...) -> Predicate { } public func contain(_ substrings: [NSString]) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "contain <\(arrayAsString(substrings))>" + return Predicate.simple("contain <\(arrayAsString(substrings))>") { actualExpression in if let actual = try actualExpression.evaluate() { - return substrings.all { actual.range(of: $0.description).length != 0 } + let matches = substrings.all { actual.range(of: $0.description).length != 0 } + return PredicateStatus(bool: matches) } - return false - }.requireNonNil + return .fail + } } /// A Nimble matcher that succeeds when the actual collection contains the expected object. @@ -58,13 +58,13 @@ public func contain(_ items: Any?...) -> Predicate { } public func contain(_ items: [Any?]) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "contain <\(arrayAsString(items))>" - guard let actual = try actualExpression.evaluate() else { return false } - return items.all { item in - return item != nil && actual.contains(item!) + return Predicate.simple("contain <\(arrayAsString(items))>") { actualExpression in + guard let actual = try actualExpression.evaluate() else { return .fail } + let matches = items.all { item in + return item.map { actual.contains($0) } ?? false } - }.requireNonNil + return PredicateStatus(bool: matches) + } } #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) @@ -72,16 +72,16 @@ extension NMBObjCMatcher { @objc public class func containMatcher(_ expected: [NSObject]) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let location = actualExpression.location - let actualValue = try! actualExpression.evaluate() + let actualValue = try actualExpression.evaluate() if let value = actualValue as? NMBContainer { let expr = Expression(expression: ({ value as NMBContainer }), location: location) // A straightforward cast on the array causes this to crash, so we have to cast the individual items let expectedOptionals: [Any?] = expected.map({ $0 as Any? }) - return try! contain(expectedOptionals).matches(expr, failureMessage: failureMessage) + return try contain(expectedOptionals).matches(expr, failureMessage: failureMessage) } else if let value = actualValue as? NSString { let expr = Expression(expression: ({ value as String }), location: location) - return try! contain(expected as! [String]).matches(expr, failureMessage: failureMessage) + return try contain(expected as! [String]).matches(expr, failureMessage: failureMessage) } else if actualValue != nil { // swiftlint:disable:next line_length failureMessage.postfixMessage = "contain <\(arrayAsString(expected))> (only works for NSArrays, NSSets, NSHashTables, and NSStrings)" diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/ContainElementSatisfying.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/ContainElementSatisfying.swift index ae0d854..8a23a6c 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/ContainElementSatisfying.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/ContainElementSatisfying.swift @@ -2,34 +2,33 @@ import Foundation public func containElementSatisfying(_ predicate: @escaping ((T) -> Bool), _ predicateDescription: String = "") -> Predicate where S.Iterator.Element == T { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.actualValue = nil - + return Predicate.define { actualExpression in + let message: ExpectationMessage if predicateDescription == "" { - failureMessage.postfixMessage = "find object in collection that satisfies predicate" + message = .expectedTo("find object in collection that satisfies predicate") } else { - failureMessage.postfixMessage = "find object in collection \(predicateDescription)" + message = .expectedTo("find object in collection \(predicateDescription)") } if let sequence = try actualExpression.evaluate() { for object in sequence { if predicate(object) { - return true + return PredicateResult(bool: true, message: message) } } - return false + return PredicateResult(bool: false, message: message) } - return false - }.requireNonNil + return PredicateResult(status: .fail, message: message) + } } #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) extension NMBObjCMatcher { @objc public class func containElementSatisfyingMatcher(_ predicate: @escaping ((NSObject) -> Bool)) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in - let value = try! actualExpression.evaluate() + let value = try actualExpression.evaluate() guard let enumeration = value as? NSFastEnumeration else { // swiftlint:disable:next line_length failureMessage.postfixMessage = "containElementSatisfying must be provided an NSFastEnumeration object" @@ -51,8 +50,7 @@ public func containElementSatisfying(_ predicate: @escaping ((T) } failureMessage.actualValue = nil - failureMessage.postfixMessage = "" - failureMessage.to = "to find object in collection that satisfies predicate" + failureMessage.postfixMessage = "find object in collection that satisfies predicate" return false } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/EndWith.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/EndWith.swift index a6f9f91..80a06ca 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/EndWith.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/EndWith.swift @@ -4,9 +4,7 @@ import Foundation /// is equal to the expected value. public func endWith(_ endingElement: T) -> Predicate where S.Iterator.Element == T { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "end with <\(endingElement)>" - + return Predicate.simple("end with <\(endingElement)>") { actualExpression in if let actualValue = try actualExpression.evaluate() { var actualGenerator = actualValue.makeIterator() var lastItem: T? @@ -16,55 +14,53 @@ public func endWith(_ endingElement: T) -> Predicate< item = actualGenerator.next() } while(item != nil) - return lastItem == endingElement + return PredicateStatus(bool: lastItem == endingElement) } - return false - }.requireNonNil + return .fail + } } /// A Nimble matcher that succeeds when the actual collection's last element /// is equal to the expected object. public func endWith(_ endingElement: Any) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "end with <\(endingElement)>" - guard let collection = try actualExpression.evaluate() else { return false } - guard collection.count > 0 else { return false } + return Predicate.simple("end with <\(endingElement)>") { actualExpression in + guard let collection = try actualExpression.evaluate() else { return .fail } + guard collection.count > 0 else { return PredicateStatus(bool: false) } #if os(Linux) guard let collectionValue = collection.object(at: collection.count - 1) as? NSObject else { - return false + return .fail } #else let collectionValue = collection.object(at: collection.count - 1) as AnyObject #endif - return collectionValue.isEqual(endingElement) - }.requireNonNil + return PredicateStatus(bool: collectionValue.isEqual(endingElement)) + } } /// A Nimble matcher that succeeds when the actual string contains the expected substring /// where the expected substring's location is the actual string's length minus the /// expected substring's length. public func endWith(_ endingSubstring: String) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "end with <\(endingSubstring)>" + return Predicate.simple("end with <\(endingSubstring)>") { actualExpression in if let collection = try actualExpression.evaluate() { - return collection.hasSuffix(endingSubstring) + return PredicateStatus(bool: collection.hasSuffix(endingSubstring)) } - return false - }.requireNonNil + return .fail + } } #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) extension NMBObjCMatcher { @objc public class func endWithMatcher(_ expected: Any) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in - let actual = try! actualExpression.evaluate() + let actual = try actualExpression.evaluate() if (actual as? String) != nil { let expr = actualExpression.cast { $0 as? String } - return try! endWith(expected as! String).matches(expr, failureMessage: failureMessage) + return try endWith(expected as! String).matches(expr, failureMessage: failureMessage) } else { let expr = actualExpression.cast { $0 as? NMBOrderedCollection } - return try! endWith(expected).matches(expr, failureMessage: failureMessage) + return try endWith(expected).matches(expr, failureMessage: failureMessage) } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift index 9467154..5f26f49 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift @@ -212,8 +212,8 @@ public func !=(lhs: Expectation<[T: C]>, rhs: [T: C]?) { #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) extension NMBObjCMatcher { @objc public class func equalMatcher(_ expected: NSObject) -> NMBMatcher { - return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in - return try! equal(expected).matches(actualExpression, failureMessage: failureMessage) + return NMBPredicate { actualExpression in + return try equal(expected).satisfies(actualExpression).toObjectiveC() } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/HaveCount.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/HaveCount.swift index 93335a8..3529da8 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/HaveCount.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/HaveCount.swift @@ -8,33 +8,39 @@ import Foundation /// A Nimble matcher that succeeds when the actual Collection's count equals /// the expected value public func haveCount(_ expectedValue: T.IndexDistance) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in + return Predicate.define { actualExpression in if let actualValue = try actualExpression.evaluate() { - // swiftlint:disable:next line_length - failureMessage.postfixMessage = "have \(prettyCollectionType(actualValue)) with count \(stringify(expectedValue))" + let message = ExpectationMessage + .expectedCustomValueTo( + "have \(prettyCollectionType(actualValue)) with count \(stringify(expectedValue))", + "\(actualValue.count)" + ) + .appended(details: "Actual Value: \(stringify(actualValue))") + let result = expectedValue == actualValue.count - failureMessage.actualValue = "\(actualValue.count)" - failureMessage.extendedMessage = "Actual Value: \(stringify(actualValue))" - return result + return PredicateResult(bool: result, message: message) } else { - return false + return PredicateResult(status: .fail, message: .fail("")) } - }.requireNonNil + } } /// A Nimble matcher that succeeds when the actual collection's count equals /// the expected value public func haveCount(_ expectedValue: Int) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in + return Predicate { actualExpression in if let actualValue = try actualExpression.evaluate() { - // swiftlint:disable:next line_length - failureMessage.postfixMessage = "have \(prettyCollectionType(actualValue)) with count \(stringify(expectedValue))" + let message = ExpectationMessage + .expectedCustomValueTo( + "have \(prettyCollectionType(actualValue)) with count \(stringify(expectedValue))", + "\(actualValue.count)" + ) + .appended(details: "Actual Value: \(stringify(actualValue))") + let result = expectedValue == actualValue.count - failureMessage.actualValue = "\(actualValue.count)" - failureMessage.extendedMessage = "Actual Value: \(stringify(actualValue))" - return result + return PredicateResult(bool: result, message: message) } else { - return false + return PredicateResult(status: .fail, message: .fail("")) } } } @@ -44,10 +50,10 @@ extension NMBObjCMatcher { @objc public class func haveCountMatcher(_ expected: NSNumber) -> NMBObjCMatcher { return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in let location = actualExpression.location - let actualValue = try! actualExpression.evaluate() + let actualValue = try actualExpression.evaluate() if let value = actualValue as? NMBCollection { let expr = Expression(expression: ({ value as NMBCollection}), location: location) - return try! haveCount(expected.intValue).matches(expr, failureMessage: failureMessage) + return try haveCount(expected.intValue).matches(expr, failureMessage: failureMessage) } else if let actualValue = actualValue { failureMessage.postfixMessage = "get type of NSArray, NSSet, NSDictionary, or NSHashTable" failureMessage.actualValue = "\(String(describing: type(of: actualValue)))" diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/Match.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/Match.swift index 1e5762f..f738daf 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/Match.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/Match.swift @@ -3,26 +3,25 @@ import Foundation /// A Nimble matcher that succeeds when the actual string satisfies the regular expression /// described by the expected string. public func match(_ expectedValue: String?) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - failureMessage.postfixMessage = "match <\(stringify(expectedValue))>" - + return Predicate.simple("match <\(stringify(expectedValue))>") { actualExpression in if let actual = try actualExpression.evaluate() { if let regexp = expectedValue { - return actual.range(of: regexp, options: .regularExpression) != nil + let bool = actual.range(of: regexp, options: .regularExpression) != nil + return PredicateStatus(bool: bool) } } - return false - }.requireNonNil + return .fail + } } #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) extension NMBObjCMatcher { @objc public class func matchMatcher(_ expected: NSString) -> NMBMatcher { - return NMBObjCMatcher(canMatchNil: false) { actualExpression, failureMessage in + return NMBPredicate { actualExpression in let actual = actualExpression.cast { $0 as? String } - return try! match(expected.description).matches(actual, failureMessage: failureMessage) + return try match(expected.description).satisfies(actual).toObjectiveC() } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/MatchError.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/MatchError.swift index 9c86fb7..4ad71d4 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/MatchError.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/MatchError.swift @@ -6,16 +6,24 @@ import Foundation /// Errors are tried to be compared by their implementation of Equatable, /// otherwise they fallback to comparison by _domain and _code. public func matchError(_ error: T) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - let actualError: Error? = try actualExpression.evaluate() + return Predicate.define { actualExpression in + let actualError = try actualExpression.evaluate() + + let failureMessage = FailureMessage() + setFailureMessageForError( + failureMessage, + postfixMessageVerb: "match", + actualError: actualError, + error: error + ) - setFailureMessageForError(failureMessage, postfixMessageVerb: "match", actualError: actualError, error: error) var matches = false if let actualError = actualError, errorMatchesExpectedError(actualError, expectedError: error) { matches = true } - return matches - }.requireNonNil + + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) + } } /// A Nimble matcher that succeeds when the actual expression evaluates to an @@ -24,35 +32,45 @@ public func matchError(_ error: T) -> Predicate { /// Errors are tried to be compared by their implementation of Equatable, /// otherwise they fallback to comparision by _domain and _code. public func matchError(_ error: T) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - let actualError: Error? = try actualExpression.evaluate() + return Predicate.define { actualExpression in + let actualError = try actualExpression.evaluate() - setFailureMessageForError(failureMessage, postfixMessageVerb: "match", actualError: actualError, error: error) + let failureMessage = FailureMessage() + setFailureMessageForError( + failureMessage, + postfixMessageVerb: "match", + actualError: actualError, + error: error + ) var matches = false if let actualError = actualError as? T, error == actualError { matches = true } - return matches - }.requireNonNil + + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) + } } /// A Nimble matcher that succeeds when the actual expression evaluates to an /// error of the specified type public func matchError(_ errorType: T.Type) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - let actualError: Error? = try actualExpression.evaluate() + return Predicate.define { actualExpression in + let actualError = try actualExpression.evaluate() + let failureMessage = FailureMessage() setFailureMessageForError( failureMessage, postfixMessageVerb: "match", actualError: actualError, errorType: errorType ) + var matches = false if actualError as? T != nil { matches = true } - return matches - }.requireNonNil + + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) + } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift index fff3c77..6f8f103 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/MatcherProtocols.swift @@ -31,8 +31,8 @@ extension Matcher { #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) /// Objective-C interface to the Swift variant of Matcher. @objc public protocol NMBMatcher { - func matches(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool - func doesNotMatch(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool + func matches(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool + func doesNotMatch(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool } #endif @@ -46,8 +46,8 @@ public protocol NMBContainer { //extension NSHashTable : NMBContainer {} // Corelibs Foundation does not include this class yet #endif -extension NSArray : NMBContainer {} -extension NSSet : NMBContainer {} +extension NSArray: NMBContainer {} +extension NSSet: NMBContainer {} /// Protocol for types that support only beEmpty(), haveCount() matchers public protocol NMBCollection { @@ -55,32 +55,32 @@ public protocol NMBCollection { } #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) -extension NSHashTable : NMBCollection {} // Corelibs Foundation does not include these classes yet -extension NSMapTable : NMBCollection {} +extension NSHashTable: NMBCollection {} // Corelibs Foundation does not include these classes yet +extension NSMapTable: NMBCollection {} #endif -extension NSSet : NMBCollection {} -extension NSIndexSet : NMBCollection {} -extension NSDictionary : NMBCollection {} +extension NSSet: NMBCollection {} +extension NSIndexSet: NMBCollection {} +extension NSDictionary: NMBCollection {} /// Protocol for types that support beginWith(), endWith(), beEmpty() matchers public protocol NMBOrderedCollection: NMBCollection { func object(at index: Int) -> Any } -extension NSArray : NMBOrderedCollection {} +extension NSArray: NMBOrderedCollection {} public protocol NMBDoubleConvertible { var doubleValue: CDouble { get } } -extension Double : NMBDoubleConvertible { +extension Double: NMBDoubleConvertible { public var doubleValue: CDouble { return self } } -extension Float : NMBDoubleConvertible { +extension Float: NMBDoubleConvertible { public var doubleValue: CDouble { return CDouble(self) } @@ -92,7 +92,7 @@ extension CGFloat: NMBDoubleConvertible { } } -extension NSNumber : NMBDoubleConvertible { +extension NSNumber: NMBDoubleConvertible { } private let dateFormatter: DateFormatter = { @@ -142,12 +142,12 @@ public protocol NMBComparable { } #endif -extension NSNumber : NMBComparable { +extension NSNumber: NMBComparable { public func NMB_compare(_ otherObject: NMBComparable!) -> ComparisonResult { return compare(otherObject as! NSNumber) } } -extension NSString : NMBComparable { +extension NSString: NMBComparable { public func NMB_compare(_ otherObject: NMBComparable!) -> ComparisonResult { return compare(otherObject as! String) } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/PostNotification.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/PostNotification.swift index 8288bb0..16af011 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/PostNotification.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/PostNotification.swift @@ -1,5 +1,32 @@ import Foundation +// A workaround to SR-6419. +extension NotificationCenter { +#if !(os(macOS) || os(iOS) || os(tvOS) || os(watchOS)) + #if swift(>=4.0) + #if swift(>=4.0.2) + #else + func addObserver(forName name: Notification.Name?, object obj: Any?, queue: OperationQueue?, using block: @escaping (Notification) -> Void) -> NSObjectProtocol { + return addObserver(forName: name, object: obj, queue: queue, usingBlock: block) + } + #endif + #elseif swift(>=3.2) + #if swift(>=3.2.2) + #else + // swiftlint:disable:next line_length + func addObserver(forName name: Notification.Name?, object obj: Any?, queue: OperationQueue?, using block: @escaping (Notification) -> Void) -> NSObjectProtocol { + return addObserver(forName: name, object: obj, queue: queue, usingBlock: block) + } + #endif + #else + // swiftlint:disable:next line_length + func addObserver(forName name: Notification.Name?, object obj: Any?, queue: OperationQueue?, using block: @escaping (Notification) -> Void) -> NSObjectProtocol { + return addObserver(forName: name, object: obj, queue: queue, usingBlock: block) + } + #endif +#endif +} + internal class NotificationCollector { private(set) var observedNotifications: [Notification] private let notificationCenter: NotificationCenter @@ -15,10 +42,11 @@ internal class NotificationCollector { } func startObserving() { - self.token = self.notificationCenter.addObserver(forName: nil, object: nil, queue: nil) { [weak self] n in + // swiftlint:disable:next line_length + self.token = self.notificationCenter.addObserver(forName: nil, object: nil, queue: nil, using: { [weak self] n in // linux-swift gets confused by .append(n) self?.observedNotifications.append(n) - } + }) } deinit { @@ -46,7 +74,8 @@ public func postNotifications( let collector = NotificationCollector(notificationCenter: center) collector.startObserving() var once: Bool = false - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in + + return Predicate { actualExpression in let collectorNotificationsExpression = Expression(memoizedExpression: { _ in return collector.observedNotifications }, location: actualExpression.location, withoutCaching: true) @@ -57,12 +86,13 @@ public func postNotifications( _ = try actualExpression.evaluate() } + let failureMessage = FailureMessage() let match = try notificationsMatcher.matches(collectorNotificationsExpression, failureMessage: failureMessage) if collector.observedNotifications.isEmpty { failureMessage.actualValue = "no notifications" } else { failureMessage.actualValue = "<\(stringify(collector.observedNotifications))>" } - return match + return PredicateResult(bool: match, message: failureMessage.toExpectationMessage()) } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/Predicate.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/Predicate.swift index e48d164..19fd322 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/Predicate.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/Predicate.swift @@ -82,8 +82,8 @@ extension Predicate { } } -// Question: Should this be exposed? It's safer to not for now and decide later. -internal enum ExpectationStyle { +// The Expectation style intended for comparison to a PredicateStatus. +public enum ExpectationStyle { case toMatch, toNotMatch } @@ -91,9 +91,9 @@ internal enum ExpectationStyle { /// predicate. public struct PredicateResult { /// Status indicates if the predicate matches, does not match, or fails. - var status: PredicateStatus + public var status: PredicateStatus /// The error message that can be displayed if it does not match - var message: ExpectationMessage + public var message: ExpectationMessage /// Constructs a new PredicateResult with a given status and error message public init(status: PredicateStatus, message: ExpectationMessage) { @@ -108,7 +108,7 @@ public struct PredicateResult { } /// Converts the result to a boolean based on what the expectation intended - internal func toBoolean(expectation style: ExpectationStyle) -> Bool { + public func toBoolean(expectation style: ExpectationStyle) -> Bool { return status.toBoolean(expectation: style) } } @@ -242,7 +242,7 @@ extension Predicate { } #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) -public typealias PredicateBlock = (_ actualExpression: Expression) -> NMBPredicateResult +public typealias PredicateBlock = (_ actualExpression: Expression) throws -> NMBPredicateResult public class NMBPredicate: NSObject { private let predicate: PredicateBlock @@ -251,20 +251,24 @@ public class NMBPredicate: NSObject { self.predicate = predicate } - func satisfies(_ expression: @escaping () -> NSObject!, location: SourceLocation) -> NMBPredicateResult { + func satisfies(_ expression: @escaping () throws -> NSObject?, location: SourceLocation) -> NMBPredicateResult { let expr = Expression(expression: expression, location: location) - return self.predicate(expr) + do { + return try self.predicate(expr) + } catch let error { + return PredicateResult(status: .fail, message: .fail("unexpected error thrown: <\(error)>")).toObjectiveC() + } } } extension NMBPredicate: NMBMatcher { - public func matches(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + public func matches(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { let result = satisfies(actualBlock, location: location).toSwift() result.message.update(failureMessage: failureMessage) return result.status.toBoolean(expectation: .toMatch) } - public func doesNotMatch(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + public func doesNotMatch(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { let result = satisfies(actualBlock, location: location).toSwift() result.message.update(failureMessage: failureMessage) return result.status.toBoolean(expectation: .toNotMatch) diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/RaisesException.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/RaisesException.swift index 60553bd..459d2cd 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/RaisesException.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/RaisesException.swift @@ -17,8 +17,7 @@ public func raiseException( reason: String? = nil, userInfo: NSDictionary? = nil, closure: ((NSException) -> Void)? = nil) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - + return Predicate { actualExpression in var exception: NSException? let capture = NMBExceptionCapture(handler: ({ e in exception = e @@ -26,9 +25,9 @@ public func raiseException( capture.tryBlock { _ = try! actualExpression.evaluate() - return } + let failureMessage = FailureMessage() setFailureMessageForException( failureMessage, exception: exception, @@ -37,13 +36,15 @@ public func raiseException( userInfo: userInfo, closure: closure ) - return exceptionMatchesNonNilFieldsOrClosure( + + let matches = exceptionMatchesNonNilFieldsOrClosure( exception, named: named, reason: reason, userInfo: userInfo, closure: closure ) + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) } } @@ -129,19 +130,24 @@ public class NMBObjCRaiseExceptionMatcher: NSObject, NMBMatcher { _block = block } - @objc public func matches(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + @objc public func matches(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { let block: () -> Any? = ({ _ = actualBlock(); return nil }) let expr = Expression(expression: block, location: location) - return try! raiseException( - named: _name, - reason: _reason, - userInfo: _userInfo, - closure: _block - ).matches(expr, failureMessage: failureMessage) + do { + return try raiseException( + named: _name, + reason: _reason, + userInfo: _userInfo, + closure: _block + ).matches(expr, failureMessage: failureMessage) + } catch let error { + failureMessage.stringValue = "unexpected error thrown: <\(error)>" + return false + } } - @objc public func doesNotMatch(_ actualBlock: @escaping () -> NSObject!, failureMessage: FailureMessage, location: SourceLocation) -> Bool { + @objc public func doesNotMatch(_ actualBlock: @escaping () -> NSObject?, failureMessage: FailureMessage, location: SourceLocation) -> Bool { return !matches(actualBlock, failureMessage: failureMessage, location: location) } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAllOf.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAllOf.swift new file mode 100644 index 0000000..2b9eb21 --- /dev/null +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAllOf.swift @@ -0,0 +1,76 @@ +import Foundation + +/// A Nimble matcher that succeeds when the actual value matches with all of the matchers +/// provided in the variable list of matchers. +public func satisfyAllOf(_ matchers: U...) -> Predicate + where U: Matcher, U.ValueType == T { + return satisfyAllOf(matchers.map { $0.predicate }) +} + +internal func satisfyAllOf(_ predicates: [Predicate]) -> Predicate { + return Predicate.define { actualExpression in + var postfixMessages = [String]() + var matches = true + for predicate in predicates { + let result = try predicate.satisfies(actualExpression) + if result.toBoolean(expectation: .toNotMatch) { + matches = false + } + postfixMessages.append("{\(result.message.expectedMessage)}") + } + + var msg: ExpectationMessage + if let actualValue = try actualExpression.evaluate() { + msg = .expectedCustomValueTo( + "match all of: " + postfixMessages.joined(separator: ", and "), + "\(actualValue)" + ) + } else { + msg = .expectedActualValueTo( + "match all of: " + postfixMessages.joined(separator: ", and ") + ) + } + + return PredicateResult(bool: matches, message: msg) + } +} + +public func && (left: Predicate, right: Predicate) -> Predicate { + return satisfyAllOf(left, right) +} + +#if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) +extension NMBObjCMatcher { + @objc public class func satisfyAllOfMatcher(_ matchers: [NMBMatcher]) -> NMBPredicate { + return NMBPredicate { actualExpression in + if matchers.isEmpty { + return NMBPredicateResult( + status: NMBPredicateStatus.fail, + message: NMBExpectationMessage( + fail: "satisfyAllOf must be called with at least one matcher" + ) + ) + } + + var elementEvaluators = [Predicate]() + for matcher in matchers { + let elementEvaluator = Predicate { expression in + if let predicate = matcher as? NMBPredicate { + // swiftlint:disable:next line_length + return predicate.satisfies({ try expression.evaluate() }, location: actualExpression.location).toSwift() + } else { + let failureMessage = FailureMessage() + // swiftlint:disable:next line_length + let success = matcher.matches({ try! expression.evaluate() }, failureMessage: failureMessage, location: actualExpression.location) + return PredicateResult(bool: success, message: failureMessage.toExpectationMessage()) + } + } + + elementEvaluators.append(elementEvaluator) + } + + return try satisfyAllOf(elementEvaluators).satisfies(actualExpression).toObjectiveC() + } + } +} +#endif diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift index d02a0ff..57b15fd 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/SatisfyAnyOf.swift @@ -4,33 +4,11 @@ import Foundation /// provided in the variable list of matchers. public func satisfyAnyOf(_ matchers: U...) -> Predicate where U: Matcher, U.ValueType == T { - return satisfyAnyOf(matchers) -} - -/// Deprecated. Please use `satisfyAnyOf(_) -> Predicate` instead. -internal func satisfyAnyOf(_ matchers: [U]) -> Predicate - where U: Matcher, U.ValueType == T { - return NonNilMatcherFunc { actualExpression, failureMessage in - let postfixMessages = NSMutableArray() - var matches = false - for matcher in matchers { - if try matcher.matches(actualExpression, failureMessage: failureMessage) { - matches = true - } - postfixMessages.add(NSString(string: "{\(failureMessage.postfixMessage)}")) - } - - failureMessage.postfixMessage = "match one of: " + postfixMessages.componentsJoined(by: ", or ") - if let actualValue = try actualExpression.evaluate() { - failureMessage.actualValue = "\(actualValue)" - } - - return matches - }.predicate + return satisfyAnyOf(matchers.map { $0.predicate }) } internal func satisfyAnyOf(_ predicates: [Predicate]) -> Predicate { - return Predicate { actualExpression in + return Predicate.define { actualExpression in var postfixMessages = [String]() var matches = false for predicate in predicates { @@ -53,11 +31,8 @@ internal func satisfyAnyOf(_ predicates: [Predicate]) -> Predicate { ) } - return PredicateResult( - status: PredicateStatus(bool: matches), - message: msg - ) - }.requireNonNil + return PredicateResult(bool: matches, message: msg) + } } public func || (left: Predicate, right: Predicate) -> Predicate { @@ -90,7 +65,7 @@ extension NMBObjCMatcher { let elementEvaluator = Predicate { expression in if let predicate = matcher as? NMBPredicate { // swiftlint:disable:next line_length - return predicate.satisfies({ try! expression.evaluate() }, location: actualExpression.location).toSwift() + return predicate.satisfies({ try expression.evaluate() }, location: actualExpression.location).toSwift() } else { let failureMessage = FailureMessage() // swiftlint:disable:next line_length @@ -102,7 +77,7 @@ extension NMBObjCMatcher { elementEvaluators.append(elementEvaluator) } - return try! satisfyAnyOf(elementEvaluators).satisfies(actualExpression).toObjectiveC() + return try satisfyAnyOf(elementEvaluators).satisfies(actualExpression).toObjectiveC() } } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowAssertion.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowAssertion.swift index a530c60..035c744 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowAssertion.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowAssertion.swift @@ -1,13 +1,11 @@ import Foundation public func throwAssertion() -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in + return Predicate { actualExpression in #if arch(x86_64) && (os(macOS) || os(iOS) || os(tvOS) || os(watchOS)) && !SWIFT_PACKAGE - failureMessage.postfixMessage = "throw an assertion" - failureMessage.actualValue = nil - - var succeeded = true + let message = ExpectationMessage.expectedTo("throw an assertion") + var actualError: Error? let caughtException: BadInstructionException? = catchBadInstruction { #if os(tvOS) if !NimbleEnvironment.activeInstance.suppressTVOSAssertionWarning { @@ -27,21 +25,19 @@ public func throwAssertion() -> Predicate { #endif do { try actualExpression.evaluate() - } catch let error { - succeeded = false - failureMessage.postfixMessage += "; threw error instead <\(error)>" + } catch { + actualError = error } } - if !succeeded { - return false - } - - if caughtException == nil { - return false + if let actualError = actualError { + return PredicateResult( + bool: false, + message: message.appended(message: "; threw error instead <\(actualError)>") + ) + } else { + return PredicateResult(bool: caughtException != nil, message: message) } - - return true #elseif SWIFT_PACKAGE fatalError("The throwAssertion Nimble matcher does not currently support Swift CLI." + " You can silence this error by placing the test case inside an #if !SWIFT_PACKAGE" + diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowError.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowError.swift index 872ca5c..d294ba3 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowError.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/ThrowError.swift @@ -12,22 +12,19 @@ import Foundation /// nil arguments indicates that the matcher should not attempt to match against /// that parameter. public func throwError() -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - + return Predicate { actualExpression in var actualError: Error? do { _ = try actualExpression.evaluate() - } catch let catchedError { - actualError = catchedError + } catch { + actualError = error } - failureMessage.postfixMessage = "throw any error" if let actualError = actualError { - failureMessage.actualValue = "<\(actualError)>" + return PredicateResult(bool: true, message: .expectedCustomValueTo("throw any error", "<\(actualError)>")) } else { - failureMessage.actualValue = "no error" + return PredicateResult(bool: false, message: .expectedCustomValueTo("throw any error", "no error")) } - return actualError != nil } } @@ -43,15 +40,15 @@ public func throwError() -> Predicate { /// nil arguments indicates that the matcher should not attempt to match against /// that parameter. public func throwError(_ error: T, closure: ((Error) -> Void)? = nil) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - + return Predicate { actualExpression in var actualError: Error? do { _ = try actualExpression.evaluate() - } catch let catchedError { - actualError = catchedError + } catch { + actualError = error } + let failureMessage = FailureMessage() setFailureMessageForError( failureMessage, actualError: actualError, @@ -59,20 +56,23 @@ public func throwError(_ error: T, closure: ((Error) -> Void)? = nil) errorType: nil, closure: closure ) + var matches = false if let actualError = actualError, errorMatchesExpectedError(actualError, expectedError: error) { matches = true + if let closure = closure { let assertions = gatherFailingExpectations { closure(actualError) } let messages = assertions.map { $0.message } - if messages.count > 0 { + if !messages.isEmpty { matches = false } } } - return matches + + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) } } @@ -88,15 +88,15 @@ public func throwError(_ error: T, closure: ((Error) -> Void)? = nil) /// nil arguments indicates that the matcher should not attempt to match against /// that parameter. public func throwError(_ error: T, closure: ((T) -> Void)? = nil) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - + return Predicate { actualExpression in var actualError: Error? do { _ = try actualExpression.evaluate() - } catch let catchedError { - actualError = catchedError + } catch { + actualError = error } + let failureMessage = FailureMessage() setFailureMessageForError( failureMessage, actualError: actualError, @@ -104,6 +104,7 @@ public func throwError(_ error: T, closure: ((T) -> Void)? errorType: nil, closure: closure ) + var matches = false if let actualError = actualError as? T, error == actualError { matches = true @@ -113,12 +114,13 @@ public func throwError(_ error: T, closure: ((T) -> Void)? closure(actualError) } let messages = assertions.map { $0.message } - if messages.count > 0 { + if !messages.isEmpty { matches = false } } } - return matches + + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) } } @@ -136,15 +138,15 @@ public func throwError(_ error: T, closure: ((T) -> Void)? public func throwError( errorType: T.Type, closure: ((T) -> Void)? = nil) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - + return Predicate { actualExpression in var actualError: Error? do { _ = try actualExpression.evaluate() - } catch let catchedError { - actualError = catchedError + } catch { + actualError = error } + let failureMessage = FailureMessage() setFailureMessageForError( failureMessage, actualError: actualError, @@ -152,16 +154,18 @@ public func throwError( errorType: errorType, closure: closure ) + var matches = false if let actualError = actualError { matches = true + if let actualError = actualError as? T { if let closure = closure { let assertions = gatherFailingExpectations { closure(actualError) } let messages = assertions.map { $0.message } - if messages.count > 0 { + if !messages.isEmpty { matches = false } } @@ -176,14 +180,14 @@ public func throwError( } } let messages = assertions.map { $0.message } - if messages.count > 0 { + if !messages.isEmpty { matches = false } } } } - return matches + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) } } @@ -195,15 +199,15 @@ public func throwError( /// /// The closure only gets called when an error was thrown. public func throwError(closure: @escaping ((Error) -> Void)) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - + return Predicate { actualExpression in var actualError: Error? do { _ = try actualExpression.evaluate() - } catch let catchedError { - actualError = catchedError + } catch { + actualError = error } + let failureMessage = FailureMessage() setFailureMessageForError(failureMessage, actualError: actualError, closure: closure) var matches = false @@ -214,11 +218,12 @@ public func throwError(closure: @escaping ((Error) -> Void)) -> Predicate { closure(actualError) } let messages = assertions.map { $0.message } - if messages.count > 0 { + if !messages.isEmpty { matches = false } } - return matches + + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) } } @@ -230,15 +235,15 @@ public func throwError(closure: @escaping ((Error) -> Void)) -> Predicate { /// /// The closure only gets called when an error was thrown. public func throwError(closure: @escaping ((T) -> Void)) -> Predicate { - return Predicate.fromDeprecatedClosure { actualExpression, failureMessage in - + return Predicate { actualExpression in var actualError: Error? do { _ = try actualExpression.evaluate() - } catch let catchedError { - actualError = catchedError + } catch { + actualError = error } + let failureMessage = FailureMessage() setFailureMessageForError(failureMessage, actualError: actualError, closure: closure) var matches = false @@ -249,10 +254,11 @@ public func throwError(closure: @escaping ((T) -> Void)) -> Predicate< closure(actualError) } let messages = assertions.map { $0.message } - if messages.count > 0 { + if !messages.isEmpty { matches = false } } - return matches + + return PredicateResult(bool: matches, message: failureMessage.toExpectationMessage()) } } diff --git a/Example/Pods/Nimble/Sources/Nimble/Nimble.h b/Example/Pods/Nimble/Sources/Nimble/Nimble.h index bd45c5d..2bbc693 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Nimble.h +++ b/Example/Pods/Nimble/Sources/Nimble/Nimble.h @@ -3,7 +3,11 @@ #import "NMBStringify.h" #import "DSL.h" -#import "CwlPreconditionTesting.h" +#if TARGET_OS_TV + #import "CwlPreconditionTesting_POSIX.h" +#else + #import "CwlPreconditionTesting.h" +#endif FOUNDATION_EXPORT double NimbleVersionNumber; FOUNDATION_EXPORT const unsigned char NimbleVersionString[]; diff --git a/Example/Pods/Nimble/Sources/Nimble/Utils/Async.swift b/Example/Pods/Nimble/Sources/Nimble/Utils/Await.swift similarity index 98% rename from Example/Pods/Nimble/Sources/Nimble/Utils/Async.swift rename to Example/Pods/Nimble/Sources/Nimble/Utils/Await.swift index c77a8fc..cb672ad 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Utils/Async.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Utils/Await.swift @@ -263,7 +263,11 @@ internal class AwaitPromiseBuilder { self.trigger.timeoutSource.resume() while self.promise.asyncResult.isIncomplete() { // Stopping the run loop does not work unless we run only 1 mode + #if swift(>=4.2) + _ = RunLoop.current.run(mode: .default, before: .distantFuture) + #else _ = RunLoop.current.run(mode: .defaultRunLoopMode, before: .distantFuture) + #endif } self.trigger.timeoutSource.cancel() diff --git a/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift b/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift index cd6de20..7c4d273 100644 --- a/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift +++ b/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift @@ -144,7 +144,9 @@ extension Data: TestOutputStringConvertible { /// will return the result of constructing a string from the value. /// /// - SeeAlso: `TestOutputStringConvertible` -public func stringify(_ value: T) -> String { +public func stringify(_ value: T?) -> String { + guard let value = value else { return "nil" } + if let value = value as? TestOutputStringConvertible { return value.testDescription } @@ -156,14 +158,6 @@ public func stringify(_ value: T) -> String { return String(describing: value) } -/// -SeeAlso: `stringify(value: T)` -public func stringify(_ value: T?) -> String { - if let unboxed = value { - return stringify(unboxed) - } - return "nil" -} - #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) @objc public class NMBStringer: NSObject { @objc public class func stringify(_ obj: Any?) -> String { diff --git a/Example/Pods/Nimble/Sources/NimbleObjectiveC/CurrentTestCaseTracker.h b/Example/Pods/Nimble/Sources/NimbleObjectiveC/CurrentTestCaseTracker.h deleted file mode 100644 index 5d416e4..0000000 --- a/Example/Pods/Nimble/Sources/NimbleObjectiveC/CurrentTestCaseTracker.h +++ /dev/null @@ -1,9 +0,0 @@ -#import -#import - -SWIFT_CLASS("_TtC6Nimble22CurrentTestCaseTracker") -@interface CurrentTestCaseTracker : NSObject -+ (CurrentTestCaseTracker *)sharedInstance; -@end - -@interface CurrentTestCaseTracker (Register) @end diff --git a/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.h b/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.h index caa3f7c..9170541 100644 --- a/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.h +++ b/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.h @@ -350,6 +350,12 @@ NIMBLE_EXPORT id NMB_satisfyAnyOfWithMatchers(id matchers); #define satisfyAnyOf(...) NMB_satisfyAnyOf(__VA_ARGS__) #endif +NIMBLE_EXPORT id NMB_satisfyAllOfWithMatchers(id matchers); +#define NMB_satisfyAllOf(...) NMB_satisfyAllOfWithMatchers(@[__VA_ARGS__]) +#ifndef NIMBLE_DISABLE_SHORT_SYNTAX +#define satisfyAllOf(...) NMB_satisfyAllOf(__VA_ARGS__) +#endif + // In order to preserve breakpoint behavior despite using macros to fill in __FILE__ and __LINE__, // define a builder that populates __FILE__ and __LINE__, and returns a block that takes timeout // and action arguments. See https://github.com/Quick/Quick/pull/185 for details. diff --git a/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.m b/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.m index 5a145b8..670415b 100644 --- a/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.m +++ b/Example/Pods/Nimble/Sources/NimbleObjectiveC/DSL.m @@ -1,13 +1,10 @@ #import -#import - -SWIFT_CLASS("_TtC6Nimble7NMBWait") -@interface NMBWait : NSObject - -+ (void)untilTimeout:(NSTimeInterval)timeout file:(NSString *)file line:(NSUInteger)line action:(void (^ _Nonnull)(void (^ _Nonnull)(void)))action; -+ (void)untilFile:(NSString *)file line:(NSUInteger)line action:(void (^ _Nonnull)(void (^ _Nonnull)(void)))action; -@end +#if __has_include("Nimble-Swift.h") +#import "Nimble-Swift.h" +#else +#import +#endif NS_ASSUME_NONNULL_BEGIN @@ -141,6 +138,10 @@ NIMBLE_EXPORT void NMB_failWithMessage(NSString *msg, NSString *file, NSUInteger return [NMBObjCMatcher satisfyAnyOfMatcher:matchers]; } +NIMBLE_EXPORT id NMB_satisfyAllOfWithMatchers(id matchers) { + return [NMBObjCMatcher satisfyAllOfMatcher:matchers]; +} + NIMBLE_EXPORT NMBObjCRaiseExceptionMatcher *NMB_raiseException() { return [NMBObjCMatcher raiseExceptionMatcher]; } diff --git a/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBExceptionCapture.m b/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBExceptionCapture.m index 3381047..52684b7 100644 --- a/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBExceptionCapture.m +++ b/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBExceptionCapture.m @@ -16,7 +16,7 @@ - (nonnull instancetype)initWithHandler:(void(^ _Nullable)(NSException * _Nonnul return self; } -- (void)tryBlock:(void(^ _Nonnull)(void))unsafeBlock { +- (void)tryBlock:(__attribute__((noescape)) void(^ _Nonnull)(void))unsafeBlock { @try { unsafeBlock(); } diff --git a/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBStringify.m b/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBStringify.m index 329d39a..31a80d6 100644 --- a/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBStringify.m +++ b/Example/Pods/Nimble/Sources/NimbleObjectiveC/NMBStringify.m @@ -1,5 +1,10 @@ #import "NMBStringify.h" + +#if __has_include("Nimble-Swift.h") +#import "Nimble-Swift.h" +#else #import +#endif NSString *_Nonnull NMBStringify(id _Nullable anyObject) { return [NMBStringer stringify:anyObject]; diff --git a/Example/Pods/Nimble/Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m b/Example/Pods/Nimble/Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m index 35f26fd..fa5030a 100644 --- a/Example/Pods/Nimble/Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m +++ b/Example/Pods/Nimble/Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m @@ -1,7 +1,12 @@ -#import "CurrentTestCaseTracker.h" #import #import +#if __has_include("Nimble-Swift.h") +#import "Nimble-Swift.h" +#else +#import +#endif + #pragma mark - Method Swizzling /// Swaps the implementations between two instance methods. diff --git a/Example/Pods/Pods.xcodeproj/project.pbxproj b/Example/Pods/Pods.xcodeproj/project.pbxproj index 535751a..c7fc0ed 100644 --- a/Example/Pods/Pods.xcodeproj/project.pbxproj +++ b/Example/Pods/Pods.xcodeproj/project.pbxproj @@ -7,993 +7,989 @@ objects = { /* Begin PBXBuildFile section */ - 02B5E9732B0597CFAB3A04977462E2F0 /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1AED8B2F367F007DE27C353232621A0 /* Scan.swift */; }; - 033D909D194F75E1402F899400C78A02 /* RxScrollViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD211CCC9D8BF2F690E0D187EA7906A2 /* RxScrollViewDelegateProxy.swift */; }; - 03CAE65890BB7FB09CC6F53219272270 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 945431C7E81FB6A3EF55C8837FEB81AD /* SkipWhile.swift */; }; - 051B2AF789E6D4E648C099830025DED9 /* CwlCatchBadInstruction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8B2886769D33DCAE7CF2EF3974A249D /* CwlCatchBadInstruction.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 054F99AC8F403072E25EA85977E19907 /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E03678ADDF08214F94639FA5D89B128 /* Catch.swift */; }; - 065C1E50F1850D196EAC7EA9D52E2CED /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 227A8A4C1A3ED371CE69845F22921351 /* ImmediateSchedulerType.swift */; }; - 070D7ED4136F83B9B6E36D3918C3B02F /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC95D1F1BB7F31C3CDC058E0A3846AFD /* ElementAt.swift */; }; - 07243A21824E9FF1667ABBC70559AE36 /* Signal+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 558A1A95CFFB9B3C7710361433E9353E /* Signal+Subscription.swift */; }; - 08C8D3EDEDA4482B6998998529E9F006 /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = D98DFD65FB376C2C45CFC6A2619C90F5 /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0A2CA8B0DD7E300ABFCF1956E6B58248 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 115FCDD4D863C4FF466546CF475E9EC9 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0B02DA2E21C92C2C1FE02A4648C9A68E /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 805A9F1729B17E4539A6C7AC242F7A8B /* ConnectableObservableType.swift */; }; - 0C1995B7233390D300EA7CCFBDEC8C33 /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A274000F72FF57541406AC7960CD87EF /* RxCocoa.framework */; }; - 0C6738BAFB3381BF8A1D1309DB091415 /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBB6B17A694C360CADAD08AE86987740 /* ToArray.swift */; }; - 0DFE7676A1199A1FE7C0DB6C003E3704 /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46D6910763BBF5023722E47D5E00B3E4 /* ScheduledDisposable.swift */; }; - 0EDFFC1456DE0C6D1D4A78507C78065A /* RxSearchControllerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 583C2734B88559057BEB843D489843EA /* RxSearchControllerDelegateProxy.swift */; }; - 10044B7D0143BE19BD7210CC2C80AA1A /* UITabBarItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 496994DB1EF276978C5F413D263EC8AF /* UITabBarItem+Rx.swift */; }; - 10C4DE15505AFDD610A393CE37CFEB57 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 144696357E54A04EFB00706516B7034D /* Timer.swift */; }; - 111A2983CB1B41D3288BED3B60119F4B /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0483178AD77176A8F63FC830AC36EB29 /* ObservableConvertibleType.swift */; }; - 11E58F6808B6312D7E1223454F47896C /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9476EC51F6423243DBDA34C0FCB8B9D8 /* ExampleMetadata.swift */; }; - 120358F75C78CB226D764D203C21B3C1 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2EE1189288164D27E2B9E37875BE78E4 /* QuickSelectedTestSuiteBuilder.swift */; }; - 12D0413DEB38FA8F77735CC8478C9DC7 /* Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5AFC00E6CB824A807608266FD55AC04 /* Delay.swift */; }; - 130327450E0BBAB0D5C9BE12107D2DEE /* AsSingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 96237F60D32115944D11FAEDE3DFD70C /* AsSingle.swift */; }; - 14EDFC47AFCBE97249BA84FCFBE1FFF8 /* Driver+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91085C71FEBBDC47DBE9F3C7E926EDD6 /* Driver+Subscription.swift */; }; - 16409C737271C4F1D7FEEFB91E317D5A /* CwlPreconditionTesting.h in Headers */ = {isa = PBXBuildFile; fileRef = B57D143AA36A1619C4D71AD62B306B6F /* CwlPreconditionTesting.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 165C5C51B90F7C52C4A193E782A3081E /* _RXObjCRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = E262DFA4CB7F7C31A129FFC97EC1C8E4 /* _RXObjCRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 168D9A058738D6C9993A50713D2D6BAB /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61FDF3508AFE0DB30D335711551E096C /* Sample.swift */; }; - 16A82CD5C02B9F8B7FDC0C5DC1F617C9 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C67624D8EAC38AAF3F7A4284E7BF65 /* CombineLatest.swift */; }; - 17C8EE7DF3F57C8F99EAF63C6E61EA99 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52971FC37160BBDC4F53A59E3CED4640 /* FailureMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 18226777C9EBDEAFA894E62FA624E3B8 /* MKMapView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E97E65CA8D9D2C80F2734492EC621B /* MKMapView+Rx.swift */; }; - 188491029EAC3E10558C4113B3603105 /* RxMapViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AB67974FF59CCC1B1A5E5C732860F65 /* RxMapViewDataSourceType.swift */; }; - 1891BCA954DCC8439C36A1B65D5D8485 /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = E690D4F09A22782D87E7E3A1E06EBAF3 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 191F5B83D1A514CD9000A1CB3134729A /* UILabel+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FE4E60C245F830C0530C090540CB03D /* UILabel+Rx.swift */; }; - 19CEB2A5BBA8CE983F6F7DA76D2675AA /* Quick-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5754CC1461F5C35D6308D56E180623A3 /* Quick-dummy.m */; }; - 19D8EE71DC0C6323A0E8ADC390A6C56B /* ControlProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9579E1778815EA5C48C5F17FF1E4319 /* ControlProperty.swift */; }; - 1A199BFE8135113B5BE06B22FC6B4E72 /* RxCollectionViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = E67D99250A5D58A054A143239C4FD894 /* RxCollectionViewDelegateProxy.swift */; }; - 1A3E19B9F5EEB773C3BB61CA42F8BF62 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = F42730A1691BB3CA8A8A990328C2EAB1 /* DSL.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 1B6E5FDF2DDEBA2F86EBE293CB22B5F4 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = B76446F69B7C068232A0D748DB5EE4CD /* Configuration.swift */; }; - 1C2FBCCDBA46A862BA1D4A7D45AD0EB7 /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE7D397B09986FB847EF3167CDC8EE5D /* Producer.swift */; }; - 1C4B8FDC64271A4BB8637E3776E25BE7 /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C5D402BB30798F3CA846D2B8C1933C5 /* _RX.m */; }; - 1CA161CE87925C15BAAB99EFEDF70A01 /* NSLayoutConstraint+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CEF6C8DE7D801B88547CDA065132E9B /* NSLayoutConstraint+Rx.swift */; }; - 1CA36BC9589BC5AAD9FF6B70258D3802 /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 685F25BE8401BD72438B97602EEDC90B /* Generate.swift */; }; - 1CEE33E34944E4598636A83E8EF50DEE /* SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA9BAAE08DBE321F5E329124CDDE7AF4 /* SharedSequence.swift */; }; - 1DC861F26CD7451BD87B988701C330A0 /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 665BF7882CC230BA74282A1849AB48E7 /* BehaviorSubject.swift */; }; - 1DEC0993ADF2745023809DC0391D2A46 /* UIDatePicker+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4F764C4EBA9D0A08C111CAB975EF29A /* UIDatePicker+Rx.swift */; }; - 1E12D86CA056613202AB38CE7EFF40FE /* QuickSpecBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 2067D26322C781413DB62FD8F3B74DCE /* QuickSpecBase.m */; }; - 1E1CE28FFCCD7499620B47C910E9B9E9 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78AB29252FD5B0236814B95A280B22CF /* BeLogical.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 1F51554820168E15CCFF980700190667 /* UINavigationController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46390C887E39971D1DBA29720D0DDAC8 /* UINavigationController+Rx.swift */; }; - 1F6BADC06A3403937CEA4CF59B7EB550 /* _RXObjCRuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = D1744C00130D53BE5C17A181D84E98B4 /* _RXObjCRuntime.m */; }; - 1FAB8EF4278CEE8FEFBE196F6266085A /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 32F7E78966B04149B22530830D017093 /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 207051DB89DB593B430DB4440C040198 /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7E97F37210806017EF6597077123EE3 /* Empty.swift */; }; - 215B5C6C27E0C64FF0560139F229B6FE /* NSObject+Rx+KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B14285809ABA0C362E6336B9CB1362A /* NSObject+Rx+KVORepresentable.swift */; }; - 22E9F6FA56858A5F7A5D664E5968ECB0 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 63D0EC03C02EF7BC9C0E3F0F833F0914 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 232D688C4BFD686C6433AE1CE465D9D4 /* PrimitiveSequence+Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = D62A29417054DE8D5024DBA56AE967F5 /* PrimitiveSequence+Zip+arity.swift */; }; - 2464E38E34F8FEA5CFDB169122D5E432 /* String+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 714E92C83A62230A845499B4E4EB4957 /* String+Rx.swift */; }; - 25D1805055756CAA69A167CA03B2465C /* ContainElementSatisfying.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3710C729D3B5B8A08D5E14EB5A219C1F /* ContainElementSatisfying.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 25D7312BBE513DAB0ACBC1814DDC7C86 /* CwlDarwinDefinitions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29F39BAA4E579932EB14E50B51A25B34 /* CwlDarwinDefinitions.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 25DFD1F153F71481AC82A2C361FF0372 /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B909CCAA70E70FE69DC40071F5ED9FA /* Range.swift */; }; - 2670D7E09BC05F2986D147D11719F8F3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; - 268819487BE8080917EACC6F94481F9B /* Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3D4ECD4201403B0D96AF8C901801BE4 /* Window.swift */; }; - 26E5C06548DCD8DCE57D7921691B577D /* ObservableType+PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC46C5504A7C484198A54DD10B48F8FB /* ObservableType+PrimitiveSequence.swift */; }; - 27E5512CE04DC5EF16234719E26DDC65 /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE0E044EF15AECA4894E1D71CEB20B72 /* Concat.swift */; }; - 288B8AF9BDD88B32285EFDD43703AAC6 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89AFF538FCD9A19F1084D1E9137162EA /* RxCollectionViewReactiveArrayDataSource.swift */; }; - 290203D5476B3943E953F206E5F1F9AF /* Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = A56148FAA0E062EE2985201D7253549A /* Single.swift */; }; - 29786AC09AC91A30B22549AC7F389EBD /* UIAlertAction+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC727E707F7D3A1E2BBAF5F4FC68402E /* UIAlertAction+Rx.swift */; }; - 29A65FF7D1752DFFF87F5DC8F55CE859 /* ToSucceed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25141FBBD9E079F9611F072CF7AA0B3A /* ToSucceed.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 2A5805BED8161EF0719F2CF375A4937F /* SingleAsync.swift in Sources */ = {isa = PBXBuildFile; fileRef = D826CEC8BBDF2331BEA309C96CDF935C /* SingleAsync.swift */; }; - 2A5EF4015D76CC544AD01C19A78DA538 /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 152CC44D817E893567014F28F2A8B3D4 /* Cancelable.swift */; }; - 2AB76B3D97D69A400EB78F5CFEE7F17B /* UIActivityIndicatorView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3047E65DACE170A3CCAB5F2E81234A2 /* UIActivityIndicatorView+Rx.swift */; }; - 2AC6749AE15B1B2A3EB73E971EB689EA /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB5CFD10B2F19EA07889E2A72C792DF2 /* Platform.Darwin.swift */; }; - 2CBA6D896A15C4D44D488755258F0A5E /* AsyncSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD87DBECD847AA299386413D033022DC /* AsyncSubject.swift */; }; - 2D5C8FDF04B20BFABDF0421EC1480B7A /* _RXDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = C7AF12F27810E82F4CD319D2A741EB3F /* _RXDelegateProxy.m */; }; - 2E6730CD6DFCFE1212EDE5343F2E099B /* CwlCatchException.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1ACE41489DB3A3360D6CFFB08C37B3B /* CwlCatchException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 2F2DA5BA5AE1FB074F387E97115F47D5 /* mach_excServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 862CED0BD4031EB389AA892543A19016 /* mach_excServer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 30B5E337C5900489CA616222D0D76401 /* NSString+C99ExtendedIdentifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0172FFD9A1917E3709F5CCB3AB2860C /* NSString+C99ExtendedIdentifier.swift */; }; - 30BBDE457220AF09DC18DE27E7C2BC46 /* GroupBy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75253F3EC07B597551E10DECC25E378C /* GroupBy.swift */; }; - 30EE558EC8E61964D55AE4FF07D1EA42 /* UIButton+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C2DA45CEA673FC21C083C2927FF0B1F /* UIButton+Rx.swift */; }; - 311E51DF11C6D2AA6CEF63653F6AC00E /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB090E2B5AF1C023497B4FAEC78C3507 /* DispatchQueue+Extensions.swift */; }; - 31C39ED8CB1C9317F1F2840FC919662D /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7307BB95C98BD5D5372FEEAFAF24B83E /* PostNotification.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 32492AE2CE2E334C180DECC76D3BB30B /* World+DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = EC50316FF3AD849980E33CDC72915EF5 /* World+DSL.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 32B38992751B96F21324BFC9923BFCBD /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7EA46B0995E03D18F7222B330D580264 /* AssertionDispatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 331F79C045478607925C01CB582A8050 /* VirtualTimeConverterType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62A5E455DFC3C7783A444DFDB657633D /* VirtualTimeConverterType.swift */; }; - 3353656DE0EA030C3B6F942AE9421A0A /* HistoricalScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 251DD7B6B61122C954D8BF8A63F8D804 /* HistoricalScheduler.swift */; }; - 33599F3744192C389996BBC6D929F8E3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; - 36B970E4E39C66E7ADF83B2148F3C7D3 /* UISwitch+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 498F984E13F59098CCDD6DBCB5539479 /* UISwitch+Rx.swift */; }; - 36D947681DEE07CCD64A6B6FD1C41335 /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 370F79142856709ECF6492A4F15E95AD /* Skip.swift */; }; - 36EEE813A1EAEFE1FD7C0F10985428E5 /* BooleanDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2E2B76C468CBD5626BF6C28BE03B10F /* BooleanDisposable.swift */; }; - 37612AC01D1ED6F96BD560F3223A1022 /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 814656F4AAD86907CB39A86648347BF4 /* PriorityQueue.swift */; }; - 376781C0CADA2C12CAB3B742B20229A6 /* RxPickerViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 116F0698E3E2A84170169A5AE129E1C0 /* RxPickerViewDataSourceType.swift */; }; - 376BFE15AA17C0C11BAC42B7AE55691C /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 558001491502AC2CBD3CA5203CD87775 /* ErrorUtility.swift */; }; - 37C5AC3FE6711A1117819AC5A18EE5C4 /* CwlBadInstructionException.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE192962F86568262E1529732DA6A8CA /* CwlBadInstructionException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 38F17F4EF6C7FC21DDED39B2130F5C48 /* Completable+AndThen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65C7B5D92B8CCAB8033A0ABC92DF4DB8 /* Completable+AndThen.swift */; }; - 3A020AFD549EA3F99AD020B50CF7D615 /* Completable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51ADCF68BEC33CE866E47A24D524E375 /* Completable.swift */; }; - 3AABD415B93B3BE817007C8B3D7E5AC3 /* DelegateProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D88D8E466D4B89D4B4FF904C5E197D62 /* DelegateProxyType.swift */; }; - 3B3A88E074630B1EBC2139F4F70F0443 /* ThrowAssertion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AD39022A20BBAE807A1D975C2004959 /* ThrowAssertion.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 3B90C1DA23BF3B7AF89931D553596B88 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82065E9CE6D973729526A71DDBFCB401 /* XCTest.framework */; }; - 3C66D2692E811DAE57A244A67E7AC555 /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = F19AC48FEDB3BA6AF8FE9529CE6D17EA /* BeVoid.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 3CA104987C92F1680ACACCFDFA5B7A17 /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEFAAF7E9F47E68956EAC7271A658224 /* ConcurrentDispatchQueueScheduler.swift */; }; - 3D1A89FDD6B579BAA92AD398E5C019F9 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CDD70943774CB7A7C8E00852E1F3E1D /* EndWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 3E04D23B2995705A6106D41F3E3E4E33 /* ExpectationMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81DFD921DAD75CF8FB84414A154D95AC /* ExpectationMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 3EDEB204412923054F5AE75BB3A0A93B /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E9C78FEACF5FC55A6BB962CE4F20F41 /* XCTestSuite+QuickTestSuiteBuilder.m */; }; - 3F18B3E0415940B52952F443E2024A1A /* RetryWhen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3BCC88009BE3C09A42BC563E57448E40 /* RetryWhen.swift */; }; - 3FB3004E9F63EFB983F2FBE84BDC4988 /* PublishRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A06CA04009BA3ABBABC614A7E3F2A48 /* PublishRelay.swift */; }; - 3FBDF6A92F5322975F8CA60443100C2E /* VirtualTimeScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D961DC8E8A50ABBE4CC435C399F5CB00 /* VirtualTimeScheduler.swift */; }; - 4009FA11E7E0C1E8834A03012CE08E84 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; - 4108AACA9E52903DCF04049B47CF5F1A /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 433391E9AF88209EBFFDD78205344CF6 /* Reduce.swift */; }; - 420B3CB189B6A0D12A3CDBD3826C75D8 /* Bag+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE93A2D6F22CA8620AA0B49FB0715D05 /* Bag+Rx.swift */; }; - 4226D75F1915DE9550A5E056B8072900 /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F1A62FC59ABBB03FAE6C6A6BA450FB5D /* RxSwift-dummy.m */; }; - 42319CB720A999A0DC9D1B88C754B099 /* DispatchQueueConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77E496CE7A0A08BF17009BA7868B1FAE /* DispatchQueueConfiguration.swift */; }; - 427E3E062F9EDEC1DA1102A90A648762 /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = A652599C47E184F4B0B46E1FBD692B46 /* TailRecursiveSink.swift */; }; - 432D327DB8A3D8F1B2E45DC644761946 /* NSObject+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 386457DD48BDC9656528107A90ED0530 /* NSObject+Rx.swift */; }; - 43C1BEDEEB63E70ADF046529C1CBB554 /* Observable+Bind.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EB3E07B350DE8D7BBD26C8C62B7B702 /* Observable+Bind.swift */; }; - 445C0A1EA9E4B3B22B3CB483C2123A83 /* UINavigationItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE84C615DAAD4E1ED3B745BF3356B689 /* UINavigationItem+Rx.swift */; }; - 45410BB095E0B3ED8A101D10939A770A /* PublishRelay+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 253AD2AEBB5A90108E2929FCBCDA2379 /* PublishRelay+Signal.swift */; }; - 45F183320C688F9978649F30ABE21D09 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEBC6AFEF0A66E5087F852670A345F7F /* MatchError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 4646C574FD0095E86DF31C7F5481626E /* UIViewController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = E29D5D4824C9856A6B7C28E541944A60 /* UIViewController+Rx.swift */; }; - 48DD2650E215FC493EF12B88A98F98B1 /* PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = C841D618563B14DA47FEA508DBE63582 /* PrimitiveSequence.swift */; }; - 4929D102C11C8148212D4DE1F6CC93D2 /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93BBC400CC85DE5D2650D81C283D9A03 /* DisposeBag.swift */; }; - 4A68FDA236889487857E87031714FD1D /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = F28BED4343F8FA81F82EF5FA367795DF /* ExampleHooks.swift */; }; - 4AA2EB7E44FD9CE28C9722558DDAE4CB /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = F79CA0F1552F29704BFDC61338F07B89 /* Platform.Linux.swift */; }; - 4B48ED3B3CCE7E56EE03FDCC14BB2B80 /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = 169B2291E0D934B678F9C1C68045625A /* Closures.swift */; }; - 4BF42525733808050BB91AD8483C45AA /* RxMutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8A4842CBFA7068E62AE495B55C55142 /* RxMutableBox.swift */; }; - 4C46F8CDFCCA21E5CFE3294323477D3E /* RxMKMapView-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A3F89BACBA0565D23C19D9D5E2F0BD7B /* RxMKMapView-dummy.m */; }; - 4CDACD8A5A6CFB688838AA988E7D1E43 /* Nimble-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B7428E9F3D61B9AF6AB5AB22347346E3 /* Nimble-dummy.m */; }; - 4D68C35510D1E911C9B89840FC4B777F /* mach_excServer.c in Sources */ = {isa = PBXBuildFile; fileRef = B0D15BF367D8A3D807EFAED3F51575F1 /* mach_excServer.c */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 4DED817A1C5A0E3B06B985A5CCD72FDE /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B82317712385F7D92D281FC47554A21 /* CurrentThreadScheduler.swift */; }; - 4E25C9575A1F4B388BF7396F7219068E /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = A571CCD9266AB50DCF1E25EBF5277950 /* SubjectType.swift */; }; - 4F22C00916720C7E7CDEB0629E3EE130 /* UIPageControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 957E7D877A5A3886509B6F6573C3DEFA /* UIPageControl+Rx.swift */; }; - 4FABBF5CA8F735F48035BE4144613CB7 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78C7DA7E00FB7E636CD9D088DD7EE03A /* Expression.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 50F303330C6EE159A80375EAF3F906C5 /* UIImageView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A9D63BC61FE0E20ED4151D6CD8BD66A /* UIImageView+Rx.swift */; }; - 52FEFAF44ACCD2B8E1F063573FE1E19D /* Pods-RxMKMapView_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CB0CA6C1F67FC572849D778F5498C628 /* Pods-RxMKMapView_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 531C54B1C10BA0F17A2B7D81D02BD390 /* CwlCatchException.h in Headers */ = {isa = PBXBuildFile; fileRef = 11C4A659AD1B01DFB232AF7222E604E3 /* CwlCatchException.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 53A03672C8C43076B4D1CFCDE0151B6B /* UIView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44E5D383177818B4127793BC2B5F9E1D /* UIView+Rx.swift */; }; - 5495E416E691A0E32DBE01DF9EF87EB7 /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0530079358B5DCDDDC4C93092EE5D858 /* ObserverBase.swift */; }; - 54CC2049C937561A469575AF9E6A6FE9 /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDA21331307F6BC97EBB0FE8BB2C98AB /* NimbleEnvironment.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 5539F9A6DE9D81FC6D4DE82A595AD8F8 /* SwitchIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD19B105ADEA68D5E1058E9FE61F2034 /* SwitchIfEmpty.swift */; }; - 5543B3E8C80775CCC14601F4304409F4 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 301B0104D1C04CC62450FE9C03219079 /* World+DSL.swift */; }; - 5556FF7849B7EDD8D96674C5F05FDE56 /* UIGestureRecognizer+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D90C1ABBBAD56893C7DB2E677BC13536 /* UIGestureRecognizer+Rx.swift */; }; - 55D297356033394EB0C444124ED68350 /* Behavior.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF7EB982830684F103E11BA7E20DCA72 /* Behavior.swift */; }; - 55E0A4E27CDB6F28542F3CC9A69D2719 /* UITextView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44262172E60408FC23B672E14D385D8B /* UITextView+Rx.swift */; }; - 55EA2C7AB87C757D6517D1B7597CA118 /* URLSession+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5C768152213D26D933F6E1A4DDC2505 /* URLSession+Rx.swift */; }; - 563B692C9C6DEB931EF5EFB5AC21EEC3 /* SharedSequence+Operators+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD0CC2F73AF3F13116ACD0582E8B2D92 /* SharedSequence+Operators+arity.swift */; }; - 5738CE6D2659E741DB7EDBEC6E265D0B /* BehaviorRelay+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 099C943CD9C31D8F4D64479E883BC0B3 /* BehaviorRelay+Driver.swift */; }; - 58C0125D796A97541FDE3414001D8A92 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E3CCACA78959F7384451E05A84AEFFD /* BeEmpty.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 58C2252B18BCCE79FB6CD73E8D281785 /* RxTabBarControllerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 029F35A3A4206B22440DE533717C30EC /* RxTabBarControllerDelegateProxy.swift */; }; - 58D964317DFBB10F54A273CB12843017 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04162F721AF8AD212C41F3FEA95E2369 /* BeGreaterThanOrEqualTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 5975574B707D2DD349975FAAA376A488 /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E60A1D2523C5C575663424194ED9911 /* Throttle.swift */; }; - 59B995065824CC9CE019C12ED2030FC6 /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 924287C8646A0D0EC296DB4255646FEF /* QCKDSL.m */; }; - 5A235F2CA3F6CFD1B164B0211CDFB875 /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CC3493D83BE5557C53657580DB58623 /* DispatchQueue+Extensions.swift */; }; - 5AB9DB61D62D8BF7B1C734B373F361E7 /* CurrentTestCaseTracker.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F41F5A05848EDFA89D8D07737DCA436 /* CurrentTestCaseTracker.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 5B437CDE415B119A53E50D5270EC6A90 /* HistoricalSchedulerTimeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 814052C8EE5C7AD772B1AA7DAECC15E2 /* HistoricalSchedulerTimeConverter.swift */; }; - 5B751C27A96415D28EA6A43300736570 /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */; }; - 5B8AC984403B9320794C77D2B56222AF /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A633EA875E5B84F3A818570F2BA122E /* Signal.swift */; }; - 5BF274C2DEF332ED79B1CD15CFEC3498 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = B447BB9137524194FFD27B36D396BEE3 /* ThrowError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 5D5535765EC68FC187F833DFB79C8817 /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47914A3D309D51A727B04CB0DECDC7CA /* NSBundle+CurrentTestBundle.swift */; }; - 5D94FFA4AABCD97FB7130E66556C6045 /* AddRef.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58EF15C797FD8FD33005BA693FCDB336 /* AddRef.swift */; }; - 5DB11BB7DE298F0823D749D52C20E3D3 /* URL+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC9A52317D5AA22126C0E8909809A21 /* URL+FileName.swift */; }; - 5DBCC0E4C72649C9A39A00D40D944DDA /* Nimble-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DE1A5E36A4C12755B1657A3CC293AB9 /* Nimble-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 5E003339094F0C77CDE3F5E2271C852D /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E57E08CA6EBED35E331C68A3D687349 /* StartWith.swift */; }; - 5EA864457AC66DACE42BDC1590707D72 /* Diff.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE045BFF5346BAA58CD446CD391D31DE /* Diff.swift */; }; - 5EAA833B0A84778937D46D724ACC0317 /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEF2BF1B1CBC615E2093662933CD8259 /* LockOwnerType.swift */; }; - 5ED93B5FF0DD2512C4B68C808588E19E /* RxTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 477BB159C92D213532285145AAF0573B /* RxTarget.swift */; }; - 5EF9CE17E69596EDEDCB2629051011C9 /* _RXKVOObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 6BB9E0028F0C11F8FD8E595D31EF03E6 /* _RXKVOObserver.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 5FAD910A2D000006C40DD49581737EF6 /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D9A90F3E740BDF96004B2E9E48EB6E5 /* Event.swift */; }; - 6020D7A56C785CC895924354A5452CED /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA543E09895041426BA274DA75B401C7 /* PriorityQueue.swift */; }; - 614BB3FB18A45E7C582F46AB418B0CFE /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AB51F110F0DE676BFFE92AE7100842A /* ObservableType.swift */; }; - 61EE0B8020A1482B8C6CD020506F49F5 /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 139CB5A47CB745ACDF311987E2AD89C9 /* Rx.swift */; }; - 62D26CE7BA3AEDB4E5E87218FDCBBA90 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97B5E5C3FB1B972B7E112ECFFA804EFC /* Functional.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 62E4220DF2A7DC5763B78C187CE3C601 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = 63A04681E37F2095466ADFF20300820E /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 63287118FFF5EC3EA2FAF4D58D1509BD /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D83DB2B16DC9AC0CB8E79403FAEC326 /* Optional.swift */; }; - 634838F7FEB2E9B8EF83042219DFC364 /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BCF29EF950A5941054DCE6A58A24E4D /* RxCocoaObjCRuntimeError+Extensions.swift */; }; - 64819C8D4EBD3386377D0F84DC909F8B /* CwlCatchException.m in Sources */ = {isa = PBXBuildFile; fileRef = 62F8CACDC441B2BB5AC919E81ECBCF16 /* CwlCatchException.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 65811EB444768F24C41D1E39D3D1BF11 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 016FEE6F7F071000009BD87395819C02 /* InfiniteSequence.swift */; }; - 65985C142EE8A74E6E56D5E30A39C79C /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4CE007196AB1BFF0712CBC0A94C9929 /* Expectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 661ABD83566919F3EB6A722C822AC133 /* UITabBarController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3788C33CF260C125B9D08ED094D83F2 /* UITabBarController+Rx.swift */; }; - 66AFAB4D747E0E7B770DFBD8837E8236 /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1E230FCBCCB68DF1C1BA0AD309F27BD /* OperationQueueScheduler.swift */; }; - 66BFE24B632C676127E34F7955D7C39C /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 553621C4A66AE02CBCE39FC0397830AD /* World.swift */; }; - 673A0AF2FD4BD747E278BE7D578B42BF /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86859151A6CAC1344CE78208BDB4E906 /* RecursiveScheduler.swift */; }; - 675394DA54CA87CD3BC760057CA9E093 /* RxCollectionViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72CF80DB9282D71E8154F8CD2ACC1AE8 /* RxCollectionViewDataSourceType.swift */; }; - 68F20AD8FC3F041111B4E3F51D035553 /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C27774BF248064DFDC5229103927A121 /* AnyObserver.swift */; }; - 68FD03C72D719117929696B62038B3D7 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E2A04F668F9350483CEFA4F0F0A0931 /* NMBExpectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 690600B6EADE141D4DAA6F5C54BB510B /* UIScrollView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 891A4A4115EA50F96505A1F3B09E7ABF /* UIScrollView+Rx.swift */; }; - 6AAA385B3AC2BD704DFA7C22E58F220F /* Maybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB98F1A167765955B8A235B99A385BEE /* Maybe.swift */; }; - 6BB0EBEB4730B94AC07458E398D142C8 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BB34244DCA9CBC0DB7E428927C9E7EF /* MatcherProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 6CB4890B9BF5F846E980634AFE83917D /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 48FFA974F3704B71D8E3EB41EF127707 /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 6CEAF87E4BCC1AC37C5C1CB0466CC585 /* DefaultIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8AB03E817495FFDEDB41624FD221815 /* DefaultIfEmpty.swift */; }; - 6D155B44BBD24531D312A43D82048305 /* RxCocoa-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 327EC1B1B2BFE8D5ED96891135DAFD37 /* RxCocoa-dummy.m */; }; - 6D506214CAE2B707C44C488C72AEC553 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = F96AE5158D0CE3DB02A0B971857659A9 /* Never.swift */; }; - 6D83237A7987B647C45F583491DB0D5F /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CD2A8678DD1CEBF05B7F92630968BC2 /* SubscribeOn.swift */; }; - 6D8C4AD823F376FDC331630EAC9B9EED /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C063A260A86461A46250D1D6C8D11E /* Bag.swift */; }; - 6E53DAB80506570AB5465C2353249709 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; - 7122A200088745F416691B663A17C25B /* ShareReplayScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50511AEDC96DAB1E5A6C377E14E283CB /* ShareReplayScope.swift */; }; - 715B3248813BA0526A30AEDCC3137EC5 /* AsMaybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C99795FADB3F63EC877CB2EFAAE94D5 /* AsMaybe.swift */; }; - 719588FA0A5FAC127C6DB763A88BD85C /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = BB5B06C66C874684B7EF486003BF1D0C /* QuickSpec.m */; }; - 724B0E3D84B958E66A98BB5AAFF98CBD /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2F3095B060FA2F83CA04D6B30DC276E /* ConcurrentMainScheduler.swift */; }; - 73B274A0814F151E92CA576842AA508B /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F38F566681FD9B2CE15931C2B8C736E1 /* CompositeDisposable.swift */; }; - 73BC5AC2ECDB8722E085F14B53E0D24E /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 324D90587D85CFBBDE6894DD96AE46DB /* AssertionRecorder.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 74E0AFCE55116282B4FCF5D273607E7B /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = 48669948351EA70727E1250A589009C0 /* QuickConfiguration.m */; }; - 75538A8B20C7A20AF3D54BBF35D56FFE /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AE228AD2E38A4FAE5FF5C16DB6448F0 /* BeLessThanOrEqual.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 75ABB48E3C30C2D736C3D05D6FD566A8 /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35FC4C7DD779F99E331F44A460E3544F /* BeNil.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 77DA9915F02023ADA79C3B881824C1BA /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E95DAF86C4A70B758F8E93CA3089255 /* WithLatestFrom.swift */; }; - 7858F778DF020C048A1559A7BEB17BCC /* RxTableViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73283C12FA1A7D7D0710C829545078A2 /* RxTableViewReactiveArrayDataSource.swift */; }; - 78AB9827FB5C73DBD5A81AFD1E1236BE /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C33EC8430831BA889CB532A54AC8244 /* Take.swift */; }; - 78D31A6F5D395E1953421A20A8606019 /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 37B88DC4FDAE36C38892507CBCEE30FA /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 78E2F6A5E4FFE94298E7A9E051FE9DB7 /* Reactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 758523E3FE31881A16C5E6B4553C19B8 /* Reactive.swift */; }; - 7AB20447ACA18716CC90E53393233776 /* CombineLatest+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 455401C62B06911224A105574B5690E5 /* CombineLatest+Collection.swift */; }; - 7AEB5A0CF4E452DD15F0F7CAF8925DAF /* RefCountDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D91E34F049D6E11AD355CCC63B919995 /* RefCountDisposable.swift */; }; - 7B53A98FFB00D0EED937BF4696DD19F6 /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EC0581C7C28835B8E7AA69A894DE090 /* SerialDispatchQueueScheduler.swift */; }; - 7B70091DFF9B022094083786F41CE847 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF653DC663CF4108D0B990C920EF41A3 /* Queue.swift */; }; - 7BFEB2E723B7520B3EF1FE06F6AD9D1A /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85FA1A7D93CC5BB0C206E6996E2C2433 /* MainScheduler.swift */; }; - 7CE4BAD086E23007BCE482A0FEC2D2EF /* KVORepresentable+Swift.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABC15EDA177DD98CC78BA8A394562985 /* KVORepresentable+Swift.swift */; }; - 7DF00D317AB743EF7634BAE2C501E7A5 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9852A1EEEF7A28212F62209A7FBF1F3A /* Platform.Darwin.swift */; }; - 7DF7F84AB96E84194B54C79AB406D386 /* RxPickerViewAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A81D469378CADB29EA7A1F0C1056EF2 /* RxPickerViewAdapter.swift */; }; - 7E0C9AE6468A5DF91F0F4C7A387D725C /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = D14B307FAC65737BD0093A181B2AF599 /* BeAKindOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 7E658A233A80CD8FF45931314B2CAF14 /* RxCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = E6EE130C5281C309EB3506766E4069F8 /* RxCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7F3B1CE5E55EC749F1EE3744D825D48E /* Timeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = F685FC799C67EB22382C4BDB34954B61 /* Timeout.swift */; }; - 80755D557FB60245F6AC845F2D336F64 /* World.h in Headers */ = {isa = PBXBuildFile; fileRef = C9CFBEE51BB3538D6C9B2B2116312103 /* World.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 8137F97ECEF2503B684F0796BC5D69BA /* RxCocoa-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3A32D6137F01423ECA026F8366021B34 /* RxCocoa-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 814607AA36BF49295481620E9A1F9F4D /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32EAD46E56F125DF6D52EFC046098662 /* Buffer.swift */; }; - 8170866E2ACE0ACFBC6D90081354EC65 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B0E1AA09AACF3A9899A3CD45AE90A9 /* Stringers.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 82EBDBBDF2BADA595ABE6903F51EE4E8 /* Quick-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C6594E46D7E70D2788F165C0BF82E7D /* Quick-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 830A732E8716E19F8890EF04BF60A3B8 /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF98C97466E135490CE5CD36A0C6F551 /* SynchronizedDisposeType.swift */; }; - 8318BC476C5F980ED4A1AE6266A4C0CE /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = 768E16AE9EC22A3BE7D60B3ADABD821C /* SuiteHooks.swift */; }; - 833EC60CEE883DBB76D1E18A2288EFA1 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 043D0BB798CBDA5A68FB541177EFC70F /* Deprecated.swift */; }; - 836CF9AB97637DD239AC1C619B5609F7 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C57E49B200B4E7221AE8949194C1495 /* Disposable.swift */; }; - 83B4F8DE5145B965EBEA368F122EC3DB /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F350916BC86789D5680E5E52EF8F4F5 /* RecursiveLock.swift */; }; - 84279E9538114DCA742D941B3DA66C8F /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBCCA9A6AD43380A6BD89E0239DFD8C7 /* Callsite.swift */; }; - 8467E32375423CB6552059C40BC44F54 /* InvocableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF5DAEEFEA3740C6201A407C858EF94A /* InvocableType.swift */; }; - 84C205300C2906F59ED455044BD97531 /* UIBarButtonItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6E65161CF387528851E8C521FFE50AC /* UIBarButtonItem+Rx.swift */; }; - 850E0780F3FDF475FF30A9E79F0C61A8 /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4D3BFF06A14F74078EFA17409647103 /* Switch.swift */; }; - 85EE1B34B87B05FC5943797056984E6E /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E7D56FA5287A829BBFAD35C909DCE01 /* Zip+arity.swift */; }; - 86DF2A9A24E6E870DEDCCA884DB91304 /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEB7B1CA7C5AB4A9E6807256058CAFC5 /* TakeUntil.swift */; }; - 872C15D5BEA414ADB324404B346A2FD5 /* RxTableViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE801367E5B85C33185CD0993145F5AF /* RxTableViewDataSourceType.swift */; }; - 8808BCF22DAA9AE545700989DE3A6AFD /* UIPickerView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFD2149068F4DDA03FD10AE90B2D833A /* UIPickerView+Rx.swift */; }; - 889DBA68652B1E70FB0FEE53E033C560 /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA92011810E77667604CBBC1FC537EEE /* Observable.swift */; }; - 8910ECD5326CF7EC5DCEA03D9DBE9437 /* KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = FBB1A49901D34A588213ECDECB9C16E2 /* KVORepresentable.swift */; }; - 8A290EBB9B0B234D59B3920BEDBF7DA3 /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 068643287D514302C771559AF3A01A25 /* BinaryDisposable.swift */; }; - 8B55BD430033027AD5FF22D630DD9F62 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = A7C53DF69B9DE44FEB49EA2D3241A536 /* DSL.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 8BBADBD319095457C3AB3FF4A3F57D88 /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = F06FFD9A86E0E8AA1C1125070EE965F1 /* PublishSubject.swift */; }; - 8C2494F950BB9E2C59BB90CFBF3DD136 /* UIApplication+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E86C556F77655777D2805FF5C0C03BC /* UIApplication+Rx.swift */; }; - 8CC1317A5B4ABA27AD267C6B3C0D43EC /* TextInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = 874A960D7617995C859E49B556D5F51C /* TextInput.swift */; }; - 8CC8471C7ECC1C1E62FA1B17A04F76AF /* ScheduledItemType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D327564BFFF92815A12AC57DA269DB13 /* ScheduledItemType.swift */; }; - 8E210AC0562E691E85E8B47340C2FA64 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A030045B8EC1E540A7B03927405B495 /* DSL.swift */; }; - 90DF3B7CB40A055BE0D07CB9575BC899 /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0D3932ABFC7BD1955E16B19C9E1D057 /* Repeat.swift */; }; - 9200E1D16B8E5E26E05864A7587EEF16 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CA7DD46F9F6B2A336562328A16FA871 /* Filter.swift */; }; - 92218539BEFC4373B5286328DC16418A /* RxTextStorageDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D2006DDC5884938917D4A89714E1581 /* RxTextStorageDelegateProxy.swift */; }; - 9291D90AC499CABB538A521ED70EC5AD /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 878512E41658FAFB49EA35BD4F33C574 /* Merge.swift */; }; - 92DAB11B882E972FBD7467862F29A33A /* ObservableConvertibleType+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02CE19702EAD07C4E33B56F843F72111 /* ObservableConvertibleType+Driver.swift */; }; - 94749C40BEF77A8735D536318E8E4A78 /* Debounce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 931A5A2E099F8AE47E18A97D9231D75C /* Debounce.swift */; }; - 96132E7432F8DD315A88A07C6B4F9C72 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = CED240D5C017E89F3B2626244533CCCE /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 97909F4CE823E60E8BA8B5D05D67C1A4 /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02988BC93D9967750FAF6BBBE9AD7634 /* SingleAssignmentDisposable.swift */; }; - 988EED125395950177DC14AF9BC87D8D /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAB51B60862977C5D3DECC697FA40517 /* HaveCount.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - 989872D913E6F8595DED464EF791AA8B /* NSTextStorage+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 207AC3AA76C4BF05705CC81C11DD9C8D /* NSTextStorage+Rx.swift */; }; - 9A924C4AED797F3326FD01E98897D857 /* First.swift in Sources */ = {isa = PBXBuildFile; fileRef = 902D697D618A6C490374EF9396570056 /* First.swift */; }; - 9BE19AB16C42DB2F6F38355597232FC4 /* NotificationCenter+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA7C1B525AAAE6F78C5CBB7BA9354AA7 /* NotificationCenter+Rx.swift */; }; - 9C4661BE9CA7430541C323B7EE2AFEC5 /* ItemEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7EFC9C334D796EB62DF48C0E80221C35 /* ItemEvents.swift */; }; - 9CE2108AB2D09414F057A131A5B0EDD7 /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E07AB021FF08A5D341845358A914D429 /* SubscriptionDisposable.swift */; }; - 9D080F8C44EA90DC2116C94760408050 /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B8BEEEB9CAF5EBB78114DB27625DC0 /* Zip.swift */; }; - 9E8C77C0D11A4E80ACB215E9773D9746 /* UICollectionView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D9E89D347036D4A511E9E4D7DB79C81 /* UICollectionView+Rx.swift */; }; - 9ED9FA037C13B1BEAC74A1E58BD3BF77 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 258BD36B3C289DE7AFA07CA1B1726EE8 /* Queue.swift */; }; - 9EEDB3D636BE55ED97224F5BB4D0837A /* ControlEvent+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA10C92C2C5749CC91648FE4F7870A02 /* ControlEvent+Driver.swift */; }; - 9F4D91DC8F751A7B5F1C67BB60A8D9BC /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C2162488EAB56A536BBC0F785008C7C /* TakeLast.swift */; }; - 9F615639B388468647C14B99865BBFB0 /* DelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F7047CE52781642F2B5C9AB22BA3649 /* DelegateProxy.swift */; }; - A12B02EFCFB425F2B3BF808109C8CE72 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1F168E0DFFB7740C939F4506D2FA456 /* Bag.swift */; }; - A4536840AD7B01A5C4BC76C1F6AD292B /* ObservableConvertibleType+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7089BC64BF1D7051E521E36CF25D4B0 /* ObservableConvertibleType+Signal.swift */; }; - A453F56B53818194E3A62266963D9445 /* UISearchBar+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFC8B093AF9AEAADBD4AF83F2362B87F /* UISearchBar+Rx.swift */; }; - A458D1AA0CBB49E1954FC86B565F8DB5 /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36AFA0E7AE82DF6C5FFC866BFED5CF06 /* SynchronizedUnsubscribeType.swift */; }; - A61ADD214AA182EEB2AC95EA3F3D658F /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = 04614A9A7FA13F38655C84C5C4E0860B /* XCTestObservationCenter+Register.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - A73970FD1201B2E49C86DEEED24D2F3C /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56A6D97BAF61A1A104113F9FD71D535D /* ExampleGroup.swift */; }; - A74537420FF0CEDC6B9E82E1DC4C2B15 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = A08B8657306177414C16C70EA354FC0E /* Contain.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - A78BEE4441FBBF42E917B47841C48FC8 /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */; }; - A7B6D98FEAA1931FF2FB7836C5179B56 /* RxCollectionViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC54D032243C80F4BA6B82CF676A37C /* RxCollectionViewDataSourceProxy.swift */; }; - A7C13C62E4116CA964A3E82179092AD5 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71A08A2EB528805986D1A5967DA3801C /* NMBObjCMatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - A9400C8C0CE699F620B88F23B3F0A0B9 /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8473B5E81C342A913BBB4FB7652E293F /* HooksPhase.swift */; }; - AA93EDD19583D44663BE8D642AE4FE17 /* RxPickerViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 955C6D61DD30E20779E86E44805A0AFD /* RxPickerViewDelegateProxy.swift */; }; - ACC433AD262C91648FAFB7FC1ADC4E70 /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4BA030A64A35E4591D77224D663B04B /* AnonymousDisposable.swift */; }; - ADEE95A3A188BE3095990E20766BCCC8 /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B05E9AB740461C1E7775036E8821F47 /* DSL+Wait.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - AE4DA49ECD693BF384CD824DF02D7C6E /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 2AB74A6FEC3427F893E750ECFC13B65B /* NMBStringify.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - AE9165EC7715A14F2864DA55609B499C /* UITabBar+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DB77F3F946991AD9BCAB8E0E7F5F04D /* UITabBar+Rx.swift */; }; - AF1174085D9BC5D50FCE0480E9C2BE94 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = D99370DB4BDD9D8DC3FFC7D5EB410BF0 /* BeGreaterThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - AF551FB7ED02F2334DAEA55E5F02026B /* Create.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7D8F52F2881F1C87818A2E62431BA1C9 /* Create.swift */; }; - B06E65F7471D7C4EE941CC47E5A00FCE /* Dematerialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = E02B7E4B600D4656DCCBBCC640ED66CC /* Dematerialize.swift */; }; - B09A3D49308144DB7D92FB3BC995056F /* RxMapViewReactiveDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC336950819B11A5CBA26E7399C6C12C /* RxMapViewReactiveDataSource.swift */; }; - B0CF62471AFB291B6A1D20434B88D574 /* UIControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 608FD17987CA6CE0402DB2E3526337DA /* UIControl+Rx.swift */; }; - B102ABE4E54B71B3D2C2118E2782FAB9 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 737E7AD2BE799368AD9B47968E9A5FC3 /* BeLessThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - B194A227A09455B5260FDD80CF60EB5E /* ObservableType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14F7E817FB7985F36BBDAB50DC280685 /* ObservableType+Extensions.swift */; }; - B21F20A6FA2F54967DD3E5DA231AD687 /* ControlProperty+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3481076E8C6BAF22A36840EFA65F0564 /* ControlProperty+Driver.swift */; }; - B2C151B20635A480E1937E3D2B509BB4 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F0ED35C39E94FD5E6C4894B314AAC1E /* Async.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - B37D0376FCEB3133F44CF5F4416C58E1 /* CwlMachBadInstructionHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = D8C46C374603018723EC4DB860A416EF /* CwlMachBadInstructionHandler.h */; settings = {ATTRIBUTES = (Public, ); }; }; - B412B3027577F4608786BC4FD16F9716 /* ControlEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01E7DA590659794AA3EEBFC00E8CF786 /* ControlEvent.swift */; }; - B41E5EBE1B0FEA1886E769397BDEF2B2 /* NSObject+Rx+RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AA86006F1D4D9A34E04AC2A830CBA04 /* NSObject+Rx+RawRepresentable.swift */; }; - B43CEBD41AFDE48AC49832C0C32C5184 /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 122CF935A2759C8765E19CB28F0A2FAD /* Map.swift */; }; - B5963EC68C31BC5419F08DDF3D69AD58 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB93CFAFEA71BCB6FFC4A22D375AC010 /* Deprecated.swift */; }; - B6313B9F4D5B977C17595F370B8091CB /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BDC0440F78CB32EE63FEBDE2FD6203D /* Example.swift */; }; - B7061425C1B01D5BCE2C362B09ACE922 /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03BDB00063F34BF54EBEBF19A3288A59 /* Just.swift */; }; - B747AD45A9F770D3EF38C8EE764C5400 /* UIRefreshControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33B3F6082E3BF4CEA7C18ADBA2390471 /* UIRefreshControl+Rx.swift */; }; - B7E7573918FA460B6393838CF7BAB9B5 /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 489C4B3C3F2FC7A9E9C688A76FF8DD89 /* SerialDisposable.swift */; }; - B91DC12674C2E3DADC86A48835F044EC /* _RXKVOObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = 9FB01F563C3EA975B5A0675C5DD36EB8 /* _RXKVOObserver.m */; }; - BA8EF621971178E54C65106561A7BE7F /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD56CF99FC41CA61D411D9D05124F7BD /* Error.swift */; }; - BADE7B2AF0B08D41497900E71F2605CB /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73A6E3BEA63319A2731C8AEE23AAE433 /* Filter.swift */; }; - BBB9278D0E01CA1C97D5FA65EACE0BCD /* RxWebViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1AA6EDCABD45CE0FDEAF058108D2C400 /* RxWebViewDelegateProxy.swift */; }; - BBF5DCDDBEE545193F71FDB60F0769CB /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 972441D2E3CE486131DE3AAC96F678BC /* DisposeBase.swift */; }; - BC7B9761322C74FA27969BD55833BA47 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61C6E264AEA879DFAB9E8E58A86DCE7C /* Errors.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - BEB807AEC6DEDA96AC3805E3AAED2650 /* RxTextViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52D8929363C4C99063F9D0606DC397F5 /* RxTextViewDelegateProxy.swift */; }; - BF1A15510EB150A6122C643AE28BC235 /* SchedulerType+SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DBB855A3B1D1F5969DA657388EE2C5 /* SchedulerType+SharedSequence.swift */; }; - BF3B7218901760A6226C7F6346BEF454 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E53CEFA2B35C7A8F79577753D370334 /* BeCloseTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - BFB25A8B1F021C44F3D4785F0DC18ECC /* Pods-RxMKMapView_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D0F930F267191374A81003DEE27E1112 /* Pods-RxMKMapView_Example-dummy.m */; }; - C001A21B4E1AFF3C1153B72C6F77AF2B /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE350D439D52333E72C1308BB6F77043 /* Multicast.swift */; }; - C06FA100C1BBEE34B863BCB8A65359C1 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = D852717C8AE0D28350FFE206D214C5D0 /* MatcherFunc.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - C1D862177DC2999FAC710AC25F253BD0 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99EED87C68586BAE5B0200F232A4A9C3 /* BeAnInstanceOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - C3B1A7E0024A06554CBE973A69DFEDA2 /* CwlMachBadInstructionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = B1A9117E5D0CE4CF348BFD78D9D1F31B /* CwlMachBadInstructionHandler.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - C55AE4C8E25FD46B20EBDA9C29171D85 /* UISearchController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A587C61758C7C5A3467652C14C3E30F /* UISearchController+Rx.swift */; }; - C7424C178F23FFC47DAFEDA8ACC80F0C /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94097DA6D25CCFE36180FD643A81B927 /* SchedulerServices+Emulation.swift */; }; - C82734905C1031EBF7311B5E74882C4F /* SharedSequence+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2DDCD78703AE1313891D9D988FB8080 /* SharedSequence+Operators.swift */; }; - C8320A6164C870ADDB8A855ADEBBBDC9 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5246F03ED6ECB6B69169F3F91950014 /* Equal.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - C9A2674EC0B61614AC5E1C9F8118548C /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 667024656DD711CB4992A56F39870366 /* ObserverType.swift */; }; - C9BEBB04EFF182058EE85BE04F6A01E7 /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC0705AB662BAB855B6424E548CBECC3 /* Logging.swift */; }; - CA8E5BB6718D7DCF88AA0FB1C01D78D9 /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48DDCCAD6E72E86D9A1379D6F6F2670B /* Deferred.swift */; }; - CB75C5D22B6EC4A0F17F43655EDC61EA /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = D294F2E3312FC267A32943A719A51F9A /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CB7EDBEADC38A5536BB5B989B56AD25B /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47E10C7AA777DF62C2BFB3262C0C926F /* DelaySubscription.swift */; }; - CCDAF11E7AF29E720C587B038145F622 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = C023AA55F1E0E2698A0CBC3CAD4B01E8 /* BeginWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - CD700780ECE9A28B0ACFD21C276C7C91 /* Pods-RxMKMapView_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F2ECCD2C6810E03F1556F72CB91B355F /* Pods-RxMKMapView_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CE0039D46E0F5D331B4B0C8B23FCDBE0 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 401EBBD7261F3052A2F80BC12C3517A0 /* QuickTestSuite.swift */; }; - CF3A76DEA89A40EE2DA20BBEB72DAC92 /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC3D1B3B70469F5B5FD09666F34F9C00 /* Platform.Linux.swift */; }; - CF55697859D633C852C3586384647EB6 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9093A2BB80F28E1CECE1A649C00A6386 /* NimbleXCTestHandler.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - CFE49DF084F98B5B1E22D1F6B93A1381 /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 479804D1592E08C864DDB8CCAC347BF6 /* ScheduledItem.swift */; }; - D1503C762F7E5D2510DCE2FBF2F89D08 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; - D18C1D5B6F43AF4E4E3C1F418CC23F20 /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAEE4555B830A1793109AC43477B042C /* SchedulerType.swift */; }; - D2C47ACB269C40C400F21DA098EA765F /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D2E86A2AF889E8BDDB1507CA883F010 /* SkipUntil.swift */; }; - D339B4B419850EEE628E324CC59F0867 /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1518CCF71369F22D2AA2C43E57B8257 /* SwiftSupport.swift */; }; - D4AE5528A34B578C5C9DC2B741F8C3A0 /* RxSearchBarDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61F42556C008D26774DA09529DD4A6E2 /* RxSearchBarDelegateProxy.swift */; }; - D6B76CC83E5F67FF2AAF0C952B27F644 /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 774DCF88A5DF058FC7AC566AAF82351B /* NopDisposable.swift */; }; - D7F8421DF187BCFF0F85D932A521411A /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0359BDDD17BF5B2C23C016A8B9CB344D /* Lock.swift */; }; - D8240773C6EECDF2700ACB3B73E853E5 /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2AFCBAA70B3C226D5CF2027F1BFAE8E4 /* Sink.swift */; }; - D8A5604280B45C9BBD96D4196672F976 /* Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 696616F053771DE51955229EF94AA46B /* Driver.swift */; }; - D8CFB5F1D7C338ECC754109706D5DD89 /* RxTableViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A853FD548CFFBB8A0A0DCA51E1DDA56 /* RxTableViewDelegateProxy.swift */; }; - DB142ACCD2B072D2D39C9B95B949FB9F /* UITextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9AE0F3CBEEC24D01ACFB8A3925A9F5C /* UITextField+Rx.swift */; }; - DCA7D7D81BF3676C81139BB23478C3C5 /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 110B770FAC289A843DF9E2E2D7588CA1 /* ObserveOn.swift */; }; - DDB01B378549A50346B2B8E1746EC017 /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18E8C16AB2C1CA85C166A915AC666AFC /* AnonymousObserver.swift */; }; - DDCBE43B6A87F63D57FBB2BF912550A1 /* Materialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = E198066C3A4ED653A18988B06065DFA4 /* Materialize.swift */; }; - DDD67DAA6C53DA583A3BC0B5AFEBFBCB /* RxMKMapViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAA0F8B6D9293C836A063D1535877EDB /* RxMKMapViewDelegateProxy.swift */; }; - DE7A5FACE54E887BF0FD5E29C60E0372 /* ControlTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 567388BA2CC77049E907FE712FAC3869 /* ControlTarget.swift */; }; - DEF34030603552BD671F8668DD3895C8 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0BAFCCDEA87BAFF7D9B7196D08C8990 /* Sequence.swift */; }; - DF026F6F406A4FB6CEA63B0A4B9E27DD /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBB82C26620A9137CFFA5B1D221D75C0 /* AllPass.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - DFA422D52B556DB3DC0A54CD650A17CE /* GroupedObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F461A4CF792509C72D3AF65B091773B2 /* GroupedObservable.swift */; }; - E082DD04665F7D15007AA30F8088D7D8 /* UIProgressView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A7968940016C6FA4283EB45783DE8A1 /* UIProgressView+Rx.swift */; }; - E1080A3EBB2381E6F88C0C5B54B57743 /* Binder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E2F9F0EEF308FEF2586BC8A7BF540A2 /* Binder.swift */; }; - E13FB1B2BB43218B6F4E3A28C1EADC21 /* Enumerated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32D24D1C2AD20D7CE2090BCD1238164F /* Enumerated.swift */; }; - E2D67BD8BDCA235C3C4A54A6322B3FD4 /* UITableView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 487B10BAB561F90B664AEBDEB8DFE6FF /* UITableView+Rx.swift */; }; - E4A6B0ECB28F6B586CEF82C9F29ED880 /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 15C723F204203B0B8E46729339C8363F /* TakeWhile.swift */; }; - E60C961AF9452140D816FDB61688B4D0 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E93EECC7EE13D7268137BD2AB36A863 /* Errors.swift */; }; - E673EBC58E438ACF37C96193CCB47894 /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6463F67A637E319F0A71134FA95AB00 /* Using.swift */; }; - E7C00FE346C8B71656975C3C9C649969 /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = A73E433F05EB82AC3A0581FE2EC1B455 /* DistinctUntilChanged.swift */; }; - E9F0305B761E6FDE8B17A2AC7E511EB4 /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7CDF12C2219BC0D97F49ACE16B9FE65 /* ReplaySubject.swift */; }; - EA479D18E2CEA9D74D013118F08DA805 /* RxNavigationControllerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = D143C7FA6B24193658B3E0E08F162FA6 /* RxNavigationControllerDelegateProxy.swift */; }; - EAAA05EBBC34225C0DB45797712E24A1 /* AsyncMatcherWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3933053011E7DD7D5D8FCA704FC7EF0E /* AsyncMatcherWrapper.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - EAE2AAE5EB826B38978692984BB22FDD /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1340EAFB759A984DAC970E1081920D3A /* RaisesException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - EB3A73071ABA60E77E0704649637D8BD /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB9EAD10DD7ED6F3B6F7162945F358C2 /* SatisfyAnyOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - EBD322C3BAFA8F8E5929EF4358F9B8A9 /* BehaviorRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DEFF509F71C1682460B451E189DB9B2 /* BehaviorRelay.swift */; }; - EBF5FB862D1C2E580C28F50164A0C952 /* QuickSpecBase.h in Headers */ = {isa = PBXBuildFile; fileRef = A2BA9246E1EC802D520D87FC64911D74 /* QuickSpecBase.h */; settings = {ATTRIBUTES = (Project, ); }; }; - EC00CA766947E28DDDB5DF458427173C /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 146CF57EDC1C85BF328EC841E7F4489A /* Amb.swift */; }; - ECAA76EB1B9B3EC4EB65B1BA68E6099C /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = EE15E6EB4D4518674E9AE0466581D876 /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; - ED7E150D8BFCCDBFFE5616731E61EA1B /* UIStepper+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F8E124EDB42DD4D43558C285C520F87 /* UIStepper+Rx.swift */; }; - EF8548E0C37E8888D9DDC11ED89D3568 /* Predicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC65B27586A8B826BB260506A804F879 /* Predicate.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - EFACA8C94C20A2A09778EFFE0365638E /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2DAD79BA608678B8CB1E2BFA30BF5FD /* Debug.swift */; }; - EFEB67076B4B208B86E90ABEE904F4BB /* UISegmentedControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E3A1744B1890284C2E4897E6BA1D29E /* UISegmentedControl+Rx.swift */; }; - F006D6913B1439AFF7151B8DBB20BEEB /* Pods-RxMKMapView_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 223BC94AE1974B36CE76001D116138D9 /* Pods-RxMKMapView_Tests-dummy.m */; }; - F09EE1E230FDF32E88B4C78A2A98AAF4 /* Disposables.swift in Sources */ = {isa = PBXBuildFile; fileRef = 614AE9A4B3902A29071694917230F292 /* Disposables.swift */; }; - F1B3E29C80D94651EC2ED01815B67885 /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9383DAC6DCDB4356CAA89ED20FB33DD /* SynchronizedOnType.swift */; }; - F219020C831376060EFDA66C521A2EE2 /* UISlider+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE0C28C934F5F9A40D2C0B8B869FEDBF /* UISlider+Rx.swift */; }; - F28003B228B82B7E1497D4F41F55A31E /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFF8A44ACE22FDEC693E5B9CCD1DDFFE /* Match.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - F34E8F109AFA8C14BC8E4BFA9731DAF7 /* Zip+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = E00D1FF7878B06D99E9275F3D8E908F1 /* Zip+Collection.swift */; }; - F38DA63BA53B2547EAAE701E425F172F /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70A86F469531DA7C462B200288B75495 /* RecursiveLock.swift */; }; - F3BAA36614ABDBC0538B0DEA99CF80A0 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C87222437F122A38335C0459BC45B71 /* SourceLocation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - F3C44E8DD6C463E1B01A714C555C7A4D /* RxCocoaRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 55C64D6599D19B730A5C34F21E61C1B9 /* RxCocoaRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F494CBFA97AAE43A569EB76855A4CB88 /* RxMKMapView-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 41691C743EA064C8CD80072EF55CBB1D /* RxMKMapView-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F4BD249C60F21F5E0F7C1FAC8A5BC2AF /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1572436C33BEA5E9B33EA6B23A74F020 /* BeIdenticalTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - F4ED52E0C4D1766236A1A35E5F9110B4 /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B0E2FD10BBD783BC8BB0CFAC9335473 /* AsyncLock.swift */; }; - F65732E73DF27888169397FAD5CB065A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; - F818CDF171EEF5138794AFE6B8E07F2A /* SectionedViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D37CB271CA4BD9F1A6ED8D70C295171F /* SectionedViewDataSourceType.swift */; }; - F8DE5129ABA82B3B4B81CFA35CB7D876 /* InvocableScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D2068627C724957CF45E36A46A5783D /* InvocableScheduledItem.swift */; }; - F9649DD59BAEE88C6864EEFE73ECA88C /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 450023DC5E8881E249923D0A22A2ED54 /* AdapterProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; }; - F9A496507C1AFD3279B37F215E2AD552 /* RxTableViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D7D3CC792721153228E688E7172FED9 /* RxTableViewDataSourceProxy.swift */; }; - FA351A3C13B3B4872A8A0F67727EC18B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; - FA450081B36AE5621AB5A66DC0E08470 /* RxPickerViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6B5F5C0755F68EFD33156DB0A8A1B5D /* RxPickerViewDataSourceProxy.swift */; }; - FB433A84B0A557CD5E5948A8B6705024 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = F73443156E476B3956F95260DF052B66 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; - FC802A979E803CF5FBE2FEB05EA40ED4 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3730BEAD9686D2575C192FF69BF9F987 /* InfiniteSequence.swift */; }; - FDC1C1EA1A61703F14AE4B0FCA6F5F72 /* UIWebView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9C590A978EEE5C27123A8AABD27BB0C /* UIWebView+Rx.swift */; }; - FE0995F58A1EC8B060F3E3C20BBF119F /* KVORepresentable+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA81BCEA6AF602EEA9F2BAB8012F90F0 /* KVORepresentable+CoreGraphics.swift */; }; - FE71D9655A9F555C5FB729E0B500DB0C /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = C646D82FBAAB4D9AFC6ED52C4989931F /* CombineLatest+arity.swift */; }; - FEE02B6543EE459339029D5DF3F19709 /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD35B4506BF614608E933B842250211E /* Do.swift */; }; - FEF4AEDC96D2440742C4E47AAF6C7FF6 /* RxTabBarDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7BB609EE6076DD15A5DA4DB4CD51605 /* RxTabBarDelegateProxy.swift */; }; - FFF75C5AE2C6538AD89FB04D46178B26 /* RxCocoa.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B4305DFC18F5027927DD61853B9C9FE /* RxCocoa.swift */; }; + 00C8D087DD7EF353D55DD77637F308D7 /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CAA16858B925845A9D8E4D826A5BDCE /* DisposeBase.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 02AC8D34AE02E82A7867F77290FFAD05 /* Diff.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE045BFF5346BAA58CD446CD391D31DE /* Diff.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 036ECA29CC4260CB95D9EA40F80CF95B /* SwitchIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = A233930662243AF420DDFB375E9C0AD3 /* SwitchIfEmpty.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0398F99B4D13425A84D8DB83D378F9C5 /* RxTableViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8288D934E350F7A1D8B0F66C78A93853 /* RxTableViewDataSourceType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 05FAA4BB47143605A6640AA767242A86 /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2786DA0F20DFFC602DA12FDC816C99F5 /* NMBExpectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 071C8AD4DA1062C748FCC5BC0BE8E978 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; + 07CE7C117D65E7628DD19BAE4A24A0E2 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30BF4CBF3FAFC83E7CB0FE0DE9D473C6 /* BeLessThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 07ED52D72AE81B0C634F9BEE87CC5845 /* RxCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 2B15EFCC09A94956CEC909F8482C96F1 /* RxCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 08E35C6CB104C0F728DB9966850E3F00 /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = CCE149A75517B9BAC4046B5A94C2DD8B /* WithLatestFrom.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 090CD165D6B0B1A7066007D8440FFCFE /* Predicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 830D0F26DF2746E44FD37958E0FE1226 /* Predicate.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 09278839958CB988AD0056902500C26B /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC24ADC01268A21B3F5D66AD744372E6 /* Scan.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0A32AA6B7FB6252A9FA7DCF5211B449A /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 33B4FE38EE28C875086021E5305DC4B4 /* DSL.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0A79B85766D4B9E9183457016F8DFD99 /* RxTableViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 15BEDA3EE636F4C6CD2BF70A3FD94233 /* RxTableViewDataSourceProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0ACAD78D5F4C989E3AC3D13C86962031 /* UIWebView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74C786EEE20F1C80B2FA9A4BD3C7F25F /* UIWebView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0AE808488F895F83752D7F93E926C1A8 /* VirtualTimeScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 731B4F68ACCAAFC7B8ED6E265659C877 /* VirtualTimeScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0BCDDF123B975B37EBA38FC7F81598AC /* ControlTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 307122F62A859DA24E32BC1B46143337 /* ControlTarget.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0C07FB0CF733EC61046C90023BCB8FBF /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14DB604B4EECDF20C82F54653BADFEEB /* MatchError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0D8F9344F9CB22A58A26AD787AD6E06A /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 890C0DEFF1E8A8EE93E03E97FA5ADF13 /* RecursiveLock.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0EDC64EFD601562B6B8130D07038F750 /* ToSucceed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02326CBBDB838B8BEBD3F5F02D71AA3A /* ToSucceed.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0F912A767F4C9FA6F5C1E3EADE759F54 /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = B888DEE8D839198B12F11D80BFECAB89 /* Deferred.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0FDC2B01F8B2FD83DB8E861FC9E4C54E /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 572F38D19834280FF6F628F9AF190AE7 /* Stringers.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1058EADDEC8E41E31EAB9F1FBCD62E6A /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57AEC5350629DE0B21611B68E5F14519 /* Disposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1191E66C999F7C88874A7910B01A5F8D /* Completable+AndThen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C9AA83A750DE6B0C11697EC35E9A7BF /* Completable+AndThen.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1197DCAD51EE432BCF885633EB02FD6C /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 881C5ADE13E141A5F23D799E76ED889B /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 12E7140F7417A38D2FB6D9FC695297AE /* UITabBar+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC3B22ABF47CF20C18886898E642C8D9 /* UITabBar+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 13028A13498863EA3F67F05D4783D21A /* NSLayoutConstraint+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C8A4CE6042D97E5EDFEE056CFBC626 /* NSLayoutConstraint+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1310E2D45F708FBBB1666D298FB7EA2B /* UITextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 96E67CCCCD451885CABBEEE8D9703278 /* UITextField+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 13B41651161139B2A6392EFAA21173C2 /* QuickTestSuite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EB0814CCABD7BE039B8D8650A8A90AB /* QuickTestSuite.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1417699AA0911122604B708E76F525C0 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88A2E9A7159B34C738A85DC0158BBA91 /* FailureMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 146B334A4E94750A972BBBB482011BC0 /* ObservableConvertibleType+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A900D0995A38FB4CD0CF575304812A8 /* ObservableConvertibleType+Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1565CC740E8EBC32FFE6C54089BE0533 /* ControlEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85082E2E44BEF56913C71063EA3D42CE /* ControlEvent.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 16B73B43634ABB83AB49CF1AD90A1BCE /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DCAE01566D05413838AB436C8F4C232 /* BeLessThanOrEqual.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 179C58EBF0917C09BC80D8C94F6144AC /* CwlCatchException.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B140051A6DA66B2C4EF046BBB66F00 /* CwlCatchException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1B0407BFE0B5137F6EE3B28D24F5EF70 /* RxCollectionViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 260439C993AF59865677277853A7F95A /* RxCollectionViewDataSourceType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1D092104F2A3711D2B36A1D0EBBB4525 /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24DC40F49E6992DF322A0817F7977DD0 /* RxCocoaObjCRuntimeError+Extensions.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1D7BF207CA868C1BBFB0250681FEB248 /* QuickSelectedTestSuiteBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D76CF3BFC1838C9A5EB96FCA35FFFF4 /* QuickSelectedTestSuiteBuilder.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1E154DEAE26A628C56FD9A1B3FD6E494 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; + 1E4403CA3EDDD22E3A3683EC77F71423 /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5BE55FC62D9D797E81DDE202A07AC7FB /* Switch.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1E8C6C8FAC08C50644A0C8DCBAAD96F6 /* AsSingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0A49A3F9965CCAD26D88E1450056DC3 /* AsSingle.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1EEA072D28DF96B910F22D28C05D2B5A /* Enumerated.swift in Sources */ = {isa = PBXBuildFile; fileRef = C70DAE3EE830B80628E402AE5B840BBB /* Enumerated.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1F46A0D7F14CFDA079422BB37EB2CD6A /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC0AC4AD887A6759EDB3B904BECC09AB /* SchedulerServices+Emulation.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 1F61FE59D21AF0F2E30712ACA4FAD2F3 /* RefCountDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FC3273E108D95DEE5D3330C001587F6 /* RefCountDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 201D861CB4169D509084DE2C9663FE62 /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E8A92E6244A7662724C4AD3F4B7F4BE /* ObservableType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 206453ACC8F9D23002FB9CA716740451 /* UINavigationController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD5B126E47DBFD10BD108550CD07831F /* UINavigationController+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 22DCDA67EF4CE6AF501B364B67DAC59A /* RxTabBarControllerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = F098AD914E2E11D8BC2DB9C594432B06 /* RxTabBarControllerDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2371FBA1346BC5FE8CF523141FD0E623 /* World+DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 628439AF7C85B2234013AAC7C107CD7E /* World+DSL.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 23B261FC6D7FFA8CFB0A040232563AC2 /* SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5B39F976972D8C0A3381368B40AB807 /* SharedSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 247C8B2021F483F1C215E44A7A5C9FCF /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9905BB7C9F72F3D6445C20E88B63F80F /* InfiniteSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 26DBF69A369ABE0CD02DFB18FCD8DABE /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5FA965F644570220D6AE69415011301 /* EndWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 26F555760EDC3784FEE463A43ADE6C90 /* KVORepresentable+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80C4F5E673F60AF10F095CF14134F42A /* KVORepresentable+CoreGraphics.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2747311035B4779E58A5FAB1FA822D81 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = D138D57D085D48DAA44D89CCA5AD576B /* BeGreaterThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 277208446BD3C322CA39411A47B80D35 /* QCKDSL.h in Headers */ = {isa = PBXBuildFile; fileRef = F32A22DCB5D240BFF748881FD18E45DB /* QCKDSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 28FCE8B73D5CB39633FF7411B9EA132D /* Await.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61B8A7B384D65DFD164E86FB52B8F7FA /* Await.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 293B52439E29B182500967A89E2C30C8 /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07F8139733E9154A10E0FFC92A486961 /* Take.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 29594F7FA2976B7AA435AD65459D2232 /* UISegmentedControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB6417888D8009B03906DBE0721337F5 /* UISegmentedControl+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 29EAF2C22B1C58F8F72820860DD08EEF /* RxPickerViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F69D713ED4270EA3018BCB97063A769 /* RxPickerViewDataSourceType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2AB10F7032AE760CBA0EE69DADC5EE67 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 631DAE9E8B0643E251CB2D5E3A98C2BD /* Platform.Darwin.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2AF7950CA8756950823FC8B6CEFCE6AB /* ObservableConvertibleType+SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CEF0314318F70A0A8C902BA09D04BCB /* ObservableConvertibleType+SharedSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2B41D688AB9690AC80FAB43385822E71 /* Timeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8BE17D1CFBF021C7C4EFB2248E1159B0 /* Timeout.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2B52DF857C77B9FABF3CC53CAB6315DA /* Quick.h in Headers */ = {isa = PBXBuildFile; fileRef = F2973EEF523B127641A76906B0424D83 /* Quick.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2C3D01526B1E763CA28EA479E0927C05 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; + 2EF56FC3662BE6A5EC90D294FB5597B1 /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1B12EB600667E215DE7B5A7160CC087 /* NimbleEnvironment.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2F35DD2BA6D11C197563C61F57123849 /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6199F81C0FB02061D823DE0E8AB0E11 /* LockOwnerType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 313A3BAA918111DF057CF764CD4A9B76 /* World.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B8F4FB1138857B735DC3A320C9A815A /* World.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 31B3672FE0A9C1DAD7244E4334BD9D60 /* ThrowAssertion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49F6D7BC491FCB95062E772AF1190544 /* ThrowAssertion.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3329B4ADF9072746E18145D51E22FD46 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = D324FC52BDCEDAABE61952715A8235BE /* XCTestSuite+QuickTestSuiteBuilder.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 335AEDFB726ACE6876BC2B62C051ED46 /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44FCF50E368001F7BA4AC14ED2F15F1F /* ToArray.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 33F87C55AFB54199DBE9743711EC8233 /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = BCBED18A19F27288633594DA3F2F107C /* SkipUntil.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 340ABD311325A710D271E6B1C73A6149 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = CADE9270136EB2D1A0BD9A6FCBB731A4 /* MatcherFunc.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 34C33DDB3CD9F255ED83D082B4BB13AB /* UIDatePicker+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EFF7FC247E47B91133A8F9F895A5DCA /* UIDatePicker+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 35ED4A179BA8E8187A74DA8399D4CFE9 /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80E35052412A18A9A4D952424A4A3B81 /* SubjectType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 36351015A75EFC7F9FF18A1B82C5596C /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45CE5745C3EEABCF3FF4034C6C0A2F6F /* Event.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 36551F879C786DF8D8FC533902BFD3E8 /* UIStepper+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78351120373699B62CB1FAF292769E6C /* UIStepper+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 36B221C28AD7BDBD18968C1FF49D50BB /* UISearchBar+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04D146242EF31855D4A52A303A187AC8 /* UISearchBar+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3818533A48577AFACCF2AD50F2D98A00 /* Signal+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1236A4F5945334BD89EF144473EC067 /* Signal+Subscription.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 39B90BA29BEB66641A66C7EEDF424651 /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */; }; + 3A9A32730355EED2B76FCE5F458F4289 /* Binder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E198234093BB392FD9FECB17E55714D /* Binder.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3ACEDE10EA460C798227DAD3D28E38EE /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = 1F2ED28BD966D1AD7BD9F9AABD0AD783 /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3AF09E2420F4C806AFC92EAE8303E992 /* ControlEvent+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84F9867906160C9EE7D6679249BB248D /* ControlEvent+Signal.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3B0ECAAE039C484C222047C7C5DDF406 /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2C0FE65B9FB9799661D7C2AEB03B022 /* Functional.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3B7A5E70F0D1FA76F11FD67C2FB6D4BB /* Create.swift in Sources */ = {isa = PBXBuildFile; fileRef = A940D9EB23DF60AAC3A6B31BB3891946 /* Create.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3BF195315BB176E2611A563F951D2FB9 /* UIPickerView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B578A9C952AF9C5FE32AF8F8B3016B43 /* UIPickerView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3D0838F6D3EFAF3A57EE58245FEF0228 /* UIGestureRecognizer+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F7277B79BB3F1258520CE33AED546A0 /* UIGestureRecognizer+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3D2E8F943FB699F5A29219302C86D7E2 /* RxSearchControllerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BA4C025E1027196EF72A8C943211879 /* RxSearchControllerDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3D6CAA319C7143706A467C81D9D5C2A4 /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C7FC29913FA43267814D022E2CEB879 /* SingleAssignmentDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3D6CD5D2AAF704156B2A577DEDEE457D /* QuickSpecBase.m in Sources */ = {isa = PBXBuildFile; fileRef = B7358CA57A3DC30C139498036B270B2C /* QuickSpecBase.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3DE6A638FA70E53228D51F1EA64FBC23 /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = B055CDC0149E206B3A92F0F9BEFCE7A4 /* Throttle.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 400FA546C01621882DBCC7BFF3E58042 /* HooksPhase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43D197B84AA0304E7DAB262696FAEDAC /* HooksPhase.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 402DB262EAF00653A5A573C879F46C0B /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9B3A624F469A553D746225332BDD762 /* BeGreaterThanOrEqualTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4099E5DDC3E8F1F91F56945A53273B8A /* Quick-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4CCCE6C6987C3E4B71483F41E759920D /* Quick-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 40B1DEA40744FE29F62ACF99DA6D4803 /* RxTableViewDataSourcePrefetchingProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1135346899906CCEA94EEB4B305AEF57 /* RxTableViewDataSourcePrefetchingProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4287E89D0CFC8036A261640C15CEC20D /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F63EDF5792426A70F6D3C2102241574 /* Empty.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 42BC6495DF9B726937EEAD67DDD524FF /* RxMutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC5E58411F56A1BB542626AAAB6C5CBF /* RxMutableBox.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 435C74395D935E7EFE418BB9EF61843D /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A05D05535A966636281421A5EB8A093 /* XCTestObservationCenter+Register.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4419CABC732845CC36EF56E501A8A101 /* RxPickerViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87370DE7DF0E68826ADBBEF83734769F /* RxPickerViewDataSourceProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4431412C0F46AB4258F37FF421244078 /* UISlider+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FDB8BEA47C935893B84C1C65E314E12 /* UISlider+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 446CF588DB1D34427FE41EF6A83270BC /* _RXObjCRuntime.m in Sources */ = {isa = PBXBuildFile; fileRef = A9E5DAEED41251DF9485D9D5112F6ECC /* _RXObjCRuntime.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 46B333FBBF302D663D5DFAD643D0447B /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2336C764067127C706910FE1AD205396 /* NMBObjCMatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 48604B6F1A103DA598F05C6B7EA72F3C /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82065E9CE6D973729526A71DDBFCB401 /* XCTest.framework */; }; + 49E264C2511BAFF8211E7C266EDEF810 /* UITabBarItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FDD63CAFD2DE35F836E2CD27B2B3AF1 /* UITabBarItem+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4A135D657F0D5288E30ED52ADA0F4BCD /* Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5825F11C84D2287066DBC12F8E1C86A0 /* Delay.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4B49A3175275B7A803ED5883033EDDCA /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFE72603DF0268289959A81E73E7F98F /* OperationQueueScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4C184367B3DC060B393DF0D0C3B3D9B1 /* BooleanDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 454C7540496C1B09D202F77C7B181E4F /* BooleanDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4CA5971E17C350A2BB5683ED6E8F3298 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = C265258426CCCEFD9EE37B962C02080F /* SkipWhile.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4CEFBFDDC8843E172C3FBF8D0856C4CD /* InvocableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2EEAFB13137F578A7CCB37763A111EAF /* InvocableType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4E0ECB6814A82CB106CCA4C9E45DFE2E /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87BBF52792CDE8F7A2F65F0130032E93 /* Range.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4E53003C51114422B2EE9334E8CC3F76 /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47E8CFA1BAC7008FE92F22E9D1590C46 /* AnyObserver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4E6CE0CB13D03EE40E0B4085CDD229B6 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E13591CA205B5CF7EAAB6BF802A139E /* Platform.Darwin.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4EE4CE0E03DA3D51E9975238A72D1138 /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA536C250C260C1F67D3663A0253010 /* DeprecationWarner.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4F01CD9621671351DCAC763461127D31 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = B68B8DB2364F06DEFC16AD4CDEF15EA5 /* DSL.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4F5B808A67A60F9FCBC9B8BF8AD3283C /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAC7E60811190CD444B6E7885F705158 /* SwiftSupport.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4FA89C518BF3036F8121CD954181D7F3 /* First.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D79C077E4BE2C9EA9066E321D04A835 /* First.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 504EFF729DE5ED33F502BD42257F76FC /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0147592A6453CB7D927FF379FA2714BB /* Errors.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 519B45D8CC50DE9365E67948419D2445 /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C0841FBF60E56D40F6586BA36D728D7 /* Producer.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 52E064959D89DDAC37D65067E929C1F9 /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C48C486F8F2EC3C771EE6642571F3CF /* Map.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5329C425C85023C6194860D3932CE24D /* GroupBy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AA559828BF5D238144556E64410F611 /* GroupBy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5512C1EE1251131CAABF934E28D0F388 /* Behavior.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6CEA8ADC0295831372D02CEF00C539 /* Behavior.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 556C9652CB89E0DF4BD6D6AFE2EC6A0E /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 00F0A9127F682624E7510C24F7DC1D3C /* NMBStringify.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5594E6E0005C1F8C6AAA21DDA1AD6321 /* RxCocoa-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D298E1FFA6F789AC999FA19C96A8BA2 /* RxCocoa-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 55A8EAD9D3F24602B37EE0DB4414E78D /* UIView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD437C13B49E85149FFDC5BE36C2E27F /* UIView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 574F89786271FD7BAD216D075EA1E898 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 1243AC0E46D3C05769D489AAF324CCD3 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 57F649E6DED1A524CEFAEB4C1890912F /* Materialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE4F73F0BDDAA37F1C938090C8E3874C /* Materialize.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 58CBD7C6FCCF861D7B40DBEA97B76F13 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAE315F22A3F0EB1B6896B123759D73A /* AssertionRecorder.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 59561A7ACB6F84C230F27CA402CE1602 /* Example.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1697323473EADE759DEA59039E181EE2 /* Example.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5958680418DDB873DE18F69A07534582 /* SingleAsync.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7549372A9ADC73BC72F75A39547536AE /* SingleAsync.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5ABA47FA99D309E7DF309B8F5E5A957C /* RxNavigationControllerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FDC0E9CA2AC8224DD564AE097A332B1 /* RxNavigationControllerDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5B234E9D5B793811DD79D0788CF2053E /* _RXObjCRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = FF595A0A57126812456C7D5A3F7E4C53 /* _RXObjCRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5BA1006DAFD72ACF9F31DC95096FD054 /* mach_excServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DF15B90FE050F505DA6EF5DC4D54F8D /* mach_excServer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5C05DBCCCD3562EC8D6FC59101C91C52 /* TextInput.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50FD79A3FB41CC3E0F5DEDCFE21A4F44 /* TextInput.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5C537F51C1634F734328973A3008900C /* RxPickerViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = F917F7AF9379E4C125E45F8E27208CF5 /* RxPickerViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5CA227280A5AAB51D1A53B2AD8F2B7DD /* Pods-RxMKMapView_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F2ECCD2C6810E03F1556F72CB91B355F /* Pods-RxMKMapView_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5CE46CFD2E88245FC21F2F8BC237BFC0 /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3A25EFA6FBA9026F48A886BE62D2234 /* NimbleXCTestHandler.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5E7962168D7490244014B6EF165E26EF /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1AD31D624B269BBCE36E1EAEA91B5AE8 /* SubscriptionDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 5ECC0FEB993796BE22E3CADB7EE047B3 /* ControlEvent+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88F1FCFCA78C27CF460642EE2B7AF738 /* ControlEvent+Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6041D9B4A6717C1C78E4E7E30E9D0140 /* ObservableType+PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C23E8F6D880A2EB8B1D1898EE6F1A00 /* ObservableType+PrimitiveSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 60910EBB0CC5EAF72AF89542B5D8493F /* UISwitch+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACEA9A12CFEEDF41B046D9400F2C50E6 /* UISwitch+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 61108B36BAA6B79529FBE95D35161706 /* Dematerialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE92860F40AAADCBB6E0C6506C9B1D20 /* Dematerialize.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 618C13D4020EBA363997EFB60A56AC20 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = BC0483234D9CF392FDDF18F84AD4980D /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 625B39944EC97EEB38B5CDC1A9D22A49 /* PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 537F7F189A849455FB9AC9B63AEDA4FC /* PrimitiveSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 63D1BA68FB7608185B599906A1E240F6 /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BB48C0D5CA7A443728C5F07CF7E8577 /* CurrentThreadScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 642A4841019E1C450514960951B04660 /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A9CB6EA0B63545A29488FE16156D11C /* PriorityQueue.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 645EA7F3B1FCB04BD55195A86D24E693 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B41109F0C14AEDD7A8B7736E30F89D83 /* Bag.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 64FB3159539E3AE0E0BFF7890347A04E /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89A06FC8B3CB70E537F5A9C08EAB579E /* BinaryDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6535674B79D03D90F459357BDDEC5C8E /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7337B872C7B0B49D2537B31F4F45C3B3 /* BeNil.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6688C7077B6AC127A58723EC4539AA27 /* RxPickerViewAdapter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B67C096ED974534E98F847CAD8B8E53C /* RxPickerViewAdapter.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 672D9FA618D7B670978A56F97148BC80 /* SectionedViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = B354F49079229EAE904D1C0461559DAA /* SectionedViewDataSourceType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 673AAB4DEF0C7DDF780938428E756C5C /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04B650543433D7CD4B3E5F5F1D1CE694 /* Platform.Linux.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 67A3B9F72BFF446447D5CA139F3B1567 /* MKMapView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E97E65CA8D9D2C80F2734492EC621B /* MKMapView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 67A3C4502CCD6CAE4B37FF728DC97E2E /* ControlProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BC5472CEAD640B3618D278100824B84 /* ControlProperty.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 67EACA3661AC5E938CEA6CEF94569169 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34599842C2A1C1E6BE6126290D98F049 /* BeLogical.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 69F0F0C4520CBAB5302A97EAE61027F6 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40BCB9F9CF03C05E83DC4CCC71784ABD /* Timer.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6ABB36C1D3D676CBFF19CA07A1BD429B /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F6C4A7364FFC5183573FACCC23E2912 /* BeEmpty.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6B5C82949C1488AB045F551C48113D92 /* NSObject+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D143E70C9AFE2588F2B6FF32A4259EC /* NSObject+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6D02C388D17367825FABF20B64AC7647 /* KVORepresentable+Swift.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D75E1B40820B930E65895F1D67FBB99 /* KVORepresentable+Swift.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6E3A6EDFCF0011CA4EA93D1EC556DE1D /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 434A7C8BD010C3E04D453F3BD7E88A3C /* CombineLatest+arity.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6EC3E48C712E91A6CCE7E7893B807455 /* BehaviorRelay+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2002F22FF8DBA8C5AC26A82D61AD0E4 /* BehaviorRelay+Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6F52B89847F5035B62853CB9878A24DD /* ControlProperty+Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20F92B165BE11101C4C84838D47198EF /* ControlProperty+Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6F5AF739E8D8781B7562E4DAFE546AA6 /* RxCollectionViewDataSourcePrefetchingProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A9D4372A88D5CF1EC2A42B2F3EC7F78 /* RxCollectionViewDataSourcePrefetchingProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6F795A44C899A47E922BB15A06B1B233 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A079EA0B211FB5DB732F10738889D33 /* Match.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6FAB15C5B23AE2C79B2CBD7553F855E5 /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C82E29F29B71AF9A76EEDCE6BA1BB1C6 /* Generate.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6FC99ED6DEE81BBB6469E480873CD755 /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FC52151F4FFD85C11E74383F0768B99 /* ConcurrentMainScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 70510E5F95BE0655972BD16F73FF1C1C /* PrimitiveSequence+Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67050FE7966007C5CE74862EFE2277D6 /* PrimitiveSequence+Zip+arity.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7097E06CC2D56894F67B7D94661FFF60 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5862E4E93CCB48B0932875C98426F9D1 /* Contain.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 717EA1743D5B966CD5F5E6DE56AC91F2 /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E0015681A2675805E52FC25ED4AF3CD /* SynchronizedUnsubscribeType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 72CC5D68849E7B7E65E1497E9712F65C /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82912038F2871754FFAF189AFB66EA45 /* DisposeBag.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7312D076F9F0DDA97CC42E05DC5A63CF /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5347CCA30AD86EC7E654006145746CBA /* DispatchQueue+Extensions.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7340B637AD8B1C89BC9228FCB5C41D85 /* CombineLatest+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43AC80F40484A5DAED86230A6E385647 /* CombineLatest+Collection.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 73F9FC167F033183335E9B8998A4F8D7 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34B0D284ED98FA1C30FD79B8D443A0E5 /* Sequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 747AF18E60FD3750E9FC4B5377C7BFAA /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAE3FA42737922D49F0EF0D60BAEC4B8 /* AsyncLock.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 747CC37CB5D94291622F4CF5F76466B9 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF94013BC51D39F75A07397C1044363 /* Never.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 752F4B32C0BE1DB0FDE0C16ADB8D8726 /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E667B8F8500F771E2A00A31849F4E3AE /* SerialDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 754C4561CC47C1A3B3E9DBEE82201270 /* DelegateProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AC7B594DAD6B16D190B4745D8ABD13C /* DelegateProxyType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 756E8E115C93AD9D97BFB71B50C83190 /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = E311A356DF75ED3367B3B907EDF0AEAD /* _RX.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 75CAE731E5CB8D81D68363AE5A5A74DE /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1AA6A98A33DA19580E4341D0AC4773A9 /* Skip.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 76A07244E332E8A933D2B77A3868F9F9 /* VirtualTimeConverterType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 400296542C8AD4F1C661CA80141C6BA4 /* VirtualTimeConverterType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 78025ECA553090F8C8D879B88836AA71 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA3A2CEFC138817A2AA422386F52D1B9 /* SourceLocation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 79FA255F43C9E42470C9720C0604444F /* Nimble-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 17B11DCCA663D8DBDC3B90D9503FFE96 /* Nimble-dummy.m */; }; + 7AE78B28684504D5C6401ED84228B5AB /* UIAlertAction+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAA58C70710F7570443894A9FD0C9CF2 /* UIAlertAction+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7AFF93411D7B3E3252750A5118AE8116 /* ExampleHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4741D6FEA3DFBD5FB4C82AA22D12267 /* ExampleHooks.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7B66749F536259BDFBAAA40DE368AC34 /* _RXDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 86507DE982117DB2424A74A5446BEBA2 /* _RXDelegateProxy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7C12F7D573B443DD63CFF8123A4B15A7 /* Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = 245FB24AB8BDC4C3D3F9502BB49A0029 /* Window.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7CBB544D4E1F3BC56560703D30EDB3DA /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8FE6CE4B2E78E24726403F373FB497D /* Platform.Linux.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7E585956462B20DC366314706D9D6A7D /* RxMapViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AB67974FF59CCC1B1A5E5C732860F65 /* RxMapViewDataSourceType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7F018F748F70B5502D3C95FFE70E45F0 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F5E50F4E884001CCDF7AE95A5ABAA52 /* Expression.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7F319E70C4705A6859612C6FEB70A01F /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E48436E2BBF8B486D3B0F3113E90CF8B /* SerialDispatchQueueScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7F429C81741B3EFE8BFF42F8C600B93D /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4586DA838C5CF04F65322FF68FE48ED1 /* BeginWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7FCD7ED7B825589C20A9ACEC01F6F21B /* Disposables.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE394802676EA94939D5D9BF7E7CAA74 /* Disposables.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7FE8331B57FAF2E8B475C4C92A3DC3D4 /* UIActivityIndicatorView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BE10480743B20C6AEFF2F753EE761F2 /* UIActivityIndicatorView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 7FEF9A538FC5AE9AE1C19C755B2EAAC6 /* Bag+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B33A652257347D361987496F346E69D9 /* Bag+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 80B56724780400229A4EFB352F37993E /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD1581FC822870653D868CD671085684 /* SubscribeOn.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 816171F49293915EF1D3892F0594361B /* _RXKVOObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = 08DDC54B146BFF9C131CAC5BE42A9750 /* _RXKVOObserver.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 81DF3548DE9709E7A10F3771B6A6BFD2 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E6C7879C0D619C974383B6BB6689DF2 /* Deprecated.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 822D0077C8698AC306C9518E5CFE3E52 /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = A76BA45F42F8EFA9ACD38A480E04DC5D /* SynchronizedOnType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 82FB303EC52A78632B139DFB01161057 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7427951E51C073CE672723E27844C01 /* Configuration.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 83DE141DF2F12D4E63B16DEAC00E1815 /* RxWebViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8D70A5A9F2BDBD1CAB01AF9DAB67456 /* RxWebViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 84E49DCC891171D98BBAE9E326D238C3 /* CwlCatchBadInstruction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FC0627D60EAEE94CF2EAB99CBF7E7E2 /* CwlCatchBadInstruction.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 867F7B36AD1C76C6A26A33C0CB0412D0 /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB70ED391CEC02ACEF00EA618810B1BF /* Multicast.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 86CBA3BC0B02B881DF510A6559A3B17B /* mach_excServer.c in Sources */ = {isa = PBXBuildFile; fileRef = D8716F81E89A2C0BC163D1342AF59EB0 /* mach_excServer.c */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 87525F8D1E424B610D72D63F3CD5C611 /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 671DE96D807CC6339EB9BB0ACFCE491E /* StartWith.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 88157AC9FB851538AB83AD1F75B3BE2E /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4B7ECF7E6677D898F0D2BAD2F2083A7 /* PublishSubject.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 882A127285E34020EB81B41988026320 /* RxCollectionViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F95D30E85804C0BC6CE9DA07E5B37CF /* RxCollectionViewDataSourceProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 89972352F8220A172108D55DD7CD7861 /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 644838F87AD57DD6C705B89987C00671 /* RecursiveLock.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8AA5815F9AA4E59F64AB399A4FAC2249 /* Observable+Bind.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54B6CC1DF8C18991B00953067A35C512 /* Observable+Bind.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8AE2259875BAEC95DC4B0CB4925388F0 /* Pods-RxMKMapView_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CB0CA6C1F67FC572849D778F5498C628 /* Pods-RxMKMapView_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8B752D0B83572A0A5612618D9EA5672D /* QuickConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 44888F02CF4E73217EE2D9DAC42C595E /* QuickConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8B7CFD9555014F44D7468176B2A9ED93 /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8111EF0856DACEE70A2271E9E5425F0 /* ObserverType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8BC4A3E4A4D4117EF7E643C84DCE3C05 /* UIButton+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3BBBBAA0C0CB7C9A556D5CE0FF0B3BD /* UIButton+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8C0B6B887A3334EA9EF2724F5CEB05C8 /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE05C5A07FDEAA979915BE46262C1525 /* PriorityQueue.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8C1ABAA156F9BAC73863FF5F855D63CB /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27D2FD7BA39EB5A32A3A8CE059A7E152 /* Merge.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8C8D095BE8C5625BB5BED76F9647B2C1 /* CwlDarwinDefinitions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B1BEC46712095F69BB4FB581BF03297 /* CwlDarwinDefinitions.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8C940F972D936CD8B281D9C3E8F8C5CC /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8E514B726AA73EE5F107464A6BD5718F /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8CF9D1089C80FC0A815CD3947F69E22E /* SuiteHooks.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD1E10B188B6B747F49E6DE81271E62C /* SuiteHooks.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8D00C5ED7C3D7D4459F2B96AC3567C96 /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = F34177DC393932FD280E8C4D945C638C /* TakeUntil.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8DD4034AF0E496400F33AE7AADD98A8D /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 992563151A07C2323E4B195A7F1458A9 /* BeCloseTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8DEBCBDC9B3C7EDBFAD6030A1E16814A /* CwlBadInstructionException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AEB16046D5C041B0CB1E1B070628F9F /* CwlBadInstructionException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8EDCA454208C14AB871455A7BD4B5133 /* Pods-RxMKMapView_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D0F930F267191374A81003DEE27E1112 /* Pods-RxMKMapView_Example-dummy.m */; }; + 9096D686AB39D3475A4227F0765C3DC4 /* Nimble-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CA0631DACDE81A3545CDD7966BCB4B46 /* Nimble-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 90A4A70942F83684C4099FC571105790 /* String+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B50B754631679B8FD2B0DFFED30B580 /* String+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9146550C82FDBA565131D0EA7DF01698 /* CwlMachBadInstructionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 43DB9B5B927C40B6AFC2723B709F11D4 /* CwlMachBadInstructionHandler.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 915148739A473800A2C2A0FF0A82E3AB /* UINavigationItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED7B07F655AB863EEEB53A6C03E5EE63 /* UINavigationItem+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 923D2728BE630DE5C93996C5BC077291 /* UICollectionView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC30798CC36A9E53D79116CF7C1DD53E /* UICollectionView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 92B9543601AF929C05E55D9BF757C61C /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17242ED251FDE56F0A17E0ED88D61D97 /* DispatchQueue+Extensions.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 936A6113353A71251AFCABB2E06CD5C3 /* UISearchController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A77A1C2441FA2C60B46EB9BAEFDF338 /* UISearchController+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 93BBDB63A2EF76DCDD53026214C5FC2F /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FD6BBE6D3961AB0CCA28837E5018835 /* DSL+Wait.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 93E91B7A73113C539B2CCA3E07F65C7D /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06895BE9FF465B046CBA3912BAA7EFBE /* SynchronizedDisposeType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9478FE069D4D80B055E233AED42BB5F7 /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 222A9E92F2EE61E75D10E74DACE6FAD1 /* DeprecationWarner.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9588DF74CDC818553FDD79042076C84B /* BehaviorRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = C009D8D9CDADFD4ACD17A36AE04C516F /* BehaviorRelay.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 95970B006A23BA9EE3D61E8240937E8A /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98BF01C939506860689CDD7AA235213F /* ObserveOn.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 960A9265CE35E79E570138D5F07D8B42 /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D3D60F046133044042C3D59EF93823A /* BehaviorSubject.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9652F7AE242B0E32D457A80994C175B4 /* ObservableConvertibleType+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6B6DE8AD594516A60BA7672523E657B /* ObservableConvertibleType+Signal.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 97A60F28FA1FF94422D2560002CEE407 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = F6D77F3C3D42E7BC259C5FABD8CFC216 /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 97AA09FF4CF5271151D77B6ADA636064 /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB8E520BC8D0590EB22446E4F5BD9FA /* ObservableConvertibleType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 97AB989CC423C63F3A3833F40DC8A969 /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 439225A4981E7064956688894EEA0234 /* HaveCount.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9971A4F21F4607C072B462709C44FC70 /* UIViewController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 412F690579581D810CB10EFC7C525EDD /* UIViewController+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9991E72D6BB7811D56CF6F7D4C6B2CEE /* SharedSequence+Operators.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67BF119FB37426FB7FE2DA654BF6384A /* SharedSequence+Operators.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 99AAE4DFCF12FDDA7929F906054CDBB6 /* UIProgressView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AFFAC48FAF650CAB7CADFA2F5680E1C /* UIProgressView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9A6344DFE5A64D701961BA3A40FA45EE /* UITextView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4615F16C7EC14FFED5865F12C541AEB /* UITextView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9B3B0ED2E9F154B5977CB94BA17B6EED /* URLSession+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DFED445AEE9234DAB93153AA5C9101D /* URLSession+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9BBB1447F37B457CE95AEFAFB3DB96F0 /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AE468B32B4E2D88920774CB4AB475EF /* Just.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9E9A3665CEFD6DC5061016E97E375865 /* Callsite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E475B5BAC23B315EB01AFC4B8DF7DE3 /* Callsite.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9F32B116509F085E4A42284DCAA18C03 /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = 131CEDD83A7D9BFD7145A8F0F4ED8265 /* BeVoid.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9F4EA8A38F3D0FA4BB4887B25091EC3C /* SatisfyAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1D6C1CDD69CAB8F4DCA9489B3D3F530 /* SatisfyAllOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9F58FDD502CD95CC8FEE7DFF20AF74A3 /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */; }; + 9FF615D49E66830F029158B0BE0341B6 /* UITableView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = F713A9F89162AE835FAD9E99D850E949 /* UITableView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A061C141C7D368187E4583871F66CC4F /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = 6AB6AAC726D133F276157C909A917ACD /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A0F9D713CD52B434F1AF5A7CCD217F7B /* AsMaybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E83C3F632F52C0B37CF9FBF3C365EF3 /* AsMaybe.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A1619F373D70F6BB7626398838B4CB52 /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2839E2443071569551AE460CA7555437 /* TakeLast.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A3209494C8B29F390AC14D95519460A8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; + A3ACF4EE91F734AEB7FBF1EDE81E9DB5 /* PublishRelay+Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93EAA3C810FE7ECE0F65185C8AC47CC7 /* PublishRelay+Signal.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A3AF0FBE3367E327CE438BAC26F0DCD2 /* UIRefreshControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 637BF6E43A372C81D8A9969A028B5BD2 /* UIRefreshControl+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A3DACA246F8ECCE40405B0FDA90B2913 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; + A4877DE5562A21EC837EA88372FC5F6E /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 810ED7C5619816A4B993C0DAA7CB5323 /* BeAKindOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A48C4C724162E9858542950DAA26A6FB /* Driver+Subscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1752A109F631565A8DF191FEE2C71E58 /* Driver+Subscription.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A5CF3835E5C61039CD114781F5F2410B /* DefaultIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE7C93FE17E32B3A11082B642D2D4C32 /* DefaultIfEmpty.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A63E113ABCD6E551DF0942305CC8A740 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 776616261ED2F956A7C263A73F9A1192 /* Bag.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A69805E69BD1CD1BF986442E462FB3BA /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10EE614DCE3CE455DFF571B552D1E624 /* RaisesException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A7E8D3C6BFF059D21BE53C283CEDF737 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; + A849758458EB96FA26111436601E4362 /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B1E9A80FEAA2744D9CAD19E0128C81D /* NopDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A865DE08EB59EB71E980465C0910D02A /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 026C53F58B2690ABDC9E656A9B1F3EB8 /* Observable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A8D10ED0B19301B3909EEB014A8CB7E4 /* Reactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5009CA87ED85018BEFD5819A977AC2B6 /* Reactive.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + A8EDD4009041322F9EED6984B2A59691 /* HistoricalSchedulerTimeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = D30C9F57385FC65C1CFF2160E8F7F41A /* HistoricalSchedulerTimeConverter.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AA5FD86EF6000DB4BD919E1483E4FE4E /* NSBundle+CurrentTestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB1A9394995D3F31079174D890C5A72A /* NSBundle+CurrentTestBundle.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AA7FCC2116744AA530D020D269B4E71C /* UIImageView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0AFAFBB2AAADD9BC79741799B1A0DD9 /* UIImageView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AAA3873F2C3F3F948A60F44B791EFBAD /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B65462AFE2C32BCA5F1F5219AC6D8140 /* Buffer.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AB6E86BEE9A225508937416EAB67A138 /* UIScrollView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45BD0CCFC887972A4B2DE16D117C38DC /* UIScrollView+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AD742CF2688A3288D65EC82D2A8684C5 /* KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A3D3FF3FF35CE8C139DEECA762CBF85 /* KVORepresentable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + ADD8CAF89D3E877E3A6D087FBB60F29E /* QuickSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = FDA1D60BEF3F2E175C763DF3BF27F5C4 /* QuickSpec.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AE0F34F0D140B3E884D11D74291AE0D1 /* RxScrollViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 15EEB5015828663DE6382CBA69AB015C /* RxScrollViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + AEF9C97CFC78FB86A0C77F11AD7B5290 /* ObservableType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CCA0141A37D61178B0D0FDC755514AB /* ObservableType+Extensions.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B007772ECC4C8BA918F59F7848F59366 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8AAC05BD5A0F5AB2C85ADE61DB6EC6D5 /* Filter.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B0B2D3810E4BF1BE221ABE34E4F10722 /* ExampleGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2E186167922981EA4F7C34926BF0FFD /* ExampleGroup.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B163A62979E169CB35011954CFD754FC /* RxCocoa.swift in Sources */ = {isa = PBXBuildFile; fileRef = 726D523AAF0006A29E5338ABCE313CE2 /* RxCocoa.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B17DB3AB065384FE629EEE5F5284E854 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3FF31BA007FD48544D75B9B80B169FB /* RxCollectionViewReactiveArrayDataSource.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B188830C201955D13899CA34E4383ABA /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDF44EE7BBA22970D198CFD86C2F21E3 /* PostNotification.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B1AF0020BE33944A3FFF6528434BDB55 /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 145C79014EF6F0DA568F118A61750C9D /* ImmediateSchedulerType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B2FD2CF51CCB4882F99DBE6AFC5C6454 /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E95917C06769B6F3B0EEB4C7D0E979DE /* RxSwift-dummy.m */; }; + B3C3D7DAB6567A273DA50FD2068AFF77 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = F2D191FAF8CADD15A97BE792D93DBE80 /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B3CA04763F3F0100476B4A37A5B1A579 /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = E096A92DD16089341E47B824C5DA6229 /* Repeat.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B406A7AAB18E0DD8CD1DD300E07E7601 /* Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84AA933976BE0BEF100C3EB31CCFA03A /* Single.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B4F5F5CD743C6B4CB751475765A07310 /* Zip+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C22B652D0E45F0D5E873ACAEF964D8E /* Zip+Collection.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B50D8AD4ABAB7EB9AEA95EC231CD1FE2 /* _RXKVOObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C122D36174BFC09751ED88E43D2EB3F /* _RXKVOObserver.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B5AB8B702EAF6D2126E6AEDF05D03CA5 /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 400C2D5EAD88529B7E38A9B572F14405 /* AnonymousDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B5B6A0930E68D6C6A280827B88FCAAB6 /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86D8FA77D3764651152DDA25DAC4D1EC /* Expectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B8E8F3D361B1A5AFEDABD01D8BDC21FE /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FAC716FB50C6E985EFE837A3698F271 /* Error.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B8FA927DCECE29DCC5371CFB8AC9C127 /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 204623B1E7DE01610EDCE042A98D5F52 /* ScheduledItem.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B907F2C20ADA9E0DC16B22591E7FE0C2 /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62A4BD10D11A7EA8B77519F928200F45 /* SchedulerType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B9A5BF2A33B4AC12E25CCD6237E37117 /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 207BF2256D841F1DD406D3765296F435 /* ThrowError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + B9BB8971CA3CC93266F84195687AE26B /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA726286922C9BE0DC635989E1E5EE6 /* Errors.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BA5A31C5FE92F282AB096A116B035064 /* URL+FileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = B634F5DEB063A6A789DDE46A7A6AE1ED /* URL+FileName.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BABA0CF4793F0878536FC4B1D9307E9C /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4503C42EF7D6F24326D72D79D844D8B6 /* Sink.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BAED5D1EBD102C53289AE0AAAFF9793E /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D1A234521CB9C3442EE6B1F1F5298E4 /* BeIdenticalTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BC4E66FA3711B6738C79D8A145841ABB /* QuickConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F8EC1E29B925D024D432B9C80CB7A91 /* QuickConfiguration.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BDF4F82F7E167CA937BC70567149A0BF /* RxMapViewReactiveDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC336950819B11A5CBA26E7399C6C12C /* RxMapViewReactiveDataSource.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BE0338FDB40B80A393B60D6212A04910 /* NSTextStorage+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = A97DBAB400AE9057A6752F817ABD7B5F /* NSTextStorage+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BEB8082717D949400F2DE3458E75CBE3 /* CwlMachBadInstructionHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = 8026B093ACD3C1AD472F569F70C4FEF3 /* CwlMachBadInstructionHandler.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BEE47D7B8EA71B06C16C51F647EB839F /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC038FE1C0CEED46B4074D6370D30782 /* InfiniteSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BF4F6F36A37091C7AEFF227CEE2FC14C /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06CCE49F53B6C7E8FBEDA170B798F2BD /* Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BFA263D464C1511C9E425AD7F965BD80 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44434F63DCD548707D65D432819551CF /* Equal.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C1626A51AA5DADEC5B0E7B394E2B6ADE /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54D4311C89682D05738A0E11C5281EC2 /* Using.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C2451CCA2EDA923E2D0BD886C034D059 /* ShareReplayScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E2FF0F97397F9C2CBF60BD04CB5ADA4 /* ShareReplayScope.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C273992EAF0FF634BD1B48F994129D0B /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54FFC9F2F486F59C0F3DCDEC52E9B845 /* Catch.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C50A13538FC1D21B62AB6758F6CB197C /* UIControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 440C63070904512F7C7023ED3CEA481F /* UIControl+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C52D3816C70A74B136254CEAD67DE10E /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC4E936250B396B41E3F7BE0D98E2849 /* AnonymousObserver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C5AEE1CB81079AAA5915CB9E9EA6D9B9 /* PublishRelay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 790F3AF48904AB7E28065B2E17EBEF23 /* PublishRelay.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C5B370B347256FCB23C2C15512FF1B6D /* SchedulerType+SharedSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF633162B795F37BF6ADCA7DB9169FB1 /* SchedulerType+SharedSequence.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C5EFB3287D6C01E8900985F15E4E6A4B /* AddRef.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69780C0E3902531771C25DEC520DD626 /* AddRef.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C5FB387D3784D39F5F02DDD4EC5C1A27 /* QuickSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = F991EE88D8304116FA80F845D0B71E7E /* QuickSpec.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C60DC95ACBA831606AE6268E246606C4 /* SharedSequence+Operators+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88E2F054DFF4750571C971852E652F1C /* SharedSequence+Operators+arity.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C65648D4F19B8240DE1851043F771BF3 /* RxTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A5265F71AB5A4D8D94B617BBCFD94AD /* RxTarget.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C7C192BB46A9A9702EE8EBA56167EB07 /* RxTextViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA5E880D66D74FB6237BB27345F14C56 /* RxTextViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C891B7743E7258664E09CB8DBC5F3134 /* Closures.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67FDEEFE8C09D4DE5D2054EFAFD63A6D /* Closures.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C8C36B05E07462424CA4F11AD3B0FB35 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = A142D7A9A71022B2CA168D6340077348 /* AllPass.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C9F14A108BFDCA29717F0CC543FAD84B /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFDC90470B0D2DD84D372E7EFA2F8974 /* TakeWhile.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CA31BDF6F17B1E3B88CDBECC2E3F0381 /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = F844089DC4B428EDEC39F34C07DC2FB9 /* Zip.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CAC12FDBFF9C76FBF788566308862553 /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7BDCF3FAD11329585A0AFFCD7F273FF /* SatisfyAnyOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CC16681CC9B2BCBCF5A8F6C2C8547B38 /* ScheduledItemType.swift in Sources */ = {isa = PBXBuildFile; fileRef = B84202AA6D9A4F961687D683043E56EC /* ScheduledItemType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CE17990E55800B1E634B3463ADB345E7 /* Debounce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CFB7B7556D9FE0BDAEAF9FF5536AFC2 /* Debounce.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CF1E7427C0C261F7961904FB8B0AD3DC /* Signal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6195086661AB093142B6C9BC3A25B304 /* Signal.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CF3CA9443F7B4E488F953BBB85D804EB /* GroupedObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7053F0963D60674C5910E75132BDFD1C /* GroupedObservable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CF7DCBACB4588B9117B4929B24791D1C /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22E4FF492A0DD66BED9D7EFE5315DD4C /* AdapterProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D01C19A10BAC1C19780CA527FA21FC5C /* QuickSpecBase.h in Headers */ = {isa = PBXBuildFile; fileRef = F44C749D541BAC60A100785CC4E7152B /* QuickSpecBase.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D114A296A9BF572E4E1A06CC4ED3309A /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C3F8C59BDD65E38BB70FE0BD87CF937 /* ReplaySubject.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D174EA14F6D997FAFA6BE31BEFE5DFFF /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92BC0EA2ADFF76B41D9A86A8E5144997 /* Concat.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D1B2A85A2734EF5306BEF52C3D85BBC9 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 422A8ECD7AA96EA363E4A88849BCCD46 /* Async.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D2A52142A922C0BE746B3A1BE25966CF /* UITabBarController+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B751E68E6969DD0BDD8E133742D18F74 /* UITabBarController+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D396E5E2E1025167F0F6DAA1ED51EAA7 /* NSObject+Rx+RawRepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00E60052BDD8D971CBE366DB198D6F35 /* NSObject+Rx+RawRepresentable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D462BDF272F4929288EC001245C04427 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E194C2D21B60DC4015057177EE3D193 /* Deprecated.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D48EA1AA357A869EB9A42500F959BC44 /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1794A40F4B6EECC63B8509EAD3A5DD7A /* Sample.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D5ED73BBF13F95145823E29738909139 /* RxCocoa-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B6A4757653D4DCBB1CE8C9A98C2EF057 /* RxCocoa-dummy.m */; }; + D5EE3BE4F8CE57070CC2F5B7FE94857E /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = F37A70DEF18D240888BB06446A70E282 /* Zip+arity.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D689D83130AA170F2CA6E0B03AD928A2 /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56D31F826500C08D669A9F41CE8CE5D9 /* Optional.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D701790A4F782D619EC8E06858D8B2ED /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30A4E2C4C2616C0DC0D4ED4222C57D8A /* CompositeDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D703DF085CB4E8AE3D8104F0ED5713D2 /* ErrorUtility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23C96EFE094460B4EE1CEDCF5DCC03AD /* ErrorUtility.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D7A8CB85B30291D6F4A55D9DCC03721E /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 984F49F3452EDB8D4A5E1B1EB2550909 /* Amb.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D8C0245757B2D80C5872CA00B78F3D95 /* NSObject+Rx+KVORepresentable.swift in Sources */ = {isa = PBXBuildFile; fileRef = A704F09153192D460F7B0D292441F2CD /* NSObject+Rx+KVORepresentable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D928AED42232761F095C0206B152E5DB /* UIApplication+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43B66CB7127790520B5462201F9B7BFD /* UIApplication+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D9EE1722524083D7203E18829B727305 /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = F58F76F1DC4300D8374745091065F6FE /* DelaySubscription.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DA22BC177E50EEFFEA222CEE2B9B2401 /* Driver.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7B763C053091F93E81023C6931ABC9C /* Driver.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DB08AC565EA0D8BB4A80ECFEF804407C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */; }; + DB5A8BA18756CAB10D842CB61B158478 /* NotificationCenter+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 400640BFB9DDB0F524CFB9264C05DA63 /* NotificationCenter+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DBCA4538E2B19C8F94D7BB71FD77EEA5 /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2781C9C62EB92F40DF97491492A2AC1A /* ConnectableObservableType.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DF2BF28F39EFAB47F5FEB19CD899BF00 /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A274000F72FF57541406AC7960CD87EF /* RxCocoa.framework */; }; + DF44C052C9560633DA6549EBF8DD0F48 /* InvocableScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACD84D80A37A1F5CF19A049A22629DFA /* InvocableScheduledItem.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DFCA23A9DDE8CF99697C24A41EBD5E03 /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C4C28790F90D139C6BC732B0822D58C /* Debug.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + DFD0F219AA1509FECABDDD1EDE1BCD8E /* UIPageControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D69EE698CFC5A6DEF7EB7B032E1E178 /* UIPageControl+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E0116C6359F05DD7085CD0AA22264292 /* HistoricalScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29ECAC2253A0A7A456B63A6B8969E4CA /* HistoricalScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E0B9A700F4113F9C6BCA8C983F88AA96 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5C963D89E597BB3E908A49B59819521 /* AssertionDispatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E0F865461EEE9123B46C10DF75425CA2 /* RxTableViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85C4DB9E94BCD0C89C9B3B80821E2FD5 /* RxTableViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E13943FA54AE5CBF3C8F88EF3127B9BA /* RxSearchBarDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D54B232CE190604A01CA7DBF8EF405 /* RxSearchBarDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E16B502C01E424E44D2E0ABC039CB447 /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69C45D0BD14B7E4715B0DA13E574862C /* MainScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E1C50AB53BCD67E62BF09ED4A4254965 /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF7822928E0F7479348801524A3C1E6F /* DistinctUntilChanged.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E231385778630FD0117827383CD51505 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7810984A572FA5D54401ECA589FD04AB /* CombineLatest.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E2441200FBE9FDFA8925666C9D2EB1F2 /* RxMKMapViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAA0F8B6D9293C836A063D1535877EDB /* RxMKMapViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E26FCFF1FB2D7F7D9B49A4CD76922B83 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D1E9AA82A09B9CC77B3D4C21C3969CA /* MatcherProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E28DC35ED7C839C089D38B0BE3C89A5C /* DispatchQueueConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F941CB1F490FC9BC344D03696D5CDE8 /* DispatchQueueConfiguration.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E2A3BCC1ECE09CA23BE78434F4F3B92F /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FBB3794040650A4630116E1502C4772 /* DSL.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E2FB7F608DB948A46BC133A10022EEB1 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = D67AED272BB2DE6CCFDB216CDB440B0A /* BeAnInstanceOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E4402148F9176368ADCEB1C48093B2D4 /* RxTableViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9B404072AF9B4826DE0D1DD6E1FE35B /* RxTableViewReactiveArrayDataSource.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E534593ED7011A4A3A58E4970DAF5DE3 /* ItemEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 272432C7F90387C03DF0B8BC5CC45F01 /* ItemEvents.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E558C1C13AA4B7CAF916991D7203187D /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6A137D81BA5596523BCAA07C111C1A1 /* RecursiveScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E55D18F363F0AB438FBE14B88F30BB1E /* UIBarButtonItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C56B8C39D1F6618C2A6F6115C5461DCC /* UIBarButtonItem+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E7098551311259FD3B77A9E2157047BB /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71DA43EFA7B7318921E8B9B5A5CDE3BB /* Logging.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E750A7C95DB25DA9093E34DA32C2A97F /* ExampleMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC87533823C39EA796D59B093CA09B2D /* ExampleMetadata.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E75A419BEE2D27A2467030E5C4FDBEBA /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8323B66A91FFE93B1B79E9443290657D /* ScheduledDisposable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E7EF33F26D1766ABC1102E110FF0822E /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62AF3070AA3E15C0F8FF810CE6550EF5 /* Filter.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E89CB2BD24A6F90E764E4123F80B9932 /* AsyncSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B5D2EEE06D4ECBAEA697D6FF2A65C10 /* AsyncSubject.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E984CB87ABF0DD970BD4B856DEA35E1A /* CwlPreconditionTesting.h in Headers */ = {isa = PBXBuildFile; fileRef = 14E47CBA7C00F56CB688197C81F1647A /* CwlPreconditionTesting.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EA7898B1307F8F811B9168B8E4731137 /* RxTextStorageDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D062F96B40118C55B25BABCF7184BCD /* RxTextStorageDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EAB4F54242464C1AB58E8D62742F44C0 /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2EC44F22FF9C12ABF02E7DCC0C3C4FF9 /* Lock.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EB94E899326D9FCB98BD7C9CF4E9853C /* CwlCatchException.m in Sources */ = {isa = PBXBuildFile; fileRef = D8E90CAB693113180DC21AFC5D811E72 /* CwlCatchException.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + ECB0C340278C8A988FAEDA3185F6BCB8 /* RxTabBarDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED5669F29353DAA2F2E2A733AECC136E /* RxTabBarDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + ECFEDFC5154AFD9B7E605A75AB984D0D /* Completable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 144B78E1CF8D0DA403A3430C34AABE83 /* Completable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + ED45A78836ED4283C0ED2654BE17595E /* NSString+C99ExtendedIdentifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37654A86DCCE225D99CB694028C7B34E /* NSString+C99ExtendedIdentifier.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + ED675AE95300988DCBAABE2E36A7D59B /* KeyPathBinder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B4E571DFCCA779BC81ADA8B6561785B /* KeyPathBinder.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + ED6ED9179428840AD351D09AFC0A3AE9 /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EA850FB6523717918394FB9156E3B8D /* Reduce.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EE017F2A80DEA8BA34CC05C569CEE446 /* ContainElementSatisfying.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50F31BC978C6FF1B0C3F5169E49651C0 /* ContainElementSatisfying.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EFF85221F0C17B8773592DEB019E50E5 /* DelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE0B178D51F64681C403C9D56EC9D304 /* DelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F088EE1AE386EEF27AC934DE13F455BB /* CwlCatchException.h in Headers */ = {isa = PBXBuildFile; fileRef = C24D85408971C3ADAF8EF7F54DDED532 /* CwlCatchException.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F0BCAF59A4A3EF41B4448899B783F5F1 /* UILabel+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D7EBC061852FEC73D1049F8C5DCD5CB /* UILabel+Rx.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F0CABA7192098E7FF25406F31231D14D /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E955A7F8A995AF024D9E9A341353FCF9 /* ConcurrentDispatchQueueScheduler.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F0D850B3A1D5808475040F3CC6DDF713 /* Maybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1EE37E388D0ADFD3F9C1DC70E4AF584 /* Maybe.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F12912A0DC2EB181991C3BF39B5B848C /* ExpectationMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0205B9606D951A1CB8396102EE905 /* ExpectationMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble -w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F459AB3D7257C2E9CB018983F14E34E1 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB2C2A62F2B2D4786E4A0AFC84C4C6A0 /* Queue.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F65E51233509ED5130444CFEF43AFF9C /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5889E5E4119581FACAC012999BF861D4 /* Queue.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F6DDC69804C5BD9E272CA110040520C3 /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01D66F103BE64130A1333B8F68C5BB93 /* Cancelable.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F88E1CA81BA0A6B8700B47152471C347 /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = 505417D177507A59364FDB5D52EEF802 /* Do.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F8AF7B415A3419950688728A5DF8ABF4 /* RxMKMapView-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 41691C743EA064C8CD80072EF55CBB1D /* RxMKMapView-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F949AFE12F405FBCF4486561187205FF /* Pods-RxMKMapView_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 223BC94AE1974B36CE76001D116138D9 /* Pods-RxMKMapView_Tests-dummy.m */; }; + F9EFC8A4308D4EF5689A71ACE8CC9326 /* RetryWhen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 994644BC878E972933D66E206CF84071 /* RetryWhen.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FA117239A8A28F62233CF218B45A2192 /* Quick-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 417450B20CD3BA42B4872BA978910FB0 /* Quick-dummy.m */; }; + FBD1C0C7C5431C7063A7C42262695AB2 /* RxCollectionViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = D022E3F3034752A828539834DCAC3BC0 /* RxCollectionViewDelegateProxy.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FBFCDF7E2A934BEE60F430F5F42C26EB /* RxMKMapView-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A3F89BACBA0565D23C19D9D5E2F0BD7B /* RxMKMapView-dummy.m */; }; + FCF03DE8169521B543CEFC4E30F90DB8 /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = A881F09155F61268B733322FB17361F5 /* ElementAt.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FD2C97620E696C4CEFA84A6098E4968B /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EFD6BAA06DDF0814ACC06DA4DFD1585 /* ObserverBase.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FD36E72AE7CD36847EA039BFDC437006 /* RxCocoaRuntime.h in Headers */ = {isa = PBXBuildFile; fileRef = 93611EC93DBAFC6B434C78019C6C465B /* RxCocoaRuntime.h */; settings = {ATTRIBUTES = (Public, ); }; }; + FE003BEE48D9DB1CD296F43EA2119457 /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = B23D7AFB63E7E2C7F84CBA9D717F5227 /* TailRecursiveSink.swift */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + FEB8AB7193CC1FC12C784F6BBCD4F3FD /* QCKDSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A214CDD74395FA6D8FCE775DD472ECF /* QCKDSL.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 1627D3753A8025F973679825C02AD7AA /* PBXContainerItemProxy */ = { + 00E96F7DD70D1F1349CBC617AF5A2B8A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = A9C37DB713A7999DB983BB80FD3FB70E; - remoteInfo = RxSwift; + remoteGlobalIDString = 6359FF11AB8FFF5E949A8E1BEF286406; + remoteInfo = RxMKMapView; }; - 1E341F313E43520363B9389B9576D611 /* PBXContainerItemProxy */ = { + 172D91658A28504C4C316C2DDE76AE71 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 00491D7CF395B5626D63A9660278566F; - remoteInfo = RxMKMapView; + remoteGlobalIDString = 5093E7052ADCB1287968944413FE437C; + remoteInfo = RxSwift; }; - 38FB88A051EBD37F71F1284769F7EFA7 /* PBXContainerItemProxy */ = { + 38AE84E0DE49D18604777D1D90534E40 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 36EDDEBF0F2D8C516246FCE7E453B6C4; - remoteInfo = RxCocoa; + remoteGlobalIDString = 5093E7052ADCB1287968944413FE437C; + remoteInfo = RxSwift; }; - 767F4EA32329103B899D0372BB8A902B /* PBXContainerItemProxy */ = { + 6EAC024A17565B807A831918F6302125 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = A9C37DB713A7999DB983BB80FD3FB70E; - remoteInfo = RxSwift; + remoteGlobalIDString = 67CA06FDD153FA42DE76DF6EA680D7E9; + remoteInfo = RxCocoa; }; - 864304476BC5D84AE3282E94FBB2B8D1 /* PBXContainerItemProxy */ = { + 6FF8B786442A43BB700998721ED62A80 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 36EDDEBF0F2D8C516246FCE7E453B6C4; + remoteGlobalIDString = 67CA06FDD153FA42DE76DF6EA680D7E9; remoteInfo = RxCocoa; }; - 89604EA64CD779F6CFE4E26DFF434B2D /* PBXContainerItemProxy */ = { + 8AB4FAC4A97820B8C2715EC71B64FFFA /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 6838D959625438AC281741568C0CDB53; - remoteInfo = Quick; + remoteGlobalIDString = 5093E7052ADCB1287968944413FE437C; + remoteInfo = RxSwift; }; - 9A52D65625AB1480E5FE9F312CF2CA84 /* PBXContainerItemProxy */ = { + A000B9CCBCC7AA04BA410AAD856EFEB3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = A9C37DB713A7999DB983BB80FD3FB70E; - remoteInfo = RxSwift; + remoteGlobalIDString = 5E269AA9A7FBCB9BFD8EA487B43AE7F9; + remoteInfo = Nimble; }; - A8B0388C0763067572CBBFA57F972971 /* PBXContainerItemProxy */ = { + D3A4B8F42DFDB0260FFEFA207D2F96D5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 36EDDEBF0F2D8C516246FCE7E453B6C4; - remoteInfo = RxCocoa; + remoteGlobalIDString = 5093E7052ADCB1287968944413FE437C; + remoteInfo = RxSwift; }; - B1ABA17960EA00D5104BA53BF41917D0 /* PBXContainerItemProxy */ = { + DBB0C2CA4A5078AB16DCA4953682B735 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 00491D7CF395B5626D63A9660278566F; - remoteInfo = RxMKMapView; + remoteGlobalIDString = 67CA06FDD153FA42DE76DF6EA680D7E9; + remoteInfo = RxCocoa; }; - BA49CE95B251073FF1E315A800A0DFBC /* PBXContainerItemProxy */ = { + E33343CF90F253476AF82CFC37F1FDAB /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = DD7C8BF89FE8053D0A2A2D88BB49CF07; - remoteInfo = Nimble; + remoteGlobalIDString = 4B36ECDDEF67C1536FC13D94E75C985D; + remoteInfo = Quick; }; - EDCCCD2AD921ED9EA9D5458BA3F76187 /* PBXContainerItemProxy */ = { + FB6B0A80979E7CF3F87C46B30338DAF0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = A9C37DB713A7999DB983BB80FD3FB70E; - remoteInfo = RxSwift; + remoteGlobalIDString = 6359FF11AB8FFF5E949A8E1BEF286406; + remoteInfo = RxMKMapView; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 016FEE6F7F071000009BD87395819C02 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; + 00E60052BDD8D971CBE366DB198D6F35 /* NSObject+Rx+RawRepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+RawRepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift"; sourceTree = ""; }; + 00F0A9127F682624E7510C24F7DC1D3C /* NMBStringify.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBStringify.m; path = Sources/NimbleObjectiveC/NMBStringify.m; sourceTree = ""; }; + 0147592A6453CB7D927FF379FA2714BB /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = Sources/Nimble/Utils/Errors.swift; sourceTree = ""; }; 01CCB59412EC0430B1F33311AC656FFA /* Pods_RxMKMapView_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_RxMKMapView_Tests.framework; path = "Pods-RxMKMapView_Tests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 01E7DA590659794AA3EEBFC00E8CF786 /* ControlEvent.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlEvent.swift; path = RxCocoa/Traits/ControlEvent.swift; sourceTree = ""; }; - 02988BC93D9967750FAF6BBBE9AD7634 /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; - 029F35A3A4206B22440DE533717C30EC /* RxTabBarControllerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTabBarControllerDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTabBarControllerDelegateProxy.swift; sourceTree = ""; }; - 02CE19702EAD07C4E33B56F843F72111 /* ObservableConvertibleType+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Driver.swift"; path = "RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift"; sourceTree = ""; }; - 0359BDDD17BF5B2C23C016A8B9CB344D /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; - 03BDB00063F34BF54EBEBF19A3288A59 /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Just.swift; sourceTree = ""; }; - 04162F721AF8AD212C41F3FEA95E2369 /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThanOrEqualTo.swift; path = Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift; sourceTree = ""; }; - 043D0BB798CBDA5A68FB541177EFC70F /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxCocoa/Deprecated.swift; sourceTree = ""; }; - 04614A9A7FA13F38655C84C5C4E0860B /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "XCTestObservationCenter+Register.m"; path = "Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m"; sourceTree = ""; }; - 0483178AD77176A8F63FC830AC36EB29 /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; - 0530079358B5DCDDDC4C93092EE5D858 /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; - 068643287D514302C771559AF3A01A25 /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; - 099C943CD9C31D8F4D64479E883BC0B3 /* BehaviorRelay+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "BehaviorRelay+Driver.swift"; path = "RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift"; sourceTree = ""; }; - 09DBB855A3B1D1F5969DA657388EE2C5 /* SchedulerType+SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerType+SharedSequence.swift"; path = "RxCocoa/Traits/SharedSequence/SchedulerType+SharedSequence.swift"; sourceTree = ""; }; + 01D66F103BE64130A1333B8F68C5BB93 /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; + 02326CBBDB838B8BEBD3F5F02D71AA3A /* ToSucceed.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToSucceed.swift; path = Sources/Nimble/Matchers/ToSucceed.swift; sourceTree = ""; }; + 026C53F58B2690ABDC9E656A9B1F3EB8 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; + 04B650543433D7CD4B3E5F5F1D1CE694 /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; + 04D146242EF31855D4A52A303A187AC8 /* UISearchBar+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISearchBar+Rx.swift"; path = "RxCocoa/iOS/UISearchBar+Rx.swift"; sourceTree = ""; }; + 06895BE9FF465B046CBA3912BAA7EFBE /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; + 06CCE49F53B6C7E8FBEDA170B798F2BD /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; + 07F8139733E9154A10E0FFC92A486961 /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Take.swift; sourceTree = ""; }; + 08DDC54B146BFF9C131CAC5BE42A9750 /* _RXKVOObserver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXKVOObserver.m; path = RxCocoa/Runtime/_RXKVOObserver.m; sourceTree = ""; }; + 0AE468B32B4E2D88920774CB4AB475EF /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Just.swift; sourceTree = ""; }; 0B9160785052094876E1AFB3CAD4D8BD /* RxMKMapView.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxMKMapView.framework; path = RxMKMapView.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 0C57E49B200B4E7221AE8949194C1495 /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; - 0C87222437F122A38335C0459BC45B71 /* SourceLocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourceLocation.swift; path = Sources/Nimble/Utils/SourceLocation.swift; sourceTree = ""; }; - 0CD2A8678DD1CEBF05B7F92630968BC2 /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/SubscribeOn.swift; sourceTree = ""; }; - 0CEF6C8DE7D801B88547CDA065132E9B /* NSLayoutConstraint+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSLayoutConstraint+Rx.swift"; path = "RxCocoa/Common/NSLayoutConstraint+Rx.swift"; sourceTree = ""; }; - 0E3CCACA78959F7384451E05A84AEFFD /* BeEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeEmpty.swift; path = Sources/Nimble/Matchers/BeEmpty.swift; sourceTree = ""; }; - 0EC0581C7C28835B8E7AA69A894DE090 /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; + 0C122D36174BFC09751ED88E43D2EB3F /* _RXKVOObserver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXKVOObserver.h; path = RxCocoa/Runtime/include/_RXKVOObserver.h; sourceTree = ""; }; + 0CAA16858B925845A9D8E4D826A5BDCE /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; + 0D1E9AA82A09B9CC77B3D4C21C3969CA /* MatcherProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherProtocols.swift; path = Sources/Nimble/Matchers/MatcherProtocols.swift; sourceTree = ""; }; + 0E475B5BAC23B315EB01AFC4B8DF7DE3 /* Callsite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Callsite.swift; path = Sources/Quick/Callsite.swift; sourceTree = ""; }; + 0E6C7879C0D619C974383B6BB6689DF2 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxCocoa/Deprecated.swift; sourceTree = ""; }; + 0E8A92E6244A7662724C4AD3F4B7F4BE /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; 0EE4D1590F8A91B6845F60D2698FA0C9 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; - 110B770FAC289A843DF9E2E2D7588CA1 /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/ObserveOn.swift; sourceTree = ""; }; - 115FCDD4D863C4FF466546CF475E9EC9 /* Nimble.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Nimble.h; path = Sources/Nimble/Nimble.h; sourceTree = ""; }; - 116F0698E3E2A84170169A5AE129E1C0 /* RxPickerViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxPickerViewDataSourceType.swift; sourceTree = ""; }; - 11C4A659AD1B01DFB232AF7222E604E3 /* CwlCatchException.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlCatchException.h; path = Sources/Lib/CwlPreconditionTesting/CwlCatchExceptionSupport/include/CwlCatchException.h; sourceTree = ""; }; + 0F63EDF5792426A70F6D3C2102241574 /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Empty.swift; sourceTree = ""; }; + 10EE614DCE3CE455DFF571B552D1E624 /* RaisesException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RaisesException.swift; path = Sources/Nimble/Matchers/RaisesException.swift; sourceTree = ""; }; + 1135346899906CCEA94EEB4B305AEF57 /* RxTableViewDataSourcePrefetchingProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourcePrefetchingProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDataSourcePrefetchingProxy.swift; sourceTree = ""; }; 121661513657CA7E473C1D8B7336AC49 /* Pods-RxMKMapView_Tests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-RxMKMapView_Tests-resources.sh"; sourceTree = ""; }; - 122CF935A2759C8765E19CB28F0A2FAD /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Map.swift; sourceTree = ""; }; - 1340EAFB759A984DAC970E1081920D3A /* RaisesException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RaisesException.swift; path = Sources/Nimble/Matchers/RaisesException.swift; sourceTree = ""; }; - 139CB5A47CB745ACDF311987E2AD89C9 /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; - 144696357E54A04EFB00706516B7034D /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Timer.swift; sourceTree = ""; }; - 146CF57EDC1C85BF328EC841E7F4489A /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Amb.swift; sourceTree = ""; }; - 14F7E817FB7985F36BBDAB50DC280685 /* ObservableType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+Extensions.swift"; path = "RxSwift/ObservableType+Extensions.swift"; sourceTree = ""; }; - 15139E2E5DBEBF2C9E62F6E1D1C9E4E0 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 152CC44D817E893567014F28F2A8B3D4 /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; - 1572436C33BEA5E9B33EA6B23A74F020 /* BeIdenticalTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeIdenticalTo.swift; path = Sources/Nimble/Matchers/BeIdenticalTo.swift; sourceTree = ""; }; - 15C723F204203B0B8E46729339C8363F /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/TakeWhile.swift; sourceTree = ""; }; - 169B2291E0D934B678F9C1C68045625A /* Closures.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Closures.swift; path = Sources/Quick/Hooks/Closures.swift; sourceTree = ""; }; - 18E8C16AB2C1CA85C166A915AC666AFC /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; - 1AA6EDCABD45CE0FDEAF058108D2C400 /* RxWebViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxWebViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxWebViewDelegateProxy.swift; sourceTree = ""; }; - 1EB3E07B350DE8D7BBD26C8C62B7B702 /* Observable+Bind.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Bind.swift"; path = "RxCocoa/Common/Observable+Bind.swift"; sourceTree = ""; }; - 1F8E124EDB42DD4D43558C285C520F87 /* UIStepper+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIStepper+Rx.swift"; path = "RxCocoa/iOS/UIStepper+Rx.swift"; sourceTree = ""; }; - 2067D26322C781413DB62FD8F3B74DCE /* QuickSpecBase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickSpecBase.m; path = Sources/QuickSpecBase/QuickSpecBase.m; sourceTree = ""; }; - 207AC3AA76C4BF05705CC81C11DD9C8D /* NSTextStorage+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSTextStorage+Rx.swift"; path = "RxCocoa/iOS/NSTextStorage+Rx.swift"; sourceTree = ""; }; + 1243AC0E46D3C05769D489AAF324CCD3 /* Nimble.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Nimble.h; path = Sources/Nimble/Nimble.h; sourceTree = ""; }; + 131CEDD83A7D9BFD7145A8F0F4ED8265 /* BeVoid.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeVoid.swift; path = Sources/Nimble/Matchers/BeVoid.swift; sourceTree = ""; }; + 144B78E1CF8D0DA403A3430C34AABE83 /* Completable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Completable.swift; path = RxSwift/Traits/Completable.swift; sourceTree = ""; }; + 145C79014EF6F0DA568F118A61750C9D /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; + 14DB604B4EECDF20C82F54653BADFEEB /* MatchError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatchError.swift; path = Sources/Nimble/Matchers/MatchError.swift; sourceTree = ""; }; + 14E47CBA7C00F56CB688197C81F1647A /* CwlPreconditionTesting.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlPreconditionTesting.h; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h; sourceTree = ""; }; + 1511CC806CFA205BDC9ADEFD78CE5165 /* RxCocoa.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxCocoa.modulemap; sourceTree = ""; }; + 15BEDA3EE636F4C6CD2BF70A3FD94233 /* RxTableViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift; sourceTree = ""; }; + 15E7D034B08CFE61BFE649CD2BB0C6C1 /* Nimble.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Nimble.modulemap; sourceTree = ""; }; + 15EEB5015828663DE6382CBA69AB015C /* RxScrollViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxScrollViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift; sourceTree = ""; }; + 1697323473EADE759DEA59039E181EE2 /* Example.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Example.swift; path = Sources/Quick/Example.swift; sourceTree = ""; }; + 17242ED251FDE56F0A17E0ED88D61D97 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; + 1752A109F631565A8DF191FEE2C71E58 /* Driver+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Subscription.swift"; path = "RxCocoa/Traits/Driver/Driver+Subscription.swift"; sourceTree = ""; }; + 1794A40F4B6EECC63B8509EAD3A5DD7A /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Sample.swift; sourceTree = ""; }; + 17B11DCCA663D8DBDC3B90D9503FFE96 /* Nimble-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Nimble-dummy.m"; sourceTree = ""; }; + 1A05D05535A966636281421A5EB8A093 /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "XCTestObservationCenter+Register.m"; path = "Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m"; sourceTree = ""; }; + 1AA6A98A33DA19580E4341D0AC4773A9 /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Skip.swift; sourceTree = ""; }; + 1AD31D624B269BBCE36E1EAEA91B5AE8 /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; + 1C23E8F6D880A2EB8B1D1898EE6F1A00 /* ObservableType+PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+PrimitiveSequence.swift"; path = "RxSwift/Traits/ObservableType+PrimitiveSequence.swift"; sourceTree = ""; }; + 1E2FF0F97397F9C2CBF60BD04CB5ADA4 /* ShareReplayScope.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplayScope.swift; path = RxSwift/Observables/ShareReplayScope.swift; sourceTree = ""; }; + 1E83C3F632F52C0B37CF9FBF3C365EF3 /* AsMaybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsMaybe.swift; path = RxSwift/Observables/AsMaybe.swift; sourceTree = ""; }; + 1EF94013BC51D39F75A07397C1044363 /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Never.swift; sourceTree = ""; }; + 1F2ED28BD966D1AD7BD9F9AABD0AD783 /* _RX.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RX.h; path = RxCocoa/Runtime/include/_RX.h; sourceTree = ""; }; + 1FB8E520BC8D0590EB22446E4F5BD9FA /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; + 204623B1E7DE01610EDCE042A98D5F52 /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/Internal/ScheduledItem.swift; sourceTree = ""; }; + 207BF2256D841F1DD406D3765296F435 /* ThrowError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowError.swift; path = Sources/Nimble/Matchers/ThrowError.swift; sourceTree = ""; }; + 20F92B165BE11101C4C84838D47198EF /* ControlProperty+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlProperty+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlProperty+Driver.swift"; sourceTree = ""; }; + 222A9E92F2EE61E75D10E74DACE6FAD1 /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; 223BC94AE1974B36CE76001D116138D9 /* Pods-RxMKMapView_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-RxMKMapView_Tests-dummy.m"; sourceTree = ""; }; - 227A8A4C1A3ED371CE69845F22921351 /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; + 22E4FF492A0DD66BED9D7EFE5315DD4C /* AdapterProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdapterProtocols.swift; path = Sources/Nimble/Adapters/AdapterProtocols.swift; sourceTree = ""; }; + 2336C764067127C706910FE1AD205396 /* NMBObjCMatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NMBObjCMatcher.swift; path = Sources/Nimble/Adapters/NMBObjCMatcher.swift; sourceTree = ""; }; + 23C96EFE094460B4EE1CEDCF5DCC03AD /* ErrorUtility.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ErrorUtility.swift; path = Sources/Quick/ErrorUtility.swift; sourceTree = ""; }; + 245FB24AB8BDC4C3D3F9502BB49A0029 /* Window.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Window.swift; path = RxSwift/Observables/Window.swift; sourceTree = ""; }; + 24DC40F49E6992DF322A0817F7977DD0 /* RxCocoaObjCRuntimeError+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "RxCocoaObjCRuntimeError+Extensions.swift"; path = "RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift"; sourceTree = ""; }; 24E7813291F257E73EBF9358A253E8C8 /* Nimble.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Nimble.framework; path = Nimble.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 25141FBBD9E079F9611F072CF7AA0B3A /* ToSucceed.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToSucceed.swift; path = Sources/Nimble/Matchers/ToSucceed.swift; sourceTree = ""; }; - 251DD7B6B61122C954D8BF8A63F8D804 /* HistoricalScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalScheduler.swift; path = RxSwift/Schedulers/HistoricalScheduler.swift; sourceTree = ""; }; - 253AD2AEBB5A90108E2929FCBCDA2379 /* PublishRelay+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PublishRelay+Signal.swift"; path = "RxCocoa/Traits/Signal/PublishRelay+Signal.swift"; sourceTree = ""; }; - 258BD36B3C289DE7AFA07CA1B1726EE8 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; - 29F39BAA4E579932EB14E50B51A25B34 /* CwlDarwinDefinitions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlDarwinDefinitions.swift; path = Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlDarwinDefinitions.swift; sourceTree = ""; }; - 2A227B9A5EB0A4F1897EC52FB5F3BC5B /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxSwift.modulemap; sourceTree = ""; }; - 2AB74A6FEC3427F893E750ECFC13B65B /* NMBStringify.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBStringify.m; path = Sources/NimbleObjectiveC/NMBStringify.m; sourceTree = ""; }; - 2AFCBAA70B3C226D5CF2027F1BFAE8E4 /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Sink.swift; sourceTree = ""; }; - 2B82317712385F7D92D281FC47554A21 /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; - 2BCF29EF950A5941054DCE6A58A24E4D /* RxCocoaObjCRuntimeError+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "RxCocoaObjCRuntimeError+Extensions.swift"; path = "RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift"; sourceTree = ""; }; - 2C99795FADB3F63EC877CB2EFAAE94D5 /* AsMaybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsMaybe.swift; path = RxSwift/Observables/AsMaybe.swift; sourceTree = ""; }; - 2CA7DD46F9F6B2A336562328A16FA871 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Filter.swift; sourceTree = ""; }; - 2D2E86A2AF889E8BDDB1507CA883F010 /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/SkipUntil.swift; sourceTree = ""; }; - 2D7D3CC792721153228E688E7172FED9 /* RxTableViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift; sourceTree = ""; }; - 2DE1A5E36A4C12755B1657A3CC293AB9 /* Nimble-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-umbrella.h"; sourceTree = ""; }; - 2E57E08CA6EBED35E331C68A3D687349 /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/StartWith.swift; sourceTree = ""; }; - 2EE1189288164D27E2B9E37875BE78E4 /* QuickSelectedTestSuiteBuilder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuickSelectedTestSuiteBuilder.swift; path = Sources/Quick/QuickSelectedTestSuiteBuilder.swift; sourceTree = ""; }; - 2F41F5A05848EDFA89D8D07737DCA436 /* CurrentTestCaseTracker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CurrentTestCaseTracker.h; path = Sources/NimbleObjectiveC/CurrentTestCaseTracker.h; sourceTree = ""; }; - 301B0104D1C04CC62450FE9C03219079 /* World+DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "World+DSL.swift"; path = "Sources/Quick/DSL/World+DSL.swift"; sourceTree = ""; }; + 260439C993AF59865677277853A7F95A /* RxCollectionViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift; sourceTree = ""; }; + 272432C7F90387C03DF0B8BC5CC45F01 /* ItemEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemEvents.swift; path = RxCocoa/iOS/Events/ItemEvents.swift; sourceTree = ""; }; + 2781C9C62EB92F40DF97491492A2AC1A /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; + 2786DA0F20DFFC602DA12FDC816C99F5 /* NMBExpectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NMBExpectation.swift; path = Sources/Nimble/Adapters/NMBExpectation.swift; sourceTree = ""; }; + 27D2FD7BA39EB5A32A3A8CE059A7E152 /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Merge.swift; sourceTree = ""; }; + 2839E2443071569551AE460CA7555437 /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/TakeLast.swift; sourceTree = ""; }; + 29ECAC2253A0A7A456B63A6B8969E4CA /* HistoricalScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalScheduler.swift; path = RxSwift/Schedulers/HistoricalScheduler.swift; sourceTree = ""; }; + 2A77A1C2441FA2C60B46EB9BAEFDF338 /* UISearchController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISearchController+Rx.swift"; path = "RxCocoa/iOS/UISearchController+Rx.swift"; sourceTree = ""; }; + 2B15EFCC09A94956CEC909F8482C96F1 /* RxCocoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoa.h; path = RxCocoa/RxCocoa.h; sourceTree = ""; }; + 2BB48C0D5CA7A443728C5F07CF7E8577 /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; + 2BE10480743B20C6AEFF2F753EE761F2 /* UIActivityIndicatorView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIActivityIndicatorView+Rx.swift"; path = "RxCocoa/iOS/UIActivityIndicatorView+Rx.swift"; sourceTree = ""; }; + 2C22B652D0E45F0D5E873ACAEF964D8E /* Zip+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+Collection.swift"; path = "RxSwift/Observables/Zip+Collection.swift"; sourceTree = ""; }; + 2C9AA83A750DE6B0C11697EC35E9A7BF /* Completable+AndThen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Completable+AndThen.swift"; path = "RxSwift/Traits/Completable+AndThen.swift"; sourceTree = ""; }; + 2CEF0314318F70A0A8C902BA09D04BCB /* ObservableConvertibleType+SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+SharedSequence.swift"; path = "RxCocoa/Traits/SharedSequence/ObservableConvertibleType+SharedSequence.swift"; sourceTree = ""; }; + 2CFB7B7556D9FE0BDAEAF9FF5536AFC2 /* Debounce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debounce.swift; path = RxSwift/Observables/Debounce.swift; sourceTree = ""; }; + 2D062F96B40118C55B25BABCF7184BCD /* RxTextStorageDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTextStorageDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTextStorageDelegateProxy.swift; sourceTree = ""; }; + 2D298E1FFA6F789AC999FA19C96A8BA2 /* RxCocoa-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-umbrella.h"; sourceTree = ""; }; + 2D69EE698CFC5A6DEF7EB7B032E1E178 /* UIPageControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIPageControl+Rx.swift"; path = "RxCocoa/iOS/UIPageControl+Rx.swift"; sourceTree = ""; }; + 2D75E1B40820B930E65895F1D67FBB99 /* KVORepresentable+Swift.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+Swift.swift"; path = "RxCocoa/Foundation/KVORepresentable+Swift.swift"; sourceTree = ""; }; + 2EC44F22FF9C12ABF02E7DCC0C3C4FF9 /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; + 2EEAFB13137F578A7CCB37763A111EAF /* InvocableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableType.swift; path = RxSwift/Schedulers/Internal/InvocableType.swift; sourceTree = ""; }; + 2EFD8FA9F4F987E9EAEFFC04EFAC826F /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 2FC3273E108D95DEE5D3330C001587F6 /* RefCountDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCountDisposable.swift; path = RxSwift/Disposables/RefCountDisposable.swift; sourceTree = ""; }; + 307122F62A859DA24E32BC1B46143337 /* ControlTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlTarget.swift; path = RxCocoa/Common/ControlTarget.swift; sourceTree = ""; }; 30A3CB685634BA08E5C160316227035E /* Quick.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Quick.framework; path = Quick.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 324D90587D85CFBBDE6894DD96AE46DB /* AssertionRecorder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionRecorder.swift; path = Sources/Nimble/Adapters/AssertionRecorder.swift; sourceTree = ""; }; - 327EC1B1B2BFE8D5ED96891135DAFD37 /* RxCocoa-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxCocoa-dummy.m"; sourceTree = ""; }; - 32D24D1C2AD20D7CE2090BCD1238164F /* Enumerated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Enumerated.swift; path = RxSwift/Observables/Enumerated.swift; sourceTree = ""; }; - 32EAD46E56F125DF6D52EFC046098662 /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Buffer.swift; sourceTree = ""; }; - 32F7E78966B04149B22530830D017093 /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; - 33B3F6082E3BF4CEA7C18ADBA2390471 /* UIRefreshControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIRefreshControl+Rx.swift"; path = "RxCocoa/iOS/UIRefreshControl+Rx.swift"; sourceTree = ""; }; - 3481076E8C6BAF22A36840EFA65F0564 /* ControlProperty+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlProperty+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlProperty+Driver.swift"; sourceTree = ""; }; - 35FC4C7DD779F99E331F44A460E3544F /* BeNil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeNil.swift; path = Sources/Nimble/Matchers/BeNil.swift; sourceTree = ""; }; - 36AFA0E7AE82DF6C5FFC866BFED5CF06 /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; - 370F79142856709ECF6492A4F15E95AD /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Skip.swift; sourceTree = ""; }; - 3710C729D3B5B8A08D5E14EB5A219C1F /* ContainElementSatisfying.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContainElementSatisfying.swift; path = Sources/Nimble/Matchers/ContainElementSatisfying.swift; sourceTree = ""; }; - 3730BEAD9686D2575C192FF69BF9F987 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; - 375D02B25C34F0BF32D1510D8F95D796 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 37B88DC4FDAE36C38892507CBCEE30FA /* _RXDelegateProxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXDelegateProxy.h; path = RxCocoa/Runtime/include/_RXDelegateProxy.h; sourceTree = ""; }; - 380D3E8A339A43EBC12864E907E9B775 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 386457DD48BDC9656528107A90ED0530 /* NSObject+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx.swift"; path = "RxCocoa/Foundation/NSObject+Rx.swift"; sourceTree = ""; }; - 3933053011E7DD7D5D8FCA704FC7EF0E /* AsyncMatcherWrapper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncMatcherWrapper.swift; path = Sources/Nimble/Matchers/AsyncMatcherWrapper.swift; sourceTree = ""; }; - 3A32D6137F01423ECA026F8366021B34 /* RxCocoa-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-umbrella.h"; sourceTree = ""; }; - 3AE228AD2E38A4FAE5FF5C16DB6448F0 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThanOrEqual.swift; path = Sources/Nimble/Matchers/BeLessThanOrEqual.swift; sourceTree = ""; }; - 3BCC88009BE3C09A42BC563E57448E40 /* RetryWhen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RetryWhen.swift; path = RxSwift/Observables/RetryWhen.swift; sourceTree = ""; }; - 3C2162488EAB56A536BBC0F785008C7C /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/TakeLast.swift; sourceTree = ""; }; - 3C5D402BB30798F3CA846D2B8C1933C5 /* _RX.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RX.m; path = RxCocoa/Runtime/_RX.m; sourceTree = ""; }; - 3E2C23ABE928456EE5E11CF2C5606FBD /* Nimble.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Nimble.xcconfig; sourceTree = ""; }; - 3F350916BC86789D5680E5E52EF8F4F5 /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; - 3F7047CE52781642F2B5C9AB22BA3649 /* DelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxy.swift; path = RxCocoa/Common/DelegateProxy.swift; sourceTree = ""; }; - 401EBBD7261F3052A2F80BC12C3517A0 /* QuickTestSuite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuickTestSuite.swift; path = Sources/Quick/QuickTestSuite.swift; sourceTree = ""; }; + 30A4E2C4C2616C0DC0D4ED4222C57D8A /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; + 30BF4CBF3FAFC83E7CB0FE0DE9D473C6 /* BeLessThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThan.swift; path = Sources/Nimble/Matchers/BeLessThan.swift; sourceTree = ""; }; + 33B4FE38EE28C875086021E5305DC4B4 /* DSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = DSL.m; path = Sources/NimbleObjectiveC/DSL.m; sourceTree = ""; }; + 34599842C2A1C1E6BE6126290D98F049 /* BeLogical.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLogical.swift; path = Sources/Nimble/Matchers/BeLogical.swift; sourceTree = ""; }; + 34B0D284ED98FA1C30FD79B8D443A0E5 /* Sequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sequence.swift; path = RxSwift/Observables/Sequence.swift; sourceTree = ""; }; + 37654A86DCCE225D99CB694028C7B34E /* NSString+C99ExtendedIdentifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSString+C99ExtendedIdentifier.swift"; path = "Sources/Quick/NSString+C99ExtendedIdentifier.swift"; sourceTree = ""; }; + 38D0A2A14896DA436D57453977CE9C8F /* Quick.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Quick.modulemap; sourceTree = ""; }; + 3AD0205B9606D951A1CB8396102EE905 /* ExpectationMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpectationMessage.swift; path = Sources/Nimble/ExpectationMessage.swift; sourceTree = ""; }; + 3B1BEC46712095F69BB4FB581BF03297 /* CwlDarwinDefinitions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlDarwinDefinitions.swift; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlDarwinDefinitions.swift; sourceTree = ""; }; + 3B50B754631679B8FD2B0DFFED30B580 /* String+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Rx.swift"; path = "RxSwift/Extensions/String+Rx.swift"; sourceTree = ""; }; + 3DFED445AEE9234DAB93153AA5C9101D /* URLSession+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URLSession+Rx.swift"; path = "RxCocoa/Foundation/URLSession+Rx.swift"; sourceTree = ""; }; + 3EA536C250C260C1F67D3663A0253010 /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; + 3EFD6BAA06DDF0814ACC06DA4DFD1585 /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; + 3F7277B79BB3F1258520CE33AED546A0 /* UIGestureRecognizer+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIGestureRecognizer+Rx.swift"; path = "RxCocoa/iOS/UIGestureRecognizer+Rx.swift"; sourceTree = ""; }; + 3F8EC1E29B925D024D432B9C80CB7A91 /* QuickConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickConfiguration.m; path = Sources/QuickObjectiveC/Configuration/QuickConfiguration.m; sourceTree = ""; }; + 3FAC716FB50C6E985EFE837A3698F271 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Observables/Error.swift; sourceTree = ""; }; + 400296542C8AD4F1C661CA80141C6BA4 /* VirtualTimeConverterType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeConverterType.swift; path = RxSwift/Schedulers/VirtualTimeConverterType.swift; sourceTree = ""; }; + 400640BFB9DDB0F524CFB9264C05DA63 /* NotificationCenter+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NotificationCenter+Rx.swift"; path = "RxCocoa/Foundation/NotificationCenter+Rx.swift"; sourceTree = ""; }; + 400C2D5EAD88529B7E38A9B572F14405 /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; + 40BCB9F9CF03C05E83DC4CCC71784ABD /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Timer.swift; sourceTree = ""; }; + 412F690579581D810CB10EFC7C525EDD /* UIViewController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+Rx.swift"; path = "RxCocoa/iOS/UIViewController+Rx.swift"; sourceTree = ""; }; 41691C743EA064C8CD80072EF55CBB1D /* RxMKMapView-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxMKMapView-umbrella.h"; sourceTree = ""; }; - 433391E9AF88209EBFFDD78205344CF6 /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Reduce.swift; sourceTree = ""; }; + 417450B20CD3BA42B4872BA978910FB0 /* Quick-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Quick-dummy.m"; sourceTree = ""; }; + 422A8ECD7AA96EA363E4A88849BCCD46 /* Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Async.swift; path = Sources/Nimble/Matchers/Async.swift; sourceTree = ""; }; + 42D6FE920B2475E193281C73F799F63F /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 433D6F464DF5553729C2E50AE1507E33 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 44262172E60408FC23B672E14D385D8B /* UITextView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextView+Rx.swift"; path = "RxCocoa/iOS/UITextView+Rx.swift"; sourceTree = ""; }; + 434A7C8BD010C3E04D453F3BD7E88A3C /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/CombineLatest+arity.swift"; sourceTree = ""; }; + 439225A4981E7064956688894EEA0234 /* HaveCount.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HaveCount.swift; path = Sources/Nimble/Matchers/HaveCount.swift; sourceTree = ""; }; + 43AC80F40484A5DAED86230A6E385647 /* CombineLatest+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+Collection.swift"; path = "RxSwift/Observables/CombineLatest+Collection.swift"; sourceTree = ""; }; + 43B66CB7127790520B5462201F9B7BFD /* UIApplication+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIApplication+Rx.swift"; path = "RxCocoa/iOS/UIApplication+Rx.swift"; sourceTree = ""; }; + 43D197B84AA0304E7DAB262696FAEDAC /* HooksPhase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HooksPhase.swift; path = Sources/Quick/Hooks/HooksPhase.swift; sourceTree = ""; }; + 43DB9B5B927C40B6AFC2723B709F11D4 /* CwlMachBadInstructionHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlMachBadInstructionHandler.m; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m; sourceTree = ""; }; + 440C63070904512F7C7023ED3CEA481F /* UIControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIControl+Rx.swift"; path = "RxCocoa/iOS/UIControl+Rx.swift"; sourceTree = ""; }; + 44434F63DCD548707D65D432819551CF /* Equal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Equal.swift; path = Sources/Nimble/Matchers/Equal.swift; sourceTree = ""; }; 4459F85009E8E385B406BF8B18F1B29B /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxSwift.framework; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 44888F02CF4E73217EE2D9DAC42C595E /* QuickConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickConfiguration.h; path = Sources/QuickObjectiveC/Configuration/QuickConfiguration.h; sourceTree = ""; }; 44BAC7FB76D50A163823E91472CF74C2 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 44E5D383177818B4127793BC2B5F9E1D /* UIView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Rx.swift"; path = "RxCocoa/iOS/UIView+Rx.swift"; sourceTree = ""; }; 44F18F88AA460FE99423F5AD5EF1C708 /* Pods-RxMKMapView_Tests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-RxMKMapView_Tests-frameworks.sh"; sourceTree = ""; }; - 450023DC5E8881E249923D0A22A2ED54 /* AdapterProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdapterProtocols.swift; path = Sources/Nimble/Adapters/AdapterProtocols.swift; sourceTree = ""; }; - 455401C62B06911224A105574B5690E5 /* CombineLatest+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+Collection.swift"; path = "RxSwift/Observables/CombineLatest+Collection.swift"; sourceTree = ""; }; + 44FCF50E368001F7BA4AC14ED2F15F1F /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/ToArray.swift; sourceTree = ""; }; + 4503C42EF7D6F24326D72D79D844D8B6 /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Sink.swift; sourceTree = ""; }; + 454C7540496C1B09D202F77C7B181E4F /* BooleanDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BooleanDisposable.swift; path = RxSwift/Disposables/BooleanDisposable.swift; sourceTree = ""; }; + 4586DA838C5CF04F65322FF68FE48ED1 /* BeginWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeginWith.swift; path = Sources/Nimble/Matchers/BeginWith.swift; sourceTree = ""; }; + 45BD0CCFC887972A4B2DE16D117C38DC /* UIScrollView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIScrollView+Rx.swift"; path = "RxCocoa/iOS/UIScrollView+Rx.swift"; sourceTree = ""; }; + 45CE5745C3EEABCF3FF4034C6C0A2F6F /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; 46231D0E38BD9F0568A192805770383C /* Pods-RxMKMapView_Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-RxMKMapView_Tests-acknowledgements.plist"; sourceTree = ""; }; - 46390C887E39971D1DBA29720D0DDAC8 /* UINavigationController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UINavigationController+Rx.swift"; path = "RxCocoa/iOS/UINavigationController+Rx.swift"; sourceTree = ""; }; - 46D6910763BBF5023722E47D5E00B3E4 /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; - 477BB159C92D213532285145AAF0573B /* RxTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTarget.swift; path = RxCocoa/Common/RxTarget.swift; sourceTree = ""; }; - 47914A3D309D51A727B04CB0DECDC7CA /* NSBundle+CurrentTestBundle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSBundle+CurrentTestBundle.swift"; path = "Sources/Quick/NSBundle+CurrentTestBundle.swift"; sourceTree = ""; }; - 479804D1592E08C864DDB8CCAC347BF6 /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/Internal/ScheduledItem.swift; sourceTree = ""; }; - 47E10C7AA777DF62C2BFB3262C0C926F /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/DelaySubscription.swift; sourceTree = ""; }; - 48669948351EA70727E1250A589009C0 /* QuickConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickConfiguration.m; path = Sources/QuickObjectiveC/Configuration/QuickConfiguration.m; sourceTree = ""; }; - 487B10BAB561F90B664AEBDEB8DFE6FF /* UITableView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITableView+Rx.swift"; path = "RxCocoa/iOS/UITableView+Rx.swift"; sourceTree = ""; }; - 489C4B3C3F2FC7A9E9C688A76FF8DD89 /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; - 48DDCCAD6E72E86D9A1379D6F6F2670B /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Deferred.swift; sourceTree = ""; }; - 48FFA974F3704B71D8E3EB41EF127707 /* NMBExceptionCapture.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBExceptionCapture.m; path = Sources/NimbleObjectiveC/NMBExceptionCapture.m; sourceTree = ""; }; - 496994DB1EF276978C5F413D263EC8AF /* UITabBarItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITabBarItem+Rx.swift"; path = "RxCocoa/iOS/UITabBarItem+Rx.swift"; sourceTree = ""; }; - 498F984E13F59098CCDD6DBCB5539479 /* UISwitch+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISwitch+Rx.swift"; path = "RxCocoa/iOS/UISwitch+Rx.swift"; sourceTree = ""; }; + 47E8CFA1BAC7008FE92F22E9D1590C46 /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; + 49F6D7BC491FCB95062E772AF1190544 /* ThrowAssertion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowAssertion.swift; path = Sources/Nimble/Matchers/ThrowAssertion.swift; sourceTree = ""; }; + 4A0A54AA16A97CF6B2492A937C1EFCCF /* Quick-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-prefix.pch"; sourceTree = ""; }; + 4A9CB6EA0B63545A29488FE16156D11C /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; 4AB67974FF59CCC1B1A5E5C732860F65 /* RxMapViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMapViewDataSourceType.swift; path = Sources/RxMapViewDataSourceType.swift; sourceTree = ""; }; - 4BC9A52317D5AA22126C0E8909809A21 /* URL+FileName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URL+FileName.swift"; path = "Sources/Quick/URL+FileName.swift"; sourceTree = ""; }; - 4C2DA45CEA673FC21C083C2927FF0B1F /* UIButton+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Rx.swift"; path = "RxCocoa/iOS/UIButton+Rx.swift"; sourceTree = ""; }; + 4B4E571DFCCA779BC81ADA8B6561785B /* KeyPathBinder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyPathBinder.swift; path = RxCocoa/Common/KeyPathBinder.swift; sourceTree = ""; }; + 4BC5472CEAD640B3618D278100824B84 /* ControlProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlProperty.swift; path = RxCocoa/Traits/ControlProperty.swift; sourceTree = ""; }; + 4C3F8C59BDD65E38BB70FE0BD87CF937 /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; + 4C4C28790F90D139C6BC732B0822D58C /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Debug.swift; sourceTree = ""; }; + 4C7FC29913FA43267814D022E2CEB879 /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; + 4CCCE6C6987C3E4B71483F41E759920D /* Quick-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-umbrella.h"; sourceTree = ""; }; 4CE3FF178889316CE0562F09792C2A8C /* RxMKMapView.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxMKMapView.xcconfig; sourceTree = ""; }; - 4D2006DDC5884938917D4A89714E1581 /* RxTextStorageDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTextStorageDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTextStorageDelegateProxy.swift; sourceTree = ""; }; - 4D9E89D347036D4A511E9E4D7DB79C81 /* UICollectionView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UICollectionView+Rx.swift"; path = "RxCocoa/iOS/UICollectionView+Rx.swift"; sourceTree = ""; }; - 4DEFF509F71C1682460B451E189DB9B2 /* BehaviorRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorRelay.swift; path = RxCocoa/Traits/BehaviorRelay.swift; sourceTree = ""; }; - 4E3A1744B1890284C2E4897E6BA1D29E /* UISegmentedControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISegmentedControl+Rx.swift"; path = "RxCocoa/iOS/UISegmentedControl+Rx.swift"; sourceTree = ""; }; + 4D1A234521CB9C3442EE6B1F1F5298E4 /* BeIdenticalTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeIdenticalTo.swift; path = Sources/Nimble/Matchers/BeIdenticalTo.swift; sourceTree = ""; }; + 4D3D60F046133044042C3D59EF93823A /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; + 4DCAE01566D05413838AB436C8F4C232 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThanOrEqual.swift; path = Sources/Nimble/Matchers/BeLessThanOrEqual.swift; sourceTree = ""; }; + 4EB0814CCABD7BE039B8D8650A8A90AB /* QuickTestSuite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuickTestSuite.swift; path = Sources/Quick/QuickTestSuite.swift; sourceTree = ""; }; + 4F941CB1F490FC9BC344D03696D5CDE8 /* DispatchQueueConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueConfiguration.swift; path = RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift; sourceTree = ""; }; 4F99811145CBDD5263B1E7A252449CDB /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 5037D6015FCAFA99DFB53613DBEF6BE2 /* Quick.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Quick.xcconfig; sourceTree = ""; }; - 50511AEDC96DAB1E5A6C377E14E283CB /* ShareReplayScope.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplayScope.swift; path = RxSwift/Observables/ShareReplayScope.swift; sourceTree = ""; }; - 51ADCF68BEC33CE866E47A24D524E375 /* Completable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Completable.swift; path = RxSwift/Traits/Completable.swift; sourceTree = ""; }; - 51B06483E3A93AFAAB7D010C1CD18E99 /* Quick-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-prefix.pch"; sourceTree = ""; }; - 52971FC37160BBDC4F53A59E3CED4640 /* FailureMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FailureMessage.swift; path = Sources/Nimble/FailureMessage.swift; sourceTree = ""; }; - 52D8929363C4C99063F9D0606DC397F5 /* RxTextViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTextViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift; sourceTree = ""; }; + 4FDB8BEA47C935893B84C1C65E314E12 /* UISlider+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISlider+Rx.swift"; path = "RxCocoa/iOS/UISlider+Rx.swift"; sourceTree = ""; }; + 5009CA87ED85018BEFD5819A977AC2B6 /* Reactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reactive.swift; path = RxSwift/Reactive.swift; sourceTree = ""; }; + 505417D177507A59364FDB5D52EEF802 /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Do.swift; sourceTree = ""; }; + 50F31BC978C6FF1B0C3F5169E49651C0 /* ContainElementSatisfying.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContainElementSatisfying.swift; path = Sources/Nimble/Matchers/ContainElementSatisfying.swift; sourceTree = ""; }; + 50FD79A3FB41CC3E0F5DEDCFE21A4F44 /* TextInput.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextInput.swift; path = RxCocoa/Common/TextInput.swift; sourceTree = ""; }; + 5347CCA30AD86EC7E654006145746CBA /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; + 537F7F189A849455FB9AC9B63AEDA4FC /* PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrimitiveSequence.swift; path = RxSwift/Traits/PrimitiveSequence.swift; sourceTree = ""; }; 53E97E65CA8D9D2C80F2734492EC621B /* MKMapView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "MKMapView+Rx.swift"; path = "Sources/MKMapView+Rx.swift"; sourceTree = ""; }; - 553621C4A66AE02CBCE39FC0397830AD /* World.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = World.swift; path = Sources/Quick/World.swift; sourceTree = ""; }; - 558001491502AC2CBD3CA5203CD87775 /* ErrorUtility.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ErrorUtility.swift; path = Sources/Quick/ErrorUtility.swift; sourceTree = ""; }; - 558A1A95CFFB9B3C7710361433E9353E /* Signal+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Signal+Subscription.swift"; path = "RxCocoa/Traits/Signal/Signal+Subscription.swift"; sourceTree = ""; }; - 55C64D6599D19B730A5C34F21E61C1B9 /* RxCocoaRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoaRuntime.h; path = RxCocoa/Runtime/include/RxCocoaRuntime.h; sourceTree = ""; }; - 567388BA2CC77049E907FE712FAC3869 /* ControlTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlTarget.swift; path = RxCocoa/Common/ControlTarget.swift; sourceTree = ""; }; - 56A6D97BAF61A1A104113F9FD71D535D /* ExampleGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleGroup.swift; path = Sources/Quick/ExampleGroup.swift; sourceTree = ""; }; - 5754CC1461F5C35D6308D56E180623A3 /* Quick-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Quick-dummy.m"; sourceTree = ""; }; - 583C2734B88559057BEB843D489843EA /* RxSearchControllerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxSearchControllerDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxSearchControllerDelegateProxy.swift; sourceTree = ""; }; - 58EF15C797FD8FD33005BA693FCDB336 /* AddRef.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AddRef.swift; path = RxSwift/Observables/AddRef.swift; sourceTree = ""; }; - 5A030045B8EC1E540A7B03927405B495 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Sources/Quick/DSL/DSL.swift; sourceTree = ""; }; - 5A633EA875E5B84F3A818570F2BA122E /* Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Signal.swift; path = RxCocoa/Traits/Signal/Signal.swift; sourceTree = ""; }; - 5A853FD548CFFBB8A0A0DCA51E1DDA56 /* RxTableViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift; sourceTree = ""; }; - 5B4305DFC18F5027927DD61853B9C9FE /* RxCocoa.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCocoa.swift; path = RxCocoa/RxCocoa.swift; sourceTree = ""; }; - 5BDC0440F78CB32EE63FEBDE2FD6203D /* Example.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Example.swift; path = Sources/Quick/Example.swift; sourceTree = ""; }; - 5C6594E46D7E70D2788F165C0BF82E7D /* Quick-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Quick-umbrella.h"; sourceTree = ""; }; - 5D83DB2B16DC9AC0CB8E79403FAEC326 /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RxSwift/Observables/Optional.swift; sourceTree = ""; }; - 5DB77F3F946991AD9BCAB8E0E7F5F04D /* UITabBar+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITabBar+Rx.swift"; path = "RxCocoa/iOS/UITabBar+Rx.swift"; sourceTree = ""; }; - 5E2F9F0EEF308FEF2586BC8A7BF540A2 /* Binder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Binder.swift; path = RxCocoa/Common/Binder.swift; sourceTree = ""; }; + 54B6CC1DF8C18991B00953067A35C512 /* Observable+Bind.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Observable+Bind.swift"; path = "RxCocoa/Common/Observable+Bind.swift"; sourceTree = ""; }; + 54D4311C89682D05738A0E11C5281EC2 /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Using.swift; sourceTree = ""; }; + 54FFC9F2F486F59C0F3DCDEC52E9B845 /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Catch.swift; sourceTree = ""; }; + 56D31F826500C08D669A9F41CE8CE5D9 /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RxSwift/Observables/Optional.swift; sourceTree = ""; }; + 572F38D19834280FF6F628F9AF190AE7 /* Stringers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stringers.swift; path = Sources/Nimble/Utils/Stringers.swift; sourceTree = ""; }; + 57AEC5350629DE0B21611B68E5F14519 /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; + 5825F11C84D2287066DBC12F8E1C86A0 /* Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delay.swift; path = RxSwift/Observables/Delay.swift; sourceTree = ""; }; + 5862E4E93CCB48B0932875C98426F9D1 /* Contain.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Contain.swift; path = Sources/Nimble/Matchers/Contain.swift; sourceTree = ""; }; + 5889E5E4119581FACAC012999BF861D4 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; + 5A3D3FF3FF35CE8C139DEECA762CBF85 /* KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVORepresentable.swift; path = RxCocoa/Foundation/KVORepresentable.swift; sourceTree = ""; }; + 5A9D4372A88D5CF1EC2A42B2F3EC7F78 /* RxCollectionViewDataSourcePrefetchingProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourcePrefetchingProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDataSourcePrefetchingProxy.swift; sourceTree = ""; }; + 5BE55FC62D9D797E81DDE202A07AC7FB /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Switch.swift; sourceTree = ""; }; + 5CCA0141A37D61178B0D0FDC755514AB /* ObservableType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+Extensions.swift"; path = "RxSwift/ObservableType+Extensions.swift"; sourceTree = ""; }; + 5D143E70C9AFE2588F2B6FF32A4259EC /* NSObject+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx.swift"; path = "RxCocoa/Foundation/NSObject+Rx.swift"; sourceTree = ""; }; + 5D7EBC061852FEC73D1049F8C5DCD5CB /* UILabel+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILabel+Rx.swift"; path = "RxCocoa/iOS/UILabel+Rx.swift"; sourceTree = ""; }; + 5DF15B90FE050F505DA6EF5DC4D54F8D /* mach_excServer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mach_excServer.h; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.h; sourceTree = ""; }; 5E535DF09EBBB23CF1D887DBD03E7012 /* Pods-RxMKMapView_Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-RxMKMapView_Tests-acknowledgements.markdown"; sourceTree = ""; }; - 5E9C78FEACF5FC55A6BB962CE4F20F41 /* XCTestSuite+QuickTestSuiteBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "XCTestSuite+QuickTestSuiteBuilder.m"; path = "Sources/QuickObjectiveC/XCTestSuite+QuickTestSuiteBuilder.m"; sourceTree = ""; }; - 608FD17987CA6CE0402DB2E3526337DA /* UIControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIControl+Rx.swift"; path = "RxCocoa/iOS/UIControl+Rx.swift"; sourceTree = ""; }; - 614AE9A4B3902A29071694917230F292 /* Disposables.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposables.swift; path = RxSwift/Disposables/Disposables.swift; sourceTree = ""; }; - 61C6E264AEA879DFAB9E8E58A86DCE7C /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = Sources/Nimble/Utils/Errors.swift; sourceTree = ""; }; - 61F42556C008D26774DA09529DD4A6E2 /* RxSearchBarDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxSearchBarDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift; sourceTree = ""; }; - 61FDF3508AFE0DB30D335711551E096C /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Sample.swift; sourceTree = ""; }; - 62A5E455DFC3C7783A444DFDB657633D /* VirtualTimeConverterType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeConverterType.swift; path = RxSwift/Schedulers/VirtualTimeConverterType.swift; sourceTree = ""; }; - 62BD30D31577704D5F9FD519CFDAB3F7 /* RxCocoa.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxCocoa.modulemap; sourceTree = ""; }; - 62F8CACDC441B2BB5AC919E81ECBCF16 /* CwlCatchException.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlCatchException.m; path = Sources/Lib/CwlPreconditionTesting/CwlCatchExceptionSupport/CwlCatchException.m; sourceTree = ""; }; - 63A04681E37F2095466ADFF20300820E /* QuickSpec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickSpec.h; path = Sources/QuickObjectiveC/QuickSpec.h; sourceTree = ""; }; - 63D0EC03C02EF7BC9C0E3F0F833F0914 /* NMBExceptionCapture.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBExceptionCapture.h; path = Sources/NimbleObjectiveC/NMBExceptionCapture.h; sourceTree = ""; }; - 65C7B5D92B8CCAB8033A0ABC92DF4DB8 /* Completable+AndThen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Completable+AndThen.swift"; path = "RxSwift/Traits/Completable+AndThen.swift"; sourceTree = ""; }; - 665BF7882CC230BA74282A1849AB48E7 /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; - 667024656DD711CB4992A56F39870366 /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; + 5F5E50F4E884001CCDF7AE95A5ABAA52 /* Expression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expression.swift; path = Sources/Nimble/Expression.swift; sourceTree = ""; }; + 5F6C4A7364FFC5183573FACCC23E2912 /* BeEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeEmpty.swift; path = Sources/Nimble/Matchers/BeEmpty.swift; sourceTree = ""; }; + 5F95D30E85804C0BC6CE9DA07E5B37CF /* RxCollectionViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift; sourceTree = ""; }; + 5FBB3794040650A4630116E1502C4772 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Sources/Nimble/DSL.swift; sourceTree = ""; }; + 6018A05CB1F8744F15C0FA26047B5E25 /* Nimble-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-prefix.pch"; sourceTree = ""; }; + 6195086661AB093142B6C9BC3A25B304 /* Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Signal.swift; path = RxCocoa/Traits/Signal/Signal.swift; sourceTree = ""; }; + 61B8A7B384D65DFD164E86FB52B8F7FA /* Await.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Await.swift; path = Sources/Nimble/Utils/Await.swift; sourceTree = ""; }; + 628439AF7C85B2234013AAC7C107CD7E /* World+DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "World+DSL.swift"; path = "Sources/Quick/DSL/World+DSL.swift"; sourceTree = ""; }; + 62A4BD10D11A7EA8B77519F928200F45 /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; + 62AF3070AA3E15C0F8FF810CE6550EF5 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Filter.swift; sourceTree = ""; }; + 631DAE9E8B0643E251CB2D5E3A98C2BD /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; + 637BF6E43A372C81D8A9969A028B5BD2 /* UIRefreshControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIRefreshControl+Rx.swift"; path = "RxCocoa/iOS/UIRefreshControl+Rx.swift"; sourceTree = ""; }; + 63B888CF34E0A7BB88FCD52656EBA433 /* RxCocoa.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxCocoa.xcconfig; sourceTree = ""; }; + 644838F87AD57DD6C705B89987C00671 /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; + 67050FE7966007C5CE74862EFE2277D6 /* PrimitiveSequence+Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PrimitiveSequence+Zip+arity.swift"; path = "RxSwift/Traits/PrimitiveSequence+Zip+arity.swift"; sourceTree = ""; }; + 671DE96D807CC6339EB9BB0ACFCE491E /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/StartWith.swift; sourceTree = ""; }; 67B638EC53767B8C06926C8A81CAB289 /* Pods-RxMKMapView_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-RxMKMapView_Tests.debug.xcconfig"; sourceTree = ""; }; - 685F25BE8401BD72438B97602EEDC90B /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Generate.swift; sourceTree = ""; }; - 696616F053771DE51955229EF94AA46B /* Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Driver.swift; path = RxCocoa/Traits/Driver/Driver.swift; sourceTree = ""; }; - 6B14285809ABA0C362E6336B9CB1362A /* NSObject+Rx+KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+KVORepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift"; sourceTree = ""; }; - 6BB34244DCA9CBC0DB7E428927C9E7EF /* MatcherProtocols.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherProtocols.swift; path = Sources/Nimble/Matchers/MatcherProtocols.swift; sourceTree = ""; }; - 6BB9E0028F0C11F8FD8E595D31EF03E6 /* _RXKVOObserver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXKVOObserver.h; path = RxCocoa/Runtime/include/_RXKVOObserver.h; sourceTree = ""; }; + 67BF119FB37426FB7FE2DA654BF6384A /* SharedSequence+Operators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift"; sourceTree = ""; }; + 67FDEEFE8C09D4DE5D2054EFAFD63A6D /* Closures.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Closures.swift; path = Sources/Quick/Hooks/Closures.swift; sourceTree = ""; }; + 69780C0E3902531771C25DEC520DD626 /* AddRef.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AddRef.swift; path = RxSwift/Observables/AddRef.swift; sourceTree = ""; }; + 69C45D0BD14B7E4715B0DA13E574862C /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; + 6A900D0995A38FB4CD0CF575304812A8 /* ObservableConvertibleType+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Driver.swift"; path = "RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift"; sourceTree = ""; }; + 6AB6AAC726D133F276157C909A917ACD /* _RXDelegateProxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXDelegateProxy.h; path = RxCocoa/Runtime/include/_RXDelegateProxy.h; sourceTree = ""; }; + 6AC7B594DAD6B16D190B4745D8ABD13C /* DelegateProxyType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxyType.swift; path = RxCocoa/Common/DelegateProxyType.swift; sourceTree = ""; }; + 6AFFAC48FAF650CAB7CADFA2F5680E1C /* UIProgressView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIProgressView+Rx.swift"; path = "RxCocoa/iOS/UIProgressView+Rx.swift"; sourceTree = ""; }; + 6C48C486F8F2EC3C771EE6642571F3CF /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Map.swift; sourceTree = ""; }; 6C9E6CC3E15F3DC1BBE7C6EFA7A95375 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; - 6D2068627C724957CF45E36A46A5783D /* InvocableScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableScheduledItem.swift; path = RxSwift/Schedulers/Internal/InvocableScheduledItem.swift; sourceTree = ""; }; 6D3D367A4A1BD4E536F725A1BB06AF21 /* Pods-RxMKMapView_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-RxMKMapView_Tests.release.xcconfig"; sourceTree = ""; }; - 6E03678ADDF08214F94639FA5D89B128 /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Catch.swift; sourceTree = ""; }; - 6E53CEFA2B35C7A8F79577753D370334 /* BeCloseTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeCloseTo.swift; path = Sources/Nimble/Matchers/BeCloseTo.swift; sourceTree = ""; }; - 6E7D56FA5287A829BBFAD35C909DCE01 /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Zip+arity.swift"; sourceTree = ""; }; - 70A86F469531DA7C462B200288B75495 /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; - 714E92C83A62230A845499B4E4EB4957 /* String+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Rx.swift"; path = "RxSwift/Extensions/String+Rx.swift"; sourceTree = ""; }; - 71A08A2EB528805986D1A5967DA3801C /* NMBObjCMatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NMBObjCMatcher.swift; path = Sources/Nimble/Adapters/NMBObjCMatcher.swift; sourceTree = ""; }; - 72CF80DB9282D71E8154F8CD2ACC1AE8 /* RxCollectionViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift; sourceTree = ""; }; - 7307BB95C98BD5D5372FEEAFAF24B83E /* PostNotification.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PostNotification.swift; path = Sources/Nimble/Matchers/PostNotification.swift; sourceTree = ""; }; - 73283C12FA1A7D7D0710C829545078A2 /* RxTableViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift; sourceTree = ""; }; - 737E7AD2BE799368AD9B47968E9A5FC3 /* BeLessThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThan.swift; path = Sources/Nimble/Matchers/BeLessThan.swift; sourceTree = ""; }; - 73A6E3BEA63319A2731C8AEE23AAE433 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Sources/Quick/Filter.swift; sourceTree = ""; }; - 74062BC9C1B536C27BEADC96EC6FEEFE /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; - 75253F3EC07B597551E10DECC25E378C /* GroupBy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupBy.swift; path = RxSwift/Observables/GroupBy.swift; sourceTree = ""; }; - 758523E3FE31881A16C5E6B4553C19B8 /* Reactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reactive.swift; path = RxSwift/Reactive.swift; sourceTree = ""; }; - 768E16AE9EC22A3BE7D60B3ADABD821C /* SuiteHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SuiteHooks.swift; path = Sources/Quick/Hooks/SuiteHooks.swift; sourceTree = ""; }; - 774DCF88A5DF058FC7AC566AAF82351B /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; - 77E496CE7A0A08BF17009BA7868B1FAE /* DispatchQueueConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueConfiguration.swift; path = RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift; sourceTree = ""; }; - 78AB29252FD5B0236814B95A280B22CF /* BeLogical.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLogical.swift; path = Sources/Nimble/Matchers/BeLogical.swift; sourceTree = ""; }; - 78C7DA7E00FB7E636CD9D088DD7EE03A /* Expression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expression.swift; path = Sources/Nimble/Expression.swift; sourceTree = ""; }; - 7A06CA04009BA3ABBABC614A7E3F2A48 /* PublishRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishRelay.swift; path = RxCocoa/Traits/PublishRelay.swift; sourceTree = ""; }; - 7A587C61758C7C5A3467652C14C3E30F /* UISearchController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISearchController+Rx.swift"; path = "RxCocoa/iOS/UISearchController+Rx.swift"; sourceTree = ""; }; - 7A81D469378CADB29EA7A1F0C1056EF2 /* RxPickerViewAdapter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewAdapter.swift; path = RxCocoa/iOS/DataSources/RxPickerViewAdapter.swift; sourceTree = ""; }; - 7AD39022A20BBAE807A1D975C2004959 /* ThrowAssertion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowAssertion.swift; path = Sources/Nimble/Matchers/ThrowAssertion.swift; sourceTree = ""; }; - 7B0E2FD10BBD783BC8BB0CFAC9335473 /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; + 6D6CEA8ADC0295831372D02CEF00C539 /* Behavior.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Behavior.swift; path = Sources/Quick/Behavior.swift; sourceTree = ""; }; + 6E194C2D21B60DC4015057177EE3D193 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxSwift/Deprecated.swift; sourceTree = ""; }; + 6EFF7FC247E47B91133A8F9F895A5DCA /* UIDatePicker+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIDatePicker+Rx.swift"; path = "RxCocoa/iOS/UIDatePicker+Rx.swift"; sourceTree = ""; }; + 6FC0627D60EAEE94CF2EAB99CBF7E7E2 /* CwlCatchBadInstruction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlCatchBadInstruction.swift; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlCatchBadInstruction.swift; sourceTree = ""; }; + 6FDD63CAFD2DE35F836E2CD27B2B3AF1 /* UITabBarItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITabBarItem+Rx.swift"; path = "RxCocoa/iOS/UITabBarItem+Rx.swift"; sourceTree = ""; }; + 7053F0963D60674C5910E75132BDFD1C /* GroupedObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupedObservable.swift; path = RxSwift/GroupedObservable.swift; sourceTree = ""; }; + 70D54B232CE190604A01CA7DBF8EF405 /* RxSearchBarDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxSearchBarDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift; sourceTree = ""; }; + 71DA43EFA7B7318921E8B9B5A5CDE3BB /* Logging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Logging.swift; path = RxCocoa/Foundation/Logging.swift; sourceTree = ""; }; + 726D523AAF0006A29E5338ABCE313CE2 /* RxCocoa.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCocoa.swift; path = RxCocoa/RxCocoa.swift; sourceTree = ""; }; + 731B4F68ACCAAFC7B8ED6E265659C877 /* VirtualTimeScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeScheduler.swift; path = RxSwift/Schedulers/VirtualTimeScheduler.swift; sourceTree = ""; }; + 7337B872C7B0B49D2537B31F4F45C3B3 /* BeNil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeNil.swift; path = Sources/Nimble/Matchers/BeNil.swift; sourceTree = ""; }; + 74C786EEE20F1C80B2FA9A4BD3C7F25F /* UIWebView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIWebView+Rx.swift"; path = "RxCocoa/iOS/UIWebView+Rx.swift"; sourceTree = ""; }; + 7549372A9ADC73BC72F75A39547536AE /* SingleAsync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAsync.swift; path = RxSwift/Observables/SingleAsync.swift; sourceTree = ""; }; + 776616261ED2F956A7C263A73F9A1192 /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; + 7810984A572FA5D54401ECA589FD04AB /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/CombineLatest.swift; sourceTree = ""; }; + 78351120373699B62CB1FAF292769E6C /* UIStepper+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIStepper+Rx.swift"; path = "RxCocoa/iOS/UIStepper+Rx.swift"; sourceTree = ""; }; + 790F3AF48904AB7E28065B2E17EBEF23 /* PublishRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishRelay.swift; path = RxCocoa/Traits/PublishRelay.swift; sourceTree = ""; }; + 7A079EA0B211FB5DB732F10738889D33 /* Match.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Match.swift; path = Sources/Nimble/Matchers/Match.swift; sourceTree = ""; }; + 7A214CDD74395FA6D8FCE775DD472ECF /* QCKDSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QCKDSL.m; path = Sources/QuickObjectiveC/DSL/QCKDSL.m; sourceTree = ""; }; + 7A8882E41FC014FB825CFFC5A6E8E363 /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; + 7AA559828BF5D238144556E64410F611 /* GroupBy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupBy.swift; path = RxSwift/Observables/GroupBy.swift; sourceTree = ""; }; + 7B1E9A80FEAA2744D9CAD19E0128C81D /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; 7B5F7CD35625D5D1938B50A66043B63F /* RxMKMapView.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxMKMapView.modulemap; sourceTree = ""; }; 7B7973D6164CB67D46D2A54F7F444A21 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7B909CCAA70E70FE69DC40071F5ED9FA /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Range.swift; sourceTree = ""; }; - 7D8F52F2881F1C87818A2E62431BA1C9 /* Create.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Create.swift; path = RxSwift/Observables/Create.swift; sourceTree = ""; }; - 7E86C556F77655777D2805FF5C0C03BC /* UIApplication+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIApplication+Rx.swift"; path = "RxCocoa/iOS/UIApplication+Rx.swift"; sourceTree = ""; }; - 7E95DAF86C4A70B758F8E93CA3089255 /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/WithLatestFrom.swift; sourceTree = ""; }; - 7EA46B0995E03D18F7222B330D580264 /* AssertionDispatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionDispatcher.swift; path = Sources/Nimble/Adapters/AssertionDispatcher.swift; sourceTree = ""; }; - 7EFC9C334D796EB62DF48C0E80221C35 /* ItemEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemEvents.swift; path = RxCocoa/iOS/Events/ItemEvents.swift; sourceTree = ""; }; - 7F0ED35C39E94FD5E6C4894B314AAC1E /* Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Async.swift; path = Sources/Nimble/Utils/Async.swift; sourceTree = ""; }; - 7FE4E60C245F830C0530C090540CB03D /* UILabel+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILabel+Rx.swift"; path = "RxCocoa/iOS/UILabel+Rx.swift"; sourceTree = ""; }; - 805A9F1729B17E4539A6C7AC242F7A8B /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; - 814052C8EE5C7AD772B1AA7DAECC15E2 /* HistoricalSchedulerTimeConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalSchedulerTimeConverter.swift; path = RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift; sourceTree = ""; }; - 814656F4AAD86907CB39A86648347BF4 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; - 81DFD921DAD75CF8FB84414A154D95AC /* ExpectationMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpectationMessage.swift; path = Sources/Nimble/ExpectationMessage.swift; sourceTree = ""; }; + 7E0015681A2675805E52FC25ED4AF3CD /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; + 8026B093ACD3C1AD472F569F70C4FEF3 /* CwlMachBadInstructionHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlMachBadInstructionHandler.h; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h; sourceTree = ""; }; + 80C4F5E673F60AF10F095CF14134F42A /* KVORepresentable+CoreGraphics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+CoreGraphics.swift"; path = "RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift"; sourceTree = ""; }; + 80C8A4CE6042D97E5EDFEE056CFBC626 /* NSLayoutConstraint+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSLayoutConstraint+Rx.swift"; path = "RxCocoa/Common/NSLayoutConstraint+Rx.swift"; sourceTree = ""; }; + 80E35052412A18A9A4D952424A4A3B81 /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; + 810ED7C5619816A4B993C0DAA7CB5323 /* BeAKindOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAKindOf.swift; path = Sources/Nimble/Matchers/BeAKindOf.swift; sourceTree = ""; }; 82065E9CE6D973729526A71DDBFCB401 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.3.sdk/System/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; - 8473B5E81C342A913BBB4FB7652E293F /* HooksPhase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HooksPhase.swift; path = Sources/Quick/Hooks/HooksPhase.swift; sourceTree = ""; }; - 85FA1A7D93CC5BB0C206E6996E2C2433 /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; - 862CED0BD4031EB389AA892543A19016 /* mach_excServer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mach_excServer.h; path = Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/mach_excServer.h; sourceTree = ""; }; - 86859151A6CAC1344CE78208BDB4E906 /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; - 874A960D7617995C859E49B556D5F51C /* TextInput.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextInput.swift; path = RxCocoa/Common/TextInput.swift; sourceTree = ""; }; - 878512E41658FAFB49EA35BD4F33C574 /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Merge.swift; sourceTree = ""; }; - 87B0E1AA09AACF3A9899A3CD45AE90A9 /* Stringers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stringers.swift; path = Sources/Nimble/Utils/Stringers.swift; sourceTree = ""; }; - 87B8BEEEB9CAF5EBB78114DB27625DC0 /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Zip.swift; sourceTree = ""; }; - 891A4A4115EA50F96505A1F3B09E7ABF /* UIScrollView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIScrollView+Rx.swift"; path = "RxCocoa/iOS/UIScrollView+Rx.swift"; sourceTree = ""; }; - 89AFF538FCD9A19F1084D1E9137162EA /* RxCollectionViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift; sourceTree = ""; }; - 8B05E9AB740461C1E7775036E8821F47 /* DSL+Wait.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DSL+Wait.swift"; path = "Sources/Nimble/DSL+Wait.swift"; sourceTree = ""; }; - 8E93EECC7EE13D7268137BD2AB36A863 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = RxSwift/Errors.swift; sourceTree = ""; }; + 8288D934E350F7A1D8B0F66C78A93853 /* RxTableViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift; sourceTree = ""; }; + 82912038F2871754FFAF189AFB66EA45 /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; + 830D0F26DF2746E44FD37958E0FE1226 /* Predicate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Predicate.swift; path = Sources/Nimble/Matchers/Predicate.swift; sourceTree = ""; }; + 8323B66A91FFE93B1B79E9443290657D /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; + 84AA933976BE0BEF100C3EB31CCFA03A /* Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Single.swift; path = RxSwift/Traits/Single.swift; sourceTree = ""; }; + 84F9867906160C9EE7D6679249BB248D /* ControlEvent+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Signal.swift"; path = "RxCocoa/Traits/Signal/ControlEvent+Signal.swift"; sourceTree = ""; }; + 85082E2E44BEF56913C71063EA3D42CE /* ControlEvent.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlEvent.swift; path = RxCocoa/Traits/ControlEvent.swift; sourceTree = ""; }; + 85C4DB9E94BCD0C89C9B3B80821E2FD5 /* RxTableViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift; sourceTree = ""; }; + 86507DE982117DB2424A74A5446BEBA2 /* _RXDelegateProxy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXDelegateProxy.m; path = RxCocoa/Runtime/_RXDelegateProxy.m; sourceTree = ""; }; + 86D8FA77D3764651152DDA25DAC4D1EC /* Expectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expectation.swift; path = Sources/Nimble/Expectation.swift; sourceTree = ""; }; + 87370DE7DF0E68826ADBBEF83734769F /* RxPickerViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxPickerViewDataSourceProxy.swift; sourceTree = ""; }; + 87BBF52792CDE8F7A2F65F0130032E93 /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Range.swift; sourceTree = ""; }; + 881C5ADE13E141A5F23D799E76ED889B /* NMBExceptionCapture.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBExceptionCapture.m; path = Sources/NimbleObjectiveC/NMBExceptionCapture.m; sourceTree = ""; }; + 88A2E9A7159B34C738A85DC0158BBA91 /* FailureMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FailureMessage.swift; path = Sources/Nimble/FailureMessage.swift; sourceTree = ""; }; + 88E2F054DFF4750571C971852E652F1C /* SharedSequence+Operators+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators+arity.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift"; sourceTree = ""; }; + 88F1FCFCA78C27CF460642EE2B7AF738 /* ControlEvent+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlEvent+Driver.swift"; sourceTree = ""; }; + 890C0DEFF1E8A8EE93E03E97FA5ADF13 /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; + 89456EA5A36F58A80F10D6AD152DABB6 /* Nimble.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Nimble.xcconfig; sourceTree = ""; }; + 89A06FC8B3CB70E537F5A9C08EAB579E /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; + 8A5265F71AB5A4D8D94B617BBCFD94AD /* RxTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTarget.swift; path = RxCocoa/Common/RxTarget.swift; sourceTree = ""; }; + 8AAC05BD5A0F5AB2C85ADE61DB6EC6D5 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Sources/Quick/Filter.swift; sourceTree = ""; }; + 8B8F4FB1138857B735DC3A320C9A815A /* World.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = World.swift; path = Sources/Quick/World.swift; sourceTree = ""; }; + 8BE17D1CFBF021C7C4EFB2248E1159B0 /* Timeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeout.swift; path = RxSwift/Observables/Timeout.swift; sourceTree = ""; }; + 8C0841FBF60E56D40F6586BA36D728D7 /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Producer.swift; sourceTree = ""; }; + 8E198234093BB392FD9FECB17E55714D /* Binder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Binder.swift; path = RxCocoa/Common/Binder.swift; sourceTree = ""; }; + 8E514B726AA73EE5F107464A6BD5718F /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; 8F37E309F7A2E3ED07339FCC06A06899 /* Pods-RxMKMapView_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-RxMKMapView_Example-frameworks.sh"; sourceTree = ""; }; - 902D697D618A6C490374EF9396570056 /* First.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = First.swift; path = RxSwift/Observables/First.swift; sourceTree = ""; }; - 9093A2BB80F28E1CECE1A649C00A6386 /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleXCTestHandler.swift; path = Sources/Nimble/Adapters/NimbleXCTestHandler.swift; sourceTree = ""; }; - 91085C71FEBBDC47DBE9F3C7E926EDD6 /* Driver+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Driver+Subscription.swift"; path = "RxCocoa/Traits/Driver/Driver+Subscription.swift"; sourceTree = ""; }; - 924287C8646A0D0EC296DB4255646FEF /* QCKDSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QCKDSL.m; path = Sources/QuickObjectiveC/DSL/QCKDSL.m; sourceTree = ""; }; - 931A5A2E099F8AE47E18A97D9231D75C /* Debounce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debounce.swift; path = RxSwift/Observables/Debounce.swift; sourceTree = ""; }; + 8F69D713ED4270EA3018BCB97063A769 /* RxPickerViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxPickerViewDataSourceType.swift; sourceTree = ""; }; + 8FD6BBE6D3961AB0CCA28837E5018835 /* DSL+Wait.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DSL+Wait.swift"; path = "Sources/Nimble/DSL+Wait.swift"; sourceTree = ""; }; + 92BC0EA2ADFF76B41D9A86A8E5144997 /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Concat.swift; sourceTree = ""; }; + 93611EC93DBAFC6B434C78019C6C465B /* RxCocoaRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoaRuntime.h; path = RxCocoa/Runtime/include/RxCocoaRuntime.h; sourceTree = ""; }; 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 93BBC400CC85DE5D2650D81C283D9A03 /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; - 94097DA6D25CCFE36180FD643A81B927 /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; - 945431C7E81FB6A3EF55C8837FEB81AD /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/SkipWhile.swift; sourceTree = ""; }; - 9476EC51F6423243DBDA34C0FCB8B9D8 /* ExampleMetadata.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleMetadata.swift; path = Sources/Quick/ExampleMetadata.swift; sourceTree = ""; }; - 955C6D61DD30E20779E86E44805A0AFD /* RxPickerViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxPickerViewDelegateProxy.swift; sourceTree = ""; }; - 957E7D877A5A3886509B6F6573C3DEFA /* UIPageControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIPageControl+Rx.swift"; path = "RxCocoa/iOS/UIPageControl+Rx.swift"; sourceTree = ""; }; - 96237F60D32115944D11FAEDE3DFD70C /* AsSingle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsSingle.swift; path = RxSwift/Observables/AsSingle.swift; sourceTree = ""; }; - 972441D2E3CE486131DE3AAC96F678BC /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; - 97B5E5C3FB1B972B7E112ECFFA804EFC /* Functional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Functional.swift; path = Sources/Nimble/Utils/Functional.swift; sourceTree = ""; }; - 9852A1EEEF7A28212F62209A7FBF1F3A /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; - 99EED87C68586BAE5B0200F232A4A9C3 /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAnInstanceOf.swift; path = Sources/Nimble/Matchers/BeAnInstanceOf.swift; sourceTree = ""; }; - 9A7968940016C6FA4283EB45783DE8A1 /* UIProgressView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIProgressView+Rx.swift"; path = "RxCocoa/iOS/UIProgressView+Rx.swift"; sourceTree = ""; }; - 9A9D63BC61FE0E20ED4151D6CD8BD66A /* UIImageView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Rx.swift"; path = "RxCocoa/iOS/UIImageView+Rx.swift"; sourceTree = ""; }; - 9AA86006F1D4D9A34E04AC2A830CBA04 /* NSObject+Rx+RawRepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+RawRepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift"; sourceTree = ""; }; - 9AB51F110F0DE676BFFE92AE7100842A /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; - 9C33EC8430831BA889CB532A54AC8244 /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Take.swift; sourceTree = ""; }; - 9CC3493D83BE5557C53657580DB58623 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; - 9CDD70943774CB7A7C8E00852E1F3E1D /* EndWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EndWith.swift; path = Sources/Nimble/Matchers/EndWith.swift; sourceTree = ""; }; - 9D9A90F3E740BDF96004B2E9E48EB6E5 /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; - 9E2A04F668F9350483CEFA4F0F0A0931 /* NMBExpectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NMBExpectation.swift; path = Sources/Nimble/Adapters/NMBExpectation.swift; sourceTree = ""; }; - 9E60A1D2523C5C575663424194ED9911 /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Throttle.swift; sourceTree = ""; }; - 9FB01F563C3EA975B5A0675C5DD36EB8 /* _RXKVOObserver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXKVOObserver.m; path = RxCocoa/Runtime/_RXKVOObserver.m; sourceTree = ""; }; - A08B8657306177414C16C70EA354FC0E /* Contain.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Contain.swift; path = Sources/Nimble/Matchers/Contain.swift; sourceTree = ""; }; - A1ACE41489DB3A3360D6CFFB08C37B3B /* CwlCatchException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlCatchException.swift; path = Sources/Lib/CwlPreconditionTesting/CwlCatchException/CwlCatchException.swift; sourceTree = ""; }; + 93EAA3C810FE7ECE0F65185C8AC47CC7 /* PublishRelay+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PublishRelay+Signal.swift"; path = "RxCocoa/Traits/Signal/PublishRelay+Signal.swift"; sourceTree = ""; }; + 96E67CCCCD451885CABBEEE8D9703278 /* UITextField+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextField+Rx.swift"; path = "RxCocoa/iOS/UITextField+Rx.swift"; sourceTree = ""; }; + 984F49F3452EDB8D4A5E1B1EB2550909 /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Amb.swift; sourceTree = ""; }; + 98BF01C939506860689CDD7AA235213F /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/ObserveOn.swift; sourceTree = ""; }; + 9905BB7C9F72F3D6445C20E88B63F80F /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; + 992563151A07C2323E4B195A7F1458A9 /* BeCloseTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeCloseTo.swift; path = Sources/Nimble/Matchers/BeCloseTo.swift; sourceTree = ""; }; + 994644BC878E972933D66E206CF84071 /* RetryWhen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RetryWhen.swift; path = RxSwift/Observables/RetryWhen.swift; sourceTree = ""; }; + 9AEB16046D5C041B0CB1E1B070628F9F /* CwlBadInstructionException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlBadInstructionException.swift; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlBadInstructionException.swift; sourceTree = ""; }; + 9B5D2EEE06D4ECBAEA697D6FF2A65C10 /* AsyncSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncSubject.swift; path = RxSwift/Subjects/AsyncSubject.swift; sourceTree = ""; }; + 9BA4C025E1027196EF72A8C943211879 /* RxSearchControllerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxSearchControllerDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxSearchControllerDelegateProxy.swift; sourceTree = ""; }; + 9D76CF3BFC1838C9A5EB96FCA35FFFF4 /* QuickSelectedTestSuiteBuilder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuickSelectedTestSuiteBuilder.swift; path = Sources/Quick/QuickSelectedTestSuiteBuilder.swift; sourceTree = ""; }; + 9D79C077E4BE2C9EA9066E321D04A835 /* First.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = First.swift; path = RxSwift/Observables/First.swift; sourceTree = ""; }; + 9E13591CA205B5CF7EAAB6BF802A139E /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; + 9EA850FB6523717918394FB9156E3B8D /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Reduce.swift; sourceTree = ""; }; + 9FC52151F4FFD85C11E74383F0768B99 /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; + 9FDC0E9CA2AC8224DD564AE097A332B1 /* RxNavigationControllerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxNavigationControllerDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxNavigationControllerDelegateProxy.swift; sourceTree = ""; }; + A142D7A9A71022B2CA168D6340077348 /* AllPass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AllPass.swift; path = Sources/Nimble/Matchers/AllPass.swift; sourceTree = ""; }; + A1D6C1CDD69CAB8F4DCA9489B3D3F530 /* SatisfyAllOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SatisfyAllOf.swift; path = Sources/Nimble/Matchers/SatisfyAllOf.swift; sourceTree = ""; }; + A233930662243AF420DDFB375E9C0AD3 /* SwitchIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwitchIfEmpty.swift; path = RxSwift/Observables/SwitchIfEmpty.swift; sourceTree = ""; }; A274000F72FF57541406AC7960CD87EF /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - A2BA9246E1EC802D520D87FC64911D74 /* QuickSpecBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickSpecBase.h; path = Sources/QuickSpecBase/include/QuickSpecBase.h; sourceTree = ""; }; A3F89BACBA0565D23C19D9D5E2F0BD7B /* RxMKMapView-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxMKMapView-dummy.m"; sourceTree = ""; }; - A56148FAA0E062EE2985201D7253549A /* Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Single.swift; path = RxSwift/Traits/Single.swift; sourceTree = ""; }; - A571CCD9266AB50DCF1E25EBF5277950 /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; - A5AFC00E6CB824A807608266FD55AC04 /* Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delay.swift; path = RxSwift/Observables/Delay.swift; sourceTree = ""; }; - A652599C47E184F4B0B46E1FBD692B46 /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; - A6E65161CF387528851E8C521FFE50AC /* UIBarButtonItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIBarButtonItem+Rx.swift"; path = "RxCocoa/iOS/UIBarButtonItem+Rx.swift"; sourceTree = ""; }; - A73E433F05EB82AC3A0581FE2EC1B455 /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/DistinctUntilChanged.swift; sourceTree = ""; }; - A7BB609EE6076DD15A5DA4DB4CD51605 /* RxTabBarDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTabBarDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTabBarDelegateProxy.swift; sourceTree = ""; }; - A7C53DF69B9DE44FEB49EA2D3241A536 /* DSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = DSL.m; path = Sources/NimbleObjectiveC/DSL.m; sourceTree = ""; }; - A8A4842CBFA7068E62AE495B55C55142 /* RxMutableBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMutableBox.swift; path = RxSwift/RxMutableBox.swift; sourceTree = ""; }; - A9579E1778815EA5C48C5F17FF1E4319 /* ControlProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlProperty.swift; path = RxCocoa/Traits/ControlProperty.swift; sourceTree = ""; }; - AA81BCEA6AF602EEA9F2BAB8012F90F0 /* KVORepresentable+CoreGraphics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+CoreGraphics.swift"; path = "RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift"; sourceTree = ""; }; + A3FF31BA007FD48544D75B9B80B169FB /* RxCollectionViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift; sourceTree = ""; }; + A4741D6FEA3DFBD5FB4C82AA22D12267 /* ExampleHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleHooks.swift; path = Sources/Quick/Hooks/ExampleHooks.swift; sourceTree = ""; }; + A5B39F976972D8C0A3381368B40AB807 /* SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SharedSequence.swift; path = RxCocoa/Traits/SharedSequence/SharedSequence.swift; sourceTree = ""; }; + A5C963D89E597BB3E908A49B59819521 /* AssertionDispatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionDispatcher.swift; path = Sources/Nimble/Adapters/AssertionDispatcher.swift; sourceTree = ""; }; + A6B6DE8AD594516A60BA7672523E657B /* ObservableConvertibleType+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Signal.swift"; path = "RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift"; sourceTree = ""; }; + A704F09153192D460F7B0D292441F2CD /* NSObject+Rx+KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSObject+Rx+KVORepresentable.swift"; path = "RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift"; sourceTree = ""; }; + A76BA45F42F8EFA9ACD38A480E04DC5D /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; + A881F09155F61268B733322FB17361F5 /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/ElementAt.swift; sourceTree = ""; }; + A940D9EB23DF60AAC3A6B31BB3891946 /* Create.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Create.swift; path = RxSwift/Observables/Create.swift; sourceTree = ""; }; + A97DBAB400AE9057A6752F817ABD7B5F /* NSTextStorage+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSTextStorage+Rx.swift"; path = "RxCocoa/iOS/NSTextStorage+Rx.swift"; sourceTree = ""; }; + A9B404072AF9B4826DE0D1DD6E1FE35B /* RxTableViewReactiveArrayDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewReactiveArrayDataSource.swift; path = RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift; sourceTree = ""; }; + A9E5DAEED41251DF9485D9D5112F6ECC /* _RXObjCRuntime.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXObjCRuntime.m; path = RxCocoa/Runtime/_RXObjCRuntime.m; sourceTree = ""; }; AAA0F8B6D9293C836A063D1535877EDB /* RxMKMapViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMKMapViewDelegateProxy.swift; path = Sources/RxMKMapViewDelegateProxy.swift; sourceTree = ""; }; - AB5CFD10B2F19EA07889E2A72C792DF2 /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; - AB98F1A167765955B8A235B99A385BEE /* Maybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Maybe.swift; path = RxSwift/Traits/Maybe.swift; sourceTree = ""; }; - ABC15EDA177DD98CC78BA8A394562985 /* KVORepresentable+Swift.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "KVORepresentable+Swift.swift"; path = "RxCocoa/Foundation/KVORepresentable+Swift.swift"; sourceTree = ""; }; + AAA58C70710F7570443894A9FD0C9CF2 /* UIAlertAction+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIAlertAction+Rx.swift"; path = "RxCocoa/iOS/UIAlertAction+Rx.swift"; sourceTree = ""; }; + AAE315F22A3F0EB1B6896B123759D73A /* AssertionRecorder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionRecorder.swift; path = Sources/Nimble/Adapters/AssertionRecorder.swift; sourceTree = ""; }; + AB2C2A62F2B2D4786E4A0AFC84C4C6A0 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; + AC0AC4AD887A6759EDB3B904BECC09AB /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; AC336950819B11A5CBA26E7399C6C12C /* RxMapViewReactiveDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMapViewReactiveDataSource.swift; path = Sources/RxMapViewReactiveDataSource.swift; sourceTree = ""; }; - AC3D1B3B70469F5B5FD09666F34F9C00 /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; - AD35B4506BF614608E933B842250211E /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Do.swift; sourceTree = ""; }; + ACD84D80A37A1F5CF19A049A22629DFA /* InvocableScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableScheduledItem.swift; path = RxSwift/Schedulers/Internal/InvocableScheduledItem.swift; sourceTree = ""; }; + ACEA9A12CFEEDF41B046D9400F2C50E6 /* UISwitch+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISwitch+Rx.swift"; path = "RxCocoa/iOS/UISwitch+Rx.swift"; sourceTree = ""; }; ADB5B25E929BA417AAC77FCB11ED6376 /* Pods-RxMKMapView_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-RxMKMapView_Example-acknowledgements.markdown"; sourceTree = ""; }; AE045BFF5346BAA58CD446CD391D31DE /* Diff.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Diff.swift; path = Sources/Diff.swift; sourceTree = ""; }; - AE801367E5B85C33185CD0993145F5AF /* RxTableViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTableViewDataSourceType.swift; path = RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift; sourceTree = ""; }; - AF7EB982830684F103E11BA7E20DCA72 /* Behavior.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Behavior.swift; path = Sources/Quick/Behavior.swift; sourceTree = ""; }; - AFC8B093AF9AEAADBD4AF83F2362B87F /* UISearchBar+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISearchBar+Rx.swift"; path = "RxCocoa/iOS/UISearchBar+Rx.swift"; sourceTree = ""; }; - AFD2149068F4DDA03FD10AE90B2D833A /* UIPickerView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIPickerView+Rx.swift"; path = "RxCocoa/iOS/UIPickerView+Rx.swift"; sourceTree = ""; }; - B0172FFD9A1917E3709F5CCB3AB2860C /* NSString+C99ExtendedIdentifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSString+C99ExtendedIdentifier.swift"; path = "Sources/Quick/NSString+C99ExtendedIdentifier.swift"; sourceTree = ""; }; - B0D15BF367D8A3D807EFAED3F51575F1 /* mach_excServer.c */ = {isa = PBXFileReference; includeInIndex = 1; name = mach_excServer.c; path = Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/mach_excServer.c; sourceTree = ""; }; - B1A9117E5D0CE4CF348BFD78D9D1F31B /* CwlMachBadInstructionHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlMachBadInstructionHandler.m; path = Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m; sourceTree = ""; }; - B1F168E0DFFB7740C939F4506D2FA456 /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; - B2E2B76C468CBD5626BF6C28BE03B10F /* BooleanDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BooleanDisposable.swift; path = RxSwift/Disposables/BooleanDisposable.swift; sourceTree = ""; }; - B3788C33CF260C125B9D08ED094D83F2 /* UITabBarController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITabBarController+Rx.swift"; path = "RxCocoa/iOS/UITabBarController+Rx.swift"; sourceTree = ""; }; - B447BB9137524194FFD27B36D396BEE3 /* ThrowError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowError.swift; path = Sources/Nimble/Matchers/ThrowError.swift; sourceTree = ""; }; - B4F764C4EBA9D0A08C111CAB975EF29A /* UIDatePicker+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIDatePicker+Rx.swift"; path = "RxCocoa/iOS/UIDatePicker+Rx.swift"; sourceTree = ""; }; - B5246F03ED6ECB6B69169F3F91950014 /* Equal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Equal.swift; path = Sources/Nimble/Matchers/Equal.swift; sourceTree = ""; }; - B57D143AA36A1619C4D71AD62B306B6F /* CwlPreconditionTesting.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlPreconditionTesting.h; path = Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h; sourceTree = ""; }; - B7428E9F3D61B9AF6AB5AB22347346E3 /* Nimble-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Nimble-dummy.m"; sourceTree = ""; }; - B76446F69B7C068232A0D748DB5EE4CD /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Sources/Quick/Configuration/Configuration.swift; sourceTree = ""; }; - B7E97F37210806017EF6597077123EE3 /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Empty.swift; sourceTree = ""; }; - B8C063A260A86461A46250D1D6C8D11E /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; - B8C67624D8EAC38AAF3F7A4284E7BF65 /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/CombineLatest.swift; sourceTree = ""; }; - B9383DAC6DCDB4356CAA89ED20FB33DD /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; - B9AE0F3CBEEC24D01ACFB8A3925A9F5C /* UITextField+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextField+Rx.swift"; path = "RxCocoa/iOS/UITextField+Rx.swift"; sourceTree = ""; }; - BA92011810E77667604CBBC1FC537EEE /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; - BAB51B60862977C5D3DECC697FA40517 /* HaveCount.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HaveCount.swift; path = Sources/Nimble/Matchers/HaveCount.swift; sourceTree = ""; }; - BB5B06C66C874684B7EF486003BF1D0C /* QuickSpec.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickSpec.m; path = Sources/QuickObjectiveC/QuickSpec.m; sourceTree = ""; }; - BB9EAD10DD7ED6F3B6F7162945F358C2 /* SatisfyAnyOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SatisfyAnyOf.swift; path = Sources/Nimble/Matchers/SatisfyAnyOf.swift; sourceTree = ""; }; - BBB6B17A694C360CADAD08AE86987740 /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/ToArray.swift; sourceTree = ""; }; - BBB82C26620A9137CFFA5B1D221D75C0 /* AllPass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AllPass.swift; path = Sources/Nimble/Matchers/AllPass.swift; sourceTree = ""; }; - BD0CC2F73AF3F13116ACD0582E8B2D92 /* SharedSequence+Operators+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators+arity.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift"; sourceTree = ""; }; - BD87DBECD847AA299386413D033022DC /* AsyncSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncSubject.swift; path = RxSwift/Subjects/AsyncSubject.swift; sourceTree = ""; }; + AE0B178D51F64681C403C9D56EC9D304 /* DelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxy.swift; path = RxCocoa/Common/DelegateProxy.swift; sourceTree = ""; }; + AE4F73F0BDDAA37F1C938090C8E3874C /* Materialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Materialize.swift; path = RxSwift/Observables/Materialize.swift; sourceTree = ""; }; + AE92860F40AAADCBB6E0C6506C9B1D20 /* Dematerialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dematerialize.swift; path = RxSwift/Observables/Dematerialize.swift; sourceTree = ""; }; + B055CDC0149E206B3A92F0F9BEFCE7A4 /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Throttle.swift; sourceTree = ""; }; + B23D7AFB63E7E2C7F84CBA9D717F5227 /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; + B33A652257347D361987496F346E69D9 /* Bag+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Bag+Rx.swift"; path = "RxSwift/Extensions/Bag+Rx.swift"; sourceTree = ""; }; + B354F49079229EAE904D1C0461559DAA /* SectionedViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SectionedViewDataSourceType.swift; path = RxCocoa/Common/SectionedViewDataSourceType.swift; sourceTree = ""; }; + B362B61962CA280124A0221D8E7FE1E0 /* RxCocoa-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-prefix.pch"; sourceTree = ""; }; + B41109F0C14AEDD7A8B7736E30F89D83 /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; + B578A9C952AF9C5FE32AF8F8B3016B43 /* UIPickerView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIPickerView+Rx.swift"; path = "RxCocoa/iOS/UIPickerView+Rx.swift"; sourceTree = ""; }; + B6199F81C0FB02061D823DE0E8AB0E11 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; + B634F5DEB063A6A789DDE46A7A6AE1ED /* URL+FileName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URL+FileName.swift"; path = "Sources/Quick/URL+FileName.swift"; sourceTree = ""; }; + B65462AFE2C32BCA5F1F5219AC6D8140 /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Buffer.swift; sourceTree = ""; }; + B67C096ED974534E98F847CAD8B8E53C /* RxPickerViewAdapter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewAdapter.swift; path = RxCocoa/iOS/DataSources/RxPickerViewAdapter.swift; sourceTree = ""; }; + B68B8DB2364F06DEFC16AD4CDEF15EA5 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Sources/Quick/DSL/DSL.swift; sourceTree = ""; }; + B6A137D81BA5596523BCAA07C111C1A1 /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; + B6A4757653D4DCBB1CE8C9A98C2EF057 /* RxCocoa-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxCocoa-dummy.m"; sourceTree = ""; }; + B7358CA57A3DC30C139498036B270B2C /* QuickSpecBase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickSpecBase.m; path = Sources/QuickSpecBase/QuickSpecBase.m; sourceTree = ""; }; + B751E68E6969DD0BDD8E133742D18F74 /* UITabBarController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITabBarController+Rx.swift"; path = "RxCocoa/iOS/UITabBarController+Rx.swift"; sourceTree = ""; }; + B75CD799773CE484965A743102794D1F /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + B84202AA6D9A4F961687D683043E56EC /* ScheduledItemType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItemType.swift; path = RxSwift/Schedulers/Internal/ScheduledItemType.swift; sourceTree = ""; }; + B888DEE8D839198B12F11D80BFECAB89 /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Deferred.swift; sourceTree = ""; }; + B8D70A5A9F2BDBD1CAB01AF9DAB67456 /* RxWebViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxWebViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxWebViewDelegateProxy.swift; sourceTree = ""; }; + BA8B8E2817B3496B0E812FA0F3E30344 /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; + BAC7E60811190CD444B6E7885F705158 /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = RxSwift/SwiftSupport/SwiftSupport.swift; sourceTree = ""; }; + BAE3FA42737922D49F0EF0D60BAEC4B8 /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; + BC0483234D9CF392FDDF18F84AD4980D /* DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DSL.h; path = Sources/NimbleObjectiveC/DSL.h; sourceTree = ""; }; + BC4E936250B396B41E3F7BE0D98E2849 /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; + BCBED18A19F27288633594DA3F2F107C /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/SkipUntil.swift; sourceTree = ""; }; + BE05C5A07FDEAA979915BE46262C1525 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; BE0E9D3F1F01213AD9FC125B0BA8EF74 /* Pods-RxMKMapView_Example-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-RxMKMapView_Example-resources.sh"; sourceTree = ""; }; - BE7D397B09986FB847EF3167CDC8EE5D /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Producer.swift; sourceTree = ""; }; - C023AA55F1E0E2698A0CBC3CAD4B01E8 /* BeginWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeginWith.swift; path = Sources/Nimble/Matchers/BeginWith.swift; sourceTree = ""; }; - C27774BF248064DFDC5229103927A121 /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; - C4D3BFF06A14F74078EFA17409647103 /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Switch.swift; sourceTree = ""; }; - C5A7612B20BEBADA1BDF448B5E5CEF4E /* RxCocoa-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxCocoa-prefix.pch"; sourceTree = ""; }; - C646D82FBAAB4D9AFC6ED52C4989931F /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/CombineLatest+arity.swift"; sourceTree = ""; }; + BE7C93FE17E32B3A11082B642D2D4C32 /* DefaultIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultIfEmpty.swift; path = RxSwift/Observables/DefaultIfEmpty.swift; sourceTree = ""; }; + BFA726286922C9BE0DC635989E1E5EE6 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = RxSwift/Errors.swift; sourceTree = ""; }; + C009D8D9CDADFD4ACD17A36AE04C516F /* BehaviorRelay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorRelay.swift; path = RxCocoa/Traits/BehaviorRelay.swift; sourceTree = ""; }; + C0A49A3F9965CCAD26D88E1450056DC3 /* AsSingle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsSingle.swift; path = RxSwift/Observables/AsSingle.swift; sourceTree = ""; }; + C1B12EB600667E215DE7B5A7160CC087 /* NimbleEnvironment.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleEnvironment.swift; path = Sources/Nimble/Adapters/NimbleEnvironment.swift; sourceTree = ""; }; + C24D85408971C3ADAF8EF7F54DDED532 /* CwlCatchException.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlCatchException.h; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/include/CwlCatchException.h; sourceTree = ""; }; + C265258426CCCEFD9EE37B962C02080F /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/SkipWhile.swift; sourceTree = ""; }; + C2C0FE65B9FB9799661D7C2AEB03B022 /* Functional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Functional.swift; path = Sources/Nimble/Utils/Functional.swift; sourceTree = ""; }; + C2E186167922981EA4F7C34926BF0FFD /* ExampleGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleGroup.swift; path = Sources/Quick/ExampleGroup.swift; sourceTree = ""; }; + C3BBBBAA0C0CB7C9A556D5CE0FF0B3BD /* UIButton+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Rx.swift"; path = "RxCocoa/iOS/UIButton+Rx.swift"; sourceTree = ""; }; + C56B8C39D1F6618C2A6F6115C5461DCC /* UIBarButtonItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIBarButtonItem+Rx.swift"; path = "RxCocoa/iOS/UIBarButtonItem+Rx.swift"; sourceTree = ""; }; + C5FA965F644570220D6AE69415011301 /* EndWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EndWith.swift; path = Sources/Nimble/Matchers/EndWith.swift; sourceTree = ""; }; C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - C7AF12F27810E82F4CD319D2A741EB3F /* _RXDelegateProxy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXDelegateProxy.m; path = RxCocoa/Runtime/_RXDelegateProxy.m; sourceTree = ""; }; - C841D618563B14DA47FEA508DBE63582 /* PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrimitiveSequence.swift; path = RxSwift/Traits/PrimitiveSequence.swift; sourceTree = ""; }; - C8B2886769D33DCAE7CF2EF3974A249D /* CwlCatchBadInstruction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlCatchBadInstruction.swift; path = Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlCatchBadInstruction.swift; sourceTree = ""; }; - C9CFBEE51BB3538D6C9B2B2116312103 /* World.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = World.h; path = Sources/QuickObjectiveC/World.h; sourceTree = ""; }; - CA10C92C2C5749CC91648FE4F7870A02 /* ControlEvent+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ControlEvent+Driver.swift"; path = "RxCocoa/Traits/Driver/ControlEvent+Driver.swift"; sourceTree = ""; }; + C70DAE3EE830B80628E402AE5B840BBB /* Enumerated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Enumerated.swift; path = RxSwift/Observables/Enumerated.swift; sourceTree = ""; }; + C8111EF0856DACEE70A2271E9E5425F0 /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; + C82E29F29B71AF9A76EEDCE6BA1BB1C6 /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Generate.swift; sourceTree = ""; }; + CA0631DACDE81A3545CDD7966BCB4B46 /* Nimble-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-umbrella.h"; sourceTree = ""; }; CA5A53F02102E5E3DA7EC05AD94FF828 /* Pods-RxMKMapView_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-RxMKMapView_Example.debug.xcconfig"; sourceTree = ""; }; - CB090E2B5AF1C023497B4FAEC78C3507 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; + CADE9270136EB2D1A0BD9A6FCBB731A4 /* MatcherFunc.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherFunc.swift; path = Sources/Nimble/Matchers/MatcherFunc.swift; sourceTree = ""; }; CB0CA6C1F67FC572849D778F5498C628 /* Pods-RxMKMapView_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-RxMKMapView_Tests-umbrella.h"; sourceTree = ""; }; - CC0705AB662BAB855B6424E548CBECC3 /* Logging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Logging.swift; path = RxCocoa/Foundation/Logging.swift; sourceTree = ""; }; - CC95D1F1BB7F31C3CDC058E0A3846AFD /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/ElementAt.swift; sourceTree = ""; }; - CD211CCC9D8BF2F690E0D187EA7906A2 /* RxScrollViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxScrollViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift; sourceTree = ""; }; - CD56CF99FC41CA61D411D9D05124F7BD /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Observables/Error.swift; sourceTree = ""; }; - CE84C615DAAD4E1ED3B745BF3356B689 /* UINavigationItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UINavigationItem+Rx.swift"; path = "RxCocoa/iOS/UINavigationItem+Rx.swift"; sourceTree = ""; }; + CC9F0676979CAEDD569F509CFD1749F1 /* Quick.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Quick.xcconfig; sourceTree = ""; }; + CCE149A75517B9BAC4046B5A94C2DD8B /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/WithLatestFrom.swift; sourceTree = ""; }; + CD1581FC822870653D868CD671085684 /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/SubscribeOn.swift; sourceTree = ""; }; + CD1E10B188B6B747F49E6DE81271E62C /* SuiteHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SuiteHooks.swift; path = Sources/Quick/Hooks/SuiteHooks.swift; sourceTree = ""; }; + CE394802676EA94939D5D9BF7E7CAA74 /* Disposables.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposables.swift; path = RxSwift/Disposables/Disposables.swift; sourceTree = ""; }; CEA5919A73E66DDAA997652E02D46433 /* Pods-RxMKMapView_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-RxMKMapView_Example.modulemap"; sourceTree = ""; }; - CEB7B1CA7C5AB4A9E6807256058CAFC5 /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/TakeUntil.swift; sourceTree = ""; }; - CED240D5C017E89F3B2626244533CCCE /* NMBStringify.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBStringify.h; path = Sources/NimbleObjectiveC/NMBStringify.h; sourceTree = ""; }; - CF653DC663CF4108D0B990C920EF41A3 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; - CF98C97466E135490CE5CD36A0C6F551 /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; - D0BAFCCDEA87BAFF7D9B7196D08C8990 /* Sequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sequence.swift; path = RxSwift/Observables/Sequence.swift; sourceTree = ""; }; - D0D3932ABFC7BD1955E16B19C9E1D057 /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Repeat.swift; sourceTree = ""; }; + CF633162B795F37BF6ADCA7DB9169FB1 /* SchedulerType+SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerType+SharedSequence.swift"; path = "RxCocoa/Traits/SharedSequence/SchedulerType+SharedSequence.swift"; sourceTree = ""; }; + CF7822928E0F7479348801524A3C1E6F /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/DistinctUntilChanged.swift; sourceTree = ""; }; + D022E3F3034752A828539834DCAC3BC0 /* RxCollectionViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift; sourceTree = ""; }; + D0AFAFBB2AAADD9BC79741799B1A0DD9 /* UIImageView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Rx.swift"; path = "RxCocoa/iOS/UIImageView+Rx.swift"; sourceTree = ""; }; D0F930F267191374A81003DEE27E1112 /* Pods-RxMKMapView_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-RxMKMapView_Example-dummy.m"; sourceTree = ""; }; - D143C7FA6B24193658B3E0E08F162FA6 /* RxNavigationControllerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxNavigationControllerDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxNavigationControllerDelegateProxy.swift; sourceTree = ""; }; - D14B307FAC65737BD0093A181B2AF599 /* BeAKindOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAKindOf.swift; path = Sources/Nimble/Matchers/BeAKindOf.swift; sourceTree = ""; }; - D1744C00130D53BE5C17A181D84E98B4 /* _RXObjCRuntime.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RXObjCRuntime.m; path = RxCocoa/Runtime/_RXObjCRuntime.m; sourceTree = ""; }; - D1E230FCBCCB68DF1C1BA0AD309F27BD /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; - D294F2E3312FC267A32943A719A51F9A /* QuickConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickConfiguration.h; path = Sources/QuickObjectiveC/Configuration/QuickConfiguration.h; sourceTree = ""; }; - D327564BFFF92815A12AC57DA269DB13 /* ScheduledItemType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItemType.swift; path = RxSwift/Schedulers/Internal/ScheduledItemType.swift; sourceTree = ""; }; - D37CB271CA4BD9F1A6ED8D70C295171F /* SectionedViewDataSourceType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SectionedViewDataSourceType.swift; path = RxCocoa/Common/SectionedViewDataSourceType.swift; sourceTree = ""; }; - D3D4ECD4201403B0D96AF8C901801BE4 /* Window.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Window.swift; path = RxSwift/Observables/Window.swift; sourceTree = ""; }; - D5482B1CB72E01036274C14EA19C54CC /* Nimble-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-prefix.pch"; sourceTree = ""; }; - D62A29417054DE8D5024DBA56AE967F5 /* PrimitiveSequence+Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PrimitiveSequence+Zip+arity.swift"; path = "RxSwift/Traits/PrimitiveSequence+Zip+arity.swift"; sourceTree = ""; }; - D6B5F5C0755F68EFD33156DB0A8A1B5D /* RxPickerViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxPickerViewDataSourceProxy.swift; sourceTree = ""; }; - D826CEC8BBDF2331BEA309C96CDF935C /* SingleAsync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAsync.swift; path = RxSwift/Observables/SingleAsync.swift; sourceTree = ""; }; - D852717C8AE0D28350FFE206D214C5D0 /* MatcherFunc.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherFunc.swift; path = Sources/Nimble/Matchers/MatcherFunc.swift; sourceTree = ""; }; - D88D8E466D4B89D4B4FF904C5E197D62 /* DelegateProxyType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelegateProxyType.swift; path = RxCocoa/Common/DelegateProxyType.swift; sourceTree = ""; }; - D8C46C374603018723EC4DB860A416EF /* CwlMachBadInstructionHandler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlMachBadInstructionHandler.h; path = Sources/Lib/CwlPreconditionTesting/CwlMachBadInstructionHandler/include/CwlMachBadInstructionHandler.h; sourceTree = ""; }; - D90C1ABBBAD56893C7DB2E677BC13536 /* UIGestureRecognizer+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIGestureRecognizer+Rx.swift"; path = "RxCocoa/iOS/UIGestureRecognizer+Rx.swift"; sourceTree = ""; }; - D91E34F049D6E11AD355CCC63B919995 /* RefCountDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCountDisposable.swift; path = RxSwift/Disposables/RefCountDisposable.swift; sourceTree = ""; }; - D961DC8E8A50ABBE4CC435C399F5CB00 /* VirtualTimeScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeScheduler.swift; path = RxSwift/Schedulers/VirtualTimeScheduler.swift; sourceTree = ""; }; - D98DFD65FB376C2C45CFC6A2619C90F5 /* _RX.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RX.h; path = RxCocoa/Runtime/include/_RX.h; sourceTree = ""; }; - D99370DB4BDD9D8DC3FFC7D5EB410BF0 /* BeGreaterThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThan.swift; path = Sources/Nimble/Matchers/BeGreaterThan.swift; sourceTree = ""; }; - D9C590A978EEE5C27123A8AABD27BB0C /* UIWebView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIWebView+Rx.swift"; path = "RxCocoa/iOS/UIWebView+Rx.swift"; sourceTree = ""; }; - DAC54D032243C80F4BA6B82CF676A37C /* RxCollectionViewDataSourceProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDataSourceProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift; sourceTree = ""; }; - DE192962F86568262E1529732DA6A8CA /* CwlBadInstructionException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlBadInstructionException.swift; path = Sources/Lib/CwlPreconditionTesting/CwlPreconditionTesting/CwlBadInstructionException.swift; sourceTree = ""; }; - DEF2BF1B1CBC615E2093662933CD8259 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; - DEFAAF7E9F47E68956EAC7271A658224 /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; - DF5DAEEFEA3740C6201A407C858EF94A /* InvocableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableType.swift; path = RxSwift/Schedulers/Internal/InvocableType.swift; sourceTree = ""; }; - DFF8A44ACE22FDEC693E5B9CCD1DDFFE /* Match.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Match.swift; path = Sources/Nimble/Matchers/Match.swift; sourceTree = ""; }; - E00D1FF7878B06D99E9275F3D8E908F1 /* Zip+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+Collection.swift"; path = "RxSwift/Observables/Zip+Collection.swift"; sourceTree = ""; }; - E02B7E4B600D4656DCCBBCC640ED66CC /* Dematerialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dematerialize.swift; path = RxSwift/Observables/Dematerialize.swift; sourceTree = ""; }; - E07AB021FF08A5D341845358A914D429 /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; - E1518CCF71369F22D2AA2C43E57B8257 /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = RxSwift/SwiftSupport/SwiftSupport.swift; sourceTree = ""; }; - E198066C3A4ED653A18988B06065DFA4 /* Materialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Materialize.swift; path = RxSwift/Observables/Materialize.swift; sourceTree = ""; }; - E1AED8B2F367F007DE27C353232621A0 /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Scan.swift; sourceTree = ""; }; + D1236A4F5945334BD89EF144473EC067 /* Signal+Subscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Signal+Subscription.swift"; path = "RxCocoa/Traits/Signal/Signal+Subscription.swift"; sourceTree = ""; }; + D138D57D085D48DAA44D89CCA5AD576B /* BeGreaterThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThan.swift; path = Sources/Nimble/Matchers/BeGreaterThan.swift; sourceTree = ""; }; + D1EE37E388D0ADFD3F9C1DC70E4AF584 /* Maybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Maybe.swift; path = RxSwift/Traits/Maybe.swift; sourceTree = ""; }; + D30C9F57385FC65C1CFF2160E8F7F41A /* HistoricalSchedulerTimeConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalSchedulerTimeConverter.swift; path = RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift; sourceTree = ""; }; + D324FC52BDCEDAABE61952715A8235BE /* XCTestSuite+QuickTestSuiteBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "XCTestSuite+QuickTestSuiteBuilder.m"; path = "Sources/QuickObjectiveC/XCTestSuite+QuickTestSuiteBuilder.m"; sourceTree = ""; }; + D4B7ECF7E6677D898F0D2BAD2F2083A7 /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; + D67AED272BB2DE6CCFDB216CDB440B0A /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAnInstanceOf.swift; path = Sources/Nimble/Matchers/BeAnInstanceOf.swift; sourceTree = ""; }; + D7427951E51C073CE672723E27844C01 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Sources/Quick/Configuration/Configuration.swift; sourceTree = ""; }; + D8716F81E89A2C0BC163D1342AF59EB0 /* mach_excServer.c */ = {isa = PBXFileReference; includeInIndex = 1; name = mach_excServer.c; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.c; sourceTree = ""; }; + D8E90CAB693113180DC21AFC5D811E72 /* CwlCatchException.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlCatchException.m; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/CwlCatchException.m; sourceTree = ""; }; + DA3A2CEFC138817A2AA422386F52D1B9 /* SourceLocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourceLocation.swift; path = Sources/Nimble/Utils/SourceLocation.swift; sourceTree = ""; }; + DA5E880D66D74FB6237BB27345F14C56 /* RxTextViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTextViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift; sourceTree = ""; }; + DB1A9394995D3F31079174D890C5A72A /* NSBundle+CurrentTestBundle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSBundle+CurrentTestBundle.swift"; path = "Sources/Quick/NSBundle+CurrentTestBundle.swift"; sourceTree = ""; }; + DB6417888D8009B03906DBE0721337F5 /* UISegmentedControl+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISegmentedControl+Rx.swift"; path = "RxCocoa/iOS/UISegmentedControl+Rx.swift"; sourceTree = ""; }; + DC038FE1C0CEED46B4074D6370D30782 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; + DC30798CC36A9E53D79116CF7C1DD53E /* UICollectionView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UICollectionView+Rx.swift"; path = "RxCocoa/iOS/UICollectionView+Rx.swift"; sourceTree = ""; }; + DD437C13B49E85149FFDC5BE36C2E27F /* UIView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Rx.swift"; path = "RxCocoa/iOS/UIView+Rx.swift"; sourceTree = ""; }; + DD5B126E47DBFD10BD108550CD07831F /* UINavigationController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UINavigationController+Rx.swift"; path = "RxCocoa/iOS/UINavigationController+Rx.swift"; sourceTree = ""; }; + DFDC90470B0D2DD84D372E7EFA2F8974 /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/TakeWhile.swift; sourceTree = ""; }; + DFE72603DF0268289959A81E73E7F98F /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; + E096A92DD16089341E47B824C5DA6229 /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Repeat.swift; sourceTree = ""; }; + E2002F22FF8DBA8C5AC26A82D61AD0E4 /* BehaviorRelay+Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "BehaviorRelay+Driver.swift"; path = "RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift"; sourceTree = ""; }; E23396586080476CDDC7B392559F7926 /* Pods-RxMKMapView_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-RxMKMapView_Tests.modulemap"; sourceTree = ""; }; - E262DFA4CB7F7C31A129FFC97EC1C8E4 /* _RXObjCRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXObjCRuntime.h; path = RxCocoa/Runtime/include/_RXObjCRuntime.h; sourceTree = ""; }; - E29D5D4824C9856A6B7C28E541944A60 /* UIViewController+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+Rx.swift"; path = "RxCocoa/iOS/UIViewController+Rx.swift"; sourceTree = ""; }; - E3047E65DACE170A3CCAB5F2E81234A2 /* UIActivityIndicatorView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIActivityIndicatorView+Rx.swift"; path = "RxCocoa/iOS/UIActivityIndicatorView+Rx.swift"; sourceTree = ""; }; - E4CE007196AB1BFF0712CBC0A94C9929 /* Expectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expectation.swift; path = Sources/Nimble/Expectation.swift; sourceTree = ""; }; - E5C768152213D26D933F6E1A4DDC2505 /* URLSession+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "URLSession+Rx.swift"; path = "RxCocoa/Foundation/URLSession+Rx.swift"; sourceTree = ""; }; - E6463F67A637E319F0A71134FA95AB00 /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Using.swift; sourceTree = ""; }; - E67D99250A5D58A054A143239C4FD894 /* RxCollectionViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxCollectionViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift; sourceTree = ""; }; - E690D4F09A22782D87E7E3A1E06EBAF3 /* Quick.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Quick.h; path = Sources/QuickObjectiveC/Quick.h; sourceTree = ""; }; - E6EE130C5281C309EB3506766E4069F8 /* RxCocoa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxCocoa.h; path = RxCocoa/RxCocoa.h; sourceTree = ""; }; - E7089BC64BF1D7051E521E36CF25D4B0 /* ObservableConvertibleType+Signal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableConvertibleType+Signal.swift"; path = "RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift"; sourceTree = ""; }; - E74C48189D85E50B260B138F97C5ED81 /* Quick.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Quick.modulemap; sourceTree = ""; }; - E7BA801E2D3C2A3B87002089D5637515 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - E99D57734AC304FE6464C792E35B8BDF /* RxCocoa.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxCocoa.xcconfig; sourceTree = ""; }; + E311A356DF75ED3367B3B907EDF0AEAD /* _RX.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = _RX.m; path = RxCocoa/Runtime/_RX.m; sourceTree = ""; }; + E3A25EFA6FBA9026F48A886BE62D2234 /* NimbleXCTestHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleXCTestHandler.swift; path = Sources/Nimble/Adapters/NimbleXCTestHandler.swift; sourceTree = ""; }; + E48436E2BBF8B486D3B0F3113E90CF8B /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; + E667B8F8500F771E2A00A31849F4E3AE /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; + E7B763C053091F93E81023C6931ABC9C /* Driver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Driver.swift; path = RxCocoa/Traits/Driver/Driver.swift; sourceTree = ""; }; + E7BDCF3FAD11329585A0AFFCD7F273FF /* SatisfyAnyOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SatisfyAnyOf.swift; path = Sources/Nimble/Matchers/SatisfyAnyOf.swift; sourceTree = ""; }; + E955A7F8A995AF024D9E9A341353FCF9 /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; + E95917C06769B6F3B0EEB4C7D0E979DE /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; E9B70CD3B89570B9243ED4EA0C1A5447 /* Pods_RxMKMapView_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_RxMKMapView_Example.framework; path = "Pods-RxMKMapView_Example.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - EA543E09895041426BA274DA75B401C7 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; - EA9BAAE08DBE321F5E329124CDDE7AF4 /* SharedSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SharedSequence.swift; path = RxCocoa/Traits/SharedSequence/SharedSequence.swift; sourceTree = ""; }; - EBCCA9A6AD43380A6BD89E0239DFD8C7 /* Callsite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Callsite.swift; path = Sources/Quick/Callsite.swift; sourceTree = ""; }; - EC50316FF3AD849980E33CDC72915EF5 /* World+DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "World+DSL.h"; path = "Sources/QuickObjectiveC/DSL/World+DSL.h"; sourceTree = ""; }; - EC727E707F7D3A1E2BBAF5F4FC68402E /* UIAlertAction+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIAlertAction+Rx.swift"; path = "RxCocoa/iOS/UIAlertAction+Rx.swift"; sourceTree = ""; }; - EDA21331307F6BC97EBB0FE8BB2C98AB /* NimbleEnvironment.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleEnvironment.swift; path = Sources/Nimble/Adapters/NimbleEnvironment.swift; sourceTree = ""; }; - EE0E044EF15AECA4894E1D71CEB20B72 /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Concat.swift; sourceTree = ""; }; - EE15E6EB4D4518674E9AE0466581D876 /* QCKDSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QCKDSL.h; path = Sources/QuickObjectiveC/DSL/QCKDSL.h; sourceTree = ""; }; - F06FFD9A86E0E8AA1C1125070EE965F1 /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; - F19AC48FEDB3BA6AF8FE9529CE6D17EA /* BeVoid.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeVoid.swift; path = Sources/Nimble/Matchers/BeVoid.swift; sourceTree = ""; }; - F1A62FC59ABBB03FAE6C6A6BA450FB5D /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; - F28BED4343F8FA81F82EF5FA367795DF /* ExampleHooks.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleHooks.swift; path = Sources/Quick/Hooks/ExampleHooks.swift; sourceTree = ""; }; - F2DAD79BA608678B8CB1E2BFA30BF5FD /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Debug.swift; sourceTree = ""; }; - F2DDCD78703AE1313891D9D988FB8080 /* SharedSequence+Operators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SharedSequence+Operators.swift"; path = "RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift"; sourceTree = ""; }; + EB70ED391CEC02ACEF00EA618810B1BF /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Multicast.swift; sourceTree = ""; }; + EC5E58411F56A1BB542626AAAB6C5CBF /* RxMutableBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMutableBox.swift; path = RxSwift/RxMutableBox.swift; sourceTree = ""; }; + ED5669F29353DAA2F2E2A733AECC136E /* RxTabBarDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTabBarDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTabBarDelegateProxy.swift; sourceTree = ""; }; + ED7B07F655AB863EEEB53A6C03E5EE63 /* UINavigationItem+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UINavigationItem+Rx.swift"; path = "RxCocoa/iOS/UINavigationItem+Rx.swift"; sourceTree = ""; }; + EDF44EE7BBA22970D198CFD86C2F21E3 /* PostNotification.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PostNotification.swift; path = Sources/Nimble/Matchers/PostNotification.swift; sourceTree = ""; }; + F098AD914E2E11D8BC2DB9C594432B06 /* RxTabBarControllerDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxTabBarControllerDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxTabBarControllerDelegateProxy.swift; sourceTree = ""; }; + F26773981532F319A8BDBF25DCAD587F /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxSwift.modulemap; sourceTree = ""; }; + F2973EEF523B127641A76906B0424D83 /* Quick.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Quick.h; path = Sources/QuickObjectiveC/Quick.h; sourceTree = ""; }; + F2AF56101E8C44DEF6182A4EAB60CD15 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + F2D191FAF8CADD15A97BE792D93DBE80 /* NMBExceptionCapture.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBExceptionCapture.h; path = Sources/NimbleObjectiveC/NMBExceptionCapture.h; sourceTree = ""; }; F2ECCD2C6810E03F1556F72CB91B355F /* Pods-RxMKMapView_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-RxMKMapView_Example-umbrella.h"; sourceTree = ""; }; - F2F3095B060FA2F83CA04D6B30DC276E /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; - F38F566681FD9B2CE15931C2B8C736E1 /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; + F32A22DCB5D240BFF748881FD18E45DB /* QCKDSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QCKDSL.h; path = Sources/QuickObjectiveC/DSL/QCKDSL.h; sourceTree = ""; }; + F34177DC393932FD280E8C4D945C638C /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/TakeUntil.swift; sourceTree = ""; }; + F37A70DEF18D240888BB06446A70E282 /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Zip+arity.swift"; sourceTree = ""; }; F402707FD32694E055949F7A6FE4F6BA /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxCocoa.framework; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - F42730A1691BB3CA8A8A990328C2EAB1 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Sources/Nimble/DSL.swift; sourceTree = ""; }; - F461A4CF792509C72D3AF65B091773B2 /* GroupedObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupedObservable.swift; path = RxSwift/GroupedObservable.swift; sourceTree = ""; }; - F4BA030A64A35E4591D77224D663B04B /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; + F44C749D541BAC60A100785CC4E7152B /* QuickSpecBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickSpecBase.h; path = Sources/QuickSpecBase/include/QuickSpecBase.h; sourceTree = ""; }; + F4615F16C7EC14FFED5865F12C541AEB /* UITextView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITextView+Rx.swift"; path = "RxCocoa/iOS/UITextView+Rx.swift"; sourceTree = ""; }; + F4B140051A6DA66B2C4EF046BBB66F00 /* CwlCatchException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlCatchException.swift; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchException/CwlCatchException.swift; sourceTree = ""; }; + F58F76F1DC4300D8374745091065F6FE /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/DelaySubscription.swift; sourceTree = ""; }; F59C82B2701E748EFDBB28211FBEBD6A /* Pods-RxMKMapView_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-RxMKMapView_Example-acknowledgements.plist"; sourceTree = ""; }; F6578570D5CDDBF58C6E499A425AC9C7 /* RxMKMapView.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; path = RxMKMapView.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - F685FC799C67EB22382C4BDB34954B61 /* Timeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeout.swift; path = RxSwift/Observables/Timeout.swift; sourceTree = ""; }; - F73443156E476B3956F95260DF052B66 /* DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DSL.h; path = Sources/NimbleObjectiveC/DSL.h; sourceTree = ""; }; - F79CA0F1552F29704BFDC61338F07B89 /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; - F7CDF12C2219BC0D97F49ACE16B9FE65 /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; - F8AB03E817495FFDEDB41624FD221815 /* DefaultIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultIfEmpty.swift; path = RxSwift/Observables/DefaultIfEmpty.swift; sourceTree = ""; }; - F96AE5158D0CE3DB02A0B971857659A9 /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Never.swift; sourceTree = ""; }; - F9799B1668B834DE25F0BFDE0281BB2E /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; - FA7C1B525AAAE6F78C5CBB7BA9354AA7 /* NotificationCenter+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NotificationCenter+Rx.swift"; path = "RxCocoa/Foundation/NotificationCenter+Rx.swift"; sourceTree = ""; }; - FAEE4555B830A1793109AC43477B042C /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; - FB93CFAFEA71BCB6FFC4A22D375AC010 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxSwift/Deprecated.swift; sourceTree = ""; }; - FBB1A49901D34A588213ECDECB9C16E2 /* KVORepresentable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KVORepresentable.swift; path = RxCocoa/Foundation/KVORepresentable.swift; sourceTree = ""; }; - FC46C5504A7C484198A54DD10B48F8FB /* ObservableType+PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+PrimitiveSequence.swift"; path = "RxSwift/Traits/ObservableType+PrimitiveSequence.swift"; sourceTree = ""; }; + F6D77F3C3D42E7BC259C5FABD8CFC216 /* NMBStringify.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBStringify.h; path = Sources/NimbleObjectiveC/NMBStringify.h; sourceTree = ""; }; + F713A9F89162AE835FAD9E99D850E949 /* UITableView+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITableView+Rx.swift"; path = "RxCocoa/iOS/UITableView+Rx.swift"; sourceTree = ""; }; + F844089DC4B428EDEC39F34C07DC2FB9 /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Zip.swift; sourceTree = ""; }; + F8FE6CE4B2E78E24726403F373FB497D /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; + F917F7AF9379E4C125E45F8E27208CF5 /* RxPickerViewDelegateProxy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxPickerViewDelegateProxy.swift; path = RxCocoa/iOS/Proxies/RxPickerViewDelegateProxy.swift; sourceTree = ""; }; + F991EE88D8304116FA80F845D0B71E7E /* QuickSpec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = QuickSpec.h; path = Sources/QuickObjectiveC/QuickSpec.h; sourceTree = ""; }; + F9B3A624F469A553D746225332BDD762 /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThanOrEqualTo.swift; path = Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift; sourceTree = ""; }; + FC24ADC01268A21B3F5D66AD744372E6 /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Scan.swift; sourceTree = ""; }; + FC3B22ABF47CF20C18886898E642C8D9 /* UITabBar+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UITabBar+Rx.swift"; path = "RxCocoa/iOS/UITabBar+Rx.swift"; sourceTree = ""; }; FC5BEF630109A72948CA8ED485C1705E /* RxMKMapView-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxMKMapView-prefix.pch"; sourceTree = ""; }; - FC65B27586A8B826BB260506A804F879 /* Predicate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Predicate.swift; path = Sources/Nimble/Matchers/Predicate.swift; sourceTree = ""; }; - FCF81771B0302487A6324F480DFFC0FD /* Nimble.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Nimble.modulemap; sourceTree = ""; }; - FD19B105ADEA68D5E1058E9FE61F2034 /* SwitchIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwitchIfEmpty.swift; path = RxSwift/Observables/SwitchIfEmpty.swift; sourceTree = ""; }; + FC87533823C39EA796D59B093CA09B2D /* ExampleMetadata.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExampleMetadata.swift; path = Sources/Quick/ExampleMetadata.swift; sourceTree = ""; }; + FDA1D60BEF3F2E175C763DF3BF27F5C4 /* QuickSpec.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = QuickSpec.m; path = Sources/QuickObjectiveC/QuickSpec.m; sourceTree = ""; }; FE02AFD73E68EBA1E3E29585CD22A2E1 /* Pods-RxMKMapView_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-RxMKMapView_Example.release.xcconfig"; sourceTree = ""; }; - FE0C28C934F5F9A40D2C0B8B869FEDBF /* UISlider+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UISlider+Rx.swift"; path = "RxCocoa/iOS/UISlider+Rx.swift"; sourceTree = ""; }; - FE350D439D52333E72C1308BB6F77043 /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Multicast.swift; sourceTree = ""; }; - FE93A2D6F22CA8620AA0B49FB0715D05 /* Bag+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Bag+Rx.swift"; path = "RxSwift/Extensions/Bag+Rx.swift"; sourceTree = ""; }; - FEBC6AFEF0A66E5087F852670A345F7F /* MatchError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatchError.swift; path = Sources/Nimble/Matchers/MatchError.swift; sourceTree = ""; }; + FF595A0A57126812456C7D5A3F7E4C53 /* _RXObjCRuntime.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = _RXObjCRuntime.h; path = RxCocoa/Runtime/include/_RXObjCRuntime.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 0426DE56AAE3FF808E9845B5CD277DB8 /* Frameworks */ = { + 1A669724DC5966D540AEB7C745D78773 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - F65732E73DF27888169397FAD5CB065A /* Foundation.framework in Frameworks */, - 0C1995B7233390D300EA7CCFBDEC8C33 /* RxCocoa.framework in Frameworks */, - 5B751C27A96415D28EA6A43300736570 /* RxSwift.framework in Frameworks */, + 2C3D01526B1E763CA28EA479E0927C05 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 819A9B65073BE3B5599196C0A3B27EBC /* Frameworks */ = { + 2AAA36AA45B2ADD853C54CB4B21792A3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D1503C762F7E5D2510DCE2FBF2F89D08 /* Foundation.framework in Frameworks */, + A3DACA246F8ECCE40405B0FDA90B2913 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 856791458CC6FDB7FA7A39600635570F /* Frameworks */ = { + 7F682A9E296D139B5A1E649989FB51D0 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4009FA11E7E0C1E8834A03012CE08E84 /* Foundation.framework in Frameworks */, + A3209494C8B29F390AC14D95519460A8 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - A2CA4616E925DDF823CCAB05659D38D6 /* Frameworks */ = { + 981CEA4AB5A89318F309D143EA05C763 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 2670D7E09BC05F2986D147D11719F8F3 /* Foundation.framework in Frameworks */, + 071C8AD4DA1062C748FCC5BC0BE8E978 /* Foundation.framework in Frameworks */, + DF2BF28F39EFAB47F5FEB19CD899BF00 /* RxCocoa.framework in Frameworks */, + 39B90BA29BEB66641A66C7EEDF424651 /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - BFB75547B15627008DA0477440819157 /* Frameworks */ = { + 9CCD105F9455CD8BB4AB7CBDE2D88E3F /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 33599F3744192C389996BBC6D929F8E3 /* Foundation.framework in Frameworks */, - A78BEE4441FBBF42E917B47841C48FC8 /* RxSwift.framework in Frameworks */, + DB08AC565EA0D8BB4A80ECFEF804407C /* Foundation.framework in Frameworks */, + 48604B6F1A103DA598F05C6B7EA72F3C /* XCTest.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - E0EE65E5F7209A31EB04D1351DAF4879 /* Frameworks */ = { + B4C1387FE47E6D644C592ADD92495165 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FA351A3C13B3B4872A8A0F67727EC18B /* Foundation.framework in Frameworks */, + 1E154DEAE26A628C56FD9A1B3FD6E494 /* Foundation.framework in Frameworks */, + 9F58FDD502CD95CC8FEE7DFF20AF74A3 /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - F2C7FF88904228A465DDD8B23636D63F /* Frameworks */ = { + C5D0935EE17DBF23161EE56DF38E4222 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 6E53DAB80506570AB5465C2353249709 /* Foundation.framework in Frameworks */, - 3B90C1DA23BF3B7AF89931D553596B88 /* XCTest.framework in Frameworks */, + A7E8D3C6BFF059D21BE53C283CEDF737 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 09BF1F7A71B85FDB78C8C6F3910B8003 /* Support Files */ = { - isa = PBXGroup; - children = ( - 15139E2E5DBEBF2C9E62F6E1D1C9E4E0 /* Info.plist */, - E74C48189D85E50B260B138F97C5ED81 /* Quick.modulemap */, - 5037D6015FCAFA99DFB53613DBEF6BE2 /* Quick.xcconfig */, - 5754CC1461F5C35D6308D56E180623A3 /* Quick-dummy.m */, - 51B06483E3A93AFAAB7D010C1CD18E99 /* Quick-prefix.pch */, - 5C6594E46D7E70D2788F165C0BF82E7D /* Quick-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/Quick"; - sourceTree = ""; - }; 0B5F152A536E23FD1EA00F9D5A62B486 /* Targets Support Files */ = { isa = PBXGroup; children = ( @@ -1003,161 +999,43 @@ name = "Targets Support Files"; sourceTree = ""; }; - 0E0E895F555FEAF1D2FF329C320F03BC /* RxSwift */ = { + 1387F549F28127498802112548AF9B5A /* Quick */ = { isa = PBXGroup; children = ( - 58EF15C797FD8FD33005BA693FCDB336 /* AddRef.swift */, - 146CF57EDC1C85BF328EC841E7F4489A /* Amb.swift */, - F4BA030A64A35E4591D77224D663B04B /* AnonymousDisposable.swift */, - 18E8C16AB2C1CA85C166A915AC666AFC /* AnonymousObserver.swift */, - C27774BF248064DFDC5229103927A121 /* AnyObserver.swift */, - 2C99795FADB3F63EC877CB2EFAAE94D5 /* AsMaybe.swift */, - 96237F60D32115944D11FAEDE3DFD70C /* AsSingle.swift */, - 7B0E2FD10BBD783BC8BB0CFAC9335473 /* AsyncLock.swift */, - BD87DBECD847AA299386413D033022DC /* AsyncSubject.swift */, - B1F168E0DFFB7740C939F4506D2FA456 /* Bag.swift */, - FE93A2D6F22CA8620AA0B49FB0715D05 /* Bag+Rx.swift */, - 665BF7882CC230BA74282A1849AB48E7 /* BehaviorSubject.swift */, - 068643287D514302C771559AF3A01A25 /* BinaryDisposable.swift */, - B2E2B76C468CBD5626BF6C28BE03B10F /* BooleanDisposable.swift */, - 32EAD46E56F125DF6D52EFC046098662 /* Buffer.swift */, - 152CC44D817E893567014F28F2A8B3D4 /* Cancelable.swift */, - 6E03678ADDF08214F94639FA5D89B128 /* Catch.swift */, - B8C67624D8EAC38AAF3F7A4284E7BF65 /* CombineLatest.swift */, - C646D82FBAAB4D9AFC6ED52C4989931F /* CombineLatest+arity.swift */, - 455401C62B06911224A105574B5690E5 /* CombineLatest+Collection.swift */, - 51ADCF68BEC33CE866E47A24D524E375 /* Completable.swift */, - 65C7B5D92B8CCAB8033A0ABC92DF4DB8 /* Completable+AndThen.swift */, - F38F566681FD9B2CE15931C2B8C736E1 /* CompositeDisposable.swift */, - EE0E044EF15AECA4894E1D71CEB20B72 /* Concat.swift */, - DEFAAF7E9F47E68956EAC7271A658224 /* ConcurrentDispatchQueueScheduler.swift */, - F2F3095B060FA2F83CA04D6B30DC276E /* ConcurrentMainScheduler.swift */, - 805A9F1729B17E4539A6C7AC242F7A8B /* ConnectableObservableType.swift */, - 7D8F52F2881F1C87818A2E62431BA1C9 /* Create.swift */, - 2B82317712385F7D92D281FC47554A21 /* CurrentThreadScheduler.swift */, - 931A5A2E099F8AE47E18A97D9231D75C /* Debounce.swift */, - F2DAD79BA608678B8CB1E2BFA30BF5FD /* Debug.swift */, - F8AB03E817495FFDEDB41624FD221815 /* DefaultIfEmpty.swift */, - 48DDCCAD6E72E86D9A1379D6F6F2670B /* Deferred.swift */, - A5AFC00E6CB824A807608266FD55AC04 /* Delay.swift */, - 47E10C7AA777DF62C2BFB3262C0C926F /* DelaySubscription.swift */, - E02B7E4B600D4656DCCBBCC640ED66CC /* Dematerialize.swift */, - FB93CFAFEA71BCB6FFC4A22D375AC010 /* Deprecated.swift */, - CB090E2B5AF1C023497B4FAEC78C3507 /* DispatchQueue+Extensions.swift */, - 77E496CE7A0A08BF17009BA7868B1FAE /* DispatchQueueConfiguration.swift */, - 0C57E49B200B4E7221AE8949194C1495 /* Disposable.swift */, - 614AE9A4B3902A29071694917230F292 /* Disposables.swift */, - 93BBC400CC85DE5D2650D81C283D9A03 /* DisposeBag.swift */, - 972441D2E3CE486131DE3AAC96F678BC /* DisposeBase.swift */, - A73E433F05EB82AC3A0581FE2EC1B455 /* DistinctUntilChanged.swift */, - AD35B4506BF614608E933B842250211E /* Do.swift */, - CC95D1F1BB7F31C3CDC058E0A3846AFD /* ElementAt.swift */, - B7E97F37210806017EF6597077123EE3 /* Empty.swift */, - 32D24D1C2AD20D7CE2090BCD1238164F /* Enumerated.swift */, - CD56CF99FC41CA61D411D9D05124F7BD /* Error.swift */, - 8E93EECC7EE13D7268137BD2AB36A863 /* Errors.swift */, - 9D9A90F3E740BDF96004B2E9E48EB6E5 /* Event.swift */, - 2CA7DD46F9F6B2A336562328A16FA871 /* Filter.swift */, - 902D697D618A6C490374EF9396570056 /* First.swift */, - 685F25BE8401BD72438B97602EEDC90B /* Generate.swift */, - 75253F3EC07B597551E10DECC25E378C /* GroupBy.swift */, - F461A4CF792509C72D3AF65B091773B2 /* GroupedObservable.swift */, - 251DD7B6B61122C954D8BF8A63F8D804 /* HistoricalScheduler.swift */, - 814052C8EE5C7AD772B1AA7DAECC15E2 /* HistoricalSchedulerTimeConverter.swift */, - 227A8A4C1A3ED371CE69845F22921351 /* ImmediateSchedulerType.swift */, - 016FEE6F7F071000009BD87395819C02 /* InfiniteSequence.swift */, - 6D2068627C724957CF45E36A46A5783D /* InvocableScheduledItem.swift */, - DF5DAEEFEA3740C6201A407C858EF94A /* InvocableType.swift */, - 03BDB00063F34BF54EBEBF19A3288A59 /* Just.swift */, - 0359BDDD17BF5B2C23C016A8B9CB344D /* Lock.swift */, - DEF2BF1B1CBC615E2093662933CD8259 /* LockOwnerType.swift */, - 85FA1A7D93CC5BB0C206E6996E2C2433 /* MainScheduler.swift */, - 122CF935A2759C8765E19CB28F0A2FAD /* Map.swift */, - E198066C3A4ED653A18988B06065DFA4 /* Materialize.swift */, - AB98F1A167765955B8A235B99A385BEE /* Maybe.swift */, - 878512E41658FAFB49EA35BD4F33C574 /* Merge.swift */, - FE350D439D52333E72C1308BB6F77043 /* Multicast.swift */, - F96AE5158D0CE3DB02A0B971857659A9 /* Never.swift */, - 774DCF88A5DF058FC7AC566AAF82351B /* NopDisposable.swift */, - BA92011810E77667604CBBC1FC537EEE /* Observable.swift */, - 0483178AD77176A8F63FC830AC36EB29 /* ObservableConvertibleType.swift */, - 9AB51F110F0DE676BFFE92AE7100842A /* ObservableType.swift */, - 14F7E817FB7985F36BBDAB50DC280685 /* ObservableType+Extensions.swift */, - FC46C5504A7C484198A54DD10B48F8FB /* ObservableType+PrimitiveSequence.swift */, - 110B770FAC289A843DF9E2E2D7588CA1 /* ObserveOn.swift */, - 0530079358B5DCDDDC4C93092EE5D858 /* ObserverBase.swift */, - 667024656DD711CB4992A56F39870366 /* ObserverType.swift */, - D1E230FCBCCB68DF1C1BA0AD309F27BD /* OperationQueueScheduler.swift */, - 5D83DB2B16DC9AC0CB8E79403FAEC326 /* Optional.swift */, - 9852A1EEEF7A28212F62209A7FBF1F3A /* Platform.Darwin.swift */, - F79CA0F1552F29704BFDC61338F07B89 /* Platform.Linux.swift */, - C841D618563B14DA47FEA508DBE63582 /* PrimitiveSequence.swift */, - D62A29417054DE8D5024DBA56AE967F5 /* PrimitiveSequence+Zip+arity.swift */, - EA543E09895041426BA274DA75B401C7 /* PriorityQueue.swift */, - BE7D397B09986FB847EF3167CDC8EE5D /* Producer.swift */, - F06FFD9A86E0E8AA1C1125070EE965F1 /* PublishSubject.swift */, - CF653DC663CF4108D0B990C920EF41A3 /* Queue.swift */, - 7B909CCAA70E70FE69DC40071F5ED9FA /* Range.swift */, - 758523E3FE31881A16C5E6B4553C19B8 /* Reactive.swift */, - 70A86F469531DA7C462B200288B75495 /* RecursiveLock.swift */, - 86859151A6CAC1344CE78208BDB4E906 /* RecursiveScheduler.swift */, - 433391E9AF88209EBFFDD78205344CF6 /* Reduce.swift */, - D91E34F049D6E11AD355CCC63B919995 /* RefCountDisposable.swift */, - D0D3932ABFC7BD1955E16B19C9E1D057 /* Repeat.swift */, - F7CDF12C2219BC0D97F49ACE16B9FE65 /* ReplaySubject.swift */, - 3BCC88009BE3C09A42BC563E57448E40 /* RetryWhen.swift */, - 139CB5A47CB745ACDF311987E2AD89C9 /* Rx.swift */, - A8A4842CBFA7068E62AE495B55C55142 /* RxMutableBox.swift */, - 61FDF3508AFE0DB30D335711551E096C /* Sample.swift */, - E1AED8B2F367F007DE27C353232621A0 /* Scan.swift */, - 46D6910763BBF5023722E47D5E00B3E4 /* ScheduledDisposable.swift */, - 479804D1592E08C864DDB8CCAC347BF6 /* ScheduledItem.swift */, - D327564BFFF92815A12AC57DA269DB13 /* ScheduledItemType.swift */, - 94097DA6D25CCFE36180FD643A81B927 /* SchedulerServices+Emulation.swift */, - FAEE4555B830A1793109AC43477B042C /* SchedulerType.swift */, - D0BAFCCDEA87BAFF7D9B7196D08C8990 /* Sequence.swift */, - 0EC0581C7C28835B8E7AA69A894DE090 /* SerialDispatchQueueScheduler.swift */, - 489C4B3C3F2FC7A9E9C688A76FF8DD89 /* SerialDisposable.swift */, - 50511AEDC96DAB1E5A6C377E14E283CB /* ShareReplayScope.swift */, - A56148FAA0E062EE2985201D7253549A /* Single.swift */, - 02988BC93D9967750FAF6BBBE9AD7634 /* SingleAssignmentDisposable.swift */, - D826CEC8BBDF2331BEA309C96CDF935C /* SingleAsync.swift */, - 2AFCBAA70B3C226D5CF2027F1BFAE8E4 /* Sink.swift */, - 370F79142856709ECF6492A4F15E95AD /* Skip.swift */, - 2D2E86A2AF889E8BDDB1507CA883F010 /* SkipUntil.swift */, - 945431C7E81FB6A3EF55C8837FEB81AD /* SkipWhile.swift */, - 2E57E08CA6EBED35E331C68A3D687349 /* StartWith.swift */, - 714E92C83A62230A845499B4E4EB4957 /* String+Rx.swift */, - A571CCD9266AB50DCF1E25EBF5277950 /* SubjectType.swift */, - 0CD2A8678DD1CEBF05B7F92630968BC2 /* SubscribeOn.swift */, - E07AB021FF08A5D341845358A914D429 /* SubscriptionDisposable.swift */, - E1518CCF71369F22D2AA2C43E57B8257 /* SwiftSupport.swift */, - C4D3BFF06A14F74078EFA17409647103 /* Switch.swift */, - FD19B105ADEA68D5E1058E9FE61F2034 /* SwitchIfEmpty.swift */, - CF98C97466E135490CE5CD36A0C6F551 /* SynchronizedDisposeType.swift */, - B9383DAC6DCDB4356CAA89ED20FB33DD /* SynchronizedOnType.swift */, - 36AFA0E7AE82DF6C5FFC866BFED5CF06 /* SynchronizedUnsubscribeType.swift */, - A652599C47E184F4B0B46E1FBD692B46 /* TailRecursiveSink.swift */, - 9C33EC8430831BA889CB532A54AC8244 /* Take.swift */, - 3C2162488EAB56A536BBC0F785008C7C /* TakeLast.swift */, - CEB7B1CA7C5AB4A9E6807256058CAFC5 /* TakeUntil.swift */, - 15C723F204203B0B8E46729339C8363F /* TakeWhile.swift */, - 9E60A1D2523C5C575663424194ED9911 /* Throttle.swift */, - F685FC799C67EB22382C4BDB34954B61 /* Timeout.swift */, - 144696357E54A04EFB00706516B7034D /* Timer.swift */, - BBB6B17A694C360CADAD08AE86987740 /* ToArray.swift */, - E6463F67A637E319F0A71134FA95AB00 /* Using.swift */, - 62A5E455DFC3C7783A444DFDB657633D /* VirtualTimeConverterType.swift */, - D961DC8E8A50ABBE4CC435C399F5CB00 /* VirtualTimeScheduler.swift */, - D3D4ECD4201403B0D96AF8C901801BE4 /* Window.swift */, - 7E95DAF86C4A70B758F8E93CA3089255 /* WithLatestFrom.swift */, - 87B8BEEEB9CAF5EBB78114DB27625DC0 /* Zip.swift */, - 6E7D56FA5287A829BBFAD35C909DCE01 /* Zip+arity.swift */, - E00D1FF7878B06D99E9275F3D8E908F1 /* Zip+Collection.swift */, - C4A118E372F80735C0A83FF97F7161A2 /* Support Files */, + 6D6CEA8ADC0295831372D02CEF00C539 /* Behavior.swift */, + 0E475B5BAC23B315EB01AFC4B8DF7DE3 /* Callsite.swift */, + 67FDEEFE8C09D4DE5D2054EFAFD63A6D /* Closures.swift */, + D7427951E51C073CE672723E27844C01 /* Configuration.swift */, + B68B8DB2364F06DEFC16AD4CDEF15EA5 /* DSL.swift */, + 23C96EFE094460B4EE1CEDCF5DCC03AD /* ErrorUtility.swift */, + 1697323473EADE759DEA59039E181EE2 /* Example.swift */, + C2E186167922981EA4F7C34926BF0FFD /* ExampleGroup.swift */, + A4741D6FEA3DFBD5FB4C82AA22D12267 /* ExampleHooks.swift */, + FC87533823C39EA796D59B093CA09B2D /* ExampleMetadata.swift */, + 8AAC05BD5A0F5AB2C85ADE61DB6EC6D5 /* Filter.swift */, + 43D197B84AA0304E7DAB262696FAEDAC /* HooksPhase.swift */, + DB1A9394995D3F31079174D890C5A72A /* NSBundle+CurrentTestBundle.swift */, + 37654A86DCCE225D99CB694028C7B34E /* NSString+C99ExtendedIdentifier.swift */, + F32A22DCB5D240BFF748881FD18E45DB /* QCKDSL.h */, + 7A214CDD74395FA6D8FCE775DD472ECF /* QCKDSL.m */, + F2973EEF523B127641A76906B0424D83 /* Quick.h */, + 44888F02CF4E73217EE2D9DAC42C595E /* QuickConfiguration.h */, + 3F8EC1E29B925D024D432B9C80CB7A91 /* QuickConfiguration.m */, + 9D76CF3BFC1838C9A5EB96FCA35FFFF4 /* QuickSelectedTestSuiteBuilder.swift */, + F991EE88D8304116FA80F845D0B71E7E /* QuickSpec.h */, + FDA1D60BEF3F2E175C763DF3BF27F5C4 /* QuickSpec.m */, + F44C749D541BAC60A100785CC4E7152B /* QuickSpecBase.h */, + B7358CA57A3DC30C139498036B270B2C /* QuickSpecBase.m */, + 4EB0814CCABD7BE039B8D8650A8A90AB /* QuickTestSuite.swift */, + CD1E10B188B6B747F49E6DE81271E62C /* SuiteHooks.swift */, + B634F5DEB063A6A789DDE46A7A6AE1ED /* URL+FileName.swift */, + 8B8F4FB1138857B735DC3A320C9A815A /* World.swift */, + 628439AF7C85B2234013AAC7C107CD7E /* World+DSL.swift */, + D324FC52BDCEDAABE61952715A8235BE /* XCTestSuite+QuickTestSuiteBuilder.m */, + E15CC0F2383DF9DAD88D22A917EB53D0 /* Support Files */, ); - name = RxSwift; - path = RxSwift; + name = Quick; + path = Quick; sourceTree = ""; }; 248ADA7F877DA6B6C69BADDC0BB8284D /* RxMKMapView */ = { @@ -1185,93 +1063,215 @@ name = Frameworks; sourceTree = ""; }; - 44F9EEF15FB7087977962B0F232B4668 /* Pods */ = { + 431B48ECDF2914762080BC4056EABF2F /* Support Files */ = { + isa = PBXGroup; + children = ( + 2EFD8FA9F4F987E9EAEFFC04EFAC826F /* Info.plist */, + 15E7D034B08CFE61BFE649CD2BB0C6C1 /* Nimble.modulemap */, + 89456EA5A36F58A80F10D6AD152DABB6 /* Nimble.xcconfig */, + 17B11DCCA663D8DBDC3B90D9503FFE96 /* Nimble-dummy.m */, + 6018A05CB1F8744F15C0FA26047B5E25 /* Nimble-prefix.pch */, + CA0631DACDE81A3545CDD7966BCB4B46 /* Nimble-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/Nimble"; + sourceTree = ""; + }; + 4985763E6AA5BA99947428D0488A218C /* Pods */ = { isa = PBXGroup; children = ( - 7967FBC8F7DF7C16F5CE421802C0B537 /* Nimble */, - E663FB4EE3D1BBC709D2D3AC7C197F09 /* Quick */, - A6364696C2DA6834C654A5B1802AC12C /* RxCocoa */, - 0E0E895F555FEAF1D2FF329C320F03BC /* RxSwift */, + D7517AB7BF93290A163979B171F021D3 /* Nimble */, + 1387F549F28127498802112548AF9B5A /* Quick */, + 95B3AB0EECF86F8E09E3BE41EB99AA0A /* RxCocoa */, + 6136FD8D91C62A2B4A8FB5FD39ECD28E /* RxSwift */, ); name = Pods; sourceTree = ""; }; - 7967FBC8F7DF7C16F5CE421802C0B537 /* Nimble */ = { + 6136FD8D91C62A2B4A8FB5FD39ECD28E /* RxSwift */ = { isa = PBXGroup; children = ( - 450023DC5E8881E249923D0A22A2ED54 /* AdapterProtocols.swift */, - BBB82C26620A9137CFFA5B1D221D75C0 /* AllPass.swift */, - 7EA46B0995E03D18F7222B330D580264 /* AssertionDispatcher.swift */, - 324D90587D85CFBBDE6894DD96AE46DB /* AssertionRecorder.swift */, - 7F0ED35C39E94FD5E6C4894B314AAC1E /* Async.swift */, - 3933053011E7DD7D5D8FCA704FC7EF0E /* AsyncMatcherWrapper.swift */, - D14B307FAC65737BD0093A181B2AF599 /* BeAKindOf.swift */, - 99EED87C68586BAE5B0200F232A4A9C3 /* BeAnInstanceOf.swift */, - 6E53CEFA2B35C7A8F79577753D370334 /* BeCloseTo.swift */, - 0E3CCACA78959F7384451E05A84AEFFD /* BeEmpty.swift */, - C023AA55F1E0E2698A0CBC3CAD4B01E8 /* BeginWith.swift */, - D99370DB4BDD9D8DC3FFC7D5EB410BF0 /* BeGreaterThan.swift */, - 04162F721AF8AD212C41F3FEA95E2369 /* BeGreaterThanOrEqualTo.swift */, - 1572436C33BEA5E9B33EA6B23A74F020 /* BeIdenticalTo.swift */, - 737E7AD2BE799368AD9B47968E9A5FC3 /* BeLessThan.swift */, - 3AE228AD2E38A4FAE5FF5C16DB6448F0 /* BeLessThanOrEqual.swift */, - 78AB29252FD5B0236814B95A280B22CF /* BeLogical.swift */, - 35FC4C7DD779F99E331F44A460E3544F /* BeNil.swift */, - F19AC48FEDB3BA6AF8FE9529CE6D17EA /* BeVoid.swift */, - A08B8657306177414C16C70EA354FC0E /* Contain.swift */, - 3710C729D3B5B8A08D5E14EB5A219C1F /* ContainElementSatisfying.swift */, - 2F41F5A05848EDFA89D8D07737DCA436 /* CurrentTestCaseTracker.h */, - DE192962F86568262E1529732DA6A8CA /* CwlBadInstructionException.swift */, - C8B2886769D33DCAE7CF2EF3974A249D /* CwlCatchBadInstruction.swift */, - 11C4A659AD1B01DFB232AF7222E604E3 /* CwlCatchException.h */, - 62F8CACDC441B2BB5AC919E81ECBCF16 /* CwlCatchException.m */, - A1ACE41489DB3A3360D6CFFB08C37B3B /* CwlCatchException.swift */, - 29F39BAA4E579932EB14E50B51A25B34 /* CwlDarwinDefinitions.swift */, - D8C46C374603018723EC4DB860A416EF /* CwlMachBadInstructionHandler.h */, - B1A9117E5D0CE4CF348BFD78D9D1F31B /* CwlMachBadInstructionHandler.m */, - B57D143AA36A1619C4D71AD62B306B6F /* CwlPreconditionTesting.h */, - F73443156E476B3956F95260DF052B66 /* DSL.h */, - A7C53DF69B9DE44FEB49EA2D3241A536 /* DSL.m */, - F42730A1691BB3CA8A8A990328C2EAB1 /* DSL.swift */, - 8B05E9AB740461C1E7775036E8821F47 /* DSL+Wait.swift */, - 9CDD70943774CB7A7C8E00852E1F3E1D /* EndWith.swift */, - B5246F03ED6ECB6B69169F3F91950014 /* Equal.swift */, - 61C6E264AEA879DFAB9E8E58A86DCE7C /* Errors.swift */, - E4CE007196AB1BFF0712CBC0A94C9929 /* Expectation.swift */, - 81DFD921DAD75CF8FB84414A154D95AC /* ExpectationMessage.swift */, - 78C7DA7E00FB7E636CD9D088DD7EE03A /* Expression.swift */, - 52971FC37160BBDC4F53A59E3CED4640 /* FailureMessage.swift */, - 97B5E5C3FB1B972B7E112ECFFA804EFC /* Functional.swift */, - BAB51B60862977C5D3DECC697FA40517 /* HaveCount.swift */, - B0D15BF367D8A3D807EFAED3F51575F1 /* mach_excServer.c */, - 862CED0BD4031EB389AA892543A19016 /* mach_excServer.h */, - DFF8A44ACE22FDEC693E5B9CCD1DDFFE /* Match.swift */, - D852717C8AE0D28350FFE206D214C5D0 /* MatcherFunc.swift */, - 6BB34244DCA9CBC0DB7E428927C9E7EF /* MatcherProtocols.swift */, - FEBC6AFEF0A66E5087F852670A345F7F /* MatchError.swift */, - 115FCDD4D863C4FF466546CF475E9EC9 /* Nimble.h */, - EDA21331307F6BC97EBB0FE8BB2C98AB /* NimbleEnvironment.swift */, - 9093A2BB80F28E1CECE1A649C00A6386 /* NimbleXCTestHandler.swift */, - 63D0EC03C02EF7BC9C0E3F0F833F0914 /* NMBExceptionCapture.h */, - 48FFA974F3704B71D8E3EB41EF127707 /* NMBExceptionCapture.m */, - 9E2A04F668F9350483CEFA4F0F0A0931 /* NMBExpectation.swift */, - 71A08A2EB528805986D1A5967DA3801C /* NMBObjCMatcher.swift */, - CED240D5C017E89F3B2626244533CCCE /* NMBStringify.h */, - 2AB74A6FEC3427F893E750ECFC13B65B /* NMBStringify.m */, - 7307BB95C98BD5D5372FEEAFAF24B83E /* PostNotification.swift */, - FC65B27586A8B826BB260506A804F879 /* Predicate.swift */, - 1340EAFB759A984DAC970E1081920D3A /* RaisesException.swift */, - BB9EAD10DD7ED6F3B6F7162945F358C2 /* SatisfyAnyOf.swift */, - 0C87222437F122A38335C0459BC45B71 /* SourceLocation.swift */, - 87B0E1AA09AACF3A9899A3CD45AE90A9 /* Stringers.swift */, - 7AD39022A20BBAE807A1D975C2004959 /* ThrowAssertion.swift */, - B447BB9137524194FFD27B36D396BEE3 /* ThrowError.swift */, - 25141FBBD9E079F9611F072CF7AA0B3A /* ToSucceed.swift */, - 04614A9A7FA13F38655C84C5C4E0860B /* XCTestObservationCenter+Register.m */, - AC6937E7F27F26FD75369CFFFF9C7F4B /* Support Files */, + 69780C0E3902531771C25DEC520DD626 /* AddRef.swift */, + 984F49F3452EDB8D4A5E1B1EB2550909 /* Amb.swift */, + 400C2D5EAD88529B7E38A9B572F14405 /* AnonymousDisposable.swift */, + BC4E936250B396B41E3F7BE0D98E2849 /* AnonymousObserver.swift */, + 47E8CFA1BAC7008FE92F22E9D1590C46 /* AnyObserver.swift */, + 1E83C3F632F52C0B37CF9FBF3C365EF3 /* AsMaybe.swift */, + C0A49A3F9965CCAD26D88E1450056DC3 /* AsSingle.swift */, + BAE3FA42737922D49F0EF0D60BAEC4B8 /* AsyncLock.swift */, + 9B5D2EEE06D4ECBAEA697D6FF2A65C10 /* AsyncSubject.swift */, + B41109F0C14AEDD7A8B7736E30F89D83 /* Bag.swift */, + B33A652257347D361987496F346E69D9 /* Bag+Rx.swift */, + 4D3D60F046133044042C3D59EF93823A /* BehaviorSubject.swift */, + 89A06FC8B3CB70E537F5A9C08EAB579E /* BinaryDisposable.swift */, + 454C7540496C1B09D202F77C7B181E4F /* BooleanDisposable.swift */, + B65462AFE2C32BCA5F1F5219AC6D8140 /* Buffer.swift */, + 01D66F103BE64130A1333B8F68C5BB93 /* Cancelable.swift */, + 54FFC9F2F486F59C0F3DCDEC52E9B845 /* Catch.swift */, + 7810984A572FA5D54401ECA589FD04AB /* CombineLatest.swift */, + 434A7C8BD010C3E04D453F3BD7E88A3C /* CombineLatest+arity.swift */, + 43AC80F40484A5DAED86230A6E385647 /* CombineLatest+Collection.swift */, + 144B78E1CF8D0DA403A3430C34AABE83 /* Completable.swift */, + 2C9AA83A750DE6B0C11697EC35E9A7BF /* Completable+AndThen.swift */, + 30A4E2C4C2616C0DC0D4ED4222C57D8A /* CompositeDisposable.swift */, + 92BC0EA2ADFF76B41D9A86A8E5144997 /* Concat.swift */, + E955A7F8A995AF024D9E9A341353FCF9 /* ConcurrentDispatchQueueScheduler.swift */, + 9FC52151F4FFD85C11E74383F0768B99 /* ConcurrentMainScheduler.swift */, + 2781C9C62EB92F40DF97491492A2AC1A /* ConnectableObservableType.swift */, + A940D9EB23DF60AAC3A6B31BB3891946 /* Create.swift */, + 2BB48C0D5CA7A443728C5F07CF7E8577 /* CurrentThreadScheduler.swift */, + 2CFB7B7556D9FE0BDAEAF9FF5536AFC2 /* Debounce.swift */, + 4C4C28790F90D139C6BC732B0822D58C /* Debug.swift */, + BE7C93FE17E32B3A11082B642D2D4C32 /* DefaultIfEmpty.swift */, + B888DEE8D839198B12F11D80BFECAB89 /* Deferred.swift */, + 5825F11C84D2287066DBC12F8E1C86A0 /* Delay.swift */, + F58F76F1DC4300D8374745091065F6FE /* DelaySubscription.swift */, + AE92860F40AAADCBB6E0C6506C9B1D20 /* Dematerialize.swift */, + 6E194C2D21B60DC4015057177EE3D193 /* Deprecated.swift */, + 222A9E92F2EE61E75D10E74DACE6FAD1 /* DeprecationWarner.swift */, + 5347CCA30AD86EC7E654006145746CBA /* DispatchQueue+Extensions.swift */, + 4F941CB1F490FC9BC344D03696D5CDE8 /* DispatchQueueConfiguration.swift */, + 57AEC5350629DE0B21611B68E5F14519 /* Disposable.swift */, + CE394802676EA94939D5D9BF7E7CAA74 /* Disposables.swift */, + 82912038F2871754FFAF189AFB66EA45 /* DisposeBag.swift */, + 0CAA16858B925845A9D8E4D826A5BDCE /* DisposeBase.swift */, + CF7822928E0F7479348801524A3C1E6F /* DistinctUntilChanged.swift */, + 505417D177507A59364FDB5D52EEF802 /* Do.swift */, + A881F09155F61268B733322FB17361F5 /* ElementAt.swift */, + 0F63EDF5792426A70F6D3C2102241574 /* Empty.swift */, + C70DAE3EE830B80628E402AE5B840BBB /* Enumerated.swift */, + 3FAC716FB50C6E985EFE837A3698F271 /* Error.swift */, + BFA726286922C9BE0DC635989E1E5EE6 /* Errors.swift */, + 45CE5745C3EEABCF3FF4034C6C0A2F6F /* Event.swift */, + 62AF3070AA3E15C0F8FF810CE6550EF5 /* Filter.swift */, + 9D79C077E4BE2C9EA9066E321D04A835 /* First.swift */, + C82E29F29B71AF9A76EEDCE6BA1BB1C6 /* Generate.swift */, + 7AA559828BF5D238144556E64410F611 /* GroupBy.swift */, + 7053F0963D60674C5910E75132BDFD1C /* GroupedObservable.swift */, + 29ECAC2253A0A7A456B63A6B8969E4CA /* HistoricalScheduler.swift */, + D30C9F57385FC65C1CFF2160E8F7F41A /* HistoricalSchedulerTimeConverter.swift */, + 145C79014EF6F0DA568F118A61750C9D /* ImmediateSchedulerType.swift */, + 9905BB7C9F72F3D6445C20E88B63F80F /* InfiniteSequence.swift */, + ACD84D80A37A1F5CF19A049A22629DFA /* InvocableScheduledItem.swift */, + 2EEAFB13137F578A7CCB37763A111EAF /* InvocableType.swift */, + 0AE468B32B4E2D88920774CB4AB475EF /* Just.swift */, + 2EC44F22FF9C12ABF02E7DCC0C3C4FF9 /* Lock.swift */, + B6199F81C0FB02061D823DE0E8AB0E11 /* LockOwnerType.swift */, + 69C45D0BD14B7E4715B0DA13E574862C /* MainScheduler.swift */, + 6C48C486F8F2EC3C771EE6642571F3CF /* Map.swift */, + AE4F73F0BDDAA37F1C938090C8E3874C /* Materialize.swift */, + D1EE37E388D0ADFD3F9C1DC70E4AF584 /* Maybe.swift */, + 27D2FD7BA39EB5A32A3A8CE059A7E152 /* Merge.swift */, + EB70ED391CEC02ACEF00EA618810B1BF /* Multicast.swift */, + 1EF94013BC51D39F75A07397C1044363 /* Never.swift */, + 7B1E9A80FEAA2744D9CAD19E0128C81D /* NopDisposable.swift */, + 026C53F58B2690ABDC9E656A9B1F3EB8 /* Observable.swift */, + 1FB8E520BC8D0590EB22446E4F5BD9FA /* ObservableConvertibleType.swift */, + 0E8A92E6244A7662724C4AD3F4B7F4BE /* ObservableType.swift */, + 5CCA0141A37D61178B0D0FDC755514AB /* ObservableType+Extensions.swift */, + 1C23E8F6D880A2EB8B1D1898EE6F1A00 /* ObservableType+PrimitiveSequence.swift */, + 98BF01C939506860689CDD7AA235213F /* ObserveOn.swift */, + 3EFD6BAA06DDF0814ACC06DA4DFD1585 /* ObserverBase.swift */, + C8111EF0856DACEE70A2271E9E5425F0 /* ObserverType.swift */, + DFE72603DF0268289959A81E73E7F98F /* OperationQueueScheduler.swift */, + 56D31F826500C08D669A9F41CE8CE5D9 /* Optional.swift */, + 631DAE9E8B0643E251CB2D5E3A98C2BD /* Platform.Darwin.swift */, + F8FE6CE4B2E78E24726403F373FB497D /* Platform.Linux.swift */, + 537F7F189A849455FB9AC9B63AEDA4FC /* PrimitiveSequence.swift */, + 67050FE7966007C5CE74862EFE2277D6 /* PrimitiveSequence+Zip+arity.swift */, + BE05C5A07FDEAA979915BE46262C1525 /* PriorityQueue.swift */, + 8C0841FBF60E56D40F6586BA36D728D7 /* Producer.swift */, + D4B7ECF7E6677D898F0D2BAD2F2083A7 /* PublishSubject.swift */, + 5889E5E4119581FACAC012999BF861D4 /* Queue.swift */, + 87BBF52792CDE8F7A2F65F0130032E93 /* Range.swift */, + 5009CA87ED85018BEFD5819A977AC2B6 /* Reactive.swift */, + 890C0DEFF1E8A8EE93E03E97FA5ADF13 /* RecursiveLock.swift */, + B6A137D81BA5596523BCAA07C111C1A1 /* RecursiveScheduler.swift */, + 9EA850FB6523717918394FB9156E3B8D /* Reduce.swift */, + 2FC3273E108D95DEE5D3330C001587F6 /* RefCountDisposable.swift */, + E096A92DD16089341E47B824C5DA6229 /* Repeat.swift */, + 4C3F8C59BDD65E38BB70FE0BD87CF937 /* ReplaySubject.swift */, + 994644BC878E972933D66E206CF84071 /* RetryWhen.swift */, + 06CCE49F53B6C7E8FBEDA170B798F2BD /* Rx.swift */, + EC5E58411F56A1BB542626AAAB6C5CBF /* RxMutableBox.swift */, + 1794A40F4B6EECC63B8509EAD3A5DD7A /* Sample.swift */, + FC24ADC01268A21B3F5D66AD744372E6 /* Scan.swift */, + 8323B66A91FFE93B1B79E9443290657D /* ScheduledDisposable.swift */, + 204623B1E7DE01610EDCE042A98D5F52 /* ScheduledItem.swift */, + B84202AA6D9A4F961687D683043E56EC /* ScheduledItemType.swift */, + AC0AC4AD887A6759EDB3B904BECC09AB /* SchedulerServices+Emulation.swift */, + 62A4BD10D11A7EA8B77519F928200F45 /* SchedulerType.swift */, + 34B0D284ED98FA1C30FD79B8D443A0E5 /* Sequence.swift */, + E48436E2BBF8B486D3B0F3113E90CF8B /* SerialDispatchQueueScheduler.swift */, + E667B8F8500F771E2A00A31849F4E3AE /* SerialDisposable.swift */, + 1E2FF0F97397F9C2CBF60BD04CB5ADA4 /* ShareReplayScope.swift */, + 84AA933976BE0BEF100C3EB31CCFA03A /* Single.swift */, + 4C7FC29913FA43267814D022E2CEB879 /* SingleAssignmentDisposable.swift */, + 7549372A9ADC73BC72F75A39547536AE /* SingleAsync.swift */, + 4503C42EF7D6F24326D72D79D844D8B6 /* Sink.swift */, + 1AA6A98A33DA19580E4341D0AC4773A9 /* Skip.swift */, + BCBED18A19F27288633594DA3F2F107C /* SkipUntil.swift */, + C265258426CCCEFD9EE37B962C02080F /* SkipWhile.swift */, + 671DE96D807CC6339EB9BB0ACFCE491E /* StartWith.swift */, + 3B50B754631679B8FD2B0DFFED30B580 /* String+Rx.swift */, + 80E35052412A18A9A4D952424A4A3B81 /* SubjectType.swift */, + CD1581FC822870653D868CD671085684 /* SubscribeOn.swift */, + 1AD31D624B269BBCE36E1EAEA91B5AE8 /* SubscriptionDisposable.swift */, + BAC7E60811190CD444B6E7885F705158 /* SwiftSupport.swift */, + 5BE55FC62D9D797E81DDE202A07AC7FB /* Switch.swift */, + A233930662243AF420DDFB375E9C0AD3 /* SwitchIfEmpty.swift */, + 06895BE9FF465B046CBA3912BAA7EFBE /* SynchronizedDisposeType.swift */, + A76BA45F42F8EFA9ACD38A480E04DC5D /* SynchronizedOnType.swift */, + 7E0015681A2675805E52FC25ED4AF3CD /* SynchronizedUnsubscribeType.swift */, + B23D7AFB63E7E2C7F84CBA9D717F5227 /* TailRecursiveSink.swift */, + 07F8139733E9154A10E0FFC92A486961 /* Take.swift */, + 2839E2443071569551AE460CA7555437 /* TakeLast.swift */, + F34177DC393932FD280E8C4D945C638C /* TakeUntil.swift */, + DFDC90470B0D2DD84D372E7EFA2F8974 /* TakeWhile.swift */, + B055CDC0149E206B3A92F0F9BEFCE7A4 /* Throttle.swift */, + 8BE17D1CFBF021C7C4EFB2248E1159B0 /* Timeout.swift */, + 40BCB9F9CF03C05E83DC4CCC71784ABD /* Timer.swift */, + 44FCF50E368001F7BA4AC14ED2F15F1F /* ToArray.swift */, + 54D4311C89682D05738A0E11C5281EC2 /* Using.swift */, + 400296542C8AD4F1C661CA80141C6BA4 /* VirtualTimeConverterType.swift */, + 731B4F68ACCAAFC7B8ED6E265659C877 /* VirtualTimeScheduler.swift */, + 245FB24AB8BDC4C3D3F9502BB49A0029 /* Window.swift */, + CCE149A75517B9BAC4046B5A94C2DD8B /* WithLatestFrom.swift */, + F844089DC4B428EDEC39F34C07DC2FB9 /* Zip.swift */, + F37A70DEF18D240888BB06446A70E282 /* Zip+arity.swift */, + 2C22B652D0E45F0D5E873ACAEF964D8E /* Zip+Collection.swift */, + 7DAEB8EB31ED018EE7E3F04B9158D16A /* Support Files */, ); - name = Nimble; - path = Nimble; + name = RxSwift; + path = RxSwift; + sourceTree = ""; + }; + 64DF514E9AB9DC60567D1B97C191C8DA /* Support Files */ = { + isa = PBXGroup; + children = ( + F2AF56101E8C44DEF6182A4EAB60CD15 /* Info.plist */, + 1511CC806CFA205BDC9ADEFD78CE5165 /* RxCocoa.modulemap */, + 63B888CF34E0A7BB88FCD52656EBA433 /* RxCocoa.xcconfig */, + B6A4757653D4DCBB1CE8C9A98C2EF057 /* RxCocoa-dummy.m */, + B362B61962CA280124A0221D8E7FE1E0 /* RxCocoa-prefix.pch */, + 2D298E1FFA6F789AC999FA19C96A8BA2 /* RxCocoa-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/RxCocoa"; + sourceTree = ""; + }; + 7DAEB8EB31ED018EE7E3F04B9158D16A /* Support Files */ = { + isa = PBXGroup; + children = ( + 42D6FE920B2475E193281C73F799F63F /* Info.plist */, + F26773981532F319A8BDBF25DCAD587F /* RxSwift.modulemap */, + 7A8882E41FC014FB825CFFC5A6E8E363 /* RxSwift.xcconfig */, + E95917C06769B6F3B0EEB4C7D0E979DE /* RxSwift-dummy.m */, + BA8B8E2817B3496B0E812FA0F3E30344 /* RxSwift-prefix.pch */, + 8E514B726AA73EE5F107464A6BD5718F /* RxSwift-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/RxSwift"; sourceTree = ""; }; 7DB346D0F39D3F0E887471402A8071AB = { @@ -1280,7 +1280,7 @@ 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, 8EDCF8112854B1E525E9CC9A43780774 /* Development Pods */, 264C63B86695C5B67AEEADD6179D5BD0 /* Frameworks */, - 44F9EEF15FB7087977962B0F232B4668 /* Pods */, + 4985763E6AA5BA99947428D0488A218C /* Pods */, FFE602244159A3363A5DCADE1C47D2CA /* Products */, 0B5F152A536E23FD1EA00F9D5A62B486 /* Targets Support Files */, ); @@ -1308,156 +1308,134 @@ name = "Development Pods"; sourceTree = ""; }; - 9FEE4ADC55970B46639E72D7106EEE76 /* Support Files */ = { + 95B3AB0EECF86F8E09E3BE41EB99AA0A /* RxCocoa */ = { isa = PBXGroup; children = ( - 380D3E8A339A43EBC12864E907E9B775 /* Info.plist */, - 62BD30D31577704D5F9FD519CFDAB3F7 /* RxCocoa.modulemap */, - E99D57734AC304FE6464C792E35B8BDF /* RxCocoa.xcconfig */, - 327EC1B1B2BFE8D5ED96891135DAFD37 /* RxCocoa-dummy.m */, - C5A7612B20BEBADA1BDF448B5E5CEF4E /* RxCocoa-prefix.pch */, - 3A32D6137F01423ECA026F8366021B34 /* RxCocoa-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/RxCocoa"; - sourceTree = ""; - }; - A6364696C2DA6834C654A5B1802AC12C /* RxCocoa */ = { - isa = PBXGroup; - children = ( - D98DFD65FB376C2C45CFC6A2619C90F5 /* _RX.h */, - 3C5D402BB30798F3CA846D2B8C1933C5 /* _RX.m */, - 37B88DC4FDAE36C38892507CBCEE30FA /* _RXDelegateProxy.h */, - C7AF12F27810E82F4CD319D2A741EB3F /* _RXDelegateProxy.m */, - 6BB9E0028F0C11F8FD8E595D31EF03E6 /* _RXKVOObserver.h */, - 9FB01F563C3EA975B5A0675C5DD36EB8 /* _RXKVOObserver.m */, - E262DFA4CB7F7C31A129FFC97EC1C8E4 /* _RXObjCRuntime.h */, - D1744C00130D53BE5C17A181D84E98B4 /* _RXObjCRuntime.m */, - B8C063A260A86461A46250D1D6C8D11E /* Bag.swift */, - 4DEFF509F71C1682460B451E189DB9B2 /* BehaviorRelay.swift */, - 099C943CD9C31D8F4D64479E883BC0B3 /* BehaviorRelay+Driver.swift */, - 5E2F9F0EEF308FEF2586BC8A7BF540A2 /* Binder.swift */, - 01E7DA590659794AA3EEBFC00E8CF786 /* ControlEvent.swift */, - CA10C92C2C5749CC91648FE4F7870A02 /* ControlEvent+Driver.swift */, - A9579E1778815EA5C48C5F17FF1E4319 /* ControlProperty.swift */, - 3481076E8C6BAF22A36840EFA65F0564 /* ControlProperty+Driver.swift */, - 567388BA2CC77049E907FE712FAC3869 /* ControlTarget.swift */, - 3F7047CE52781642F2B5C9AB22BA3649 /* DelegateProxy.swift */, - D88D8E466D4B89D4B4FF904C5E197D62 /* DelegateProxyType.swift */, - 043D0BB798CBDA5A68FB541177EFC70F /* Deprecated.swift */, - 9CC3493D83BE5557C53657580DB58623 /* DispatchQueue+Extensions.swift */, - 696616F053771DE51955229EF94AA46B /* Driver.swift */, - 91085C71FEBBDC47DBE9F3C7E926EDD6 /* Driver+Subscription.swift */, - 3730BEAD9686D2575C192FF69BF9F987 /* InfiniteSequence.swift */, - 7EFC9C334D796EB62DF48C0E80221C35 /* ItemEvents.swift */, - FBB1A49901D34A588213ECDECB9C16E2 /* KVORepresentable.swift */, - AA81BCEA6AF602EEA9F2BAB8012F90F0 /* KVORepresentable+CoreGraphics.swift */, - ABC15EDA177DD98CC78BA8A394562985 /* KVORepresentable+Swift.swift */, - CC0705AB662BAB855B6424E548CBECC3 /* Logging.swift */, - FA7C1B525AAAE6F78C5CBB7BA9354AA7 /* NotificationCenter+Rx.swift */, - 0CEF6C8DE7D801B88547CDA065132E9B /* NSLayoutConstraint+Rx.swift */, - 386457DD48BDC9656528107A90ED0530 /* NSObject+Rx.swift */, - 6B14285809ABA0C362E6336B9CB1362A /* NSObject+Rx+KVORepresentable.swift */, - 9AA86006F1D4D9A34E04AC2A830CBA04 /* NSObject+Rx+RawRepresentable.swift */, - 207AC3AA76C4BF05705CC81C11DD9C8D /* NSTextStorage+Rx.swift */, - 1EB3E07B350DE8D7BBD26C8C62B7B702 /* Observable+Bind.swift */, - 02CE19702EAD07C4E33B56F843F72111 /* ObservableConvertibleType+Driver.swift */, - E7089BC64BF1D7051E521E36CF25D4B0 /* ObservableConvertibleType+Signal.swift */, - AB5CFD10B2F19EA07889E2A72C792DF2 /* Platform.Darwin.swift */, - AC3D1B3B70469F5B5FD09666F34F9C00 /* Platform.Linux.swift */, - 814656F4AAD86907CB39A86648347BF4 /* PriorityQueue.swift */, - 7A06CA04009BA3ABBABC614A7E3F2A48 /* PublishRelay.swift */, - 253AD2AEBB5A90108E2929FCBCDA2379 /* PublishRelay+Signal.swift */, - 258BD36B3C289DE7AFA07CA1B1726EE8 /* Queue.swift */, - 3F350916BC86789D5680E5E52EF8F4F5 /* RecursiveLock.swift */, - E6EE130C5281C309EB3506766E4069F8 /* RxCocoa.h */, - 5B4305DFC18F5027927DD61853B9C9FE /* RxCocoa.swift */, - 2BCF29EF950A5941054DCE6A58A24E4D /* RxCocoaObjCRuntimeError+Extensions.swift */, - 55C64D6599D19B730A5C34F21E61C1B9 /* RxCocoaRuntime.h */, - DAC54D032243C80F4BA6B82CF676A37C /* RxCollectionViewDataSourceProxy.swift */, - 72CF80DB9282D71E8154F8CD2ACC1AE8 /* RxCollectionViewDataSourceType.swift */, - E67D99250A5D58A054A143239C4FD894 /* RxCollectionViewDelegateProxy.swift */, - 89AFF538FCD9A19F1084D1E9137162EA /* RxCollectionViewReactiveArrayDataSource.swift */, - D143C7FA6B24193658B3E0E08F162FA6 /* RxNavigationControllerDelegateProxy.swift */, - 7A81D469378CADB29EA7A1F0C1056EF2 /* RxPickerViewAdapter.swift */, - D6B5F5C0755F68EFD33156DB0A8A1B5D /* RxPickerViewDataSourceProxy.swift */, - 116F0698E3E2A84170169A5AE129E1C0 /* RxPickerViewDataSourceType.swift */, - 955C6D61DD30E20779E86E44805A0AFD /* RxPickerViewDelegateProxy.swift */, - CD211CCC9D8BF2F690E0D187EA7906A2 /* RxScrollViewDelegateProxy.swift */, - 61F42556C008D26774DA09529DD4A6E2 /* RxSearchBarDelegateProxy.swift */, - 583C2734B88559057BEB843D489843EA /* RxSearchControllerDelegateProxy.swift */, - 029F35A3A4206B22440DE533717C30EC /* RxTabBarControllerDelegateProxy.swift */, - A7BB609EE6076DD15A5DA4DB4CD51605 /* RxTabBarDelegateProxy.swift */, - 2D7D3CC792721153228E688E7172FED9 /* RxTableViewDataSourceProxy.swift */, - AE801367E5B85C33185CD0993145F5AF /* RxTableViewDataSourceType.swift */, - 5A853FD548CFFBB8A0A0DCA51E1DDA56 /* RxTableViewDelegateProxy.swift */, - 73283C12FA1A7D7D0710C829545078A2 /* RxTableViewReactiveArrayDataSource.swift */, - 477BB159C92D213532285145AAF0573B /* RxTarget.swift */, - 4D2006DDC5884938917D4A89714E1581 /* RxTextStorageDelegateProxy.swift */, - 52D8929363C4C99063F9D0606DC397F5 /* RxTextViewDelegateProxy.swift */, - 1AA6EDCABD45CE0FDEAF058108D2C400 /* RxWebViewDelegateProxy.swift */, - 09DBB855A3B1D1F5969DA657388EE2C5 /* SchedulerType+SharedSequence.swift */, - D37CB271CA4BD9F1A6ED8D70C295171F /* SectionedViewDataSourceType.swift */, - EA9BAAE08DBE321F5E329124CDDE7AF4 /* SharedSequence.swift */, - F2DDCD78703AE1313891D9D988FB8080 /* SharedSequence+Operators.swift */, - BD0CC2F73AF3F13116ACD0582E8B2D92 /* SharedSequence+Operators+arity.swift */, - 5A633EA875E5B84F3A818570F2BA122E /* Signal.swift */, - 558A1A95CFFB9B3C7710361433E9353E /* Signal+Subscription.swift */, - 874A960D7617995C859E49B556D5F51C /* TextInput.swift */, - E3047E65DACE170A3CCAB5F2E81234A2 /* UIActivityIndicatorView+Rx.swift */, - EC727E707F7D3A1E2BBAF5F4FC68402E /* UIAlertAction+Rx.swift */, - 7E86C556F77655777D2805FF5C0C03BC /* UIApplication+Rx.swift */, - A6E65161CF387528851E8C521FFE50AC /* UIBarButtonItem+Rx.swift */, - 4C2DA45CEA673FC21C083C2927FF0B1F /* UIButton+Rx.swift */, - 4D9E89D347036D4A511E9E4D7DB79C81 /* UICollectionView+Rx.swift */, - 608FD17987CA6CE0402DB2E3526337DA /* UIControl+Rx.swift */, - B4F764C4EBA9D0A08C111CAB975EF29A /* UIDatePicker+Rx.swift */, - D90C1ABBBAD56893C7DB2E677BC13536 /* UIGestureRecognizer+Rx.swift */, - 9A9D63BC61FE0E20ED4151D6CD8BD66A /* UIImageView+Rx.swift */, - 7FE4E60C245F830C0530C090540CB03D /* UILabel+Rx.swift */, - 46390C887E39971D1DBA29720D0DDAC8 /* UINavigationController+Rx.swift */, - CE84C615DAAD4E1ED3B745BF3356B689 /* UINavigationItem+Rx.swift */, - 957E7D877A5A3886509B6F6573C3DEFA /* UIPageControl+Rx.swift */, - AFD2149068F4DDA03FD10AE90B2D833A /* UIPickerView+Rx.swift */, - 9A7968940016C6FA4283EB45783DE8A1 /* UIProgressView+Rx.swift */, - 33B3F6082E3BF4CEA7C18ADBA2390471 /* UIRefreshControl+Rx.swift */, - 891A4A4115EA50F96505A1F3B09E7ABF /* UIScrollView+Rx.swift */, - AFC8B093AF9AEAADBD4AF83F2362B87F /* UISearchBar+Rx.swift */, - 7A587C61758C7C5A3467652C14C3E30F /* UISearchController+Rx.swift */, - 4E3A1744B1890284C2E4897E6BA1D29E /* UISegmentedControl+Rx.swift */, - FE0C28C934F5F9A40D2C0B8B869FEDBF /* UISlider+Rx.swift */, - 1F8E124EDB42DD4D43558C285C520F87 /* UIStepper+Rx.swift */, - 498F984E13F59098CCDD6DBCB5539479 /* UISwitch+Rx.swift */, - 5DB77F3F946991AD9BCAB8E0E7F5F04D /* UITabBar+Rx.swift */, - B3788C33CF260C125B9D08ED094D83F2 /* UITabBarController+Rx.swift */, - 496994DB1EF276978C5F413D263EC8AF /* UITabBarItem+Rx.swift */, - 487B10BAB561F90B664AEBDEB8DFE6FF /* UITableView+Rx.swift */, - B9AE0F3CBEEC24D01ACFB8A3925A9F5C /* UITextField+Rx.swift */, - 44262172E60408FC23B672E14D385D8B /* UITextView+Rx.swift */, - 44E5D383177818B4127793BC2B5F9E1D /* UIView+Rx.swift */, - E29D5D4824C9856A6B7C28E541944A60 /* UIViewController+Rx.swift */, - D9C590A978EEE5C27123A8AABD27BB0C /* UIWebView+Rx.swift */, - E5C768152213D26D933F6E1A4DDC2505 /* URLSession+Rx.swift */, - 9FEE4ADC55970B46639E72D7106EEE76 /* Support Files */, + 1F2ED28BD966D1AD7BD9F9AABD0AD783 /* _RX.h */, + E311A356DF75ED3367B3B907EDF0AEAD /* _RX.m */, + 6AB6AAC726D133F276157C909A917ACD /* _RXDelegateProxy.h */, + 86507DE982117DB2424A74A5446BEBA2 /* _RXDelegateProxy.m */, + 0C122D36174BFC09751ED88E43D2EB3F /* _RXKVOObserver.h */, + 08DDC54B146BFF9C131CAC5BE42A9750 /* _RXKVOObserver.m */, + FF595A0A57126812456C7D5A3F7E4C53 /* _RXObjCRuntime.h */, + A9E5DAEED41251DF9485D9D5112F6ECC /* _RXObjCRuntime.m */, + 776616261ED2F956A7C263A73F9A1192 /* Bag.swift */, + C009D8D9CDADFD4ACD17A36AE04C516F /* BehaviorRelay.swift */, + E2002F22FF8DBA8C5AC26A82D61AD0E4 /* BehaviorRelay+Driver.swift */, + 8E198234093BB392FD9FECB17E55714D /* Binder.swift */, + 85082E2E44BEF56913C71063EA3D42CE /* ControlEvent.swift */, + 88F1FCFCA78C27CF460642EE2B7AF738 /* ControlEvent+Driver.swift */, + 84F9867906160C9EE7D6679249BB248D /* ControlEvent+Signal.swift */, + 4BC5472CEAD640B3618D278100824B84 /* ControlProperty.swift */, + 20F92B165BE11101C4C84838D47198EF /* ControlProperty+Driver.swift */, + 307122F62A859DA24E32BC1B46143337 /* ControlTarget.swift */, + AE0B178D51F64681C403C9D56EC9D304 /* DelegateProxy.swift */, + 6AC7B594DAD6B16D190B4745D8ABD13C /* DelegateProxyType.swift */, + 0E6C7879C0D619C974383B6BB6689DF2 /* Deprecated.swift */, + 3EA536C250C260C1F67D3663A0253010 /* DeprecationWarner.swift */, + 17242ED251FDE56F0A17E0ED88D61D97 /* DispatchQueue+Extensions.swift */, + E7B763C053091F93E81023C6931ABC9C /* Driver.swift */, + 1752A109F631565A8DF191FEE2C71E58 /* Driver+Subscription.swift */, + DC038FE1C0CEED46B4074D6370D30782 /* InfiniteSequence.swift */, + 272432C7F90387C03DF0B8BC5CC45F01 /* ItemEvents.swift */, + 4B4E571DFCCA779BC81ADA8B6561785B /* KeyPathBinder.swift */, + 5A3D3FF3FF35CE8C139DEECA762CBF85 /* KVORepresentable.swift */, + 80C4F5E673F60AF10F095CF14134F42A /* KVORepresentable+CoreGraphics.swift */, + 2D75E1B40820B930E65895F1D67FBB99 /* KVORepresentable+Swift.swift */, + 71DA43EFA7B7318921E8B9B5A5CDE3BB /* Logging.swift */, + 400640BFB9DDB0F524CFB9264C05DA63 /* NotificationCenter+Rx.swift */, + 80C8A4CE6042D97E5EDFEE056CFBC626 /* NSLayoutConstraint+Rx.swift */, + 5D143E70C9AFE2588F2B6FF32A4259EC /* NSObject+Rx.swift */, + A704F09153192D460F7B0D292441F2CD /* NSObject+Rx+KVORepresentable.swift */, + 00E60052BDD8D971CBE366DB198D6F35 /* NSObject+Rx+RawRepresentable.swift */, + A97DBAB400AE9057A6752F817ABD7B5F /* NSTextStorage+Rx.swift */, + 54B6CC1DF8C18991B00953067A35C512 /* Observable+Bind.swift */, + 6A900D0995A38FB4CD0CF575304812A8 /* ObservableConvertibleType+Driver.swift */, + 2CEF0314318F70A0A8C902BA09D04BCB /* ObservableConvertibleType+SharedSequence.swift */, + A6B6DE8AD594516A60BA7672523E657B /* ObservableConvertibleType+Signal.swift */, + 9E13591CA205B5CF7EAAB6BF802A139E /* Platform.Darwin.swift */, + 04B650543433D7CD4B3E5F5F1D1CE694 /* Platform.Linux.swift */, + 4A9CB6EA0B63545A29488FE16156D11C /* PriorityQueue.swift */, + 790F3AF48904AB7E28065B2E17EBEF23 /* PublishRelay.swift */, + 93EAA3C810FE7ECE0F65185C8AC47CC7 /* PublishRelay+Signal.swift */, + AB2C2A62F2B2D4786E4A0AFC84C4C6A0 /* Queue.swift */, + 644838F87AD57DD6C705B89987C00671 /* RecursiveLock.swift */, + 2B15EFCC09A94956CEC909F8482C96F1 /* RxCocoa.h */, + 726D523AAF0006A29E5338ABCE313CE2 /* RxCocoa.swift */, + 24DC40F49E6992DF322A0817F7977DD0 /* RxCocoaObjCRuntimeError+Extensions.swift */, + 93611EC93DBAFC6B434C78019C6C465B /* RxCocoaRuntime.h */, + 5A9D4372A88D5CF1EC2A42B2F3EC7F78 /* RxCollectionViewDataSourcePrefetchingProxy.swift */, + 5F95D30E85804C0BC6CE9DA07E5B37CF /* RxCollectionViewDataSourceProxy.swift */, + 260439C993AF59865677277853A7F95A /* RxCollectionViewDataSourceType.swift */, + D022E3F3034752A828539834DCAC3BC0 /* RxCollectionViewDelegateProxy.swift */, + A3FF31BA007FD48544D75B9B80B169FB /* RxCollectionViewReactiveArrayDataSource.swift */, + 9FDC0E9CA2AC8224DD564AE097A332B1 /* RxNavigationControllerDelegateProxy.swift */, + B67C096ED974534E98F847CAD8B8E53C /* RxPickerViewAdapter.swift */, + 87370DE7DF0E68826ADBBEF83734769F /* RxPickerViewDataSourceProxy.swift */, + 8F69D713ED4270EA3018BCB97063A769 /* RxPickerViewDataSourceType.swift */, + F917F7AF9379E4C125E45F8E27208CF5 /* RxPickerViewDelegateProxy.swift */, + 15EEB5015828663DE6382CBA69AB015C /* RxScrollViewDelegateProxy.swift */, + 70D54B232CE190604A01CA7DBF8EF405 /* RxSearchBarDelegateProxy.swift */, + 9BA4C025E1027196EF72A8C943211879 /* RxSearchControllerDelegateProxy.swift */, + F098AD914E2E11D8BC2DB9C594432B06 /* RxTabBarControllerDelegateProxy.swift */, + ED5669F29353DAA2F2E2A733AECC136E /* RxTabBarDelegateProxy.swift */, + 1135346899906CCEA94EEB4B305AEF57 /* RxTableViewDataSourcePrefetchingProxy.swift */, + 15BEDA3EE636F4C6CD2BF70A3FD94233 /* RxTableViewDataSourceProxy.swift */, + 8288D934E350F7A1D8B0F66C78A93853 /* RxTableViewDataSourceType.swift */, + 85C4DB9E94BCD0C89C9B3B80821E2FD5 /* RxTableViewDelegateProxy.swift */, + A9B404072AF9B4826DE0D1DD6E1FE35B /* RxTableViewReactiveArrayDataSource.swift */, + 8A5265F71AB5A4D8D94B617BBCFD94AD /* RxTarget.swift */, + 2D062F96B40118C55B25BABCF7184BCD /* RxTextStorageDelegateProxy.swift */, + DA5E880D66D74FB6237BB27345F14C56 /* RxTextViewDelegateProxy.swift */, + B8D70A5A9F2BDBD1CAB01AF9DAB67456 /* RxWebViewDelegateProxy.swift */, + CF633162B795F37BF6ADCA7DB9169FB1 /* SchedulerType+SharedSequence.swift */, + B354F49079229EAE904D1C0461559DAA /* SectionedViewDataSourceType.swift */, + A5B39F976972D8C0A3381368B40AB807 /* SharedSequence.swift */, + 67BF119FB37426FB7FE2DA654BF6384A /* SharedSequence+Operators.swift */, + 88E2F054DFF4750571C971852E652F1C /* SharedSequence+Operators+arity.swift */, + 6195086661AB093142B6C9BC3A25B304 /* Signal.swift */, + D1236A4F5945334BD89EF144473EC067 /* Signal+Subscription.swift */, + 50FD79A3FB41CC3E0F5DEDCFE21A4F44 /* TextInput.swift */, + 2BE10480743B20C6AEFF2F753EE761F2 /* UIActivityIndicatorView+Rx.swift */, + AAA58C70710F7570443894A9FD0C9CF2 /* UIAlertAction+Rx.swift */, + 43B66CB7127790520B5462201F9B7BFD /* UIApplication+Rx.swift */, + C56B8C39D1F6618C2A6F6115C5461DCC /* UIBarButtonItem+Rx.swift */, + C3BBBBAA0C0CB7C9A556D5CE0FF0B3BD /* UIButton+Rx.swift */, + DC30798CC36A9E53D79116CF7C1DD53E /* UICollectionView+Rx.swift */, + 440C63070904512F7C7023ED3CEA481F /* UIControl+Rx.swift */, + 6EFF7FC247E47B91133A8F9F895A5DCA /* UIDatePicker+Rx.swift */, + 3F7277B79BB3F1258520CE33AED546A0 /* UIGestureRecognizer+Rx.swift */, + D0AFAFBB2AAADD9BC79741799B1A0DD9 /* UIImageView+Rx.swift */, + 5D7EBC061852FEC73D1049F8C5DCD5CB /* UILabel+Rx.swift */, + DD5B126E47DBFD10BD108550CD07831F /* UINavigationController+Rx.swift */, + ED7B07F655AB863EEEB53A6C03E5EE63 /* UINavigationItem+Rx.swift */, + 2D69EE698CFC5A6DEF7EB7B032E1E178 /* UIPageControl+Rx.swift */, + B578A9C952AF9C5FE32AF8F8B3016B43 /* UIPickerView+Rx.swift */, + 6AFFAC48FAF650CAB7CADFA2F5680E1C /* UIProgressView+Rx.swift */, + 637BF6E43A372C81D8A9969A028B5BD2 /* UIRefreshControl+Rx.swift */, + 45BD0CCFC887972A4B2DE16D117C38DC /* UIScrollView+Rx.swift */, + 04D146242EF31855D4A52A303A187AC8 /* UISearchBar+Rx.swift */, + 2A77A1C2441FA2C60B46EB9BAEFDF338 /* UISearchController+Rx.swift */, + DB6417888D8009B03906DBE0721337F5 /* UISegmentedControl+Rx.swift */, + 4FDB8BEA47C935893B84C1C65E314E12 /* UISlider+Rx.swift */, + 78351120373699B62CB1FAF292769E6C /* UIStepper+Rx.swift */, + ACEA9A12CFEEDF41B046D9400F2C50E6 /* UISwitch+Rx.swift */, + FC3B22ABF47CF20C18886898E642C8D9 /* UITabBar+Rx.swift */, + B751E68E6969DD0BDD8E133742D18F74 /* UITabBarController+Rx.swift */, + 6FDD63CAFD2DE35F836E2CD27B2B3AF1 /* UITabBarItem+Rx.swift */, + F713A9F89162AE835FAD9E99D850E949 /* UITableView+Rx.swift */, + 96E67CCCCD451885CABBEEE8D9703278 /* UITextField+Rx.swift */, + F4615F16C7EC14FFED5865F12C541AEB /* UITextView+Rx.swift */, + DD437C13B49E85149FFDC5BE36C2E27F /* UIView+Rx.swift */, + 412F690579581D810CB10EFC7C525EDD /* UIViewController+Rx.swift */, + 74C786EEE20F1C80B2FA9A4BD3C7F25F /* UIWebView+Rx.swift */, + 3DFED445AEE9234DAB93153AA5C9101D /* URLSession+Rx.swift */, + 64DF514E9AB9DC60567D1B97C191C8DA /* Support Files */, ); name = RxCocoa; path = RxCocoa; sourceTree = ""; }; - AC6937E7F27F26FD75369CFFFF9C7F4B /* Support Files */ = { - isa = PBXGroup; - children = ( - 375D02B25C34F0BF32D1510D8F95D796 /* Info.plist */, - FCF81771B0302487A6324F480DFFC0FD /* Nimble.modulemap */, - 3E2C23ABE928456EE5E11CF2C5606FBD /* Nimble.xcconfig */, - B7428E9F3D61B9AF6AB5AB22347346E3 /* Nimble-dummy.m */, - D5482B1CB72E01036274C14EA19C54CC /* Nimble-prefix.pch */, - 2DE1A5E36A4C12755B1657A3CC293AB9 /* Nimble-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/Nimble"; - sourceTree = ""; - }; B84F24B09DD1B02F784441D0D30DFD1E /* Pods-RxMKMapView_Example */ = { isa = PBXGroup; children = ( @@ -1476,18 +1454,82 @@ path = "Target Support Files/Pods-RxMKMapView_Example"; sourceTree = ""; }; - C4A118E372F80735C0A83FF97F7161A2 /* Support Files */ = { + D7517AB7BF93290A163979B171F021D3 /* Nimble */ = { isa = PBXGroup; children = ( - E7BA801E2D3C2A3B87002089D5637515 /* Info.plist */, - 2A227B9A5EB0A4F1897EC52FB5F3BC5B /* RxSwift.modulemap */, - 74062BC9C1B536C27BEADC96EC6FEEFE /* RxSwift.xcconfig */, - F1A62FC59ABBB03FAE6C6A6BA450FB5D /* RxSwift-dummy.m */, - F9799B1668B834DE25F0BFDE0281BB2E /* RxSwift-prefix.pch */, - 32F7E78966B04149B22530830D017093 /* RxSwift-umbrella.h */, + 22E4FF492A0DD66BED9D7EFE5315DD4C /* AdapterProtocols.swift */, + A142D7A9A71022B2CA168D6340077348 /* AllPass.swift */, + A5C963D89E597BB3E908A49B59819521 /* AssertionDispatcher.swift */, + AAE315F22A3F0EB1B6896B123759D73A /* AssertionRecorder.swift */, + 422A8ECD7AA96EA363E4A88849BCCD46 /* Async.swift */, + 61B8A7B384D65DFD164E86FB52B8F7FA /* Await.swift */, + 810ED7C5619816A4B993C0DAA7CB5323 /* BeAKindOf.swift */, + D67AED272BB2DE6CCFDB216CDB440B0A /* BeAnInstanceOf.swift */, + 992563151A07C2323E4B195A7F1458A9 /* BeCloseTo.swift */, + 5F6C4A7364FFC5183573FACCC23E2912 /* BeEmpty.swift */, + 4586DA838C5CF04F65322FF68FE48ED1 /* BeginWith.swift */, + D138D57D085D48DAA44D89CCA5AD576B /* BeGreaterThan.swift */, + F9B3A624F469A553D746225332BDD762 /* BeGreaterThanOrEqualTo.swift */, + 4D1A234521CB9C3442EE6B1F1F5298E4 /* BeIdenticalTo.swift */, + 30BF4CBF3FAFC83E7CB0FE0DE9D473C6 /* BeLessThan.swift */, + 4DCAE01566D05413838AB436C8F4C232 /* BeLessThanOrEqual.swift */, + 34599842C2A1C1E6BE6126290D98F049 /* BeLogical.swift */, + 7337B872C7B0B49D2537B31F4F45C3B3 /* BeNil.swift */, + 131CEDD83A7D9BFD7145A8F0F4ED8265 /* BeVoid.swift */, + 5862E4E93CCB48B0932875C98426F9D1 /* Contain.swift */, + 50F31BC978C6FF1B0C3F5169E49651C0 /* ContainElementSatisfying.swift */, + 9AEB16046D5C041B0CB1E1B070628F9F /* CwlBadInstructionException.swift */, + 6FC0627D60EAEE94CF2EAB99CBF7E7E2 /* CwlCatchBadInstruction.swift */, + C24D85408971C3ADAF8EF7F54DDED532 /* CwlCatchException.h */, + D8E90CAB693113180DC21AFC5D811E72 /* CwlCatchException.m */, + F4B140051A6DA66B2C4EF046BBB66F00 /* CwlCatchException.swift */, + 3B1BEC46712095F69BB4FB581BF03297 /* CwlDarwinDefinitions.swift */, + 8026B093ACD3C1AD472F569F70C4FEF3 /* CwlMachBadInstructionHandler.h */, + 43DB9B5B927C40B6AFC2723B709F11D4 /* CwlMachBadInstructionHandler.m */, + 14E47CBA7C00F56CB688197C81F1647A /* CwlPreconditionTesting.h */, + BC0483234D9CF392FDDF18F84AD4980D /* DSL.h */, + 33B4FE38EE28C875086021E5305DC4B4 /* DSL.m */, + 5FBB3794040650A4630116E1502C4772 /* DSL.swift */, + 8FD6BBE6D3961AB0CCA28837E5018835 /* DSL+Wait.swift */, + C5FA965F644570220D6AE69415011301 /* EndWith.swift */, + 44434F63DCD548707D65D432819551CF /* Equal.swift */, + 0147592A6453CB7D927FF379FA2714BB /* Errors.swift */, + 86D8FA77D3764651152DDA25DAC4D1EC /* Expectation.swift */, + 3AD0205B9606D951A1CB8396102EE905 /* ExpectationMessage.swift */, + 5F5E50F4E884001CCDF7AE95A5ABAA52 /* Expression.swift */, + 88A2E9A7159B34C738A85DC0158BBA91 /* FailureMessage.swift */, + C2C0FE65B9FB9799661D7C2AEB03B022 /* Functional.swift */, + 439225A4981E7064956688894EEA0234 /* HaveCount.swift */, + D8716F81E89A2C0BC163D1342AF59EB0 /* mach_excServer.c */, + 5DF15B90FE050F505DA6EF5DC4D54F8D /* mach_excServer.h */, + 7A079EA0B211FB5DB732F10738889D33 /* Match.swift */, + CADE9270136EB2D1A0BD9A6FCBB731A4 /* MatcherFunc.swift */, + 0D1E9AA82A09B9CC77B3D4C21C3969CA /* MatcherProtocols.swift */, + 14DB604B4EECDF20C82F54653BADFEEB /* MatchError.swift */, + 1243AC0E46D3C05769D489AAF324CCD3 /* Nimble.h */, + C1B12EB600667E215DE7B5A7160CC087 /* NimbleEnvironment.swift */, + E3A25EFA6FBA9026F48A886BE62D2234 /* NimbleXCTestHandler.swift */, + F2D191FAF8CADD15A97BE792D93DBE80 /* NMBExceptionCapture.h */, + 881C5ADE13E141A5F23D799E76ED889B /* NMBExceptionCapture.m */, + 2786DA0F20DFFC602DA12FDC816C99F5 /* NMBExpectation.swift */, + 2336C764067127C706910FE1AD205396 /* NMBObjCMatcher.swift */, + F6D77F3C3D42E7BC259C5FABD8CFC216 /* NMBStringify.h */, + 00F0A9127F682624E7510C24F7DC1D3C /* NMBStringify.m */, + EDF44EE7BBA22970D198CFD86C2F21E3 /* PostNotification.swift */, + 830D0F26DF2746E44FD37958E0FE1226 /* Predicate.swift */, + 10EE614DCE3CE455DFF571B552D1E624 /* RaisesException.swift */, + A1D6C1CDD69CAB8F4DCA9489B3D3F530 /* SatisfyAllOf.swift */, + E7BDCF3FAD11329585A0AFFCD7F273FF /* SatisfyAnyOf.swift */, + DA3A2CEFC138817A2AA422386F52D1B9 /* SourceLocation.swift */, + 572F38D19834280FF6F628F9AF190AE7 /* Stringers.swift */, + 49F6D7BC491FCB95062E772AF1190544 /* ThrowAssertion.swift */, + 207BF2256D841F1DD406D3765296F435 /* ThrowError.swift */, + 02326CBBDB838B8BEBD3F5F02D71AA3A /* ToSucceed.swift */, + 1A05D05535A966636281421A5EB8A093 /* XCTestObservationCenter+Register.m */, + 431B48ECDF2914762080BC4056EABF2F /* Support Files */, ); - name = "Support Files"; - path = "../Target Support Files/RxSwift"; + name = Nimble; + path = Nimble; sourceTree = ""; }; DA2ABA47EE0D6E370974CFD9042F3DAB /* Pod */ = { @@ -1500,54 +1542,27 @@ name = Pod; sourceTree = ""; }; - E197CE76952A0CB44D27464E61EF0383 /* iOS */ = { + E15CC0F2383DF9DAD88D22A917EB53D0 /* Support Files */ = { isa = PBXGroup; children = ( - C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */, - 82065E9CE6D973729526A71DDBFCB401 /* XCTest.framework */, + B75CD799773CE484965A743102794D1F /* Info.plist */, + 38D0A2A14896DA436D57453977CE9C8F /* Quick.modulemap */, + CC9F0676979CAEDD569F509CFD1749F1 /* Quick.xcconfig */, + 417450B20CD3BA42B4872BA978910FB0 /* Quick-dummy.m */, + 4A0A54AA16A97CF6B2492A937C1EFCCF /* Quick-prefix.pch */, + 4CCCE6C6987C3E4B71483F41E759920D /* Quick-umbrella.h */, ); - name = iOS; + name = "Support Files"; + path = "../Target Support Files/Quick"; sourceTree = ""; }; - E663FB4EE3D1BBC709D2D3AC7C197F09 /* Quick */ = { + E197CE76952A0CB44D27464E61EF0383 /* iOS */ = { isa = PBXGroup; children = ( - AF7EB982830684F103E11BA7E20DCA72 /* Behavior.swift */, - EBCCA9A6AD43380A6BD89E0239DFD8C7 /* Callsite.swift */, - 169B2291E0D934B678F9C1C68045625A /* Closures.swift */, - B76446F69B7C068232A0D748DB5EE4CD /* Configuration.swift */, - 5A030045B8EC1E540A7B03927405B495 /* DSL.swift */, - 558001491502AC2CBD3CA5203CD87775 /* ErrorUtility.swift */, - 5BDC0440F78CB32EE63FEBDE2FD6203D /* Example.swift */, - 56A6D97BAF61A1A104113F9FD71D535D /* ExampleGroup.swift */, - F28BED4343F8FA81F82EF5FA367795DF /* ExampleHooks.swift */, - 9476EC51F6423243DBDA34C0FCB8B9D8 /* ExampleMetadata.swift */, - 73A6E3BEA63319A2731C8AEE23AAE433 /* Filter.swift */, - 8473B5E81C342A913BBB4FB7652E293F /* HooksPhase.swift */, - 47914A3D309D51A727B04CB0DECDC7CA /* NSBundle+CurrentTestBundle.swift */, - B0172FFD9A1917E3709F5CCB3AB2860C /* NSString+C99ExtendedIdentifier.swift */, - EE15E6EB4D4518674E9AE0466581D876 /* QCKDSL.h */, - 924287C8646A0D0EC296DB4255646FEF /* QCKDSL.m */, - E690D4F09A22782D87E7E3A1E06EBAF3 /* Quick.h */, - D294F2E3312FC267A32943A719A51F9A /* QuickConfiguration.h */, - 48669948351EA70727E1250A589009C0 /* QuickConfiguration.m */, - 2EE1189288164D27E2B9E37875BE78E4 /* QuickSelectedTestSuiteBuilder.swift */, - 63A04681E37F2095466ADFF20300820E /* QuickSpec.h */, - BB5B06C66C874684B7EF486003BF1D0C /* QuickSpec.m */, - A2BA9246E1EC802D520D87FC64911D74 /* QuickSpecBase.h */, - 2067D26322C781413DB62FD8F3B74DCE /* QuickSpecBase.m */, - 401EBBD7261F3052A2F80BC12C3517A0 /* QuickTestSuite.swift */, - 768E16AE9EC22A3BE7D60B3ADABD821C /* SuiteHooks.swift */, - 4BC9A52317D5AA22126C0E8909809A21 /* URL+FileName.swift */, - C9CFBEE51BB3538D6C9B2B2116312103 /* World.h */, - 553621C4A66AE02CBCE39FC0397830AD /* World.swift */, - EC50316FF3AD849980E33CDC72915EF5 /* World+DSL.h */, - 301B0104D1C04CC62450FE9C03219079 /* World+DSL.swift */, - 5E9C78FEACF5FC55A6BB962CE4F20F41 /* XCTestSuite+QuickTestSuiteBuilder.m */, - 09BF1F7A71B85FDB78C8C6F3910B8003 /* Support Files */, + C6ADE879196B5718DBAC0483AF9E6B08 /* Foundation.framework */, + 82065E9CE6D973729526A71DDBFCB401 /* XCTest.framework */, ); - name = Quick; - path = Quick; + name = iOS; sourceTree = ""; }; F43C8BD84957D45D8E8B620FB9F68ACB /* Pods-RxMKMapView_Tests */ = { @@ -1585,215 +1600,219 @@ /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 03ECB8DCE7B9C76F225B541ED4A80461 /* Headers */ = { + 1366EF299666D0ECAD0462B400E5C877 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - ECAA76EB1B9B3EC4EB65B1BA68E6099C /* QCKDSL.h in Headers */, - 82EBDBBDF2BADA595ABE6903F51EE4E8 /* Quick-umbrella.h in Headers */, - 1891BCA954DCC8439C36A1B65D5D8485 /* Quick.h in Headers */, - CB75C5D22B6EC4A0F17F43655EDC61EA /* QuickConfiguration.h in Headers */, - 62E4220DF2A7DC5763B78C187CE3C601 /* QuickSpec.h in Headers */, - EBF5FB862D1C2E580C28F50164A0C952 /* QuickSpecBase.h in Headers */, - 32492AE2CE2E334C180DECC76D3BB30B /* World+DSL.h in Headers */, - 80755D557FB60245F6AC845F2D336F64 /* World.h in Headers */, + 3ACEDE10EA460C798227DAD3D28E38EE /* _RX.h in Headers */, + A061C141C7D368187E4583871F66CC4F /* _RXDelegateProxy.h in Headers */, + B50D8AD4ABAB7EB9AEA95EC231CD1FE2 /* _RXKVOObserver.h in Headers */, + 5B234E9D5B793811DD79D0788CF2053E /* _RXObjCRuntime.h in Headers */, + 5594E6E0005C1F8C6AAA21DDA1AD6321 /* RxCocoa-umbrella.h in Headers */, + 07ED52D72AE81B0C634F9BEE87CC5845 /* RxCocoa.h in Headers */, + FD36E72AE7CD36847EA039BFDC437006 /* RxCocoaRuntime.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 0CF10BF34FC3CFD255F9F562E9D3C747 /* Headers */ = { + 69238EE6A18850B786D63E6C5766C39E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - CD700780ECE9A28B0ACFD21C276C7C91 /* Pods-RxMKMapView_Example-umbrella.h in Headers */, + 8AE2259875BAEC95DC4B0CB4925388F0 /* Pods-RxMKMapView_Tests-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 85497845823171A47E23A59621A44463 /* Headers */ = { + 6BF55E8F7B70955E960E467B752F3DD7 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 5AB9DB61D62D8BF7B1C734B373F361E7 /* CurrentTestCaseTracker.h in Headers */, - 531C54B1C10BA0F17A2B7D81D02BD390 /* CwlCatchException.h in Headers */, - B37D0376FCEB3133F44CF5F4416C58E1 /* CwlMachBadInstructionHandler.h in Headers */, - 16409C737271C4F1D7FEEFB91E317D5A /* CwlPreconditionTesting.h in Headers */, - FB433A84B0A557CD5E5948A8B6705024 /* DSL.h in Headers */, - 2F2DA5BA5AE1FB074F387E97115F47D5 /* mach_excServer.h in Headers */, - 5DBCC0E4C72649C9A39A00D40D944DDA /* Nimble-umbrella.h in Headers */, - 0A2CA8B0DD7E300ABFCF1956E6B58248 /* Nimble.h in Headers */, - 22E9F6FA56858A5F7A5D664E5968ECB0 /* NMBExceptionCapture.h in Headers */, - 96132E7432F8DD315A88A07C6B4F9C72 /* NMBStringify.h in Headers */, + 8C940F972D936CD8B281D9C3E8F8C5CC /* RxSwift-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9C0633177A9DA754E008DEA946886CB2 /* Headers */ = { + B30B715B989AD2B7DD9505A585F5EC79 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 1FAB8EF4278CEE8FEFBE196F6266085A /* RxSwift-umbrella.h in Headers */, + 5CA227280A5AAB51D1A53B2AD8F2B7DD /* Pods-RxMKMapView_Example-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - F2C37828B830787414C073495E349120 /* Headers */ = { + C1A3AA6F069A750D90DDA1F356A1E9B1 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 08C8D3EDEDA4482B6998998529E9F006 /* _RX.h in Headers */, - 78D31A6F5D395E1953421A20A8606019 /* _RXDelegateProxy.h in Headers */, - 5EF9CE17E69596EDEDCB2629051011C9 /* _RXKVOObserver.h in Headers */, - 165C5C51B90F7C52C4A193E782A3081E /* _RXObjCRuntime.h in Headers */, - 8137F97ECEF2503B684F0796BC5D69BA /* RxCocoa-umbrella.h in Headers */, - 7E658A233A80CD8FF45931314B2CAF14 /* RxCocoa.h in Headers */, - F3C44E8DD6C463E1B01A714C555C7A4D /* RxCocoaRuntime.h in Headers */, + F8AF7B415A3419950688728A5DF8ABF4 /* RxMKMapView-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - F6AC2CE69D0E1BF29C7619EFB3F8828D /* Headers */ = { + C9B96F4DDF06565D3B41A826AD209B1C /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 52FEFAF44ACCD2B8E1F063573FE1E19D /* Pods-RxMKMapView_Tests-umbrella.h in Headers */, + F088EE1AE386EEF27AC934DE13F455BB /* CwlCatchException.h in Headers */, + BEB8082717D949400F2DE3458E75CBE3 /* CwlMachBadInstructionHandler.h in Headers */, + E984CB87ABF0DD970BD4B856DEA35E1A /* CwlPreconditionTesting.h in Headers */, + 618C13D4020EBA363997EFB60A56AC20 /* DSL.h in Headers */, + 5BA1006DAFD72ACF9F31DC95096FD054 /* mach_excServer.h in Headers */, + 9096D686AB39D3475A4227F0765C3DC4 /* Nimble-umbrella.h in Headers */, + 574F89786271FD7BAD216D075EA1E898 /* Nimble.h in Headers */, + B3C3D7DAB6567A273DA50FD2068AFF77 /* NMBExceptionCapture.h in Headers */, + 97A60F28FA1FF94422D2560002CEE407 /* NMBStringify.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - F953BE2CDE23DA2EDEC53191959F1489 /* Headers */ = { + D879C91637FB0C8DB8524DF7FF42FFB4 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - F494CBFA97AAE43A569EB76855A4CB88 /* RxMKMapView-umbrella.h in Headers */, + 277208446BD3C322CA39411A47B80D35 /* QCKDSL.h in Headers */, + 4099E5DDC3E8F1F91F56945A53273B8A /* Quick-umbrella.h in Headers */, + 2B52DF857C77B9FABF3CC53CAB6315DA /* Quick.h in Headers */, + 8B752D0B83572A0A5612618D9EA5672D /* QuickConfiguration.h in Headers */, + C5FB387D3784D39F5F02DDD4EC5C1A27 /* QuickSpec.h in Headers */, + D01C19A10BAC1C19780CA527FA21FC5C /* QuickSpecBase.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 00491D7CF395B5626D63A9660278566F /* RxMKMapView */ = { + 4B36ECDDEF67C1536FC13D94E75C985D /* Quick */ = { isa = PBXNativeTarget; - buildConfigurationList = 381EDA2BB69A93B7E09EE0EAE48A4E7B /* Build configuration list for PBXNativeTarget "RxMKMapView" */; + buildConfigurationList = 5B8D3DB4661DD835775FB9AFD41E2349 /* Build configuration list for PBXNativeTarget "Quick" */; buildPhases = ( - 44792FA66B99BCF8490CEDF0FD92BC4D /* Sources */, - 0426DE56AAE3FF808E9845B5CD277DB8 /* Frameworks */, - F953BE2CDE23DA2EDEC53191959F1489 /* Headers */, + D879C91637FB0C8DB8524DF7FF42FFB4 /* Headers */, + 8EAADFB94CCE5757569BE4BDE1BBD884 /* Sources */, + 9CCD105F9455CD8BB4AB7CBDE2D88E3F /* Frameworks */, + AA5A3FCF87574D1BDB8F982815713522 /* Resources */, ); buildRules = ( ); dependencies = ( - E5FD0E5B0F31E254579524502C2E85A4 /* PBXTargetDependency */, - CBCB0D8D9068BA9AB0CCF156806C14A2 /* PBXTargetDependency */, ); - name = RxMKMapView; - productName = RxMKMapView; - productReference = 0B9160785052094876E1AFB3CAD4D8BD /* RxMKMapView.framework */; + name = Quick; + productName = Quick; + productReference = 30A3CB685634BA08E5C160316227035E /* Quick.framework */; productType = "com.apple.product-type.framework"; }; - 36EDDEBF0F2D8C516246FCE7E453B6C4 /* RxCocoa */ = { + 5093E7052ADCB1287968944413FE437C /* RxSwift */ = { isa = PBXNativeTarget; - buildConfigurationList = C9B02E49B5DC4FB439154428756FFBD2 /* Build configuration list for PBXNativeTarget "RxCocoa" */; + buildConfigurationList = 7AEB1EF92049886DB221217EBE8AE874 /* Build configuration list for PBXNativeTarget "RxSwift" */; buildPhases = ( - 18A52002F49C2E3727F620853E6B9B1D /* Sources */, - BFB75547B15627008DA0477440819157 /* Frameworks */, - F2C37828B830787414C073495E349120 /* Headers */, + 6BF55E8F7B70955E960E467B752F3DD7 /* Headers */, + 6C064D2179D74E0A8FE09F0CFEC7363B /* Sources */, + 2AAA36AA45B2ADD853C54CB4B21792A3 /* Frameworks */, + 709C49E96BCF475C91FF12B129430A89 /* Resources */, ); buildRules = ( ); dependencies = ( - 7A54FE6248AC7D40579D1C20DBCC3E9E /* PBXTargetDependency */, ); - name = RxCocoa; - productName = RxCocoa; - productReference = F402707FD32694E055949F7A6FE4F6BA /* RxCocoa.framework */; + name = RxSwift; + productName = RxSwift; + productReference = 4459F85009E8E385B406BF8B18F1B29B /* RxSwift.framework */; productType = "com.apple.product-type.framework"; }; - 3C803EFFB105CFE52502250CF0487107 /* Pods-RxMKMapView_Example */ = { + 5E269AA9A7FBCB9BFD8EA487B43AE7F9 /* Nimble */ = { isa = PBXNativeTarget; - buildConfigurationList = 0AAD51D06667CEEE540C86D562C04B04 /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Example" */; + buildConfigurationList = 10836172B46B0B0B73CE062C21769FF3 /* Build configuration list for PBXNativeTarget "Nimble" */; buildPhases = ( - 67537850D371681C74189E97501CC024 /* Sources */, - E0EE65E5F7209A31EB04D1351DAF4879 /* Frameworks */, - 0CF10BF34FC3CFD255F9F562E9D3C747 /* Headers */, + C9B96F4DDF06565D3B41A826AD209B1C /* Headers */, + 00172CED9D8741CA7FB64BA63FDC1054 /* Sources */, + 7F682A9E296D139B5A1E649989FB51D0 /* Frameworks */, + 260DB7AEBBC86367BD11959FA116A36E /* Resources */, ); buildRules = ( ); dependencies = ( - C6B8D8846EAEAD2283F48FD0DBCFE596 /* PBXTargetDependency */, - 00E529BDDB658243D5C264F8A3C0DD71 /* PBXTargetDependency */, - B6978F66995C0E27889F1C16B7AE1CB6 /* PBXTargetDependency */, ); - name = "Pods-RxMKMapView_Example"; - productName = "Pods-RxMKMapView_Example"; - productReference = E9B70CD3B89570B9243ED4EA0C1A5447 /* Pods_RxMKMapView_Example.framework */; + name = Nimble; + productName = Nimble; + productReference = 24E7813291F257E73EBF9358A253E8C8 /* Nimble.framework */; productType = "com.apple.product-type.framework"; }; - 6838D959625438AC281741568C0CDB53 /* Quick */ = { + 61B489017FDD577C99E0EFF14F6EC6E4 /* Pods-RxMKMapView_Tests */ = { isa = PBXNativeTarget; - buildConfigurationList = 052A3C187E668E8C902E04C5CB213600 /* Build configuration list for PBXNativeTarget "Quick" */; + buildConfigurationList = E89C0668E988226A8B361D97AA3235E1 /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Tests" */; buildPhases = ( - D51A726D83FEEB053564AC5FA288D78D /* Sources */, - F2C7FF88904228A465DDD8B23636D63F /* Frameworks */, - 03ECB8DCE7B9C76F225B541ED4A80461 /* Headers */, + 69238EE6A18850B786D63E6C5766C39E /* Headers */, + 07634D1E14C44F03FABBBF4D1F46F26B /* Sources */, + C5D0935EE17DBF23161EE56DF38E4222 /* Frameworks */, + 6ED311080BB6F5474EB3FED8C5CB3E40 /* Resources */, ); buildRules = ( ); dependencies = ( + 34E7216C098B740E6C8E2FD5FA9C6478 /* PBXTargetDependency */, + 9590FD58F4CB1B916BB89582E2B08848 /* PBXTargetDependency */, + E80B868BAD0D226EF73296017067C09B /* PBXTargetDependency */, + B5A9A714E74C7A48ED6EBAD6B8F61AD5 /* PBXTargetDependency */, + B97B4694022B74D4814C370633858136 /* PBXTargetDependency */, ); - name = Quick; - productName = Quick; - productReference = 30A3CB685634BA08E5C160316227035E /* Quick.framework */; + name = "Pods-RxMKMapView_Tests"; + productName = "Pods-RxMKMapView_Tests"; + productReference = 01CCB59412EC0430B1F33311AC656FFA /* Pods_RxMKMapView_Tests.framework */; productType = "com.apple.product-type.framework"; }; - A9C37DB713A7999DB983BB80FD3FB70E /* RxSwift */ = { + 6359FF11AB8FFF5E949A8E1BEF286406 /* RxMKMapView */ = { isa = PBXNativeTarget; - buildConfigurationList = FC798144C21091829F51EF7710C7CFC2 /* Build configuration list for PBXNativeTarget "RxSwift" */; + buildConfigurationList = F6EC44E4B5C3FE33A96CE2FB501DD073 /* Build configuration list for PBXNativeTarget "RxMKMapView" */; buildPhases = ( - 7EE61A91601527CCAF8BE7F501A6562F /* Sources */, - A2CA4616E925DDF823CCAB05659D38D6 /* Frameworks */, - 9C0633177A9DA754E008DEA946886CB2 /* Headers */, + C1A3AA6F069A750D90DDA1F356A1E9B1 /* Headers */, + 5A55BFDDFD3414CCF35AAC4CD5C956CB /* Sources */, + 981CEA4AB5A89318F309D143EA05C763 /* Frameworks */, + 4D18236FD080AD36F45A08A2AD6C6D94 /* Resources */, ); buildRules = ( ); dependencies = ( + 7128934A3362CB8C68EDDAD0D9419DC3 /* PBXTargetDependency */, + 71C41E4A20D6F4DCFB4DD64435942184 /* PBXTargetDependency */, ); - name = RxSwift; - productName = RxSwift; - productReference = 4459F85009E8E385B406BF8B18F1B29B /* RxSwift.framework */; + name = RxMKMapView; + productName = RxMKMapView; + productReference = 0B9160785052094876E1AFB3CAD4D8BD /* RxMKMapView.framework */; productType = "com.apple.product-type.framework"; }; - ABC04A54955AEB4EA4A0DD7072384615 /* Pods-RxMKMapView_Tests */ = { + 67CA06FDD153FA42DE76DF6EA680D7E9 /* RxCocoa */ = { isa = PBXNativeTarget; - buildConfigurationList = F93A865031FB86334CF6548B1E53718D /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Tests" */; + buildConfigurationList = 741A7544F6E6C619277FDFCEC42B266C /* Build configuration list for PBXNativeTarget "RxCocoa" */; buildPhases = ( - FE6A681693A43BB8A05B76DDA8859871 /* Sources */, - 856791458CC6FDB7FA7A39600635570F /* Frameworks */, - F6AC2CE69D0E1BF29C7619EFB3F8828D /* Headers */, + 1366EF299666D0ECAD0462B400E5C877 /* Headers */, + 261204E4064C485EA6038A084D4DE074 /* Sources */, + B4C1387FE47E6D644C592ADD92495165 /* Frameworks */, + 689046351F2387A7788CE4598202834E /* Resources */, ); buildRules = ( ); dependencies = ( - B22B181D6ED36E86C19C36EC1EED7636 /* PBXTargetDependency */, - 7BAF109597B3AF2E5CBC72BF0EF594BD /* PBXTargetDependency */, - 6498B1B4B8A4C97B9AF861A6EB29B665 /* PBXTargetDependency */, - 1E670C4C7BAE566B1D64E36008860D23 /* PBXTargetDependency */, - F94AA6B44DDE93BF3853A4056A46493A /* PBXTargetDependency */, + 2D98FA0820348E526D7AAFDDDA5F5FDC /* PBXTargetDependency */, ); - name = "Pods-RxMKMapView_Tests"; - productName = "Pods-RxMKMapView_Tests"; - productReference = 01CCB59412EC0430B1F33311AC656FFA /* Pods_RxMKMapView_Tests.framework */; + name = RxCocoa; + productName = RxCocoa; + productReference = F402707FD32694E055949F7A6FE4F6BA /* RxCocoa.framework */; productType = "com.apple.product-type.framework"; }; - DD7C8BF89FE8053D0A2A2D88BB49CF07 /* Nimble */ = { + 68328FFFAA0B707606BCC307C11E7C12 /* Pods-RxMKMapView_Example */ = { isa = PBXNativeTarget; - buildConfigurationList = 439502BDB29394EE0D69336E69C8494C /* Build configuration list for PBXNativeTarget "Nimble" */; + buildConfigurationList = 01DC4A6403818703B30CCF4C2591B864 /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Example" */; buildPhases = ( - 3B8E072FBCB923980AC89BAC33C449B9 /* Sources */, - 819A9B65073BE3B5599196C0A3B27EBC /* Frameworks */, - 85497845823171A47E23A59621A44463 /* Headers */, + B30B715B989AD2B7DD9505A585F5EC79 /* Headers */, + 8777311AF4E12B72BD02FE878554AC11 /* Sources */, + 1A669724DC5966D540AEB7C745D78773 /* Frameworks */, + 2BD8C433D3648DB115B3B9E60B5F8BEF /* Resources */, ); buildRules = ( ); dependencies = ( + 960A20F68AA1110B79716F82FABFB6CE /* PBXTargetDependency */, + 1CCA210C7A6A011A104F0A01282E15BA /* PBXTargetDependency */, + 4DCFBA5D8CD6AC70E94FF51320008FA2 /* PBXTargetDependency */, ); - name = Nimble; - productName = Nimble; - productReference = 24E7813291F257E73EBF9358A253E8C8 /* Nimble.framework */; + name = "Pods-RxMKMapView_Example"; + productName = "Pods-RxMKMapView_Example"; + productReference = E9B70CD3B89570B9243ED4EA0C1A5447 /* Pods_RxMKMapView_Example.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ @@ -1817,557 +1836,554 @@ projectDirPath = ""; projectRoot = ""; targets = ( - DD7C8BF89FE8053D0A2A2D88BB49CF07 /* Nimble */, - 3C803EFFB105CFE52502250CF0487107 /* Pods-RxMKMapView_Example */, - ABC04A54955AEB4EA4A0DD7072384615 /* Pods-RxMKMapView_Tests */, - 6838D959625438AC281741568C0CDB53 /* Quick */, - 36EDDEBF0F2D8C516246FCE7E453B6C4 /* RxCocoa */, - 00491D7CF395B5626D63A9660278566F /* RxMKMapView */, - A9C37DB713A7999DB983BB80FD3FB70E /* RxSwift */, + 5E269AA9A7FBCB9BFD8EA487B43AE7F9 /* Nimble */, + 68328FFFAA0B707606BCC307C11E7C12 /* Pods-RxMKMapView_Example */, + 61B489017FDD577C99E0EFF14F6EC6E4 /* Pods-RxMKMapView_Tests */, + 4B36ECDDEF67C1536FC13D94E75C985D /* Quick */, + 67CA06FDD153FA42DE76DF6EA680D7E9 /* RxCocoa */, + 6359FF11AB8FFF5E949A8E1BEF286406 /* RxMKMapView */, + 5093E7052ADCB1287968944413FE437C /* RxSwift */, ); }; /* End PBXProject section */ +/* Begin PBXResourcesBuildPhase section */ + 260DB7AEBBC86367BD11959FA116A36E /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2BD8C433D3648DB115B3B9E60B5F8BEF /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4D18236FD080AD36F45A08A2AD6C6D94 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 689046351F2387A7788CE4598202834E /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6ED311080BB6F5474EB3FED8C5CB3E40 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 709C49E96BCF475C91FF12B129430A89 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AA5A3FCF87574D1BDB8F982815713522 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ - 18A52002F49C2E3727F620853E6B9B1D /* Sources */ = { + 00172CED9D8741CA7FB64BA63FDC1054 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1C4B8FDC64271A4BB8637E3776E25BE7 /* _RX.m in Sources */, - 2D5C8FDF04B20BFABDF0421EC1480B7A /* _RXDelegateProxy.m in Sources */, - B91DC12674C2E3DADC86A48835F044EC /* _RXKVOObserver.m in Sources */, - 1F6BADC06A3403937CEA4CF59B7EB550 /* _RXObjCRuntime.m in Sources */, - 6D8C4AD823F376FDC331630EAC9B9EED /* Bag.swift in Sources */, - 5738CE6D2659E741DB7EDBEC6E265D0B /* BehaviorRelay+Driver.swift in Sources */, - EBD322C3BAFA8F8E5929EF4358F9B8A9 /* BehaviorRelay.swift in Sources */, - E1080A3EBB2381E6F88C0C5B54B57743 /* Binder.swift in Sources */, - 9EEDB3D636BE55ED97224F5BB4D0837A /* ControlEvent+Driver.swift in Sources */, - B412B3027577F4608786BC4FD16F9716 /* ControlEvent.swift in Sources */, - B21F20A6FA2F54967DD3E5DA231AD687 /* ControlProperty+Driver.swift in Sources */, - 19D8EE71DC0C6323A0E8ADC390A6C56B /* ControlProperty.swift in Sources */, - DE7A5FACE54E887BF0FD5E29C60E0372 /* ControlTarget.swift in Sources */, - 9F615639B388468647C14B99865BBFB0 /* DelegateProxy.swift in Sources */, - 3AABD415B93B3BE817007C8B3D7E5AC3 /* DelegateProxyType.swift in Sources */, - 833EC60CEE883DBB76D1E18A2288EFA1 /* Deprecated.swift in Sources */, - 5A235F2CA3F6CFD1B164B0211CDFB875 /* DispatchQueue+Extensions.swift in Sources */, - 14EDFC47AFCBE97249BA84FCFBE1FFF8 /* Driver+Subscription.swift in Sources */, - D8A5604280B45C9BBD96D4196672F976 /* Driver.swift in Sources */, - FC802A979E803CF5FBE2FEB05EA40ED4 /* InfiniteSequence.swift in Sources */, - 9C4661BE9CA7430541C323B7EE2AFEC5 /* ItemEvents.swift in Sources */, - FE0995F58A1EC8B060F3E3C20BBF119F /* KVORepresentable+CoreGraphics.swift in Sources */, - 7CE4BAD086E23007BCE482A0FEC2D2EF /* KVORepresentable+Swift.swift in Sources */, - 8910ECD5326CF7EC5DCEA03D9DBE9437 /* KVORepresentable.swift in Sources */, - C9BEBB04EFF182058EE85BE04F6A01E7 /* Logging.swift in Sources */, - 9BE19AB16C42DB2F6F38355597232FC4 /* NotificationCenter+Rx.swift in Sources */, - 1CA161CE87925C15BAAB99EFEDF70A01 /* NSLayoutConstraint+Rx.swift in Sources */, - 215B5C6C27E0C64FF0560139F229B6FE /* NSObject+Rx+KVORepresentable.swift in Sources */, - B41E5EBE1B0FEA1886E769397BDEF2B2 /* NSObject+Rx+RawRepresentable.swift in Sources */, - 432D327DB8A3D8F1B2E45DC644761946 /* NSObject+Rx.swift in Sources */, - 989872D913E6F8595DED464EF791AA8B /* NSTextStorage+Rx.swift in Sources */, - 43C1BEDEEB63E70ADF046529C1CBB554 /* Observable+Bind.swift in Sources */, - 92DAB11B882E972FBD7467862F29A33A /* ObservableConvertibleType+Driver.swift in Sources */, - A4536840AD7B01A5C4BC76C1F6AD292B /* ObservableConvertibleType+Signal.swift in Sources */, - 2AC6749AE15B1B2A3EB73E971EB689EA /* Platform.Darwin.swift in Sources */, - CF3A76DEA89A40EE2DA20BBEB72DAC92 /* Platform.Linux.swift in Sources */, - 37612AC01D1ED6F96BD560F3223A1022 /* PriorityQueue.swift in Sources */, - 45410BB095E0B3ED8A101D10939A770A /* PublishRelay+Signal.swift in Sources */, - 3FB3004E9F63EFB983F2FBE84BDC4988 /* PublishRelay.swift in Sources */, - 9ED9FA037C13B1BEAC74A1E58BD3BF77 /* Queue.swift in Sources */, - 83B4F8DE5145B965EBEA368F122EC3DB /* RecursiveLock.swift in Sources */, - 6D155B44BBD24531D312A43D82048305 /* RxCocoa-dummy.m in Sources */, - FFF75C5AE2C6538AD89FB04D46178B26 /* RxCocoa.swift in Sources */, - 634838F7FEB2E9B8EF83042219DFC364 /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */, - A7B6D98FEAA1931FF2FB7836C5179B56 /* RxCollectionViewDataSourceProxy.swift in Sources */, - 675394DA54CA87CD3BC760057CA9E093 /* RxCollectionViewDataSourceType.swift in Sources */, - 1A199BFE8135113B5BE06B22FC6B4E72 /* RxCollectionViewDelegateProxy.swift in Sources */, - 288B8AF9BDD88B32285EFDD43703AAC6 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */, - EA479D18E2CEA9D74D013118F08DA805 /* RxNavigationControllerDelegateProxy.swift in Sources */, - 7DF7F84AB96E84194B54C79AB406D386 /* RxPickerViewAdapter.swift in Sources */, - FA450081B36AE5621AB5A66DC0E08470 /* RxPickerViewDataSourceProxy.swift in Sources */, - 376781C0CADA2C12CAB3B742B20229A6 /* RxPickerViewDataSourceType.swift in Sources */, - AA93EDD19583D44663BE8D642AE4FE17 /* RxPickerViewDelegateProxy.swift in Sources */, - 033D909D194F75E1402F899400C78A02 /* RxScrollViewDelegateProxy.swift in Sources */, - D4AE5528A34B578C5C9DC2B741F8C3A0 /* RxSearchBarDelegateProxy.swift in Sources */, - 0EDFFC1456DE0C6D1D4A78507C78065A /* RxSearchControllerDelegateProxy.swift in Sources */, - 58C2252B18BCCE79FB6CD73E8D281785 /* RxTabBarControllerDelegateProxy.swift in Sources */, - FEF4AEDC96D2440742C4E47AAF6C7FF6 /* RxTabBarDelegateProxy.swift in Sources */, - F9A496507C1AFD3279B37F215E2AD552 /* RxTableViewDataSourceProxy.swift in Sources */, - 872C15D5BEA414ADB324404B346A2FD5 /* RxTableViewDataSourceType.swift in Sources */, - D8CFB5F1D7C338ECC754109706D5DD89 /* RxTableViewDelegateProxy.swift in Sources */, - 7858F778DF020C048A1559A7BEB17BCC /* RxTableViewReactiveArrayDataSource.swift in Sources */, - 5ED93B5FF0DD2512C4B68C808588E19E /* RxTarget.swift in Sources */, - 92218539BEFC4373B5286328DC16418A /* RxTextStorageDelegateProxy.swift in Sources */, - BEB807AEC6DEDA96AC3805E3AAED2650 /* RxTextViewDelegateProxy.swift in Sources */, - BBB9278D0E01CA1C97D5FA65EACE0BCD /* RxWebViewDelegateProxy.swift in Sources */, - BF1A15510EB150A6122C643AE28BC235 /* SchedulerType+SharedSequence.swift in Sources */, - F818CDF171EEF5138794AFE6B8E07F2A /* SectionedViewDataSourceType.swift in Sources */, - 563B692C9C6DEB931EF5EFB5AC21EEC3 /* SharedSequence+Operators+arity.swift in Sources */, - C82734905C1031EBF7311B5E74882C4F /* SharedSequence+Operators.swift in Sources */, - 1CEE33E34944E4598636A83E8EF50DEE /* SharedSequence.swift in Sources */, - 07243A21824E9FF1667ABBC70559AE36 /* Signal+Subscription.swift in Sources */, - 5B8AC984403B9320794C77D2B56222AF /* Signal.swift in Sources */, - 8CC1317A5B4ABA27AD267C6B3C0D43EC /* TextInput.swift in Sources */, - 2AB76B3D97D69A400EB78F5CFEE7F17B /* UIActivityIndicatorView+Rx.swift in Sources */, - 29786AC09AC91A30B22549AC7F389EBD /* UIAlertAction+Rx.swift in Sources */, - 8C2494F950BB9E2C59BB90CFBF3DD136 /* UIApplication+Rx.swift in Sources */, - 84C205300C2906F59ED455044BD97531 /* UIBarButtonItem+Rx.swift in Sources */, - 30EE558EC8E61964D55AE4FF07D1EA42 /* UIButton+Rx.swift in Sources */, - 9E8C77C0D11A4E80ACB215E9773D9746 /* UICollectionView+Rx.swift in Sources */, - B0CF62471AFB291B6A1D20434B88D574 /* UIControl+Rx.swift in Sources */, - 1DEC0993ADF2745023809DC0391D2A46 /* UIDatePicker+Rx.swift in Sources */, - 5556FF7849B7EDD8D96674C5F05FDE56 /* UIGestureRecognizer+Rx.swift in Sources */, - 50F303330C6EE159A80375EAF3F906C5 /* UIImageView+Rx.swift in Sources */, - 191F5B83D1A514CD9000A1CB3134729A /* UILabel+Rx.swift in Sources */, - 1F51554820168E15CCFF980700190667 /* UINavigationController+Rx.swift in Sources */, - 445C0A1EA9E4B3B22B3CB483C2123A83 /* UINavigationItem+Rx.swift in Sources */, - 4F22C00916720C7E7CDEB0629E3EE130 /* UIPageControl+Rx.swift in Sources */, - 8808BCF22DAA9AE545700989DE3A6AFD /* UIPickerView+Rx.swift in Sources */, - E082DD04665F7D15007AA30F8088D7D8 /* UIProgressView+Rx.swift in Sources */, - B747AD45A9F770D3EF38C8EE764C5400 /* UIRefreshControl+Rx.swift in Sources */, - 690600B6EADE141D4DAA6F5C54BB510B /* UIScrollView+Rx.swift in Sources */, - A453F56B53818194E3A62266963D9445 /* UISearchBar+Rx.swift in Sources */, - C55AE4C8E25FD46B20EBDA9C29171D85 /* UISearchController+Rx.swift in Sources */, - EFEB67076B4B208B86E90ABEE904F4BB /* UISegmentedControl+Rx.swift in Sources */, - F219020C831376060EFDA66C521A2EE2 /* UISlider+Rx.swift in Sources */, - ED7E150D8BFCCDBFFE5616731E61EA1B /* UIStepper+Rx.swift in Sources */, - 36B970E4E39C66E7ADF83B2148F3C7D3 /* UISwitch+Rx.swift in Sources */, - AE9165EC7715A14F2864DA55609B499C /* UITabBar+Rx.swift in Sources */, - 661ABD83566919F3EB6A722C822AC133 /* UITabBarController+Rx.swift in Sources */, - 10044B7D0143BE19BD7210CC2C80AA1A /* UITabBarItem+Rx.swift in Sources */, - E2D67BD8BDCA235C3C4A54A6322B3FD4 /* UITableView+Rx.swift in Sources */, - DB142ACCD2B072D2D39C9B95B949FB9F /* UITextField+Rx.swift in Sources */, - 55E0A4E27CDB6F28542F3CC9A69D2719 /* UITextView+Rx.swift in Sources */, - 53A03672C8C43076B4D1CFCDE0151B6B /* UIView+Rx.swift in Sources */, - 4646C574FD0095E86DF31C7F5481626E /* UIViewController+Rx.swift in Sources */, - FDC1C1EA1A61703F14AE4B0FCA6F5F72 /* UIWebView+Rx.swift in Sources */, - 55EA2C7AB87C757D6517D1B7597CA118 /* URLSession+Rx.swift in Sources */, + CF7DCBACB4588B9117B4929B24791D1C /* AdapterProtocols.swift in Sources */, + C8C36B05E07462424CA4F11AD3B0FB35 /* AllPass.swift in Sources */, + E0B9A700F4113F9C6BCA8C983F88AA96 /* AssertionDispatcher.swift in Sources */, + 58CBD7C6FCCF861D7B40DBEA97B76F13 /* AssertionRecorder.swift in Sources */, + D1B2A85A2734EF5306BEF52C3D85BBC9 /* Async.swift in Sources */, + 28FCE8B73D5CB39633FF7411B9EA132D /* Await.swift in Sources */, + A4877DE5562A21EC837EA88372FC5F6E /* BeAKindOf.swift in Sources */, + E2FB7F608DB948A46BC133A10022EEB1 /* BeAnInstanceOf.swift in Sources */, + 8DD4034AF0E496400F33AE7AADD98A8D /* BeCloseTo.swift in Sources */, + 6ABB36C1D3D676CBFF19CA07A1BD429B /* BeEmpty.swift in Sources */, + 7F429C81741B3EFE8BFF42F8C600B93D /* BeginWith.swift in Sources */, + 2747311035B4779E58A5FAB1FA822D81 /* BeGreaterThan.swift in Sources */, + 402DB262EAF00653A5A573C879F46C0B /* BeGreaterThanOrEqualTo.swift in Sources */, + BAED5D1EBD102C53289AE0AAAFF9793E /* BeIdenticalTo.swift in Sources */, + 07CE7C117D65E7628DD19BAE4A24A0E2 /* BeLessThan.swift in Sources */, + 16B73B43634ABB83AB49CF1AD90A1BCE /* BeLessThanOrEqual.swift in Sources */, + 67EACA3661AC5E938CEA6CEF94569169 /* BeLogical.swift in Sources */, + 6535674B79D03D90F459357BDDEC5C8E /* BeNil.swift in Sources */, + 9F32B116509F085E4A42284DCAA18C03 /* BeVoid.swift in Sources */, + 7097E06CC2D56894F67B7D94661FFF60 /* Contain.swift in Sources */, + EE017F2A80DEA8BA34CC05C569CEE446 /* ContainElementSatisfying.swift in Sources */, + 8DEBCBDC9B3C7EDBFAD6030A1E16814A /* CwlBadInstructionException.swift in Sources */, + 84E49DCC891171D98BBAE9E326D238C3 /* CwlCatchBadInstruction.swift in Sources */, + EB94E899326D9FCB98BD7C9CF4E9853C /* CwlCatchException.m in Sources */, + 179C58EBF0917C09BC80D8C94F6144AC /* CwlCatchException.swift in Sources */, + 8C8D095BE8C5625BB5BED76F9647B2C1 /* CwlDarwinDefinitions.swift in Sources */, + 9146550C82FDBA565131D0EA7DF01698 /* CwlMachBadInstructionHandler.m in Sources */, + 93BBDB63A2EF76DCDD53026214C5FC2F /* DSL+Wait.swift in Sources */, + 0A32AA6B7FB6252A9FA7DCF5211B449A /* DSL.m in Sources */, + E2A3BCC1ECE09CA23BE78434F4F3B92F /* DSL.swift in Sources */, + 26DBF69A369ABE0CD02DFB18FCD8DABE /* EndWith.swift in Sources */, + BFA263D464C1511C9E425AD7F965BD80 /* Equal.swift in Sources */, + 504EFF729DE5ED33F502BD42257F76FC /* Errors.swift in Sources */, + B5B6A0930E68D6C6A280827B88FCAAB6 /* Expectation.swift in Sources */, + F12912A0DC2EB181991C3BF39B5B848C /* ExpectationMessage.swift in Sources */, + 7F018F748F70B5502D3C95FFE70E45F0 /* Expression.swift in Sources */, + 1417699AA0911122604B708E76F525C0 /* FailureMessage.swift in Sources */, + 3B0ECAAE039C484C222047C7C5DDF406 /* Functional.swift in Sources */, + 97AB989CC423C63F3A3833F40DC8A969 /* HaveCount.swift in Sources */, + 86CBA3BC0B02B881DF510A6559A3B17B /* mach_excServer.c in Sources */, + 6F795A44C899A47E922BB15A06B1B233 /* Match.swift in Sources */, + 340ABD311325A710D271E6B1C73A6149 /* MatcherFunc.swift in Sources */, + E26FCFF1FB2D7F7D9B49A4CD76922B83 /* MatcherProtocols.swift in Sources */, + 0C07FB0CF733EC61046C90023BCB8FBF /* MatchError.swift in Sources */, + 79FA255F43C9E42470C9720C0604444F /* Nimble-dummy.m in Sources */, + 2EF56FC3662BE6A5EC90D294FB5597B1 /* NimbleEnvironment.swift in Sources */, + 5CE46CFD2E88245FC21F2F8BC237BFC0 /* NimbleXCTestHandler.swift in Sources */, + 1197DCAD51EE432BCF885633EB02FD6C /* NMBExceptionCapture.m in Sources */, + 05FAA4BB47143605A6640AA767242A86 /* NMBExpectation.swift in Sources */, + 46B333FBBF302D663D5DFAD643D0447B /* NMBObjCMatcher.swift in Sources */, + 556C9652CB89E0DF4BD6D6AFE2EC6A0E /* NMBStringify.m in Sources */, + B188830C201955D13899CA34E4383ABA /* PostNotification.swift in Sources */, + 090CD165D6B0B1A7066007D8440FFCFE /* Predicate.swift in Sources */, + A69805E69BD1CD1BF986442E462FB3BA /* RaisesException.swift in Sources */, + 9F4EA8A38F3D0FA4BB4887B25091EC3C /* SatisfyAllOf.swift in Sources */, + CAC12FDBFF9C76FBF788566308862553 /* SatisfyAnyOf.swift in Sources */, + 78025ECA553090F8C8D879B88836AA71 /* SourceLocation.swift in Sources */, + 0FDC2B01F8B2FD83DB8E861FC9E4C54E /* Stringers.swift in Sources */, + 31B3672FE0A9C1DAD7244E4334BD9D60 /* ThrowAssertion.swift in Sources */, + B9A5BF2A33B4AC12E25CCD6237E37117 /* ThrowError.swift in Sources */, + 0EDC64EFD601562B6B8130D07038F750 /* ToSucceed.swift in Sources */, + 435C74395D935E7EFE418BB9EF61843D /* XCTestObservationCenter+Register.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3B8E072FBCB923980AC89BAC33C449B9 /* Sources */ = { + 07634D1E14C44F03FABBBF4D1F46F26B /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - F9649DD59BAEE88C6864EEFE73ECA88C /* AdapterProtocols.swift in Sources */, - DF026F6F406A4FB6CEA63B0A4B9E27DD /* AllPass.swift in Sources */, - 32B38992751B96F21324BFC9923BFCBD /* AssertionDispatcher.swift in Sources */, - 73BC5AC2ECDB8722E085F14B53E0D24E /* AssertionRecorder.swift in Sources */, - B2C151B20635A480E1937E3D2B509BB4 /* Async.swift in Sources */, - EAAA05EBBC34225C0DB45797712E24A1 /* AsyncMatcherWrapper.swift in Sources */, - 7E0C9AE6468A5DF91F0F4C7A387D725C /* BeAKindOf.swift in Sources */, - C1D862177DC2999FAC710AC25F253BD0 /* BeAnInstanceOf.swift in Sources */, - BF3B7218901760A6226C7F6346BEF454 /* BeCloseTo.swift in Sources */, - 58C0125D796A97541FDE3414001D8A92 /* BeEmpty.swift in Sources */, - CCDAF11E7AF29E720C587B038145F622 /* BeginWith.swift in Sources */, - AF1174085D9BC5D50FCE0480E9C2BE94 /* BeGreaterThan.swift in Sources */, - 58D964317DFBB10F54A273CB12843017 /* BeGreaterThanOrEqualTo.swift in Sources */, - F4BD249C60F21F5E0F7C1FAC8A5BC2AF /* BeIdenticalTo.swift in Sources */, - B102ABE4E54B71B3D2C2118E2782FAB9 /* BeLessThan.swift in Sources */, - 75538A8B20C7A20AF3D54BBF35D56FFE /* BeLessThanOrEqual.swift in Sources */, - 1E1CE28FFCCD7499620B47C910E9B9E9 /* BeLogical.swift in Sources */, - 75ABB48E3C30C2D736C3D05D6FD566A8 /* BeNil.swift in Sources */, - 3C66D2692E811DAE57A244A67E7AC555 /* BeVoid.swift in Sources */, - A74537420FF0CEDC6B9E82E1DC4C2B15 /* Contain.swift in Sources */, - 25D1805055756CAA69A167CA03B2465C /* ContainElementSatisfying.swift in Sources */, - 37C5AC3FE6711A1117819AC5A18EE5C4 /* CwlBadInstructionException.swift in Sources */, - 051B2AF789E6D4E648C099830025DED9 /* CwlCatchBadInstruction.swift in Sources */, - 64819C8D4EBD3386377D0F84DC909F8B /* CwlCatchException.m in Sources */, - 2E6730CD6DFCFE1212EDE5343F2E099B /* CwlCatchException.swift in Sources */, - 25D7312BBE513DAB0ACBC1814DDC7C86 /* CwlDarwinDefinitions.swift in Sources */, - C3B1A7E0024A06554CBE973A69DFEDA2 /* CwlMachBadInstructionHandler.m in Sources */, - ADEE95A3A188BE3095990E20766BCCC8 /* DSL+Wait.swift in Sources */, - 8B55BD430033027AD5FF22D630DD9F62 /* DSL.m in Sources */, - 1A3E19B9F5EEB773C3BB61CA42F8BF62 /* DSL.swift in Sources */, - 3D1A89FDD6B579BAA92AD398E5C019F9 /* EndWith.swift in Sources */, - C8320A6164C870ADDB8A855ADEBBBDC9 /* Equal.swift in Sources */, - BC7B9761322C74FA27969BD55833BA47 /* Errors.swift in Sources */, - 65985C142EE8A74E6E56D5E30A39C79C /* Expectation.swift in Sources */, - 3E04D23B2995705A6106D41F3E3E4E33 /* ExpectationMessage.swift in Sources */, - 4FABBF5CA8F735F48035BE4144613CB7 /* Expression.swift in Sources */, - 17C8EE7DF3F57C8F99EAF63C6E61EA99 /* FailureMessage.swift in Sources */, - 62D26CE7BA3AEDB4E5E87218FDCBBA90 /* Functional.swift in Sources */, - 988EED125395950177DC14AF9BC87D8D /* HaveCount.swift in Sources */, - 4D68C35510D1E911C9B89840FC4B777F /* mach_excServer.c in Sources */, - F28003B228B82B7E1497D4F41F55A31E /* Match.swift in Sources */, - C06FA100C1BBEE34B863BCB8A65359C1 /* MatcherFunc.swift in Sources */, - 6BB0EBEB4730B94AC07458E398D142C8 /* MatcherProtocols.swift in Sources */, - 45F183320C688F9978649F30ABE21D09 /* MatchError.swift in Sources */, - 4CDACD8A5A6CFB688838AA988E7D1E43 /* Nimble-dummy.m in Sources */, - 54CC2049C937561A469575AF9E6A6FE9 /* NimbleEnvironment.swift in Sources */, - CF55697859D633C852C3586384647EB6 /* NimbleXCTestHandler.swift in Sources */, - 6CB4890B9BF5F846E980634AFE83917D /* NMBExceptionCapture.m in Sources */, - 68FD03C72D719117929696B62038B3D7 /* NMBExpectation.swift in Sources */, - A7C13C62E4116CA964A3E82179092AD5 /* NMBObjCMatcher.swift in Sources */, - AE4DA49ECD693BF384CD824DF02D7C6E /* NMBStringify.m in Sources */, - 31C39ED8CB1C9317F1F2840FC919662D /* PostNotification.swift in Sources */, - EF8548E0C37E8888D9DDC11ED89D3568 /* Predicate.swift in Sources */, - EAE2AAE5EB826B38978692984BB22FDD /* RaisesException.swift in Sources */, - EB3A73071ABA60E77E0704649637D8BD /* SatisfyAnyOf.swift in Sources */, - F3BAA36614ABDBC0538B0DEA99CF80A0 /* SourceLocation.swift in Sources */, - 8170866E2ACE0ACFBC6D90081354EC65 /* Stringers.swift in Sources */, - 3B3A88E074630B1EBC2139F4F70F0443 /* ThrowAssertion.swift in Sources */, - 5BF274C2DEF332ED79B1CD15CFEC3498 /* ThrowError.swift in Sources */, - 29A65FF7D1752DFFF87F5DC8F55CE859 /* ToSucceed.swift in Sources */, - A61ADD214AA182EEB2AC95EA3F3D658F /* XCTestObservationCenter+Register.m in Sources */, + F949AFE12F405FBCF4486561187205FF /* Pods-RxMKMapView_Tests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 44792FA66B99BCF8490CEDF0FD92BC4D /* Sources */ = { + 261204E4064C485EA6038A084D4DE074 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 5EA864457AC66DACE42BDC1590707D72 /* Diff.swift in Sources */, - 18226777C9EBDEAFA894E62FA624E3B8 /* MKMapView+Rx.swift in Sources */, - 188491029EAC3E10558C4113B3603105 /* RxMapViewDataSourceType.swift in Sources */, - B09A3D49308144DB7D92FB3BC995056F /* RxMapViewReactiveDataSource.swift in Sources */, - 4C46F8CDFCCA21E5CFE3294323477D3E /* RxMKMapView-dummy.m in Sources */, - DDD67DAA6C53DA583A3BC0B5AFEBFBCB /* RxMKMapViewDelegateProxy.swift in Sources */, + 756E8E115C93AD9D97BFB71B50C83190 /* _RX.m in Sources */, + 7B66749F536259BDFBAAA40DE368AC34 /* _RXDelegateProxy.m in Sources */, + 816171F49293915EF1D3892F0594361B /* _RXKVOObserver.m in Sources */, + 446CF588DB1D34427FE41EF6A83270BC /* _RXObjCRuntime.m in Sources */, + A63E113ABCD6E551DF0942305CC8A740 /* Bag.swift in Sources */, + 6EC3E48C712E91A6CCE7E7893B807455 /* BehaviorRelay+Driver.swift in Sources */, + 9588DF74CDC818553FDD79042076C84B /* BehaviorRelay.swift in Sources */, + 3A9A32730355EED2B76FCE5F458F4289 /* Binder.swift in Sources */, + 5ECC0FEB993796BE22E3CADB7EE047B3 /* ControlEvent+Driver.swift in Sources */, + 3AF09E2420F4C806AFC92EAE8303E992 /* ControlEvent+Signal.swift in Sources */, + 1565CC740E8EBC32FFE6C54089BE0533 /* ControlEvent.swift in Sources */, + 6F52B89847F5035B62853CB9878A24DD /* ControlProperty+Driver.swift in Sources */, + 67A3C4502CCD6CAE4B37FF728DC97E2E /* ControlProperty.swift in Sources */, + 0BCDDF123B975B37EBA38FC7F81598AC /* ControlTarget.swift in Sources */, + EFF85221F0C17B8773592DEB019E50E5 /* DelegateProxy.swift in Sources */, + 754C4561CC47C1A3B3E9DBEE82201270 /* DelegateProxyType.swift in Sources */, + 81DF3548DE9709E7A10F3771B6A6BFD2 /* Deprecated.swift in Sources */, + 4EE4CE0E03DA3D51E9975238A72D1138 /* DeprecationWarner.swift in Sources */, + 92B9543601AF929C05E55D9BF757C61C /* DispatchQueue+Extensions.swift in Sources */, + A48C4C724162E9858542950DAA26A6FB /* Driver+Subscription.swift in Sources */, + DA22BC177E50EEFFEA222CEE2B9B2401 /* Driver.swift in Sources */, + BEE47D7B8EA71B06C16C51F647EB839F /* InfiniteSequence.swift in Sources */, + E534593ED7011A4A3A58E4970DAF5DE3 /* ItemEvents.swift in Sources */, + ED675AE95300988DCBAABE2E36A7D59B /* KeyPathBinder.swift in Sources */, + 26F555760EDC3784FEE463A43ADE6C90 /* KVORepresentable+CoreGraphics.swift in Sources */, + 6D02C388D17367825FABF20B64AC7647 /* KVORepresentable+Swift.swift in Sources */, + AD742CF2688A3288D65EC82D2A8684C5 /* KVORepresentable.swift in Sources */, + E7098551311259FD3B77A9E2157047BB /* Logging.swift in Sources */, + DB5A8BA18756CAB10D842CB61B158478 /* NotificationCenter+Rx.swift in Sources */, + 13028A13498863EA3F67F05D4783D21A /* NSLayoutConstraint+Rx.swift in Sources */, + D8C0245757B2D80C5872CA00B78F3D95 /* NSObject+Rx+KVORepresentable.swift in Sources */, + D396E5E2E1025167F0F6DAA1ED51EAA7 /* NSObject+Rx+RawRepresentable.swift in Sources */, + 6B5C82949C1488AB045F551C48113D92 /* NSObject+Rx.swift in Sources */, + BE0338FDB40B80A393B60D6212A04910 /* NSTextStorage+Rx.swift in Sources */, + 8AA5815F9AA4E59F64AB399A4FAC2249 /* Observable+Bind.swift in Sources */, + 146B334A4E94750A972BBBB482011BC0 /* ObservableConvertibleType+Driver.swift in Sources */, + 2AF7950CA8756950823FC8B6CEFCE6AB /* ObservableConvertibleType+SharedSequence.swift in Sources */, + 9652F7AE242B0E32D457A80994C175B4 /* ObservableConvertibleType+Signal.swift in Sources */, + 4E6CE0CB13D03EE40E0B4085CDD229B6 /* Platform.Darwin.swift in Sources */, + 673AAB4DEF0C7DDF780938428E756C5C /* Platform.Linux.swift in Sources */, + 642A4841019E1C450514960951B04660 /* PriorityQueue.swift in Sources */, + A3ACF4EE91F734AEB7FBF1EDE81E9DB5 /* PublishRelay+Signal.swift in Sources */, + C5AEE1CB81079AAA5915CB9E9EA6D9B9 /* PublishRelay.swift in Sources */, + F459AB3D7257C2E9CB018983F14E34E1 /* Queue.swift in Sources */, + 89972352F8220A172108D55DD7CD7861 /* RecursiveLock.swift in Sources */, + D5ED73BBF13F95145823E29738909139 /* RxCocoa-dummy.m in Sources */, + B163A62979E169CB35011954CFD754FC /* RxCocoa.swift in Sources */, + 1D092104F2A3711D2B36A1D0EBBB4525 /* RxCocoaObjCRuntimeError+Extensions.swift in Sources */, + 6F5AF739E8D8781B7562E4DAFE546AA6 /* RxCollectionViewDataSourcePrefetchingProxy.swift in Sources */, + 882A127285E34020EB81B41988026320 /* RxCollectionViewDataSourceProxy.swift in Sources */, + 1B0407BFE0B5137F6EE3B28D24F5EF70 /* RxCollectionViewDataSourceType.swift in Sources */, + FBD1C0C7C5431C7063A7C42262695AB2 /* RxCollectionViewDelegateProxy.swift in Sources */, + B17DB3AB065384FE629EEE5F5284E854 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */, + 5ABA47FA99D309E7DF309B8F5E5A957C /* RxNavigationControllerDelegateProxy.swift in Sources */, + 6688C7077B6AC127A58723EC4539AA27 /* RxPickerViewAdapter.swift in Sources */, + 4419CABC732845CC36EF56E501A8A101 /* RxPickerViewDataSourceProxy.swift in Sources */, + 29EAF2C22B1C58F8F72820860DD08EEF /* RxPickerViewDataSourceType.swift in Sources */, + 5C537F51C1634F734328973A3008900C /* RxPickerViewDelegateProxy.swift in Sources */, + AE0F34F0D140B3E884D11D74291AE0D1 /* RxScrollViewDelegateProxy.swift in Sources */, + E13943FA54AE5CBF3C8F88EF3127B9BA /* RxSearchBarDelegateProxy.swift in Sources */, + 3D2E8F943FB699F5A29219302C86D7E2 /* RxSearchControllerDelegateProxy.swift in Sources */, + 22DCDA67EF4CE6AF501B364B67DAC59A /* RxTabBarControllerDelegateProxy.swift in Sources */, + ECB0C340278C8A988FAEDA3185F6BCB8 /* RxTabBarDelegateProxy.swift in Sources */, + 40B1DEA40744FE29F62ACF99DA6D4803 /* RxTableViewDataSourcePrefetchingProxy.swift in Sources */, + 0A79B85766D4B9E9183457016F8DFD99 /* RxTableViewDataSourceProxy.swift in Sources */, + 0398F99B4D13425A84D8DB83D378F9C5 /* RxTableViewDataSourceType.swift in Sources */, + E0F865461EEE9123B46C10DF75425CA2 /* RxTableViewDelegateProxy.swift in Sources */, + E4402148F9176368ADCEB1C48093B2D4 /* RxTableViewReactiveArrayDataSource.swift in Sources */, + C65648D4F19B8240DE1851043F771BF3 /* RxTarget.swift in Sources */, + EA7898B1307F8F811B9168B8E4731137 /* RxTextStorageDelegateProxy.swift in Sources */, + C7C192BB46A9A9702EE8EBA56167EB07 /* RxTextViewDelegateProxy.swift in Sources */, + 83DE141DF2F12D4E63B16DEAC00E1815 /* RxWebViewDelegateProxy.swift in Sources */, + C5B370B347256FCB23C2C15512FF1B6D /* SchedulerType+SharedSequence.swift in Sources */, + 672D9FA618D7B670978A56F97148BC80 /* SectionedViewDataSourceType.swift in Sources */, + C60DC95ACBA831606AE6268E246606C4 /* SharedSequence+Operators+arity.swift in Sources */, + 9991E72D6BB7811D56CF6F7D4C6B2CEE /* SharedSequence+Operators.swift in Sources */, + 23B261FC6D7FFA8CFB0A040232563AC2 /* SharedSequence.swift in Sources */, + 3818533A48577AFACCF2AD50F2D98A00 /* Signal+Subscription.swift in Sources */, + CF1E7427C0C261F7961904FB8B0AD3DC /* Signal.swift in Sources */, + 5C05DBCCCD3562EC8D6FC59101C91C52 /* TextInput.swift in Sources */, + 7FE8331B57FAF2E8B475C4C92A3DC3D4 /* UIActivityIndicatorView+Rx.swift in Sources */, + 7AE78B28684504D5C6401ED84228B5AB /* UIAlertAction+Rx.swift in Sources */, + D928AED42232761F095C0206B152E5DB /* UIApplication+Rx.swift in Sources */, + E55D18F363F0AB438FBE14B88F30BB1E /* UIBarButtonItem+Rx.swift in Sources */, + 8BC4A3E4A4D4117EF7E643C84DCE3C05 /* UIButton+Rx.swift in Sources */, + 923D2728BE630DE5C93996C5BC077291 /* UICollectionView+Rx.swift in Sources */, + C50A13538FC1D21B62AB6758F6CB197C /* UIControl+Rx.swift in Sources */, + 34C33DDB3CD9F255ED83D082B4BB13AB /* UIDatePicker+Rx.swift in Sources */, + 3D0838F6D3EFAF3A57EE58245FEF0228 /* UIGestureRecognizer+Rx.swift in Sources */, + AA7FCC2116744AA530D020D269B4E71C /* UIImageView+Rx.swift in Sources */, + F0BCAF59A4A3EF41B4448899B783F5F1 /* UILabel+Rx.swift in Sources */, + 206453ACC8F9D23002FB9CA716740451 /* UINavigationController+Rx.swift in Sources */, + 915148739A473800A2C2A0FF0A82E3AB /* UINavigationItem+Rx.swift in Sources */, + DFD0F219AA1509FECABDDD1EDE1BCD8E /* UIPageControl+Rx.swift in Sources */, + 3BF195315BB176E2611A563F951D2FB9 /* UIPickerView+Rx.swift in Sources */, + 99AAE4DFCF12FDDA7929F906054CDBB6 /* UIProgressView+Rx.swift in Sources */, + A3AF0FBE3367E327CE438BAC26F0DCD2 /* UIRefreshControl+Rx.swift in Sources */, + AB6E86BEE9A225508937416EAB67A138 /* UIScrollView+Rx.swift in Sources */, + 36B221C28AD7BDBD18968C1FF49D50BB /* UISearchBar+Rx.swift in Sources */, + 936A6113353A71251AFCABB2E06CD5C3 /* UISearchController+Rx.swift in Sources */, + 29594F7FA2976B7AA435AD65459D2232 /* UISegmentedControl+Rx.swift in Sources */, + 4431412C0F46AB4258F37FF421244078 /* UISlider+Rx.swift in Sources */, + 36551F879C786DF8D8FC533902BFD3E8 /* UIStepper+Rx.swift in Sources */, + 60910EBB0CC5EAF72AF89542B5D8493F /* UISwitch+Rx.swift in Sources */, + 12E7140F7417A38D2FB6D9FC695297AE /* UITabBar+Rx.swift in Sources */, + D2A52142A922C0BE746B3A1BE25966CF /* UITabBarController+Rx.swift in Sources */, + 49E264C2511BAFF8211E7C266EDEF810 /* UITabBarItem+Rx.swift in Sources */, + 9FF615D49E66830F029158B0BE0341B6 /* UITableView+Rx.swift in Sources */, + 1310E2D45F708FBBB1666D298FB7EA2B /* UITextField+Rx.swift in Sources */, + 9A6344DFE5A64D701961BA3A40FA45EE /* UITextView+Rx.swift in Sources */, + 55A8EAD9D3F24602B37EE0DB4414E78D /* UIView+Rx.swift in Sources */, + 9971A4F21F4607C072B462709C44FC70 /* UIViewController+Rx.swift in Sources */, + 0ACAD78D5F4C989E3AC3D13C86962031 /* UIWebView+Rx.swift in Sources */, + 9B3B0ED2E9F154B5977CB94BA17B6EED /* URLSession+Rx.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 67537850D371681C74189E97501CC024 /* Sources */ = { + 5A55BFDDFD3414CCF35AAC4CD5C956CB /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BFB25A8B1F021C44F3D4785F0DC18ECC /* Pods-RxMKMapView_Example-dummy.m in Sources */, + 02AC8D34AE02E82A7867F77290FFAD05 /* Diff.swift in Sources */, + 67A3B9F72BFF446447D5CA139F3B1567 /* MKMapView+Rx.swift in Sources */, + 7E585956462B20DC366314706D9D6A7D /* RxMapViewDataSourceType.swift in Sources */, + BDF4F82F7E167CA937BC70567149A0BF /* RxMapViewReactiveDataSource.swift in Sources */, + FBFCDF7E2A934BEE60F430F5F42C26EB /* RxMKMapView-dummy.m in Sources */, + E2441200FBE9FDFA8925666C9D2EB1F2 /* RxMKMapViewDelegateProxy.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 7EE61A91601527CCAF8BE7F501A6562F /* Sources */ = { + 6C064D2179D74E0A8FE09F0CFEC7363B /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 5D94FFA4AABCD97FB7130E66556C6045 /* AddRef.swift in Sources */, - EC00CA766947E28DDDB5DF458427173C /* Amb.swift in Sources */, - ACC433AD262C91648FAFB7FC1ADC4E70 /* AnonymousDisposable.swift in Sources */, - DDB01B378549A50346B2B8E1746EC017 /* AnonymousObserver.swift in Sources */, - 68F20AD8FC3F041111B4E3F51D035553 /* AnyObserver.swift in Sources */, - 715B3248813BA0526A30AEDCC3137EC5 /* AsMaybe.swift in Sources */, - 130327450E0BBAB0D5C9BE12107D2DEE /* AsSingle.swift in Sources */, - F4ED52E0C4D1766236A1A35E5F9110B4 /* AsyncLock.swift in Sources */, - 2CBA6D896A15C4D44D488755258F0A5E /* AsyncSubject.swift in Sources */, - 420B3CB189B6A0D12A3CDBD3826C75D8 /* Bag+Rx.swift in Sources */, - A12B02EFCFB425F2B3BF808109C8CE72 /* Bag.swift in Sources */, - 1DC861F26CD7451BD87B988701C330A0 /* BehaviorSubject.swift in Sources */, - 8A290EBB9B0B234D59B3920BEDBF7DA3 /* BinaryDisposable.swift in Sources */, - 36EEE813A1EAEFE1FD7C0F10985428E5 /* BooleanDisposable.swift in Sources */, - 814607AA36BF49295481620E9A1F9F4D /* Buffer.swift in Sources */, - 2A5EF4015D76CC544AD01C19A78DA538 /* Cancelable.swift in Sources */, - 054F99AC8F403072E25EA85977E19907 /* Catch.swift in Sources */, - FE71D9655A9F555C5FB729E0B500DB0C /* CombineLatest+arity.swift in Sources */, - 7AB20447ACA18716CC90E53393233776 /* CombineLatest+Collection.swift in Sources */, - 16A82CD5C02B9F8B7FDC0C5DC1F617C9 /* CombineLatest.swift in Sources */, - 38F17F4EF6C7FC21DDED39B2130F5C48 /* Completable+AndThen.swift in Sources */, - 3A020AFD549EA3F99AD020B50CF7D615 /* Completable.swift in Sources */, - 73B274A0814F151E92CA576842AA508B /* CompositeDisposable.swift in Sources */, - 27E5512CE04DC5EF16234719E26DDC65 /* Concat.swift in Sources */, - 3CA104987C92F1680ACACCFDFA5B7A17 /* ConcurrentDispatchQueueScheduler.swift in Sources */, - 724B0E3D84B958E66A98BB5AAFF98CBD /* ConcurrentMainScheduler.swift in Sources */, - 0B02DA2E21C92C2C1FE02A4648C9A68E /* ConnectableObservableType.swift in Sources */, - AF551FB7ED02F2334DAEA55E5F02026B /* Create.swift in Sources */, - 4DED817A1C5A0E3B06B985A5CCD72FDE /* CurrentThreadScheduler.swift in Sources */, - 94749C40BEF77A8735D536318E8E4A78 /* Debounce.swift in Sources */, - EFACA8C94C20A2A09778EFFE0365638E /* Debug.swift in Sources */, - 6CEAF87E4BCC1AC37C5C1CB0466CC585 /* DefaultIfEmpty.swift in Sources */, - CA8E5BB6718D7DCF88AA0FB1C01D78D9 /* Deferred.swift in Sources */, - 12D0413DEB38FA8F77735CC8478C9DC7 /* Delay.swift in Sources */, - CB7EDBEADC38A5536BB5B989B56AD25B /* DelaySubscription.swift in Sources */, - B06E65F7471D7C4EE941CC47E5A00FCE /* Dematerialize.swift in Sources */, - B5963EC68C31BC5419F08DDF3D69AD58 /* Deprecated.swift in Sources */, - 311E51DF11C6D2AA6CEF63653F6AC00E /* DispatchQueue+Extensions.swift in Sources */, - 42319CB720A999A0DC9D1B88C754B099 /* DispatchQueueConfiguration.swift in Sources */, - 836CF9AB97637DD239AC1C619B5609F7 /* Disposable.swift in Sources */, - F09EE1E230FDF32E88B4C78A2A98AAF4 /* Disposables.swift in Sources */, - 4929D102C11C8148212D4DE1F6CC93D2 /* DisposeBag.swift in Sources */, - BBF5DCDDBEE545193F71FDB60F0769CB /* DisposeBase.swift in Sources */, - E7C00FE346C8B71656975C3C9C649969 /* DistinctUntilChanged.swift in Sources */, - FEE02B6543EE459339029D5DF3F19709 /* Do.swift in Sources */, - 070D7ED4136F83B9B6E36D3918C3B02F /* ElementAt.swift in Sources */, - 207051DB89DB593B430DB4440C040198 /* Empty.swift in Sources */, - E13FB1B2BB43218B6F4E3A28C1EADC21 /* Enumerated.swift in Sources */, - BA8EF621971178E54C65106561A7BE7F /* Error.swift in Sources */, - E60C961AF9452140D816FDB61688B4D0 /* Errors.swift in Sources */, - 5FAD910A2D000006C40DD49581737EF6 /* Event.swift in Sources */, - 9200E1D16B8E5E26E05864A7587EEF16 /* Filter.swift in Sources */, - 9A924C4AED797F3326FD01E98897D857 /* First.swift in Sources */, - 1CA36BC9589BC5AAD9FF6B70258D3802 /* Generate.swift in Sources */, - 30BBDE457220AF09DC18DE27E7C2BC46 /* GroupBy.swift in Sources */, - DFA422D52B556DB3DC0A54CD650A17CE /* GroupedObservable.swift in Sources */, - 3353656DE0EA030C3B6F942AE9421A0A /* HistoricalScheduler.swift in Sources */, - 5B437CDE415B119A53E50D5270EC6A90 /* HistoricalSchedulerTimeConverter.swift in Sources */, - 065C1E50F1850D196EAC7EA9D52E2CED /* ImmediateSchedulerType.swift in Sources */, - 65811EB444768F24C41D1E39D3D1BF11 /* InfiniteSequence.swift in Sources */, - F8DE5129ABA82B3B4B81CFA35CB7D876 /* InvocableScheduledItem.swift in Sources */, - 8467E32375423CB6552059C40BC44F54 /* InvocableType.swift in Sources */, - B7061425C1B01D5BCE2C362B09ACE922 /* Just.swift in Sources */, - D7F8421DF187BCFF0F85D932A521411A /* Lock.swift in Sources */, - 5EAA833B0A84778937D46D724ACC0317 /* LockOwnerType.swift in Sources */, - 7BFEB2E723B7520B3EF1FE06F6AD9D1A /* MainScheduler.swift in Sources */, - B43CEBD41AFDE48AC49832C0C32C5184 /* Map.swift in Sources */, - DDCBE43B6A87F63D57FBB2BF912550A1 /* Materialize.swift in Sources */, - 6AAA385B3AC2BD704DFA7C22E58F220F /* Maybe.swift in Sources */, - 9291D90AC499CABB538A521ED70EC5AD /* Merge.swift in Sources */, - C001A21B4E1AFF3C1153B72C6F77AF2B /* Multicast.swift in Sources */, - 6D506214CAE2B707C44C488C72AEC553 /* Never.swift in Sources */, - D6B76CC83E5F67FF2AAF0C952B27F644 /* NopDisposable.swift in Sources */, - 889DBA68652B1E70FB0FEE53E033C560 /* Observable.swift in Sources */, - 111A2983CB1B41D3288BED3B60119F4B /* ObservableConvertibleType.swift in Sources */, - B194A227A09455B5260FDD80CF60EB5E /* ObservableType+Extensions.swift in Sources */, - 26E5C06548DCD8DCE57D7921691B577D /* ObservableType+PrimitiveSequence.swift in Sources */, - 614BB3FB18A45E7C582F46AB418B0CFE /* ObservableType.swift in Sources */, - DCA7D7D81BF3676C81139BB23478C3C5 /* ObserveOn.swift in Sources */, - 5495E416E691A0E32DBE01DF9EF87EB7 /* ObserverBase.swift in Sources */, - C9A2674EC0B61614AC5E1C9F8118548C /* ObserverType.swift in Sources */, - 66AFAB4D747E0E7B770DFBD8837E8236 /* OperationQueueScheduler.swift in Sources */, - 63287118FFF5EC3EA2FAF4D58D1509BD /* Optional.swift in Sources */, - 7DF00D317AB743EF7634BAE2C501E7A5 /* Platform.Darwin.swift in Sources */, - 4AA2EB7E44FD9CE28C9722558DDAE4CB /* Platform.Linux.swift in Sources */, - 232D688C4BFD686C6433AE1CE465D9D4 /* PrimitiveSequence+Zip+arity.swift in Sources */, - 48DD2650E215FC493EF12B88A98F98B1 /* PrimitiveSequence.swift in Sources */, - 6020D7A56C785CC895924354A5452CED /* PriorityQueue.swift in Sources */, - 1C2FBCCDBA46A862BA1D4A7D45AD0EB7 /* Producer.swift in Sources */, - 8BBADBD319095457C3AB3FF4A3F57D88 /* PublishSubject.swift in Sources */, - 7B70091DFF9B022094083786F41CE847 /* Queue.swift in Sources */, - 25DFD1F153F71481AC82A2C361FF0372 /* Range.swift in Sources */, - 78E2F6A5E4FFE94298E7A9E051FE9DB7 /* Reactive.swift in Sources */, - F38DA63BA53B2547EAAE701E425F172F /* RecursiveLock.swift in Sources */, - 673A0AF2FD4BD747E278BE7D578B42BF /* RecursiveScheduler.swift in Sources */, - 4108AACA9E52903DCF04049B47CF5F1A /* Reduce.swift in Sources */, - 7AEB5A0CF4E452DD15F0F7CAF8925DAF /* RefCountDisposable.swift in Sources */, - 90DF3B7CB40A055BE0D07CB9575BC899 /* Repeat.swift in Sources */, - E9F0305B761E6FDE8B17A2AC7E511EB4 /* ReplaySubject.swift in Sources */, - 3F18B3E0415940B52952F443E2024A1A /* RetryWhen.swift in Sources */, - 61EE0B8020A1482B8C6CD020506F49F5 /* Rx.swift in Sources */, - 4BF42525733808050BB91AD8483C45AA /* RxMutableBox.swift in Sources */, - 4226D75F1915DE9550A5E056B8072900 /* RxSwift-dummy.m in Sources */, - 168D9A058738D6C9993A50713D2D6BAB /* Sample.swift in Sources */, - 02B5E9732B0597CFAB3A04977462E2F0 /* Scan.swift in Sources */, - 0DFE7676A1199A1FE7C0DB6C003E3704 /* ScheduledDisposable.swift in Sources */, - CFE49DF084F98B5B1E22D1F6B93A1381 /* ScheduledItem.swift in Sources */, - 8CC8471C7ECC1C1E62FA1B17A04F76AF /* ScheduledItemType.swift in Sources */, - C7424C178F23FFC47DAFEDA8ACC80F0C /* SchedulerServices+Emulation.swift in Sources */, - D18C1D5B6F43AF4E4E3C1F418CC23F20 /* SchedulerType.swift in Sources */, - DEF34030603552BD671F8668DD3895C8 /* Sequence.swift in Sources */, - 7B53A98FFB00D0EED937BF4696DD19F6 /* SerialDispatchQueueScheduler.swift in Sources */, - B7E7573918FA460B6393838CF7BAB9B5 /* SerialDisposable.swift in Sources */, - 7122A200088745F416691B663A17C25B /* ShareReplayScope.swift in Sources */, - 290203D5476B3943E953F206E5F1F9AF /* Single.swift in Sources */, - 97909F4CE823E60E8BA8B5D05D67C1A4 /* SingleAssignmentDisposable.swift in Sources */, - 2A5805BED8161EF0719F2CF375A4937F /* SingleAsync.swift in Sources */, - D8240773C6EECDF2700ACB3B73E853E5 /* Sink.swift in Sources */, - 36D947681DEE07CCD64A6B6FD1C41335 /* Skip.swift in Sources */, - D2C47ACB269C40C400F21DA098EA765F /* SkipUntil.swift in Sources */, - 03CAE65890BB7FB09CC6F53219272270 /* SkipWhile.swift in Sources */, - 5E003339094F0C77CDE3F5E2271C852D /* StartWith.swift in Sources */, - 2464E38E34F8FEA5CFDB169122D5E432 /* String+Rx.swift in Sources */, - 4E25C9575A1F4B388BF7396F7219068E /* SubjectType.swift in Sources */, - 6D83237A7987B647C45F583491DB0D5F /* SubscribeOn.swift in Sources */, - 9CE2108AB2D09414F057A131A5B0EDD7 /* SubscriptionDisposable.swift in Sources */, - D339B4B419850EEE628E324CC59F0867 /* SwiftSupport.swift in Sources */, - 850E0780F3FDF475FF30A9E79F0C61A8 /* Switch.swift in Sources */, - 5539F9A6DE9D81FC6D4DE82A595AD8F8 /* SwitchIfEmpty.swift in Sources */, - 830A732E8716E19F8890EF04BF60A3B8 /* SynchronizedDisposeType.swift in Sources */, - F1B3E29C80D94651EC2ED01815B67885 /* SynchronizedOnType.swift in Sources */, - A458D1AA0CBB49E1954FC86B565F8DB5 /* SynchronizedUnsubscribeType.swift in Sources */, - 427E3E062F9EDEC1DA1102A90A648762 /* TailRecursiveSink.swift in Sources */, - 78AB9827FB5C73DBD5A81AFD1E1236BE /* Take.swift in Sources */, - 9F4D91DC8F751A7B5F1C67BB60A8D9BC /* TakeLast.swift in Sources */, - 86DF2A9A24E6E870DEDCCA884DB91304 /* TakeUntil.swift in Sources */, - E4A6B0ECB28F6B586CEF82C9F29ED880 /* TakeWhile.swift in Sources */, - 5975574B707D2DD349975FAAA376A488 /* Throttle.swift in Sources */, - 7F3B1CE5E55EC749F1EE3744D825D48E /* Timeout.swift in Sources */, - 10C4DE15505AFDD610A393CE37CFEB57 /* Timer.swift in Sources */, - 0C6738BAFB3381BF8A1D1309DB091415 /* ToArray.swift in Sources */, - E673EBC58E438ACF37C96193CCB47894 /* Using.swift in Sources */, - 331F79C045478607925C01CB582A8050 /* VirtualTimeConverterType.swift in Sources */, - 3FBDF6A92F5322975F8CA60443100C2E /* VirtualTimeScheduler.swift in Sources */, - 268819487BE8080917EACC6F94481F9B /* Window.swift in Sources */, - 77DA9915F02023ADA79C3B881824C1BA /* WithLatestFrom.swift in Sources */, - 85EE1B34B87B05FC5943797056984E6E /* Zip+arity.swift in Sources */, - F34E8F109AFA8C14BC8E4BFA9731DAF7 /* Zip+Collection.swift in Sources */, - 9D080F8C44EA90DC2116C94760408050 /* Zip.swift in Sources */, + C5EFB3287D6C01E8900985F15E4E6A4B /* AddRef.swift in Sources */, + D7A8CB85B30291D6F4A55D9DCC03721E /* Amb.swift in Sources */, + B5AB8B702EAF6D2126E6AEDF05D03CA5 /* AnonymousDisposable.swift in Sources */, + C52D3816C70A74B136254CEAD67DE10E /* AnonymousObserver.swift in Sources */, + 4E53003C51114422B2EE9334E8CC3F76 /* AnyObserver.swift in Sources */, + A0F9D713CD52B434F1AF5A7CCD217F7B /* AsMaybe.swift in Sources */, + 1E8C6C8FAC08C50644A0C8DCBAAD96F6 /* AsSingle.swift in Sources */, + 747AF18E60FD3750E9FC4B5377C7BFAA /* AsyncLock.swift in Sources */, + E89CB2BD24A6F90E764E4123F80B9932 /* AsyncSubject.swift in Sources */, + 7FEF9A538FC5AE9AE1C19C755B2EAAC6 /* Bag+Rx.swift in Sources */, + 645EA7F3B1FCB04BD55195A86D24E693 /* Bag.swift in Sources */, + 960A9265CE35E79E570138D5F07D8B42 /* BehaviorSubject.swift in Sources */, + 64FB3159539E3AE0E0BFF7890347A04E /* BinaryDisposable.swift in Sources */, + 4C184367B3DC060B393DF0D0C3B3D9B1 /* BooleanDisposable.swift in Sources */, + AAA3873F2C3F3F948A60F44B791EFBAD /* Buffer.swift in Sources */, + F6DDC69804C5BD9E272CA110040520C3 /* Cancelable.swift in Sources */, + C273992EAF0FF634BD1B48F994129D0B /* Catch.swift in Sources */, + 6E3A6EDFCF0011CA4EA93D1EC556DE1D /* CombineLatest+arity.swift in Sources */, + 7340B637AD8B1C89BC9228FCB5C41D85 /* CombineLatest+Collection.swift in Sources */, + E231385778630FD0117827383CD51505 /* CombineLatest.swift in Sources */, + 1191E66C999F7C88874A7910B01A5F8D /* Completable+AndThen.swift in Sources */, + ECFEDFC5154AFD9B7E605A75AB984D0D /* Completable.swift in Sources */, + D701790A4F782D619EC8E06858D8B2ED /* CompositeDisposable.swift in Sources */, + D174EA14F6D997FAFA6BE31BEFE5DFFF /* Concat.swift in Sources */, + F0CABA7192098E7FF25406F31231D14D /* ConcurrentDispatchQueueScheduler.swift in Sources */, + 6FC99ED6DEE81BBB6469E480873CD755 /* ConcurrentMainScheduler.swift in Sources */, + DBCA4538E2B19C8F94D7BB71FD77EEA5 /* ConnectableObservableType.swift in Sources */, + 3B7A5E70F0D1FA76F11FD67C2FB6D4BB /* Create.swift in Sources */, + 63D1BA68FB7608185B599906A1E240F6 /* CurrentThreadScheduler.swift in Sources */, + CE17990E55800B1E634B3463ADB345E7 /* Debounce.swift in Sources */, + DFCA23A9DDE8CF99697C24A41EBD5E03 /* Debug.swift in Sources */, + A5CF3835E5C61039CD114781F5F2410B /* DefaultIfEmpty.swift in Sources */, + 0F912A767F4C9FA6F5C1E3EADE759F54 /* Deferred.swift in Sources */, + 4A135D657F0D5288E30ED52ADA0F4BCD /* Delay.swift in Sources */, + D9EE1722524083D7203E18829B727305 /* DelaySubscription.swift in Sources */, + 61108B36BAA6B79529FBE95D35161706 /* Dematerialize.swift in Sources */, + D462BDF272F4929288EC001245C04427 /* Deprecated.swift in Sources */, + 9478FE069D4D80B055E233AED42BB5F7 /* DeprecationWarner.swift in Sources */, + 7312D076F9F0DDA97CC42E05DC5A63CF /* DispatchQueue+Extensions.swift in Sources */, + E28DC35ED7C839C089D38B0BE3C89A5C /* DispatchQueueConfiguration.swift in Sources */, + 1058EADDEC8E41E31EAB9F1FBCD62E6A /* Disposable.swift in Sources */, + 7FCD7ED7B825589C20A9ACEC01F6F21B /* Disposables.swift in Sources */, + 72CC5D68849E7B7E65E1497E9712F65C /* DisposeBag.swift in Sources */, + 00C8D087DD7EF353D55DD77637F308D7 /* DisposeBase.swift in Sources */, + E1C50AB53BCD67E62BF09ED4A4254965 /* DistinctUntilChanged.swift in Sources */, + F88E1CA81BA0A6B8700B47152471C347 /* Do.swift in Sources */, + FCF03DE8169521B543CEFC4E30F90DB8 /* ElementAt.swift in Sources */, + 4287E89D0CFC8036A261640C15CEC20D /* Empty.swift in Sources */, + 1EEA072D28DF96B910F22D28C05D2B5A /* Enumerated.swift in Sources */, + B8E8F3D361B1A5AFEDABD01D8BDC21FE /* Error.swift in Sources */, + B9BB8971CA3CC93266F84195687AE26B /* Errors.swift in Sources */, + 36351015A75EFC7F9FF18A1B82C5596C /* Event.swift in Sources */, + E7EF33F26D1766ABC1102E110FF0822E /* Filter.swift in Sources */, + 4FA89C518BF3036F8121CD954181D7F3 /* First.swift in Sources */, + 6FAB15C5B23AE2C79B2CBD7553F855E5 /* Generate.swift in Sources */, + 5329C425C85023C6194860D3932CE24D /* GroupBy.swift in Sources */, + CF3CA9443F7B4E488F953BBB85D804EB /* GroupedObservable.swift in Sources */, + E0116C6359F05DD7085CD0AA22264292 /* HistoricalScheduler.swift in Sources */, + A8EDD4009041322F9EED6984B2A59691 /* HistoricalSchedulerTimeConverter.swift in Sources */, + B1AF0020BE33944A3FFF6528434BDB55 /* ImmediateSchedulerType.swift in Sources */, + 247C8B2021F483F1C215E44A7A5C9FCF /* InfiniteSequence.swift in Sources */, + DF44C052C9560633DA6549EBF8DD0F48 /* InvocableScheduledItem.swift in Sources */, + 4CEFBFDDC8843E172C3FBF8D0856C4CD /* InvocableType.swift in Sources */, + 9BBB1447F37B457CE95AEFAFB3DB96F0 /* Just.swift in Sources */, + EAB4F54242464C1AB58E8D62742F44C0 /* Lock.swift in Sources */, + 2F35DD2BA6D11C197563C61F57123849 /* LockOwnerType.swift in Sources */, + E16B502C01E424E44D2E0ABC039CB447 /* MainScheduler.swift in Sources */, + 52E064959D89DDAC37D65067E929C1F9 /* Map.swift in Sources */, + 57F649E6DED1A524CEFAEB4C1890912F /* Materialize.swift in Sources */, + F0D850B3A1D5808475040F3CC6DDF713 /* Maybe.swift in Sources */, + 8C1ABAA156F9BAC73863FF5F855D63CB /* Merge.swift in Sources */, + 867F7B36AD1C76C6A26A33C0CB0412D0 /* Multicast.swift in Sources */, + 747CC37CB5D94291622F4CF5F76466B9 /* Never.swift in Sources */, + A849758458EB96FA26111436601E4362 /* NopDisposable.swift in Sources */, + A865DE08EB59EB71E980465C0910D02A /* Observable.swift in Sources */, + 97AA09FF4CF5271151D77B6ADA636064 /* ObservableConvertibleType.swift in Sources */, + AEF9C97CFC78FB86A0C77F11AD7B5290 /* ObservableType+Extensions.swift in Sources */, + 6041D9B4A6717C1C78E4E7E30E9D0140 /* ObservableType+PrimitiveSequence.swift in Sources */, + 201D861CB4169D509084DE2C9663FE62 /* ObservableType.swift in Sources */, + 95970B006A23BA9EE3D61E8240937E8A /* ObserveOn.swift in Sources */, + FD2C97620E696C4CEFA84A6098E4968B /* ObserverBase.swift in Sources */, + 8B7CFD9555014F44D7468176B2A9ED93 /* ObserverType.swift in Sources */, + 4B49A3175275B7A803ED5883033EDDCA /* OperationQueueScheduler.swift in Sources */, + D689D83130AA170F2CA6E0B03AD928A2 /* Optional.swift in Sources */, + 2AB10F7032AE760CBA0EE69DADC5EE67 /* Platform.Darwin.swift in Sources */, + 7CBB544D4E1F3BC56560703D30EDB3DA /* Platform.Linux.swift in Sources */, + 70510E5F95BE0655972BD16F73FF1C1C /* PrimitiveSequence+Zip+arity.swift in Sources */, + 625B39944EC97EEB38B5CDC1A9D22A49 /* PrimitiveSequence.swift in Sources */, + 8C0B6B887A3334EA9EF2724F5CEB05C8 /* PriorityQueue.swift in Sources */, + 519B45D8CC50DE9365E67948419D2445 /* Producer.swift in Sources */, + 88157AC9FB851538AB83AD1F75B3BE2E /* PublishSubject.swift in Sources */, + F65E51233509ED5130444CFEF43AFF9C /* Queue.swift in Sources */, + 4E0ECB6814A82CB106CCA4C9E45DFE2E /* Range.swift in Sources */, + A8D10ED0B19301B3909EEB014A8CB7E4 /* Reactive.swift in Sources */, + 0D8F9344F9CB22A58A26AD787AD6E06A /* RecursiveLock.swift in Sources */, + E558C1C13AA4B7CAF916991D7203187D /* RecursiveScheduler.swift in Sources */, + ED6ED9179428840AD351D09AFC0A3AE9 /* Reduce.swift in Sources */, + 1F61FE59D21AF0F2E30712ACA4FAD2F3 /* RefCountDisposable.swift in Sources */, + B3CA04763F3F0100476B4A37A5B1A579 /* Repeat.swift in Sources */, + D114A296A9BF572E4E1A06CC4ED3309A /* ReplaySubject.swift in Sources */, + F9EFC8A4308D4EF5689A71ACE8CC9326 /* RetryWhen.swift in Sources */, + BF4F6F36A37091C7AEFF227CEE2FC14C /* Rx.swift in Sources */, + 42BC6495DF9B726937EEAD67DDD524FF /* RxMutableBox.swift in Sources */, + B2FD2CF51CCB4882F99DBE6AFC5C6454 /* RxSwift-dummy.m in Sources */, + D48EA1AA357A869EB9A42500F959BC44 /* Sample.swift in Sources */, + 09278839958CB988AD0056902500C26B /* Scan.swift in Sources */, + E75A419BEE2D27A2467030E5C4FDBEBA /* ScheduledDisposable.swift in Sources */, + B8FA927DCECE29DCC5371CFB8AC9C127 /* ScheduledItem.swift in Sources */, + CC16681CC9B2BCBCF5A8F6C2C8547B38 /* ScheduledItemType.swift in Sources */, + 1F46A0D7F14CFDA079422BB37EB2CD6A /* SchedulerServices+Emulation.swift in Sources */, + B907F2C20ADA9E0DC16B22591E7FE0C2 /* SchedulerType.swift in Sources */, + 73F9FC167F033183335E9B8998A4F8D7 /* Sequence.swift in Sources */, + 7F319E70C4705A6859612C6FEB70A01F /* SerialDispatchQueueScheduler.swift in Sources */, + 752F4B32C0BE1DB0FDE0C16ADB8D8726 /* SerialDisposable.swift in Sources */, + C2451CCA2EDA923E2D0BD886C034D059 /* ShareReplayScope.swift in Sources */, + B406A7AAB18E0DD8CD1DD300E07E7601 /* Single.swift in Sources */, + 3D6CAA319C7143706A467C81D9D5C2A4 /* SingleAssignmentDisposable.swift in Sources */, + 5958680418DDB873DE18F69A07534582 /* SingleAsync.swift in Sources */, + BABA0CF4793F0878536FC4B1D9307E9C /* Sink.swift in Sources */, + 75CAE731E5CB8D81D68363AE5A5A74DE /* Skip.swift in Sources */, + 33F87C55AFB54199DBE9743711EC8233 /* SkipUntil.swift in Sources */, + 4CA5971E17C350A2BB5683ED6E8F3298 /* SkipWhile.swift in Sources */, + 87525F8D1E424B610D72D63F3CD5C611 /* StartWith.swift in Sources */, + 90A4A70942F83684C4099FC571105790 /* String+Rx.swift in Sources */, + 35ED4A179BA8E8187A74DA8399D4CFE9 /* SubjectType.swift in Sources */, + 80B56724780400229A4EFB352F37993E /* SubscribeOn.swift in Sources */, + 5E7962168D7490244014B6EF165E26EF /* SubscriptionDisposable.swift in Sources */, + 4F5B808A67A60F9FCBC9B8BF8AD3283C /* SwiftSupport.swift in Sources */, + 1E4403CA3EDDD22E3A3683EC77F71423 /* Switch.swift in Sources */, + 036ECA29CC4260CB95D9EA40F80CF95B /* SwitchIfEmpty.swift in Sources */, + 93E91B7A73113C539B2CCA3E07F65C7D /* SynchronizedDisposeType.swift in Sources */, + 822D0077C8698AC306C9518E5CFE3E52 /* SynchronizedOnType.swift in Sources */, + 717EA1743D5B966CD5F5E6DE56AC91F2 /* SynchronizedUnsubscribeType.swift in Sources */, + FE003BEE48D9DB1CD296F43EA2119457 /* TailRecursiveSink.swift in Sources */, + 293B52439E29B182500967A89E2C30C8 /* Take.swift in Sources */, + A1619F373D70F6BB7626398838B4CB52 /* TakeLast.swift in Sources */, + 8D00C5ED7C3D7D4459F2B96AC3567C96 /* TakeUntil.swift in Sources */, + C9F14A108BFDCA29717F0CC543FAD84B /* TakeWhile.swift in Sources */, + 3DE6A638FA70E53228D51F1EA64FBC23 /* Throttle.swift in Sources */, + 2B41D688AB9690AC80FAB43385822E71 /* Timeout.swift in Sources */, + 69F0F0C4520CBAB5302A97EAE61027F6 /* Timer.swift in Sources */, + 335AEDFB726ACE6876BC2B62C051ED46 /* ToArray.swift in Sources */, + C1626A51AA5DADEC5B0E7B394E2B6ADE /* Using.swift in Sources */, + 76A07244E332E8A933D2B77A3868F9F9 /* VirtualTimeConverterType.swift in Sources */, + 0AE808488F895F83752D7F93E926C1A8 /* VirtualTimeScheduler.swift in Sources */, + 7C12F7D573B443DD63CFF8123A4B15A7 /* Window.swift in Sources */, + 08E35C6CB104C0F728DB9966850E3F00 /* WithLatestFrom.swift in Sources */, + D5EE3BE4F8CE57070CC2F5B7FE94857E /* Zip+arity.swift in Sources */, + B4F5F5CD743C6B4CB751475765A07310 /* Zip+Collection.swift in Sources */, + CA31BDF6F17B1E3B88CDBECC2E3F0381 /* Zip.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - D51A726D83FEEB053564AC5FA288D78D /* Sources */ = { + 8777311AF4E12B72BD02FE878554AC11 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 55D297356033394EB0C444124ED68350 /* Behavior.swift in Sources */, - 84279E9538114DCA742D941B3DA66C8F /* Callsite.swift in Sources */, - 4B48ED3B3CCE7E56EE03FDCC14BB2B80 /* Closures.swift in Sources */, - 1B6E5FDF2DDEBA2F86EBE293CB22B5F4 /* Configuration.swift in Sources */, - 8E210AC0562E691E85E8B47340C2FA64 /* DSL.swift in Sources */, - 376BFE15AA17C0C11BAC42B7AE55691C /* ErrorUtility.swift in Sources */, - B6313B9F4D5B977C17595F370B8091CB /* Example.swift in Sources */, - A73970FD1201B2E49C86DEEED24D2F3C /* ExampleGroup.swift in Sources */, - 4A68FDA236889487857E87031714FD1D /* ExampleHooks.swift in Sources */, - 11E58F6808B6312D7E1223454F47896C /* ExampleMetadata.swift in Sources */, - BADE7B2AF0B08D41497900E71F2605CB /* Filter.swift in Sources */, - A9400C8C0CE699F620B88F23B3F0A0B9 /* HooksPhase.swift in Sources */, - 5D5535765EC68FC187F833DFB79C8817 /* NSBundle+CurrentTestBundle.swift in Sources */, - 30B5E337C5900489CA616222D0D76401 /* NSString+C99ExtendedIdentifier.swift in Sources */, - 59B995065824CC9CE019C12ED2030FC6 /* QCKDSL.m in Sources */, - 19CEB2A5BBA8CE983F6F7DA76D2675AA /* Quick-dummy.m in Sources */, - 74E0AFCE55116282B4FCF5D273607E7B /* QuickConfiguration.m in Sources */, - 120358F75C78CB226D764D203C21B3C1 /* QuickSelectedTestSuiteBuilder.swift in Sources */, - 719588FA0A5FAC127C6DB763A88BD85C /* QuickSpec.m in Sources */, - 1E12D86CA056613202AB38CE7EFF40FE /* QuickSpecBase.m in Sources */, - CE0039D46E0F5D331B4B0C8B23FCDBE0 /* QuickTestSuite.swift in Sources */, - 8318BC476C5F980ED4A1AE6266A4C0CE /* SuiteHooks.swift in Sources */, - 5DB11BB7DE298F0823D749D52C20E3D3 /* URL+FileName.swift in Sources */, - 5543B3E8C80775CCC14601F4304409F4 /* World+DSL.swift in Sources */, - 66BFE24B632C676127E34F7955D7C39C /* World.swift in Sources */, - 3EDEB204412923054F5AE75BB3A0A93B /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */, + 8EDCA454208C14AB871455A7BD4B5133 /* Pods-RxMKMapView_Example-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - FE6A681693A43BB8A05B76DDA8859871 /* Sources */ = { + 8EAADFB94CCE5757569BE4BDE1BBD884 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - F006D6913B1439AFF7151B8DBB20BEEB /* Pods-RxMKMapView_Tests-dummy.m in Sources */, + 5512C1EE1251131CAABF934E28D0F388 /* Behavior.swift in Sources */, + 9E9A3665CEFD6DC5061016E97E375865 /* Callsite.swift in Sources */, + C891B7743E7258664E09CB8DBC5F3134 /* Closures.swift in Sources */, + 82FB303EC52A78632B139DFB01161057 /* Configuration.swift in Sources */, + 4F01CD9621671351DCAC763461127D31 /* DSL.swift in Sources */, + D703DF085CB4E8AE3D8104F0ED5713D2 /* ErrorUtility.swift in Sources */, + 59561A7ACB6F84C230F27CA402CE1602 /* Example.swift in Sources */, + B0B2D3810E4BF1BE221ABE34E4F10722 /* ExampleGroup.swift in Sources */, + 7AFF93411D7B3E3252750A5118AE8116 /* ExampleHooks.swift in Sources */, + E750A7C95DB25DA9093E34DA32C2A97F /* ExampleMetadata.swift in Sources */, + B007772ECC4C8BA918F59F7848F59366 /* Filter.swift in Sources */, + 400FA546C01621882DBCC7BFF3E58042 /* HooksPhase.swift in Sources */, + AA5FD86EF6000DB4BD919E1483E4FE4E /* NSBundle+CurrentTestBundle.swift in Sources */, + ED45A78836ED4283C0ED2654BE17595E /* NSString+C99ExtendedIdentifier.swift in Sources */, + FEB8AB7193CC1FC12C784F6BBCD4F3FD /* QCKDSL.m in Sources */, + FA117239A8A28F62233CF218B45A2192 /* Quick-dummy.m in Sources */, + BC4E66FA3711B6738C79D8A145841ABB /* QuickConfiguration.m in Sources */, + 1D7BF207CA868C1BBFB0250681FEB248 /* QuickSelectedTestSuiteBuilder.swift in Sources */, + ADD8CAF89D3E877E3A6D087FBB60F29E /* QuickSpec.m in Sources */, + 3D6CD5D2AAF704156B2A577DEDEE457D /* QuickSpecBase.m in Sources */, + 13B41651161139B2A6392EFAA21173C2 /* QuickTestSuite.swift in Sources */, + 8CF9D1089C80FC0A815CD3947F69E22E /* SuiteHooks.swift in Sources */, + BA5A31C5FE92F282AB096A116B035064 /* URL+FileName.swift in Sources */, + 2371FBA1346BC5FE8CF523141FD0E623 /* World+DSL.swift in Sources */, + 313A3BAA918111DF057CF764CD4A9B76 /* World.swift in Sources */, + 3329B4ADF9072746E18145D51E22FD46 /* XCTestSuite+QuickTestSuiteBuilder.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 00E529BDDB658243D5C264F8A3C0DD71 /* PBXTargetDependency */ = { + 1CCA210C7A6A011A104F0A01282E15BA /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = RxMKMapView; - target = 00491D7CF395B5626D63A9660278566F /* RxMKMapView */; - targetProxy = 1E341F313E43520363B9389B9576D611 /* PBXContainerItemProxy */; + target = 6359FF11AB8FFF5E949A8E1BEF286406 /* RxMKMapView */; + targetProxy = 00E96F7DD70D1F1349CBC617AF5A2B8A /* PBXContainerItemProxy */; }; - 1E670C4C7BAE566B1D64E36008860D23 /* PBXTargetDependency */ = { + 2D98FA0820348E526D7AAFDDDA5F5FDC /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = RxMKMapView; - target = 00491D7CF395B5626D63A9660278566F /* RxMKMapView */; - targetProxy = B1ABA17960EA00D5104BA53BF41917D0 /* PBXContainerItemProxy */; + name = RxSwift; + target = 5093E7052ADCB1287968944413FE437C /* RxSwift */; + targetProxy = D3A4B8F42DFDB0260FFEFA207D2F96D5 /* PBXContainerItemProxy */; }; - 6498B1B4B8A4C97B9AF861A6EB29B665 /* PBXTargetDependency */ = { + 34E7216C098B740E6C8E2FD5FA9C6478 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = RxCocoa; - target = 36EDDEBF0F2D8C516246FCE7E453B6C4 /* RxCocoa */; - targetProxy = 864304476BC5D84AE3282E94FBB2B8D1 /* PBXContainerItemProxy */; + name = Nimble; + target = 5E269AA9A7FBCB9BFD8EA487B43AE7F9 /* Nimble */; + targetProxy = A000B9CCBCC7AA04BA410AAD856EFEB3 /* PBXContainerItemProxy */; }; - 7A54FE6248AC7D40579D1C20DBCC3E9E /* PBXTargetDependency */ = { + 4DCFBA5D8CD6AC70E94FF51320008FA2 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = RxSwift; - target = A9C37DB713A7999DB983BB80FD3FB70E /* RxSwift */; - targetProxy = 1627D3753A8025F973679825C02AD7AA /* PBXContainerItemProxy */; + target = 5093E7052ADCB1287968944413FE437C /* RxSwift */; + targetProxy = 8AB4FAC4A97820B8C2715EC71B64FFFA /* PBXContainerItemProxy */; }; - 7BAF109597B3AF2E5CBC72BF0EF594BD /* PBXTargetDependency */ = { + 7128934A3362CB8C68EDDAD0D9419DC3 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = Quick; - target = 6838D959625438AC281741568C0CDB53 /* Quick */; - targetProxy = 89604EA64CD779F6CFE4E26DFF434B2D /* PBXContainerItemProxy */; + name = RxCocoa; + target = 67CA06FDD153FA42DE76DF6EA680D7E9 /* RxCocoa */; + targetProxy = 6EAC024A17565B807A831918F6302125 /* PBXContainerItemProxy */; }; - B22B181D6ED36E86C19C36EC1EED7636 /* PBXTargetDependency */ = { + 71C41E4A20D6F4DCFB4DD64435942184 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = Nimble; - target = DD7C8BF89FE8053D0A2A2D88BB49CF07 /* Nimble */; - targetProxy = BA49CE95B251073FF1E315A800A0DFBC /* PBXContainerItemProxy */; + name = RxSwift; + target = 5093E7052ADCB1287968944413FE437C /* RxSwift */; + targetProxy = 38AE84E0DE49D18604777D1D90534E40 /* PBXContainerItemProxy */; }; - B6978F66995C0E27889F1C16B7AE1CB6 /* PBXTargetDependency */ = { + 9590FD58F4CB1B916BB89582E2B08848 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = RxSwift; - target = A9C37DB713A7999DB983BB80FD3FB70E /* RxSwift */; - targetProxy = 9A52D65625AB1480E5FE9F312CF2CA84 /* PBXContainerItemProxy */; + name = Quick; + target = 4B36ECDDEF67C1536FC13D94E75C985D /* Quick */; + targetProxy = E33343CF90F253476AF82CFC37F1FDAB /* PBXContainerItemProxy */; }; - C6B8D8846EAEAD2283F48FD0DBCFE596 /* PBXTargetDependency */ = { + 960A20F68AA1110B79716F82FABFB6CE /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = RxCocoa; - target = 36EDDEBF0F2D8C516246FCE7E453B6C4 /* RxCocoa */; - targetProxy = A8B0388C0763067572CBBFA57F972971 /* PBXContainerItemProxy */; + target = 67CA06FDD153FA42DE76DF6EA680D7E9 /* RxCocoa */; + targetProxy = 6FF8B786442A43BB700998721ED62A80 /* PBXContainerItemProxy */; }; - CBCB0D8D9068BA9AB0CCF156806C14A2 /* PBXTargetDependency */ = { + B5A9A714E74C7A48ED6EBAD6B8F61AD5 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = RxSwift; - target = A9C37DB713A7999DB983BB80FD3FB70E /* RxSwift */; - targetProxy = EDCCCD2AD921ED9EA9D5458BA3F76187 /* PBXContainerItemProxy */; + name = RxMKMapView; + target = 6359FF11AB8FFF5E949A8E1BEF286406 /* RxMKMapView */; + targetProxy = FB6B0A80979E7CF3F87C46B30338DAF0 /* PBXContainerItemProxy */; }; - E5FD0E5B0F31E254579524502C2E85A4 /* PBXTargetDependency */ = { + B97B4694022B74D4814C370633858136 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = RxCocoa; - target = 36EDDEBF0F2D8C516246FCE7E453B6C4 /* RxCocoa */; - targetProxy = 38FB88A051EBD37F71F1284769F7EFA7 /* PBXContainerItemProxy */; + name = RxSwift; + target = 5093E7052ADCB1287968944413FE437C /* RxSwift */; + targetProxy = 172D91658A28504C4C316C2DDE76AE71 /* PBXContainerItemProxy */; }; - F94AA6B44DDE93BF3853A4056A46493A /* PBXTargetDependency */ = { + E80B868BAD0D226EF73296017067C09B /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = RxSwift; - target = A9C37DB713A7999DB983BB80FD3FB70E /* RxSwift */; - targetProxy = 767F4EA32329103B899D0372BB8A902B /* PBXContainerItemProxy */; + name = RxCocoa; + target = 67CA06FDD153FA42DE76DF6EA680D7E9 /* RxCocoa */; + targetProxy = DBB0C2CA4A5078AB16DCA4953682B735 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 1EE19F5DD95931924296F637BF18BD8F /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_DEBUG=1", - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - STRIP_INSTALLED_PRODUCT = NO; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SYMROOT = "${SRCROOT}/../build"; - }; - name = Debug; - }; - 2A758E0DF427F5D6DFFF9AC012511E95 /* Debug */ = { + 0C1B623AA15425C8108785B7CE76A3AE /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = E99D57734AC304FE6464C792E35B8BDF /* RxCocoa.xcconfig */; + baseConfigurationReference = 4CE3FF178889316CE0562F09792C2A8C /* RxMKMapView.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2378,28 +2394,64 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxCocoa/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/RxMKMapView/RxMKMapView-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxMKMapView/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; - PRODUCT_MODULE_NAME = RxCocoa; - PRODUCT_NAME = RxCocoa; + MODULEMAP_FILE = "Target Support Files/RxMKMapView/RxMKMapView.modulemap"; + PRODUCT_MODULE_NAME = RxMKMapView; + PRODUCT_NAME = RxMKMapView; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - 2ACADD2C4CBDEFF921631DEEF1A78FEA /* Release */ = { + 16EB0A98D24404AD14E6C0B6EEF65551 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FE02AFD73E68EBA1E3E29585CD22A2E1 /* Pods-RxMKMapView_Example.release.xcconfig */; + baseConfigurationReference = 89456EA5A36F58A80F10D6AD152DABB6 /* Nimble.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Nimble/Nimble-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Nimble/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Nimble/Nimble.modulemap"; + PRODUCT_MODULE_NAME = Nimble; + PRODUCT_NAME = Nimble; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 3129AA0ADCF8F02F98BF4536A756FA4D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 67B638EC53767B8C06926C8A81CAB289 /* Pods-RxMKMapView_Tests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; @@ -2411,12 +2463,12 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Example/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Example/Pods-RxMKMapView_Example.modulemap"; + MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Pods-RxMKMapView_Tests.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -2424,18 +2476,20 @@ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - 4FCCAEEAC0E0686A2AC3878A63EB4573 /* Debug */ = { + 3C73FC6D691959D2F8DD53E93ED97994 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5037D6015FCAFA99DFB53613DBEF6BE2 /* Quick.xcconfig */; + baseConfigurationReference = FE02AFD73E68EBA1E3E29585CD22A2E1 /* Pods-RxMKMapView_Example.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2445,28 +2499,32 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Quick/Quick-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Quick/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Example/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Quick/Quick.modulemap"; - PRODUCT_MODULE_NAME = Quick; - PRODUCT_NAME = Quick; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Example/Pods-RxMKMapView_Example.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - 5125FED474086CBB9391740C8BCCDFD5 /* Debug */ = { + 4DD2B5A74854553B6BC5F492ED71C8C1 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 74062BC9C1B536C27BEADC96EC6FEEFE /* RxSwift.xcconfig */; + baseConfigurationReference = 7A8882E41FC014FB825CFFC5A6E8E363 /* RxSwift.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2488,17 +2546,19 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - 5392107453FCA17D1E271A059A930B4D /* Release */ = { + 612D7191AE5334159ABC987636D8683A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5037D6015FCAFA99DFB53613DBEF6BE2 /* Quick.xcconfig */; + baseConfigurationReference = CC9F0676979CAEDD569F509CFD1749F1 /* Quick.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2520,18 +2580,17 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - 59CFDCABEA319A6E9D8076B58713F51C /* Debug */ = { + 6795C0BE4C19275D4C93886F4E77DF94 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = CA5A53F02102E5E3DA7EC05AD94FF828 /* Pods-RxMKMapView_Example.debug.xcconfig */; + baseConfigurationReference = 6D3D367A4A1BD4E536F725A1BB06AF21 /* Pods-RxMKMapView_Tests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; @@ -2543,12 +2602,12 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Example/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Example/Pods-RxMKMapView_Example.modulemap"; + MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Pods-RxMKMapView_Tests.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; @@ -2556,17 +2615,19 @@ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - 8D0623F678558CC270DA8A655B8AB899 /* Release */ = { + 69D740E99ADEFE05633F621B7CAEDD30 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = E99D57734AC304FE6464C792E35B8BDF /* RxCocoa.xcconfig */; + baseConfigurationReference = 89456EA5A36F58A80F10D6AD152DABB6 /* Nimble.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2577,31 +2638,29 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxCocoa/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Nimble/Nimble-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Nimble/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; - PRODUCT_MODULE_NAME = RxCocoa; - PRODUCT_NAME = RxCocoa; + MODULEMAP_FILE = "Target Support Files/Nimble/Nimble.modulemap"; + PRODUCT_MODULE_NAME = Nimble; + PRODUCT_NAME = Nimble; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - 9E93CC998A97FC6E9827BB31C25A0D42 /* Release */ = { + 70B2AC8BD891C9280848C913EC2BE96A /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 6D3D367A4A1BD4E536F725A1BB06AF21 /* Pods-RxMKMapView_Tests.release.xcconfig */; + baseConfigurationReference = 63B888CF34E0A7BB88FCD52656EBA433 /* RxCocoa.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2611,20 +2670,20 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Pods-RxMKMapView_Tests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; + PRODUCT_MODULE_NAME = RxCocoa; + PRODUCT_NAME = RxCocoa; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -2632,10 +2691,70 @@ }; name = Release; }; - AD8A60D0EAA1D267AB7E84F318AB6D97 /* Release */ = { + 96434B6C8FF320C976A10DAD7174A4BB /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4CE3FF178889316CE0562F09792C2A8C /* RxMKMapView.xcconfig */; buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Release; + }; + A207C0651A9B2B45F20436A8EEA53FA2 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = CA5A53F02102E5E3DA7EC05AD94FF828 /* Pods-RxMKMapView_Example.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2645,29 +2764,31 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxMKMapView/RxMKMapView-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxMKMapView/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Example/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxMKMapView/RxMKMapView.modulemap"; - PRODUCT_MODULE_NAME = RxMKMapView; - PRODUCT_NAME = RxMKMapView; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Example/Pods-RxMKMapView_Example.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - C1E2716332197374B72F76FCF7329F94 /* Debug */ = { + A5221AA425E28F6B7D4416238D78C72E /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 3E2C23ABE928456EE5E11CF2C5606FBD /* Nimble.xcconfig */; + baseConfigurationReference = CC9F0676979CAEDD569F509CFD1749F1 /* Quick.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2678,30 +2799,31 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Nimble/Nimble-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Nimble/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Quick/Quick-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Quick/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Nimble/Nimble.modulemap"; - PRODUCT_MODULE_NAME = Nimble; - PRODUCT_NAME = Nimble; + MODULEMAP_FILE = "Target Support Files/Quick/Quick.modulemap"; + PRODUCT_MODULE_NAME = Quick; + PRODUCT_NAME = Quick; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; - E1D89D1905CD57D95C54C3D5BACE11B8 /* Debug */ = { + B2DA1CCB0D61AE2818EA7FE4C5DBDE4D /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 67B638EC53767B8C06926C8A81CAB289 /* Pods-RxMKMapView_Tests.debug.xcconfig */; + baseConfigurationReference = 7A8882E41FC014FB825CFFC5A6E8E363 /* RxSwift.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2711,30 +2833,28 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxSwift/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-RxMKMapView_Tests/Pods-RxMKMapView_Tests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; + PRODUCT_MODULE_NAME = RxSwift; + PRODUCT_NAME = RxSwift; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - EBDCDE8FA2579C4376E0A0D6DED0F163 /* Debug */ = { + C28A34E6C9E308DD0C36CF7B5B868C09 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4CE3FF178889316CE0562F09792C2A8C /* RxMKMapView.xcconfig */; + baseConfigurationReference = 63B888CF34E0A7BB88FCD52656EBA433 /* RxCocoa.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2745,26 +2865,26 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxMKMapView/RxMKMapView-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxMKMapView/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/RxCocoa/RxCocoa-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxMKMapView/RxMKMapView.modulemap"; - PRODUCT_MODULE_NAME = RxMKMapView; - PRODUCT_NAME = RxMKMapView; + MODULEMAP_FILE = "Target Support Files/RxCocoa/RxCocoa.modulemap"; + PRODUCT_MODULE_NAME = RxCocoa; + PRODUCT_NAME = RxCocoa; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - F4568DEE257655D290C2B9CEAB37C934 /* Release */ = { + D11C82AF2204B41B80412B8DC9C1D652 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -2799,13 +2919,16 @@ CODE_SIGNING_ALLOWED = NO; CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_RELEASE=1", + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", "$(inherited)", ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -2815,49 +2938,19 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MTL_ENABLE_DEBUG_INFO = NO; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SYMROOT = "${SRCROOT}/../build"; }; - name = Release; - }; - F6C7FD1CB95173996EB13527E4F19689 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 3E2C23ABE928456EE5E11CF2C5606FBD /* Nimble.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Nimble/Nimble-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Nimble/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Nimble/Nimble.modulemap"; - PRODUCT_MODULE_NAME = Nimble; - PRODUCT_NAME = Nimble; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; + name = Debug; }; - F8D978526B7BD9CBA8FD4A09A07266B7 /* Release */ = { + EB70C16C5161092B4DB7E741D264AC3F /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 74062BC9C1B536C27BEADC96EC6FEEFE /* RxSwift.xcconfig */; + baseConfigurationReference = 4CE3FF178889316CE0562F09792C2A8C /* RxMKMapView.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2868,43 +2961,42 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxSwift/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/RxMKMapView/RxMKMapView-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxMKMapView/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; - PRODUCT_MODULE_NAME = RxSwift; - PRODUCT_NAME = RxSwift; + MODULEMAP_FILE = "Target Support Files/RxMKMapView/RxMKMapView.modulemap"; + PRODUCT_MODULE_NAME = RxMKMapView; + PRODUCT_NAME = RxMKMapView; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 052A3C187E668E8C902E04C5CB213600 /* Build configuration list for PBXNativeTarget "Quick" */ = { + 01DC4A6403818703B30CCF4C2591B864 /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Example" */ = { isa = XCConfigurationList; buildConfigurations = ( - 4FCCAEEAC0E0686A2AC3878A63EB4573 /* Debug */, - 5392107453FCA17D1E271A059A930B4D /* Release */, + A207C0651A9B2B45F20436A8EEA53FA2 /* Debug */, + 3C73FC6D691959D2F8DD53E93ED97994 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 0AAD51D06667CEEE540C86D562C04B04 /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Example" */ = { + 10836172B46B0B0B73CE062C21769FF3 /* Build configuration list for PBXNativeTarget "Nimble" */ = { isa = XCConfigurationList; buildConfigurations = ( - 59CFDCABEA319A6E9D8076B58713F51C /* Debug */, - 2ACADD2C4CBDEFF921631DEEF1A78FEA /* Release */, + 69D740E99ADEFE05633F621B7CAEDD30 /* Debug */, + 16EB0A98D24404AD14E6C0B6EEF65551 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -2912,53 +3004,53 @@ 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - 1EE19F5DD95931924296F637BF18BD8F /* Debug */, - F4568DEE257655D290C2B9CEAB37C934 /* Release */, + D11C82AF2204B41B80412B8DC9C1D652 /* Debug */, + 96434B6C8FF320C976A10DAD7174A4BB /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 381EDA2BB69A93B7E09EE0EAE48A4E7B /* Build configuration list for PBXNativeTarget "RxMKMapView" */ = { + 5B8D3DB4661DD835775FB9AFD41E2349 /* Build configuration list for PBXNativeTarget "Quick" */ = { isa = XCConfigurationList; buildConfigurations = ( - EBDCDE8FA2579C4376E0A0D6DED0F163 /* Debug */, - AD8A60D0EAA1D267AB7E84F318AB6D97 /* Release */, + 612D7191AE5334159ABC987636D8683A /* Debug */, + A5221AA425E28F6B7D4416238D78C72E /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 439502BDB29394EE0D69336E69C8494C /* Build configuration list for PBXNativeTarget "Nimble" */ = { + 741A7544F6E6C619277FDFCEC42B266C /* Build configuration list for PBXNativeTarget "RxCocoa" */ = { isa = XCConfigurationList; buildConfigurations = ( - C1E2716332197374B72F76FCF7329F94 /* Debug */, - F6C7FD1CB95173996EB13527E4F19689 /* Release */, + C28A34E6C9E308DD0C36CF7B5B868C09 /* Debug */, + 70B2AC8BD891C9280848C913EC2BE96A /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - C9B02E49B5DC4FB439154428756FFBD2 /* Build configuration list for PBXNativeTarget "RxCocoa" */ = { + 7AEB1EF92049886DB221217EBE8AE874 /* Build configuration list for PBXNativeTarget "RxSwift" */ = { isa = XCConfigurationList; buildConfigurations = ( - 2A758E0DF427F5D6DFFF9AC012511E95 /* Debug */, - 8D0623F678558CC270DA8A655B8AB899 /* Release */, + B2DA1CCB0D61AE2818EA7FE4C5DBDE4D /* Debug */, + 4DD2B5A74854553B6BC5F492ED71C8C1 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - F93A865031FB86334CF6548B1E53718D /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Tests" */ = { + E89C0668E988226A8B361D97AA3235E1 /* Build configuration list for PBXNativeTarget "Pods-RxMKMapView_Tests" */ = { isa = XCConfigurationList; buildConfigurations = ( - E1D89D1905CD57D95C54C3D5BACE11B8 /* Debug */, - 9E93CC998A97FC6E9827BB31C25A0D42 /* Release */, + 3129AA0ADCF8F02F98BF4536A756FA4D /* Debug */, + 6795C0BE4C19275D4C93886F4E77DF94 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - FC798144C21091829F51EF7710C7CFC2 /* Build configuration list for PBXNativeTarget "RxSwift" */ = { + F6EC44E4B5C3FE33A96CE2FB501DD073 /* Build configuration list for PBXNativeTarget "RxMKMapView" */ = { isa = XCConfigurationList; buildConfigurations = ( - 5125FED474086CBB9391740C8BCCDFD5 /* Debug */, - F8D978526B7BD9CBA8FD4A09A07266B7 /* Release */, + EB70C16C5161092B4DB7E741D264AC3F /* Debug */, + 0C1B623AA15425C8108785B7CE76A3AE /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/Example/Pods/Quick/Sources/Quick/DSL/World+DSL.swift b/Example/Pods/Quick/Sources/Quick/DSL/World+DSL.swift index 5249027..942c2e6 100644 --- a/Example/Pods/Quick/Sources/Quick/DSL/World+DSL.swift +++ b/Example/Pods/Quick/Sources/Quick/DSL/World+DSL.swift @@ -85,6 +85,7 @@ extension World { } #endif + @nonobjc internal func it(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { if beforesCurrentlyExecuting { raiseError("'it' cannot be used inside 'beforeEach', 'it' may only be used inside 'context' or 'describe'. ") @@ -100,18 +101,21 @@ extension World { currentExampleGroup.appendExample(example) } + @nonobjc internal func fit(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { var focusedFlags = flags focusedFlags[Filter.focused] = true self.it(description, flags: focusedFlags, file: file, line: line, closure: closure) } + @nonobjc internal func xit(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { var pendingFlags = flags pendingFlags[Filter.pending] = true self.it(description, flags: pendingFlags, file: file, line: line, closure: closure) } + @nonobjc internal func itBehavesLike(_ name: String, sharedExampleContext: @escaping SharedExampleContext, flags: FilterFlags, file: String, line: UInt) { guard currentExampleMetadata == nil else { raiseError("'itBehavesLike' cannot be used inside '\(currentPhase)', 'itBehavesLike' may only be used inside 'context' or 'describe'. ") @@ -131,6 +135,7 @@ extension World { } } + @nonobjc internal func fitBehavesLike(_ name: String, sharedExampleContext: @escaping SharedExampleContext, flags: FilterFlags, file: String, line: UInt) { var focusedFlags = flags focusedFlags[Filter.focused] = true @@ -169,22 +174,22 @@ extension World { #if (os(macOS) || os(iOS) || os(tvOS) || os(watchOS)) && !SWIFT_PACKAGE @objc(itWithDescription:flags:file:line:closure:) - private func objc_it(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { + internal func objc_it(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { it(description, flags: flags, file: file, line: line, closure: closure) } @objc(fitWithDescription:flags:file:line:closure:) - private func objc_fit(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { + internal func objc_fit(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { fit(description, flags: flags, file: file, line: line, closure: closure) } @objc(xitWithDescription:flags:file:line:closure:) - private func objc_xit(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { + internal func objc_xit(_ description: String, flags: FilterFlags, file: String, line: UInt, closure: @escaping () -> Void) { xit(description, flags: flags, file: file, line: line, closure: closure) } @objc(itBehavesLikeSharedExampleNamed:sharedExampleContext:flags:file:line:) - private func objc_itBehavesLike(_ name: String, sharedExampleContext: @escaping SharedExampleContext, flags: FilterFlags, file: String, line: UInt) { + internal func objc_itBehavesLike(_ name: String, sharedExampleContext: @escaping SharedExampleContext, flags: FilterFlags, file: String, line: UInt) { itBehavesLike(name, sharedExampleContext: sharedExampleContext, flags: flags, file: file, line: line) } #endif diff --git a/Example/Pods/Quick/Sources/Quick/Example.swift b/Example/Pods/Quick/Sources/Quick/Example.swift index c15b31a..cf7b4a3 100644 --- a/Example/Pods/Quick/Sources/Quick/Example.swift +++ b/Example/Pods/Quick/Sources/Quick/Example.swift @@ -81,6 +81,9 @@ final public class Example: _ExampleBase { let exampleMetadata = ExampleMetadata(example: self, exampleIndex: numberOfExamplesRun) world.currentExampleMetadata = exampleMetadata + defer { + world.currentExampleMetadata = nil + } world.exampleHooks.executeBefores(exampleMetadata) group!.phase = .beforesExecuting diff --git a/Example/Pods/Quick/Sources/Quick/NSString+C99ExtendedIdentifier.swift b/Example/Pods/Quick/Sources/Quick/NSString+C99ExtendedIdentifier.swift index ef73762..8d67d8d 100644 --- a/Example/Pods/Quick/Sources/Quick/NSString+C99ExtendedIdentifier.swift +++ b/Example/Pods/Quick/Sources/Quick/NSString+C99ExtendedIdentifier.swift @@ -1,8 +1,7 @@ #if os(macOS) || os(iOS) || os(watchOS) || os(tvOS) import Foundation -public extension NSString { - +extension NSString { private static var invalidCharacters: CharacterSet = { var invalidCharacters = CharacterSet() @@ -22,12 +21,29 @@ public extension NSString { return invalidCharacters }() + /// This API is not meant to be used outside Quick, so will be unavaialbe in + /// a next major version. @objc(qck_c99ExtendedIdentifier) - var c99ExtendedIdentifier: String { + public var c99ExtendedIdentifier: String { let validComponents = components(separatedBy: NSString.invalidCharacters) let result = validComponents.joined(separator: "_") return result.isEmpty ? "_" : result } } + +/// Extension methods or properties for NSObject subclasses are invisible from +/// the Objective-C runtime on static linking unless the consumers add `-ObjC` +/// linker flag, so let's make a wrapper class to mitigate that situation. +/// +/// See: https://github.com/Quick/Quick/issues/785 and https://github.com/Quick/Quick/pull/803 +@objc +class QCKObjCStringUtils: NSObject { + override private init() {} + + @objc + static func c99ExtendedIdentifier(from string: String) -> String { + return string.c99ExtendedIdentifier + } +} #endif diff --git a/Example/Pods/Quick/Sources/Quick/World.swift b/Example/Pods/Quick/Sources/Quick/World.swift index 127239a..59ea7e6 100644 --- a/Example/Pods/Quick/Sources/Quick/World.swift +++ b/Example/Pods/Quick/Sources/Quick/World.swift @@ -160,7 +160,7 @@ final internal class World: _WorldBase { #if os(macOS) || os(iOS) || os(tvOS) || os(watchOS) @objc(examplesForSpecClass:) - private func objc_examples(_ specClass: AnyClass) -> [Example] { + internal func objc_examples(_ specClass: AnyClass) -> [Example] { return examples(specClass) } #endif diff --git a/Example/Pods/Quick/Sources/QuickObjectiveC/Configuration/QuickConfiguration.m b/Example/Pods/Quick/Sources/QuickObjectiveC/Configuration/QuickConfiguration.m index 937b818..17beaa7 100644 --- a/Example/Pods/Quick/Sources/QuickObjectiveC/Configuration/QuickConfiguration.m +++ b/Example/Pods/Quick/Sources/QuickObjectiveC/Configuration/QuickConfiguration.m @@ -1,7 +1,12 @@ #import "QuickConfiguration.h" -#import "World.h" #import +#if __has_include("Quick-Swift.h") +#import "Quick-Swift.h" +#else +#import +#endif + typedef void (^QCKClassEnumerationBlock)(Class klass); /** diff --git a/Example/Pods/Quick/Sources/QuickObjectiveC/DSL/QCKDSL.m b/Example/Pods/Quick/Sources/QuickObjectiveC/DSL/QCKDSL.m index 10e8a3d..624832e 100644 --- a/Example/Pods/Quick/Sources/QuickObjectiveC/DSL/QCKDSL.m +++ b/Example/Pods/Quick/Sources/QuickObjectiveC/DSL/QCKDSL.m @@ -1,6 +1,10 @@ #import "QCKDSL.h" -#import "World.h" -#import "World+DSL.h" + +#if __has_include("Quick-Swift.h") +#import "Quick-Swift.h" +#else +#import +#endif void qck_beforeSuite(QCKDSLEmptyBlock closure) { [[World sharedWorld] beforeSuite:closure]; diff --git a/Example/Pods/Quick/Sources/QuickObjectiveC/DSL/World+DSL.h b/Example/Pods/Quick/Sources/QuickObjectiveC/DSL/World+DSL.h deleted file mode 100644 index a3b8524..0000000 --- a/Example/Pods/Quick/Sources/QuickObjectiveC/DSL/World+DSL.h +++ /dev/null @@ -1,20 +0,0 @@ -#import - -@interface World (SWIFT_EXTENSION(Quick)) -- (void)beforeSuite:(void (^ __nonnull)(void))closure; -- (void)afterSuite:(void (^ __nonnull)(void))closure; -- (void)sharedExamples:(NSString * __nonnull)name closure:(void (^ __nonnull)(NSDictionary * __nonnull (^ __nonnull)(void)))closure; -- (void)describe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure; -- (void)context:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure; -- (void)fdescribe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure; -- (void)xdescribe:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags closure:(void (^ __nonnull)(void))closure; -- (void)beforeEach:(void (^ __nonnull)(void))closure; -- (void)beforeEachWithMetadata:(void (^ __nonnull)(ExampleMetadata * __nonnull))closure; -- (void)afterEach:(void (^ __nonnull)(void))closure; -- (void)afterEachWithMetadata:(void (^ __nonnull)(ExampleMetadata * __nonnull))closure; -- (void)itWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure; -- (void)fitWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure; -- (void)xitWithDescription:(NSString * __nonnull)description flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line closure:(void (^ __nonnull)(void))closure; -- (void)itBehavesLikeSharedExampleNamed:(NSString * __nonnull)name sharedExampleContext:(NSDictionary * __nonnull (^ __nonnull)(void))sharedExampleContext flags:(NSDictionary * __nonnull)flags file:(NSString * __nonnull)file line:(NSUInteger)line; -- (void)pending:(NSString * __nonnull)description closure:(void (^ __nonnull)(void))closure; -@end diff --git a/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.h b/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.h index 105a97e..21bc772 100644 --- a/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.h +++ b/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.h @@ -47,4 +47,10 @@ */ - (void)spec; +/** + Returns the currently executing spec. Use in specs that require XCTestCase + methds, e.g. expectationWithDescription. +*/ +@property (class, nonatomic, readonly) QuickSpec *current; + @end diff --git a/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.m b/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.m index 4891679..ed70d35 100644 --- a/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.m +++ b/Example/Pods/Quick/Sources/QuickObjectiveC/QuickSpec.m @@ -1,7 +1,11 @@ #import "QuickSpec.h" #import "QuickConfiguration.h" -#import "World.h" + +#if __has_include("Quick-Swift.h") +#import "Quick-Swift.h" +#else #import +#endif static QuickSpec *currentSpec = nil; @@ -75,6 +79,10 @@ + (NSArray *)testInvocations { - (void)spec { } ++ (QuickSpec*) current { + return currentSpec; +} + #pragma mark - Internal Methods /** @@ -101,8 +109,8 @@ + (SEL)addInstanceMethodForExample:(Example *)example classSelectorNames:(NSMuta }); const char *types = [[NSString stringWithFormat:@"%s%s%s", @encode(void), @encode(id), @encode(SEL)] UTF8String]; - - NSString *originalName = example.name.qck_c99ExtendedIdentifier; + + NSString *originalName = [QCKObjCStringUtils c99ExtendedIdentifierFrom:example.name]; NSString *selectorName = originalName; NSUInteger i = 2; diff --git a/Example/Pods/Quick/Sources/QuickObjectiveC/World.h b/Example/Pods/Quick/Sources/QuickObjectiveC/World.h deleted file mode 100644 index e638cf6..0000000 --- a/Example/Pods/Quick/Sources/QuickObjectiveC/World.h +++ /dev/null @@ -1,18 +0,0 @@ -#import - -@class ExampleGroup; -@class ExampleMetadata; - -SWIFT_CLASS("_TtC5Quick5World") -@interface World - -@property (nonatomic) ExampleGroup * __nullable currentExampleGroup; -@property (nonatomic) ExampleMetadata * __nullable currentExampleMetadata; -@property (nonatomic) BOOL isRunningAdditionalSuites; -+ (World * __nonnull)sharedWorld; -- (void)configure:(void (^ __nonnull)(Configuration * __nonnull))closure; -- (void)finalizeConfiguration; -- (ExampleGroup * __nonnull)rootExampleGroupForSpecClass:(Class __nonnull)cls; -- (NSArray * __nonnull)examplesForSpecClass:(Class __nonnull)specClass; -- (void)performWithCurrentExampleGroup:(ExampleGroup * __nonnull)group closure:(void (^ __nonnull)(void))closure; -@end diff --git a/Example/Pods/Quick/Sources/QuickObjectiveC/XCTestSuite+QuickTestSuiteBuilder.m b/Example/Pods/Quick/Sources/QuickObjectiveC/XCTestSuite+QuickTestSuiteBuilder.m index e49939e..ae63036 100644 --- a/Example/Pods/Quick/Sources/QuickObjectiveC/XCTestSuite+QuickTestSuiteBuilder.m +++ b/Example/Pods/Quick/Sources/QuickObjectiveC/XCTestSuite+QuickTestSuiteBuilder.m @@ -1,6 +1,11 @@ #import #import + +#if __has_include("Quick-Swift.h") +#import "Quick-Swift.h" +#else #import +#endif @interface XCTestSuite (QuickTestSuiteBuilder) @end diff --git a/Example/Pods/RxCocoa/Platform/DataStructures/Bag.swift b/Example/Pods/RxCocoa/Platform/DataStructures/Bag.swift index 0d994c2..22d82d5 100644 --- a/Example/Pods/RxCocoa/Platform/DataStructures/Bag.swift +++ b/Example/Pods/RxCocoa/Platform/DataStructures/Bag.swift @@ -25,7 +25,7 @@ Data structure that represents a bag of elements typed `T`. Single element can be stored multiple times. -Time and space complexity of insertion an deletion is O(n). +Time and space complexity of insertion and deletion is O(n). It is suitable for storing small number of elements. */ @@ -83,12 +83,8 @@ struct Bag : CustomDebugStringConvertible { _pairs.append((key: key, value: element)) return key } - - if _dictionary == nil { - _dictionary = [:] - } - - _dictionary![key] = element + + _dictionary = [key: element] return key } diff --git a/Example/Pods/RxCocoa/Platform/DeprecationWarner.swift b/Example/Pods/RxCocoa/Platform/DeprecationWarner.swift new file mode 100644 index 0000000..863636b --- /dev/null +++ b/Example/Pods/RxCocoa/Platform/DeprecationWarner.swift @@ -0,0 +1,43 @@ +// +// DeprecationWarner.swift +// Platform +// +// Created by Shai Mishali on 1/9/18. +// Copyright © 2018 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +#if DEBUG + class DeprecationWarner { + private static var warned = Set() + private static var _lock = NSRecursiveLock() + + static func warnIfNeeded(_ kind: Kind) { + _lock.lock(); defer { _lock.unlock() } + guard !warned.contains(kind) else { return } + + warned.insert(kind) + print("ℹ️ [DEPRECATED] \(kind.message)") + } + } + + extension DeprecationWarner { + enum Kind { + case variable + case globalTestFunctionNext + case globalTestFunctionError + case globalTestFunctionCompleted + + var message: String { + switch self { + case .variable: return "`Variable` is planned for future deprecation. Please consider `BehaviorRelay` as a replacement. Read more at: https://git.io/vNqvx" + case .globalTestFunctionNext: return "The `next()` global function is planned for future deprecation. Please use `Recorded.next()` instead." + case .globalTestFunctionError: return "The `error()` global function is planned for future deprecation. Please use `Recorded.error()` instead." + case .globalTestFunctionCompleted: return "The `completed()` global function is planned for future deprecation. Please use `Recorded.completed()` instead." + } + } + } + } +#endif + diff --git a/Example/Pods/RxCocoa/README.md b/Example/Pods/RxCocoa/README.md index 503068d..f7952f5 100644 --- a/Example/Pods/RxCocoa/README.md +++ b/Example/Pods/RxCocoa/README.md @@ -3,8 +3,7 @@ [![Travis CI](https://travis-ci.org/ReactiveX/RxSwift.svg?branch=master)](https://travis-ci.org/ReactiveX/RxSwift) ![platforms](https://img.shields.io/badge/platforms-iOS%20%7C%20macOS%20%7C%20tvOS%20%7C%20watchOS%20%7C%20Linux-333333.svg) ![pod](https://img.shields.io/cocoapods/v/RxSwift.svg) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Swift Package Manager compatible](https://img.shields.io/badge/Swift%20Package%20Manager-compatible-brightgreen.svg)](https://github.com/apple/swift-package-manager) -* RxSwift 4.x / Swift 4.x can be found in [**rxswift4.0-swift4.0** branch](https://github.com/ReactiveX/RxSwift/tree/rxswift4.0-swift4.0). -* RxSwift 3.x / Swift 3.x can be found in [**master** branch](https://github.com/ReactiveX/RxSwift/tree/master). +* RxSwift 3.x / Swift 3.x can be found in [**rxswift-3.0** branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-3.0). Rx is a [generic abstraction of computation](https://youtu.be/looJcaeboBY) expressed through `Observable` interface. @@ -42,10 +41,10 @@ KVO observing, async operations and streams are all unified under [abstraction o ###### ... interact -* All of this is great, but it would be nice to talk with other people using RxSwift and exchange experiences.
[![Slack channel](http://rxswift-slack.herokuapp.com/badge.svg)](http://rxswift-slack.herokuapp.com/) [Join Slack Channel](http://rxswift-slack.herokuapp.com) +* All of this is great, but it would be nice to talk with other people using RxSwift and exchange experiences.
[![Slack channel](http://rxswift-slack.herokuapp.com/badge.svg)](http://slack.rxswift.org) [Join Slack Channel](http://slack.rxswift.org) * Report a problem using the library. [Open an Issue With Bug Template](.github/ISSUE_TEMPLATE.md) * Request a new feature. [Open an Issue With Feature Request Template](Documentation/NewFeatureRequestTemplate.md) - +* Help out [Check out contribution guide](CONTRIBUTING.md) ###### ... compare @@ -105,8 +104,9 @@ searchResults ## Requirements -* Xcode 8.0 -* Swift 3.0 +* Xcode 9.0 +* Swift 4.0 +* Swift 3.x ([use `rxswift-3.0` branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-3.0) instead) * Swift 2.3 ([use `rxswift-2.0` branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-2.0) instead) ## Installation @@ -121,21 +121,21 @@ Open Rx.xcworkspace, choose `RxExample` and hit run. This method will build ever ### [CocoaPods](https://guides.cocoapods.org/using/using-cocoapods.html) -**Tested with `pod --version`: `1.1.1`** +**Tested with `pod --version`: `1.3.1`** ```ruby # Podfile use_frameworks! target 'YOUR_TARGET_NAME' do - pod 'RxSwift', '~> 3.0' - pod 'RxCocoa', '~> 3.0' + pod 'RxSwift', '~> 4.0' + pod 'RxCocoa', '~> 4.0' end -# RxTests and RxBlocking make the most sense in the context of unit/integration tests +# RxTest and RxBlocking make the most sense in the context of unit/integration tests target 'YOUR_TESTING_TARGET' do - pod 'RxBlocking', '~> 3.0' - pod 'RxTest', '~> 3.0' + pod 'RxBlocking', '~> 4.0' + pod 'RxTest', '~> 4.0' end ``` @@ -147,12 +147,12 @@ $ pod install ### [Carthage](https://github.com/Carthage/Carthage) -**Tested with `carthage version`: `0.18.1`** +**Tested with `carthage version`: `0.26.2`** Add this to `Cartfile` ``` -github "ReactiveX/RxSwift" ~> 3.0 +github "ReactiveX/RxSwift" ~> 4.0 ``` ```bash @@ -161,19 +161,23 @@ $ carthage update ### [Swift Package Manager](https://github.com/apple/swift-package-manager) -**Tested with `swift build --version`: `3.0.0 (swiftpm-19)`** +**Tested with `swift build --version`: `Swift 4.0.0-dev (swiftpm-13126)`** Create a `Package.swift` file. ```swift +// swift-tools-version:4.0 + import PackageDescription let package = Package( - name: "RxTestProject", - targets: [], - dependencies: [ - .Package(url: "https://github.com/ReactiveX/RxSwift.git", majorVersion: 3) - ] + name: "RxTestProject", + dependencies: [ + .package(url: "https://github.com/ReactiveX/RxSwift.git", "4.0.0" ..< "5.0.0") + ], + targets: [ + .target(name: "RxTestProject", dependencies: ["RxSwift", "RxCocoa"]) + ] ) ``` diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/ControlTarget.swift b/Example/Pods/RxCocoa/RxCocoa/Common/ControlTarget.swift index b4ddf82..403e309 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/ControlTarget.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/ControlTarget.swift @@ -8,15 +8,18 @@ #if os(iOS) || os(tvOS) || os(macOS) -#if !RX_NO_MODULE import RxSwift -#endif #if os(iOS) || os(tvOS) import UIKit typealias Control = UIKit.UIControl - typealias ControlEvents = UIKit.UIControlEvents + + #if swift(>=4.2) + public typealias ControlEvents = UIKit.UIControl.Event + #else + public typealias ControlEvents = UIKit.UIControlEvents + #endif #elseif os(macOS) import Cocoa diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxy.swift index 3375a4b..979a67e 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxy.swift @@ -8,17 +8,15 @@ #if !os(Linux) -#if !RX_NO_MODULE import RxSwift -#if SWIFT_PACKAGE && !os(Linux) - import RxCocoaRuntime -#endif -#endif + #if SWIFT_PACKAGE && !os(Linux) + import RxCocoaRuntime + #endif /// Base class for `DelegateProxyType` protocol. /// /// This implementation is not thread safe and can be used only from one thread (Main thread). - open class DelegateProxy: _RXDelegateProxy { + open class DelegateProxy: _RXDelegateProxy { public typealias ParentObject = P public typealias Delegate = D @@ -28,8 +26,8 @@ /// Parent object associated with delegate proxy. private weak private(set) var _parentObject: ParentObject? - fileprivate let _currentDelegateFor: (ParentObject) -> Delegate? - fileprivate let _setCurrentDelegateTo: (Delegate?, ParentObject) -> () + fileprivate let _currentDelegateFor: (ParentObject) -> AnyObject? + fileprivate let _setCurrentDelegateTo: (AnyObject?, ParentObject) -> () /// Initializes new instance. /// @@ -37,8 +35,8 @@ public init(parentObject: ParentObject, delegateProxy: Proxy.Type) where Proxy: DelegateProxy, Proxy.ParentObject == ParentObject, Proxy.Delegate == Delegate { self._parentObject = parentObject - self._currentDelegateFor = delegateProxy.currentDelegate(for:) - self._setCurrentDelegateTo = delegateProxy.setCurrentDelegate(_:to:) + self._currentDelegateFor = delegateProxy._currentDelegate + self._setCurrentDelegateTo = delegateProxy._setCurrentDelegate MainScheduler.ensureExecutingOnScheduler() #if TRACE_RESOURCES @@ -91,7 +89,6 @@ */ open func sentMessage(_ selector: Selector) -> Observable<[Any]> { MainScheduler.ensureExecutingOnScheduler() - checkSelectorIsObservable(selector) let subject = _sentMessageForSelector[selector] @@ -99,7 +96,7 @@ return subject.asObservable() } else { - let subject = MessageDispatcher(delegateProxy: self) + let subject = MessageDispatcher(selector: selector, delegateProxy: self) _sentMessageForSelector[selector] = subject return subject.asObservable() } @@ -149,7 +146,6 @@ */ open func methodInvoked(_ selector: Selector) -> Observable<[Any]> { MainScheduler.ensureExecutingOnScheduler() - checkSelectorIsObservable(selector) let subject = _methodInvokedForSelector[selector] @@ -157,22 +153,29 @@ return subject.asObservable() } else { - let subject = MessageDispatcher(delegateProxy: self) + let subject = MessageDispatcher(selector: selector, delegateProxy: self) _methodInvokedForSelector[selector] = subject return subject.asObservable() } } - private func checkSelectorIsObservable(_ selector: Selector) { + fileprivate func checkSelectorIsObservable(_ selector: Selector) { MainScheduler.ensureExecutingOnScheduler() if hasWiredImplementation(for: selector) { - print("Delegate proxy is already implementing `\(selector)`, a more performant way of registering might exist.") + print("⚠️ Delegate proxy is already implementing `\(selector)`, a more performant way of registering might exist.") + return + } + + if voidDelegateMethodsContain(selector) { return } - guard ((self.forwardToDelegate() as? NSObject)?.responds(to: selector) ?? false) || voidDelegateMethodsContain(selector) else { - rxFatalError("This class doesn't respond to selector \(selector)") + // In case `_forwardToDelegate` is `nil`, it is assumed the check is being done prematurely. + if !(self._forwardToDelegate?.responds(to: selector) ?? true) { + print("⚠️ Using delegate proxy dynamic interception method but the target delegate object doesn't respond to the requested selector. " + + "In case pure Swift delegate proxy is being used please use manual observing method by using`PublishSubject`s. " + + " (selector: `\(selector)`, forwardToDelegate: `\(_forwardToDelegate ?? self)`)") } } @@ -204,6 +207,15 @@ MainScheduler.ensureExecutingOnScheduler() #endif self._setForwardToDelegate(delegate, retainDelegate: retainDelegate) + + let sentSelectors: [Selector] = self._sentMessageForSelector.values.filter { $0.hasObservers }.map { $0.selector } + let invokedSelectors: [Selector] = self._methodInvokedForSelector.values.filter { $0.hasObservers }.map { $0.selector } + let allUsedSelectors = sentSelectors + invokedSelectors + + for selector in Set(allUsedSelectors) { + checkSelectorIsObservable(selector) + } + self.reset() } @@ -250,14 +262,17 @@ private let dispatcher: PublishSubject<[Any]> private let result: Observable<[Any]> - init(delegateProxy _delegateProxy: DelegateProxy) { + fileprivate let selector: Selector + + init(selector: Selector, delegateProxy _delegateProxy: DelegateProxy) { weak var weakDelegateProxy = _delegateProxy let dispatcher = PublishSubject<[Any]>() self.dispatcher = dispatcher + self.selector = selector self.result = dispatcher - .do(onSubscribed: { weakDelegateProxy?.reset() }, onDispose: { weakDelegateProxy?.reset() }) + .do(onSubscribed: { weakDelegateProxy?.checkSelectorIsObservable(selector); weakDelegateProxy?.reset() }, onDispose: { weakDelegateProxy?.reset() }) .share() .subscribeOn(mainScheduler) } diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxyType.swift b/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxyType.swift index 04eca33..dc12d94 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxyType.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/DelegateProxyType.swift @@ -11,9 +11,7 @@ import func Foundation.objc_getAssociatedObject import func Foundation.objc_setAssociatedObject - #if !RX_NO_MODULE - import RxSwift - #endif + import RxSwift /** `DelegateProxyType` protocol enables using both normal delegates and Rx observable sequences with @@ -74,7 +72,7 @@ Since RxCocoa needs to automagically create those Proxys and because views that */ public protocol DelegateProxyType: class { associatedtype ParentObject: AnyObject - associatedtype Delegate: AnyObject + associatedtype Delegate /// It is require that enumerate call `register` of the extended DelegateProxy subclasses here. static func registerKnownImplementations() @@ -130,6 +128,25 @@ extension DelegateProxyType { } } +// workaround of Delegate: class +extension DelegateProxyType { + static func _currentDelegate(for object: ParentObject) -> AnyObject? { + return currentDelegate(for: object).map { $0 as AnyObject } + } + + static func _setCurrentDelegate(_ delegate: AnyObject?, to object: ParentObject) { + return setCurrentDelegate(castOptionalOrFatalError(delegate), to: object) + } + + func _forwardToDelegate() -> AnyObject? { + return forwardToDelegate().map { $0 as AnyObject } + } + + func _setForwardToDelegate(_ forwardToDelegate: AnyObject?, retainDelegate: Bool) { + return setForwardToDelegate(castOptionalOrFatalError(forwardToDelegate), retainDelegate: retainDelegate) + } +} + extension DelegateProxyType { /// Store DelegateProxy subclass to factory. @@ -168,8 +185,7 @@ extension DelegateProxyType { let maybeProxy = self.assignedProxy(for: object) - // Type is ideally be `(Self & Delegate)`, but Swift 3.0 doesn't support it. - let proxy: Delegate + let proxy: AnyObject if let existingProxy = maybeProxy { proxy = existingProxy } @@ -178,15 +194,15 @@ extension DelegateProxyType { self.assignProxy(proxy, toObject: object) assert(self.assignedProxy(for: object) === proxy) } - let currentDelegate = self.currentDelegate(for: object) + let currentDelegate = self._currentDelegate(for: object) let delegateProxy: Self = castOrFatalError(proxy) if currentDelegate !== delegateProxy { - delegateProxy.setForwardToDelegate(currentDelegate, retainDelegate: false) - assert(delegateProxy.forwardToDelegate() === currentDelegate) - self.setCurrentDelegate(proxy, to: object) - assert(self.currentDelegate(for: object) === proxy) - assert(delegateProxy.forwardToDelegate() === currentDelegate) + delegateProxy._setForwardToDelegate(currentDelegate, retainDelegate: false) + assert(delegateProxy._forwardToDelegate() === currentDelegate) + self._setCurrentDelegate(proxy, to: object) + assert(self._currentDelegate(for: object) === proxy) + assert(delegateProxy._forwardToDelegate() === currentDelegate) } return delegateProxy @@ -200,10 +216,10 @@ extension DelegateProxyType { /// - parameter onProxyForObject: Object that has `delegate` property. /// - returns: Disposable object that can be used to clear forward delegate. public static func installForwardDelegate(_ forwardDelegate: Delegate, retainDelegate: Bool, onProxyForObject object: ParentObject) -> Disposable { - weak var weakForwardDelegate: AnyObject? = forwardDelegate + weak var weakForwardDelegate: AnyObject? = forwardDelegate as AnyObject let proxy = self.proxy(for: object) - assert(proxy.forwardToDelegate() === nil, "This is a feature to warn you that there is already a delegate (or data source) set somewhere previously. The action you are trying to perform will clear that delegate (data source) and that means that some of your features that depend on that delegate (data source) being set will likely stop working.\n" + + assert(proxy._forwardToDelegate() === nil, "This is a feature to warn you that there is already a delegate (or data source) set somewhere previously. The action you are trying to perform will clear that delegate (data source) and that means that some of your features that depend on that delegate (data source) being set will likely stop working.\n" + "If you are ok with this, try to set delegate (data source) to `nil` in front of this operation.\n" + " This is the source object value: \(object)\n" + " This this the original delegate (data source) value: \(proxy.forwardToDelegate()!)\n" + @@ -216,7 +232,7 @@ extension DelegateProxyType { let delegate: AnyObject? = weakForwardDelegate - assert(delegate == nil || proxy.forwardToDelegate() === delegate, "Delegate was changed from time it was first set. Current \(String(describing: proxy.forwardToDelegate())), and it should have been \(proxy)") + assert(delegate == nil || proxy._forwardToDelegate() === delegate, "Delegate was changed from time it was first set. Current \(String(describing: proxy.forwardToDelegate())), and it should have been \(proxy)") proxy.setForwardToDelegate(nil, retainDelegate: retainDelegate) } @@ -225,19 +241,17 @@ extension DelegateProxyType { // fileprivate extensions -extension DelegateProxyType -{ +extension DelegateProxyType { fileprivate static var factory: DelegateProxyFactory { return DelegateProxyFactory.sharedFactory(for: self) } - - fileprivate static func assignedProxy(for object: ParentObject) -> Delegate? { + fileprivate static func assignedProxy(for object: ParentObject) -> AnyObject? { let maybeDelegate = objc_getAssociatedObject(object, self.identifier) - return castOptionalOrFatalError(maybeDelegate.map { $0 as AnyObject }) + return castOptionalOrFatalError(maybeDelegate) } - fileprivate static func assignProxy(_ proxy: Delegate, toObject object: ParentObject) { + fileprivate static func assignProxy(_ proxy: AnyObject, toObject object: ParentObject) { objc_setAssociatedObject(object, self.identifier, proxy, .OBJC_ASSOCIATION_RETAIN) } } @@ -245,7 +259,7 @@ extension DelegateProxyType /// Describes an object that has a delegate. public protocol HasDelegate: AnyObject { /// Delegate type - associatedtype Delegate: AnyObject + associatedtype Delegate /// Delegate var delegate: Delegate? { get set } @@ -264,7 +278,7 @@ extension DelegateProxyType where ParentObject: HasDelegate, Self.Delegate == Pa /// Describes an object that has a data source. public protocol HasDataSource: AnyObject { /// Data source type - associatedtype DataSource: AnyObject + associatedtype DataSource /// Data source var dataSource: DataSource? { get set } @@ -280,13 +294,35 @@ extension DelegateProxyType where ParentObject: HasDataSource, Self.Delegate == } } +/// Describes an object that has a prefetch data source. +@available(iOS 10.0, tvOS 10.0, *) +public protocol HasPrefetchDataSource: AnyObject { + /// Prefetch data source type + associatedtype PrefetchDataSource + + /// Prefetch data source + var prefetchDataSource: PrefetchDataSource? { get set } +} + +@available(iOS 10.0, tvOS 10.0, *) +extension DelegateProxyType where ParentObject: HasPrefetchDataSource, Self.Delegate == ParentObject.PrefetchDataSource { + public static func currentDelegate(for object: ParentObject) -> Delegate? { + return object.prefetchDataSource + } + + public static func setCurrentDelegate(_ delegate: Delegate?, to object: ParentObject) { + object.prefetchDataSource = delegate + } +} + #if os(iOS) || os(tvOS) import UIKit extension ObservableType { func subscribeProxyDataSource(ofObject object: DelegateProxy.ParentObject, dataSource: DelegateProxy.Delegate, retainDataSource: Bool, binding: @escaping (DelegateProxy, Event) -> Void) -> Disposable - where DelegateProxy.ParentObject: UIView { + where DelegateProxy.ParentObject: UIView + , DelegateProxy.Delegate: AnyObject { let proxy = DelegateProxy.proxy(for: object) let unregisterDelegate = DelegateProxy.installForwardDelegate(dataSource, retainDelegate: retainDataSource, onProxyForObject: object) // this is needed to flush any delayed old state (https://github.com/RxSwiftCommunity/RxDataSources/pull/75) @@ -368,11 +404,9 @@ extension DelegateProxyType where ParentObject: HasDataSource, Self.Delegate == _identifier = proxyType.identifier } - fileprivate func extend(make: @escaping (ParentObject) -> DelegateProxy) - { + fileprivate func extend(make: @escaping (ParentObject) -> DelegateProxy) { MainScheduler.ensureExecutingOnScheduler() precondition(_identifier == DelegateProxy.identifier, "Delegate proxy has inconsistent identifier") - precondition((DelegateProxy.self as? DelegateProxy.Delegate) != nil, "DelegateProxy subclass should be as a Delegate") guard _factories[ObjectIdentifier(ParentObject.self)] == nil else { rxFatalError("The factory of \(ParentObject.self) is duplicated. DelegateProxy is not allowed of duplicated base object type.") } diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/KeyPathBinder.swift b/Example/Pods/RxCocoa/RxCocoa/Common/KeyPathBinder.swift new file mode 100644 index 0000000..5247ea4 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Common/KeyPathBinder.swift @@ -0,0 +1,36 @@ +// +// KeyPathBinder.swift +// RxCocoa +// +// Created by Ryo Aoyama on 2/7/18. +// Copyright © 2018 Krunoslav Zaher. All rights reserved. +// + +#if swift(>=3.2) + import RxSwift + + extension Reactive where Base: AnyObject { + + /// Bindable sink for arbitrary property using the given key path. + /// Binding runs on the MainScheduler. + /// + /// - parameter keyPath: Key path to write to the property. + public subscript(keyPath: ReferenceWritableKeyPath) -> Binder { + return Binder(self.base) { base, value in + base[keyPath: keyPath] = value + } + } + + /// Bindable sink for arbitrary property using the given key path. + /// Binding runs on the specified scheduler. + /// + /// - parameter keyPath: Key path to write to the property. + /// - parameter scheduler: Scheduler to run bindings on. + public subscript(keyPath: ReferenceWritableKeyPath, on scheduler: ImmediateSchedulerType) -> Binder { + return Binder(self.base, scheduler: scheduler) { base, value in + base[keyPath: keyPath] = value + } + } + + } +#endif diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/NSLayoutConstraint+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/Common/NSLayoutConstraint+Rx.swift index da10474..5810fe5 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/NSLayoutConstraint+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/NSLayoutConstraint+Rx.swift @@ -9,14 +9,12 @@ #if !os(Linux) #if os(macOS) -import Cocoa + import Cocoa #else -import UIKit + import UIKit #endif -#if !RX_NO_MODULE import RxSwift -#endif #if os(iOS) || os(macOS) || os(tvOS) extension Reactive where Base: NSLayoutConstraint { diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/Observable+Bind.swift b/Example/Pods/RxCocoa/RxCocoa/Common/Observable+Bind.swift index 7918444..4cca12b 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/Observable+Bind.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/Observable+Bind.swift @@ -6,9 +6,8 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif + +import RxSwift extension ObservableType { @@ -39,43 +38,73 @@ extension ObservableType { } /** - Creates new subscription and sends elements to variable. - - In case error occurs in debug mode, `fatalError` will be raised. - In case error occurs in release mode, `error` will be logged. - - - parameter to: Target variable for sequence elements. - - returns: Disposable object that can be used to unsubscribe the observer. - */ - public func bind(to variable: Variable) -> Disposable { + Creates new subscription and sends elements to publish relay. + + In case error occurs in debug mode, `fatalError` will be raised. + In case error occurs in release mode, `error` will be logged. + + - parameter to: Target publish relay for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer. + */ + public func bind(to relay: PublishRelay) -> Disposable { return subscribe { e in switch e { case let .next(element): - variable.value = element + relay.accept(element) case let .error(error): - let error = "Binding error to variable: \(error)" - #if DEBUG - rxFatalError(error) - #else - print(error) - #endif + rxFatalErrorInDebug("Binding error to publish relay: \(error)") case .completed: break } } } - + /** - Creates new subscription and sends elements to variable. - + Creates new subscription and sends elements to publish relay. + In case error occurs in debug mode, `fatalError` will be raised. In case error occurs in release mode, `error` will be logged. - - - parameter to: Target variable for sequence elements. + + - parameter to: Target publish relay for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer. + */ + public func bind(to relay: PublishRelay) -> Disposable { + return self.map { $0 as E? }.bind(to: relay) + } + + /** + Creates new subscription and sends elements to behavior relay. + + In case error occurs in debug mode, `fatalError` will be raised. + In case error occurs in release mode, `error` will be logged. + + - parameter to: Target behavior relay for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer. + */ + public func bind(to relay: BehaviorRelay) -> Disposable { + return subscribe { e in + switch e { + case let .next(element): + relay.accept(element) + case let .error(error): + rxFatalErrorInDebug("Binding error to behavior relay: \(error)") + case .completed: + break + } + } + } + + /** + Creates new subscription and sends elements to behavior relay. + + In case error occurs in debug mode, `fatalError` will be raised. + In case error occurs in release mode, `error` will be logged. + + - parameter to: Target behavior relay for sequence elements. - returns: Disposable object that can be used to unsubscribe the observer. */ - public func bind(to variable: Variable) -> Disposable { - return self.map { $0 as E? }.bind(to: variable) + public func bind(to relay: BehaviorRelay) -> Disposable { + return self.map { $0 as E? }.bind(to: relay) } /** @@ -116,12 +145,7 @@ extension ObservableType { */ public func bind(onNext: @escaping (E) -> Void) -> Disposable { return subscribe(onNext: onNext, onError: { error in - let error = "Binding error: \(error)" - #if DEBUG - rxFatalError(error) - #else - print(error) - #endif + rxFatalErrorInDebug("Binding error: \(error)") }) } } diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift b/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift index 529694b..5a1af71 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/RxCocoaObjCRuntimeError+Extensions.swift @@ -6,10 +6,8 @@ // Copyright © 2016 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - #if SWIFT_PACKAGE && !DISABLE_SWIZZLING && !os(Linux) - import RxCocoaRuntime - #endif +#if SWIFT_PACKAGE && !DISABLE_SWIZZLING && !os(Linux) + import RxCocoaRuntime #endif #if !DISABLE_SWIZZLING && !os(Linux) diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/RxTarget.swift b/Example/Pods/RxCocoa/RxCocoa/Common/RxTarget.swift index da1086d..94cc1a1 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/RxTarget.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/RxTarget.swift @@ -8,9 +8,7 @@ import class Foundation.NSObject -#if !RX_NO_MODULE import RxSwift -#endif class RxTarget : NSObject , Disposable { diff --git a/Example/Pods/RxCocoa/RxCocoa/Common/TextInput.swift b/Example/Pods/RxCocoa/RxCocoa/Common/TextInput.swift index 7fd62bd..6fc7a29 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Common/TextInput.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Common/TextInput.swift @@ -6,9 +6,7 @@ // Copyright © 2016 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift #if os(iOS) || os(tvOS) import UIKit diff --git a/Example/Pods/RxCocoa/RxCocoa/Deprecated.swift b/Example/Pods/RxCocoa/RxCocoa/Deprecated.swift index 7475f95..0fb83fc 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Deprecated.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Deprecated.swift @@ -6,10 +6,7 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif - +import RxSwift import Dispatch extension ObservableType { @@ -358,8 +355,13 @@ extension Reactive where Base: UIImageView { if image != nil { let transition = CATransition() transition.duration = 0.25 - transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) - transition.type = transitionType + #if swift(>=4.2) + transition.timingFunction = CAMediaTimingFunction(name: .easeInEaseOut) + transition.type = CATransitionType(rawValue: transitionType) + #else + transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) + transition.type = transitionType + #endif imageView.layer.add(transition, forKey: kCATransition) } } @@ -370,6 +372,13 @@ extension Reactive where Base: UIImageView { } } } + +extension Reactive where Base: UISegmentedControl { + @available(*, deprecated, renamed: "enabledForSegment(at:)") + public func enabled(forSegmentAt segmentAt: Int) -> Binder { + return enabledForSegment(at: segmentAt) + } +} #endif #if os(macOS) @@ -386,8 +395,13 @@ extension Reactive where Base: UIImageView { if value != nil { let transition = CATransition() transition.duration = 0.25 +#if swift(>=4.2) + transition.timingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeInEaseOut) + transition.type = CATransitionType(rawValue: transitionType) +#else transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) transition.type = transitionType +#endif control.layer?.add(transition, forKey: kCATransition) } } @@ -400,9 +414,7 @@ extension Reactive where Base: UIImageView { } #endif -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift extension Variable { /// Converts `Variable` to `Driver` trait. @@ -449,54 +461,45 @@ extension SharedSequenceConvertibleType where SharingStrategy == DriverSharingSt } } -extension ObservableConvertibleType { +extension ObservableType { /** - Converts anything convertible to `Observable` to `SharedSequence` unit. - - - parameter onErrorJustReturn: Element to return in case of error and after that complete the sequence. - - returns: Driving observable sequence. - */ - @available(*, deprecated, message: "Please use conversion methods to some SharedSequence specialization.") - public func asSharedSequence(sharingStrategy: S.Type = S.self, onErrorJustReturn: E) -> SharedSequence { - let source = self - .asObservable() - .observeOn(S.scheduler) - .catchErrorJustReturn(onErrorJustReturn) - return SharedSequence(source) - } + Creates new subscription and sends elements to variable. - /** - Converts anything convertible to `Observable` to `SharedSequence` unit. + In case error occurs in debug mode, `fatalError` will be raised. + In case error occurs in release mode, `error` will be logged. - - parameter onErrorDriveWith: SharedSequence that provides elements of the sequence in case of error. - - returns: Driving observable sequence. + - parameter to: Target variable for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer. */ - @available(*, deprecated, message: "Please use conversion methods to some SharedSequence specialization.") - public func asSharedSequence(sharingStrategy: S.Type = S.self, onErrorDriveWith: SharedSequence) -> SharedSequence { - let source = self - .asObservable() - .observeOn(S.scheduler) - .catchError { _ in - onErrorDriveWith.asObservable() + public func bind(to variable: Variable) -> Disposable { + return subscribe { e in + switch e { + case let .next(element): + variable.value = element + case let .error(error): + let error = "Binding error to variable: \(error)" + #if DEBUG + rxFatalError(error) + #else + print(error) + #endif + case .completed: + break + } } - return SharedSequence(source) } /** - Converts anything convertible to `Observable` to `SharedSequence` unit. + Creates new subscription and sends elements to variable. + + In case error occurs in debug mode, `fatalError` will be raised. + In case error occurs in release mode, `error` will be logged. - - parameter onErrorRecover: Calculates driver that continues to drive the sequence in case of error. - - returns: Driving observable sequence. + - parameter to: Target variable for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer. */ - @available(*, deprecated, message: "Please use conversion methods to some SharedSequence specialization.") - public func asSharedSequence(sharingStrategy: S.Type = S.self, onErrorRecover: @escaping (_ error: Swift.Error) -> SharedSequence) -> SharedSequence { - let source = self - .asObservable() - .observeOn(S.scheduler) - .catchError { error in - onErrorRecover(error).asObservable() - } - return SharedSequence(source) + public func bind(to variable: Variable) -> Disposable { + return self.map { $0 as E? }.bind(to: variable) } } diff --git a/Example/Pods/RxCocoa/RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift b/Example/Pods/RxCocoa/RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift index c101d66..0013434 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Foundation/KVORepresentable+CoreGraphics.swift @@ -8,21 +8,19 @@ #if !os(Linux) -#if !RX_NO_MODULE - import RxSwift -#endif - import CoreGraphics +import RxSwift +import CoreGraphics - import class Foundation.NSValue +import class Foundation.NSValue #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}" + let CGRectType = "{CGRect={CGPoint=dd}{CGSize=dd}}" + let CGSizeType = "{CGSize=dd}" + let CGPointType = "{CGPoint=dd}" +#elseif arch(i386) || arch(arm) || arch(arm64_32) + let CGRectType = "{CGRect={CGPoint=ff}{CGSize=ff}}" + let CGSizeType = "{CGSize=ff}" + let CGPointType = "{CGPoint=ff}" #endif extension CGRect : KVORepresentable { diff --git a/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift b/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift index ba39b5a..8fc78c7 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+KVORepresentable.swift @@ -9,25 +9,23 @@ #if !os(Linux) import Foundation.NSObject -#if !RX_NO_MODULE - import RxSwift -#endif - - /// Key value observing options - public struct KeyValueObservingOptions: OptionSet { - /// Raw value - public let rawValue: UInt +import RxSwift - public init(rawValue: UInt) { - self.rawValue = rawValue - } +/// Key value observing options +public struct KeyValueObservingOptions: OptionSet { + /// Raw value + public let rawValue: UInt - /// Whether a sequence element should be sent to the observer immediately, before the subscribe method even returns. - public static let initial = KeyValueObservingOptions(rawValue: 1 << 0) - /// Whether to send updated values. - public static let new = KeyValueObservingOptions(rawValue: 1 << 1) + public init(rawValue: UInt) { + self.rawValue = rawValue } + /// Whether a sequence element should be sent to the observer immediately, before the subscribe method even returns. + public static let initial = KeyValueObservingOptions(rawValue: 1 << 0) + /// Whether to send updated values. + public static let new = KeyValueObservingOptions(rawValue: 1 << 1) +} + extension Reactive where Base: NSObject { /** diff --git a/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift b/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift index 82bc084..7a874bf 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx+RawRepresentable.swift @@ -8,10 +8,9 @@ #if !os(Linux) +import RxSwift + import Foundation.NSObject -#if !RX_NO_MODULE - import RxSwift -#endif extension Reactive where Base: NSObject { /** diff --git a/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx.swift index 0d09bcb..210b2dc 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Foundation/NSObject+Rx.swift @@ -9,11 +9,9 @@ #if !os(Linux) import Foundation.NSObject -#if !RX_NO_MODULE - import RxSwift - #if SWIFT_PACKAGE && !DISABLE_SWIZZLING && !os(Linux) - import RxCocoaRuntime - #endif +import RxSwift +#if SWIFT_PACKAGE && !DISABLE_SWIZZLING && !os(Linux) + import RxCocoaRuntime #endif #if !DISABLE_SWIZZLING && !os(Linux) diff --git a/Example/Pods/RxCocoa/RxCocoa/Foundation/NotificationCenter+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/Foundation/NotificationCenter+Rx.swift index 883e973..f15e718 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Foundation/NotificationCenter+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Foundation/NotificationCenter+Rx.swift @@ -9,9 +9,7 @@ import class Foundation.NotificationCenter import struct Foundation.Notification -#if !RX_NO_MODULE import RxSwift -#endif extension Reactive where Base: NotificationCenter { /** diff --git a/Example/Pods/RxCocoa/RxCocoa/Foundation/URLSession+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/Foundation/URLSession+Rx.swift index bedd395..26bc61b 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Foundation/URLSession+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Foundation/URLSession+Rx.swift @@ -24,9 +24,7 @@ import var Foundation.NSURLErrorDomain import Foundation #endif -#if !RX_NO_MODULE import RxSwift -#endif /// RxCocoa URL errors. public enum RxCocoaURLError diff --git a/Example/Pods/RxCocoa/RxCocoa/RxCocoa.swift b/Example/Pods/RxCocoa/RxCocoa/RxCocoa.swift index ffdc26e..60ef4d3 100644 --- a/Example/Pods/RxCocoa/RxCocoa/RxCocoa.swift +++ b/Example/Pods/RxCocoa/RxCocoa/RxCocoa.swift @@ -8,9 +8,7 @@ import class Foundation.NSNull -#if !RX_NO_MODULE import RxSwift -#endif #if os(iOS) import UIKit #endif @@ -134,7 +132,7 @@ func castOrFatalError(_ value: AnyObject!, message: String) -> T { func castOrFatalError(_ value: Any!) -> T { let maybeResult: T? = value as? T guard let result = maybeResult else { - rxFatalError("Failure converting from \(value) to \(T.self)") + rxFatalError("Failure converting from \(String(describing: value)) to \(T.self)") } return result @@ -147,11 +145,8 @@ let delegateNotSet = "Delegate not set" // MARK: Shared with RxSwift -#if !RX_NO_MODULE - func rxFatalError(_ lastMessage: String) -> Never { // The temptation to comment this line is great, but please don't, it's for your own good. The choice is yours. fatalError(lastMessage) } -#endif diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/BehaviorRelay.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/BehaviorRelay.swift index 26c51a2..8bf5af5 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/BehaviorRelay.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/BehaviorRelay.swift @@ -6,9 +6,7 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift /// BehaviorRelay is a wrapper for `BehaviorSubject`. /// @@ -18,7 +16,7 @@ public final class BehaviorRelay: ObservableType { private let _subject: BehaviorSubject - // Accepts `event` and emits it to subscribers + /// Accepts `event` and emits it to subscribers public func accept(_ event: Element) { _subject.onNext(event) } @@ -29,7 +27,7 @@ public final class BehaviorRelay: ObservableType { return try! _subject.value() } - /// Initializes variable with initial value. + /// Initializes behavior relay with initial value. public init(value: Element) { _subject = BehaviorSubject(value: value) } diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/ControlEvent.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/ControlEvent.swift index d90ad42..06a0f7b 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/ControlEvent.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/ControlEvent.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift /// Protocol that enables extension of `ControlEvent`. public protocol ControlEventType : ObservableType { diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/ControlProperty.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/ControlProperty.swift index a42f552..498f9e4 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/ControlProperty.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/ControlProperty.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE import RxSwift -#endif /// Protocol that enables extension of `ControlProperty`. public protocol ControlPropertyType : ObservableType, ObserverType { @@ -21,7 +19,7 @@ public protocol ControlPropertyType : ObservableType, ObserverType { Trait for `Observable`/`ObservableType` that represents property of UI element. Sequence of values only represents initial control value and user initiated value changes. - Programatic value changes won't be reported. + Programmatic value changes won't be reported. It's properties are: @@ -71,12 +69,12 @@ public struct ControlProperty : ControlPropertyType { /// `ControlEvent` of user initiated value changes. Every time user updates control value change event /// will be emitted from `changed` event. /// - /// Programatic changes to control value won't be reported. + /// Programmatic changes to control value won't be reported. /// /// It contains all control property values except for first one. /// /// The name only implies that sequence element will be generated once user changes a value and not that - /// adjacent sequence values need to be different (e.g. because of interaction between programatic and user updates, + /// adjacent sequence values need to be different (e.g. because of interaction between programmatic and user updates, /// or for any other reason). public var changed: ControlEvent { get { diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift index 0f195f3..b882e40 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/BehaviorRelay+Driver.swift @@ -6,9 +6,7 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift extension BehaviorRelay { /// Converts `BehaviorRelay` to `Driver`. diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlEvent+Driver.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlEvent+Driver.swift index 7a9f0b0..c0ca704 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlEvent+Driver.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlEvent+Driver.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE import RxSwift -#endif extension ControlEvent { /// Converts `ControlEvent` to `Driver` trait. diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlProperty+Driver.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlProperty+Driver.swift index 214ed19..c809780 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlProperty+Driver.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ControlProperty+Driver.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE import RxSwift -#endif extension ControlProperty { /// Converts `ControlProperty` to `Driver` trait. diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver+Subscription.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver+Subscription.swift index 9edda00..42c2774 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver+Subscription.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver+Subscription.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE import RxSwift -#endif private let errorMessage = "`drive*` family of methods can be only called from `MainThread`.\n" + "This is required to ensure that the last replayed `Driver` element is delivered on `MainThread`.\n" @@ -46,8 +44,8 @@ extension SharedSequenceConvertibleType where SharingStrategy == DriverSharingSt Creates new subscription and sends elements to `BehaviorRelay`. This method can be only called from `MainThread`. - - parameter variable: Target variable for sequence elements. - - returns: Disposable object that can be used to unsubscribe the observer from the variable. + - parameter relay: Target relay for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer from the relay. */ public func drive(_ relay: BehaviorRelay) -> Disposable { MainScheduler.ensureExecutingOnScheduler(errorMessage: errorMessage) @@ -57,11 +55,11 @@ extension SharedSequenceConvertibleType where SharingStrategy == DriverSharingSt } /** - Creates new subscription and sends elements to variable. + Creates new subscription and sends elements to `BehaviorRelay`. This method can be only called from `MainThread`. - - parameter variable: Target variable for sequence elements. - - returns: Disposable object that can be used to unsubscribe the observer from the variable. + - parameter relay: Target relay for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer from the relay. */ public func drive(_ relay: BehaviorRelay) -> Disposable { MainScheduler.ensureExecutingOnScheduler(errorMessage: errorMessage) diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver.swift index 41780e0..1f42277 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/Driver.swift @@ -6,10 +6,7 @@ // Copyright © 2016 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif - +import RxSwift /** Trait that represents observable sequence with following properties: diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift index ba66102..ac62190 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Driver/ObservableConvertibleType+Driver.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE import RxSwift -#endif extension ObservableConvertibleType { /** diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/PublishRelay.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/PublishRelay.swift index 82c6442..f1ef6d7 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/PublishRelay.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/PublishRelay.swift @@ -6,9 +6,7 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift /// PublishRelay is a wrapper for `PublishSubject`. /// @@ -23,7 +21,7 @@ public final class PublishRelay: ObservableType { _subject.onNext(event) } - /// Initializes variable with initial value. + /// Initializes with internal empty subject. public init() { _subject = PublishSubject() } diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/ObservableConvertibleType+SharedSequence.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/ObservableConvertibleType+SharedSequence.swift new file mode 100644 index 0000000..dac504b --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/ObservableConvertibleType+SharedSequence.swift @@ -0,0 +1,57 @@ +// +// ObservableConvertibleType+SharedSequence.swift +// RxCocoa +// +// Created by Krunoslav Zaher on 11/1/17. +// Copyright © 2017 Krunoslav Zaher. All rights reserved. +// + +import RxSwift + +extension ObservableConvertibleType { + /** + Converts anything convertible to `Observable` to `SharedSequence` unit. + + - parameter onErrorJustReturn: Element to return in case of error and after that complete the sequence. + - returns: Driving observable sequence. + */ + public func asSharedSequence(sharingStrategy: S.Type = S.self, onErrorJustReturn: E) -> SharedSequence { + let source = self + .asObservable() + .observeOn(S.scheduler) + .catchErrorJustReturn(onErrorJustReturn) + return SharedSequence(source) + } + + /** + Converts anything convertible to `Observable` to `SharedSequence` unit. + + - parameter onErrorDriveWith: SharedSequence that provides elements of the sequence in case of error. + - returns: Driving observable sequence. + */ + public func asSharedSequence(sharingStrategy: S.Type = S.self, onErrorDriveWith: SharedSequence) -> SharedSequence { + let source = self + .asObservable() + .observeOn(S.scheduler) + .catchError { _ in + onErrorDriveWith.asObservable() + } + return SharedSequence(source) + } + + /** + Converts anything convertible to `Observable` to `SharedSequence` unit. + + - parameter onErrorRecover: Calculates driver that continues to drive the sequence in case of error. + - returns: Driving observable sequence. + */ + public func asSharedSequence(sharingStrategy: S.Type = S.self, onErrorRecover: @escaping (_ error: Swift.Error) -> SharedSequence) -> SharedSequence { + let source = self + .asObservable() + .observeOn(S.scheduler) + .catchError { error in + onErrorRecover(error).asObservable() + } + return SharedSequence(source) + } +} diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift index 4e66cdb..980d9d3 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators+arity.swift @@ -7,9 +7,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE import RxSwift -#endif diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift index bc38292..7f4bd28 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence+Operators.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE import RxSwift -#endif // MARK: map extension SharedSequenceConvertibleType { diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence.swift index bdec736..b41e7d1 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/SharedSequence/SharedSequence.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift /** Trait that represents observable sequence that shares computation resources with following properties: diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ControlEvent+Signal.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ControlEvent+Signal.swift new file mode 100644 index 0000000..157f8d6 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ControlEvent+Signal.swift @@ -0,0 +1,25 @@ +// +// ControlEvent+Signal.swift +// RxCocoa +// +// Created by Krunoslav Zaher on 11/1/17. +// Copyright © 2017 Krunoslav Zaher. All rights reserved. +// + +import RxSwift + +extension ControlEvent { + /// Converts `ControlEvent` to `Signal` trait. + /// + /// `ControlEvent` already can't fail, so no special case needs to be handled. + public func asSignal() -> Signal { + return self.asSignal { (error) -> Signal in + #if DEBUG + rxFatalError("Somehow signal received error from a source that shouldn't fail.") + #else + return Signal.empty() + #endif + } + } +} + diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift index 0e0823e..acc073a 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/ObservableConvertibleType+Signal.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift extension ObservableConvertibleType { /** diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/PublishRelay+Signal.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/PublishRelay+Signal.swift index a6e73df..ab4b8d8 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/PublishRelay+Signal.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/PublishRelay+Signal.swift @@ -6,9 +6,7 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift extension PublishRelay { /// Converts `PublishRelay` to `Signal`. diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal+Subscription.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal+Subscription.swift index 4946fb3..e8c54f2 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal+Subscription.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal+Subscription.swift @@ -6,9 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift extension SharedSequenceConvertibleType where SharingStrategy == SignalSharingStrategy { /** @@ -36,10 +34,32 @@ extension SharedSequenceConvertibleType where SharingStrategy == SignalSharingSt } /** - Creates new subscription and sends elements to variable. + Creates new subscription and sends elements to `BehaviorRelay`. + - parameter relay: Target relay for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer from the relay. + */ + public func emit(to relay: BehaviorRelay) -> Disposable { + return emit(onNext: { e in + relay.accept(e) + }) + } + + /** + Creates new subscription and sends elements to `BehaviorRelay`. + - parameter relay: Target relay for sequence elements. + - returns: Disposable object that can be used to unsubscribe the observer from the relay. + */ + public func emit(to relay: BehaviorRelay) -> Disposable { + return emit(onNext: { e in + relay.accept(e) + }) + } + + /** + Creates new subscription and sends elements to relay. - parameter relay: Target relay for sequence elements. - - returns: Disposable object that can be used to unsubscribe the observer from the variable. + - returns: Disposable object that can be used to unsubscribe the observer from the relay. */ public func emit(to relay: PublishRelay) -> Disposable { return emit(onNext: { e in @@ -48,10 +68,10 @@ extension SharedSequenceConvertibleType where SharingStrategy == SignalSharingSt } /** - Creates new subscription and sends elements to variable. + Creates new subscription and sends elements to relay. - parameter to: Target relay for sequence elements. - - returns: Disposable object that can be used to unsubscribe the observer from the variable. + - returns: Disposable object that can be used to unsubscribe the observer from the relay. */ public func emit(to relay: PublishRelay) -> Disposable { return emit(onNext: { e in diff --git a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal.swift b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal.swift index 0f15d3a..b717560 100644 --- a/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal.swift +++ b/Example/Pods/RxCocoa/RxCocoa/Traits/Signal/Signal.swift @@ -6,9 +6,7 @@ // Copyright © 2016 Krunoslav Zaher. All rights reserved. // -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift /** Trait that represents observable sequence with following properties: diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift index 366f8e1..8c4b2ee 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif // objc monkey business class _RxCollectionViewReactiveArrayDataSource diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxPickerViewAdapter.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxPickerViewAdapter.swift index 3908528..550a033 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxPickerViewAdapter.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxPickerViewAdapter.swift @@ -7,10 +7,9 @@ // #if os(iOS) - import UIKit -#if !RX_NO_MODULE - import RxSwift -#endif + +import UIKit +import RxSwift class RxPickerViewArrayDataSource: NSObject, UIPickerViewDataSource, SectionedViewDataSourceType { fileprivate var items: [T] = [] diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift index 69fb2d2..b99cff5 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif // objc monkey business class _RxTableViewReactiveArrayDataSource diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/NSTextStorage+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/NSTextStorage+Rx.swift index b087224..c8e435a 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/NSTextStorage+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/NSTextStorage+Rx.swift @@ -7,10 +7,12 @@ // #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit + + #if swift(>=4.2) + public typealias NSTextStorageEditActions = NSTextStorage.EditActions + #endif extension Reactive where Base: NSTextStorage { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift index 2005dc4..e248ee9 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif /// Marks data source as `UICollectionView` reactive data source enabling it to be used with one of the `bindTo` methods. public protocol RxCollectionViewDataSourceType /*: UICollectionViewDataSource*/ { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxPickerViewDataSourceType.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxPickerViewDataSourceType.swift index dad4948..1f390bf 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxPickerViewDataSourceType.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxPickerViewDataSourceType.swift @@ -8,10 +8,8 @@ #if os(iOS) - import UIKit -#if !RX_NO_MODULE - import RxSwift -#endif +import UIKit +import RxSwift /// Marks data source as `UIPickerView` reactive data source enabling it to be used with one of the `bindTo` methods. public protocol RxPickerViewDataSourceType { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift index 398d533..4bea943 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif /// Marks data source as `UITableView` reactive data source enabling it to be used with one of the `bindTo` methods. public protocol RxTableViewDataSourceType /*: UITableViewDataSource*/ { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourcePrefetchingProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourcePrefetchingProxy.swift new file mode 100644 index 0000000..779d8d4 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourcePrefetchingProxy.swift @@ -0,0 +1,92 @@ +// +// RxCollectionViewDataSourcePrefetchingProxy.swift +// RxCocoa +// +// Created by Rowan Livingstone on 2/15/18. +// Copyright © 2018 Krunoslav Zaher. All rights reserved. +// + +#if os(iOS) || os(tvOS) + +import UIKit +import RxSwift + +@available(iOS 10.0, tvOS 10.0, *) +extension UICollectionView: HasPrefetchDataSource { + public typealias PrefetchDataSource = UICollectionViewDataSourcePrefetching +} + +@available(iOS 10.0, tvOS 10.0, *) +fileprivate let collectionViewPrefetchDataSourceNotSet = CollectionViewPrefetchDataSourceNotSet() + +@available(iOS 10.0, tvOS 10.0, *) +fileprivate final class CollectionViewPrefetchDataSourceNotSet + : NSObject + , UICollectionViewDataSourcePrefetching { + + func collectionView(_ collectionView: UICollectionView, prefetchItemsAt indexPaths: [IndexPath]) {} + +} + +@available(iOS 10.0, tvOS 10.0, *) +open class RxCollectionViewDataSourcePrefetchingProxy + : DelegateProxy + , DelegateProxyType + , UICollectionViewDataSourcePrefetching { + + /// Typed parent object. + public weak private(set) var collectionView: UICollectionView? + + /// - parameter collectionView: Parent object for delegate proxy. + public init(collectionView: ParentObject) { + self.collectionView = collectionView + super.init(parentObject: collectionView, delegateProxy: RxCollectionViewDataSourcePrefetchingProxy.self) + } + + // Register known implementations + public static func registerKnownImplementations() { + self.register { RxCollectionViewDataSourcePrefetchingProxy(collectionView: $0) } + } + + fileprivate var _prefetchItemsPublishSubject: PublishSubject<[IndexPath]>? + + /// Optimized version used for observing prefetch items callbacks. + internal var prefetchItemsPublishSubject: PublishSubject<[IndexPath]> { + if let subject = _prefetchItemsPublishSubject { + return subject + } + + let subject = PublishSubject<[IndexPath]>() + _prefetchItemsPublishSubject = subject + + return subject + } + + private weak var _requiredMethodsPrefetchDataSource: UICollectionViewDataSourcePrefetching? = collectionViewPrefetchDataSourceNotSet + + // MARK: delegate + + /// Required delegate method implementation. + public func collectionView(_ collectionView: UICollectionView, prefetchItemsAt indexPaths: [IndexPath]) { + if let subject = _prefetchItemsPublishSubject { + subject.on(.next(indexPaths)) + } + + (_requiredMethodsPrefetchDataSource ?? collectionViewPrefetchDataSourceNotSet).collectionView(collectionView, prefetchItemsAt: indexPaths) + } + + /// For more information take a look at `DelegateProxyType`. + open override func setForwardToDelegate(_ forwardToDelegate: UICollectionViewDataSourcePrefetching?, retainDelegate: Bool) { + _requiredMethodsPrefetchDataSource = forwardToDelegate ?? collectionViewPrefetchDataSourceNotSet + super.setForwardToDelegate(forwardToDelegate, retainDelegate: retainDelegate) + } + + deinit { + if let subject = _prefetchItemsPublishSubject { + subject.on(.completed) + } + } + +} + +#endif diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift index 82b42fe..9c970a2 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift @@ -9,21 +9,18 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif extension UICollectionView: HasDataSource { public typealias DataSource = UICollectionViewDataSource } -let collectionViewDataSourceNotSet = CollectionViewDataSourceNotSet() +fileprivate let collectionViewDataSourceNotSet = CollectionViewDataSourceNotSet() -final class CollectionViewDataSourceNotSet +fileprivate final class CollectionViewDataSourceNotSet : NSObject , UICollectionViewDataSource { - func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { return 0 } diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift index 4fd82f1..dd8f4b4 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif /// For more information take a look at `DelegateProxyType`. open class RxCollectionViewDelegateProxy diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxNavigationControllerDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxNavigationControllerDelegateProxy.swift index 59940e0..372bf79 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxNavigationControllerDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxNavigationControllerDelegateProxy.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit - #if !RX_NO_MODULE - import RxSwift - #endif + import RxSwift extension UINavigationController: HasDelegate { public typealias Delegate = UINavigationControllerDelegate diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDataSourceProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDataSourceProxy.swift index 745a184..d0d3733 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDataSourceProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDataSourceProxy.swift @@ -8,10 +8,8 @@ #if os(iOS) - import UIKit -#if !RX_NO_MODULE - import RxSwift -#endif +import UIKit +import RxSwift extension UIPickerView: HasDataSource { public typealias DataSource = UIPickerViewDataSource diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDelegateProxy.swift index 0252db1..922126f 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxPickerViewDelegateProxy.swift @@ -8,9 +8,7 @@ #if os(iOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension UIPickerView: HasDelegate { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift index f591114..dbaf238 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension UIScrollView: HasDelegate { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift index 1c0c7f9..532ab68 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif extension UISearchBar: HasDelegate { public typealias Delegate = UISearchBarDelegate diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchControllerDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchControllerDelegateProxy.swift index 0cb2588..8341aa3 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchControllerDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxSearchControllerDelegateProxy.swift @@ -7,11 +7,9 @@ // #if os(iOS) - -#if !RX_NO_MODULE - import RxSwift -#endif - import UIKit + +import RxSwift +import UIKit extension UISearchController: HasDelegate { public typealias Delegate = UISearchControllerDelegate diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarControllerDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarControllerDelegateProxy.swift index 232ab6a..585894c 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarControllerDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarControllerDelegateProxy.swift @@ -7,11 +7,9 @@ // #if os(iOS) || os(tvOS) -import UIKit -#if !RX_NO_MODULE +import UIKit import RxSwift -#endif extension UITabBarController: HasDelegate { public typealias Delegate = UITabBarControllerDelegate diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarDelegateProxy.swift index 2b0593e..c4a1704 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTabBarDelegateProxy.swift @@ -7,11 +7,9 @@ // #if os(iOS) || os(tvOS) -import UIKit -#if !RX_NO_MODULE +import UIKit import RxSwift -#endif extension UITabBar: HasDelegate { public typealias Delegate = UITabBarDelegate diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourcePrefetchingProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourcePrefetchingProxy.swift new file mode 100644 index 0000000..a8bdf41 --- /dev/null +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourcePrefetchingProxy.swift @@ -0,0 +1,93 @@ +// +// RxTableViewDataSourcePrefetchingProxy.swift +// RxCocoa +// +// Created by Rowan Livingstone on 2/15/18. +// Copyright © 2018 Krunoslav Zaher. All rights reserved. +// + +#if os(iOS) || os(tvOS) + +import UIKit +import RxSwift + +@available(iOS 10.0, tvOS 10.0, *) +extension UITableView: HasPrefetchDataSource { + public typealias PrefetchDataSource = UITableViewDataSourcePrefetching +} + +@available(iOS 10.0, tvOS 10.0, *) +fileprivate let tableViewPrefetchDataSourceNotSet = TableViewPrefetchDataSourceNotSet() + +@available(iOS 10.0, tvOS 10.0, *) +fileprivate final class TableViewPrefetchDataSourceNotSet + : NSObject + , UITableViewDataSourcePrefetching { + + func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) {} + +} + +@available(iOS 10.0, tvOS 10.0, *) +open class RxTableViewDataSourcePrefetchingProxy + : DelegateProxy + , DelegateProxyType + , UITableViewDataSourcePrefetching { + + /// Typed parent object. + public weak private(set) var tableView: UITableView? + + /// - parameter tableView: Parent object for delegate proxy. + public init(tableView: ParentObject) { + self.tableView = tableView + super.init(parentObject: tableView, delegateProxy: RxTableViewDataSourcePrefetchingProxy.self) + } + + // Register known implementations + public static func registerKnownImplementations() { + self.register { RxTableViewDataSourcePrefetchingProxy(tableView: $0) } + } + + fileprivate var _prefetchRowsPublishSubject: PublishSubject<[IndexPath]>? + + /// Optimized version used for observing prefetch rows callbacks. + internal var prefetchRowsPublishSubject: PublishSubject<[IndexPath]> { + if let subject = _prefetchRowsPublishSubject { + return subject + } + + let subject = PublishSubject<[IndexPath]>() + _prefetchRowsPublishSubject = subject + + return subject + } + + private weak var _requiredMethodsPrefetchDataSource: UITableViewDataSourcePrefetching? = tableViewPrefetchDataSourceNotSet + + // MARK: delegate + + /// Required delegate method implementation. + public func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) { + if let subject = _prefetchRowsPublishSubject { + subject.on(.next(indexPaths)) + } + + (_requiredMethodsPrefetchDataSource ?? tableViewPrefetchDataSourceNotSet).tableView(tableView, prefetchRowsAt: indexPaths) + } + + /// For more information take a look at `DelegateProxyType`. + open override func setForwardToDelegate(_ forwardToDelegate: UITableViewDataSourcePrefetching?, retainDelegate: Bool) { + _requiredMethodsPrefetchDataSource = forwardToDelegate ?? tableViewPrefetchDataSourceNotSet + super.setForwardToDelegate(forwardToDelegate, retainDelegate: retainDelegate) + } + + deinit { + if let subject = _prefetchRowsPublishSubject { + subject.on(.completed) + } + } + +} + +#endif + diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift index 144d8c6..7536d1b 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift @@ -9,17 +9,15 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif extension UITableView: HasDataSource { public typealias DataSource = UITableViewDataSource } -let tableViewDataSourceNotSet = TableViewDataSourceNotSet() +fileprivate let tableViewDataSourceNotSet = TableViewDataSourceNotSet() -final class TableViewDataSourceNotSet +fileprivate final class TableViewDataSourceNotSet : NSObject , UITableViewDataSource { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift index d32a4a2..86a8758 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif /// For more information take a look at `DelegateProxyType`. open class RxTableViewDelegateProxy diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextStorageDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextStorageDelegateProxy.swift index 63194ee..12669f9 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextStorageDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextStorageDelegateProxy.swift @@ -7,10 +7,8 @@ // #if os(iOS) || os(tvOS) - - #if !RX_NO_MODULE - import RxSwift - #endif + + import RxSwift import UIKit extension NSTextStorage: HasDelegate { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift index 42f2d23..c8a1dfd 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif /// For more information take a look at `DelegateProxyType`. open class RxTextViewDelegateProxy diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxWebViewDelegateProxy.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxWebViewDelegateProxy.swift index df41011..36a03dc 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxWebViewDelegateProxy.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/Proxies/RxWebViewDelegateProxy.swift @@ -7,11 +7,9 @@ // #if os(iOS) -import UIKit -#if !RX_NO_MODULE +import UIKit import RxSwift -#endif extension UIWebView: HasDelegate { public typealias Delegate = UIWebViewDelegate diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIActivityIndicatorView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIActivityIndicatorView+Rx.swift index 7b11d28..bf00996 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIActivityIndicatorView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIActivityIndicatorView+Rx.swift @@ -7,11 +7,9 @@ // #if os(iOS) || os(tvOS) -import UIKit -#if !RX_NO_MODULE +import UIKit import RxSwift -#endif extension Reactive where Base: UIActivityIndicatorView { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIAlertAction+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIAlertAction+Rx.swift index d622f84..a992fe1 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIAlertAction+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIAlertAction+Rx.swift @@ -9,10 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit - -#if !RX_NO_MODULE import RxSwift -#endif extension Reactive where Base: UIAlertAction { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIApplication+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIApplication+Rx.swift index 24d9b29..c6ed134 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIApplication+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIApplication+Rx.swift @@ -7,11 +7,9 @@ // #if os(iOS) - import UIKit -#if !RX_NO_MODULE + import UIKit import RxSwift -#endif extension Reactive where Base: UIApplication { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIBarButtonItem+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIBarButtonItem+Rx.swift index 7ad5eb6..d4076e4 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIBarButtonItem+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIBarButtonItem+Rx.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif fileprivate var rx_tap_key: UInt8 = 0 diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift index a2a7187..57a0e8f 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIButton+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UIButton { @@ -25,9 +23,7 @@ extension Reactive where Base: UIButton { #if os(tvOS) -#if !RX_NO_MODULE - import RxSwift -#endif +import RxSwift import UIKit extension Reactive where Base: UIButton { @@ -43,10 +39,12 @@ extension Reactive where Base: UIButton { #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE - import RxSwift +import RxSwift +import UIKit + +#if swift(>=4.2) + public typealias UIControlState = UIControl.State #endif - import UIKit extension Reactive where Base: UIButton { @@ -75,10 +73,8 @@ extension Reactive where Base: UIButton { #endif #if os(iOS) || os(tvOS) - -#if !RX_NO_MODULE + import RxSwift -#endif import UIKit extension Reactive where Base: UIButton { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift index d53db25..ee5aa19 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UICollectionView+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit // Items @@ -187,7 +185,7 @@ extension Reactive where Base: UICollectionView { public var itemSelected: ControlEvent { let source = delegate.methodInvoked(#selector(UICollectionViewDelegate.collectionView(_:didSelectItemAt:))) .map { a in - return a[1] as! IndexPath + return try castOrThrow(IndexPath.self, a[1]) } return ControlEvent(events: source) @@ -197,7 +195,7 @@ extension Reactive where Base: UICollectionView { public var itemDeselected: ControlEvent { let source = delegate.methodInvoked(#selector(UICollectionViewDelegate.collectionView(_:didDeselectItemAt:))) .map { a in - return a[1] as! IndexPath + return try castOrThrow(IndexPath.self, a[1]) } return ControlEvent(events: source) @@ -315,8 +313,50 @@ extension Reactive where Base: UICollectionView { let element = try dataSource.model(at: indexPath) - return element as! T + return try castOrThrow(T.self, element) + } +} + +@available(iOS 10.0, tvOS 10.0, *) +extension Reactive where Base: UICollectionView { + + /// Reactive wrapper for `prefetchDataSource`. + /// + /// For more information take a look at `DelegateProxyType` protocol documentation. + public var prefetchDataSource: DelegateProxy { + return RxCollectionViewDataSourcePrefetchingProxy.proxy(for: base) + } + + /** + Installs prefetch data source as forwarding delegate on `rx.prefetchDataSource`. + Prefetch data source won't be retained. + + It enables using normal delegate mechanism with reactive delegate mechanism. + + - parameter prefetchDataSource: Prefetch data source object. + - returns: Disposable object that can be used to unbind the data source. + */ + public func setPrefetchDataSource(_ prefetchDataSource: UICollectionViewDataSourcePrefetching) + -> Disposable { + return RxCollectionViewDataSourcePrefetchingProxy.installForwardDelegate(prefetchDataSource, retainDelegate: false, onProxyForObject: self.base) } + + /// Reactive wrapper for `prefetchDataSource` message `collectionView(_:prefetchItemsAt:)`. + public var prefetchItems: ControlEvent<[IndexPath]> { + let source = RxCollectionViewDataSourcePrefetchingProxy.proxy(for: base).prefetchItemsPublishSubject + return ControlEvent(events: source) + } + + /// Reactive wrapper for `prefetchDataSource` message `collectionView(_:cancelPrefetchingForItemsAt:)`. + public var cancelPrefetchingForItems: ControlEvent<[IndexPath]> { + let source = prefetchDataSource.methodInvoked(#selector(UICollectionViewDataSourcePrefetching.collectionView(_:cancelPrefetchingForItemsAt:))) + .map { a in + return try castOrThrow(Array.self, a[1]) + } + + return ControlEvent(events: source) + } + } #endif @@ -329,8 +369,8 @@ extension Reactive where Base: UICollectionView { let source = delegate.methodInvoked(#selector(UICollectionViewDelegate.collectionView(_:didUpdateFocusIn:with:))) .map { a -> (context: UICollectionViewFocusUpdateContext, animationCoordinator: UIFocusAnimationCoordinator) in - let context = a[1] as! UICollectionViewFocusUpdateContext - let animationCoordinator = a[2] as! UIFocusAnimationCoordinator + let context = try castOrThrow(UICollectionViewFocusUpdateContext.self, a[1]) + let animationCoordinator = try castOrThrow(UIFocusAnimationCoordinator.self, a[2]) return (context: context, animationCoordinator: animationCoordinator) } diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIControl+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIControl+Rx.swift index 3d2d565..ef0a11f 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIControl+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIControl+Rx.swift @@ -8,11 +8,13 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit +#if swift(>=4.2) + public typealias UIControlEvents = UIControl.Event +#endif + extension Reactive where Base: UIControl { /// Bindable sink for `enabled` property. @@ -86,7 +88,7 @@ extension Reactive where Base: UIControl { return ControlProperty(values: source, valueSink: bindingObserver) } - /// This is a separate method is to better communicate to public consumers that + /// This is a separate method to better communicate to public consumers that /// an `editingEvent` needs to fire for control property to be updated. internal func controlPropertyWithDefaultEvents( editingEvents: UIControlEvents = [.allEditingEvents, .valueChanged], @@ -94,7 +96,7 @@ extension Reactive where Base: UIControl { setter: @escaping (Base, T) -> () ) -> ControlProperty { return controlProperty( - editingEvents: [.allEditingEvents, .valueChanged], + editingEvents: editingEvents, getter: getter, setter: setter ) diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIDatePicker+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIDatePicker+Rx.swift index 1c257b9..233be86 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIDatePicker+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIDatePicker+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UIDatePicker { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIGestureRecognizer+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIGestureRecognizer+Rx.swift index 05ee356..6da3fb1 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIGestureRecognizer+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIGestureRecognizer+Rx.swift @@ -9,10 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif - // This should be only used from `MainScheduler` final class GestureTarget: RxTarget { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift index bc86849..b6315c2 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIImageView+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UIImageView { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UILabel+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UILabel+Rx.swift index fedc73c..f533f56 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UILabel+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UILabel+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UILabel { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationController+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationController+Rx.swift index a3c27b2..2391351 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationController+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationController+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UINavigationController { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationItem+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationItem+Rx.swift index 1c9e0a7..6250033 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationItem+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UINavigationItem+Rx.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif extension Reactive where Base: UINavigationItem { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIPageControl+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIPageControl+Rx.swift index 88713d6..f21decf 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIPageControl+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIPageControl+Rx.swift @@ -7,10 +7,8 @@ // #if os(iOS) || os(tvOS) - -#if !RX_NO_MODULE + import RxSwift -#endif import UIKit extension Reactive where Base: UIPageControl { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIPickerView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIPickerView+Rx.swift index 0b18708..f201947 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIPickerView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIPickerView+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UIPickerView { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIProgressView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIProgressView+Rx.swift index e683a36..7a39d9a 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIProgressView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIProgressView+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UIProgressView { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIRefreshControl+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIRefreshControl+Rx.swift index 935a3b5..cdb10be 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIRefreshControl+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIRefreshControl+Rx.swift @@ -7,11 +7,9 @@ // #if os(iOS) -import UIKit -#if !RX_NO_MODULE +import UIKit import RxSwift -#endif extension Reactive where Base: UIRefreshControl { /// Bindable sink for `beginRefreshing()`, `endRefreshing()` methods. diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIScrollView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIScrollView+Rx.swift index 83ba730..2d5d74c 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIScrollView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIScrollView+Rx.swift @@ -8,10 +8,7 @@ #if os(iOS) || os(tvOS) - #if !RX_NO_MODULE - import RxSwift - #endif - + import RxSwift import UIKit extension Reactive where Base: UIScrollView { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchBar+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchBar+Rx.swift index 6884bb2..c8a78c3 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchBar+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchBar+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UISearchBar { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchController+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchController+Rx.swift index 7c35d2f..da5a0de 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchController+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UISearchController+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit @available(iOS 8.0, *) diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UISegmentedControl+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UISegmentedControl+Rx.swift index e7bc685..7594f27 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UISegmentedControl+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UISegmentedControl+Rx.swift @@ -9,10 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif - extension Reactive where Base: UISegmentedControl { /// Reactive wrapper for `selectedSegmentIndex` property. @@ -31,6 +28,27 @@ extension Reactive where Base: UISegmentedControl { ) } + /// Reactive wrapper for `setEnabled(_:forSegmentAt:)` + public func enabledForSegment(at index: Int) -> Binder { + return Binder(self.base) { (segmentedControl, segmentEnabled) -> () in + segmentedControl.setEnabled(segmentEnabled, forSegmentAt: index) + } + } + + /// Reactive wrapper for `setTitle(_:forSegmentAt:)` + public func titleForSegment(at index: Int) -> Binder { + return Binder(self.base) { (segmentedControl, title) -> () in + segmentedControl.setTitle(title, forSegmentAt: index) + } + } + + /// Reactive wrapper for `setImage(_:forSegmentAt:)` + public func imageForSegment(at index: Int) -> Binder { + return Binder(self.base) { (segmentedControl, image) -> () in + segmentedControl.setImage(image, forSegmentAt: index) + } + } + } #endif diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UISlider+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UISlider+Rx.swift index 2c84842..07d4adb 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UISlider+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UISlider+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UISlider { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIStepper+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIStepper+Rx.swift index d477fb6..1fcb57a 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIStepper+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIStepper+Rx.swift @@ -9,9 +9,7 @@ #if os(iOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif extension Reactive where Base: UIStepper { @@ -25,6 +23,13 @@ extension Reactive where Base: UIStepper { } ) } + + /// Reactive wrapper for `stepValue` property. + public var stepValue: Binder { + return Binder(self.base) { stepper, value in + stepper.stepValue = value + } + } } diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UISwitch+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UISwitch+Rx.swift index 2472626..4129fce 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UISwitch+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UISwitch+Rx.swift @@ -9,10 +9,7 @@ #if os(iOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif - extension Reactive where Base: UISwitch { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBar+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBar+Rx.swift index f769b57..7879684 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBar+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBar+Rx.swift @@ -7,11 +7,9 @@ // #if os(iOS) || os(tvOS) -import UIKit -#if !RX_NO_MODULE +import UIKit import RxSwift -#endif /** iOS only diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarController+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarController+Rx.swift index 6b7fda2..34a3501 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarController+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarController+Rx.swift @@ -7,11 +7,9 @@ // #if os(iOS) || os(tvOS) + import UIKit - -#if !RX_NO_MODULE import RxSwift -#endif /** iOS only diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarItem+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarItem+Rx.swift index 0ed66f6..1664e27 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarItem+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UITabBarItem+Rx.swift @@ -8,10 +8,8 @@ #if os(iOS) || os(tvOS) - import UIKit -#if !RX_NO_MODULE - import RxSwift -#endif +import UIKit +import RxSwift extension Reactive where Base: UITabBarItem { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift index 12a236b..630b894 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UITableView+Rx.swift @@ -8,11 +8,13 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit +#if swift(>=4.2) + public typealias UITableViewCellEditingStyle = UITableViewCell.EditingStyle +#endif + // Items extension Reactive where Base: UITableView { @@ -105,38 +107,6 @@ extension Reactive where Base: UITableView { - parameter dataSource: Data source used to transform elements to view cells. - parameter source: Observable sequence of items. - returns: Disposable object that can be used to unbind. - - Example - - let dataSource = RxTableViewSectionedReloadDataSource>() - - let items = Observable.just([ - SectionModel(model: "First section", items: [ - 1.0, - 2.0, - 3.0 - ]), - SectionModel(model: "Second section", items: [ - 1.0, - 2.0, - 3.0 - ]), - SectionModel(model: "Third section", items: [ - 1.0, - 2.0, - 3.0 - ]) - ]) - - dataSource.configureCell = { (dataSource, tv, indexPath, element) in - let cell = tv.dequeueReusableCell(withIdentifier: "Cell")! - cell.textLabel?.text = "\(element) @ row \(indexPath.row)" - return cell - } - - items - .bind(to: tableView.rx.items(dataSource: dataSource)) - .disposed(by: disposeBag) */ public func items< DataSource: RxTableViewDataSourceType & UITableViewDataSource, @@ -374,6 +344,47 @@ extension Reactive where Base: UITableView { } } +@available(iOS 10.0, tvOS 10.0, *) +extension Reactive where Base: UITableView { + + /// Reactive wrapper for `prefetchDataSource`. + /// + /// For more information take a look at `DelegateProxyType` protocol documentation. + public var prefetchDataSource: DelegateProxy { + return RxTableViewDataSourcePrefetchingProxy.proxy(for: base) + } + + /** + Installs prefetch data source as forwarding delegate on `rx.prefetchDataSource`. + Prefetch data source won't be retained. + + It enables using normal delegate mechanism with reactive delegate mechanism. + + - parameter prefetchDataSource: Prefetch data source object. + - returns: Disposable object that can be used to unbind the data source. + */ + public func setPrefetchDataSource(_ prefetchDataSource: UITableViewDataSourcePrefetching) + -> Disposable { + return RxTableViewDataSourcePrefetchingProxy.installForwardDelegate(prefetchDataSource, retainDelegate: false, onProxyForObject: self.base) + } + + /// Reactive wrapper for `prefetchDataSource` message `tableView(_:prefetchRowsAt:)`. + public var prefetchRows: ControlEvent<[IndexPath]> { + let source = RxTableViewDataSourcePrefetchingProxy.proxy(for: base).prefetchRowsPublishSubject + return ControlEvent(events: source) + } + + /// Reactive wrapper for `prefetchDataSource` message `tableView(_:cancelPrefetchingForRowsAt:)`. + public var cancelPrefetchingForRows: ControlEvent<[IndexPath]> { + let source = prefetchDataSource.methodInvoked(#selector(UITableViewDataSourcePrefetching.tableView(_:cancelPrefetchingForRowsAt:))) + .map { a in + return try castOrThrow(Array.self, a[1]) + } + + return ControlEvent(events: source) + } + +} #endif #if os(tvOS) @@ -387,7 +398,7 @@ extension Reactive where Base: UITableView { let source = delegate.methodInvoked(#selector(UITableViewDelegate.tableView(_:didUpdateFocusIn:with:))) .map { a -> (context: UITableViewFocusUpdateContext, animationCoordinator: UIFocusAnimationCoordinator) in - let context = a[1] as! UITableViewFocusUpdateContext + let context = try castOrThrow(UITableViewFocusUpdateContext.self, a[1]) let animationCoordinator = try castOrThrow(UIFocusAnimationCoordinator.self, a[2]) return (context: context, animationCoordinator: animationCoordinator) } diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UITextField+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UITextField+Rx.swift index a7a311a..4f19c8b 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UITextField+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UITextField+Rx.swift @@ -8,9 +8,7 @@ #if os(iOS) || os(tvOS) -#if !RX_NO_MODULE import RxSwift -#endif import UIKit extension Reactive where Base: UITextField { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UITextView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UITextView+Rx.swift index 4cc48a4..5f38fb5 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UITextView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UITextView+Rx.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif extension Reactive where Base: UITextView { /// Reactive wrapper for `text` property diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIView+Rx.swift index ec1dd2b..b52575a 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIView+Rx.swift @@ -9,9 +9,7 @@ #if os(iOS) || os(tvOS) import UIKit -#if !RX_NO_MODULE import RxSwift -#endif extension Reactive where Base: UIView { /// Bindable sink for `hidden` property. diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIViewController+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIViewController+Rx.swift index a846c57..a9ab2a5 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIViewController+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIViewController+Rx.swift @@ -7,11 +7,9 @@ // #if os(iOS) || os(tvOS) - import UIKit -#if !RX_NO_MODULE - import RxSwift -#endif + import UIKit + import RxSwift extension Reactive where Base: UIViewController { diff --git a/Example/Pods/RxCocoa/RxCocoa/iOS/UIWebView+Rx.swift b/Example/Pods/RxCocoa/RxCocoa/iOS/UIWebView+Rx.swift index ef0c0d9..61cfe6b 100644 --- a/Example/Pods/RxCocoa/RxCocoa/iOS/UIWebView+Rx.swift +++ b/Example/Pods/RxCocoa/RxCocoa/iOS/UIWebView+Rx.swift @@ -8,11 +8,8 @@ #if os(iOS) -import UIKit - -#if !RX_NO_MODULE -import RxSwift -#endif + import UIKit + import RxSwift extension Reactive where Base: UIWebView { diff --git a/Example/Pods/RxSwift/Platform/DataStructures/Bag.swift b/Example/Pods/RxSwift/Platform/DataStructures/Bag.swift index 0d994c2..22d82d5 100644 --- a/Example/Pods/RxSwift/Platform/DataStructures/Bag.swift +++ b/Example/Pods/RxSwift/Platform/DataStructures/Bag.swift @@ -25,7 +25,7 @@ Data structure that represents a bag of elements typed `T`. Single element can be stored multiple times. -Time and space complexity of insertion an deletion is O(n). +Time and space complexity of insertion and deletion is O(n). It is suitable for storing small number of elements. */ @@ -83,12 +83,8 @@ struct Bag : CustomDebugStringConvertible { _pairs.append((key: key, value: element)) return key } - - if _dictionary == nil { - _dictionary = [:] - } - - _dictionary![key] = element + + _dictionary = [key: element] return key } diff --git a/Example/Pods/RxSwift/Platform/DeprecationWarner.swift b/Example/Pods/RxSwift/Platform/DeprecationWarner.swift new file mode 100644 index 0000000..863636b --- /dev/null +++ b/Example/Pods/RxSwift/Platform/DeprecationWarner.swift @@ -0,0 +1,43 @@ +// +// DeprecationWarner.swift +// Platform +// +// Created by Shai Mishali on 1/9/18. +// Copyright © 2018 Krunoslav Zaher. All rights reserved. +// + +import Foundation + +#if DEBUG + class DeprecationWarner { + private static var warned = Set() + private static var _lock = NSRecursiveLock() + + static func warnIfNeeded(_ kind: Kind) { + _lock.lock(); defer { _lock.unlock() } + guard !warned.contains(kind) else { return } + + warned.insert(kind) + print("ℹ️ [DEPRECATED] \(kind.message)") + } + } + + extension DeprecationWarner { + enum Kind { + case variable + case globalTestFunctionNext + case globalTestFunctionError + case globalTestFunctionCompleted + + var message: String { + switch self { + case .variable: return "`Variable` is planned for future deprecation. Please consider `BehaviorRelay` as a replacement. Read more at: https://git.io/vNqvx" + case .globalTestFunctionNext: return "The `next()` global function is planned for future deprecation. Please use `Recorded.next()` instead." + case .globalTestFunctionError: return "The `error()` global function is planned for future deprecation. Please use `Recorded.error()` instead." + case .globalTestFunctionCompleted: return "The `completed()` global function is planned for future deprecation. Please use `Recorded.completed()` instead." + } + } + } + } +#endif + diff --git a/Example/Pods/RxSwift/README.md b/Example/Pods/RxSwift/README.md index 503068d..f7952f5 100644 --- a/Example/Pods/RxSwift/README.md +++ b/Example/Pods/RxSwift/README.md @@ -3,8 +3,7 @@ [![Travis CI](https://travis-ci.org/ReactiveX/RxSwift.svg?branch=master)](https://travis-ci.org/ReactiveX/RxSwift) ![platforms](https://img.shields.io/badge/platforms-iOS%20%7C%20macOS%20%7C%20tvOS%20%7C%20watchOS%20%7C%20Linux-333333.svg) ![pod](https://img.shields.io/cocoapods/v/RxSwift.svg) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Swift Package Manager compatible](https://img.shields.io/badge/Swift%20Package%20Manager-compatible-brightgreen.svg)](https://github.com/apple/swift-package-manager) -* RxSwift 4.x / Swift 4.x can be found in [**rxswift4.0-swift4.0** branch](https://github.com/ReactiveX/RxSwift/tree/rxswift4.0-swift4.0). -* RxSwift 3.x / Swift 3.x can be found in [**master** branch](https://github.com/ReactiveX/RxSwift/tree/master). +* RxSwift 3.x / Swift 3.x can be found in [**rxswift-3.0** branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-3.0). Rx is a [generic abstraction of computation](https://youtu.be/looJcaeboBY) expressed through `Observable` interface. @@ -42,10 +41,10 @@ KVO observing, async operations and streams are all unified under [abstraction o ###### ... interact -* All of this is great, but it would be nice to talk with other people using RxSwift and exchange experiences.
[![Slack channel](http://rxswift-slack.herokuapp.com/badge.svg)](http://rxswift-slack.herokuapp.com/) [Join Slack Channel](http://rxswift-slack.herokuapp.com) +* All of this is great, but it would be nice to talk with other people using RxSwift and exchange experiences.
[![Slack channel](http://rxswift-slack.herokuapp.com/badge.svg)](http://slack.rxswift.org) [Join Slack Channel](http://slack.rxswift.org) * Report a problem using the library. [Open an Issue With Bug Template](.github/ISSUE_TEMPLATE.md) * Request a new feature. [Open an Issue With Feature Request Template](Documentation/NewFeatureRequestTemplate.md) - +* Help out [Check out contribution guide](CONTRIBUTING.md) ###### ... compare @@ -105,8 +104,9 @@ searchResults ## Requirements -* Xcode 8.0 -* Swift 3.0 +* Xcode 9.0 +* Swift 4.0 +* Swift 3.x ([use `rxswift-3.0` branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-3.0) instead) * Swift 2.3 ([use `rxswift-2.0` branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-2.0) instead) ## Installation @@ -121,21 +121,21 @@ Open Rx.xcworkspace, choose `RxExample` and hit run. This method will build ever ### [CocoaPods](https://guides.cocoapods.org/using/using-cocoapods.html) -**Tested with `pod --version`: `1.1.1`** +**Tested with `pod --version`: `1.3.1`** ```ruby # Podfile use_frameworks! target 'YOUR_TARGET_NAME' do - pod 'RxSwift', '~> 3.0' - pod 'RxCocoa', '~> 3.0' + pod 'RxSwift', '~> 4.0' + pod 'RxCocoa', '~> 4.0' end -# RxTests and RxBlocking make the most sense in the context of unit/integration tests +# RxTest and RxBlocking make the most sense in the context of unit/integration tests target 'YOUR_TESTING_TARGET' do - pod 'RxBlocking', '~> 3.0' - pod 'RxTest', '~> 3.0' + pod 'RxBlocking', '~> 4.0' + pod 'RxTest', '~> 4.0' end ``` @@ -147,12 +147,12 @@ $ pod install ### [Carthage](https://github.com/Carthage/Carthage) -**Tested with `carthage version`: `0.18.1`** +**Tested with `carthage version`: `0.26.2`** Add this to `Cartfile` ``` -github "ReactiveX/RxSwift" ~> 3.0 +github "ReactiveX/RxSwift" ~> 4.0 ``` ```bash @@ -161,19 +161,23 @@ $ carthage update ### [Swift Package Manager](https://github.com/apple/swift-package-manager) -**Tested with `swift build --version`: `3.0.0 (swiftpm-19)`** +**Tested with `swift build --version`: `Swift 4.0.0-dev (swiftpm-13126)`** Create a `Package.swift` file. ```swift +// swift-tools-version:4.0 + import PackageDescription let package = Package( - name: "RxTestProject", - targets: [], - dependencies: [ - .Package(url: "https://github.com/ReactiveX/RxSwift.git", majorVersion: 3) - ] + name: "RxTestProject", + dependencies: [ + .package(url: "https://github.com/ReactiveX/RxSwift.git", "4.0.0" ..< "5.0.0") + ], + targets: [ + .target(name: "RxTestProject", dependencies: ["RxSwift", "RxCocoa"]) + ] ) ``` diff --git a/Example/Pods/RxSwift/RxSwift/Deprecated.swift b/Example/Pods/RxSwift/RxSwift/Deprecated.swift index 0422c16..0337d82 100644 --- a/Example/Pods/RxSwift/RxSwift/Deprecated.swift +++ b/Example/Pods/RxSwift/RxSwift/Deprecated.swift @@ -26,7 +26,7 @@ extension Observable { - seealso: [from operator on reactivex.io](http://reactivex.io/documentation/operators/from.html) - parameter optional: Optional element in the resulting observable sequence. - - parameter: Scheduler to send the optional element on. + - parameter scheduler: Scheduler to send the optional element on. - returns: An observable sequence containing the wrapped value or not from given optional. */ @available(*, deprecated, message: "Implicit conversions from any type to optional type are allowed and that is causing issues with `from` operator overloading.", renamed: "from(optional:scheduler:)") @@ -156,6 +156,17 @@ extension ObservableType { /// /// Unlike `BehaviorSubject` it can't terminate with error, and when variable is deallocated /// it will complete its observable sequence (`asObservable`). +/// +/// **This concept will be deprecated from RxSwift but offical migration path hasn't been decided yet.** +/// https://github.com/ReactiveX/RxSwift/issues/1501 +/// +/// Current recommended replacement for this API is `RxCocoa.BehaviorRelay` because: +/// * `Variable` isn't a standard cross platform concept, hence it's out of place in RxSwift target. +/// * It doesn't have a counterpart for handling events (`PublishRelay`). It models state only. +/// * It doesn't have a consistent naming with *Relay or other Rx concepts. +/// * It has an inconsistent memory management model compared to other parts of RxSwift (completes on `deinit`). +/// +/// Once plans are finalized, official availability attribute will be added in one of upcoming versions. public final class Variable { public typealias E = Element @@ -198,6 +209,10 @@ public final class Variable { /// /// - parameter value: Initial variable value. public init(_ value: Element) { + #if DEBUG + DeprecationWarner.warnIfNeeded(.variable) + #endif + _value = value _subject = BehaviorSubject(value: value) } diff --git a/Example/Pods/RxSwift/RxSwift/Disposable.swift b/Example/Pods/RxSwift/RxSwift/Disposable.swift index 0ff067c..b79c77a 100644 --- a/Example/Pods/RxSwift/RxSwift/Disposable.swift +++ b/Example/Pods/RxSwift/RxSwift/Disposable.swift @@ -6,7 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -/// Respresents a disposable resource. +/// Represents a disposable resource. public protocol Disposable { /// Dispose resource. func dispose() diff --git a/Example/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift b/Example/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift index d5e3b02..9a2386d 100644 --- a/Example/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift +++ b/Example/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift @@ -32,14 +32,14 @@ public final class DisposeBag: DisposeBase { private var _lock = SpinLock() // state - private var _disposables = [Disposable]() - private var _isDisposed = false + fileprivate var _disposables = [Disposable]() + fileprivate var _isDisposed = false /// Constructs new empty dispose bag. public override init() { super.init() } - + /// Adds `disposable` to be disposed when dispose bag is being deinited. /// /// - parameter disposable: Disposable to add. @@ -82,3 +82,33 @@ public final class DisposeBag: DisposeBase { dispose() } } + +extension DisposeBag { + + /// Convenience init allows a list of disposables to be gathered for disposal. + public convenience init(disposing disposables: Disposable...) { + self.init() + _disposables += disposables + } + + /// Convenience init allows an array of disposables to be gathered for disposal. + public convenience init(disposing disposables: [Disposable]) { + self.init() + _disposables += disposables + } + + /// Convenience function allows a list of disposables to be gathered for disposal. + public func insert(_ disposables: Disposable...) { + insert(disposables) + } + + /// Convenience function allows an array of disposables to be gathered for disposal. + public func insert(_ disposables: [Disposable]) { + _lock.lock(); defer { _lock.unlock() } + if _isDisposed { + disposables.forEach { $0.dispose() } + } else { + _disposables += disposables + } + } +} diff --git a/Example/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift b/Example/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift index 4f34bdb..6373d2b 100644 --- a/Example/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift +++ b/Example/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift @@ -34,7 +34,7 @@ public final class SerialDisposable : DisposeBase, Cancelable { public var disposable: Disposable { get { return _lock.calculateLocked { - return self.disposable + return _current ?? Disposables.create() } } set (newDisposable) { diff --git a/Example/Pods/RxSwift/RxSwift/Event.swift b/Example/Pods/RxSwift/RxSwift/Event.swift index 377877b..9193e35 100644 --- a/Example/Pods/RxSwift/RxSwift/Event.swift +++ b/Example/Pods/RxSwift/RxSwift/Event.swift @@ -22,7 +22,7 @@ public enum Event { } extension Event : CustomDebugStringConvertible { - /// - returns: Description of event. + /// Description of event. public var debugDescription: String { switch self { case .next(let value): @@ -60,7 +60,7 @@ extension Event { return nil } - /// If `completed` event, returns true. + /// If `completed` event, returns `true`. public var isCompleted: Bool { if case .completed = self { return true @@ -70,8 +70,8 @@ extension Event { } extension Event { - /// Maps sequence elements using transform. If error happens during the transform .error - /// will be returned as value + /// Maps sequence elements using transform. If error happens during the transform, `.error` + /// will be returned as value. public func map(_ transform: (Element) throws -> Result) -> Event { do { switch self { diff --git a/Example/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift b/Example/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift index 895333c..748578d 100644 --- a/Example/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift +++ b/Example/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift @@ -11,24 +11,18 @@ @inline(__always) func dispatch(_ bag: Bag<(Event) -> ()>, _ event: Event) { + bag._value0?(event) + if bag._onlyFastPath { - bag._value0?(event) return } - let value0 = bag._value0 - let dictionary = bag._dictionary - - if let value0 = value0 { - value0(event) - } - let pairs = bag._pairs for i in 0 ..< pairs.count { pairs[i].value(event) } - if let dictionary = dictionary { + if let dictionary = bag._dictionary { for element in dictionary.values { element(event) } @@ -37,24 +31,18 @@ func dispatch(_ bag: Bag<(Event) -> ()>, _ event: Event) { /// Dispatches `dispose` to all disposables contained inside bag. func disposeAll(in bag: Bag) { + bag._value0?.dispose() + if bag._onlyFastPath { - bag._value0?.dispose() return } - let value0 = bag._value0 - let dictionary = bag._dictionary - - if let value0 = value0 { - value0.dispose() - } - let pairs = bag._pairs for i in 0 ..< pairs.count { pairs[i].value.dispose() } - if let dictionary = dictionary { + if let dictionary = bag._dictionary { for element in dictionary.values { element.dispose() } diff --git a/Example/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift b/Example/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift index fafb4d6..29ed8a2 100644 --- a/Example/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift +++ b/Example/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift @@ -38,78 +38,48 @@ extension ObservableType { */ public func subscribe(onNext: ((E) -> Void)? = nil, onError: ((Swift.Error) -> Void)? = nil, onCompleted: (() -> Void)? = nil, onDisposed: (() -> Void)? = nil) -> Disposable { + let disposable: Disposable + + if let disposed = onDisposed { + disposable = Disposables.create(with: disposed) + } + else { + disposable = Disposables.create() + } + #if DEBUG - let disposable: Disposable - - if let disposed = onDisposed { - disposable = Disposables.create(with: disposed) - } - else { - disposable = Disposables.create() - } - let synchronizationTracker = SynchronizationTracker() - - let callStack = Thread.callStackSymbols - - let observer = AnonymousObserver { event in - + #endif + + let callStack = Hooks.recordCallStackOnError ? Hooks.customCaptureSubscriptionCallstack() : [] + + let observer = AnonymousObserver { event in + + #if DEBUG synchronizationTracker.register(synchronizationErrorMessage: .default) defer { synchronizationTracker.unregister() } - - switch event { - case .next(let value): - onNext?(value) - case .error(let error): - if let onError = onError { - onError(error) - } - else { - Hooks.defaultErrorHandler(callStack, error) - } - disposable.dispose() - case .completed: - onCompleted?() - disposable.dispose() - } - } - return Disposables.create( - self.asObservable().subscribe(observer), - disposable - ) - #else - let disposable: Disposable - - if let disposed = onDisposed { - disposable = Disposables.create(with: disposed) - } - else { - disposable = Disposables.create() - } + #endif - let observer = AnonymousObserver { event in - switch event { - case .next(let value): - onNext?(value) - case .error(let error): - if let onError = onError { - onError(error) - } - else { - Hooks.defaultErrorHandler([], error) - } - disposable.dispose() - case .completed: - onCompleted?() - disposable.dispose() + switch event { + case .next(let value): + onNext?(value) + case .error(let error): + if let onError = onError { + onError(error) + } + else { + Hooks.defaultErrorHandler(callStack, error) } + disposable.dispose() + case .completed: + onCompleted?() + disposable.dispose() } - return Disposables.create( - self.asObservable().subscribe(observer), - disposable - ) - #endif - + } + return Disposables.create( + self.asObservable().subscribe(observer), + disposable + ) } } @@ -117,6 +87,7 @@ import class Foundation.NSRecursiveLock extension Hooks { public typealias DefaultErrorHandler = (_ subscriptionCallStack: [String], _ error: Error) -> () + public typealias CustomCaptureSubscriptionCallstack = () -> [String] fileprivate static let _lock = RecursiveLock() fileprivate static var _defaultErrorHandler: DefaultErrorHandler = { subscriptionCallStack, error in @@ -125,6 +96,13 @@ extension Hooks { print("Unhandled error happened: \(error)\n subscription called from:\n\(serializedCallStack)") #endif } + fileprivate static var _customCaptureSubscriptionCallstack: CustomCaptureSubscriptionCallstack = { + #if DEBUG + return Thread.callStackSymbols + #else + return [] + #endif + } /// Error handler called in case onError handler wasn't provided. public static var defaultErrorHandler: DefaultErrorHandler { @@ -137,5 +115,17 @@ extension Hooks { _defaultErrorHandler = newValue } } + + /// Subscription callstack block to fetch custom callstack information. + public static var customCaptureSubscriptionCallstack: CustomCaptureSubscriptionCallstack { + get { + _lock.lock(); defer { _lock.unlock() } + return _customCaptureSubscriptionCallstack + } + set { + _lock.lock(); defer { _lock.unlock() } + _customCaptureSubscriptionCallstack = newValue + } + } } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Delay.swift b/Example/Pods/RxSwift/RxSwift/Observables/Delay.swift index b13ee9c..13955a3 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Delay.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Delay.swift @@ -80,13 +80,13 @@ final fileprivate class DelaySink _lock.lock() // { let errorEvent = _errorEvent - let eventToForwardImmediatelly = ranAtLeastOnce ? nil : _queue.dequeue()?.event + let eventToForwardImmediately = ranAtLeastOnce ? nil : _queue.dequeue()?.event let nextEventToScheduleOriginalTime: Date? = ranAtLeastOnce && !_queue.isEmpty ? _queue.peek().eventTime : nil if let _ = errorEvent { } else { - if let _ = eventToForwardImmediatelly { + if let _ = eventToForwardImmediately { } else if let _ = nextEventToScheduleOriginalTime { _running = false @@ -104,10 +104,10 @@ final fileprivate class DelaySink return } else { - if let eventToForwardImmediatelly = eventToForwardImmediatelly { + if let eventToForwardImmediately = eventToForwardImmediately { ranAtLeastOnce = true - self.forwardOn(eventToForwardImmediatelly) - if case .completed = eventToForwardImmediatelly { + self.forwardOn(eventToForwardImmediately) + if case .completed = eventToForwardImmediately { self.dispose() return } @@ -134,12 +134,12 @@ final fileprivate class DelaySink switch event { case .error(_): _lock.lock() // { - let shouldSendImmediatelly = !_running + let shouldSendImmediately = !_running _queue = Queue(capacity: 0) _errorEvent = event _lock.unlock() // } - if shouldSendImmediatelly { + if shouldSendImmediately { forwardOn(event) dispose() } diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Filter.swift b/Example/Pods/RxSwift/RxSwift/Observables/Filter.swift index 2a1f496..05dc8a4 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Filter.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Filter.swift @@ -25,7 +25,7 @@ extension ObservableType { extension ObservableType { /** - Skips elements and completes (or errors) when the receiver completes (or errors). Equivalent to filter that always returns false. + Skips elements and completes (or errors) when the observable sequence completes (or errors). Equivalent to filter that always returns false. - seealso: [ignoreElements operator on reactivex.io](http://reactivex.io/documentation/operators/ignoreelements.html) diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Just.swift b/Example/Pods/RxSwift/RxSwift/Observables/Just.swift index 443cdaa..4e49059 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Just.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Just.swift @@ -25,7 +25,7 @@ extension ObservableType { - seealso: [just operator on reactivex.io](http://reactivex.io/documentation/operators/just.html) - parameter element: Single element in the resulting observable sequence. - - parameter: Scheduler to send the single element on. + - parameter scheduler: Scheduler to send the single element on. - returns: An observable sequence containing the single specified element. */ public static func just(_ element: E, scheduler: ImmediateSchedulerType) -> Observable { diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Merge.swift b/Example/Pods/RxSwift/RxSwift/Observables/Merge.swift index 7ba17dd..b2f9a0d 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Merge.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Merge.swift @@ -225,8 +225,6 @@ fileprivate class MergeLimitedSink Observable { diff --git a/Example/Pods/RxSwift/RxSwift/Observables/Scan.swift b/Example/Pods/RxSwift/RxSwift/Observables/Scan.swift index e94db11..39d5e92 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/Scan.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/Scan.swift @@ -19,10 +19,29 @@ extension ObservableType { - parameter accumulator: An accumulator function to be invoked on each element. - returns: An observable sequence containing the accumulated values. */ - public func scan(_ seed: A, accumulator: @escaping (A, E) throws -> A) + public func scan(into seed: A, accumulator: @escaping (inout A, E) throws -> ()) -> Observable { return Scan(source: self.asObservable(), seed: seed, accumulator: accumulator) } + + /** + Applies an accumulator function over an observable sequence and returns each intermediate result. The specified seed value is used as the initial accumulator value. + + For aggregation behavior with no intermediate results, see `reduce`. + + - seealso: [scan operator on reactivex.io](http://reactivex.io/documentation/operators/scan.html) + + - parameter seed: The initial accumulator value. + - parameter accumulator: An accumulator function to be invoked on each element. + - returns: An observable sequence containing the accumulated values. + */ + public func scan(_ seed: A, accumulator: @escaping (A, E) throws -> A) + -> Observable { + return Scan(source: self.asObservable(), seed: seed) { acc, element in + let currentAcc = acc + acc = try accumulator(currentAcc, element) + } + } } final fileprivate class ScanSink : Sink, ObserverType { @@ -43,7 +62,7 @@ final fileprivate class ScanSink : Sink, Observ switch event { case .next(let element): do { - _accumulate = try _parent._accumulator(_accumulate, element) + try _parent._accumulator(&_accumulate, element) forwardOn(.next(_accumulate)) } catch let error { @@ -62,7 +81,7 @@ final fileprivate class ScanSink : Sink, Observ } final fileprivate class Scan: Producer { - typealias Accumulator = (Accumulate, Element) throws -> Accumulate + typealias Accumulator = (inout Accumulate, Element) throws -> () fileprivate let _source: Observable fileprivate let _seed: Accumulate diff --git a/Example/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift b/Example/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift index 8ba2898..5af102f 100644 --- a/Example/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift +++ b/Example/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift @@ -77,7 +77,7 @@ public enum SubjectLifetimeScope { continue holding a reference to the same subject. If at some later moment a new observer initiates a new connection to source it can potentially receive some of the stale events received during previous connection. - * After source sequence terminates any new observer will always immediatelly receive replayed elements and terminal event. + * After source sequence terminates any new observer will always immediately receive replayed elements and terminal event. No new subscriptions to source observable sequence will be attempted. ``` diff --git a/Example/Pods/RxSwift/RxSwift/Rx.swift b/Example/Pods/RxSwift/RxSwift/Rx.swift index 2162128..99292ca 100644 --- a/Example/Pods/RxSwift/RxSwift/Rx.swift +++ b/Example/Pods/RxSwift/RxSwift/Rx.swift @@ -71,7 +71,7 @@ func decrementChecked(_ i: inout Int) throws -> Int { final class SynchronizationTracker { private let _lock = RecursiveLock() - public enum SychronizationErrorMessages: String { + public enum SynchronizationErrorMessages: String { case variable = "Two different threads are trying to assign the same `Variable.value` unsynchronized.\n This is undefined behavior because the end result (variable value) is nondeterministic and depends on the \n operating system thread scheduler. This will cause random behavior of your program.\n" case `default` = "Two different unsynchronized threads are trying to send some event simultaneously.\n This is undefined behavior because the ordering of the effects caused by these events is nondeterministic and depends on the \n operating system thread scheduler. This will result in a random behavior of your program.\n" } @@ -86,14 +86,14 @@ func decrementChecked(_ i: inout Int) throws -> Int { #endif } - func register(synchronizationErrorMessage: SychronizationErrorMessages) { + func register(synchronizationErrorMessage: SynchronizationErrorMessages) { _lock.lock(); defer { _lock.unlock() } let pointer = Unmanaged.passUnretained(Thread.current).toOpaque() let count = (_threads[pointer] ?? 0) + 1 if count > 1 { synchronizationError( - "⚠️ Reentrancy anomaly was detected. ⚠️\n" + + "⚠️ Reentrancy anomaly was detected.\n" + " > Debugging: To debug this issue you can set a breakpoint in \(#file):\(#line) and observe the call stack.\n" + " > Problem: This behavior is breaking the observable sequence grammar. `next (error | completed)?`\n" + " This behavior breaks the grammar because there is overlapping between sequence events.\n" + @@ -109,7 +109,7 @@ func decrementChecked(_ i: inout Int) throws -> Int { if _threads.count > 1 { synchronizationError( - "⚠️ Synchronization anomaly was detected. ⚠️\n" + + "⚠️ Synchronization anomaly was detected.\n" + " > Debugging: To debug this issue you can set a breakpoint in \(#file):\(#line) and observe the call stack.\n" + " > Problem: This behavior is breaking the observable sequence grammar. `next (error | completed)?`\n" + " This behavior breaks the grammar because there is overlapping between sequence events.\n" + @@ -135,5 +135,8 @@ func decrementChecked(_ i: inout Int) throws -> Int { /// RxSwift global hooks public enum Hooks { + + // Should capture call stack + public static var recordCallStackOnError: Bool = false } diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift index c6acaa1..aa1f480 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift @@ -26,6 +26,7 @@ public class ConcurrentDispatchQueueScheduler: SchedulerType { /// Constructs new `ConcurrentDispatchQueueScheduler` that wraps `queue`. /// /// - parameter queue: Target dispatch queue. + /// - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. public init(queue: DispatchQueue, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { configuration = DispatchQueueConfiguration(queue: queue, leeway: leeway) } @@ -33,6 +34,7 @@ public class ConcurrentDispatchQueueScheduler: SchedulerType { /// Convenience init for scheduler that wraps one of the global concurrent dispatch queues. /// /// - parameter qos: Target global dispatch queue, by quality of service class. + /// - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. @available(iOS 8, OSX 10.10, *) public convenience init(qos: DispatchQoS, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { self.init(queue: DispatchQueue( diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift index 2fe822d..0676444 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift @@ -51,7 +51,11 @@ public class CurrentThreadScheduler : ImmediateSchedulerType { private static var isScheduleRequiredKey: pthread_key_t = { () -> pthread_key_t in let key = UnsafeMutablePointer.allocate(capacity: 1) defer { +#if swift(>=4.1) + key.deallocate() +#else key.deallocate(capacity: 1) +#endif } guard pthread_key_create(key, nil) == 0 else { diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift index 3602d2d..930ca37 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift @@ -8,7 +8,7 @@ import struct Foundation.Date -/// Converts historial virtual time into real time. +/// Converts historical virtual time into real time. /// /// Since historical virtual time is also measured in `Date`, this converter is identity function. public struct HistoricalSchedulerTimeConverter : VirtualTimeConverterType { diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift index 7d2ac21..e219e4e 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift @@ -40,7 +40,7 @@ public final class MainScheduler : SerialDispatchQueueScheduler { /// In case this method is called on a background thread it will throw an exception. public class func ensureExecutingOnScheduler(errorMessage: String? = nil) { if !DispatchQueue.isMain { - rxFatalError(errorMessage ?? "Executing on backgound thread. Please use `MainScheduler.instance.schedule` to schedule work on main thread.") + rxFatalError(errorMessage ?? "Executing on background thread. Please use `MainScheduler.instance.schedule` to schedule work on main thread.") } } diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift index 82d30fb..81ba59f 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift @@ -6,6 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // +import class Foundation.Operation import class Foundation.OperationQueue import class Foundation.BlockOperation import Dispatch @@ -15,12 +16,15 @@ import Dispatch /// 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`. public class OperationQueueScheduler: ImmediateSchedulerType { public let operationQueue: OperationQueue + public let queuePriority: Operation.QueuePriority /// Constructs new instance of `OperationQueueScheduler` that performs work on `operationQueue`. /// /// - parameter operationQueue: Operation queue targeted to perform work on. - public init(operationQueue: OperationQueue) { + /// - parameter queuePriority: Queue priority which will be assigned to new operations. + public init(operationQueue: OperationQueue, queuePriority: Operation.QueuePriority = .normal) { self.operationQueue = operationQueue + self.queuePriority = queuePriority } /** @@ -42,6 +46,8 @@ public class OperationQueueScheduler: ImmediateSchedulerType { cancel.setDisposable(action(state)) } + operation.queuePriority = self.queuePriority + self.operationQueue.addOperation(operation) return cancel diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift index 71733d3..1a38a73 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift @@ -38,6 +38,12 @@ public class SerialDispatchQueueScheduler : SchedulerType { let configuration: DispatchQueueConfiguration + /** + Constructs new `SerialDispatchQueueScheduler` that wraps `serialQueue`. + + - parameter serialQueue: Target dispatch queue. + - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. + */ init(serialQueue: DispatchQueue, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { configuration = DispatchQueueConfiguration(queue: serialQueue, leeway: leeway) } @@ -49,6 +55,7 @@ public class SerialDispatchQueueScheduler : SchedulerType { - parameter internalSerialQueueName: Name of internal serial dispatch queue. - parameter serialQueueConfiguration: Additional configuration of internal serial dispatch queue. + - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. */ public convenience init(internalSerialQueueName: String, serialQueueConfiguration: ((DispatchQueue) -> Void)? = nil, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { let queue = DispatchQueue(label: internalSerialQueueName, attributes: []) @@ -61,6 +68,7 @@ public class SerialDispatchQueueScheduler : SchedulerType { - parameter queue: Possibly concurrent dispatch queue used to perform work. - parameter internalSerialQueueName: Name of internal serial dispatch queue proxy. + - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. */ public convenience init(queue: DispatchQueue, internalSerialQueueName: String, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { // Swift 3.0 IUO @@ -75,6 +83,7 @@ public class SerialDispatchQueueScheduler : SchedulerType { - parameter qos: Identifier for global dispatch queue with specified quality of service class. - parameter internalSerialQueueName: Custom name for internal serial dispatch queue proxy. + - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. */ @available(iOS 8, OSX 10.10, *) public convenience init(qos: DispatchQoS, internalSerialQueueName: String = "rx.global_dispatch_queue.serial", leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { diff --git a/Example/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeConverterType.swift b/Example/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeConverterType.swift index b207836..a17475a 100644 --- a/Example/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeConverterType.swift +++ b/Example/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeConverterType.swift @@ -39,7 +39,7 @@ public protocol VirtualTimeConverterType { func convertFromVirtualTimeInterval(_ virtualTimeInterval: VirtualTimeIntervalUnit) -> RxTimeInterval /** - Converts from virtual time interval to `NSTimeInterval`. + Converts from `NSTimeInterval` to virtual time interval. - parameter timeInterval: `NSTimeInterval` to convert to virtual time interval. - returns: Virtual time interval corresponding to time interval. @@ -56,7 +56,7 @@ public protocol VirtualTimeConverterType { func offsetVirtualTime(_ time: VirtualTimeUnit, offset: VirtualTimeIntervalUnit) -> VirtualTimeUnit /** - This is aditional abstraction because `Date` is unfortunately not comparable. + This is additional abstraction because `Date` is unfortunately not comparable. Extending `Date` with `Comparable` would be too risky because of possible collisions with other libraries. */ func compareVirtualTime(_ lhs: VirtualTimeUnit, _ rhs: VirtualTimeUnit) -> VirtualTimeComparison @@ -65,7 +65,7 @@ public protocol VirtualTimeConverterType { /** Virtual time comparison result. - This is aditional abstraction because `Date` is unfortunately not comparable. + This is additional abstraction because `Date` is unfortunately not comparable. Extending `Date` with `Comparable` would be too risky because of possible collisions with other libraries. */ public enum VirtualTimeComparison { diff --git a/Example/Pods/RxSwift/RxSwift/Traits/Completable.swift b/Example/Pods/RxSwift/RxSwift/Traits/Completable.swift index d66c79a..8431fed 100644 --- a/Example/Pods/RxSwift/RxSwift/Traits/Completable.swift +++ b/Example/Pods/RxSwift/RxSwift/Traits/Completable.swift @@ -6,6 +6,10 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // +#if DEBUG +import Foundation +#endif + /// Sequence containing 0 elements public enum CompletableTrait { } /// Represents a push style sequence containing 0 elements. @@ -75,10 +79,20 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem - returns: Subscription object used to unsubscribe from the observable sequence. */ public func subscribe(onCompleted: (() -> Void)? = nil, onError: ((Swift.Error) -> Void)? = nil) -> Disposable { + #if DEBUG + let callStack = Hooks.recordCallStackOnError ? Thread.callStackSymbols : [] + #else + let callStack = [String]() + #endif + return self.primitiveSequence.subscribe { event in switch event { case .error(let error): - onError?(error) + if let onError = onError { + onError(error) + } else { + Hooks.defaultErrorHandler(callStack, error) + } case .completed: onCompleted?() } diff --git a/Example/Pods/RxSwift/RxSwift/Traits/Maybe.swift b/Example/Pods/RxSwift/RxSwift/Traits/Maybe.swift index 842f2e9..ad5859e 100644 --- a/Example/Pods/RxSwift/RxSwift/Traits/Maybe.swift +++ b/Example/Pods/RxSwift/RxSwift/Traits/Maybe.swift @@ -6,6 +6,10 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // +#if DEBUG +import Foundation +#endif + /// Sequence containing 0 or 1 elements public enum MaybeTrait { } /// Represents a push style sequence containing 0 or 1 element. @@ -84,12 +88,22 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait { public func subscribe(onSuccess: ((ElementType) -> Void)? = nil, onError: ((Swift.Error) -> Void)? = nil, onCompleted: (() -> Void)? = nil) -> Disposable { + #if DEBUG + let callStack = Hooks.recordCallStackOnError ? Thread.callStackSymbols : [] + #else + let callStack = [String]() + #endif + return self.primitiveSequence.subscribe { event in switch event { case .success(let element): onSuccess?(element) case .error(let error): - onError?(error) + if let onError = onError { + onError(error) + } else { + Hooks.defaultErrorHandler(callStack, error) + } case .completed: onCompleted?() } @@ -116,7 +130,7 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait { - seealso: [just operator on reactivex.io](http://reactivex.io/documentation/operators/just.html) - parameter element: Single element in the resulting observable sequence. - - parameter: Scheduler to send the single element on. + - parameter scheduler: Scheduler to send the single element on. - returns: An observable sequence containing the single specified element. */ public static func just(_ element: ElementType, scheduler: ImmediateSchedulerType) -> Maybe { @@ -227,4 +241,53 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait { -> Maybe { return Maybe(raw: primitiveSequence.source.flatMap(selector)) } + + /** + Emits elements from the source observable sequence, or a default element if the source observable sequence is empty. + + - seealso: [DefaultIfEmpty operator on reactivex.io](http://reactivex.io/documentation/operators/defaultifempty.html) + + - parameter default: Default element to be sent if the source does not emit any elements + - returns: An observable sequence which emits default element end completes in case the original sequence is empty + */ + public func ifEmpty(default: ElementType) -> Single { + return Single(raw: primitiveSequence.source.ifEmpty(default: `default`)) + } + + /** + Returns the elements of the specified sequence or `switchTo` sequence if the sequence is empty. + + - seealso: [DefaultIfEmpty operator on reactivex.io](http://reactivex.io/documentation/operators/defaultifempty.html) + + - parameter switchTo: Observable sequence being returned when source sequence is empty. + - returns: Observable sequence that contains elements from switchTo sequence if source is empty, otherwise returns source sequence elements. + */ + public func ifEmpty(switchTo other: Maybe) -> Maybe { + return Maybe(raw: primitiveSequence.source.ifEmpty(switchTo: other.primitiveSequence.source)) + } + + /** + Returns the elements of the specified sequence or `switchTo` sequence if the sequence is empty. + + - seealso: [DefaultIfEmpty operator on reactivex.io](http://reactivex.io/documentation/operators/defaultifempty.html) + + - parameter switchTo: Observable sequence being returned when source sequence is empty. + - returns: Observable sequence that contains elements from switchTo sequence if source is empty, otherwise returns source sequence elements. + */ + public func ifEmpty(switchTo other: Single) -> Single { + return Single(raw: primitiveSequence.source.ifEmpty(switchTo: other.primitiveSequence.source)) + } + + /** + Continues an observable sequence that is terminated by an error with a single element. + + - seealso: [catch operator on reactivex.io](http://reactivex.io/documentation/operators/catch.html) + + - parameter element: Last element in an observable sequence in case error occurs. + - returns: An observable sequence containing the source sequence's elements, followed by the `element` in case an error occurred. + */ + public func catchErrorJustReturn(_ element: ElementType) + -> PrimitiveSequence { + return PrimitiveSequence(raw: primitiveSequence.source.catchErrorJustReturn(element)) + } } diff --git a/Example/Pods/RxSwift/RxSwift/Traits/ObservableType+PrimitiveSequence.swift b/Example/Pods/RxSwift/RxSwift/Traits/ObservableType+PrimitiveSequence.swift index ef0b2cb..8763366 100644 --- a/Example/Pods/RxSwift/RxSwift/Traits/ObservableType+PrimitiveSequence.swift +++ b/Example/Pods/RxSwift/RxSwift/Traits/ObservableType+PrimitiveSequence.swift @@ -20,7 +20,7 @@ extension ObservableType { } /** - The `asMaybe` operator throws a ``RxError.moreThanOneElement` + The `asMaybe` operator throws a `RxError.moreThanOneElement` if the source Observable does not emit at most one element before successfully completing. - seealso: [single operator on reactivex.io](http://reactivex.io/documentation/operators/first.html) diff --git a/Example/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift b/Example/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift index 41ab5d1..73e9814 100644 --- a/Example/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift +++ b/Example/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift @@ -148,13 +148,11 @@ extension PrimitiveSequence { } /** - Repeats the source observable sequence the specified number of times in case of an error or until it successfully terminates. - - If you encounter an error and want it to retry once, then you must use `retry(2)` + If the initial subscription to the observable sequence emits an error event, try repeating it up to the specified number of attempts (inclusive of the initial attempt) or until is succeeds. For example, if you want to retry a sequence once upon failure, you should use retry(2) (once for the initial attempt, and once for the retry). - seealso: [retry operator on reactivex.io](http://reactivex.io/documentation/operators/retry.html) - - parameter maxAttemptCount: Maximum number of times to repeat the sequence. + - parameter maxAttemptCount: Maximum number of times to attempt the sequence subscription. - returns: An observable sequence producing the elements of the given sequence repeatedly until it terminates successfully. */ public func retry(_ maxAttemptCount: Int) diff --git a/Example/Pods/RxSwift/RxSwift/Traits/Single.swift b/Example/Pods/RxSwift/RxSwift/Traits/Single.swift index 790e0f3..c9dc13f 100644 --- a/Example/Pods/RxSwift/RxSwift/Traits/Single.swift +++ b/Example/Pods/RxSwift/RxSwift/Traits/Single.swift @@ -6,6 +6,10 @@ // Copyright © 2017 Krunoslav Zaher. All rights reserved. // +#if DEBUG +import Foundation +#endif + /// Sequence containing exactly 1 element public enum SingleTrait { } /// Represents a push style sequence containing 1 element. @@ -77,12 +81,22 @@ extension PrimitiveSequenceType where TraitType == SingleTrait { - returns: Subscription object used to unsubscribe from the observable sequence. */ public func subscribe(onSuccess: ((ElementType) -> Void)? = nil, onError: ((Swift.Error) -> Void)? = nil) -> Disposable { + #if DEBUG + let callStack = Hooks.recordCallStackOnError ? Thread.callStackSymbols : [] + #else + let callStack = [String]() + #endif + return self.primitiveSequence.subscribe { event in switch event { case .success(let element): onSuccess?(element) case .error(let error): - onError?(error) + if let onError = onError { + onError(error) + } else { + Hooks.defaultErrorHandler(callStack, error) + } } } } @@ -107,7 +121,7 @@ extension PrimitiveSequenceType where TraitType == SingleTrait { - seealso: [just operator on reactivex.io](http://reactivex.io/documentation/operators/just.html) - parameter element: Single element in the resulting observable sequence. - - parameter: Scheduler to send the single element on. + - parameter scheduler: Scheduler to send the single element on. - returns: An observable sequence containing the single specified element. */ public static func just(_ element: ElementType, scheduler: ImmediateSchedulerType) -> Single { @@ -138,6 +152,34 @@ extension PrimitiveSequenceType where TraitType == SingleTrait { } extension PrimitiveSequenceType where TraitType == SingleTrait { + + /** + Invokes an action for each event in the observable sequence, and propagates all observer messages through the result sequence. + + - seealso: [do operator on reactivex.io](http://reactivex.io/documentation/operators/do.html) + + - parameter onSuccess: Action to invoke for each element in the observable sequence. + - parameter onError: Action to invoke upon errored termination of the observable sequence. + - parameter onSubscribe: Action to invoke before subscribing to source observable sequence. + - parameter onSubscribed: Action to invoke after subscribing to source observable sequence. + - parameter onDispose: Action to invoke after subscription to source observable has been disposed for any reason. It can be either because sequence terminates for some reason or observer subscription being disposed. + - returns: The source sequence with the side-effecting behavior applied. + */ + public func `do`(onSuccess: ((ElementType) throws -> Void)? = nil, + onError: ((Swift.Error) throws -> Void)? = nil, + onSubscribe: (() -> ())? = nil, + onSubscribed: (() -> ())? = nil, + onDispose: (() -> ())? = nil) + -> Single { + return Single(raw: primitiveSequence.source.do( + onNext: onSuccess, + onError: onError, + onSubscribe: onSubscribe, + onSubscribed: onSubscribed, + onDispose: onDispose) + ) + } + /** Invokes an action for each event in the observable sequence, and propagates all observer messages through the result sequence. @@ -150,18 +192,19 @@ extension PrimitiveSequenceType where TraitType == SingleTrait { - parameter onDispose: Action to invoke after subscription to source observable has been disposed for any reason. It can be either because sequence terminates for some reason or observer subscription being disposed. - returns: The source sequence with the side-effecting behavior applied. */ - public func `do`(onNext: ((ElementType) throws -> Void)? = nil, + @available(*, deprecated, renamed: "do(onSuccess:onError:onSubscribe:onSubscribed:onDispose:)") + public func `do`(onNext: ((ElementType) throws -> Void)?, onError: ((Swift.Error) throws -> Void)? = nil, onSubscribe: (() -> ())? = nil, onSubscribed: (() -> ())? = nil, onDispose: (() -> ())? = nil) -> Single { - return Single(raw: primitiveSequence.source.do( - onNext: onNext, + return `do`( + onSuccess: onNext, onError: onError, onSubscribe: onSubscribe, onSubscribed: onSubscribed, - onDispose: onDispose) + onDispose: onDispose ) } @@ -205,4 +248,90 @@ extension PrimitiveSequenceType where TraitType == SingleTrait { -> Single { return Single(raw: primitiveSequence.source.flatMap(selector)) } + + /** + Projects each element of an observable sequence to an observable sequence and merges the resulting observable sequences into one observable sequence. + + - seealso: [flatMap operator on reactivex.io](http://reactivex.io/documentation/operators/flatmap.html) + + - 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. + */ + public func flatMapMaybe(_ selector: @escaping (ElementType) throws -> Maybe) + -> Maybe { + return Maybe(raw: primitiveSequence.source.flatMap(selector)) + } + + /** + Projects each element of an observable sequence to an observable sequence and merges the resulting observable sequences into one observable sequence. + + - seealso: [flatMap operator on reactivex.io](http://reactivex.io/documentation/operators/flatmap.html) + + - 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. + */ + public func flatMapCompletable(_ selector: @escaping (ElementType) throws -> Completable) + -> Completable { + return Completable(raw: primitiveSequence.source.flatMap(selector)) + } + + /** + Merges the specified observable sequences into one observable sequence by using the selector function whenever all of the observable sequences have produced an element at a corresponding index. + + - parameter resultSelector: Function to invoke for each series of elements at corresponding indexes in the sources. + - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function. + */ + public static func zip(_ collection: C, _ resultSelector: @escaping ([ElementType]) throws -> R) -> PrimitiveSequence where C.Iterator.Element == PrimitiveSequence { + + if collection.isEmpty { + return PrimitiveSequence.deferred { + return PrimitiveSequence(raw: .just(try resultSelector([]))) + } + } + + let raw = Observable.zip(collection.map { $0.asObservable() }, resultSelector) + return PrimitiveSequence(raw: raw) + } + + /** + Merges the specified observable sequences into one observable sequence all of the observable sequences have produced an element at a corresponding index. + + - returns: An observable sequence containing the result of combining elements of the sources. + */ + public static func zip(_ collection: C) -> PrimitiveSequence where C.Iterator.Element == PrimitiveSequence { + + if collection.isEmpty { + return PrimitiveSequence(raw: .just([])) + } + + let raw = Observable.zip(collection.map { $0.asObservable() }) + return PrimitiveSequence(raw: raw) + } + + /** + Continues an observable sequence that is terminated by an error with a single element. + + - seealso: [catch operator on reactivex.io](http://reactivex.io/documentation/operators/catch.html) + + - parameter element: Last element in an observable sequence in case error occurs. + - returns: An observable sequence containing the source sequence's elements, followed by the `element` in case an error occurred. + */ + public func catchErrorJustReturn(_ element: ElementType) + -> PrimitiveSequence { + return PrimitiveSequence(raw: primitiveSequence.source.catchErrorJustReturn(element)) + } + + /// Converts `self` to `Maybe` trait. + /// + /// - returns: Maybe trait that represents `self`. + public func asMaybe() -> Maybe { + return Maybe(raw: primitiveSequence.source) + } + + /// Converts `self` to `Completable` trait. + /// + /// - returns: Completable trait that represents `self`. + public func asCompletable() -> Completable { + return primitiveSequence.source.ignoreElements() + } } diff --git a/Example/Pods/Target Support Files/Nimble/Info.plist b/Example/Pods/Target Support Files/Nimble/Info.plist index c01bd4c..6971fd4 100644 --- a/Example/Pods/Target Support Files/Nimble/Info.plist +++ b/Example/Pods/Target Support Files/Nimble/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 7.0.2 + 7.3.1 CFBundleSignature ???? CFBundleVersion diff --git a/Example/Pods/Target Support Files/Nimble/Nimble-umbrella.h b/Example/Pods/Target Support Files/Nimble/Nimble-umbrella.h index 9aac00a..3a2c2c8 100644 --- a/Example/Pods/Target Support Files/Nimble/Nimble-umbrella.h +++ b/Example/Pods/Target Support Files/Nimble/Nimble-umbrella.h @@ -10,14 +10,14 @@ #endif #endif -#import "CwlCatchException.h" -#import "CwlMachBadInstructionHandler.h" -#import "mach_excServer.h" -#import "CwlPreconditionTesting.h" #import "Nimble.h" #import "DSL.h" #import "NMBExceptionCapture.h" #import "NMBStringify.h" +#import "CwlCatchException.h" +#import "CwlMachBadInstructionHandler.h" +#import "mach_excServer.h" +#import "CwlPreconditionTesting.h" FOUNDATION_EXPORT double NimbleVersionNumber; FOUNDATION_EXPORT const unsigned char NimbleVersionString[]; diff --git a/Example/Pods/Target Support Files/Nimble/Nimble.xcconfig b/Example/Pods/Target Support Files/Nimble/Nimble.xcconfig index 766d0bb..eb95a14 100644 --- a/Example/Pods/Target Support Files/Nimble/Nimble.xcconfig +++ b/Example/Pods/Target Support Files/Nimble/Nimble.xcconfig @@ -1,9 +1,10 @@ +APPLICATION_EXTENSION_API_ONLY = YES CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Nimble ENABLE_BITCODE = NO FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = -weak-lswiftXCTest -weak_framework "XCTest" -OTHER_SWIFT_FLAGS = $(inherited) -suppress-warnings $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -Xlinker -no_application_extension -weak-lswiftXCTest -weak_framework "XCTest" +OTHER_SWIFT_FLAGS = $(inherited) -suppress-warnings $(inherited) "-D" "COCOAPODS" "-suppress-warnings" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Example/Pods/Target Support Files/Quick/Info.plist b/Example/Pods/Target Support Files/Quick/Info.plist index 2a9158a..6c1d64f 100644 --- a/Example/Pods/Target Support Files/Quick/Info.plist +++ b/Example/Pods/Target Support Files/Quick/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.2.0 + 1.3.2 CFBundleSignature ???? CFBundleVersion diff --git a/Example/Pods/Target Support Files/Quick/Quick.xcconfig b/Example/Pods/Target Support Files/Quick/Quick.xcconfig index 92f73d7..909ea74 100644 --- a/Example/Pods/Target Support Files/Quick/Quick.xcconfig +++ b/Example/Pods/Target Support Files/Quick/Quick.xcconfig @@ -1,9 +1,10 @@ +APPLICATION_EXTENSION_API_ONLY = YES CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Quick ENABLE_BITCODE = NO FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = -framework "XCTest" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -Xlinker -no_application_extension -framework "XCTest" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" "-suppress-warnings" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Example/Pods/Target Support Files/RxCocoa/Info.plist b/Example/Pods/Target Support Files/RxCocoa/Info.plist index 3424ca6..33563de 100644 --- a/Example/Pods/Target Support Files/RxCocoa/Info.plist +++ b/Example/Pods/Target Support Files/RxCocoa/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.0.0 + 4.3.1 CFBundleSignature ???? CFBundleVersion diff --git a/Example/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig b/Example/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig index 9b314fb..da06d94 100644 --- a/Example/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig +++ b/Example/Pods/Target Support Files/RxCocoa/RxCocoa.xcconfig @@ -1,7 +1,7 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" "-suppress-warnings" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Example/Pods/Target Support Files/RxMKMapView/Info.plist b/Example/Pods/Target Support Files/RxMKMapView/Info.plist index c26f36f..a83149a 100644 --- a/Example/Pods/Target Support Files/RxMKMapView/Info.plist +++ b/Example/Pods/Target Support Files/RxMKMapView/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.1.0 + 4.3.0 CFBundleSignature ???? CFBundleVersion diff --git a/Example/Pods/Target Support Files/RxMKMapView/RxMKMapView.xcconfig b/Example/Pods/Target Support Files/RxMKMapView/RxMKMapView.xcconfig index b9acc3d..87c6550 100644 --- a/Example/Pods/Target Support Files/RxMKMapView/RxMKMapView.xcconfig +++ b/Example/Pods/Target Support Files/RxMKMapView/RxMKMapView.xcconfig @@ -2,7 +2,7 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxMKMapView FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxCocoa" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 OTHER_LDFLAGS = -framework "Foundation" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" "-suppress-warnings" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Example/Pods/Target Support Files/RxSwift/Info.plist b/Example/Pods/Target Support Files/RxSwift/Info.plist index 3424ca6..33563de 100644 --- a/Example/Pods/Target Support Files/RxSwift/Info.plist +++ b/Example/Pods/Target Support Files/RxSwift/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.0.0 + 4.3.1 CFBundleSignature ???? CFBundleVersion diff --git a/Example/Pods/Target Support Files/RxSwift/RxSwift.xcconfig b/Example/Pods/Target Support Files/RxSwift/RxSwift.xcconfig index b6cce65..7a64797 100644 --- a/Example/Pods/Target Support Files/RxSwift/RxSwift.xcconfig +++ b/Example/Pods/Target Support Files/RxSwift/RxSwift.xcconfig @@ -1,6 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxSwift GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" "-suppress-warnings" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Example/RxMKMapView.xcodeproj/project.pbxproj b/Example/RxMKMapView.xcodeproj/project.pbxproj index ce4e76f..d0501ab 100644 --- a/Example/RxMKMapView.xcodeproj/project.pbxproj +++ b/Example/RxMKMapView.xcodeproj/project.pbxproj @@ -226,7 +226,7 @@ TargetAttributes = { 607FACCF1AFB9204008FA782 = { CreatedOnToolsVersion = 6.3.1; - LastSwiftMigration = 0900; + LastSwiftMigration = 1000; SystemCapabilities = { com.apple.Maps.iOS = { enabled = 1; @@ -235,7 +235,7 @@ }; 607FACE41AFB9204008FA782 = { CreatedOnToolsVersion = 6.3.1; - LastSwiftMigration = 0900; + LastSwiftMigration = 1000; TestTargetID = 607FACCF1AFB9204008FA782; }; }; @@ -531,7 +531,7 @@ MODULE_NAME = ExampleApp; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; }; name = Debug; }; @@ -546,7 +546,7 @@ MODULE_NAME = ExampleApp; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; }; name = Release; }; @@ -564,7 +564,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/RxMKMapView_Example.app/RxMKMapView_Example"; }; name = Debug; @@ -579,7 +579,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/RxMKMapView_Example.app/RxMKMapView_Example"; }; name = Release; diff --git a/Example/RxMKMapView/ViewController.swift b/Example/RxMKMapView/ViewController.swift index e51c4ba..424b5e0 100644 --- a/Example/RxMKMapView/ViewController.swift +++ b/Example/RxMKMapView/ViewController.swift @@ -124,15 +124,24 @@ class ViewController: UIViewController { } private func setupKeyboard() { - NotificationCenter.default.addObserver(self, selector: #selector(self.keyBoardWillShow(notification:)), name: NSNotification.Name.UIKeyboardWillShow, object: nil) - NotificationCenter.default.addObserver(self, selector: #selector(self.keyBoardWillHide(notification:)), name: NSNotification.Name.UIKeyboardWillHide, object: nil) + #if swift(>=4.2) + NotificationCenter.default.addObserver(self, selector: #selector(self.keyBoardWillShow(notification:)), name: UIResponder.keyboardWillShowNotification, object: nil) + NotificationCenter.default.addObserver(self, selector: #selector(self.keyBoardWillHide(notification:)), name: UIResponder.keyboardWillHideNotification, object: nil) + #else + NotificationCenter.default.addObserver(self, selector: #selector(self.keyBoardWillShow(notification:)), name: UIResponder.keyboardWillShowNotification, object: nil) + NotificationCenter.default.addObserver(self, selector: #selector(self.keyBoardWillHide(notification:)), name: UIResponder.keyboardWillHideNotification, object: nil) + #endif } } // MARK: - Keyboard Setup extension ViewController { @objc func keyBoardWillShow(notification: NSNotification) { - let frame = (notification.userInfo![UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue + #if swift(>=4.2) + let frame = (notification.userInfo![UIResponder.keyboardFrameEndUserInfoKey] as! NSValue).cgRectValue + #else + let frame = (notification.userInfo![UIResponder.keyboardFrameEndUserInfoKey] as! NSValue).cgRectValue + #endif UIView.animate(withDuration: 0.2) { self.bottomConstraint.constant = frame.height self.view.layoutIfNeeded() diff --git a/Example/Tests/RxMKMapViewTests.swift b/Example/Tests/RxMKMapViewTests.swift index 9fd6747..df48b9c 100644 --- a/Example/Tests/RxMKMapViewTests.swift +++ b/Example/Tests/RxMKMapViewTests.swift @@ -26,8 +26,13 @@ class RxMKMapViewTests: XCTestCase { func test_rx_didChangeState() { let mapView = MKMapView() var resultView: MKAnnotationView? + #if swift(>=4.2) + var resultNewState: MKAnnotationView.DragState? + var resultOldState: MKAnnotationView.DragState? + #else var resultNewState: MKAnnotationViewDragState? var resultOldState: MKAnnotationViewDragState? + #endif _ = mapView.rx.didChangeState .take(1) @@ -37,9 +42,14 @@ class RxMKMapViewTests: XCTestCase { resultOldState = oldState }) + #if swift(>=4.2) + let newState = MKAnnotationView.DragState.starting + let oldState = MKAnnotationView.DragState.dragging + #else let newState = MKAnnotationViewDragState.starting let oldState = MKAnnotationViewDragState.dragging - + #endif + mapView.delegate!.mapView!(mapView, annotationView: MKAnnotationView(), didChange: newState, diff --git a/README.md b/README.md index 1c7e244..7831b2c 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ mapView.rx.didFinishLoadingMap ## Requirements -RxMKMapView requires Swift 4.0 and RxSwift (4.0). +RxMKMapView requires Swift 4.0 and RxSwift (4.3). ## License diff --git a/RxMKMapView.podspec b/RxMKMapView.podspec index d0896b6..e8b88fe 100644 --- a/RxMKMapView.podspec +++ b/RxMKMapView.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.name = 'RxMKMapView' - s.version = '4.2.0' + s.version = '4.3.0' s.summary = 'Reactive wrapper for MKMapView `delegate`' s.description = <<-DESC RxMKMapView is a Reactive wrapper for MKMapView `delegate`. @@ -57,13 +57,12 @@ DESC s.license = 'MIT' s.author = { 'RxSwift Community' => 'community@rxswift.org' } s.source = { :git => 'https://github.com/RxSwiftCommunity/RxMKMapView.git', :tag => s.version.to_s } - s.swift_version = '4.0' s.platform = :ios, '8.0' s.requires_arc = true s.source_files = 'Sources/**/*.swift' - s.dependency 'RxCocoa', '~> 4.0' - s.dependency 'RxSwift', '~> 4.0' + s.dependency 'RxCocoa', '~> 4.3' + s.dependency 'RxSwift', '~> 4.3' s.frameworks = 'Foundation' end diff --git a/RxMKMapView.xcodeproj/project.pbxproj b/RxMKMapView.xcodeproj/project.pbxproj index 19a2feb..4fc11ca 100644 --- a/RxMKMapView.xcodeproj/project.pbxproj +++ b/RxMKMapView.xcodeproj/project.pbxproj @@ -135,6 +135,7 @@ TargetAttributes = { 2B58CA5020E0F6C500D521A9 = { CreatedOnToolsVersion = 9.4; + LastSwiftMigration = 1000; }; }; }; @@ -325,7 +326,7 @@ PRODUCT_BUNDLE_IDENTIFIER = org.rxswift.community.RxMKMapView; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; @@ -354,7 +355,7 @@ PRODUCT_BUNDLE_IDENTIFIER = org.rxswift.community.RxMKMapView; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Release; diff --git a/Sources/MKMapView+Rx.swift b/Sources/MKMapView+Rx.swift index 525c290..f124b1b 100644 --- a/Sources/MKMapView+Rx.swift +++ b/Sources/MKMapView+Rx.swift @@ -200,7 +200,13 @@ extension Reactive where Base: MKMapView { return ControlEvent(events: source) } - public var didChangeState: ControlEvent<(view: MKAnnotationView, newState: MKAnnotationViewDragState, oldState: MKAnnotationViewDragState)> { + #if swift(>=4.2) + public typealias AnnotationViewDragState = MKAnnotationView.DragState + #else + public typealias AnnotationViewDragState = MKAnnotationViewDragState + #endif + + public var didChangeState: ControlEvent<(view: MKAnnotationView, newState: AnnotationViewDragState, oldState: AnnotationViewDragState)> { let source = delegate .methodInvoked(#selector(MKMapViewDelegate.mapView(_:annotationView:didChange:fromOldState:))) .map { a in @@ -210,8 +216,8 @@ extension Reactive where Base: MKMapView { } .map { (view, newState, oldState) in return (view: view, - newState: MKAnnotationViewDragState(rawValue: newState)!, - oldState: MKAnnotationViewDragState(rawValue: oldState)!) + newState: AnnotationViewDragState(rawValue: newState)!, + oldState: AnnotationViewDragState(rawValue: oldState)!) } return ControlEvent(events: source) }