This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
MERGEPBX_TARGET=mergepbx | |
MERGEPBX_PREFIX=/usr/local/bin | |
MERGEPBX_BUILD_DIR=/tmp | |
echo "Deleting mergepbx..." | |
git config --global --unset merge.mergepbx.name | |
git config --global --unset merge.mergepbx.driver |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let killua = Player(level: Variable(50)) | |
let gon = Player(level: Variable(50)) | |
let bisque = Player(level: Variable(70)) | |
let player = PublishSubject<Player>() | |
player.asObservable() | |
.flatMapWithIndex { player, index -> Observable<Int> in | |
if index < 2 { | |
return player.level.asObservable() | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
player.asObservable() | |
.flatMapFirst { $0.level.asObservable() } | |
.subscribe(onNext: { print($0) }) | |
.disposed(by: disposeBag) | |
player.onNext(killua) // 50 | |
killua.level.value = 51 // 51 | |
player.onNext(gon) // level of gon isn't printed. | |
gon.level.value = 51 // new level of gon also isn't printed. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
player.asObservable() | |
.flatMapLatest { $0.level.asObservable() } | |
.subscribe(onNext: { print($0) }) | |
.disposed(by: disposeBag) | |
player.onNext(killua) // 50 | |
killua.level.value = 51 // 51 | |
player.onNext(gon) //50 | |
gon.level.value = 51 // 51 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let disposeBag = DisposeBag() | |
struct Player { | |
var level: Variable<Int> | |
} | |
// players | |
let killua = Player(level: Variable(50)) | |
let gon = Player(level: Variable(50)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
button.rx.tap | |
.flatMap { API.fetchData } | |
.subscribe(onNext: { data in | |
self?.updateUI(with: data) | |
}) | |
.disposed(by: disposeBag) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
button.rx.tap | |
.subscribe(onNext: { [weak self] in | |
API.fetchData | |
.subscribe(onNext: { data in | |
self?.updateUI(with: data) | |
}) | |
.disposed(by: self?.disposeBag!) | |
}) | |
.disposed(by: disposeBag) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Reference: [Transforming_Operators.xcplaygroundpage](https://github.com/ReactiveX/RxSwift/blob/master/Rx.playground/Pages/Transforming_Operators.xcplaygroundpage/Contents.swift) | |
let disposeBag = DisposeBag() | |
struct Player { | |
var score: Variable<Int> | |
} | |
let 👦🏻 = Player(score: Variable(80)) | |
let player = Variable(👦🏻) | |
player.asObservable() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let queue = DispatchQueue(label: "queue", attributes: .concurrent) | |
let workItem = DispatchWorkItem { | |
sleep(3) | |
print("done") | |
} | |
queue.async(execute: workItem) | |
let time: DispatchTime = .now() + .seconds(1) | |
let result: DispatchTimeoutResult = workItem.wait(timeout: time) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let queue = DispatchQueue(label: "queue", attributes: .concurrent) | |
let workItem = DispatchWorkItem { | |
sleep(3) | |
print("done") | |
} | |
queue.async(execute: workItem) | |
let time: DispatchTime = .now() + .seconds(1) | |
let result: DispatchTimeoutResult = workItem.wait(timeout: time) |
NewerOlder