QuickCheck implementations for common types

Version on this page:
LTS Haskell 1.15:
Stackage Nightly 2015-03-19:
Latest on Hackage:

See all snapshots barecheck appears in

BSD-3-Clause licensed and maintained by Omari Norman
This version can be pinned in stack with:barecheck-,3247

Module documentation for

  • Barecheck
    • Barecheck.Promote
    • Barecheck.Util
  • Data
    • Data.Map
      • Data.Map.Coarbitrary
      • Data.Map.Generators
      • Data.Map.Shrinkers
    • Data.Monoid
      • Data.Monoid.Coarbitrary
      • Data.Monoid.Generators
      • Data.Monoid.Shrinkers
    • Data.Sequence
      • Data.Sequence.Coarbitrary
      • Data.Sequence.Generators
      • Data.Sequence.Shrinkers
    • Data.Text
      • Data.Text.Coarbitrary
      • Data.Text.Generators
      • Data.Text.Shrinkers
    • Data.Time
      • Data.Time.Coarbitrary
      • Data.Time.Generators
      • Data.Time.Shrinkers
    • Data.Tree
      • Data.Tree.Coarbitrary
      • Data.Tree.Generators
      • Data.Tree.Shrinkers
  • Prelude
    • Prelude.Coarbitrary
    • Prelude.Generators
    • Prelude.Shrinkers

Provides QuickCheck implementations for common types distributed with GHC and in the Haskell Platform. The implementations are NOT provided through the QuickCheck Arbitrary and CoArbitrary typeclasses; instead, they are provided through ordinary, non-overloaded functions. This avoids problems with orphan instances.

Implementations are provided through child modules of the module that provides the original type. For example, for Data.Map, look under Data.Map.Generators, Data.Map.Shrinkers, and Data.Map.Coarbitrary. For instance, a function that generates a Map is at, while a function providing a coarbitrary implementation is at Obviously this can lead to name conflicts, both between modules provided in this package and with other standard modules, so keep this in mind when you do your imports.