(self: FiberHandle<A, E>)
| 743 | * @since 3.13.0 |
| 744 | */ |
| 745 | export const runtimePromise = <A, E>(self: FiberHandle<A, E>): <R = never>() => Effect.Effect< |
| 746 | <XE extends E, XA extends A>( |
| 747 | effect: Effect.Effect<XA, XE, R>, |
| 748 | options?: |
| 749 | | { |
| 750 | readonly signal?: AbortSignal | undefined |
| 751 | readonly scheduler?: Scheduler | undefined |
| 752 | readonly onlyIfMissing?: boolean | undefined |
| 753 | readonly propagateInterruption?: boolean | undefined |
| 754 | } |
| 755 | | undefined |
| 756 | ) => Promise<XA>, |
| 757 | never, |
| 758 | R |
| 759 | > => |
| 760 | <R>() => |
| 761 | Effect.map( |
| 762 | runtime(self)<R>(), |
| 763 | (runFork) => |
| 764 | <XE extends E, XA extends A>( |
| 765 | effect: Effect.Effect<XA, XE, R>, |
| 766 | options?: |
| 767 | | { |
| 768 | readonly signal?: AbortSignal | undefined |
| 769 | readonly scheduler?: Scheduler | undefined |
| 770 | readonly onlyIfMissing?: boolean | undefined |
| 771 | readonly propagateInterruption?: boolean | undefined |
| 772 | } |
| 773 | | undefined |
| 774 | ): Promise<XA> => |
| 775 | new Promise((resolve, reject) => |
| 776 | runFork(effect, options).addObserver((exit) => { |
| 777 | if (Exit.isSuccess(exit)) { |
| 778 | resolve(exit.value) |
| 779 | } else { |
| 780 | reject(Cause.squash(exit.cause)) |
| 781 | } |
| 782 | }) |
| 783 | ) |
| 784 | ) |
| 785 | |
| 786 | /** |
| 787 | * Waits for the `FiberHandle` to fail or close. |
no test coverage detected