packages feed

barecheck-0.2.0.0: lib/Data/Tree/Coarbitrary.hs

module Data.Tree.Coarbitrary where

import Data.Tree
import Test.QuickCheck
import Prelude.Coarbitrary

tree
  :: (a -> Gen b -> Gen b)
  -> Tree a
  -> Gen b
  -> Gen b
tree f (Node a as) = f a . list (tree f) as