wordpass-0.2.0.0: Data/Random/RVar/Enum.hs
{-# LANGUAGE OverlappingInstances, MultiParamTypeClasses, FlexibleInstances #-}
module Data.Random.RVar.Enum() where
import Data.Random.RVar
import Data.Random.Distribution
import Data.Random.Distribution.Uniform
import Control.Applicative((<$>))
-- TODO: Send to library author as a "missing instance"
instance (Enum a) => Distribution Uniform a where
rvarT (Uniform l h) = toEnum <$> uniformT (fromEnum l) (fromEnum h)