-- | Functions for dealing with bools.

module Data.Bools
  (bool
  ,cond
  ,module Data.Bool)
 where

import Data.Bool

-- | bool false true p = if p then true else false
bool :: a -> a -> Bool -> a
bool false true p = if p then true else false

-- | cond false true p v = if p v then true v else false v
cond :: (a -> b) -> (a -> b) -> (a -> Bool) -> a -> b
cond false true p v = if p v then true v else false v