Safe Haskell | Safe-Infered |
---|
Random and Binary IO with generic Iteratees, using File Descriptors for IO. when available, these are the preferred functions for performing IO as they run in constant space and function properly with sockets, pipes, etc.
- enumFd :: forall s el m a. (NullPoint s, ReadableChunk s el, MonadIO m, MonadBaseControl IO m) => Int -> Fd -> Enumerator s m a
- enumFdCatch :: forall e s el m a. (IException e, NullPoint s, ReadableChunk s el, MonadIO m, MonadBaseControl IO m) => Int -> Fd -> (e -> m (Maybe EnumException)) -> Enumerator s m a
- enumFdRandom :: forall s el m a. (NullPoint s, ReadableChunk s el, MonadIO m, MonadBaseControl IO m) => Int -> Fd -> Enumerator s m a
- enumFile :: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) => Int -> FilePath -> Enumerator s m a
- enumFileRandom :: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) => Int -> FilePath -> Enumerator s m a
- fileDriverFd :: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) => Int -> Iteratee s m a -> FilePath -> m a
- fileDriverRandomFd :: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) => Int -> Iteratee s m a -> FilePath -> m a
File enumerators
FileDescriptor based enumerators for monadic iteratees
enumFd :: forall s el m a. (NullPoint s, ReadableChunk s el, MonadIO m, MonadBaseControl IO m) => Int -> Fd -> Enumerator s m aSource
The enumerator of a POSIX File Descriptor. This version enumerates over the entire contents of a file, in order, unless stopped by the iteratee. In particular, seeking is not supported.
enumFdCatch :: forall e s el m a. (IException e, NullPoint s, ReadableChunk s el, MonadIO m, MonadBaseControl IO m) => Int -> Fd -> (e -> m (Maybe EnumException)) -> Enumerator s m aSource
A variant of enumFd that catches exceptions raised by the Iteratee
.
enumFdRandom :: forall s el m a. (NullPoint s, ReadableChunk s el, MonadIO m, MonadBaseControl IO m) => Int -> Fd -> Enumerator s m aSource
The enumerator of a POSIX File Descriptor: a variation of enumFd
that
supports RandomIO (seek requests).
:: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) | |
=> Int | Buffer size |
-> FilePath | |
-> Enumerator s m a |
:: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) | |
=> Int | Buffer size |
-> FilePath | |
-> Enumerator s m a |
Iteratee drivers
:: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) | |
=> Int | Buffer size (number of elements) |
-> Iteratee s m a | |
-> FilePath | |
-> m a |
Process a file using the given Iteratee
.
fileDriverRandomFd :: (NullPoint s, MonadIO m, MonadBaseControl IO m, ReadableChunk s el) => Int -> Iteratee s m a -> FilePath -> m aSource
A version of fileDriverFd that supports seeking.