packages feed

hw-json-standard-cursor 0.2.3.0 → 0.2.3.1

raw patch · 8 files changed

+28/−13 lines, 8 filesdep ~bytestringdep ~doctestdep ~generic-lensPVP: minor bump suggested

API additions: PVP suggests at least a minor version bump

Dependency ranges changed: bytestring, doctest, generic-lens, lens, optparse-applicative

API changes (from Hackage documentation)

+ HaskellWorks.Data.Json.Standard.Cursor.Generic: instance GHC.Generics.Generic (HaskellWorks.Data.Json.Standard.Cursor.Generic.GenericCursor t v w)
+ HaskellWorks.Data.Json.Standard.Cursor.IbBp: instance GHC.Generics.Generic HaskellWorks.Data.Json.Standard.Cursor.IbBp.IbBp
+ HaskellWorks.Data.Json.Standard.Cursor.Internal.Blank: instance GHC.Generics.Generic HaskellWorks.Data.Json.Standard.Cursor.Internal.Blank.BlankState
+ HaskellWorks.Data.Json.Standard.Cursor.Internal.MakeIndex: instance GHC.Generics.Generic HaskellWorks.Data.Json.Standard.Cursor.Internal.MakeIndex.MiniBP
+ HaskellWorks.Data.Json.Standard.Cursor.Internal.StateMachine: instance GHC.Generics.Generic HaskellWorks.Data.Json.Standard.Cursor.Internal.StateMachine.IntState
+ HaskellWorks.Data.Json.Standard.Cursor.Internal.StateMachine: instance GHC.Generics.Generic HaskellWorks.Data.Json.Standard.Cursor.Internal.StateMachine.State
+ HaskellWorks.Data.Json.Standard.Cursor.SemiIndex: instance GHC.Generics.Generic (HaskellWorks.Data.Json.Standard.Cursor.SemiIndex.PreSiChunk v)
+ HaskellWorks.Data.Json.Standard.Cursor.SemiIndex: instance GHC.Generics.Generic (HaskellWorks.Data.Json.Standard.Cursor.SemiIndex.SemiIndex v)
+ HaskellWorks.Data.Json.Standard.Cursor.SemiIndex: instance GHC.Generics.Generic (HaskellWorks.Data.Json.Standard.Cursor.SemiIndex.SiChunk v)
+ HaskellWorks.Data.Json.Standard.Cursor.Type: instance GHC.Generics.Generic HaskellWorks.Data.Json.Standard.Cursor.Type.JsonType

Files

