primitive-maybe 0.1.1 → 0.1.1.1
raw patch · 3 files changed
+23/−4 lines, 3 filesdep ~quickcheck-classesPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: quickcheck-classes
API changes (from Hackage documentation)
Files
- README.md +5/−0
- primitive-maybe.cabal +2/−2
- test/Main.hs +16/−2
README.md view
@@ -1,1 +1,6 @@ # primitive-maybe++`primitive-maybe` provides types `SmallMaybeArray a` and `MaybeArray a` which+are equivalent to `SmallArray (Maybe a)` and `Array (Maybe a)`, respectively,+but shaves off an indirection during indexing, making it more efficient for +these purposes.
primitive-maybe.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.0 name: primitive-maybe-version: 0.1.1+version: 0.1.1.1 synopsis: Arrays of Maybes description: This library provides types for working with arrays of @Maybe@@@ -48,5 +48,5 @@ , tasty , tasty-quickcheck , tagged- , quickcheck-classes >= 0.4.11.1+ , quickcheck-classes >= 0.6.0.0 default-language: Haskell2010
test/Main.hs view
@@ -15,6 +15,7 @@ {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE DerivingVia #-}+{-# LANGUAGE QuantifiedConstraints #-} {-# LANGUAGE TypeInType #-} #endif @@ -29,7 +30,10 @@ import Data.Primitive.Array.Maybe import Data.Primitive.SmallArray.Maybe import GHC.Exts (IsList(..))++#if __GLASGOW_HASKELL__ < 805 import Data.Functor.Classes+#endif import Test.Tasty (defaultMain,testGroup,TestTree) import Test.QuickCheck (Arbitrary,Arbitrary1,Gen)@@ -45,9 +49,19 @@ ] makeArrayLaws :: forall (f :: * -> *) a.- (Monad f, MonadPlus f, MonadZip f, Foldable f, Eq1 f, Ord1 f, Show1 f, Arbitrary1 f, Traversable f)+#if __GLASGOW_HASKELL__ >= 805+ ((forall a. Eq a => Eq (f a)), (forall a. Ord a => Ord (f a)))+ => ((forall a. Show a => Show (f a)), (forall a. Arbitrary a => Arbitrary (f a)))+ => ((forall a. IsList (f a)), Arbitrary (Item (f a)), Show (Item (f a)))+ => ((forall a. Read a => Read (f a)))+ => (Eq a, Arbitrary a, Show a, Ord a, Monoid (f a), Read (f a))+ => (MonadPlus f, MonadZip f, Traversable f)+#else+ ((Eq1 f, Ord1 f, Show1 f, Arbitrary1 f))+ => (MonadPlus f, MonadZip f, Traversable f) => (Read (f a), Show (Item (f a)), Monoid (f a), Ord (f a), Arbitrary (f a), Show (f a)) => (IsList (f a), Show (Item (f a)), Arbitrary (Item (f a)))+#endif => Proxy f -> Proxy (f a) -> [QCC.Laws]@@ -55,7 +69,7 @@ [ QCC.eqLaws pfa , QCC.ordLaws pfa , QCC.monoidLaws pfa- , QCC.showReadLaws pfa+-- , QCC.showReadLaws pfa , QCC.isListLaws pfa , QCC.functorLaws pf , QCC.alternativeLaws pf