| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
Control.Monad.Scoped.Handle
Synopsis
- type ScopedHandle s = ScopedResource s Handle
 - file :: forall (m :: Type -> Type) s (ss :: [Type]). MonadUnliftIO m => FilePath -> IOMode -> Scoped (s ': ss) m (ScopedHandle s)
 - data IOMode
 - hPutStrLn :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Text -> Scoped ss m ()
 - hPutStr :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Text -> Scoped ss m ()
 - hGetLine :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Scoped ss m Text
 - hGetContents :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Scoped ss m Text
 
Scoped Handle
type ScopedHandle s = ScopedResource s Handle Source #
Allocating a new ScopedHandle in a Scoped block
file :: forall (m :: Type -> Type) s (ss :: [Type]). MonadUnliftIO m => FilePath -> IOMode -> Scoped (s ': ss) m (ScopedHandle s) Source #
Given a FilePath, safely allocates and deallocates a ScopedHandle in a Scoped block
Since: 0.1.0.0
Working with ScopedHandle
See openFile
Constructors
| ReadMode | |
| WriteMode | |
| AppendMode | |
| ReadWriteMode | 
hPutStrLn :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Text -> Scoped ss m () Source #
Like hPutStrLn but for ScopedHandle
Since: 0.1.0.0
hPutStr :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Text -> Scoped ss m () Source #
Like hPutStr but for ScopedHandle
Since: 0.1.0.0
hGetLine :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Scoped ss m Text Source #
Like hGetLine but for ScopedHandle
Since: 0.1.0.0
hGetContents :: forall (m :: Type -> Type) s (ss :: [Type]). (MonadIO m, s :< ss) => ScopedHandle s -> Scoped ss m Text Source #
Like hGetContents but for ScopedHandle
Since: 0.1.0.0