| hxt-8.5.4: A collection of tools for processing XML with Haskell. | Source code | Contents | Index
Control.Arrow.IOStateListArrow |
Portability | portable
Stability | experimental
Maintainer | Uwe Schmidt (uwe\@fh-wedel.de)
Description
Implementation of arrows with IO and a state
Synopsis
newtype IOSLA s a b = IOSLA {
runIOSLA :: s -> a -> IO (s, [b])
}
liftSt :: IOSLA s1 b c -> IOSLA (s1, s2) b c
runSt :: s2 -> IOSLA (s1, s2) b c -> IOSLA s1 b c
Documentation
newtype IOSLA s a b | Source
list arrow combined with a state and the IO monad
Constructors
IOSLA |
runIOSLA :: s -> a -> IO (s, [b]) |
Instances
ArrowState s (IOSLA s)
Arrow (IOSLA s)
ArrowZero (IOSLA s)
ArrowPlus (IOSLA s)
ArrowChoice (IOSLA s)
ArrowApply (IOSLA s)
Category (IOSLA s)
NFData s => ArrowNF (IOSLA s)
ArrowList (IOSLA s)
ArrowIf (IOSLA s)
ArrowTree (IOSLA s)
ArrowIOIf (IOSLA s)
ArrowIO (IOSLA s)
ArrowDTD (IOSLA s)
ArrowXml (IOSLA s)
liftSt :: IOSLA s1 b c -> IOSLA (s1, s2) b c | Source
lift the state of an IOSLA arrow to a state with an additional component. This is uesful, when running predefined IO arrows, e.g. for document input, in a context with a more complex state component.
runSt :: s2 -> IOSLA (s1, s2) b c -> IOSLA s1 b c | Source
run an arrow with augmented state in the context of a simple state arrow. An initial value for the new state component is needed. This is useful, when running an arrow with an extra environment component, e.g. for namespace handling in XML.
Produced by Haddock version 2.4.2