flat-0.3.2: Principled and efficient bit-oriented binary serialization.

Safe HaskellNone
LanguageHaskell2010

Data.Flat.Decoder.Prim

Description

Strict Decoder Primitives

Synopsis

Documentation

dBool :: Get Bool Source #

Decode a boolean

dWord8 :: Get Word8 Source #

Return the 8 most significant bits (same as dBE8)

dBE8 :: Get Word8 Source #

Return the 8 most significant bits

dBE16 :: Get Word16 Source #

Return the 16 most significant bits

dBE32 :: Get Word32 Source #

Return the 32 most significant bits

dBE64 :: Get Word64 Source #

Return the 64 most significant bits

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) [128+64+32+1::Word8] == Right 7

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 8) The bits are returned right shifted.

dBEBits64 :: Int -> Get Word64 Source #

Return the n most significant bits (up to maximum of 8) The bits are returned right shifted.

dropBits :: Int -> Get () Source #

Drop the specified number of bits

dFloat :: Get Float Source #

Decode a Float

dDouble :: Get Double Source #

Decode a Double

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

dByteArray_ :: Get (ByteArray, Int) Source #

Decode a ByteArray and its length