Add `blockUntilX` functions
Opened this issue · 0 comments
JordanMartinez commented
A pattern I'm noticing in downstream Node libraries is something like this:
blockUntil1
:: forall eventEmitter
. eventEmitter
-> EventHandle eventEmitter (a -> Effect Unit) (EffectFn1 a Unit)
-> Aff Arg
blockUntil1 ee eventH = makeAff \done -> do
removeListener <- ee # once eventH \arg ->
done $ Right arg
pure $ effectCanceler removeListener