Safe Haskell | None |
---|---|
Language | Haskell2010 |
Monadic Iteratees: incremental input parsers, processors, and transformers
Iteratees for parsing binary data.
Synopsis
- data Endian
- endianRead2 :: Endian -> Iteratee Bytes m Word16
- endianRead3 :: Endian -> Iteratee Bytes m Word32
- endianRead3i :: Monad m => Endian -> Iteratee Bytes m Int32
- endianRead4 :: Endian -> Iteratee Bytes m Word32
- endianRead8 :: Endian -> Iteratee Bytes m Word64
- headStreamBS :: Iteratee Bytes m Word8
- tryHeadBS :: Iteratee Bytes m (Maybe Word8)
- peekStreamBS :: Iteratee Bytes m (Maybe Word8)
- takeStreamBS :: Monad m => Int -> Enumeratee Bytes Bytes m a
- dropStreamBS :: Int -> Iteratee Bytes m ()
- dropWhileStreamBS :: (Word8 -> Bool) -> Iteratee Bytes m ()
- enumLinesBS :: Monad m => Enumeratee Bytes [Bytes] m a
- enumWordsBS :: Monad m => Enumeratee Bytes [Bytes] m a
Types
Indicate endian-ness.
Endian multi-byte iteratees
endianRead3i :: Monad m => Endian -> Iteratee Bytes m Int32 Source #
Read 3 bytes in an endian manner. If the first bit is set (negative), set the entire first byte so the Int32 will be negative as well.
Iteratees treating Bytes as list of Word8
:: Monad m | |
=> Int | number of elements to consume |
-> Enumeratee Bytes Bytes m a |
Iteratees treating Bytes as list of Char
enumLinesBS :: Monad m => Enumeratee Bytes [Bytes] m a Source #
enumWordsBS :: Monad m => Enumeratee Bytes [Bytes] m a Source #