blaze-builder-0.2.1.4: Efficient buffered output.Source codeContentsIndex
Blaze.ByteString.Builder.Internal.Write
Portabilitytested on GHC only
Stabilityexperimental
MaintainerSimon Meier <iridcode@gmail.com>
Contents
Abstracting writes to a buffer
Constructing builders from writes
Writing Storables
Description
A general and efficient write type that allows for the easy construction of builders for (smallish) bounded size writes to a buffer.
Synopsis
data Write
data WriteIO
writeN :: Int -> (Ptr Word8 -> IO ()) -> WriteIO
exactWrite :: Int -> (Ptr Word8 -> IO ()) -> Write
boundedWrite :: Int -> WriteIO -> Write
runWrite :: Write -> WriteIO
runWriteIO :: WriteIO -> Ptr Word8 -> IO (Ptr Word8)
fromWrite :: Write -> Builder
fromWriteSingleton :: (a -> Write) -> a -> Builder
fromWriteList :: (a -> Write) -> [a] -> Builder
writeStorable :: Storable a => a -> Write
fromStorable :: Storable a => a -> Builder
fromStorables :: Storable a => [a] -> Builder
Abstracting writes to a buffer
data Write Source
A write of a bounded number of bytes.
show/hide Instances
data WriteIO Source

A write to a buffer.

FIXME: Find better name: what about Poke ?

show/hide Instances
writeN :: Int -> (Ptr Word8 -> IO ()) -> WriteIOSource
writeN size io creates a write that denotes the writing of size bytes to a buffer using the IO action io. Note that io MUST write EXACTLY size bytes to the buffer!
exactWrite :: Int -> (Ptr Word8 -> IO ()) -> WriteSource
exactWrite size io creates a bounded write that can later be converted to a builder that writes exactly size bytes. Note that io MUST write EXACTLY size bytes to the buffer!
boundedWrite :: Int -> WriteIO -> WriteSource
boundedWrite size write creates a bounded write from a write that does not write more than size bytes.
runWrite :: Write -> WriteIOSource
Extract the WriteIO action of a write.
runWriteIO :: WriteIO -> Ptr Word8 -> IO (Ptr Word8)Source
Constructing builders from writes
fromWrite :: Write -> BuilderSource
fromWriteSingleton :: (a -> Write) -> a -> BuilderSource
fromWriteList :: (a -> Write) -> [a] -> BuilderSource
Construct a Builder writing a list of data one element at a time.
Writing Storables
writeStorable :: Storable a => a -> WriteSource
Write a storable value.
fromStorable :: Storable a => a -> BuilderSource
A builder that serializes a storable value. No alignment is done.
fromStorables :: Storable a => [a] -> BuilderSource
A builder that serializes a list of storable values by writing them consecutively. No alignment is done. Parsing information needs to be provided externally.
Produced by Haddock version 2.6.1