|Maintainer||George Giorgidze <http://cs.nott.ac.uk/~ggg/>|
|Efficient construction of lazy bytestrings.
|The Builder type
A Builder is an efficient way to build lazy ByteStrings.
There are several functions for constructing Builders, but only one
to inspect them: to extract any data, you have to turn them into lazy
ByteStrings using toLazyByteString.
Internally, a Builder constructs a lazy L.Bytestring by filling byte
arrays piece by piece. As each buffer is filled, it is 'popped'
off, to become a new chunk of the resulting lazy ByteString.
All this is hidden from the user of the Builder.
|O(n). Extract a lazy ByteString from a Builder.
The construction work takes place if and when the relevant part of
the lazy ByteString is demanded.
O(1). The empty Builder, satisfying
O(1). A Builder taking a single byte, satisfying
O(1). The concatenation of two Builders, an associative operation
with identity empty, satisfying
O(1). A Builder taking a ByteString, satisfying
O(1). A Builder taking a lazy ByteString, satisfying
|Flushing the buffer state
|O(1). Pop the ByteString we have constructed so far, if any,
yielding a new chunk in the result lazy ByteString.
|Write a Word16 in big endian format
|Write a 24 bit number in big endian format represented as Word32
|Write a Word32 in big endian format
|Write a Word64 in big endian format
|Write a Word16 in little endian format
|Write a 24 bit number in little endian format represented as Word32
|Write a Word32 in little endian format
|Write a Word64 in little endian format
|Host-endian, unaligned writes
|O(1). A Builder taking a single native machine word. The word is
written in host order, host endian form, for the machine you're on.
On a 64 bit machine the Word is an 8 byte value, on a 32 bit machine,
4 bytes. Values written this way are not portable to
different endian or word sized machines, without conversion.
|Write a Word16 in native host order and host endianness.
2 bytes will be written, unaligned.
|Write a Word32 in native host order and host endianness.
4 bytes will be written, unaligned.
|Write a Word64 in native host order.
On a 32 bit machine we write two host order Word32s, in big endian form.
8 bytes will be written, unaligned.
|Produced by Haddock version 2.4.2|