Skip to content

Commit 70a09c9

Browse files
committed
SignalProducer.on: restore value as the last parameter
Conceptually, `value` should be defined before `failed` since that goes in line with the natural order of events, however this reordering can introduce some confusion/inconvenience while using trailing closures specially during the migration from ReactiveCocoa 4.x. There's also an inconsistency between `SignalProducer` and `Signal` where the former was not updated accordingly.
1 parent a0d94e1 commit 70a09c9

File tree

4 files changed

+8
-8
lines changed

4 files changed

+8
-8
lines changed

Sources/EventLogger.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,12 +102,12 @@ extension SignalProducerProtocol {
102102
return self.on(
103103
starting: log(.starting),
104104
started: log(.started),
105-
value: log(.value),
106105
failed: log(.failed),
107106
completed: log(.completed),
108107
interrupted: log(.interrupted),
109108
terminated: log(.terminated),
110-
disposed: log(.disposed)
109+
disposed: log(.disposed),
110+
value: log(.value)
111111
)
112112
}
113113
}

Sources/Signal.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -815,13 +815,13 @@ extension SignalProtocol {
815815
/// - parameters:
816816
/// - event: A closure that accepts an event and is invoked on every
817817
/// received event.
818-
/// - value: A closure that accepts a value from `value` event.
819818
/// - failed: A closure that accepts error object and is invoked for
820819
/// failed event.
821820
/// - completed: A closure that is invoked for `completed` event.
822821
/// - interrupted: A closure that is invoked for `interrupted` event.
823822
/// - terminated: A closure that is invoked for any terminating event.
824823
/// - disposed: A closure added as disposable when signal completes.
824+
/// - value: A closure that accepts a value from `value` event.
825825
///
826826
/// - returns: A signal with attached side-effects for given event cases.
827827
public func on(

Sources/SignalProducer.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1265,25 +1265,25 @@ extension SignalProducerProtocol {
12651265
/// - started: A closure that is invoked after the producer is started.
12661266
/// - event: A closure that accepts an event and is invoked on every
12671267
/// received event.
1268-
/// - value: A closure that accepts a value from `value` event.
12691268
/// - failed: A closure that accepts error object and is invoked for
12701269
/// `failed` event.
12711270
/// - completed: A closure that is invoked for `completed` event.
12721271
/// - interrupted: A closure that is invoked for `interrupted` event.
12731272
/// - terminated: A closure that is invoked for any terminating event.
12741273
/// - disposed: A closure added as disposable when signal completes.
1274+
/// - value: A closure that accepts a value from `value` event.
12751275
///
12761276
/// - returns: A producer with attached side-effects for given event cases.
12771277
public func on(
12781278
starting: (() -> Void)? = nil,
12791279
started: (() -> Void)? = nil,
12801280
event: ((Event<Value, Error>) -> Void)? = nil,
1281-
value: ((Value) -> Void)? = nil,
12821281
failed: ((Error) -> Void)? = nil,
12831282
completed: (() -> Void)? = nil,
12841283
interrupted: (() -> Void)? = nil,
12851284
terminated: (() -> Void)? = nil,
1286-
disposed: (() -> Void)? = nil
1285+
disposed: (() -> Void)? = nil,
1286+
value: ((Value) -> Void)? = nil
12871287
) -> SignalProducer<Value, Error> {
12881288
return SignalProducer { observer, compositeDisposable in
12891289
starting?()

Tests/ReactiveSwiftTests/SignalProducerSpec.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -849,12 +849,12 @@ class SignalProducerSpec: QuickSpec {
849849
started += 1
850850
}, event: { e in
851851
event += 1
852-
}, value: { n in
853-
value += 1
854852
}, completed: {
855853
completed += 1
856854
}, terminated: {
857855
terminated += 1
856+
}, value: { n in
857+
value += 1
858858
})
859859

860860
producer.start()

0 commit comments

Comments
 (0)