bluefin-internal-0.0.8.0: The Bluefin effect system, internals
Safe HaskellSafe-Inferred
LanguageHaskell2010

Bluefin.Internal.Examples

Documentation

awaitList :: e :> es => [a] -> IOE e -> (forall e1. Consume a e1 -> Eff (e1 :& es) ()) -> Eff es () Source #

takeRec :: e3 :> es => Int -> (forall e. Consume a e -> Eff (e :& es) ()) -> Consume a e3 -> Eff es () Source #

mapRec :: e :> es => (a -> b) -> (forall e1. Consume b e1 -> Eff (e1 :& es) ()) -> Consume a e -> Eff es () Source #

traverseRec :: e :> es => (a -> Eff es b) -> (forall e1. Consume b e1 -> Eff (e1 :& es) ()) -> Consume a e -> Eff es () Source #

awaitUsage :: (e1 :> es, e2 :> es) => IOE e1 -> (forall e. Consume () e -> Eff (e :& es) ()) -> Consume Int e2 -> Eff es () Source #

myInc :: e :> es => MyHandle e -> Eff es () Source #

myBail :: e :> es => MyHandle e -> Eff es r Source #

runMyHandle :: (forall e. MyHandle e -> Eff (e :& es) a) -> Eff es (Either String (a, Int)) Source #

while :: Eff es Bool -> Eff es a -> Eff es () Source #

incrementReadLine :: (e1 :> es, e2 :> es, e3 :> es) => State Int e1 -> Exception String e2 -> IOE e3 -> Eff es () Source #

newtype Counter1 e Source #

Constructors

MkCounter1 (State Int e) 

incCounter1 :: e :> es => Counter1 e -> Eff es () Source #

runCounter1 :: (forall e. Counter1 e -> Eff (e :& es) r) -> Eff es Int Source #

data Counter2 e1 e2 Source #

Constructors

MkCounter2 (State Int e1) (Exception () e2) 

incCounter2 :: (e1 :> es, e2 :> es) => Counter2 e1 e2 -> Eff es () Source #

runCounter2 :: (forall e1 e2. Counter2 e1 e2 -> Eff (e2 :& (e1 :& es)) r) -> Eff es Int Source #

data Counter3 e Source #

Constructors

MkCounter3 (State Int e) (Exception () e) 

incCounter3 :: e :> es => Counter3 e -> Eff es () Source #

runCounter3 :: (forall e. Counter3 e -> Eff (e :& es) r) -> Eff es Int Source #

data Counter4 e Source #

Constructors

MkCounter4 (State Int e) (Exception () e) (Stream String e) 

incCounter4 :: e :> es => Counter4 e -> Eff es () Source #

getCounter4 :: e :> es => Counter4 e -> String -> Eff es Int Source #

runCounter4 :: e1 :> es => Stream String e1 -> (forall e. Counter4 e -> Eff (e :& es) r) -> Eff es Int Source #

data Counter5 e Source #

Constructors

MkCounter5 

Fields

incCounter5 :: e :> es => Counter5 e -> Eff es () Source #

getCounter5 :: e :> es => Counter5 e -> String -> Eff es Int Source #

runCounter5 :: e1 :> es => Stream String e1 -> (forall e. Counter5 e -> Eff (e :& es) r) -> Eff es Int Source #

incCounter6 :: e :> es => Counter6 e -> Eff es () Source #

getCounter6 :: e :> es => Counter6 e -> String -> Eff es Int Source #

runCounter6 :: e1 :> es => Stream String e1 -> (forall e. Counter6 e -> Eff (e :& es) r) -> Eff es Int Source #

data FileSystem es Source #

Constructors

MkFileSystem 

Fields

writeFile :: e :> es => FileSystem e -> FilePath -> String -> Eff es () Source #

runFileSystemPure :: e1 :> es => Exception String e1 -> [(FilePath, String)] -> (forall e2. FileSystem e2 -> Eff (e2 :& es) r) -> Eff es r Source #

runFileSystemIO :: forall e1 e2 es r. (e1 :> es, e2 :> es) => Exception String e1 -> IOE e2 -> (forall e. FileSystem e -> Eff (e :& es) r) -> Eff es r Source #

action :: e :> es => FileSystem e -> Eff es String Source #

data Application e Source #

Constructors

MkApplication 

Instances

Instances details
Handle Application Source # 
Instance details

Defined in Bluefin.Internal.Examples

Methods

mapHandle :: forall (e :: Effects) (es :: Effects). e :> es => Application e -> Application es Source #

polymorphicBracket :: st :> es => State (Integer, Bool) st -> Eff es () -> Eff es () Source #