binary-0.7.1.0: Binary serialisation for Haskell values using lazy ByteStrings

CopyrightLennart Kolmodin, Ross Paterson
LicenseBSD3-style (see LICENSE)
MaintainerLennart Kolmodin <kolmodin@gmail.com>
Stabilityexperimental
Portabilityportable to Hugs and GHC
Safe HaskellTrustworthy
LanguageHaskell98

Data.Binary.Builder.Internal

Contents

Description

A module containing semi-public Builder internals that exposes low level construction functions. Modules which extend the Builder system will need to use this module while ideally most users will be able to make do with the public interface modules.

Synopsis

Low-level construction of Builders

writeN :: Int -> (Ptr Word8 -> IO ()) -> Builder Source

Ensure that n bytes are available, and then use f to write exactly n bytes into memory.

writeAtMost :: Int -> (Ptr Word8 -> IO Int) -> Builder Source

Ensure that n bytes are available, and then use f to write at most n bytes into memory. f must return the actual number of bytes written.