Skip to content

Commit 4b9c476

Browse files
authored
Merge pull request #93 from Econa77/feature/fix-future-deprecated
addDisposableTo() to disposed(by:)
2 parents 7ee79c3 + c3eac55 commit 4b9c476

File tree

10 files changed

+38
-36
lines changed

10 files changed

+38
-36
lines changed

Demo/ViewController.swift

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ class ViewController: UIViewController {
8181
self?.activityIndicator.stopAnimating()
8282
}
8383
})
84-
.addDisposableTo(self.disposableBag)
84+
.disposed(by: self.disposableBag)
8585

8686
button1.rx.bind(to: sharedAction, input: .button("Button 1"))
8787

@@ -97,10 +97,12 @@ class ViewController: UIViewController {
9797
else {
9898
self?.activityIndicator.stopAnimating()
9999
}
100-
}).addDisposableTo(self.disposableBag)
100+
})
101+
.disposed(by: self.disposableBag)
101102

102103
sharedAction.elements.subscribe(onNext: { string in
103104
print(string + " pressed")
104-
}).addDisposableTo(self.disposableBag)
105+
})
106+
.disposed(by: self.disposableBag)
105107
}
106108
}

Sources/Action/Action.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ public final class Action<Input, Element> {
9898
Observable
9999
.combineLatest(executing, enabledIf) { !$0 && $1 }
100100
.bind(to: enabledSubject)
101-
.addDisposableTo(disposeBag)
101+
.disposed(by: disposeBag)
102102
}
103103

104104
@discardableResult
@@ -119,7 +119,7 @@ public final class Action<Input, Element> {
119119
.take(1)
120120
.flatMap { $0 }
121121
.subscribe(subject)
122-
.addDisposableTo(disposeBag)
122+
.disposed(by: disposeBag)
123123

124124
return subject.asObservable()
125125
}

Sources/Action/UIKitExtensions/AlertAction.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public extension Reactive where Base: UIAlertAction {
3737
action
3838
.enabled
3939
.bind(to: self.enabled)
40-
.addDisposableTo(self.base.actionDisposeBag)
40+
.disposed(by: self.base.actionDisposeBag)
4141
}
4242
}
4343
}

Sources/Action/UIKitExtensions/UIBarButtonItem+Action.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ public extension Reactive where Base: UIBarButtonItem {
2828
action
2929
.enabled
3030
.bind(to: self.isEnabled)
31-
.addDisposableTo(self.base.actionDisposeBag)
31+
.disposed(by: self.base.actionDisposeBag)
3232

3333
self.tap.subscribe(onNext: { (_) in
3434
action.execute()
3535
})
36-
.addDisposableTo(self.base.actionDisposeBag)
36+
.disposed(by: self.base.actionDisposeBag)
3737
}
3838
}
3939
}
@@ -44,12 +44,12 @@ public extension Reactive where Base: UIBarButtonItem {
4444
self.tap
4545
.map { inputTransform(self.base) }
4646
.bind(to: action.inputs)
47-
.addDisposableTo(self.base.actionDisposeBag)
47+
.disposed(by: self.base.actionDisposeBag)
4848

4949
action
5050
.enabled
5151
.bind(to: self.isEnabled)
52-
.addDisposableTo(self.base.actionDisposeBag)
52+
.disposed(by: self.base.actionDisposeBag)
5353
}
5454

5555
public func bind<Input, Output>(to action: Action<Input, Output>, input: Input) {

Sources/Action/UIKitExtensions/UIButton+Rx.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public extension Reactive where Base: UIButton {
2727
action
2828
.enabled
2929
.bind(to: self.isEnabled)
30-
.addDisposableTo(self.base.actionDisposeBag)
30+
.disposed(by: self.base.actionDisposeBag)
3131

3232
// Technically, this file is only included on tv/iOS platforms,
3333
// so this optional will never be nil. But let's be safe 😉
@@ -47,7 +47,7 @@ public extension Reactive where Base: UIButton {
4747
.subscribe(onNext: {
4848
action.execute()
4949
})
50-
.addDisposableTo(self.base.actionDisposeBag)
50+
.disposed(by: self.base.actionDisposeBag)
5151
}
5252
}
5353
}

Sources/Action/UIKitExtensions/UIControl+Rx.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ public extension Reactive where Base: UIControl {
1515
controlEvent
1616
.map { inputTransform(self.base) }
1717
.bind(to: action.inputs)
18-
.addDisposableTo(self.base.actionDisposeBag)
18+
.disposed(by: self.base.actionDisposeBag)
1919

2020
// Bind the enabled state of the control to the enabled state of the action
2121
action
2222
.enabled
2323
.bind(to: self.isEnabled)
24-
.addDisposableTo(self.base.actionDisposeBag)
24+
.disposed(by: self.base.actionDisposeBag)
2525
}
2626

2727
/// Unbinds any existing action, disposing of all subscriptions.

