Repository : ssh://darcs.haskell.org//srv/darcs/packages/bytestring On branch : master
http://hackage.haskell.org/trac/ghc/changeset/c183358e96cb4b3178444aa4b5d92f360fd4aa89 >--------------------------------------------------------------- commit c183358e96cb4b3178444aa4b5d92f360fd4aa89 Author: Simon Meier <[email protected]> Date: Sun Nov 13 23:01:54 2011 +0000 port additional work on bytestring builder This patch adds the remainder of the work I performed on the old bytestring repository. It adds the following changes: - Faster implementation of Float and Double serialization. We exploit that there is already a buffer that we can use to convert the Float to a Word32 via the FFI. - Renaming of 'charASCII' and 'stringASCII' to 'char7' and 'string7': The new names are easier to use (as they are shorter) and follow the same convention as the 'char8' versions. - Move of variable length encodings and the chunked and size-prefixed builder transformers into a separate module: Data/ByteString/Lazy/Builder/BasicEncoding/Extras.hs The remainder of Data/ByteString/Lazy/Builder/BasicEncoding is now well-documentet and its API is considered stable. - Bugfixes to the size-prefixing builder transformer and a test case that caught the original bug. - The modules Data.ByteString.Lazy.Builder.Internal Data.ByteString.Lazy.Builder.BasicEncoding Data.ByteString.Lazy.Builder.BasicEncoding.Internal Data.ByteString.Lazy.Builder.BasicEncoding.Extras are now also exposed, but only Data.ByteString.Lazy.Builder.BasicEncoding is haddocked. They are required to provide transitional packages of blaze-html, blaze-builder, and blaze-enumerator based on the new bytestring builder. Data/ByteString/Lazy/Builder.hs | 62 ++- Data/ByteString/Lazy/Builder/ASCII.hs | 29 +- Data/ByteString/Lazy/Builder/BasicEncoding.hs | 658 +++++-------------- .../ByteString/Lazy/Builder/BasicEncoding/ASCII.hs | 21 +- .../Lazy/Builder/BasicEncoding/Binary.hs | 203 +------ .../{BasicEncoding.hs => BasicEncoding/Extras.hs} | 623 ++++++------------- .../Lazy/Builder/BasicEncoding/Internal.hs | 14 +- .../Lazy/Builder/BasicEncoding/Internal/Base16.hs | 2 +- .../Builder/BasicEncoding/Internal/Floating.hs | 85 ++-- .../BasicEncoding/Internal/UncheckedShifts.hs | 5 +- Data/ByteString/Lazy/Builder/Extras.hs | 3 +- Data/ByteString/Lazy/Builder/Internal.hs | 6 +- bench/BenchAll.hs | 2 +- bytestring.cabal | 8 +- .../Lazy/Builder/BasicEncoding/TestUtils.hs | 9 +- .../ByteString/Lazy/Builder/BasicEncoding/Tests.hs | 4 +- .../builder/Data/ByteString/Lazy/Builder/Tests.hs | 33 +- 17 files changed, 524 insertions(+), 1243 deletions(-) Diff suppressed because of size. To see it, use: git show c183358e96cb4b3178444aa4b5d92f360fd4aa89 _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
