Skip to content

Commit d3e310f

Browse files
committed
Refactor dispatch function definition
1 parent 215c0f2 commit d3e310f

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

Sources/RecombinePackage/Store/BaseStore.swift

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -152,22 +152,23 @@ public class BaseStore<State: Equatable, RawAction, RefinedAction>: StoreProtoco
152152
maxPublishers: maxPublishers,
153153
recurse(actions:)
154154
)
155+
let transformed: AnyPublisher<[RefinedAction], Never>
155156

156157
if collect {
157-
recursed
158+
transformed = recursed
158159
.collect()
159160
.map { $0.flatMap { $0 } }
160-
.sink {
161-
self?._preMiddlewareRefinedActions.send($0)
162-
}
163-
.store(in: &cancellables)
161+
.eraseToAnyPublisher()
164162
} else {
165-
recursed
166-
.sink {
167-
self?._preMiddlewareRefinedActions.send($0)
168-
}
169-
.store(in: &cancellables)
163+
transformed = recursed
164+
.eraseToAnyPublisher()
170165
}
166+
167+
transformed
168+
.sink {
169+
self?._preMiddlewareRefinedActions.send($0)
170+
}
171+
.store(in: &cancellables)
171172
}
172173

173174
open func injectBypassingMiddleware<S: Sequence>(actions: S) where S.Element == RefinedAction {

0 commit comments

Comments
 (0)