Tests/ActionTests/ActionTests.swift

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -35,35 +35,35 @@ class ActionTests: QuickSpec {
3535
func bindAction(action: Action<String, String>) {
3636
action.inputs
3737
.bind(to: inputs)
38-
.addDisposableTo(disposeBag)
38+
.disposed(by: disposeBag)
3939

4040
action.elements
4141
.bind(to: elements)
42-
.addDisposableTo(disposeBag)
42+
.disposed(by: disposeBag)
4343

4444
action.errors
4545
.bind(to: errors)
46-
.addDisposableTo(disposeBag)
46+
.disposed(by: disposeBag)
4747

4848
action.enabled
4949
.bind(to: enabled)
50-
.addDisposableTo(disposeBag)
50+
.disposed(by: disposeBag)
5151

5252
action.executing
5353
.bind(to: executing)
54-
.addDisposableTo(disposeBag)
54+
.disposed(by: disposeBag)
5555

5656
action.executionObservables
5757
.bind(to: executionObservables)
58-
.addDisposableTo(disposeBag)
58+
.disposed(by: disposeBag)
5959

6060
// Dummy subscription for multiple subcription tests
61-
action.inputs.subscribe().addDisposableTo(disposeBag)
62-
action.elements.subscribe().addDisposableTo(disposeBag)
63-
action.errors.subscribe().addDisposableTo(disposeBag)
64-
action.enabled.subscribe().addDisposableTo(disposeBag)
65-
action.executing.subscribe().addDisposableTo(disposeBag)
66-
action.executionObservables.subscribe().addDisposableTo(disposeBag)
61+
action.inputs.subscribe().disposed(by: disposeBag)
62+
action.elements.subscribe().disposed(by: disposeBag)
63+
action.errors.subscribe().disposed(by: disposeBag)
64+
action.enabled.subscribe().disposed(by: disposeBag)
65+
action.executing.subscribe().disposed(by: disposeBag)
66+
action.executionObservables.subscribe().disposed(by: disposeBag)
6767
}
6868

6969
describe("single element action") {
@@ -377,18 +377,18 @@ class ActionTests: QuickSpec {
377377
func bindAndExecuteTwice(action: Action<String, String>) {
378378
action.executionObservables
379379
.bind(to: executionObservables)
380-
.addDisposableTo(disposeBag)
380+
.disposed(by: disposeBag)
381381

382382
scheduler.scheduleAt(10) {
383383
action.execute("a")
384384
.bind(to: element)
385-
.addDisposableTo(disposeBag)
385+
.disposed(by: disposeBag)
386386
}
387387

388388
scheduler.scheduleAt(20) {
389389
action.execute("b")
390390
.bind(to: element)
391-
.addDisposableTo(disposeBag)
391+
.disposed(by: disposeBag)
392392
}
393393

394394
scheduler.start()
@@ -485,18 +485,18 @@ class ActionTests: QuickSpec {
485485

486486
action.executionObservables
487487
.bind(to: executionObservables)
488-
.addDisposableTo(disposeBag)
488+
.disposed(by: disposeBag)
489489

490490
scheduler.scheduleAt(10) {
491491
action.execute("a")
492492
.bind(to: element)
493-
.addDisposableTo(disposeBag)
493+
.disposed(by: disposeBag)
494494
}
495495

496496
scheduler.scheduleAt(20) {
497497
action.execute("b")
498498
.bind(to: secondElement)
499-
.addDisposableTo(disposeBag)
499+
.disposed(by: disposeBag)
500500
}
501501

502502
scheduler.scheduleAt(30) {

Tests/ActionTests/AlertActionTests.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ class AlertActionTests: QuickSpec {
5252
.subscribe(onNext: { _ in
5353
done()
5454
})
55-
.addDisposableTo(disposeBag)
55+
.disposed(by: disposeBag)
5656
}
5757

5858
expect(subject.isEnabled) == false
@@ -73,7 +73,7 @@ class AlertActionTests: QuickSpec {
7373
.subscribe(onNext: nil, onError: nil, onCompleted: nil, onDisposed: {
7474
disposed = true
7575
})
76-
.addDisposableTo(disposeBag)
76+
.disposed(by: disposeBag)
7777
}
7878

7979
subject.rx.action = nil

Tests/ActionTests/BarButtonTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ class BarButtonTests: QuickSpec {
9797
.subscribe(onNext: nil, onError: nil, onCompleted: nil, onDisposed: {
9898
disposed = true
9999
})
100-
.addDisposableTo(disposeBag)
100+
.disposed(by: disposeBag)
101101
}
102102

103103
subject.rx.action = nil

Tests/ActionTests/ButtonTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ class ButtonTests: QuickSpec {
9898
.subscribe(onNext: nil, onError: nil, onCompleted: nil, onDisposed: {
9999
disposed = true
100100
})
101-
.addDisposableTo(disposeBag)
101+
.disposed(by: disposeBag)
102102
}
103103

104104
subject.rx.action = nil

0 commit comments

Comments
 (0)