@@ -22,29 +22,12 @@ import Types
2222import qualified Data.DList as DList
2323import qualified Data.HashMap.Strict as HM
2424
25−#if !MIN_VERSION_QuickCheck(2,9,0)
26−import Control.Applicative (Const(..))
27−import Data.Functor.Identity (Identity (..))
28−import Data.List.NonEmpty (NonEmpty(..))
29−import Data.Version
30−import Test.QuickCheck (getNonNegative, listOf1, resize)
31−#endif
32−
33−#if !MIN_VERSION_QuickCheck(2,10,0)
34−import Data.Functor.Compose (Compose (..))
35−import Data.Proxy (Proxy(..))
36−#endif
37−
3825import Data.Orphans ()
3926import Test.QuickCheck.Instances ()
4027#if MIN_VERSION_base(4,7,0)
4128import Data.Hashable.Time ()
4229#endif
4330
44−#if !MIN_VERSION_base(4,8,0) && !MIN_VERSION_QuickCheck(2,8,3)
45−import Numeric.Natural
46−#endif
47−
4831{-# ANN module ("HLint: ignore Use fewer imports"::String) #-}
4932
5033-- "System" types.
@@ -186,37 +169,5 @@ instance (ApproxEq a) => ApproxEq [a] where
186169-- a definition is given below.
187170
188171
189−#if !MIN_VERSION_base(4,8,0) && !MIN_VERSION_QuickCheck(2,8,3)
190−instance Arbitrary Natural where
191− arbitrary = fromInteger . abs <$> arbitrary
192−#endif
193−
194−#if !MIN_VERSION_QuickCheck(2,10,0)
195−instance Arbitrary (Proxy a) where
196− arbitrary = pure Proxy
197−
198−instance Arbitrary (f (g a)) => Arbitrary (Compose f g a) where
199− arbitrary = Compose <$> arbitrary
200−#endif
201−
202172instance Arbitrary a => Arbitrary (DList.DList a) where
203173 arbitrary = DList.fromList <$> arbitrary
204−
205−#if !MIN_VERSION_QuickCheck(2,9,0)
206−instance Arbitrary a => Arbitrary (Const a b) where
207− arbitrary = Const <$> arbitrary
208−
209−instance Arbitrary a => Arbitrary (NonEmpty a) where
210− arbitrary = (:|) <$> arbitrary <*> arbitrary
211−
212−instance Arbitrary Version where
213− arbitrary = makeVersion . fmap getNonNegative <$> resize 4 (listOf1 arbitrary)
214−
215−#if !MIN_VERSION_base(4,8,0)
216−makeVersion :: [Int] -> Version
217−makeVersion b = Version b []
218−#endif
219−
220−instance Arbitrary a => Arbitrary (Identity a) where
221− arbitrary = Identity <$> arbitrary
222−#endif