hw-json-standard-cursor.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.2  name:                   hw-json-standard-cursor-version:                0.2.3.0+version:                0.2.3.1 synopsis:               Memory efficient JSON parser description:            Memory efficient JSON parser. Please see README.md category:               Data
src/HaskellWorks/Data/Json/Standard/Cursor/Generic.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE DeriveGeneric         #-} {-# LANGUAGE FlexibleContexts      #-} {-# LANGUAGE FlexibleInstances     #-} {-# LANGUAGE InstanceSigs          #-}@@ -11,6 +12,7 @@   , jsonCursorPos   ) where +import GHC.Generics import HaskellWorks.Data.Positioning import HaskellWorks.Data.RankSelect.Base.Rank0 import HaskellWorks.Data.RankSelect.Base.Rank1@@ -26,7 +28,7 @@   , balancedParens :: !w   , cursorRank     :: !Count   }-  deriving (Eq, Show)+  deriving (Eq, Generic, Show)  instance (BP.BalancedParens u, Rank1 u, Rank0 u) => TreeCursor (GenericCursor t v u) where   firstChild :: GenericCursor t v u -> Maybe (GenericCursor t v u)
src/HaskellWorks/Data/Json/Standard/Cursor/IbBp.hs view
@@ -1,13 +1,15 @@-{-# LANGUAGE BangPatterns #-}+{-# LANGUAGE DeriveGeneric #-}  module HaskellWorks.Data.Json.Standard.Cursor.IbBp   ( IbBp(..)   , slowToIbBp-  , simdToIbBp) where+  , simdToIbBp+  ) where  import Control.Monad import Control.Monad.ST                    (ST) import Data.Word+import GHC.Generics import HaskellWorks.Data.Vector.AsVector64  import qualified Data.ByteString                                                    as BS@@ -24,7 +26,7 @@ data IbBp = IbBp   { ib :: DVS.Vector Word64   , bp :: DVS.Vector Word64-  }+  } deriving Generic  slowToIbBp :: BS.ByteString -> IbBp slowToIbBp bs = IbBp
src/HaskellWorks/Data/Json/Standard/Cursor/Internal/Blank.hs view
@@ -1,4 +1,5 @@-{-# LANGUAGE BangPatterns #-}+{-# LANGUAGE BangPatterns  #-}+{-# LANGUAGE DeriveGeneric #-}  module HaskellWorks.Data.Json.Standard.Cursor.Internal.Blank   ( blankJson@@ -7,6 +8,7 @@ import Data.ByteString                                       (ByteString) import Data.Word import Data.Word8+import GHC.Generics import HaskellWorks.Data.Json.Standard.Cursor.Internal.Word8 import Prelude                                               as P @@ -18,6 +20,7 @@   | InString   | InNumber   | InIdent+  deriving Generic  blankJson :: [BS.ByteString] -> [BS.ByteString] blankJson = blankJson' InJson
src/HaskellWorks/Data/Json/Standard/Cursor/Internal/MakeIndex.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE DeriveGeneric     #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RankNTypes        #-} @@ -15,6 +16,7 @@ import Data.Int import Data.Word import Data.Word8+import GHC.Generics import HaskellWorks.Data.Bits.BitWise import Prelude                        as P @@ -98,7 +100,7 @@             MiniTF -> Just (0xFF, (Just False , cs))           Nothing   -> Nothing -data MiniBP = MiniN | MiniT | MiniF | MiniTF+data MiniBP = MiniN | MiniT | MiniF | MiniTF deriving Generic  balancedParensOf :: Word8 -> MiniBP balancedParensOf c = case c of
src/HaskellWorks/Data/Json/Standard/Cursor/Internal/StateMachine.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE BinaryLiterals             #-}+{-# LANGUAGE DeriveGeneric              #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE OverloadedStrings          #-} @@ -14,6 +15,7 @@   ) where  import Data.Word+import GHC.Generics import HaskellWorks.Data.Bits.BitWise  import qualified Data.Vector                                           as DV@@ -22,9 +24,9 @@  {-# ANN module ("HLint: ignore Redundant guard"  :: String) #-} -newtype IntState = IntState Int deriving (Eq, Ord, Show, Num)+newtype IntState = IntState Int deriving (Eq, Ord, Show, Num, Generic) -data State = InJson | InString | InEscape | InValue deriving (Eq, Enum, Bounded, Show)+data State = InJson | InString | InEscape | InValue deriving (Eq, Enum, Bounded, Show, Generic)  phiTable :: DV.Vector (DVS.Vector Word8) phiTable = DV.generate 5 gos
src/HaskellWorks/Data/Json/Standard/Cursor/SemiIndex.hs view
@@ -1,5 +1,6 @@ {-# LANGUAGE BinaryLiterals      #-} {-# LANGUAGE DeriveFunctor       #-}+{-# LANGUAGE DeriveGeneric       #-} {-# LANGUAGE DeriveTraversable   #-} {-# LANGUAGE InstanceSigs        #-} {-# LANGUAGE MultiWayIf          #-}@@ -23,6 +24,7 @@ import Data.Bits.Pext import Data.Word import Foreign.Storable                                             (Storable (..))+import GHC.Generics import HaskellWorks.Data.Bits.BitWise import HaskellWorks.Data.Bits.PopCount.PopCount1 import HaskellWorks.Data.Json.Standard.Cursor.Internal.StateMachine (IntState (..), State (..))@@ -50,17 +52,17 @@   { preSiChunkIb   :: !v -- interest bits   , preSiChunkBpOp :: !v -- balanced parens interest bits   , preSiChunkBpCl :: !v -- balanced parens open close-  } deriving (Functor, Traversable, Foldable)+  } deriving (Functor, Traversable, Foldable, Generic)  data SiChunk v = SiChunk   { siChunkIb :: !v -- interest bits   , siChunkBp :: !v -- balanced parens open close-  } deriving (Functor, Traversable, Foldable)+  } deriving (Functor, Traversable, Foldable, Generic)  data SemiIndex v = SemiIndex   { semiIndexIb :: !v   , semiIndexBp :: !v-  } deriving (Functor, Traversable, Foldable)+  } deriving (Functor, Traversable, Foldable, Generic)  semiIndexBuilder :: LBS.ByteString -> SemiIndex B.Builder semiIndexBuilder lbs = SemiIndex (B.lazyByteString ibs) (B.byteString (BS.toByteString bps))
src/HaskellWorks/Data/Json/Standard/Cursor/Type.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE DeriveGeneric         #-} {-# LANGUAGE FlexibleInstances     #-} {-# LANGUAGE InstanceSigs          #-} {-# LANGUAGE MultiParamTypeClasses #-}@@ -10,6 +11,7 @@ import Data.Char import Data.String import Data.Word8+import GHC.Generics import HaskellWorks.Data.Bits.BitWise import HaskellWorks.Data.Drop import HaskellWorks.Data.Json.Standard.Cursor.Generic@@ -32,7 +34,7 @@   | JsonTypeNumber   | JsonTypeObject   | JsonTypeString-  deriving (Eq, Show)+  deriving (Eq, Show, Generic)  class JsonTypeAt a where   jsonTypeAtPosition :: Position -> a -> Maybe JsonType