File tree Expand file tree Collapse file tree 1 file changed +21
-17
lines changed
Sources/ComposableArchitecture Expand file tree Collapse file tree 1 file changed +21
-17
lines changed Original file line number Diff line number Diff line change 267
267
self . receivedActions. append ( ( action, state) )
268
268
}
269
269
270
- let effect = LongLivingEffect ( file: action. file, line: action. line)
271
- return
272
- effects
273
- . producer
274
- . on (
275
- starting: { [ effectDidSubscribe = self . effectDidSubscribe, weak self] in
276
- self ? . inFlightEffects. insert ( effect)
277
- Task {
278
- await Task . megaYield ( )
279
- effectDidSubscribe. continuation. yield ( )
280
- }
281
- } ,
282
- completed: { [ weak self] in self ? . inFlightEffects. remove ( effect) } ,
283
- disposed: { [ weak self] in self ? . inFlightEffects. remove ( effect) }
284
- )
285
- . eraseToEffect { . init( origin: . receive( $0) , file: action. file, line: action. line) }
286
-
270
+ switch effects. operation {
271
+ case . none:
272
+ return . none
273
+ case . producer, . run:
274
+ let effect = LongLivingEffect ( file: action. file, line: action. line)
275
+ return
276
+ effects
277
+ . producer
278
+ . on (
279
+ starting: { [ effectDidSubscribe = self . effectDidSubscribe, weak self] in
280
+ self ? . inFlightEffects. insert ( effect)
281
+ Task {
282
+ await Task . megaYield ( )
283
+ effectDidSubscribe. continuation. yield ( )
284
+ }
285
+ } ,
286
+ completed: { [ weak self] in self ? . inFlightEffects. remove ( effect) } ,
287
+ disposed: { [ weak self] in self ? . inFlightEffects. remove ( effect) }
288
+ )
289
+ . eraseToEffect { . init( origin: . receive( $0) , file: action. file, line: action. line) }
290
+ }
287
291
} ,
288
292
environment: ( )
289
293
)
You can’t perform that action at this time.
0 commit comments