@typed/fx 2.0.0-beta.4 → 2.0.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -20
- package/dist/Fx/Fx.d.ts +362 -10
- package/dist/Fx/Fx.d.ts.map +1 -1
- package/dist/Fx/Fx.js +32 -1
- package/dist/Fx/TypeId.d.ts +49 -3
- package/dist/Fx/TypeId.d.ts.map +1 -1
- package/dist/Fx/TypeId.js +39 -2
- package/dist/Fx/combinators/additive.d.ts +156 -5
- package/dist/Fx/combinators/additive.d.ts.map +1 -1
- package/dist/Fx/combinators/additive.js +156 -5
- package/dist/Fx/combinators/catch.d.ts +195 -22
- package/dist/Fx/combinators/catch.d.ts.map +1 -1
- package/dist/Fx/combinators/catch.js +186 -16
- package/dist/Fx/combinators/causes.d.ts +24 -1
- package/dist/Fx/combinators/causes.d.ts.map +1 -1
- package/dist/Fx/combinators/causes.js +24 -1
- package/dist/Fx/combinators/changesWithEffect.d.ts +20 -0
- package/dist/Fx/combinators/changesWithEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/changesWithEffect.js +20 -0
- package/dist/Fx/combinators/compact.d.ts +17 -0
- package/dist/Fx/combinators/compact.d.ts.map +1 -1
- package/dist/Fx/combinators/compact.js +17 -0
- package/dist/Fx/combinators/concatMap.d.ts +86 -0
- package/dist/Fx/combinators/concatMap.d.ts.map +1 -0
- package/dist/Fx/combinators/concatMap.js +86 -0
- package/dist/Fx/combinators/continueWith.d.ts +109 -1
- package/dist/Fx/combinators/continueWith.d.ts.map +1 -1
- package/dist/Fx/combinators/continueWith.js +109 -1
- package/dist/Fx/combinators/debounce.d.ts +34 -0
- package/dist/Fx/combinators/debounce.d.ts.map +1 -0
- package/dist/Fx/combinators/debounce.js +35 -0
- package/dist/Fx/combinators/delay.d.ts +34 -0
- package/dist/Fx/combinators/delay.d.ts.map +1 -0
- package/dist/Fx/combinators/delay.js +31 -0
- package/dist/Fx/combinators/dropUntil.d.ts +42 -0
- package/dist/Fx/combinators/dropUntil.d.ts.map +1 -1
- package/dist/Fx/combinators/dropUntil.js +42 -0
- package/dist/Fx/combinators/during.d.ts +38 -0
- package/dist/Fx/combinators/during.d.ts.map +1 -0
- package/dist/Fx/combinators/during.js +85 -0
- package/dist/Fx/combinators/ensuring.d.ts +33 -3
- package/dist/Fx/combinators/ensuring.d.ts.map +1 -1
- package/dist/Fx/combinators/ensuring.js +33 -3
- package/dist/Fx/combinators/exhaustLatestMap.d.ts +40 -4
- package/dist/Fx/combinators/exhaustLatestMap.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustLatestMap.js +40 -4
- package/dist/Fx/combinators/exhaustLatestMapEffect.d.ts +39 -3
- package/dist/Fx/combinators/exhaustLatestMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustLatestMapEffect.js +39 -3
- package/dist/Fx/combinators/exhaustMap.d.ts +37 -0
- package/dist/Fx/combinators/exhaustMap.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustMap.js +37 -0
- package/dist/Fx/combinators/exhaustMapEffect.d.ts +32 -0
- package/dist/Fx/combinators/exhaustMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustMapEffect.js +32 -0
- package/dist/Fx/combinators/exit.d.ts +22 -1
- package/dist/Fx/combinators/exit.d.ts.map +1 -1
- package/dist/Fx/combinators/exit.js +22 -1
- package/dist/Fx/combinators/filter.d.ts +16 -0
- package/dist/Fx/combinators/filter.d.ts.map +1 -1
- package/dist/Fx/combinators/filter.js +16 -0
- package/dist/Fx/combinators/filterEffect.d.ts +21 -0
- package/dist/Fx/combinators/filterEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterEffect.js +21 -0
- package/dist/Fx/combinators/filterMap.d.ts +19 -0
- package/dist/Fx/combinators/filterMap.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMap.js +19 -0
- package/dist/Fx/combinators/filterMapEffect.d.ts +20 -0
- package/dist/Fx/combinators/filterMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapEffect.js +20 -0
- package/dist/Fx/combinators/filterMapLoop.d.ts +19 -0
- package/dist/Fx/combinators/filterMapLoop.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoop.js +19 -0
- package/dist/Fx/combinators/filterMapLoopCause.d.ts +20 -0
- package/dist/Fx/combinators/filterMapLoopCause.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoopCause.js +20 -0
- package/dist/Fx/combinators/filterMapLoopCauseEffect.d.ts +20 -0
- package/dist/Fx/combinators/filterMapLoopCauseEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoopCauseEffect.js +20 -0
- package/dist/Fx/combinators/filterMapLoopEffect.d.ts +20 -0
- package/dist/Fx/combinators/filterMapLoopEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoopEffect.js +20 -0
- package/dist/Fx/combinators/flatMap.d.ts +48 -3
- package/dist/Fx/combinators/flatMap.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMap.js +35 -2
- package/dist/Fx/combinators/flatMapConcurrently.d.ts +50 -3
- package/dist/Fx/combinators/flatMapConcurrently.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMapConcurrently.js +47 -1
- package/dist/Fx/combinators/flatMapConcurrentlyEffect.d.ts +47 -3
- package/dist/Fx/combinators/flatMapConcurrentlyEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMapConcurrentlyEffect.js +39 -1
- package/dist/Fx/combinators/flatMapEffect.d.ts +44 -2
- package/dist/Fx/combinators/flatMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMapEffect.js +31 -1
- package/dist/Fx/combinators/flip.d.ts +33 -1
- package/dist/Fx/combinators/flip.d.ts.map +1 -1
- package/dist/Fx/combinators/flip.js +33 -1
- package/dist/Fx/combinators/gen.d.ts +28 -9
- package/dist/Fx/combinators/gen.d.ts.map +1 -1
- package/dist/Fx/combinators/gen.js +27 -3
- package/dist/Fx/combinators/genScoped.d.ts +32 -9
- package/dist/Fx/combinators/genScoped.d.ts.map +1 -1
- package/dist/Fx/combinators/genScoped.js +30 -2
- package/dist/Fx/combinators/grouped.d.ts +89 -0
- package/dist/Fx/combinators/grouped.d.ts.map +1 -0
- package/dist/Fx/combinators/grouped.js +146 -0
- package/dist/Fx/combinators/index.d.ts +35 -0
- package/dist/Fx/combinators/index.d.ts.map +1 -1
- package/dist/Fx/combinators/index.js +35 -0
- package/dist/Fx/combinators/keyed.d.ts +121 -7
- package/dist/Fx/combinators/keyed.d.ts.map +1 -1
- package/dist/Fx/combinators/keyed.js +64 -6
- package/dist/Fx/combinators/loop.d.ts +16 -0
- package/dist/Fx/combinators/loop.d.ts.map +1 -1
- package/dist/Fx/combinators/loop.js +16 -0
- package/dist/Fx/combinators/loopCause.d.ts +17 -0
- package/dist/Fx/combinators/loopCause.d.ts.map +1 -1
- package/dist/Fx/combinators/loopCause.js +17 -0
- package/dist/Fx/combinators/loopCauseEffect.d.ts +18 -0
- package/dist/Fx/combinators/loopCauseEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/loopCauseEffect.js +18 -0
- package/dist/Fx/combinators/loopEffect.d.ts +23 -0
- package/dist/Fx/combinators/loopEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/loopEffect.js +23 -0
- package/dist/Fx/combinators/map.d.ts +45 -0
- package/dist/Fx/combinators/map.d.ts.map +1 -1
- package/dist/Fx/combinators/map.js +42 -0
- package/dist/Fx/combinators/mapBoth.d.ts +19 -0
- package/dist/Fx/combinators/mapBoth.d.ts.map +1 -1
- package/dist/Fx/combinators/mapBoth.js +19 -0
- package/dist/Fx/combinators/mapEffect.d.ts +24 -0
- package/dist/Fx/combinators/mapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/mapEffect.js +24 -0
- package/dist/Fx/combinators/mapError.d.ts +20 -4
- package/dist/Fx/combinators/mapError.d.ts.map +1 -1
- package/dist/Fx/combinators/mapError.js +20 -4
- package/dist/Fx/combinators/mergeAll.d.ts +34 -0
- package/dist/Fx/combinators/mergeAll.d.ts.map +1 -1
- package/dist/Fx/combinators/mergeAll.js +34 -0
- package/dist/Fx/combinators/mergeOrdered.d.ts +35 -3
- package/dist/Fx/combinators/mergeOrdered.d.ts.map +1 -1
- package/dist/Fx/combinators/mergeOrdered.js +35 -3
- package/dist/Fx/combinators/onError.d.ts +33 -3
- package/dist/Fx/combinators/onError.d.ts.map +1 -1
- package/dist/Fx/combinators/onError.js +33 -3
- package/dist/Fx/combinators/onExit.d.ts +28 -2
- package/dist/Fx/combinators/onExit.d.ts.map +1 -1
- package/dist/Fx/combinators/onExit.js +28 -2
- package/dist/Fx/combinators/onInterrupt.d.ts +48 -3
- package/dist/Fx/combinators/onInterrupt.d.ts.map +1 -1
- package/dist/Fx/combinators/onInterrupt.js +48 -3
- package/dist/Fx/combinators/pairwise.d.ts +28 -0
- package/dist/Fx/combinators/pairwise.d.ts.map +1 -0
- package/dist/Fx/combinators/pairwise.js +31 -0
- package/dist/Fx/combinators/provide.d.ts +130 -9
- package/dist/Fx/combinators/provide.d.ts.map +1 -1
- package/dist/Fx/combinators/provide.js +130 -9
- package/dist/Fx/combinators/race.d.ts +92 -0
- package/dist/Fx/combinators/race.d.ts.map +1 -0
- package/dist/Fx/combinators/race.js +149 -0
- package/dist/Fx/combinators/repeat.d.ts +41 -0
- package/dist/Fx/combinators/repeat.d.ts.map +1 -0
- package/dist/Fx/combinators/repeat.js +57 -0
- package/dist/Fx/combinators/result.d.ts +22 -0
- package/dist/Fx/combinators/result.d.ts.map +1 -1
- package/dist/Fx/combinators/result.js +26 -12
- package/dist/Fx/combinators/retry.d.ts +53 -0
- package/dist/Fx/combinators/retry.d.ts.map +1 -0
- package/dist/Fx/combinators/retry.js +71 -0
- package/dist/Fx/combinators/sample.d.ts +31 -0
- package/dist/Fx/combinators/sample.d.ts.map +1 -0
- package/dist/Fx/combinators/sample.js +42 -0
- package/dist/Fx/combinators/scan.d.ts +39 -0
- package/dist/Fx/combinators/scan.d.ts.map +1 -1
- package/dist/Fx/combinators/scan.js +39 -0
- package/dist/Fx/combinators/since.d.ts +30 -0
- package/dist/Fx/combinators/since.d.ts.map +1 -0
- package/dist/Fx/combinators/since.js +39 -0
- package/dist/Fx/combinators/skip.d.ts +31 -0
- package/dist/Fx/combinators/skip.d.ts.map +1 -1
- package/dist/Fx/combinators/skip.js +31 -0
- package/dist/Fx/combinators/skipRepeats.d.ts +16 -0
- package/dist/Fx/combinators/skipRepeats.d.ts.map +1 -1
- package/dist/Fx/combinators/skipRepeats.js +16 -0
- package/dist/Fx/combinators/skipRepeatsWith.d.ts +17 -0
- package/dist/Fx/combinators/skipRepeatsWith.d.ts.map +1 -1
- package/dist/Fx/combinators/skipRepeatsWith.js +17 -0
- package/dist/Fx/combinators/skipWhile.d.ts +68 -0
- package/dist/Fx/combinators/skipWhile.d.ts.map +1 -1
- package/dist/Fx/combinators/skipWhile.js +68 -0
- package/dist/Fx/combinators/slice.d.ts +82 -0
- package/dist/Fx/combinators/slice.d.ts.map +1 -1
- package/dist/Fx/combinators/slice.js +33 -0
- package/dist/Fx/combinators/switchMap.d.ts +38 -0
- package/dist/Fx/combinators/switchMap.d.ts.map +1 -1
- package/dist/Fx/combinators/switchMap.js +38 -0
- package/dist/Fx/combinators/switchMapEffect.d.ts +37 -0
- package/dist/Fx/combinators/switchMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/switchMapEffect.js +37 -0
- package/dist/Fx/combinators/take.d.ts +32 -0
- package/dist/Fx/combinators/take.d.ts.map +1 -1
- package/dist/Fx/combinators/take.js +32 -0
- package/dist/Fx/combinators/takeUntil.d.ts +46 -0
- package/dist/Fx/combinators/takeUntil.d.ts.map +1 -1
- package/dist/Fx/combinators/takeUntil.js +46 -0
- package/dist/Fx/combinators/takeWhile.d.ts +31 -0
- package/dist/Fx/combinators/takeWhile.d.ts.map +1 -1
- package/dist/Fx/combinators/takeWhile.js +31 -0
- package/dist/Fx/combinators/tapEffect.d.ts +16 -0
- package/dist/Fx/combinators/tapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/tapEffect.js +16 -0
- package/dist/Fx/combinators/throttle.d.ts +79 -0
- package/dist/Fx/combinators/throttle.d.ts.map +1 -0
- package/dist/Fx/combinators/throttle.js +99 -0
- package/dist/Fx/combinators/timeout.d.ts +76 -0
- package/dist/Fx/combinators/timeout.d.ts.map +1 -0
- package/dist/Fx/combinators/timeout.js +110 -0
- package/dist/Fx/combinators/tuple.d.ts +30 -0
- package/dist/Fx/combinators/tuple.d.ts.map +1 -1
- package/dist/Fx/combinators/tuple.js +34 -3
- package/dist/Fx/combinators/until.d.ts +27 -0
- package/dist/Fx/combinators/until.d.ts.map +1 -0
- package/dist/Fx/combinators/until.js +56 -0
- package/dist/Fx/combinators/unwrap.d.ts +29 -0
- package/dist/Fx/combinators/unwrap.d.ts.map +1 -1
- package/dist/Fx/combinators/unwrap.js +29 -0
- package/dist/Fx/combinators/unwrapScoped.d.ts +33 -0
- package/dist/Fx/combinators/unwrapScoped.d.ts.map +1 -1
- package/dist/Fx/combinators/unwrapScoped.js +33 -0
- package/dist/Fx/combinators/when.d.ts +35 -0
- package/dist/Fx/combinators/when.d.ts.map +1 -1
- package/dist/Fx/combinators/when.js +36 -1
- package/dist/Fx/combinators/withLatestFrom.d.ts +58 -0
- package/dist/Fx/combinators/withLatestFrom.d.ts.map +1 -0
- package/dist/Fx/combinators/withLatestFrom.js +68 -0
- package/dist/Fx/combinators/withSpan.d.ts +35 -1
- package/dist/Fx/combinators/withSpan.d.ts.map +1 -1
- package/dist/Fx/combinators/withSpan.js +34 -3
- package/dist/Fx/combinators/zip.d.ts +60 -0
- package/dist/Fx/combinators/zip.d.ts.map +1 -1
- package/dist/Fx/combinators/zip.js +60 -0
- package/dist/Fx/constructors/at.d.ts +20 -0
- package/dist/Fx/constructors/at.d.ts.map +1 -1
- package/dist/Fx/constructors/at.js +20 -0
- package/dist/Fx/constructors/die.d.ts +21 -0
- package/dist/Fx/constructors/die.d.ts.map +1 -1
- package/dist/Fx/constructors/die.js +21 -0
- package/dist/Fx/constructors/empty.d.ts +18 -0
- package/dist/Fx/constructors/empty.d.ts.map +1 -1
- package/dist/Fx/constructors/empty.js +18 -0
- package/dist/Fx/constructors/fail.d.ts +21 -0
- package/dist/Fx/constructors/fail.d.ts.map +1 -1
- package/dist/Fx/constructors/fail.js +21 -0
- package/dist/Fx/constructors/failCause.d.ts +22 -0
- package/dist/Fx/constructors/failCause.d.ts.map +1 -1
- package/dist/Fx/constructors/failCause.js +22 -0
- package/dist/Fx/constructors/fn.d.ts +113 -13
- package/dist/Fx/constructors/fn.d.ts.map +1 -1
- package/dist/Fx/constructors/fn.js +36 -0
- package/dist/Fx/constructors/fromEffect.d.ts +43 -1
- package/dist/Fx/constructors/fromEffect.d.ts.map +1 -1
- package/dist/Fx/constructors/fromEffect.js +43 -1
- package/dist/Fx/constructors/fromFailures.d.ts +24 -0
- package/dist/Fx/constructors/fromFailures.d.ts.map +1 -1
- package/dist/Fx/constructors/fromFailures.js +24 -0
- package/dist/Fx/constructors/fromIterable.d.ts +22 -0
- package/dist/Fx/constructors/fromIterable.d.ts.map +1 -1
- package/dist/Fx/constructors/fromIterable.js +22 -0
- package/dist/Fx/constructors/fromSchedule.d.ts +23 -0
- package/dist/Fx/constructors/fromSchedule.d.ts.map +1 -1
- package/dist/Fx/constructors/fromSchedule.js +25 -2
- package/dist/Fx/constructors/index.d.ts +2 -1
- package/dist/Fx/constructors/index.d.ts.map +1 -1
- package/dist/Fx/constructors/index.js +2 -1
- package/dist/Fx/constructors/interrupt.d.ts +21 -1
- package/dist/Fx/constructors/interrupt.d.ts.map +1 -1
- package/dist/Fx/constructors/interrupt.js +21 -1
- package/dist/Fx/constructors/make.d.ts +146 -1
- package/dist/Fx/constructors/make.d.ts.map +1 -1
- package/dist/Fx/constructors/make.js +54 -3
- package/dist/Fx/constructors/periodic.d.ts +29 -0
- package/dist/Fx/constructors/periodic.d.ts.map +1 -1
- package/dist/Fx/constructors/periodic.js +29 -0
- package/dist/Fx/constructors/succeed.d.ts +75 -3
- package/dist/Fx/constructors/succeed.d.ts.map +1 -1
- package/dist/Fx/constructors/succeed.js +75 -3
- package/dist/Fx/constructors/suspend.d.ts +28 -0
- package/dist/Fx/constructors/suspend.d.ts.map +1 -1
- package/dist/Fx/constructors/suspend.js +28 -0
- package/dist/Fx/constructors/sync.d.ts +32 -0
- package/dist/Fx/constructors/sync.d.ts.map +1 -0
- package/dist/Fx/constructors/sync.js +32 -0
- package/dist/Fx/internal/DeferredRef.d.ts +259 -7
- package/dist/Fx/internal/DeferredRef.d.ts.map +1 -1
- package/dist/Fx/internal/DeferredRef.js +260 -9
- package/dist/Fx/internal/UnionToTuple.d.ts +22 -0
- package/dist/Fx/internal/UnionToTuple.d.ts.map +1 -1
- package/dist/Fx/internal/diff.d.ts +586 -0
- package/dist/Fx/internal/diff.d.ts.map +1 -1
- package/dist/Fx/internal/diff.js +120 -9
- package/dist/Fx/internal/effectableEvaluateKey.d.ts +30 -0
- package/dist/Fx/internal/effectableEvaluateKey.d.ts.map +1 -0
- package/dist/Fx/internal/effectableEvaluateKey.js +29 -0
- package/dist/Fx/internal/effectableWithOverride.d.ts +55 -0
- package/dist/Fx/internal/effectableWithOverride.d.ts.map +1 -0
- package/dist/Fx/internal/effectableWithOverride.js +46 -0
- package/dist/Fx/internal/equivalence.d.ts +29 -0
- package/dist/Fx/internal/equivalence.d.ts.map +1 -1
- package/dist/Fx/internal/equivalence.js +29 -0
- package/dist/Fx/internal/multicast.d.ts +145 -2
- package/dist/Fx/internal/multicast.d.ts.map +1 -1
- package/dist/Fx/internal/multicast.js +146 -4
- package/dist/Fx/internal/ring-buffer.d.ts +149 -0
- package/dist/Fx/internal/ring-buffer.d.ts.map +1 -1
- package/dist/Fx/internal/ring-buffer.js +155 -0
- package/dist/Fx/internal/scope.d.ts +184 -0
- package/dist/Fx/internal/scope.d.ts.map +1 -1
- package/dist/Fx/internal/scope.js +150 -0
- package/dist/Fx/internal/yieldable.d.ts +117 -2
- package/dist/Fx/internal/yieldable.d.ts.map +1 -1
- package/dist/Fx/internal/yieldable.js +86 -3
- package/dist/Fx/run/collect.d.ts +89 -0
- package/dist/Fx/run/collect.d.ts.map +1 -1
- package/dist/Fx/run/collect.js +90 -1
- package/dist/Fx/run/first.d.ts +22 -0
- package/dist/Fx/run/first.d.ts.map +1 -1
- package/dist/Fx/run/first.js +22 -0
- package/dist/Fx/run/fork.d.ts +50 -0
- package/dist/Fx/run/fork.d.ts.map +1 -1
- package/dist/Fx/run/fork.js +50 -0
- package/dist/Fx/run/observe.d.ts +106 -0
- package/dist/Fx/run/observe.d.ts.map +1 -1
- package/dist/Fx/run/observe.js +106 -0
- package/dist/Fx/run/runPromise.d.ts +43 -0
- package/dist/Fx/run/runPromise.d.ts.map +1 -1
- package/dist/Fx/run/runPromise.js +43 -0
- package/dist/Fx/stream.d.ts +92 -0
- package/dist/Fx/stream.d.ts.map +1 -1
- package/dist/Fx/stream.js +60 -1
- package/dist/Push/Push.d.ts +1216 -91
- package/dist/Push/Push.d.ts.map +1 -1
- package/dist/Push/Push.js +1012 -83
- package/dist/RefArray.d.ts +2 -0
- package/dist/RefArray.d.ts.map +1 -0
- package/dist/RefArray.js +1 -0
- package/dist/RefBigDecimal.d.ts +2 -0
- package/dist/RefBigDecimal.d.ts.map +1 -0
- package/dist/RefBigDecimal.js +1 -0
- package/dist/RefBigInt.d.ts +2 -0
- package/dist/RefBigInt.d.ts.map +1 -0
- package/dist/RefBigInt.js +1 -0
- package/dist/RefBoolean.d.ts +2 -0
- package/dist/RefBoolean.d.ts.map +1 -0
- package/dist/RefBoolean.js +1 -0
- package/dist/RefCause.d.ts +2 -0
- package/dist/RefCause.d.ts.map +1 -0
- package/dist/RefCause.js +1 -0
- package/dist/RefChunk.d.ts +2 -0
- package/dist/RefChunk.d.ts.map +1 -0
- package/dist/RefChunk.js +1 -0
- package/dist/RefDateTime.d.ts +2 -0
- package/dist/RefDateTime.d.ts.map +1 -0
- package/dist/RefDateTime.js +1 -0
- package/dist/RefDuration.d.ts +2 -0
- package/dist/RefDuration.d.ts.map +1 -0
- package/dist/RefDuration.js +1 -0
- package/dist/RefGraph.d.ts +2 -0
- package/dist/RefGraph.d.ts.map +1 -0
- package/dist/RefGraph.js +1 -0
- package/dist/RefHashMap.d.ts +2 -0
- package/dist/RefHashMap.d.ts.map +1 -0
- package/dist/RefHashMap.js +1 -0
- package/dist/RefHashRing.d.ts +2 -0
- package/dist/RefHashRing.d.ts.map +1 -0
- package/dist/RefHashRing.js +1 -0
- package/dist/RefHashSet.d.ts +2 -0
- package/dist/RefHashSet.d.ts.map +1 -0
- package/dist/RefHashSet.js +1 -0
- package/dist/RefIterable.d.ts +2 -0
- package/dist/RefIterable.d.ts.map +1 -0
- package/dist/RefIterable.js +1 -0
- package/dist/RefOption.d.ts +2 -0
- package/dist/RefOption.d.ts.map +1 -0
- package/dist/RefOption.js +1 -0
- package/dist/RefRecord.d.ts +2 -0
- package/dist/RefRecord.d.ts.map +1 -0
- package/dist/RefRecord.js +1 -0
- package/dist/RefResult.d.ts +2 -0
- package/dist/RefResult.d.ts.map +1 -0
- package/dist/RefResult.js +1 -0
- package/dist/RefString.d.ts +2 -0
- package/dist/RefString.d.ts.map +1 -0
- package/dist/RefString.js +1 -0
- package/dist/RefStruct.d.ts +2 -0
- package/dist/RefStruct.d.ts.map +1 -0
- package/dist/RefStruct.js +1 -0
- package/dist/RefSubject/Hydration.d.ts +504 -0
- package/dist/RefSubject/Hydration.d.ts.map +1 -0
- package/dist/RefSubject/Hydration.js +300 -0
- package/dist/RefSubject/RefArray.d.ts +351 -4
- package/dist/RefSubject/RefArray.d.ts.map +1 -1
- package/dist/RefSubject/RefArray.js +339 -3
- package/dist/RefSubject/RefBigDecimal.d.ts +221 -1
- package/dist/RefSubject/RefBigDecimal.d.ts.map +1 -1
- package/dist/RefSubject/RefBigDecimal.js +210 -1
- package/dist/RefSubject/RefBigInt.d.ts +166 -1
- package/dist/RefSubject/RefBigInt.d.ts.map +1 -1
- package/dist/RefSubject/RefBigInt.js +155 -1
- package/dist/RefSubject/RefBoolean.d.ts +166 -1
- package/dist/RefSubject/RefBoolean.d.ts.map +1 -1
- package/dist/RefSubject/RefBoolean.js +155 -1
- package/dist/RefSubject/RefCause.d.ts +122 -1
- package/dist/RefSubject/RefCause.d.ts.map +1 -1
- package/dist/RefSubject/RefCause.js +111 -1
- package/dist/RefSubject/RefChunk.d.ts +406 -1
- package/dist/RefSubject/RefChunk.d.ts.map +1 -1
- package/dist/RefSubject/RefChunk.js +394 -0
- package/dist/RefSubject/RefDateTime.d.ts +122 -1
- package/dist/RefSubject/RefDateTime.d.ts.map +1 -1
- package/dist/RefSubject/RefDateTime.js +111 -1
- package/dist/RefSubject/RefDuration.d.ts +155 -1
- package/dist/RefSubject/RefDuration.d.ts.map +1 -1
- package/dist/RefSubject/RefDuration.js +144 -1
- package/dist/RefSubject/RefGraph.d.ts +320 -6
- package/dist/RefSubject/RefGraph.d.ts.map +1 -1
- package/dist/RefSubject/RefGraph.js +303 -0
- package/dist/RefSubject/RefHashMap.d.ts +296 -1
- package/dist/RefSubject/RefHashMap.d.ts.map +1 -1
- package/dist/RefSubject/RefHashMap.js +284 -0
- package/dist/RefSubject/RefHashRing.d.ts +146 -2
- package/dist/RefSubject/RefHashRing.d.ts.map +1 -1
- package/dist/RefSubject/RefHashRing.js +133 -0
- package/dist/RefSubject/RefHashSet.d.ts +230 -1
- package/dist/RefSubject/RefHashSet.d.ts.map +1 -1
- package/dist/RefSubject/RefHashSet.js +218 -0
- package/dist/RefSubject/RefIterable.d.ts +327 -1
- package/dist/RefSubject/RefIterable.d.ts.map +1 -1
- package/dist/RefSubject/RefIterable.js +315 -0
- package/dist/RefSubject/RefOption.d.ts +144 -1
- package/dist/RefSubject/RefOption.d.ts.map +1 -1
- package/dist/RefSubject/RefOption.js +133 -1
- package/dist/RefSubject/RefRecord.d.ts +339 -1
- package/dist/RefSubject/RefRecord.d.ts.map +1 -1
- package/dist/RefSubject/RefRecord.js +327 -0
- package/dist/RefSubject/RefResult.d.ts +155 -23
- package/dist/RefSubject/RefResult.d.ts.map +1 -1
- package/dist/RefSubject/RefResult.js +122 -1
- package/dist/RefSubject/RefString.d.ts +188 -1
- package/dist/RefSubject/RefString.d.ts.map +1 -1
- package/dist/RefSubject/RefString.js +177 -1
- package/dist/RefSubject/RefStruct.d.ts +156 -1
- package/dist/RefSubject/RefStruct.d.ts.map +1 -1
- package/dist/RefSubject/RefStruct.js +145 -1
- package/dist/RefSubject/RefSubject.d.ts +1166 -13
- package/dist/RefSubject/RefSubject.d.ts.map +1 -1
- package/dist/RefSubject/RefSubject.js +843 -51
- package/dist/RefSubject/RefTrie.d.ts +290 -4
- package/dist/RefSubject/RefTrie.d.ts.map +1 -1
- package/dist/RefSubject/RefTrie.js +278 -3
- package/dist/RefSubject/RefTuple.d.ts +117 -1
- package/dist/RefSubject/RefTuple.d.ts.map +1 -1
- package/dist/RefSubject/RefTuple.js +106 -1
- package/dist/RefSubject/index.d.ts +1 -0
- package/dist/RefSubject/index.d.ts.map +1 -1
- package/dist/RefSubject/index.js +1 -0
- package/dist/RefSubject.d.ts +2 -1
- package/dist/RefSubject.d.ts.map +1 -1
- package/dist/RefSubject.js +2 -1
- package/dist/RefTrie.d.ts +2 -0
- package/dist/RefTrie.d.ts.map +1 -0
- package/dist/RefTrie.js +1 -0
- package/dist/RefTuple.d.ts +2 -0
- package/dist/RefTuple.d.ts.map +1 -0
- package/dist/RefTuple.js +1 -0
- package/dist/Sink/Sink.d.ts +381 -10
- package/dist/Sink/Sink.d.ts.map +1 -1
- package/dist/Sink/Sink.js +49 -2
- package/dist/Sink/combinators.d.ts +731 -2
- package/dist/Sink/combinators.d.ts.map +1 -1
- package/dist/Sink/combinators.js +706 -4
- package/dist/Subject/Subject.d.ts +1013 -19
- package/dist/Subject/Subject.d.ts.map +1 -1
- package/dist/Subject/Subject.js +901 -36
- package/dist/Versioned/Versioned.d.ts +424 -7
- package/dist/Versioned/Versioned.d.ts.map +1 -1
- package/dist/Versioned/Versioned.js +238 -12
- package/dist/index.d.ts +22 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -3
- package/package.json +123 -14
- package/dist/Fx/constructors/fromYieldable.d.ts +0 -12
- package/dist/Fx/constructors/fromYieldable.d.ts.map +0 -1
- package/dist/Fx/constructors/fromYieldable.js +0 -12
- package/src/Fx/Fx.ts +0 -164
- package/src/Fx/TypeId.ts +0 -25
- package/src/Fx/combinators/additive.ts +0 -142
- package/src/Fx/combinators/catch.ts +0 -416
- package/src/Fx/combinators/causes.ts +0 -23
- package/src/Fx/combinators/changesWithEffect.ts +0 -66
- package/src/Fx/combinators/compact.ts +0 -15
- package/src/Fx/combinators/continueWith.ts +0 -78
- package/src/Fx/combinators/dropUntil.ts +0 -47
- package/src/Fx/combinators/ensuring.ts +0 -23
- package/src/Fx/combinators/exhaustLatestMap.ts +0 -74
- package/src/Fx/combinators/exhaustLatestMapEffect.ts +0 -25
- package/src/Fx/combinators/exhaustMap.ts +0 -36
- package/src/Fx/combinators/exhaustMapEffect.ts +0 -23
- package/src/Fx/combinators/exit.ts +0 -15
- package/src/Fx/combinators/filter.ts +0 -22
- package/src/Fx/combinators/filterEffect.ts +0 -31
- package/src/Fx/combinators/filterMap.ts +0 -23
- package/src/Fx/combinators/filterMapEffect.ts +0 -32
- package/src/Fx/combinators/filterMapLoop.ts +0 -35
- package/src/Fx/combinators/filterMapLoopCause.ts +0 -36
- package/src/Fx/combinators/filterMapLoopCauseEffect.ts +0 -46
- package/src/Fx/combinators/filterMapLoopEffect.ts +0 -36
- package/src/Fx/combinators/flatMap.ts +0 -51
- package/src/Fx/combinators/flatMapConcurrently.ts +0 -39
- package/src/Fx/combinators/flatMapConcurrentlyEffect.ts +0 -26
- package/src/Fx/combinators/flatMapEffect.ts +0 -42
- package/src/Fx/combinators/flip.ts +0 -14
- package/src/Fx/combinators/gen.ts +0 -24
- package/src/Fx/combinators/genScoped.ts +0 -24
- package/src/Fx/combinators/index.ts +0 -61
- package/src/Fx/combinators/keyed.ts +0 -369
- package/src/Fx/combinators/loop.ts +0 -27
- package/src/Fx/combinators/loopCause.ts +0 -34
- package/src/Fx/combinators/loopCauseEffect.ts +0 -36
- package/src/Fx/combinators/loopEffect.ts +0 -34
- package/src/Fx/combinators/map.ts +0 -22
- package/src/Fx/combinators/mapBoth.ts +0 -40
- package/src/Fx/combinators/mapEffect.ts +0 -32
- package/src/Fx/combinators/mapError.ts +0 -28
- package/src/Fx/combinators/mergeAll.ts +0 -22
- package/src/Fx/combinators/mergeOrdered.ts +0 -123
- package/src/Fx/combinators/onError.ts +0 -40
- package/src/Fx/combinators/onExit.ts +0 -82
- package/src/Fx/combinators/onInterrupt.ts +0 -87
- package/src/Fx/combinators/provide.ts +0 -124
- package/src/Fx/combinators/result.ts +0 -39
- package/src/Fx/combinators/scan.ts +0 -82
- package/src/Fx/combinators/skip.ts +0 -41
- package/src/Fx/combinators/skipRepeats.ts +0 -15
- package/src/Fx/combinators/skipRepeatsWith.ts +0 -40
- package/src/Fx/combinators/skipWhile.ts +0 -100
- package/src/Fx/combinators/slice.ts +0 -55
- package/src/Fx/combinators/switchMap.ts +0 -55
- package/src/Fx/combinators/switchMapEffect.ts +0 -25
- package/src/Fx/combinators/take.ts +0 -38
- package/src/Fx/combinators/takeUntil.ts +0 -88
- package/src/Fx/combinators/takeWhile.ts +0 -47
- package/src/Fx/combinators/tapEffect.ts +0 -39
- package/src/Fx/combinators/tuple.ts +0 -79
- package/src/Fx/combinators/unwrap.ts +0 -21
- package/src/Fx/combinators/unwrapScoped.ts +0 -26
- package/src/Fx/combinators/when.ts +0 -64
- package/src/Fx/combinators/withSpan.ts +0 -24
- package/src/Fx/combinators/zip.ts +0 -175
- package/src/Fx/constructors/at.ts +0 -23
- package/src/Fx/constructors/die.ts +0 -17
- package/src/Fx/constructors/empty.ts +0 -10
- package/src/Fx/constructors/fail.ts +0 -14
- package/src/Fx/constructors/failCause.ts +0 -14
- package/src/Fx/constructors/fn.ts +0 -245
- package/src/Fx/constructors/fromEffect.ts +0 -24
- package/src/Fx/constructors/fromFailures.ts +0 -19
- package/src/Fx/constructors/fromIterable.ts +0 -15
- package/src/Fx/constructors/fromSchedule.ts +0 -18
- package/src/Fx/constructors/fromYieldable.ts +0 -17
- package/src/Fx/constructors/index.ts +0 -15
- package/src/Fx/constructors/interrupt.ts +0 -13
- package/src/Fx/constructors/make.ts +0 -103
- package/src/Fx/constructors/periodic.ts +0 -15
- package/src/Fx/constructors/succeed.ts +0 -37
- package/src/Fx/constructors/suspend.ts +0 -6
- package/src/Fx/index.ts +0 -6
- package/src/Fx/internal/DeferredRef.ts +0 -87
- package/src/Fx/internal/UnionToTuple.ts +0 -12
- package/src/Fx/internal/diff.ts +0 -191
- package/src/Fx/internal/equivalence.ts +0 -12
- package/src/Fx/internal/multicast.ts +0 -51
- package/src/Fx/internal/ring-buffer.ts +0 -60
- package/src/Fx/internal/scope.ts +0 -58
- package/src/Fx/internal/yieldable.ts +0 -31
- package/src/Fx/run/collect.ts +0 -79
- package/src/Fx/run/first.ts +0 -20
- package/src/Fx/run/fork.ts +0 -40
- package/src/Fx/run/index.ts +0 -5
- package/src/Fx/run/observe.ts +0 -114
- package/src/Fx/run/runPromise.ts +0 -32
- package/src/Fx/stream.ts +0 -42
- package/src/Fx.additive-combinators.test.ts +0 -126
- package/src/Fx.catch-additive.test.ts +0 -206
- package/src/Fx.catch.test.ts +0 -60
- package/src/Fx.dropUntil.test.ts +0 -61
- package/src/Fx.fn.test.ts +0 -51
- package/src/Fx.lifecycle.test.ts +0 -79
- package/src/Fx.mapError-mapBoth.test.ts +0 -101
- package/src/Fx.provide-combinators.test.ts +0 -94
- package/src/Fx.result-changesWithEffect.test.ts +0 -112
- package/src/Fx.scan.test.ts +0 -73
- package/src/Fx.takeWhile-skipWhile.test.ts +0 -84
- package/src/Fx.test.ts +0 -71
- package/src/Fx.ts +0 -1
- package/src/Fx.zip-merge-additive.test.ts +0 -171
- package/src/Fx.zip.test.ts +0 -133
- package/src/Push/Push.ts +0 -1093
- package/src/Push/index.ts +0 -1
- package/src/Push.additive.test.ts +0 -256
- package/src/Push.test.ts +0 -26
- package/src/Push.ts +0 -1
- package/src/RefSubject/RefArray.ts +0 -516
- package/src/RefSubject/RefBigDecimal.test.ts +0 -56
- package/src/RefSubject/RefBigDecimal.ts +0 -295
- package/src/RefSubject/RefBigInt.test.ts +0 -56
- package/src/RefSubject/RefBigInt.ts +0 -189
- package/src/RefSubject/RefBoolean.test.ts +0 -57
- package/src/RefSubject/RefBoolean.ts +0 -185
- package/src/RefSubject/RefCause.test.ts +0 -53
- package/src/RefSubject/RefCause.ts +0 -146
- package/src/RefSubject/RefChunk.ts +0 -516
- package/src/RefSubject/RefDateTime.test.ts +0 -43
- package/src/RefSubject/RefDateTime.ts +0 -261
- package/src/RefSubject/RefDuration.test.ts +0 -49
- package/src/RefSubject/RefDuration.ts +0 -188
- package/src/RefSubject/RefGraph.ts +0 -649
- package/src/RefSubject/RefHashMap.ts +0 -474
- package/src/RefSubject/RefHashRing.ts +0 -262
- package/src/RefSubject/RefHashSet.ts +0 -308
- package/src/RefSubject/RefIterable.ts +0 -454
- package/src/RefSubject/RefOption.test.ts +0 -67
- package/src/RefSubject/RefOption.ts +0 -193
- package/src/RefSubject/RefRecord.ts +0 -621
- package/src/RefSubject/RefResult.test.ts +0 -63
- package/src/RefSubject/RefResult.ts +0 -209
- package/src/RefSubject/RefString.test.ts +0 -61
- package/src/RefSubject/RefString.ts +0 -256
- package/src/RefSubject/RefStruct.test.ts +0 -60
- package/src/RefSubject/RefStruct.ts +0 -253
- package/src/RefSubject/RefSubject.ts +0 -2642
- package/src/RefSubject/RefTrie.ts +0 -365
- package/src/RefSubject/RefTuple.test.ts +0 -60
- package/src/RefSubject/RefTuple.ts +0 -231
- package/src/RefSubject/index.ts +0 -21
- package/src/RefSubject.additive-parity.test.ts +0 -101
- package/src/RefSubject.test.ts +0 -65
- package/src/RefSubject.ts +0 -1
- package/src/Sink/Sink.ts +0 -159
- package/src/Sink/combinators.ts +0 -1115
- package/src/Sink/index.ts +0 -2
- package/src/Sink.combinators.test.ts +0 -88
- package/src/Sink.reduce-collect-head-last.test.ts +0 -107
- package/src/Sink.ts +0 -1
- package/src/Subject/Subject.ts +0 -440
- package/src/Subject/index.ts +0 -1
- package/src/Subject.test.ts +0 -47
- package/src/Subject.ts +0 -1
- package/src/Versioned/Versioned.ts +0 -595
- package/src/Versioned/index.ts +0 -1
- package/src/Versioned.filterMap.test.ts +0 -91
- package/src/Versioned.test.ts +0 -23
- package/src/Versioned.ts +0 -1
- package/src/index.ts +0 -7
|
@@ -9,10 +9,21 @@ import * as RefSubject from "./RefSubject.js";
|
|
|
9
9
|
/**
|
|
10
10
|
* Creates a new `RefBoolean` from a boolean, `Effect`, or `Fx`.
|
|
11
11
|
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* ## Why
|
|
14
|
+
*
|
|
15
|
+
* Creates boolean state with equality suited to that Effect data type, so unchanged values do not
|
|
16
|
+
* produce redundant pushed updates.
|
|
17
|
+
*
|
|
18
|
+
* ## Ownership and lifetime
|
|
19
|
+
*
|
|
20
|
+
* The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
|
|
21
|
+
* and cleanup; source failures and services stay on reads and pushes.
|
|
22
|
+
*
|
|
12
23
|
* @example
|
|
13
24
|
* ```ts
|
|
14
25
|
* import { Effect } from "effect"
|
|
15
|
-
* import * as RefBoolean from "
|
|
26
|
+
* import * as RefBoolean from "@typed/fx/RefBoolean"
|
|
16
27
|
*
|
|
17
28
|
* const program = Effect.gen(function* () {
|
|
18
29
|
* const value = yield* RefBoolean.make(true)
|
|
@@ -29,18 +40,51 @@ export function make(initial, eq = Equivalence_.strictEqual()) {
|
|
|
29
40
|
}
|
|
30
41
|
/**
|
|
31
42
|
* Toggle the current state of a RefBoolean.
|
|
43
|
+
* @remarks
|
|
44
|
+
* ## Why
|
|
45
|
+
*
|
|
46
|
+
* Keeps toggle atomic with respect to competing RefSubject writes instead of splitting the read
|
|
47
|
+
* and replacement into separate effects.
|
|
48
|
+
*
|
|
49
|
+
* ## Ownership and lifetime
|
|
50
|
+
*
|
|
51
|
+
* Running toggle performs one serialized boolean transition and resolves with its committed value.
|
|
52
|
+
* It acquires no resource; failures and services remain those of the source ref.
|
|
53
|
+
*
|
|
32
54
|
* @since 1.18.0
|
|
33
55
|
* @category combinators
|
|
34
56
|
*/
|
|
35
57
|
export const toggle = (ref) => RefSubject.update(ref, Boolean_.not);
|
|
36
58
|
/**
|
|
37
59
|
* Set the current state of a RefBoolean to true.
|
|
60
|
+
* @remarks
|
|
61
|
+
* ## Why
|
|
62
|
+
*
|
|
63
|
+
* Keeps set true atomic with respect to competing RefSubject writes instead of splitting the read
|
|
64
|
+
* and replacement into separate effects.
|
|
65
|
+
*
|
|
66
|
+
* ## Ownership and lifetime
|
|
67
|
+
*
|
|
68
|
+
* Running set true performs one serialized boolean transition and resolves with its committed
|
|
69
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
70
|
+
*
|
|
38
71
|
* @since 1.18.0
|
|
39
72
|
* @category combinators
|
|
40
73
|
*/
|
|
41
74
|
export const setTrue = (ref) => RefSubject.set(ref, true);
|
|
42
75
|
/**
|
|
43
76
|
* Set the current state of a RefBoolean to false.
|
|
77
|
+
* @remarks
|
|
78
|
+
* ## Why
|
|
79
|
+
*
|
|
80
|
+
* Keeps set false atomic with respect to competing RefSubject writes instead of splitting the read
|
|
81
|
+
* and replacement into separate effects.
|
|
82
|
+
*
|
|
83
|
+
* ## Ownership and lifetime
|
|
84
|
+
*
|
|
85
|
+
* Running set false performs one serialized boolean transition and resolves with its committed
|
|
86
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
87
|
+
*
|
|
44
88
|
* @since 1.18.0
|
|
45
89
|
* @category combinators
|
|
46
90
|
*/
|
|
@@ -50,6 +94,17 @@ export const setFalse = (ref) => RefSubject.set(ref, false);
|
|
|
50
94
|
// ========================================
|
|
51
95
|
/**
|
|
52
96
|
* Apply AND operation with a boolean to the current state of a RefBoolean.
|
|
97
|
+
* @remarks
|
|
98
|
+
* ## Why
|
|
99
|
+
*
|
|
100
|
+
* Apply AND operation with a boolean to the current state of a RefBoolean. The operation remains
|
|
101
|
+
* attached to the RefSubject's versioned state boundary.
|
|
102
|
+
*
|
|
103
|
+
* ## Ownership and lifetime
|
|
104
|
+
*
|
|
105
|
+
* The and view retains no independent state. An Effect read samples the source once; Fx
|
|
106
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
107
|
+
*
|
|
53
108
|
* @since 1.18.0
|
|
54
109
|
* @category computed
|
|
55
110
|
*/
|
|
@@ -58,6 +113,17 @@ export const and = dual(2, function and(ref, that) {
|
|
|
58
113
|
});
|
|
59
114
|
/**
|
|
60
115
|
* Apply OR operation with a boolean to the current state of a RefBoolean.
|
|
116
|
+
* @remarks
|
|
117
|
+
* ## Why
|
|
118
|
+
*
|
|
119
|
+
* Apply OR operation with a boolean to the current state of a RefBoolean. The operation remains
|
|
120
|
+
* attached to the RefSubject's versioned state boundary.
|
|
121
|
+
*
|
|
122
|
+
* ## Ownership and lifetime
|
|
123
|
+
*
|
|
124
|
+
* The or view retains no independent state. An Effect read samples the source once; Fx observation
|
|
125
|
+
* follows later pushes and its observing Scope owns subscription cleanup.
|
|
126
|
+
*
|
|
61
127
|
* @since 1.18.0
|
|
62
128
|
* @category computed
|
|
63
129
|
*/
|
|
@@ -66,12 +132,34 @@ export const or = dual(2, function or(ref, that) {
|
|
|
66
132
|
});
|
|
67
133
|
/**
|
|
68
134
|
* Apply NOT operation to the current state of a RefBoolean.
|
|
135
|
+
* @remarks
|
|
136
|
+
* ## Why
|
|
137
|
+
*
|
|
138
|
+
* Apply NOT operation to the current state of a RefBoolean. The operation remains attached to the
|
|
139
|
+
* RefSubject's versioned state boundary.
|
|
140
|
+
*
|
|
141
|
+
* ## Ownership and lifetime
|
|
142
|
+
*
|
|
143
|
+
* The not view retains no independent state. An Effect read samples the source once; Fx
|
|
144
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
145
|
+
*
|
|
69
146
|
* @since 1.18.0
|
|
70
147
|
* @category computed
|
|
71
148
|
*/
|
|
72
149
|
export const not = (ref) => RefSubject.map(ref, Boolean_.not);
|
|
73
150
|
/**
|
|
74
151
|
* Apply XOR operation with a boolean to the current state of a RefBoolean.
|
|
152
|
+
* @remarks
|
|
153
|
+
* ## Why
|
|
154
|
+
*
|
|
155
|
+
* Apply XOR operation with a boolean to the current state of a RefBoolean. The operation remains
|
|
156
|
+
* attached to the RefSubject's versioned state boundary.
|
|
157
|
+
*
|
|
158
|
+
* ## Ownership and lifetime
|
|
159
|
+
*
|
|
160
|
+
* The xor view retains no independent state. An Effect read samples the source once; Fx
|
|
161
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
162
|
+
*
|
|
75
163
|
* @since 1.18.0
|
|
76
164
|
* @category computed
|
|
77
165
|
*/
|
|
@@ -80,6 +168,17 @@ export const xor = dual(2, function xor(ref, that) {
|
|
|
80
168
|
});
|
|
81
169
|
/**
|
|
82
170
|
* Apply NAND operation with a boolean to the current state of a RefBoolean.
|
|
171
|
+
* @remarks
|
|
172
|
+
* ## Why
|
|
173
|
+
*
|
|
174
|
+
* Apply NAND operation with a boolean to the current state of a RefBoolean. The operation remains
|
|
175
|
+
* attached to the RefSubject's versioned state boundary.
|
|
176
|
+
*
|
|
177
|
+
* ## Ownership and lifetime
|
|
178
|
+
*
|
|
179
|
+
* The nand view retains no independent state. An Effect read samples the source once; Fx
|
|
180
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
181
|
+
*
|
|
83
182
|
* @since 1.18.0
|
|
84
183
|
* @category computed
|
|
85
184
|
*/
|
|
@@ -88,6 +187,17 @@ export const nand = dual(2, function nand(ref, that) {
|
|
|
88
187
|
});
|
|
89
188
|
/**
|
|
90
189
|
* Apply NOR operation with a boolean to the current state of a RefBoolean.
|
|
190
|
+
* @remarks
|
|
191
|
+
* ## Why
|
|
192
|
+
*
|
|
193
|
+
* Apply NOR operation with a boolean to the current state of a RefBoolean. The operation remains
|
|
194
|
+
* attached to the RefSubject's versioned state boundary.
|
|
195
|
+
*
|
|
196
|
+
* ## Ownership and lifetime
|
|
197
|
+
*
|
|
198
|
+
* The nor view retains no independent state. An Effect read samples the source once; Fx
|
|
199
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
200
|
+
*
|
|
91
201
|
* @since 1.18.0
|
|
92
202
|
* @category computed
|
|
93
203
|
*/
|
|
@@ -96,6 +206,17 @@ export const nor = dual(2, function nor(ref, that) {
|
|
|
96
206
|
});
|
|
97
207
|
/**
|
|
98
208
|
* Apply EQV (XNOR) operation with a boolean to the current state of a RefBoolean.
|
|
209
|
+
* @remarks
|
|
210
|
+
* ## Why
|
|
211
|
+
*
|
|
212
|
+
* Apply EQV (XNOR) operation with a boolean to the current state of a RefBoolean. The operation
|
|
213
|
+
* remains attached to the RefSubject's versioned state boundary.
|
|
214
|
+
*
|
|
215
|
+
* ## Ownership and lifetime
|
|
216
|
+
*
|
|
217
|
+
* The eqv view retains no independent state. An Effect read samples the source once; Fx
|
|
218
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
219
|
+
*
|
|
99
220
|
* @since 1.18.0
|
|
100
221
|
* @category computed
|
|
101
222
|
*/
|
|
@@ -104,6 +225,17 @@ export const eqv = dual(2, function eqv(ref, that) {
|
|
|
104
225
|
});
|
|
105
226
|
/**
|
|
106
227
|
* Apply implication operation with a boolean to the current state of a RefBoolean.
|
|
228
|
+
* @remarks
|
|
229
|
+
* ## Why
|
|
230
|
+
*
|
|
231
|
+
* Apply implication operation with a boolean to the current state of a RefBoolean. The operation
|
|
232
|
+
* remains attached to the RefSubject's versioned state boundary.
|
|
233
|
+
*
|
|
234
|
+
* ## Ownership and lifetime
|
|
235
|
+
*
|
|
236
|
+
* The implies view retains no independent state. An Effect read samples the source once; Fx
|
|
237
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
238
|
+
*
|
|
107
239
|
* @since 1.18.0
|
|
108
240
|
* @category computed
|
|
109
241
|
*/
|
|
@@ -112,12 +244,34 @@ export const implies = dual(2, function implies(ref, that) {
|
|
|
112
244
|
});
|
|
113
245
|
/**
|
|
114
246
|
* Check if the current state of a RefBoolean is true.
|
|
247
|
+
* @remarks
|
|
248
|
+
* ## Why
|
|
249
|
+
*
|
|
250
|
+
* Check if the current state of a RefBoolean is true. The operation remains attached to the
|
|
251
|
+
* RefSubject's versioned state boundary.
|
|
252
|
+
*
|
|
253
|
+
* ## Ownership and lifetime
|
|
254
|
+
*
|
|
255
|
+
* The is true view retains no independent state. An Effect read samples the source once; Fx
|
|
256
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
257
|
+
*
|
|
115
258
|
* @since 1.18.0
|
|
116
259
|
* @category computed
|
|
117
260
|
*/
|
|
118
261
|
export const isTrue = (ref) => RefSubject.map(ref, (self) => self === true);
|
|
119
262
|
/**
|
|
120
263
|
* Check if the current state of a RefBoolean is false.
|
|
264
|
+
* @remarks
|
|
265
|
+
* ## Why
|
|
266
|
+
*
|
|
267
|
+
* Check if the current state of a RefBoolean is false. The operation remains attached to the
|
|
268
|
+
* RefSubject's versioned state boundary.
|
|
269
|
+
*
|
|
270
|
+
* ## Ownership and lifetime
|
|
271
|
+
*
|
|
272
|
+
* The is false view retains no independent state. An Effect read samples the source once; Fx
|
|
273
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
274
|
+
*
|
|
121
275
|
* @since 1.18.0
|
|
122
276
|
* @category computed
|
|
123
277
|
*/
|
|
@@ -10,6 +10,17 @@ import type * as Fx from "../Fx/index.js";
|
|
|
10
10
|
import * as RefSubject from "./RefSubject.js";
|
|
11
11
|
/**
|
|
12
12
|
* A RefCause is a RefSubject specialized over a Cause value.
|
|
13
|
+
* @remarks
|
|
14
|
+
* ## Why
|
|
15
|
+
*
|
|
16
|
+
* Defines cause state with the same current-read, pushed-update, and synchronized-write contract
|
|
17
|
+
* as RefSubject.
|
|
18
|
+
*
|
|
19
|
+
* ## Ownership and lifetime
|
|
20
|
+
*
|
|
21
|
+
* RefCause is a contract and performs no acquisition. Implementations retain the errors, services,
|
|
22
|
+
* interruption, and Scope requirements expressed by its members.
|
|
23
|
+
*
|
|
13
24
|
* @since 1.18.0
|
|
14
25
|
* @category models
|
|
15
26
|
*/
|
|
@@ -18,10 +29,21 @@ export interface RefCause<in out E, in out Err = never, out R = never> extends R
|
|
|
18
29
|
/**
|
|
19
30
|
* Creates a new `RefCause` from a Cause, `Effect`, or `Fx`.
|
|
20
31
|
*
|
|
32
|
+
* @remarks
|
|
33
|
+
* ## Why
|
|
34
|
+
*
|
|
35
|
+
* Creates cause state with equality suited to that Effect data type, so unchanged values do not
|
|
36
|
+
* produce redundant pushed updates.
|
|
37
|
+
*
|
|
38
|
+
* ## Ownership and lifetime
|
|
39
|
+
*
|
|
40
|
+
* The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
|
|
41
|
+
* and cleanup; source failures and services stay on reads and pushes.
|
|
42
|
+
*
|
|
21
43
|
* @example
|
|
22
44
|
* ```ts
|
|
23
45
|
* import { Effect, Cause } from "effect"
|
|
24
|
-
* import * as RefCause from "
|
|
46
|
+
* import * as RefCause from "@typed/fx/RefCause"
|
|
25
47
|
*
|
|
26
48
|
* const program = Effect.gen(function* () {
|
|
27
49
|
* const value = yield* RefCause.make(Cause.fail("error"))
|
|
@@ -36,6 +58,17 @@ export interface RefCause<in out E, in out Err = never, out R = never> extends R
|
|
|
36
58
|
export declare function make<E = never, Err = never, R = never>(initial: Cause.Cause<E> | Effect.Effect<Cause.Cause<E>, Err, R> | Fx.Fx<Cause.Cause<E>, Err, R>, eq?: Equivalence<Cause.Cause<E>>): Effect.Effect<RefCause<E, Err>, never, R | Scope.Scope>;
|
|
37
59
|
/**
|
|
38
60
|
* Set the current state of a RefCause to a Fail cause.
|
|
61
|
+
* @remarks
|
|
62
|
+
* ## Why
|
|
63
|
+
*
|
|
64
|
+
* Keeps set fail atomic with respect to competing RefSubject writes instead of splitting the read
|
|
65
|
+
* and replacement into separate effects.
|
|
66
|
+
*
|
|
67
|
+
* ## Ownership and lifetime
|
|
68
|
+
*
|
|
69
|
+
* Running set fail performs one serialized cause transition and resolves with its committed value.
|
|
70
|
+
* It acquires no resource; failures and services remain those of the source ref.
|
|
71
|
+
*
|
|
39
72
|
* @since 1.18.0
|
|
40
73
|
* @category combinators
|
|
41
74
|
*/
|
|
@@ -45,6 +78,17 @@ export declare const setFail: {
|
|
|
45
78
|
};
|
|
46
79
|
/**
|
|
47
80
|
* Set the current state of a RefCause to a Die cause.
|
|
81
|
+
* @remarks
|
|
82
|
+
* ## Why
|
|
83
|
+
*
|
|
84
|
+
* Keeps set die atomic with respect to competing RefSubject writes instead of splitting the read
|
|
85
|
+
* and replacement into separate effects.
|
|
86
|
+
*
|
|
87
|
+
* ## Ownership and lifetime
|
|
88
|
+
*
|
|
89
|
+
* Running set die performs one serialized cause transition and resolves with its committed value.
|
|
90
|
+
* It acquires no resource; failures and services remain those of the source ref.
|
|
91
|
+
*
|
|
48
92
|
* @since 1.18.0
|
|
49
93
|
* @category combinators
|
|
50
94
|
*/
|
|
@@ -54,6 +98,17 @@ export declare const setDie: {
|
|
|
54
98
|
};
|
|
55
99
|
/**
|
|
56
100
|
* Set the current state of a RefCause to an Interrupt cause.
|
|
101
|
+
* @remarks
|
|
102
|
+
* ## Why
|
|
103
|
+
*
|
|
104
|
+
* Keeps set interrupt atomic with respect to competing RefSubject writes instead of splitting the
|
|
105
|
+
* read and replacement into separate effects.
|
|
106
|
+
*
|
|
107
|
+
* ## Ownership and lifetime
|
|
108
|
+
*
|
|
109
|
+
* Running set interrupt performs one serialized cause transition and resolves with its committed
|
|
110
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
111
|
+
*
|
|
57
112
|
* @since 1.18.0
|
|
58
113
|
* @category combinators
|
|
59
114
|
*/
|
|
@@ -63,36 +118,102 @@ export declare const setInterrupt: {
|
|
|
63
118
|
};
|
|
64
119
|
/**
|
|
65
120
|
* Check if the current state of a RefCause has a Fail.
|
|
121
|
+
* @remarks
|
|
122
|
+
* ## Why
|
|
123
|
+
*
|
|
124
|
+
* Makes has fails a live projection of the cause; consumers can sample it now or observe it
|
|
125
|
+
* without copying the source state.
|
|
126
|
+
*
|
|
127
|
+
* ## Ownership and lifetime
|
|
128
|
+
*
|
|
129
|
+
* The has fails view retains no independent state. An Effect read samples the source once; Fx
|
|
130
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
131
|
+
*
|
|
66
132
|
* @since 1.18.0
|
|
67
133
|
* @category computed
|
|
68
134
|
*/
|
|
69
135
|
export declare const hasFails: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
|
|
70
136
|
/**
|
|
71
137
|
* Check if the current state of a RefCause has a Die.
|
|
138
|
+
* @remarks
|
|
139
|
+
* ## Why
|
|
140
|
+
*
|
|
141
|
+
* Makes has dies a live projection of the cause; consumers can sample it now or observe it without
|
|
142
|
+
* copying the source state.
|
|
143
|
+
*
|
|
144
|
+
* ## Ownership and lifetime
|
|
145
|
+
*
|
|
146
|
+
* The has dies view retains no independent state. An Effect read samples the source once; Fx
|
|
147
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
148
|
+
*
|
|
72
149
|
* @since 1.18.0
|
|
73
150
|
* @category computed
|
|
74
151
|
*/
|
|
75
152
|
export declare const hasDies: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
|
|
76
153
|
/**
|
|
77
154
|
* Check if the current state of a RefCause has an Interrupt.
|
|
155
|
+
* @remarks
|
|
156
|
+
* ## Why
|
|
157
|
+
*
|
|
158
|
+
* Makes has interrupts a live projection of the cause; consumers can sample it now or observe it
|
|
159
|
+
* without copying the source state.
|
|
160
|
+
*
|
|
161
|
+
* ## Ownership and lifetime
|
|
162
|
+
*
|
|
163
|
+
* The has interrupts view retains no independent state. An Effect read samples the source once; Fx
|
|
164
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
165
|
+
*
|
|
78
166
|
* @since 1.18.0
|
|
79
167
|
* @category computed
|
|
80
168
|
*/
|
|
81
169
|
export declare const hasInterrupts: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
|
|
82
170
|
/**
|
|
83
171
|
* Check if the current state of a RefCause is empty.
|
|
172
|
+
* @remarks
|
|
173
|
+
* ## Why
|
|
174
|
+
*
|
|
175
|
+
* Makes is empty a live projection of the cause; consumers can sample it now or observe it without
|
|
176
|
+
* copying the source state.
|
|
177
|
+
*
|
|
178
|
+
* ## Ownership and lifetime
|
|
179
|
+
*
|
|
180
|
+
* The is empty view retains no independent state. An Effect read samples the source once; Fx
|
|
181
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
182
|
+
*
|
|
84
183
|
* @since 1.18.0
|
|
85
184
|
* @category computed
|
|
86
185
|
*/
|
|
87
186
|
export declare const isEmpty: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<boolean, Err, R>;
|
|
88
187
|
/**
|
|
89
188
|
* Get the size (number of failures) of the current state of a RefCause.
|
|
189
|
+
* @remarks
|
|
190
|
+
* ## Why
|
|
191
|
+
*
|
|
192
|
+
* Makes size a live projection of the cause; consumers can sample it now or observe it without
|
|
193
|
+
* copying the source state.
|
|
194
|
+
*
|
|
195
|
+
* ## Ownership and lifetime
|
|
196
|
+
*
|
|
197
|
+
* The size view retains no independent state. An Effect read samples the source once; Fx
|
|
198
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
199
|
+
*
|
|
90
200
|
* @since 1.18.0
|
|
91
201
|
* @category computed
|
|
92
202
|
*/
|
|
93
203
|
export declare const size: <E, Err, R>(ref: RefCause<E, Err, R>) => RefSubject.Computed<number, Err, R>;
|
|
94
204
|
/**
|
|
95
205
|
* Get the reasons array of the current state of a RefCause.
|
|
206
|
+
* @remarks
|
|
207
|
+
* ## Why
|
|
208
|
+
*
|
|
209
|
+
* Get the reasons array of the current state of a RefCause. The operation remains attached to the
|
|
210
|
+
* RefSubject's versioned state boundary.
|
|
211
|
+
*
|
|
212
|
+
* ## Ownership and lifetime
|
|
213
|
+
*
|
|
214
|
+
* The reasons view retains no independent state. An Effect read samples the source once; Fx
|
|
215
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
216
|
+
*
|
|
96
217
|
* @since 1.18.0
|
|
97
218
|
* @category computed
|
|
98
219
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefCause.d.ts","sourceRoot":"","sources":["../../src/RefSubject/RefCause.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAG7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C
|
|
1
|
+
{"version":3,"file":"RefCause.d.ts","sourceRoot":"","sources":["../../src/RefSubject/RefCause.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,10 +10,21 @@ import * as RefSubject from "./RefSubject.js";
|
|
|
10
10
|
/**
|
|
11
11
|
* Creates a new `RefCause` from a Cause, `Effect`, or `Fx`.
|
|
12
12
|
*
|
|
13
|
+
* @remarks
|
|
14
|
+
* ## Why
|
|
15
|
+
*
|
|
16
|
+
* Creates cause state with equality suited to that Effect data type, so unchanged values do not
|
|
17
|
+
* produce redundant pushed updates.
|
|
18
|
+
*
|
|
19
|
+
* ## Ownership and lifetime
|
|
20
|
+
*
|
|
21
|
+
* The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
|
|
22
|
+
* and cleanup; source failures and services stay on reads and pushes.
|
|
23
|
+
*
|
|
13
24
|
* @example
|
|
14
25
|
* ```ts
|
|
15
26
|
* import { Effect, Cause } from "effect"
|
|
16
|
-
* import * as RefCause from "
|
|
27
|
+
* import * as RefCause from "@typed/fx/RefCause"
|
|
17
28
|
*
|
|
18
29
|
* const program = Effect.gen(function* () {
|
|
19
30
|
* const value = yield* RefCause.make(Cause.fail("error"))
|
|
@@ -30,6 +41,17 @@ export function make(initial, eq = equals) {
|
|
|
30
41
|
}
|
|
31
42
|
/**
|
|
32
43
|
* Set the current state of a RefCause to a Fail cause.
|
|
44
|
+
* @remarks
|
|
45
|
+
* ## Why
|
|
46
|
+
*
|
|
47
|
+
* Keeps set fail atomic with respect to competing RefSubject writes instead of splitting the read
|
|
48
|
+
* and replacement into separate effects.
|
|
49
|
+
*
|
|
50
|
+
* ## Ownership and lifetime
|
|
51
|
+
*
|
|
52
|
+
* Running set fail performs one serialized cause transition and resolves with its committed value.
|
|
53
|
+
* It acquires no resource; failures and services remain those of the source ref.
|
|
54
|
+
*
|
|
33
55
|
* @since 1.18.0
|
|
34
56
|
* @category combinators
|
|
35
57
|
*/
|
|
@@ -38,6 +60,17 @@ export const setFail = dual(2, function setFail(ref, error) {
|
|
|
38
60
|
});
|
|
39
61
|
/**
|
|
40
62
|
* Set the current state of a RefCause to a Die cause.
|
|
63
|
+
* @remarks
|
|
64
|
+
* ## Why
|
|
65
|
+
*
|
|
66
|
+
* Keeps set die atomic with respect to competing RefSubject writes instead of splitting the read
|
|
67
|
+
* and replacement into separate effects.
|
|
68
|
+
*
|
|
69
|
+
* ## Ownership and lifetime
|
|
70
|
+
*
|
|
71
|
+
* Running set die performs one serialized cause transition and resolves with its committed value.
|
|
72
|
+
* It acquires no resource; failures and services remain those of the source ref.
|
|
73
|
+
*
|
|
41
74
|
* @since 1.18.0
|
|
42
75
|
* @category combinators
|
|
43
76
|
*/
|
|
@@ -46,6 +79,17 @@ export const setDie = dual(2, function setDie(ref, defect) {
|
|
|
46
79
|
});
|
|
47
80
|
/**
|
|
48
81
|
* Set the current state of a RefCause to an Interrupt cause.
|
|
82
|
+
* @remarks
|
|
83
|
+
* ## Why
|
|
84
|
+
*
|
|
85
|
+
* Keeps set interrupt atomic with respect to competing RefSubject writes instead of splitting the
|
|
86
|
+
* read and replacement into separate effects.
|
|
87
|
+
*
|
|
88
|
+
* ## Ownership and lifetime
|
|
89
|
+
*
|
|
90
|
+
* Running set interrupt performs one serialized cause transition and resolves with its committed
|
|
91
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
92
|
+
*
|
|
49
93
|
* @since 1.18.0
|
|
50
94
|
* @category combinators
|
|
51
95
|
*/
|
|
@@ -57,36 +101,102 @@ export const setInterrupt = dual(2, function setInterrupt(ref, fiberId) {
|
|
|
57
101
|
// ========================================
|
|
58
102
|
/**
|
|
59
103
|
* Check if the current state of a RefCause has a Fail.
|
|
104
|
+
* @remarks
|
|
105
|
+
* ## Why
|
|
106
|
+
*
|
|
107
|
+
* Makes has fails a live projection of the cause; consumers can sample it now or observe it
|
|
108
|
+
* without copying the source state.
|
|
109
|
+
*
|
|
110
|
+
* ## Ownership and lifetime
|
|
111
|
+
*
|
|
112
|
+
* The has fails view retains no independent state. An Effect read samples the source once; Fx
|
|
113
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
114
|
+
*
|
|
60
115
|
* @since 1.18.0
|
|
61
116
|
* @category computed
|
|
62
117
|
*/
|
|
63
118
|
export const hasFails = (ref) => RefSubject.map(ref, Cause.hasFails);
|
|
64
119
|
/**
|
|
65
120
|
* Check if the current state of a RefCause has a Die.
|
|
121
|
+
* @remarks
|
|
122
|
+
* ## Why
|
|
123
|
+
*
|
|
124
|
+
* Makes has dies a live projection of the cause; consumers can sample it now or observe it without
|
|
125
|
+
* copying the source state.
|
|
126
|
+
*
|
|
127
|
+
* ## Ownership and lifetime
|
|
128
|
+
*
|
|
129
|
+
* The has dies view retains no independent state. An Effect read samples the source once; Fx
|
|
130
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
131
|
+
*
|
|
66
132
|
* @since 1.18.0
|
|
67
133
|
* @category computed
|
|
68
134
|
*/
|
|
69
135
|
export const hasDies = (ref) => RefSubject.map(ref, Cause.hasDies);
|
|
70
136
|
/**
|
|
71
137
|
* Check if the current state of a RefCause has an Interrupt.
|
|
138
|
+
* @remarks
|
|
139
|
+
* ## Why
|
|
140
|
+
*
|
|
141
|
+
* Makes has interrupts a live projection of the cause; consumers can sample it now or observe it
|
|
142
|
+
* without copying the source state.
|
|
143
|
+
*
|
|
144
|
+
* ## Ownership and lifetime
|
|
145
|
+
*
|
|
146
|
+
* The has interrupts view retains no independent state. An Effect read samples the source once; Fx
|
|
147
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
148
|
+
*
|
|
72
149
|
* @since 1.18.0
|
|
73
150
|
* @category computed
|
|
74
151
|
*/
|
|
75
152
|
export const hasInterrupts = (ref) => RefSubject.map(ref, Cause.hasInterrupts);
|
|
76
153
|
/**
|
|
77
154
|
* Check if the current state of a RefCause is empty.
|
|
155
|
+
* @remarks
|
|
156
|
+
* ## Why
|
|
157
|
+
*
|
|
158
|
+
* Makes is empty a live projection of the cause; consumers can sample it now or observe it without
|
|
159
|
+
* copying the source state.
|
|
160
|
+
*
|
|
161
|
+
* ## Ownership and lifetime
|
|
162
|
+
*
|
|
163
|
+
* The is empty view retains no independent state. An Effect read samples the source once; Fx
|
|
164
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
165
|
+
*
|
|
78
166
|
* @since 1.18.0
|
|
79
167
|
* @category computed
|
|
80
168
|
*/
|
|
81
169
|
export const isEmpty = (ref) => RefSubject.map(ref, (self) => self.reasons.length === 0);
|
|
82
170
|
/**
|
|
83
171
|
* Get the size (number of failures) of the current state of a RefCause.
|
|
172
|
+
* @remarks
|
|
173
|
+
* ## Why
|
|
174
|
+
*
|
|
175
|
+
* Makes size a live projection of the cause; consumers can sample it now or observe it without
|
|
176
|
+
* copying the source state.
|
|
177
|
+
*
|
|
178
|
+
* ## Ownership and lifetime
|
|
179
|
+
*
|
|
180
|
+
* The size view retains no independent state. An Effect read samples the source once; Fx
|
|
181
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
182
|
+
*
|
|
84
183
|
* @since 1.18.0
|
|
85
184
|
* @category computed
|
|
86
185
|
*/
|
|
87
186
|
export const size = (ref) => RefSubject.map(ref, (self) => self.reasons.length);
|
|
88
187
|
/**
|
|
89
188
|
* Get the reasons array of the current state of a RefCause.
|
|
189
|
+
* @remarks
|
|
190
|
+
* ## Why
|
|
191
|
+
*
|
|
192
|
+
* Get the reasons array of the current state of a RefCause. The operation remains attached to the
|
|
193
|
+
* RefSubject's versioned state boundary.
|
|
194
|
+
*
|
|
195
|
+
* ## Ownership and lifetime
|
|
196
|
+
*
|
|
197
|
+
* The reasons view retains no independent state. An Effect read samples the source once; Fx
|
|
198
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
199
|
+
*
|
|
90
200
|
* @since 1.18.0
|
|
91
201
|
* @category computed
|
|
92
202
|
*/
|