| 1 | effect/StreamHaltStrategy#HaltStrategy: |
| 2 | replacement: "Stream.HaltStrategy" |
| 3 | note: "The StreamHaltStrategy module is gone; v4 HaltStrategy is the string-literal union \"left\" | \"right\" | \"both\" | \"either\" (defined in Channel, re-exported as Stream.HaltStrategy) instead of tagged objects." |
| 4 | effect/StreamHaltStrategy#HaltStrategyInput: |
| 5 | replacement: "Stream.HaltStrategy" |
| 6 | note: "The Input widening (tagged object OR string) is obsolete; v4 only ever uses the string literals, so haltStrategy options take Stream.HaltStrategy directly." |
| 7 | effect/StreamHaltStrategy#Left: |
| 8 | replacement: "\"left\"" |
| 9 | note: "The tagged constructor is replaced by the plain string literal \"left\" passed directly to haltStrategy options." |
| 10 | effect/StreamHaltStrategy#Right: |
| 11 | replacement: "\"right\"" |
| 12 | note: "The tagged constructor is replaced by the plain string literal \"right\" passed directly to haltStrategy options." |
| 13 | effect/StreamHaltStrategy#Both: |
| 14 | replacement: "\"both\"" |
| 15 | note: "The tagged constructor is replaced by the plain string literal \"both\" passed directly to haltStrategy options." |
| 16 | effect/StreamHaltStrategy#Either: |
| 17 | replacement: "\"either\"" |
| 18 | note: "The tagged constructor is replaced by the plain string literal \"either\" passed directly to haltStrategy options." |
| 19 | effect/StreamHaltStrategy#fromInput: |
| 20 | replacement: "none" |
| 21 | note: "Remove the call; there is no conversion step in v4 because strategies already are the string literals, so pass the value through unchanged." |
| 22 | effect/StreamHaltStrategy#isLeft: |
| 23 | replacement: "strategy === \"left\"" |
| 24 | note: "Refinements on the tagged union become plain string comparison against the literal." |
| 25 | effect/StreamHaltStrategy#isRight: |
| 26 | replacement: "strategy === \"right\"" |
| 27 | note: "Refinements on the tagged union become plain string comparison against the literal." |
| 28 | effect/StreamHaltStrategy#isBoth: |
| 29 | replacement: "strategy === \"both\"" |
| 30 | note: "Refinements on the tagged union become plain string comparison against the literal." |
| 31 | effect/StreamHaltStrategy#isEither: |
| 32 | replacement: "strategy === \"either\"" |
| 33 | note: "Refinements on the tagged union become plain string comparison against the literal." |
| 34 | effect/StreamHaltStrategy#match: |
| 35 | replacement: "switch (strategy)" |
| 36 | note: "Fold over the strategy with an ordinary switch (or ternary chain) on the string literal; TypeScript exhaustiveness-checks the four cases." |
| 37 | example: | |
| 38 | // v3: HaltStrategy.match(s, { onLeft, onRight, onBoth, onEither }) |
| 39 | switch (strategy) { |
| 40 | case "left": return onLeft() |
| 41 | case "right": return onRight() |
| 42 | case "both": return onBoth() |
| 43 | case "either": return onEither() |
| 44 | } |