{-# LANGUAGE Safe, TypeOperators #-}
module Data.Invertible.Enum
( enum
, succ
) where
import qualified Prelude
import Prelude hiding (succ)
import Data.Invertible.Bijection
enum :: Enum a => Int <-> a
enum :: forall a. Enum a => Int <-> a
enum = forall a. Enum a => Int -> a
toEnum forall (a :: * -> * -> *) b c. a b c -> a c b -> Bijection a b c
:<->: forall a. Enum a => a -> Int
fromEnum
succ :: Enum a => a <-> a
succ :: forall a. Enum a => a <-> a
succ = forall a. Enum a => a -> a
Prelude.succ forall (a :: * -> * -> *) b c. a b c -> a c b -> Bijection a b c
:<->: forall a. Enum a => a -> a
pred