HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Modulehxt-9.3.1.22Haskell2010

Control.Arrow.ArrowIO

Lifting of IO actions to arrows

  • 2 classes
  • Packagehxt-9.3.1.22
  • Exports2
  • LanguageHaskell2010
  • LicenceMIT
  • SourceArrowIO.hs
classclass Arrow a => ArrowIO (a :: Type -> Type -> Type) 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

Instances2ArrowIO
  • ArrowIO IOLADefined in hxt-9.3.1.22 · Control.Arrow.IOListArrow
  • ArrowIO (IOSLA s)Defined in hxt-9.3.1.22 · Control.Arrow.IOStateListArrow
classclass (Arrow a, ArrowIO a) => ArrowIOIf (a :: Type -> Type -> Type) 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 isA

Instances2ArrowIOIf
  • ArrowIOIf IOLADefined in hxt-9.3.1.22 · Control.Arrow.IOListArrow
  • ArrowIOIf (IOSLA s)Defined in hxt-9.3.1.22 · Control.Arrow.IOStateListArrow