discrete-intervals-0.0.1: Discrete Intervals

Safe HaskellSafe
LanguageHaskell2010

Data.Interval

Synopsis

Documentation

data Interval a Source #

A Discrete Interval.

Constructors

I !a !a 
Empty 

Instances

Eq a => Eq (Interval a) Source # 

Methods

(==) :: Interval a -> Interval a -> Bool #

(/=) :: Interval a -> Interval a -> Bool #

Ord a => Ord (Interval a) Source # 

Methods

compare :: Interval a -> Interval a -> Ordering #

(<) :: Interval a -> Interval a -> Bool #

(<=) :: Interval a -> Interval a -> Bool #

(>) :: Interval a -> Interval a -> Bool #

(>=) :: Interval a -> Interval a -> Bool #

max :: Interval a -> Interval a -> Interval a #

min :: Interval a -> Interval a -> Interval a #

Show a => Show (Interval a) Source # 

Methods

showsPrec :: Int -> Interval a -> ShowS #

show :: Interval a -> String #

showList :: [Interval a] -> ShowS #

(Enum a, Ord a) => Semigroup (Interval a) Source # 

Methods

(<>) :: Interval a -> Interval a -> Interval a #

sconcat :: NonEmpty (Interval a) -> Interval a #

stimes :: Integral b => b -> Interval a -> Interval a #

(Enum a, Ord a) => Monoid (Interval a) Source # 

Methods

mempty :: Interval a #

mappend :: Interval a -> Interval a -> Interval a #

mconcat :: [Interval a] -> Interval a #

cmp :: (Enum a, Ord a) => Interval a -> Interval a -> IOrdering Source #

cmp' :: (Enum a, Ord a) => Interval a -> Interval a -> Interval a -> IOrdering Source #

(...) :: (Enum a, Ord a) => a -> a -> Interval a infix 3 Source #

(+/-) :: (Enum a, Num a, Ord a) => a -> a -> Interval a infixl 6 Source #

interval :: (Enum a, Ord a) => a -> a -> Interval a Source #

empty :: (Enum a, Ord a) => Interval a Source #

singleton :: (Enum a, Ord a) => a -> Interval a Source #

inf :: (Enum a, Ord a) => Interval a -> a Source #

sup :: (Enum a, Ord a) => Interval a -> a Source #

valid :: (Enum a, Ord a) => Interval a -> Bool Source #

invalid :: (Enum a, Ord a) => Interval a -> Bool Source #

isEmpty :: (Enum a, Ord a) => Interval a -> Bool Source #

singular :: (Enum a, Ord a) => Interval a -> Bool Source #

toList :: (Enum a, Ord a) => Interval a -> [a] Source #

member :: (Enum a, Ord a) => a -> Interval a -> Bool Source #

notMember :: (Enum a, Ord a) => a -> Interval a -> Bool Source #

hull :: (Enum a, Ord a) => Interval a -> Interval a -> Interval a Source #

contains :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

isSubsetOf :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

adjacent :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

(<!) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

For all x in X, y in Y. x < y

(<=!) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

For all x in X, y in Y. x <= y

(==!) :: (Enum a, Eq a, Ord a) => Interval a -> Interval a -> Bool Source #

For all x in X, y in Y. x == y

(/=!) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

For all x in X, y in Y. x /= y

(>!) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

For all x in X, y in Y. x > y

(>=!) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

For all x in X, y in Y. x >= y

(<?) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

Does there exist an x in X, y in Y such that x < y?

(<=?) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

Does there exist an x in X, y in Y such that x <= y?

(==?) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

Does there exist an x in X, y in Y such that x == y?

(/=?) :: (Enum a, Eq a, Ord a) => Interval a -> Interval a -> Bool Source #

Does there exist an x in X, y in Y such that x /= y?

(>?) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

Does there exist an x in X, y in Y such that x > y?

(>=?) :: (Enum a, Ord a) => Interval a -> Interval a -> Bool Source #

Does there exist an x in X, y in Y such that x >= y?