Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Since: 2.2.0
Synopsis
- data IOData
- data IODataMode mode where
- class NFData mode => KnownIODataMode mode where
- hGetIODataContents :: Handle -> IO mode
- toIOData :: mode -> IOData
- iodataMode :: IODataMode mode
- withIOData :: IOData -> (forall mode. IODataMode mode -> mode -> r) -> r
- null :: IOData -> Bool
- hPutContents :: Handle -> IOData -> IO ()
IOData
& IODataMode
type
Represents either textual or binary data passed via I/O functions which support binary/text mode
Since: 2.2
IODataText String | How Text gets encoded is usually locale-dependent. |
IODataBinary ByteString | Raw binary which gets read/written in binary mode. |
data IODataMode mode where Source #
Phantom-typed GADT representation of the mode of IOData
, containing no
other data.
Since: 3.2
class NFData mode => KnownIODataMode mode where Source #
Since: 2.2
hGetIODataContents :: Handle -> IO mode Source #
IOData
Wrapper for hGetContents
Note: This operation uses lazy I/O. Use NFData
to force all
data to be read and consequently the internal file handle to be
closed.
toIOData :: mode -> IOData Source #
iodataMode :: IODataMode mode Source #
Instances
KnownIODataMode ByteString Source # | |
Defined in Distribution.Utils.IOData hGetIODataContents :: Handle -> IO ByteString Source # toIOData :: ByteString -> IOData Source # | |
a ~ Char => KnownIODataMode [a] Source # | |
Defined in Distribution.Utils.IOData hGetIODataContents :: Handle -> IO [a] Source # toIOData :: [a] -> IOData Source # iodataMode :: IODataMode [a] Source # |
withIOData :: IOData -> (forall mode. IODataMode mode -> mode -> r) -> r Source #
Applies a function polymorphic over IODataMode
to an IOData
value.
hPutContents :: Handle -> IOData -> IO () Source #
IOData
Wrapper for hPutStr
and hClose
This is the dual operation ot hGetIODataContents
,
and consequently the handle is closed with hClose
.
Note: this performs lazy-IO.
Since: 2.2