(
f: (
restore: <A, E, R>(effect: Micro<A, E, R>) => Micro<A, E, R>
) => Micro<A, E, R>
)
| 3696 | * @category interruption |
| 3697 | */ |
| 3698 | export const uninterruptibleMask = <A, E, R>( |
| 3699 | f: ( |
| 3700 | restore: <A, E, R>(effect: Micro<A, E, R>) => Micro<A, E, R> |
| 3701 | ) => Micro<A, E, R> |
| 3702 | ): Micro<A, E, R> => |
| 3703 | withMicroFiber((fiber) => { |
| 3704 | if (!fiber.interruptible) return f(identity) |
| 3705 | fiber.interruptible = false |
| 3706 | fiber._stack.push(setInterruptible(true)) |
| 3707 | return f(interruptible) |
| 3708 | }) |
| 3709 | |
| 3710 | // ======================================================================== |
| 3711 | // collecting & elements |
no test coverage detected