| 842 | const ioSucceed = () => Effect.succeed("OrElse") |
| 843 | const ioFail = () => Effect.fail("OrElseFailed") |
| 844 | const failOn0 = (ref: Ref.Ref<number>): Effect.Effect<number, string> => { |
| 845 | return Effect.gen(function*() { |
| 846 | const i = yield* Ref.updateAndGet(ref, (n) => n + 1) |
| 847 | return yield* i <= 1 ? Effect.fail(`Error: ${i}`) : Effect.succeed(i) |
| 848 | }) |
| 849 | } |
| 850 | const alwaysFail = (ref: Ref.Ref<number>): Effect.Effect<number, string> => { |
| 851 | return Ref.updateAndGet(ref, (n) => n + 1).pipe(Effect.flatMap((n) => Effect.fail(`Error: ${n}`))) |
| 852 | } |