bluefin-0.6.0.0: The Bluefin effect system
Safe HaskellNone
LanguageHaskell2010

Bluefin.Pipes.Prelude

Description

Reimplementation of the pipes (Pipes) ecosystem in Bluefin.

You should not use this module. It will be deprecated and removed in future versions.

This module is just an example of what you can do with Bluefin and as such it should be obtained from bluefin-examples if you want it. Instead of using it directly you are recommended to use

See also Bluefin.Pipes.

>>> runEff $ \io -> runEffect $ do
      stdinLn io >-> takeWhile' (/= "quit") >-> stdoutLn io
Test
Test
ABC
ABC
quit
"quit"
Synopsis

Producers

stdinLn Source #

Arguments

:: forall (e1 :: Effects) (es :: Effects) (e2 :: Effects) r. (e1 <: es, e2 <: es) 
=> IOE e1 
-> Producer String e2 
-> Eff es r

͘

repeatM Source #

Arguments

:: forall (e :: Effects) (es :: Effects) a x' x r. e <: es 
=> Eff es a 
-> Proxy x' x () a e 
-> Eff es r

͘

replicateM Source #

Arguments

:: forall (e :: Effects) (es :: Effects) a x' x. e <: es 
=> Int 
-> Eff es a 
-> Proxy x' x () a e 
-> Eff es ()

͘

unfoldr Source #

Arguments

:: forall (e :: Effects) (es :: Effects) s r a x1 x. e <: es 
=> (s -> Eff es (Either r (a, s))) 
-> s 
-> Proxy x1 x () a e 
-> Eff es r

͘

Consumers

stdoutLn Source #

Arguments

:: forall (e1 :: Effects) (es :: Effects) (e2 :: Effects) r. (e1 <: es, e2 <: es) 
=> IOE e1 
-> Consumer String e2 
-> Eff es r

͘

mapM_ Source #

Arguments

:: forall (e :: Effects) (es :: Effects) a b b' r. e <: es 
=> (a -> Eff es ()) 
-> Proxy () a b b' e 
-> Eff es r

͘

print Source #

Arguments

:: forall (e2 :: Effects) (es :: Effects) (e1 :: Effects) a r. (e2 <: es, e1 <: es, Show a) 
=> IOE e1 
-> Consumer a e2 
-> Eff es r

͘

drain Source #

Arguments

:: forall (e :: Effects) (es :: Effects) b c' c r. e <: es 
=> Proxy () b c' c e 
-> Eff es r

͘

Pipes

map Source #

Arguments

:: forall (e :: Effects) (es :: Effects) a b r. e <: es 
=> (a -> b) 
-> Pipe a b e 
-> Eff es r

͘

mapM Source #

Arguments

:: forall (e :: Effects) (es :: Effects) a b r. e <: es 
=> (a -> Eff es b) 
-> Pipe a b e 
-> Eff es r

͘

takeWhile' Source #

Arguments

:: forall (e :: Effects) (es :: Effects) r. e <: es 
=> (r -> Bool) 
-> Pipe r r e 
-> Eff es r

͘