hxt-7.5: A collection of tools for processing XML with Haskell.ContentsIndex
Control.Arrow.ArrowIO
Portabilityportable
Stabilityexperimental
MaintainerUwe Schmidt (uwe\@fh-wedel.de)
Description

Version : $Id: ArrowIO.hs,v 1.6 20050902 17:09:39 hxml Exp $

Lifting of IO actions to arrows

Synopsis
class Arrow a => ArrowIO a where
arrIO :: (b -> IO c) -> a b c
arrIO0 :: IO c -> a b c
arrIO2 :: (b1 -> b2 -> IO c) -> a (b1, b2) c
arrIO3 :: (b1 -> b2 -> b3 -> IO c) -> a (b1, (b2, b3)) c
arrIO4 :: (b1 -> b2 -> b3 -> b4 -> IO c) -> a (b1, (b2, (b3, b4))) c
class (Arrow a, ArrowIO a) => ArrowIOIf a where
isIOA :: (b -> IO Bool) -> a b b
Documentation
class Arrow a => ArrowIO a where
the interface for converting an IO action into an arrow
Methods
arrIO :: (b -> IO c) -> a b c
construct an arrow from an IO action
arrIO0 :: IO c -> a b c
construct an arrow from an IO action without any parameter
arrIO2 :: (b1 -> b2 -> IO c) -> a (b1, b2) c
construction of a 2 argument arrow from a binary IO action | | example: a1 &&& a2 >>> arr2 f
arrIO3 :: (b1 -> b2 -> b3 -> IO c) -> a (b1, (b2, b3)) c
construction of a 3 argument arrow from a 3-ary IO action | | example: a1 &&& a2 &&& a3 >>> arr3 f
arrIO4 :: (b1 -> b2 -> b3 -> b4 -> IO c) -> a (b1, (b2, (b3, b4))) c
construction of a 4 argument arrow from a 4-ary IO action | | example: a1 &&& a2 &&& a3 &&& a4 >>> arr4 f
show/hide Instances
class (Arrow a, ArrowIO a) => ArrowIOIf a where
the interface for converting an IO predicate into a list arrow
Methods
isIOA :: (b -> IO Bool) -> a b b

builds an arrow from an IO predicate

if the predicate holds, the single list containing the input is returned, else the empty list, similar to Control.Arrow.ArrowList.isA

show/hide Instances
Produced by Haddock version 2.1.0