0 | module IO.Async.Signal
3 | import IO.Async.Loop.SignalH
8 | parameters {auto has : Has Errno es}
9 | {auto sig : SignalH e}
12 | awaitSignals : List Signal -> Async e es Siginfo
15 | primAsync $
\cb => primOnSignals ev s $
\case
16 | Right si => cb (Right si)
17 | Left x => cb (Left $
inject x)
20 | onSignals : List Signal -> Async e es a -> Async e es a
21 | onSignals s act = ignore (awaitSignals s) >> act
24 | onSignal : Signal -> Async e es a -> Async e es a
25 | onSignal = onSignals . pure