Safe Haskell | None |
---|---|
Language | Haskell2010 |
Strict Decoder Primitives
Synopsis
- dBool :: Get Bool
- dWord8 :: Get Word8
- dBE8 :: Get Word8
- dBE16 :: Get Word16
- dBE32 :: Get Word32
- dBE64 :: Get Word64
- dBEBits8 :: Int -> Get Word8
- dBEBits16 :: Int -> Get Word16
- dBEBits32 :: Int -> Get Word32
- dBEBits64 :: Int -> Get Word64
- dropBits :: Int -> Get ()
- dFloat :: Get Float
- dDouble :: Get Double
- getChunksInfo :: Get ( Ptr Word8 , [ Int ])
- dByteString_ :: Get ByteString
- dLazyByteString_ :: Get ByteString
- dByteArray_ :: Get ( ByteArray , Int )
- data ConsState = ConsState ! Word ! Int
- consOpen :: Get ConsState
- consClose :: Int -> Get ()
- consBool :: ConsState -> ( ConsState , Bool )
- consBits :: ConsState -> Int -> ( ConsState , Word )
Documentation
dBEBits8 :: Int -> Get Word8 Source #
Return the n most significant bits (up to maximum of 8)
The bits are returned right shifted: >>> unflatWith (dBEBits8 3) [0b11100001::Word8] == Right 0b00000111 True
dBEBits16 :: Int -> Get Word16 Source #
Return the n most significant bits (up to maximum of 16) The bits are returned right shifted.
dBEBits32 :: Int -> Get Word32 Source #
Return the n most significant bits (up to maximum of 32) The bits are returned right shifted.
dBEBits64 :: Int -> Get Word64 Source #
Return the n most significant bits (up to maximum of 64) The bits are returned right shifted.
getChunksInfo :: Get ( Ptr Word8 , [ Int ]) Source #
Decode an Array (a list of chunks up to 255 bytes long) returning the pointer to the first data byte and a list of chunk sizes
dByteString_ :: Get ByteString Source #
Decode a ByteString
dLazyByteString_ :: Get ByteString Source #
Decode a Lazy ByteString
A special state, optimised for constructor decoding.
It consists of:
- The bits to parse, the top bit being the first to parse (could use a Word16 instead, no difference in performance)
- The number of decoded bits
Supports up to 512 constructors (9 bits).