numhask-range-0.2.2.1: Numbers that are range representations

Safe HaskellNone
LanguageHaskell2010

NumHask.RangeD

Description

representation of a possibly discontinuous range

Documentation

newtype RangeD a Source #

Constructors

RangeD [Range a] 

Instances

Functor RangeD Source # 

Methods

fmap :: (a -> b) -> RangeD a -> RangeD b #

(<$) :: a -> RangeD b -> RangeD a #

Foldable RangeD Source # 

Methods

fold :: Monoid m => RangeD m -> m #

foldMap :: Monoid m => (a -> m) -> RangeD a -> m #

foldr :: (a -> b -> b) -> b -> RangeD a -> b #

foldr' :: (a -> b -> b) -> b -> RangeD a -> b #

foldl :: (b -> a -> b) -> b -> RangeD a -> b #

foldl' :: (b -> a -> b) -> b -> RangeD a -> b #

foldr1 :: (a -> a -> a) -> RangeD a -> a #

foldl1 :: (a -> a -> a) -> RangeD a -> a #

toList :: RangeD a -> [a] #

null :: RangeD a -> Bool #

length :: RangeD a -> Int #

elem :: Eq a => a -> RangeD a -> Bool #

maximum :: Ord a => RangeD a -> a #

minimum :: Ord a => RangeD a -> a #

sum :: Num a => RangeD a -> a #

product :: Num a => RangeD a -> a #

Traversable RangeD Source # 

Methods

traverse :: Applicative f => (a -> f b) -> RangeD a -> f (RangeD b) #

sequenceA :: Applicative f => RangeD (f a) -> f (RangeD a) #

mapM :: Monad m => (a -> m b) -> RangeD a -> m (RangeD b) #

sequence :: Monad m => RangeD (m a) -> m (RangeD a) #

Eq a => Eq (RangeD a) Source # 

Methods

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

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

Show a => Show (RangeD a) Source # 

Methods

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

show :: RangeD a -> String #

showList :: [RangeD a] -> ShowS #

Generic (RangeD a) Source # 

Associated Types

type Rep (RangeD a) :: * -> * #

Methods

from :: RangeD a -> Rep (RangeD a) x #

to :: Rep (RangeD a) x -> RangeD a #

Arbitrary a => Arbitrary (RangeD a) Source # 

Methods

arbitrary :: Gen (RangeD a) #

shrink :: RangeD a -> [RangeD a] #

NFData a => NFData (RangeD a) Source # 

Methods

rnf :: RangeD a -> () #

(FromInteger a, Ord a, BoundedField a) => MultiplicativeMagma (RangeD a) Source #

times may well be some sort of affine projection lurking under the hood

Methods

times :: RangeD a -> RangeD a -> RangeD a #

(FromInteger a, Ord a, BoundedField a) => MultiplicativeUnital (RangeD a) Source # 

Methods

one :: RangeD a #

(FromInteger a, Ord a, BoundedField a) => MultiplicativeAssociative (RangeD a) Source # 
(FromInteger a, Ord a, BoundedField a) => MultiplicativeCommutative (RangeD a) Source # 
(FromInteger a, Ord a, BoundedField a) => MultiplicativeInvertible (RangeD a) Source # 

Methods

recip :: RangeD a -> RangeD a #

(FromInteger a, Ord a, BoundedField a) => Multiplicative (RangeD a) Source # 

Methods

(*) :: RangeD a -> RangeD a -> RangeD a #

(FromInteger a, Ord a, BoundedField a) => MultiplicativeGroup (RangeD a) Source # 

Methods

(/) :: RangeD a -> RangeD a -> RangeD a #

(FromInteger a, Ord a, BoundedField a) => AdditiveMagma (RangeD a) Source # 

Methods

plus :: RangeD a -> RangeD a -> RangeD a #

(FromInteger a, Ord a, BoundedField a) => AdditiveUnital (RangeD a) Source # 

Methods

zero :: RangeD a #

(FromInteger a, Ord a, BoundedField a) => AdditiveAssociative (RangeD a) Source # 
(FromInteger a, Ord a, BoundedField a) => AdditiveCommutative (RangeD a) Source # 
(FromInteger a, Ord a, BoundedField a) => AdditiveInvertible (RangeD a) Source # 

Methods

negate :: RangeD a -> RangeD a #

(FromInteger a, Ord a, BoundedField a) => Additive (RangeD a) Source # 

Methods

(+) :: RangeD a -> RangeD a -> RangeD a #

(FromInteger a, Ord a, BoundedField a) => AdditiveGroup (RangeD a) Source # 

Methods

(-) :: RangeD a -> RangeD a -> RangeD a #

type Rep (RangeD a) Source # 
type Rep (RangeD a) = D1 * (MetaData "RangeD" "NumHask.RangeD" "numhask-range-0.2.2.1-CuiYZN34Lwi4movg2vrydE" True) (C1 * (MetaCons "RangeD" PrefixI False) (S1 * (MetaSel (Nothing Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * [Range a])))