( onEmpty: (notifyConsumer: Deferred.Deferred<void>) => Z, onFull: (value: A, notifyProducer: Deferred.Deferred<void>) => Z )
| 74 | |
| 75 | /** @internal */ |
| 76 | const handoffStateMatch = <A, Z>( |
| 77 | onEmpty: (notifyConsumer: Deferred.Deferred<void>) => Z, |
| 78 | onFull: (value: A, notifyProducer: Deferred.Deferred<void>) => Z |
| 79 | ) => { |
| 80 | return (self: Handoff.State<A>): Z => { |
| 81 | switch (self._tag) { |
| 82 | case OP_HANDOFF_STATE_EMPTY: { |
| 83 | return onEmpty(self.notifyConsumer) |
| 84 | } |
| 85 | case OP_HANDOFF_STATE_FULL: { |
| 86 | return onFull(self.value, self.notifyProducer) |
| 87 | } |
| 88 | } |
| 89 | } |
| 90 | } |
| 91 | |
| 92 | const handoffVariance = { |
| 93 | /* c8 ignore next */ |
no outgoing calls
no test coverage detected
searching dependent graphs…