packages feed

PrimitiveArray 0.9.0.0 → 0.9.1.0

raw patch · 4 files changed

+183/−88 lines, 4 filesdep ~DPutilsdep ~QuickCheckdep ~basePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: DPutils, QuickCheck, base, smallcheck

API changes (from Hackage documentation)

+ Data.PrimitiveArray.Checked: arbMaxPointR :: Int
+ Data.PrimitiveArray.Index: arbMaxPointR :: Int
+ Data.PrimitiveArray.Index.Class: instance Control.Lens.Tuple.Field1 (((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b) Data.PrimitiveArray.Index.Class.:. c) (((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a') Data.PrimitiveArray.Index.Class.:. b) Data.PrimitiveArray.Index.Class.:. c) a a'
+ Data.PrimitiveArray.Index.Class: instance Control.Lens.Tuple.Field1 ((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b) ((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a') Data.PrimitiveArray.Index.Class.:. b) a a'
+ Data.PrimitiveArray.Index.Class: instance Control.Lens.Tuple.Field1 (Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) (Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a') a a'
+ Data.PrimitiveArray.Index.Class: instance Control.Lens.Tuple.Field2 (((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b) Data.PrimitiveArray.Index.Class.:. c) (((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b') Data.PrimitiveArray.Index.Class.:. c) b b'
+ Data.PrimitiveArray.Index.Class: instance Control.Lens.Tuple.Field2 ((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b) ((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b') b b'
+ Data.PrimitiveArray.Index.Class: instance Control.Lens.Tuple.Field3 (((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b) Data.PrimitiveArray.Index.Class.:. c) (((Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. a) Data.PrimitiveArray.Index.Class.:. b) Data.PrimitiveArray.Index.Class.:. c') c c'
+ Data.PrimitiveArray.Index.Point: arbMaxPointR :: Int
+ Data.PrimitiveArray.Index.Point: instance Data.PrimitiveArray.Index.Class.IndexStream z => Data.PrimitiveArray.Index.Class.IndexStream (z Data.PrimitiveArray.Index.Class.:. Data.PrimitiveArray.Index.Point.PointR Data.PrimitiveArray.Index.IOC.I)
+ Data.PrimitiveArray.Index.Point: instance Data.PrimitiveArray.Index.Class.IndexStream z => Data.PrimitiveArray.Index.Class.IndexStream (z Data.PrimitiveArray.Index.Class.:. Data.PrimitiveArray.Index.Point.PointR Data.PrimitiveArray.Index.IOC.O)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Control.DeepSeq.NFData (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Aeson.Types.FromJSON.FromJSON (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Aeson.Types.FromJSON.FromJSONKey (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Aeson.Types.ToJSON.ToJSON (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Aeson.Types.ToJSON.ToJSONKey (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Binary.Class.Binary (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Hashable.Class.Hashable (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.PrimitiveArray.Index.Class.Index (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.PrimitiveArray.Index.Class.IndexStream (Data.PrimitiveArray.Index.Class.Z Data.PrimitiveArray.Index.Class.:. Data.PrimitiveArray.Index.Point.PointR t) => Data.PrimitiveArray.Index.Class.IndexStream (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Serialize.Serialize (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Vector.Generic.Base.Vector Data.Vector.Unboxed.Base.Vector (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Vector.Generic.Mutable.Base.MVector Data.Vector.Unboxed.Base.MVector (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Data.Vector.Unboxed.Base.Unbox (Data.PrimitiveArray.Index.Point.PointR t)
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). GHC.Classes.Eq (Data.PrimitiveArray.Index.Class.LimitType (Data.PrimitiveArray.Index.Point.PointR t))
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). GHC.Generics.Generic (Data.PrimitiveArray.Index.Class.LimitType (Data.PrimitiveArray.Index.Point.PointR t))
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). GHC.Read.Read (Data.PrimitiveArray.Index.Class.LimitType (Data.PrimitiveArray.Index.Point.PointR t))
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). GHC.Show.Show (Data.PrimitiveArray.Index.Class.LimitType (Data.PrimitiveArray.Index.Point.PointR t))
+ Data.PrimitiveArray.Index.Point: instance forall k (t :: k). Test.QuickCheck.Arbitrary.Arbitrary (Data.PrimitiveArray.Index.Point.PointR t)
- Data.PrimitiveArray.Checked: bitSet :: forall t_aNrS t_aO1v. Iso (BitSet t_aNrS) (BitSet t_aO1v) Int Int
+ Data.PrimitiveArray.Checked: bitSet :: forall t_aPQq t_aQq3. Iso (BitSet t_aPQq) (BitSet t_aQq3) Int Int
- Data.PrimitiveArray.Checked: bitset :: forall i_aRWI ioc_aRWJ. Lens' (BitSet1 i_aRWI ioc_aRWJ) (BitSet ioc_aRWJ)
+ Data.PrimitiveArray.Checked: bitset :: forall i_aUh6 ioc_aUh7. Lens' (BitSet1 i_aUh6 ioc_aUh7) (BitSet ioc_aUh7)
- Data.PrimitiveArray.Checked: boundary :: forall i_aRWI ioc_aRWJ i_aS3j. Lens (BitSet1 i_aRWI ioc_aRWJ) (BitSet1 i_aS3j ioc_aRWJ) (Boundary i_aRWI ioc_aRWJ) (Boundary i_aS3j ioc_aRWJ)
+ Data.PrimitiveArray.Checked: boundary :: forall i_aUh6 ioc_aUh7 i_aUnH. Lens (BitSet1 i_aUh6 ioc_aUh7) (BitSet1 i_aUnH ioc_aUh7) (Boundary i_aUh6 ioc_aUh7) (Boundary i_aUnH ioc_aUh7)
- Data.PrimitiveArray.Index: bitSet :: forall t_aNrS t_aO1v. Iso (BitSet t_aNrS) (BitSet t_aO1v) Int Int
+ Data.PrimitiveArray.Index: bitSet :: forall t_aPQq t_aQq3. Iso (BitSet t_aPQq) (BitSet t_aQq3) Int Int
- Data.PrimitiveArray.Index: bitset :: forall i_aRWI ioc_aRWJ. Lens' (BitSet1 i_aRWI ioc_aRWJ) (BitSet ioc_aRWJ)
+ Data.PrimitiveArray.Index: bitset :: forall i_aUh6 ioc_aUh7. Lens' (BitSet1 i_aUh6 ioc_aUh7) (BitSet ioc_aUh7)
- Data.PrimitiveArray.Index: boundary :: forall i_aRWI ioc_aRWJ i_aS3j. Lens (BitSet1 i_aRWI ioc_aRWJ) (BitSet1 i_aS3j ioc_aRWJ) (Boundary i_aRWI ioc_aRWJ) (Boundary i_aS3j ioc_aRWJ)
+ Data.PrimitiveArray.Index: boundary :: forall i_aUh6 ioc_aUh7 i_aUnH. Lens (BitSet1 i_aUh6 ioc_aUh7) (BitSet1 i_aUnH ioc_aUh7) (Boundary i_aUh6 ioc_aUh7) (Boundary i_aUnH ioc_aUh7)
- Data.PrimitiveArray.Index.BitSet0: bitSet :: forall t_aNrS t_aO1v. Iso (BitSet t_aNrS) (BitSet t_aO1v) Int Int
+ Data.PrimitiveArray.Index.BitSet0: bitSet :: forall t_aPQq t_aQq3. Iso (BitSet t_aPQq) (BitSet t_aQq3) Int Int
- Data.PrimitiveArray.Index.BitSet1: bitset :: forall i_aRWI ioc_aRWJ. Lens' (BitSet1 i_aRWI ioc_aRWJ) (BitSet ioc_aRWJ)
+ Data.PrimitiveArray.Index.BitSet1: bitset :: forall i_aUh6 ioc_aUh7. Lens' (BitSet1 i_aUh6 ioc_aUh7) (BitSet ioc_aUh7)
- Data.PrimitiveArray.Index.BitSet1: boundary :: forall i_aRWI ioc_aRWJ i_aS3j. Lens (BitSet1 i_aRWI ioc_aRWJ) (BitSet1 i_aS3j ioc_aRWJ) (Boundary i_aRWI ioc_aRWJ) (Boundary i_aS3j ioc_aRWJ)
+ Data.PrimitiveArray.Index.BitSet1: boundary :: forall i_aUh6 ioc_aUh7 i_aUnH. Lens (BitSet1 i_aUh6 ioc_aUh7) (BitSet1 i_aUnH ioc_aUh7) (Boundary i_aUh6 ioc_aUh7) (Boundary i_aUnH ioc_aUh7)
- Data.PrimitiveArray.Index.Point: streamDownStep :: Monad m => Int -> SP z -> m (Step (SP z) (z :. PointL t))
+ Data.PrimitiveArray.Index.Point: streamDownStep :: Monad m => (Int -> b) -> Int -> SP z -> m (Step (SP z) (z :. b))
- Data.PrimitiveArray.Index.Point: streamUpStep :: Monad m => Int -> SP z -> m (Step (SP z) (z :. PointL t))
+ Data.PrimitiveArray.Index.Point: streamUpStep :: Monad m => (Int -> b) -> Int -> SP z -> m (Step (SP z) (z :. b))

Files

Data/PrimitiveArray/Index/Class.hs view
@@ -3,6 +3,7 @@  import           Control.Applicative import           Control.DeepSeq (NFData(..))+import           Control.Lens hiding (Index, (:>)) import           Control.Monad.Except import           Control.Monad (liftM2) import           Data.Aeson@@ -16,9 +17,11 @@ import           Data.Vector.Unboxed.Deriving import           Data.Vector.Unboxed (Unbox(..)) import           GHC.Generics+import           GHC.TypeNats import qualified Data.Vector.Fusion.Stream.Monadic as SM import           Test.QuickCheck import           Text.Printf+import           Data.Type.Equality   @@ -53,8 +56,6 @@   arbitrary     = liftM2 (:.) arbitrary arbitrary   shrink (a:.b) = [ (a':.b) | a' <- shrink a ] ++ [ (a:.b') | b' <- shrink b ] -- infixr 3 :>  -- | A different version of strict pairs. Makes for simpler type inference in@@ -255,4 +256,37 @@ --  {-# INLINE size #-} --  inBounds (hs:>h) (zs:>z) = inBounds hs zs && inBounds h z --  {-# INLINE inBounds #-}++++-- * Somewhat experimental lens support.+--+-- The problem here is that tuples are n-ary, while inductive tuples are+-- binary, recursive.++instance Field1 (Z:.a) (Z:.a') a a' where+  {-# Inline _1 #-}+  _1 = lens (\(Z:.a) → a) (\(Z:._) a → (Z:.a))++instance Field1 (Z:.a:.b) (Z:.a':.b) a a' where+  {-# Inline _1 #-}+  _1 = lens (\(Z:.a:.b) → a) (\(Z:._:.b) a → (Z:.a:.b))++instance Field1 (Z:.a:.b:.c) (Z:.a':.b:.c) a a' where+  {-# Inline _1 #-}+  _1 = lens (\(Z:.a:.b:.c) → a) (\(Z:._:.b:.c) a → (Z:.a:.b:.c))+++instance Field2 (Z:.a:.b) (Z:.a:.b') b b' where+  {-# Inline _2 #-}+  _2 = lens (\(Z:.a:.b) → b) (\(Z:.a:._) b → (Z:.a:.b))++instance Field2 (Z:.a:.b:.c) (Z:.a:.b':.c) b b' where+  {-# Inline _2 #-}+  _2 = lens (\(Z:.a:.b:.c) → b) (\(Z:.a:._:.c) b → (Z:.a:.b:.c))+++instance Field3 (Z:.a:.b:.c) (Z:.a:.b:.c') c c' where+  {-# Inline _3 #-}+  _3 = lens (\(Z:.a:.b:.c) → c) (\(Z:.a:.b:._) c → (Z:.a:.b:.c)) 
Data/PrimitiveArray/Index/Point.hs view
@@ -47,13 +47,8 @@ pointLC = PointL {-# Inline pointLC #-} --- | A point in a right-linear grammars. -newtype PointR t = PointR {fromPointR :: Int}-  deriving (Eq,Ord,Read,Show,Generic) -- derivingUnbox "PointL"   [t| forall t . PointL t -> Int    |]   [| \ (PointL i) -> i |]@@ -92,20 +87,20 @@ deriving instance Show    (LimitType (PointL t))  instance IndexStream z => IndexStream (z:.PointL I) where-  streamUp   (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamUpMk   lf) (streamUpStep   ht) $ streamUp ls hs-  streamDown (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamDownMk ht) (streamDownStep lf) $ streamDown ls hs+  streamUp   (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamUpMk   lf) (streamUpStep   PointL ht) $ streamUp ls hs+  streamDown (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamDownMk ht) (streamDownStep PointL lf) $ streamDown ls hs   {-# Inline [0] streamUp #-}   {-# Inline [0] streamDown #-}  instance IndexStream z => IndexStream (z:.PointL O) where-  streamUp   (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamDownMk ht) (streamDownStep lf) $ streamUp   ls hs-  streamDown (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamUpMk   lf) (streamUpStep   ht) $ streamDown ls hs+  streamUp   (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamDownMk ht) (streamDownStep PointL lf) $ streamUp   ls hs+  streamDown (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamUpMk   lf) (streamUpStep   PointL ht) $ streamDown ls hs   {-# Inline [0] streamUp #-}   {-# Inline [0] streamDown #-}  instance IndexStream z => IndexStream (z:.PointL C) where-  streamUp   (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamUpMk   lf) (streamUpStep   ht) $ streamUp ls hs-  streamDown (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamDownMk ht) (streamDownStep lf) $ streamDown ls hs+  streamUp   (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamUpMk   lf) (streamUpStep   PointL ht) $ streamUp ls hs+  streamDown (ls:..LtPointL lf) (hs:..LtPointL ht) = SM.flatten (streamDownMk ht) (streamDownStep PointL lf) $ streamDown ls hs   {-# Inline [0] streamUp #-}   {-# Inline [0] streamDown #-} @@ -114,17 +109,17 @@ streamUpMk (I# lf) z = return $ SP z lf {-# Inline [0] streamUpMk #-} -streamUpStep (I# ht) (SP z k)+streamUpStep wrapper (I# ht) (SP z k)   | 1# <- k ># ht = return $ SM.Done-  | otherwise     = return $ SM.Yield (z:.PointL (I# k)) (SP z (k +# 1#))+  | otherwise     = return $ SM.Yield (z:.wrapper (I# k)) (SP z (k +# 1#)) {-# Inline [0] streamUpStep #-}  streamDownMk (I# ht) z = return $ SP z ht {-# Inline [0] streamDownMk #-} -streamDownStep (I# lf) (SP z k)+streamDownStep wrapper (I# lf) (SP z k)   | 1# <- k <# lf = return $ SM.Done-  | otherwise     = return $ SM.Yield (z:.PointL (I# k)) (SP z (k -# 1#))+  | otherwise     = return $ SM.Yield (z:.wrapper (I# k)) (SP z (k -# 1#)) {-# Inline [0] streamDownStep #-}  instance IndexStream (Z:.PointL t) => IndexStream (PointL t) where@@ -147,28 +142,88 @@   --- -- * @PointR@--- ----- -- TODO complete instances--- --- derivingUnbox "PointR"---   [t| forall t . PointR t -> Int    |]---   [| \ (PointR i) -> i |]---   [| \ i -> PointR i   |]--- --- instance Binary    (PointR t)--- instance Serialize (PointR t)--- instance FromJSON  (PointR t)--- instance ToJSON    (PointR t)--- instance Hashable  (PointR t)--- --- instance NFData (PointR t) where---   rnf (PointR l) = rnf l---   {-# Inline rnf #-}--- --- instance Index (PointR t) where---   linearIndex l (PointR z) = undefined---   {-# INLINE linearIndex #-}---   size = undefined---   {-# INLINE size #-}+-- * @PointR@++-- | A point in a right-linear grammars.++newtype PointR t = PointR {fromPointR :: Int}+  deriving (Eq,Ord,Read,Show,Generic)++++derivingUnbox "PointR"+  [t| forall t . PointR t -> Int    |]+  [| \ (PointR i) -> i |]+  [| \ i -> PointR i   |]++instance Binary       (PointR t)+instance Serialize    (PointR t)+instance FromJSON     (PointR t)+instance FromJSONKey  (PointR t)+instance ToJSON       (PointR t)+instance ToJSONKey    (PointR t)+instance Hashable     (PointR t)++instance NFData (PointR t) where+  rnf (PointR l) = rnf l+  {-# Inline rnf #-}++instance Index (PointR t) where+  newtype LimitType (PointR t) = LtPointR Int+  linearIndex _ (PointR z) = z+  {-# INLINE linearIndex #-}+  size (LtPointR h) = h + 1+  {-# INLINE size #-}+  inBounds (LtPointR h) (PointR x) = 0<=x && x<=h+  {-# INLINE inBounds #-}+  zeroBound = PointR 0+  {-# Inline [0] zeroBound #-}+  zeroBound' = LtPointR 0+  {-# Inline [0] zeroBound' #-}+  totalSize (LtPointR h) = [fromIntegral $ h + 1]+  {-# Inline [0] totalSize #-}++deriving instance Eq      (LimitType (PointR t))+deriving instance Generic (LimitType (PointR t))+deriving instance Read    (LimitType (PointR t))+deriving instance Show    (LimitType (PointR t))++instance IndexStream z => IndexStream (z:.PointR I) where+  streamUp   (ls:..LtPointR lf) (hs:..LtPointR ht) = SM.flatten (streamDownMk ht) (streamDownStep PointR lf) $ streamUp ls hs+  streamDown (ls:..LtPointR lf) (hs:..LtPointR ht) = SM.flatten (streamUpMk   lf) (streamUpStep   PointR ht) $ streamDown ls hs+  {-# Inline [0] streamUp #-}+  {-# Inline [0] streamDown #-}++instance IndexStream z => IndexStream (z:.PointR O) where+  streamUp   (ls:..LtPointR lf) (hs:..LtPointR ht) = SM.flatten (streamUpMk   lf) (streamUpStep   PointR ht) $ streamUp   ls hs+  streamDown (ls:..LtPointR lf) (hs:..LtPointR ht) = SM.flatten (streamDownMk ht) (streamDownStep PointR lf) $ streamDown ls hs+  {-# Inline [0] streamUp #-}+  {-# Inline [0] streamDown #-}++--instance IndexStream z => IndexStream (z:.PointR C) where+--  streamUp   (ls:..LtPointR lf) (hs:..LtPointR ht) = SM.flatten (streamUpMkR   lf) (streamUpStepR   ht) $ streamUp ls hs+--  streamDown (ls:..LtPointR lf) (hs:..LtPointR ht) = SM.flatten (streamDownMkR ht) (streamDownStepR lf) $ streamDown ls hs+--  {-# Inline [0] streamUp #-}+--  {-# Inline [0] streamDown #-}++instance IndexStream (Z:.PointR t) => IndexStream (PointR t) where+  streamUp l h = SM.map (\(Z:.i) -> i) $ streamUp (ZZ:..l) (ZZ:..h)+  {-# INLINE streamUp #-}+  streamDown l h = SM.map (\(Z:.i) -> i) $ streamDown (ZZ:..l) (ZZ:..h)+  {-# INLINE streamDown #-}++-- arbitrarily set maximum here to++arbMaxPointR = 100++instance Arbitrary (PointR t) where+  arbitrary = do+    b <- choose (0,arbMaxPointR)+    return $ PointR b+  shrink (PointR j)+    | j<arbMaxPointR = [PointR $ j+1]+    | otherwise = []++--instance Monad m => Serial m (PointR t) where+--  series = PointR . TS.getNonNegative <$> series 
PrimitiveArray.cabal view
@@ -1,16 +1,16 @@+Cabal-version:  2.2 Name:           PrimitiveArray-Version:        0.9.0.0-License:        BSD3+Version:        0.9.1.0+License:        BSD-3-Clause License-file:   LICENSE Maintainer:     choener@bioinf.uni-leipzig.de-author:         Christian Hoener zu Siederdissen, 2011-2018-copyright:      Christian Hoener zu Siederdissen, 2011-2018+author:         Christian Hoener zu Siederdissen, 2011-2019+copyright:      Christian Hoener zu Siederdissen, 2011-2019 homepage:       https://github.com/choener/PrimitiveArray bug-reports:    https://github.com/choener/PrimitiveArray/issues Stability:      Experimental Category:       Data Build-type:     Simple-Cabal-version:  >=1.10.0 tested-with:    GHC == 8.4.4 Synopsis:       Efficient multidimensional arrays Description:@@ -54,36 +54,14 @@   -Library-  Exposed-modules:-    Data.PrimitiveArray-    Data.PrimitiveArray.Checked-    Data.PrimitiveArray.Class-    Data.PrimitiveArray.Dense---    Data.PrimitiveArray.FillTables-    Data.PrimitiveArray.Index-    Data.PrimitiveArray.Index.BitSet0-    Data.PrimitiveArray.Index.BitSet1-    Data.PrimitiveArray.Index.BitSetClasses---    Data.PrimitiveArray.Index.BS0---    Data.PrimitiveArray.Index.BS2-    Data.PrimitiveArray.Index.Class---    Data.PrimitiveArray.Index.EdgeBoundary-    Data.PrimitiveArray.Index.Int-    Data.PrimitiveArray.Index.IOC-    Data.PrimitiveArray.Index.PhantomInt-    Data.PrimitiveArray.Index.Point---    Data.PrimitiveArray.Index.Set-    Data.PrimitiveArray.Index.Subword---    Data.PrimitiveArray.Index.TernarySet-    Data.PrimitiveArray.Index.Unit-    Data.PrimitiveArray.ScoreMatrix+common deps   build-depends: base                     >= 4.7      &&  < 5.0                , aeson                    >= 0.8                , binary                   >= 0.7                , bits                     >= 0.4                , cereal                   >= 0.4                , cereal-vector            >= 0.2+               , containers                , deepseq                  >= 1.3                , hashable                 >= 1.2                , lens                     >= 4.0@@ -92,20 +70,26 @@                , primitive                >= 0.5.4                , QuickCheck               >= 2.7                , smallcheck               >= 1.1+               , tasty                    >= 0.11+               , tasty-quickcheck         >= 0.8+               , tasty-smallcheck         >= 0.8+               , tasty-th                 >= 0.1                , text                     >= 1.0                , vector                   >= 0.11                , vector-binary-instances  >= 0.2                , vector-th-unbox          >= 0.2                ---               , DPutils                  == 0.0.2.*+               , DPutils                  == 0.1.0.*                , OrderedBits              == 0.0.1.*   default-extensions: BangPatterns                     , CPP+                    , DataKinds                     , DefaultSignatures                     , DeriveDataTypeable                     , DeriveGeneric                     , FlexibleContexts                     , FlexibleInstances+                    , FunctionalDependencies                     , GADTs                     , GeneralizedNewtypeDeriving                     , MultiParamTypeClasses@@ -115,6 +99,7 @@                     , ScopedTypeVariables                     , StandaloneDeriving                     , TemplateHaskell+                    , TypeApplications                     , TypeFamilies                     , TypeOperators                     , UndecidableInstances@@ -132,7 +117,38 @@   +Library+  import:+    deps+  Exposed-modules:+    Data.PrimitiveArray+    Data.PrimitiveArray.Checked+    Data.PrimitiveArray.Class+    Data.PrimitiveArray.Dense+--    Data.PrimitiveArray.FillTables+    Data.PrimitiveArray.Index+    Data.PrimitiveArray.Index.BitSet0+    Data.PrimitiveArray.Index.BitSet1+    Data.PrimitiveArray.Index.BitSetClasses+--    Data.PrimitiveArray.Index.BS0+--    Data.PrimitiveArray.Index.BS2+    Data.PrimitiveArray.Index.Class+--    Data.PrimitiveArray.Index.EdgeBoundary+    Data.PrimitiveArray.Index.Int+    Data.PrimitiveArray.Index.IOC+    Data.PrimitiveArray.Index.PhantomInt+    Data.PrimitiveArray.Index.Point+--    Data.PrimitiveArray.Index.Set+    Data.PrimitiveArray.Index.Subword+--    Data.PrimitiveArray.Index.TernarySet+    Data.PrimitiveArray.Index.Unit+    Data.PrimitiveArray.ScoreMatrix+++ test-suite properties+  import:+    deps   type:     exitcode-stdio-1.0   main-is:@@ -142,25 +158,10 @@     SmallCheck     Common   ghc-options:-    -O2 -threaded -rtsopts -with-rtsopts=-N+    -threaded -rtsopts -with-rtsopts=-N   hs-source-dirs:     tests-  default-language:-    Haskell2010-  default-extensions: CPP-                    , ScopedTypeVariables-                    , TemplateHaskell-                    , UnicodeSyntax-  build-depends: base-               , containers-               , QuickCheck-               , smallcheck-               , tasty              >= 0.11-               , tasty-quickcheck   >= 0.8-               , tasty-smallcheck   >= 0.8-               , tasty-th           >= 0.1-               ---               , PrimitiveArray+  build-depends: PrimitiveArray   
changelog.md view
@@ -1,3 +1,8 @@+0.9.1.0+-------++- Arbitrary instance(s), field lenses that are probably not a good idea (don't use them!)+ 0.9.0.0 -------