packages feed

bytestring-tree-builder 0.2.6 → 0.2.7

raw patch · 3 files changed

+30/−17 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ ByteString.TreeBuilder: intercalate :: (Foldable f, Monoid m) => m -> f m -> m

Files

benchmark/Main.hs view
@@ -11,37 +11,43 @@   defaultMain $   map sampleGroup $   [("Small Input", smallSample), ("Medium Input", mediumSample), ("Large Input", largeSample)]-    + sampleGroup :: (String, Sample) -> Benchmark-sampleGroup (title, sample) =+sampleGroup (title, (Sample sample)) =   bench title $ nf sample $   (A.byteString, mappend, mempty, A.toByteString) -type Sample =-  forall a. (ByteString -> a, a -> a -> a, a, a -> ByteString) -> ByteString+newtype Sample =+  Sample (forall a. (ByteString -> a, a -> a -> a, a, a -> ByteString) -> ByteString)  {-# NOINLINE smallSample #-} smallSample :: Sample-smallSample (fromByteString, (<>), mempty, toByteString) =-  toByteString $+smallSample =+  Sample $+  \ (fromByteString, (<>), mempty, toByteString) ->+    toByteString $     (fromByteString "hello" <> fromByteString "asdf") <>     fromByteString "fsndfn" <>     (fromByteString "dfgknfg" <> fromByteString "aaaaaa")  {-# NOINLINE mediumSample #-} mediumSample :: Sample-mediumSample (fromByteString, (<>), mempty, toByteString) =-  toByteString $-  foldl' (<>) mempty $ replicate 1000 $+mediumSample =+  Sample $+  \ (fromByteString, (<>), mempty, toByteString) ->+    toByteString $+    foldl' (<>) mempty $ replicate 1000 $     (fromByteString "hello" <> fromByteString "asdf") <>     fromByteString "fsndfn" <>     (fromByteString "dfgknfg" <> fromByteString "aaaaaa")  {-# NOINLINE largeSample #-} largeSample :: Sample-largeSample (fromByteString, (<>), mempty, toByteString) =-  toByteString $-  foldl' (<>) mempty $ replicate 100000 $+largeSample =+  Sample $+  \ (fromByteString, (<>), mempty, toByteString) ->+    toByteString $+    foldl' (<>) mempty $ replicate 100000 $     (fromByteString "hello" <> fromByteString "asdf") <>     fromByteString "fsndfn" <>     (fromByteString "dfgknfg" <> fromByteString "aaaaaa")
bytestring-tree-builder.cabal view
@@ -1,7 +1,7 @@ name:   bytestring-tree-builder version:-  0.2.6+  0.2.7 category:   ByteString synopsis:@@ -44,7 +44,7 @@     library   ghc-options:   default-extensions:-    Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, ImpredicativeTypes, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples+    Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples   default-language:     Haskell2010   other-modules:@@ -74,7 +74,7 @@     "-with-rtsopts=-N"     -funbox-strict-fields   default-extensions:-    Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveTraversable, DeriveGeneric, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, ImpredicativeTypes, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples+    Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveTraversable, DeriveGeneric, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples   default-language:     Haskell2010   build-depends:@@ -97,7 +97,7 @@   main-is:     Main.hs   default-extensions:-    Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, ImpredicativeTypes, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples+    Arrows, BangPatterns, ConstraintKinds, DataKinds, DefaultSignatures, DeriveDataTypeable, DeriveFoldable, DeriveFunctor, DeriveGeneric, DeriveTraversable, EmptyDataDecls, FlexibleContexts, FlexibleInstances, FunctionalDependencies, GADTs, GeneralizedNewtypeDeriving, LambdaCase, LiberalTypeSynonyms, MagicHash, MultiParamTypeClasses, MultiWayIf, NoImplicitPrelude, NoMonomorphismRestriction, OverloadedStrings, PatternGuards, ParallelListComp, QuasiQuotes, RankNTypes, RecordWildCards, ScopedTypeVariables, StandaloneDeriving, TemplateHaskell, TupleSections, TypeFamilies, TypeOperators, UnboxedTuples   default-language:     Haskell2010   build-depends:
library/ByteString/TreeBuilder.hs view
@@ -12,6 +12,7 @@   utf8Ord,   utf8Text,   utf8LazyText,+  intercalate,   -- * Execution   length,   toByteString,@@ -19,7 +20,7 @@ ) where -import ByteString.TreeBuilder.Prelude hiding (foldl, foldr, length)+import ByteString.TreeBuilder.Prelude hiding (foldl, foldr, length, intercalate) import qualified ByteString.TreeBuilder.Tree as A import qualified ByteString.TreeBuilder.Poker as D import qualified ByteString.TreeBuilder.Prelude as F@@ -148,6 +149,12 @@ utf8LazyText :: Data.Text.Lazy.Text -> Builder utf8LazyText =   Data.Text.Lazy.foldl' (\builder -> mappend builder . utf8Char) mempty++{-# INLINABLE intercalate #-}+intercalate :: (Foldable f, Monoid m) => m -> f m -> m+intercalate incut =+  fst .+  foldl' (\(acc, incutFn) x -> (incutFn (mappend x acc), mappend incut)) (mempty, id)   -- * Execution