{-# LANGUAGE DeriveDataTypeable #-}
module Numeric.Interval.Exception
  ( EmptyInterval(..)
  , AmbiguousComparison(..)
  ) where

import Control.Exception
import Data.Data

data EmptyInterval = EmptyInterval
  deriving (Eq,Ord,Typeable,Data)

instance Show EmptyInterval where
  show EmptyInterval = "empty interval"

instance Exception EmptyInterval

data AmbiguousComparison = AmbiguousComparison
  deriving (Eq,Ord,Typeable,Data)

instance Show AmbiguousComparison where
  show AmbiguousComparison = "ambiguous comparison"

instance Exception AmbiguousComparison