├── .gitignore
├── LICENSE
├── README.md
├── RxSwift-5
└── main
│ ├── ErrorHandling
│ ├── catchError.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── catchErrorJustReturn.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── retry.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── retryWhen.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Hello
│ └── Hello.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── KeyConcepts
│ ├── Disposables.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Observables.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Observers.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── Operators.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── MasteringRxSwift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── MasteringRxSwift.xcscheme
│ ├── MasteringRxSwift.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ └── IDEWorkspaceChecks.plist
│ ├── MasteringRxSwift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ ├── .qicon
│ │ │ ├── 20.png
│ │ │ ├── 40-1.png
│ │ │ ├── 40.png
│ │ │ ├── 60.png
│ │ │ ├── Contents.json
│ │ │ ├── Icon-App-20x20@2x.png
│ │ │ ├── Icon-App-29x29@1x.png
│ │ │ ├── Icon-App-29x29@2x-1.png
│ │ │ ├── Icon-App-29x29@2x.png
│ │ │ ├── Icon-App-29x29@3x.png
│ │ │ ├── Icon-App-40x40@2x-1.png
│ │ │ ├── Icon-App-40x40@2x.png
│ │ │ ├── Icon-App-60x60@2x-1.png
│ │ │ ├── Icon-App-60x60@2x.png
│ │ │ ├── Icon-App-60x60@3x.png
│ │ │ ├── Icon-App-76x76@1x.png
│ │ │ ├── Icon-App-76x76@2x.png
│ │ │ ├── Icon-App-835x835@2x.png
│ │ │ └── logo1024.png
│ │ ├── Contents.json
│ │ └── logo-black.imageset
│ │ │ ├── .qicon
│ │ │ ├── Contents.json
│ │ │ └── logo-black.png
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Common
│ │ └── Models
│ │ │ ├── MaterialColor.swift
│ │ │ └── Product.swift
│ ├── CommunityProjects
│ │ ├── Action
│ │ │ └── ActionViewController.swift
│ │ ├── CommunityProjects.storyboard
│ │ ├── NSObject+Rx
│ │ │ └── NSObjectRxViewController.swift
│ │ ├── RxDataSources
│ │ │ └── RxDataSourcesViewController.swift
│ │ ├── RxGesture
│ │ │ └── RxGestureViewController.swift
│ │ ├── RxKeyboard
│ │ │ └── RxKeyboardViewController.swift
│ │ ├── RxReachability
│ │ │ └── RxReachabilityViewController.swift
│ │ └── RxSwiftExt
│ │ │ ├── and.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── apply.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── bufferWithTrigger.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── cascade.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── catchErrorJustComplete.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── count.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── distinct.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── elements.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── errors.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── filterMap.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── fromAsync.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── ignore.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── ignoreWhen.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── map.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── mergeWith.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── not.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── nwise.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── once.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── pairwise.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── partition.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── pausable.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── pausableBuferred.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── retry.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── retryWithBehavior.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── unwrap.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ ├── withUnretained.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ │ └── zipWith.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── CustomExtension
│ │ ├── CustomBinderViewController.swift
│ │ ├── CustomControlEventViewController.swift
│ │ ├── CustomControlPropertyViewController.swift
│ │ ├── CustomExtension.storyboard
│ │ └── DelegateProxyViewController.swift
│ ├── Info.plist
│ ├── Networking
│ │ ├── Common
│ │ │ └── NetworkCommon.swift
│ │ ├── RxAlamofire
│ │ │ ├── RxAlamofire.storyboard
│ │ │ ├── RxAlamofireBasicPatternTableViewController.swift
│ │ │ ├── RxAlamofireProgressViewController.swift
│ │ │ └── RxAlamofireValidationViewController.swift
│ │ └── URLSession
│ │ │ ├── CocoaTouchURLSessionViewController.swift
│ │ │ ├── RxCocoaURLSessionViewController.swift
│ │ │ └── URLSession.storyboard
│ ├── RxCocoaBasics
│ │ ├── Binding
│ │ │ ├── Binding.storyboard
│ │ │ ├── BindingCocoaTouchViewController.swift
│ │ │ └── BindingRxCocoaViewController.swift
│ │ ├── ControlPropertyControlEvent
│ │ │ ├── ControlPropertyControlEvent.storyboard
│ │ │ ├── ControlPropertyControlEventCocoaTouchViewController.swift
│ │ │ └── ControlPropertyControlEventRxCocoaViewController.swift
│ │ ├── Driver
│ │ │ ├── Driver.storyboard
│ │ │ └── DriverViewController.swift
│ │ └── Hello
│ │ │ ├── Hello.storyboard
│ │ │ ├── HelloCocoaTouchViewController.swift
│ │ │ └── HelloRxCocoaViewController.swift
│ └── RxCocoaCommonPatterns
│ │ ├── AlertController
│ │ ├── AlertController.storyboard
│ │ ├── CocoaTouchAlertViewController.swift
│ │ └── RxCocoaAlertViewController.swift
│ │ ├── CollectionView
│ │ ├── Cell
│ │ │ └── ColorCollectionViewCell.swift
│ │ ├── CocoaTouchCollectionViewViewController.swift
│ │ ├── CollectionView.storyboard
│ │ └── RxCocoaCollectionViewViewController.swift
│ │ ├── Gesture
│ │ ├── CocoaTouchGestureViewController.swift
│ │ ├── Gesture.storyboard
│ │ └── RxCocoaGestureViewController.swift
│ │ ├── NotificationCenter
│ │ ├── CocoaTouchNotificationCenterViewController.swift
│ │ ├── NotificationCenter.storyboard
│ │ └── RxCocoaNotificationCenterViewController.swift
│ │ └── TableView
│ │ ├── Cell
│ │ └── ProductTableViewCell.swift
│ │ ├── CocoaTouchTableViewViewController.swift
│ │ ├── RxCocoaTableViewViewController.swift
│ │ └── TableView.storyboard
│ ├── Operators
│ ├── Combining Operators
│ │ ├── combineLatest.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── concat.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── merge.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── reduce.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── sample.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── startWith.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── switchLatest.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── withLatestFrom.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── zip.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── Conditional Operators
│ │ └── amb.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── Creating Operators
│ │ ├── create.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── empty.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── error.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── from.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── generate.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── just.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── of.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── range.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── repeatElement.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── Filtering Operators
│ │ ├── debounce.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── distinctUntilChanged.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── elementAt.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── filter.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── ignoreElements.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── sample.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── sampleLatest.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── single.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── skip.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── skipUntil.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── skipWhile.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── take.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── takeLast.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── takeUntil.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── takeWhile.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── throttle.playground
│ │ │ ├── Pages
│ │ │ ├── 1.xcplaygroundpage
│ │ │ │ └── Contents.swift
│ │ │ └── 2.xcplaygroundpage
│ │ │ │ └── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── Time-based Operators
│ │ ├── delay.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── delaySubscription.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── interval.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── timeout.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── timer.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── Transforming Operators
│ │ ├── buffer.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── flatMap.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── flatMapFirst.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── flatMapLatest.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── groupBy.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── map.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── scan.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── toArray.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── window.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ └── deferred.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Podfile
│ ├── Podfile.lock
│ ├── Scheduler
│ └── Scheduler.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── SharingSubscription
│ ├── multicast.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── overview.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── publish.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── refCount.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── replay.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── share.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Subjects
│ ├── AsyncSubject.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── BehaviorSubject.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── PublishSubject.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Relay.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── ReplaySubject.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── create.playground
│ ├── Contents.swift
│ └── contents.xcplayground
└── RxSwift-6
├── MasteringRxSwift.xcodeproj
├── project.pbxproj
└── project.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ └── IDEWorkspaceChecks.plist
├── MasteringRxSwift.xcworkspace
├── contents.xcworkspacedata
└── xcshareddata
│ └── IDEWorkspaceChecks.plist
├── MasteringRxSwift
├── AppDelegate.swift
├── Assets.xcassets
│ ├── AccentColor.colorset
│ │ └── Contents.json
│ ├── AppIcon.appiconset
│ │ ├── 20.png
│ │ ├── 40-1.png
│ │ ├── 40.png
│ │ ├── 60.png
│ │ ├── Contents.json
│ │ ├── Icon-App-20x20@2x.png
│ │ ├── Icon-App-29x29@1x.png
│ │ ├── Icon-App-29x29@2x-1.png
│ │ ├── Icon-App-29x29@2x.png
│ │ ├── Icon-App-29x29@3x.png
│ │ ├── Icon-App-40x40@2x-1.png
│ │ ├── Icon-App-40x40@2x.png
│ │ ├── Icon-App-60x60@2x-1.png
│ │ ├── Icon-App-60x60@2x.png
│ │ ├── Icon-App-60x60@3x.png
│ │ ├── Icon-App-76x76@1x.png
│ │ ├── Icon-App-76x76@2x.png
│ │ ├── Icon-App-835x835@2x.png
│ │ └── logo1024.png
│ ├── Contents.json
│ ├── LogoBackground.colorset
│ │ └── Contents.json
│ └── logo-black.imageset
│ │ ├── Contents.json
│ │ ├── logo-black.png
│ │ └── logo.png
├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
├── Common
│ └── Models
│ │ ├── MaterialColor.swift
│ │ └── Product.swift
├── CommunityProjects
│ └── NSObject+Rx
│ │ └── NSObjectRxViewController.swift
├── CustomExtension
│ ├── CustomBinderViewController.swift
│ ├── CustomControlEventViewController.swift
│ ├── CustomControlPropertyViewController.swift
│ ├── CustomExtension.storyboard
│ └── DelegateProxyViewController.swift
├── ErrorHandling
│ ├── catch.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── catchAndReturn.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── retry.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── retryWhen.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
├── Hello
│ └── Hello.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
├── Info.plist
├── KeyConcepts
│ ├── Disposables.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Infallible.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Observables.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── Observers.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── Operators.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
├── MasteringRxSwift.xcdatamodeld
│ ├── .xccurrentversion
│ └── MasteringRxSwift.xcdatamodel
│ │ └── contents
├── Networking
│ ├── Common
│ │ └── NetworkCommon.swift
│ └── URLSession
│ │ ├── CocoaTouchURLSessionViewController.swift
│ │ ├── RxCocoaURLSessionViewController.swift
│ │ └── URLSession.storyboard
├── Operators
│ ├── CombiningOperators
│ │ ├── combineLatest.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── concat.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── merge.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── reduce.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── sample.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── startWith.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── switchLatest.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── withLatestFrom.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── zip.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── ConditionalOperators
│ │ └── amb.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── CreatingOperators
│ │ ├── create.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── deferred.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── empty.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── error.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── from.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── generate.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── just.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── of.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── range.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── repeatElement.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── FilteringOperators
│ │ ├── debounce.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── distinctUntilChanged.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── elementAt.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── filter.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── ignoreElements.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── sample.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── sampleLatest.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── single.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── skip.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── skipDuration.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── skipUntil.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── skipWhile.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── take.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── takeFor.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── takeLast.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── takeUntil.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── takeWhile.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── throttle.playground
│ │ │ ├── Pages
│ │ │ ├── Page1.xcplaygroundpage
│ │ │ │ └── Contents.swift
│ │ │ └── Page2.xcplaygroundpage
│ │ │ │ └── Contents.swift
│ │ │ └── contents.xcplayground
│ ├── TimeBasedOperators
│ │ ├── delay.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── delaySubscription.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── interval.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ ├── timeout.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ │ └── timer.playground
│ │ │ ├── Contents.swift
│ │ │ └── contents.xcplayground
│ └── TransformingOperators
│ │ ├── buffer.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── compactMap.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── concatMap.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── flatMap.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── flatMapFirst.playground
│ │ ├── Pages
│ │ │ ├── 1.xcplaygroundpage
│ │ │ │ └── Contents.swift
│ │ │ └── 2.xcplaygroundpage
│ │ │ │ └── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── flatMapLatest.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── groupBy.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── map.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── scan.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ ├── toArray.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ │ └── window.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
├── RxCocoaBasics
│ ├── Binding
│ │ ├── Binding.storyboard
│ │ ├── BindingCocoaTouchViewController.swift
│ │ └── BindingRxCocoaViewController.swift
│ ├── ControlPropertyControlEvent
│ │ ├── ControlPropertyControlEvent.storyboard
│ │ ├── ControlPropertyControlEventCocoaTouchViewController.swift
│ │ └── ControlPropertyControlEventRxCocoaViewController.swift
│ ├── Driver
│ │ ├── Driver.storyboard
│ │ └── DriverViewController.swift
│ └── Hello
│ │ ├── Hello.storyboard
│ │ ├── HelloCocoaTouchViewController.swift
│ │ └── HelloRxCocoaViewController.swift
├── RxCocoaCommonPatterns
│ ├── ActivityIndicatorView
│ │ ├── ActivityIndicatorView.storyboard
│ │ ├── CocoaTouchActivityIndicatorViewViewController.swift
│ │ └── RxCocoaActivityIndicatorViewViewController.swift
│ ├── AlertController
│ │ ├── AlertController.storyboard
│ │ ├── CocoaTouchAlertViewController.swift
│ │ └── RxCocoaAlertViewController.swift
│ ├── Button
│ │ ├── Button.storyboard
│ │ ├── CocoaTouchButtonViewController.swift
│ │ └── RxCocoaButtonViewController.swift
│ ├── CollectionView
│ │ ├── Cell
│ │ │ └── ColorCollectionViewCell.swift
│ │ ├── CocoaTouchCollectionViewViewController.swift
│ │ ├── CollectionView.storyboard
│ │ └── RxCocoaCollectionViewViewController.swift
│ ├── DatePicker
│ │ ├── CocoaTouchDatePickerViewController.swift
│ │ ├── DatePicker.storyboard
│ │ └── RxCocoaDatePickerViewController.swift
│ ├── Gesture
│ │ ├── CocoaTouchGestureViewController.swift
│ │ ├── Gesture.storyboard
│ │ └── RxCocoaGestureViewController.swift
│ ├── ImageView
│ │ ├── CocoaTouchImageViewViewController.swift
│ │ ├── ImageView.storyboard
│ │ └── RxCocoaImageViewViewController.swift
│ ├── NotificationCenter
│ │ ├── CocoaTouchNotificationCenterViewController.swift
│ │ ├── NotificationCenter.storyboard
│ │ └── RxCocoaNotificationCenterViewController.swift
│ ├── PageControl
│ │ ├── CocoaTouchPageControlViewController.swift
│ │ ├── PageControl.storyboard
│ │ └── RxCocoaPageControlViewController.swift
│ ├── PickerView
│ │ ├── CocoaTouchPickerViewViewController.swift
│ │ ├── PickerView.storyboard
│ │ └── RxCocoaPickerViewViewController.swift
│ ├── ProgressView
│ │ ├── CocoaTouchProgressViewViewController.swift
│ │ ├── ProgressView.storyboard
│ │ └── RxCocoaProgressViewViewController.swift
│ ├── RxCocoaCommonPatterns.storyboard
│ ├── SearchBar
│ │ ├── CocoaTouchSearchBarViewController.swift
│ │ ├── RxCocoaSearchBarViewController.swift
│ │ └── SearchBar.storyboard
│ ├── SegmentedControl
│ │ ├── CocoaTouchSegmentedControlViewController.swift
│ │ ├── RxCocoaSegmentedControlViewController.swift
│ │ └── SegmentedControl.storyboard
│ ├── Slider
│ │ ├── CocoaTouchSliderViewController.swift
│ │ ├── RxCocoaSliderViewController.swift
│ │ └── Slider.storyboard
│ ├── Stepper
│ │ ├── CocoaTouchStepperViewController.swift
│ │ ├── RxCocoaStepperViewController.swift
│ │ └── Stepper.storyboard
│ ├── Switch
│ │ ├── CocoaTouchSwitchViewController.swift
│ │ ├── RxCocoaSwitchViewController.swift
│ │ └── Switch.storyboard
│ ├── TableView
│ │ ├── Cell
│ │ │ └── ProductTableViewCell.swift
│ │ ├── CocoaTouchTableViewViewController.swift
│ │ ├── RxCocoaTableViewViewController.swift
│ │ └── TableView.storyboard
│ ├── Text
│ │ ├── CocoaTouchTextViewController.swift
│ │ ├── RxCocoaTextViewController.swift
│ │ └── Text.storyboard
│ ├── View
│ │ ├── CocoaTouchViewViewController.swift
│ │ ├── RxCocoaViewViewController.swift
│ │ └── View.storyboard
│ └── WebView
│ │ ├── CocoaTouchWebViewViewController.swift
│ │ ├── RxCocoaWebViewViewController.swift
│ │ └── WebView.storyboard
├── SceneDelegate.swift
├── Schedulers
│ └── scheduler.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
├── SharingSubscription
│ ├── multicast.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── overveiw.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── publish.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── refCount.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ ├── replay.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
│ └── share.playground
│ │ ├── Contents.swift
│ │ └── contents.xcplayground
└── Subjects
│ ├── AsyncSubject.playground
│ ├── Contents.swift
│ └── contents.xcplayground
│ ├── BehaviorSubject.playground
│ ├── Contents.swift
│ └── contents.xcplayground
│ ├── PublishSubject.playground
│ ├── Contents.swift
│ └── contents.xcplayground
│ ├── Relay.playground
│ ├── Contents.swift
│ └── contents.xcplayground
│ └── ReplaySubject.playground
│ ├── Contents.swift
│ └── contents.xcplayground
├── Podfile
└── Podfile.lock
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 KxCoding
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Mastering-RxSwift
2 |
3 | https://kxcoding.com/course/mastering-rxswift
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/ErrorHandling/catchError.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/ErrorHandling/catchErrorJustReturn.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/ErrorHandling/retry.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/ErrorHandling/retryWhen.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Hello/Hello.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Hello/Hello.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/KeyConcepts/Disposables.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # Disposables
28 | */
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/RxSwift-5/main/KeyConcepts/Disposables.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/KeyConcepts/Observables.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # Observables
28 | */
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/RxSwift-5/main/KeyConcepts/Observables.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/KeyConcepts/Observers.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/KeyConcepts/Operators.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
7 |
9 |
10 |
11 |
13 |
14 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/.qicon:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/.qicon
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/20.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40-1.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/60.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x-1.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x-1.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x-1.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-835x835@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-835x835@2x.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/logo1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/logo1024.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/logo-black.imageset/.qicon:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/logo-black.imageset/.qicon
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/logo-black.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x"
10 | },
11 | {
12 | "idiom" : "universal",
13 | "filename" : "logo-black.png",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/logo-black.imageset/logo-black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-5/main/MasteringRxSwift/Assets.xcassets/logo-black.imageset/logo-black.png
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/and.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/and.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/apply.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/apply.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/bufferWithTrigger.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/bufferWithTrigger.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/cascade.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/cascade.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/catchErrorJustComplete.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/catchErrorJustComplete.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/count.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/count.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/distinct.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/elements.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/elements.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/errors.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/errors.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/filterMap.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/filterMap.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/fromAsync.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/fromAsync.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/ignore.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/ignoreWhen.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/map.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
29 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/map.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/mergeWith.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/mergeWith.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/not.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
29 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/not.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/nwise.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/nwise.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/once.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/pairwise.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/pairwise.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/partition.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/partition.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/pausable.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/pausable.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/pausableBuferred.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/pausableBuferred.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/retry.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/retry.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/retryWithBehavior.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/retryWithBehavior.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/unwrap.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/withUnretained.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/withUnretained.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/zipWith.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxSwiftExt
26 |
27 | let bag = DisposeBag()
28 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/CommunityProjects/RxSwiftExt/zipWith.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/MasteringRxSwift/RxCocoaBasics/Hello/HelloRxCocoaViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // HelloRxCocoaViewController.swift
3 | // MasteringRxSwift
4 | //
5 | // Created by Keun young Kim on 26/08/2019.
6 | // Copyright © 2019 Keun young Kim. All rights reserved.
7 | //
8 |
9 | import UIKit
10 | import RxSwift
11 | import RxCocoa
12 |
13 | class HelloRxCocoaViewController: UIViewController {
14 |
15 | let bag = DisposeBag()
16 |
17 | @IBOutlet weak var valueLabel: UILabel!
18 |
19 | @IBOutlet weak var tapButton: UIButton!
20 |
21 | override func viewDidLoad() {
22 | super.viewDidLoad()
23 |
24 |
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/combineLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/concat.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/merge.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/reduce.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/sample.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/startWith.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # startWith
28 | */
29 |
30 | let bag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5]
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/startWith.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/switchLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/withLatestFrom.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Combining Operators/zip.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Conditional Operators/amb.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/create.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # create
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 | enum MyError: Error {
33 | case error
34 | }
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/create.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/empty.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # empty
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/empty.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/error.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/from.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/generate.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # generate
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let red = "🔴"
32 | let blue = "🔵"
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/generate.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/just.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/of.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/range.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/repeatElement.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # repeatElement
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let element = "❤️"
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Creating Operators/repeatElement.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/debounce.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/distinctUntilChanged.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # distinctUntilChanged
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 1, 3, 2, 2, 3, 1, 5, 5, 7, 7, 7]
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/distinctUntilChanged.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/elementAt.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/filter.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # filter
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/filter.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/ignoreElements.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/sample.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # sample
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/sample.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/sampleLatest.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # sampleLatest
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/sampleLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/single.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # single
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/single.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/skip.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # skip
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/skip.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/skipUntil.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # skipUntil
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/skipUntil.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/skipWhile.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # skipWhile
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/skipWhile.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/take.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # take
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/take.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/takeLast.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # takeLast
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/takeLast.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/takeUntil.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # takeUntil
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
33 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/takeUntil.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/takeWhile.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # takeWhile
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/takeWhile.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Filtering Operators/throttle.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/delay.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/delaySubscription.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/interval.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # interval
28 | */
29 |
30 |
31 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/interval.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/timeout.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # timeout
28 | */
29 |
30 | let bag = DisposeBag()
31 |
32 | let subject = PublishSubject()
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/timeout.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/timer.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # timer
28 | */
29 |
30 | let bag = DisposeBag()
31 |
32 |
33 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Time-based Operators/timer.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/buffer.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # buffer
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/buffer.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/flatMap.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # flatMap
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/flatMap.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/flatMapFirst.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/flatMapLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/groupBy.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # groupBy
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let words = ["Apple", "Banana", "Orange", "Book", "City", "Axe"]
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/groupBy.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/map.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # map
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 | let skills = ["Swift", "SwiftUI", "RxSwift"]
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/map.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/scan.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # scan
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/scan.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/toArray.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # toArray
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 |
33 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/toArray.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/window.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 | /*:
27 | # window
28 | */
29 |
30 | let disposeBag = DisposeBag()
31 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/Transforming Operators/window.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Operators/deferred.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Podfile:
--------------------------------------------------------------------------------
1 | # Uncomment the next line to define a global platform for your project
2 | # platform :ios, '9.0'
3 |
4 | target 'MasteringRxSwift' do
5 | # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
6 | use_frameworks!
7 |
8 | # Pods for MasteringRxSwift
9 | pod 'RxSwift', '~> 5.0.0'
10 | pod 'RxCocoa'
11 |
12 | # RxSwift Community Projects
13 | pod 'NSObject+Rx'
14 | pod 'RxSwiftExt'
15 | pod 'Action'
16 | pod 'RxDataSources'
17 | pod "RxGesture"
18 | pod 'RxReachability'
19 | pod 'RxKeyboard'
20 |
21 | # Networking
22 | pod 'RxAlamofire'
23 | end
24 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Scheduler/Scheduler.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/SharingSubscription/multicast.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/SharingSubscription/overview.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/SharingSubscription/publish.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/SharingSubscription/refCount.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/SharingSubscription/replay.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/SharingSubscription/share.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/AsyncSubject.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxCocoa
26 |
27 | /*:
28 | # AsyncSubject
29 | */
30 |
31 | let bag = DisposeBag()
32 |
33 | enum MyError: Error {
34 | case error
35 | }
36 |
37 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/AsyncSubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/BehaviorSubject.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 |
27 |
28 | /*:
29 | # BehaviorSubject
30 | */
31 |
32 | let disposeBag = DisposeBag()
33 |
34 | enum MyError: Error {
35 | case error
36 | }
37 |
38 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/BehaviorSubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/PublishSubject.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 |
27 | /*:
28 | # PublishSubject
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 | enum MyError: Error {
34 | case error
35 | }
36 |
37 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/PublishSubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/Relay.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 | import RxCocoa
26 |
27 | /*:
28 | # Relay
29 | */
30 |
31 | let bag = DisposeBag()
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/Relay.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/ReplaySubject.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2019 KxCoding
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 | //
22 |
23 | import UIKit
24 | import RxSwift
25 |
26 |
27 | /*:
28 | # ReplaySubject
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 | enum MyError: Error {
34 | case error
35 | }
36 |
37 |
38 |
--------------------------------------------------------------------------------
/RxSwift-5/main/Subjects/ReplaySubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-5/main/create.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import RxSwift
3 |
4 | var str = "Hello, playground"
5 |
6 |
--------------------------------------------------------------------------------
/RxSwift-5/main/create.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AccentColor.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "idiom" : "universal"
5 | }
6 | ],
7 | "info" : {
8 | "author" : "xcode",
9 | "version" : 1
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/20.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40-1.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/40.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/60.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x-1.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x-1.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x-1.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-835x835@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/Icon-App-835x835@2x.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/logo1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/AppIcon.appiconset/logo1024.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "author" : "xcode",
4 | "version" : 1
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/LogoBackground.colorset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "colors" : [
3 | {
4 | "color" : {
5 | "color-space" : "srgb",
6 | "components" : {
7 | "alpha" : "1.000",
8 | "blue" : "1.000",
9 | "green" : "1.000",
10 | "red" : "1.000"
11 | }
12 | },
13 | "idiom" : "universal"
14 | },
15 | {
16 | "appearances" : [
17 | {
18 | "appearance" : "luminosity",
19 | "value" : "dark"
20 | }
21 | ],
22 | "color" : {
23 | "color-space" : "srgb",
24 | "components" : {
25 | "alpha" : "1.000",
26 | "blue" : "0.259",
27 | "green" : "0.259",
28 | "red" : "0.279"
29 | }
30 | },
31 | "idiom" : "universal"
32 | }
33 | ],
34 | "info" : {
35 | "author" : "xcode",
36 | "version" : 1
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/logo-black.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "appearances" : [
9 | {
10 | "appearance" : "luminosity",
11 | "value" : "dark"
12 | }
13 | ],
14 | "idiom" : "universal",
15 | "scale" : "1x"
16 | },
17 | {
18 | "idiom" : "universal",
19 | "scale" : "2x"
20 | },
21 | {
22 | "appearances" : [
23 | {
24 | "appearance" : "luminosity",
25 | "value" : "dark"
26 | }
27 | ],
28 | "idiom" : "universal",
29 | "scale" : "2x"
30 | },
31 | {
32 | "filename" : "logo-black.png",
33 | "idiom" : "universal",
34 | "scale" : "3x"
35 | },
36 | {
37 | "appearances" : [
38 | {
39 | "appearance" : "luminosity",
40 | "value" : "dark"
41 | }
42 | ],
43 | "filename" : "logo.png",
44 | "idiom" : "universal",
45 | "scale" : "3x"
46 | }
47 | ],
48 | "info" : {
49 | "author" : "xcode",
50 | "version" : 1
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/logo-black.imageset/logo-black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/logo-black.imageset/logo-black.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Assets.xcassets/logo-black.imageset/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KxCoding/Mastering-RxSwift/88fe9708e4724561d451e45a2f8b16338a120b7e/RxSwift-6/MasteringRxSwift/Assets.xcassets/logo-black.imageset/logo.png
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/ErrorHandling/catch.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/ErrorHandling/catchAndReturn.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/ErrorHandling/retry.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/ErrorHandling/retryWhen.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Hello/Hello.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Hello/Hello.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | NSLocationWhenInUseUsageDescription
6 | 사용자의 위치를 파악합니다.
7 | UIApplicationSceneManifest
8 |
9 | UIApplicationSupportsMultipleScenes
10 |
11 | UISceneConfigurations
12 |
13 | UIWindowSceneSessionRoleApplication
14 |
15 |
16 | UISceneConfigurationName
17 | Default Configuration
18 | UISceneDelegateClassName
19 | $(PRODUCT_MODULE_NAME).SceneDelegate
20 | UISceneStoryboardFile
21 | Main
22 |
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/KeyConcepts/Disposables.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 |
25 | import UIKit
26 | import RxSwift
27 |
28 | /*:
29 | # Disposables
30 | */
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/KeyConcepts/Disposables.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/KeyConcepts/Infallible.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/KeyConcepts/Observables.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # Observables
29 | */
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/KeyConcepts/Observables.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/KeyConcepts/Observers.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/KeyConcepts/Operators.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/MasteringRxSwift.xcdatamodeld/.xccurrentversion:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | _XCCurrentVersionName
6 | MasteringRxSwift.xcdatamodel
7 |
8 |
9 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/MasteringRxSwift.xcdatamodeld/MasteringRxSwift.xcdatamodel/contents:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/combineLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/concat.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/merge.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/reduce.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/sample.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/startWith.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # startWith
29 | */
30 |
31 | let bag = DisposeBag()
32 | let numbers = [1, 2, 3, 4, 5]
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/startWith.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/switchLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/withLatestFrom.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CombiningOperators/zip.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/ConditionalOperators/amb.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/create.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/deferred.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/empty.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # empty
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/empty.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/error.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/from.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/generate.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/just.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # just
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 | let element = "😀"
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/just.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/of.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/range.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # range
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/range.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/repeatElement.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # repeatElement
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 | let element = "❤️"
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/CreatingOperators/repeatElement.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/debounce.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/distinctUntilChanged.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/elementAt.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # elementAt
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 | let fruits = ["🍏", "🍎", "🍋", "🍓", "🍇"]
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/elementAt.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/filter.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/ignoreElements.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/sample.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # sample
29 | */
30 |
31 |
32 | let disposeBag = DisposeBag()
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/sample.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/sampleLatest.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # sampleLatest
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/sampleLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/single.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/skip.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # skip
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/skip.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/skipDuration.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/skipUntil.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 |
25 | import UIKit
26 | import RxSwift
27 |
28 | /*:
29 | # skip(until:)
30 | */
31 |
32 | let disposeBag = DisposeBag()
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/skipUntil.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/skipWhile.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/take.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # take
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 | let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
33 |
34 |
35 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/take.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/takeFor.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/takeLast.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # takeLast
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/takeLast.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/takeUntil.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/takeWhile.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/FilteringOperators/throttle.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TimeBasedOperators/delay.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TimeBasedOperators/delaySubscription.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TimeBasedOperators/interval.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # interval
29 | */
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TimeBasedOperators/interval.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TimeBasedOperators/timeout.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TimeBasedOperators/timer.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # timer
29 | */
30 |
31 | let bag = DisposeBag()
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TimeBasedOperators/timer.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/buffer.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/compactMap.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/concatMap.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/flatMap.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/flatMapFirst.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/flatMapLatest.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/groupBy.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/map.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/scan.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # scan
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/scan.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/toArray.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # toArray
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 |
34 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/toArray.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/window.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 |
27 | /*:
28 | # window
29 | */
30 |
31 | let disposeBag = DisposeBag()
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Operators/TransformingOperators/window.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Schedulers/scheduler.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/SharingSubscription/multicast.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/SharingSubscription/overveiw.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/SharingSubscription/publish.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/SharingSubscription/refCount.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/SharingSubscription/replay.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/SharingSubscription/share.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Subjects/AsyncSubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Subjects/BehaviorSubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Subjects/PublishSubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Subjects/Relay.playground/Contents.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Mastering RxSwift
3 | // Copyright (c) KxCoding
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 | //
23 |
24 | import UIKit
25 | import RxSwift
26 | import RxCocoa
27 |
28 | /*:
29 | # Relay
30 | */
31 |
32 | let bag = DisposeBag()
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Subjects/Relay.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/MasteringRxSwift/Subjects/ReplaySubject.playground/contents.xcplayground:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/RxSwift-6/Podfile:
--------------------------------------------------------------------------------
1 | # Uncomment the next line to define a global platform for your project
2 | # platform :ios, '9.0'
3 |
4 | target 'MasteringRxSwift' do
5 | # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
6 | use_frameworks!
7 |
8 | # Pods for MasteringRxSwift
9 | pod 'RxSwift', '6.2.0'
10 | pod 'RxCocoa'
11 |
12 | # RxSwift Community Projects
13 | pod 'NSObject+Rx'
14 | pod 'RxSwiftExt'
15 | pod 'Action'
16 | pod 'RxDataSources'
17 | pod "RxGesture"
18 | pod 'RxKeyboard'
19 |
20 | # Networking
21 | pod 'RxAlamofire'
22 | end
23 |
--------------------------------------------------------------------------------