( self: Dequeue<A, E>, min: number, max: number )
| 1823 | internalEffect.matchCauseEffect(restore(effect), { |
| 1824 | onFailure: (cause) => failCause(self, cause), |
| 1825 | onSuccess: (_) => end(self) |
| 1826 | }) |
| 1827 | ) |
| 1828 | ) |
| 1829 | |
| 1830 | // ----------------------------------------------------------------------------- |
| 1831 | // internals |
| 1832 | // ----------------------------------------------------------------------------- |
| 1833 | // |
| 1834 | |
| 1835 | const exitFalse = core.exitSucceed(false) |
| 1836 | const exitTrue = core.exitSucceed(true) |
| 1837 | const exitFailDone = core.exitFail(core.Done()) as Failure<never, Done> |
| 1838 | const exitInterrupt = internalEffect.exitInterrupt() as Failure<never, never> |
| 1839 | |
| 1840 | const releaseTakers = <A, E>(self: Enqueue<A, E>) => { |
| 1841 | self.scheduleRunning = false |
| 1842 | if (self.state._tag === "Done" || self.state.takers.size === 0) { |
| 1843 | return |
| 1844 | } |
| 1845 | for (const taker of self.state.takers) { |
| 1846 | self.state.takers.delete(taker) |
| 1847 | taker(internalEffect.exitVoid) |
| 1848 | if (self.messages.length === 0) { |
| 1849 | break |
| 1850 | } |
| 1851 | } |
no test coverage detected
searching dependent graphs…