packages feed

buffer-builder-aeson 0.2.0.4 → 0.2.0.5

raw patch · 3 files changed

+15/−4 lines, 3 filessetup-changednew-uploaderPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

− Setup.hs
@@ -1,2 +0,0 @@-import Distribution.Simple-main = defaultMain
buffer-builder-aeson.cabal view
@@ -2,7 +2,7 @@ --  documentation, see http://haskell.org/cabal/users-guide/  name:                buffer-builder-aeson-version:             0.2.0.4+version:             0.2.0.5 synopsis:            Serialize Aeson values with Data.BufferBuilder -- description: license:             MIT
src/Data/BufferBuilder/Aeson.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE MagicHash #-} {-# OPTIONS_GHC -fno-warn-orphans #-}  @@ -10,10 +11,15 @@ import qualified Data.BufferBuilder.Json as Json import qualified Data.BufferBuilder.Utf8 as Utf8Builder import qualified Data.ByteString.Lazy as BSL-import qualified Data.ByteString.Lazy.Builder as BB+import qualified Data.ByteString.Builder as BB import qualified Data.ByteString.Builder.Scientific as BB import qualified Data.Scientific as Scientific +#if MIN_VERSION_aeson(2,0,0)+import Data.Aeson.KeyMap (foldrWithKey)+import Data.Aeson.Key (toText)+#endif+ -- TODO: this doesn't need to convert the bytestring to strict before appending it -- there is an appendBSL slowNumber :: Scientific.Scientific -> Json.Value@@ -24,7 +30,14 @@  instance ToJson Value where     {-# INLINE toJson #-}+#if MIN_VERSION_aeson(2,0,0)+    toJson (Object o) = toJson $ foldrWithKey+                            (\k v built -> (toText k Json..= (toJson v)) <> built)+                            mempty+                            o+#else     toJson (Object o) = toJson o+#endif     toJson (Array a) = toJson a     toJson (String s) = toJson s     toJson (Number n) = case Scientific.coefficient n of