io-choice-0.0.7: Choice for IO and lifted IO

Safe Haskell | Safe
Language | Haskell98

Control.Exception.IOChoice

Description

This package provides the choice operator (`||>`) for IO monad.

Synopsis

- (||>) :: IO a -> IO a -> IO a
- goNext :: IO a
- runAnyOne :: [IO a] -> IO a

# Documentation

(||>) :: IO a -> IO a -> IO a infixr 3 Source #

If `IOException` occurs or `goNext` is used in the left IO, then the right IO is performed. Note that `fail` throws `IOException`.

goNext :: IO a Source #

Go to the next `IO` monad by throwing `IOException`.

runAnyOne :: [IO a] -> IO a Source #

Run any one `IO` monad.