Modulestreamly-core-0.3.1Haskell2010
Streamly.Internal.Data.Binary.Parser
Decode Haskell data types from byte streams.
It would be inefficient to use this to compose parsers for general algebraic data types. For general deserialization of ADTs please use the Serialize type class instances. The fastest way to deserialize byte streams representing Haskell data types is to write them to arrays and deserialize the array using the Serialize type class.
Contents
Synopsis
- class FromBytes
- value unit
- value bool
- value ordering
- value eqWord8
- value word8
- value word16be
- value word16le
- value word32be
- value word32le
- value word64be
- value word64le
- value word64host
- value int8
- value int16be
- value int16le
- value int32be
- value int32le
- value int64be
- value int64le
- value float32be
- value float32le
- value double64be
- value double64le
- value charLatin1
- Packagestreamly-core-0.3.1
- Exports25
- LanguageHaskell2010
- LicenceBSD-3-Clause
- SourceParser.hs
Type class
Decoders
A value of type () is encoded as 0 in binary encoding.
0 ==> ()
Pre-release
A value of type Ordering is encoded as follows in binary encoding.
0 ==> LT
1 ==> EQ
2 ==> GT
Pre-release
Accept the input byte only if it is equal to the specified value.
Pre-release
Accept any byte.
Pre-release
Parse two bytes as a Word16, the first byte is the MSB of the Word16 and second byte is the LSB (big endian representation).
Pre-release
Parse two bytes as a Word16, the first byte is the LSB of the Word16 and second byte is the MSB (little endian representation).
Pre-release
Parse four bytes as a Word32, the first byte is the MSB of the Word32 and last byte is the LSB (big endian representation).
Pre-release
Parse four bytes as a Word32, the first byte is the MSB of the Word32 and last byte is the LSB (big endian representation).
Pre-release
Parse eight bytes as a Word64, the first byte is the MSB of the Word64 and last byte is the LSB (big endian representation).
Pre-release
Parse eight bytes as a Word64, the first byte is the MSB of the Word64 and last byte is the LSB (big endian representation).
Pre-release
Parse eight bytes as a Word64 in the host byte order.
Pre-release
Parse two bytes as a Int16, the first byte is the MSB of the Int16 and second byte is the LSB (big endian representation).
Pre-release
Parse two bytes as a Int16, the first byte is the LSB of the Int16 and second byte is the MSB (little endian representation).
Pre-release
Parse four bytes as a Int32, the first byte is the MSB of the Int32 and last byte is the LSB (big endian representation).
Pre-release
Parse four bytes as a Int32, the first byte is the MSB of the Int32 and last byte is the LSB (big endian representation).
Pre-release
Parse eight bytes as a Int64, the first byte is the MSB of the Int64 and last byte is the LSB (big endian representation).
Pre-release
Parse eight bytes as a Int64, the first byte is the MSB of the Int64 and last byte is the LSB (big endian representation).
Pre-release
Accept any byte.
Pre-release