bluefin-0.0.15.0: The Bluefin effect system
Safe HaskellSafe-Inferred
LanguageHaskell2010

Bluefin.System.IO

Description

A safer interface to System.IO.Handle

Synopsis

Handle

data Handle (e :: Effects) #

Instances

Instances details
Handle Handle 
Instance details

Defined in Bluefin.Internal.System.IO

Methods

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

Handlers

withFile #

Arguments

:: forall (e1 :: Effects) (es :: Effects) r. e1 :> es 
=> IOE e1 
-> FilePath 
-> IOMode 
-> (forall (e :: Effects). Handle e -> Eff (e :& es) r) 
-> Eff es r

͘

Effectful operations

hPutChar #

Arguments

:: forall (e :: Effects) (es :: Effects). e :> es 
=> Handle e 
-> Char 
-> Eff es ()

͘

hPutStr #

Arguments

:: forall (e :: Effects) (es :: Effects). e :> es 
=> Handle e 
-> String 
-> Eff es ()

͘

hPutStrLn #

Arguments

:: forall (e :: Effects) (es :: Effects). e :> es 
=> Handle e 
-> String 
-> Eff es ()

͘

hGetLine #

Arguments

:: forall (e :: Effects) (es :: Effects). e :> es 
=> Handle e 
-> Eff es String

͘

hIsEOF #

Arguments

:: forall (e :: Effects) (es :: Effects). e :> es 
=> Handle e 
-> Eff es Bool

͘

hFlush #

Arguments

:: forall (e :: Effects) (es :: Effects). e :> es 
=> Handle e 
-> Eff es ()

͘

Unsafe

unsafeWithHandle :: forall (e1 :: Effects) (es :: Effects) r. e1 :> es => Handle e1 -> (Handle -> IO r) -> Eff es r #

If there's a System.IO.Handle-using function you need that isn't included here then you can open an issue to request it be added. In the meantime you can define it yourself with unsafeWithHandle.