-->

Haskell QuickCheck2 using ByteString?

2020-03-11 02:57发布

问题:

The RWH books says that to get ByteString support, I need to add:

instance Arbitrary B.ByteString where
    arbitrary   = fmap B.pack arbitrary
    coarbitrary = coarbitrary . B.unpack

But my GHC 7.2 with QuickCheck 2.4.1.1 tells me:

`coarbitrary' is not a (visible) method of class `Arbitrary'

Any pointers?

回答1:

coarbitrary has moved to it's own typeclass CoAbritary in QC 2.0, so simply just remove the equation for coarbitrary.

Also see the latest documentation.