sets-0.0.6.2: Ducktyped set interface for Haskell containers.

Safe HaskellNone
LanguageHaskell2010

Data.Set.Class

Contents

Description

Convenience operators overloaded for arbitrary use. There are no laws associated with these classes, just duck-typed so we don't have to use the qualified versions of each function.

Synopsis

Union

class HasUnion s where Source #

Methods

union :: s -> s -> s Source #

Instances
HasUnion IntSet Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: IntSet -> IntSet -> IntSet Source #

HasUnion (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: Predicate a -> Predicate a -> Predicate a Source #

HasUnion (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: IntMap a -> IntMap a -> IntMap a Source #

Ord a => HasUnion (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: Set a -> Set a -> Set a Source #

(Hashable a, Eq a) => HasUnion (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: HashSet a -> HashSet a -> HashSet a Source #

Ord a => HasUnion (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: OMSet a -> OMSet a -> OMSet a Source #

Ord a => HasUnion (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: FiniteSet a -> FiniteSet a -> FiniteSet a Source #

Eq a => HasUnion (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: UMSet a -> UMSet a -> UMSet a Source #

Eq a => HasUnion (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: UUSet a -> UUSet a -> UUSet a Source #

HasUnion a => HasUnion (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: XUnion a -> XUnion a -> XUnion a Source #

HasUnion a => HasUnion (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasUnion a => HasUnion (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: Union a -> Union a -> Union a Source #

(Hashable k, Eq k) => HasUnion (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: HashMap k a -> HashMap k a -> HashMap k a Source #

Ord k => HasUnion (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: Map k a -> Map k a -> Map k a Source #

Ord k => HasUnion (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: SetWith k a -> SetWith k a -> SetWith k a Source #

(Ord k, HasUnion (c a)) => HasUnion (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

union :: SetsWith k c a -> SetsWith k c a -> SetsWith k c a Source #

unions :: (Foldable f, Monoid (Union s)) => f s -> s Source #

unions1 :: (Foldable1 f, Semigroup (Union s)) => f s -> s Source #

newtype Union a Source #

Constructors

Union 

Fields

Instances
Functor Union Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

Foldable Union Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

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

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

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

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

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

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

toList :: Union a -> [a] #

null :: Union a -> Bool #

length :: Union a -> Int #

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

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

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

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

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

Traversable Union Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

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

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

HasInsertWith k x a => HasInsertWith k x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> x -> Union a -> Union a Source #

HasSingletonWith k x a => HasSingletonWith k x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> x -> Union a Source #

HasTotalWith k a => HasTotalWith k (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

totalWith :: k -> Union a Source #

HasEmptyWith k a => HasEmptyWith k (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: k -> Union a Source #

HasInsert x a => HasInsert x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: x -> Union a -> Union a Source #

HasDelete x a => HasDelete x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: x -> Union a -> Union a Source #

HasSingleton x a => HasSingleton x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: x -> Union a Source #

Eq a => Eq (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

Ord a => Ord (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

compare :: Union a -> Union a -> Ordering #

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

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

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

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

max :: Union a -> Union a -> Union a #

min :: Union a -> Union a -> Union a #

Show a => Show (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

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

show :: Union a -> String #

showList :: [Union a] -> ShowS #

HasUnion s => Semigroup (Union s) Source # 
Instance details

Defined in Data.Set.Class

Methods

(<>) :: Union s -> Union s -> Union s #

sconcat :: NonEmpty (Union s) -> Union s #

stimes :: Integral b => b -> Union s -> Union s #

(HasUnion s, HasEmpty s) => Monoid (Union s) Source # 
Instance details

Defined in Data.Set.Class

Methods

mempty :: Union s #

mappend :: Union s -> Union s -> Union s #

mconcat :: [Union s] -> Union s #

HasUnion s => Commutative (Union s) Source # 
Instance details

Defined in Data.Set.Class

Methods

commute :: Union s -> Union s -> Union s #

(Commutative (Union s), HasEmpty s) => CommutativeId (Union s) Source # 
Instance details

Defined in Data.Set.Class

Methods

cempty :: Union s #

CanBeProperSubset a => CanBeProperSubset (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: Union a -> Union a -> Bool Source #

CanBeSubset a => CanBeSubset (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: Union a -> Union a -> Bool Source #

HasSize a => HasSize (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Union a -> Int Source #

HasTotal a => HasTotal (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

total :: Union a Source #

HasEmpty a => HasEmpty (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: Union a Source #

HasComplement a => HasComplement (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

complement :: Union a -> Union a Source #

HasDifference a => HasDifference (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: Union a -> Union a -> Union a Source #

HasIntersection a => HasIntersection (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: Union a -> Union a -> Union a Source #

HasUnion a => HasUnion (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: Union a -> Union a -> Union a Source #

Intersection

class HasIntersection s where Source #

Methods

intersection :: s -> s -> s Source #

Instances
HasIntersection IntSet Source # 
Instance details

Defined in Data.Set.Class

HasIntersection (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

HasIntersection (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: IntMap a -> IntMap a -> IntMap a Source #

Ord a => HasIntersection (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: Set a -> Set a -> Set a Source #

(Hashable a, Eq a) => HasIntersection (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: HashSet a -> HashSet a -> HashSet a Source #

Ord a => HasIntersection (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: OMSet a -> OMSet a -> OMSet a Source #

Ord a => HasIntersection (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Eq a => HasIntersection (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: UMSet a -> UMSet a -> UMSet a Source #

Eq a => HasIntersection (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: UUSet a -> UUSet a -> UUSet a Source #

HasIntersection a => HasIntersection (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: XUnion a -> XUnion a -> XUnion a Source #

HasIntersection a => HasIntersection (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasIntersection a => HasIntersection (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: Union a -> Union a -> Union a Source #

(Hashable k, Eq k) => HasIntersection (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: HashMap k a -> HashMap k a -> HashMap k a Source #

Ord k => HasIntersection (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: Map k a -> Map k a -> Map k a Source #

Ord k => HasIntersection (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: SetWith k a -> SetWith k a -> SetWith k a Source #

(Ord k, Eq (c a), HasEmpty (c a), HasIntersection (c a)) => HasIntersection (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

intersection :: SetsWith k c a -> SetsWith k c a -> SetsWith k c a Source #

newtype Intersection a Source #

Constructors

Intersection 

Fields

Instances
Functor Intersection Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

Foldable Intersection Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

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

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

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

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

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

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

toList :: Intersection a -> [a] #

null :: Intersection a -> Bool #

length :: Intersection a -> Int #

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

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

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

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

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

Traversable Intersection Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

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

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

HasInsertWith k x a => HasInsertWith k x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> x -> Intersection a -> Intersection a Source #

HasSingletonWith k x a => HasSingletonWith k x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> x -> Intersection a Source #

HasTotalWith k a => HasTotalWith k (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

totalWith :: k -> Intersection a Source #

HasEmptyWith k a => HasEmptyWith k (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: k -> Intersection a Source #

HasInsert x a => HasInsert x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: x -> Intersection a -> Intersection a Source #

HasDelete x a => HasDelete x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: x -> Intersection a -> Intersection a Source #

HasSingleton x a => HasSingleton x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: x -> Intersection a Source #

Eq a => Eq (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Ord a => Ord (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Show a => Show (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasIntersection s => Semigroup (Intersection s) Source # 
Instance details

Defined in Data.Set.Class

(HasIntersection s, HasTotal s) => Monoid (Intersection s) Source # 
Instance details

Defined in Data.Set.Class

HasIntersection s => Commutative (Intersection s) Source # 
Instance details

Defined in Data.Set.Class

(Commutative (Intersection s), HasTotal s) => CommutativeId (Intersection s) Source # 
Instance details

Defined in Data.Set.Class

Methods

cempty :: Intersection s #

CanBeProperSubset a => CanBeProperSubset (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

CanBeSubset a => CanBeSubset (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasSize a => HasSize (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Intersection a -> Int Source #

HasTotal a => HasTotal (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasEmpty a => HasEmpty (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasComplement a => HasComplement (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasDifference a => HasDifference (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasIntersection a => HasIntersection (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasUnion a => HasUnion (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Difference

class HasDifference s where Source #

Methods

difference :: s -> s -> s Source #

Instances
HasDifference IntSet Source # 
Instance details

Defined in Data.Set.Class

HasDifference (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

HasDifference (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: IntMap a -> IntMap a -> IntMap a Source #

Ord a => HasDifference (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: Set a -> Set a -> Set a Source #

(Hashable a, Eq a) => HasDifference (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: HashSet a -> HashSet a -> HashSet a Source #

Eq a => HasDifference (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: OMSet a -> OMSet a -> OMSet a Source #

Ord a => HasDifference (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Eq a => HasDifference (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: UMSet a -> UMSet a -> UMSet a Source #

Eq a => HasDifference (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: UUSet a -> UUSet a -> UUSet a Source #

HasDifference a => HasDifference (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: XUnion a -> XUnion a -> XUnion a Source #

HasDifference a => HasDifference (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasDifference a => HasDifference (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: Union a -> Union a -> Union a Source #

(Hashable k, Eq k) => HasDifference (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: HashMap k a -> HashMap k a -> HashMap k a Source #

Ord k => HasDifference (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: Map k a -> Map k a -> Map k a Source #

Ord k => HasDifference (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: SetWith k a -> SetWith k a -> SetWith k a Source #

(Ord k, Eq (c a), HasEmpty (c a), HasDifference (c a)) => HasDifference (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

difference :: SetsWith k c a -> SetsWith k c a -> SetsWith k c a Source #

(\\) :: HasDifference s => s -> s -> s Source #

Exclusive Union / Symmetric Difference

class HasXUnion s where Source #

Methods

xunion :: s -> s -> s Source #

Instances
(HasUnion s, HasIntersection s, HasDifference s) => HasXUnion s Source # 
Instance details

Defined in Data.Set.Class

Methods

xunion :: s -> s -> s Source #

xunions :: (Foldable f, Monoid (XUnion s)) => f s -> s Source #

xunions1 :: (Foldable1 f, Semigroup (XUnion s)) => f s -> s Source #

newtype XUnion a Source #

Constructors

XUnion 

Fields

Instances
Functor XUnion Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

Foldable XUnion Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

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

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

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

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

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

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

toList :: XUnion a -> [a] #

null :: XUnion a -> Bool #

length :: XUnion a -> Int #

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

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

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

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

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

Traversable XUnion Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

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

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

HasInsertWith k x a => HasInsertWith k x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> x -> XUnion a -> XUnion a Source #

HasSingletonWith k x a => HasSingletonWith k x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> x -> XUnion a Source #

HasTotalWith k a => HasTotalWith k (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

totalWith :: k -> XUnion a Source #

HasEmptyWith k a => HasEmptyWith k (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: k -> XUnion a Source #

HasInsert x a => HasInsert x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: x -> XUnion a -> XUnion a Source #

HasDelete x a => HasDelete x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: x -> XUnion a -> XUnion a Source #

HasSingleton x a => HasSingleton x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: x -> XUnion a Source #

Eq a => Eq (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

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

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

Ord a => Ord (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

compare :: XUnion a -> XUnion a -> Ordering #

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

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

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

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

max :: XUnion a -> XUnion a -> XUnion a #

min :: XUnion a -> XUnion a -> XUnion a #

Show a => Show (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

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

show :: XUnion a -> String #

showList :: [XUnion a] -> ShowS #

(HasXUnion s, HasUnion s, HasIntersection s, HasDifference s) => Semigroup (XUnion s) Source # 
Instance details

Defined in Data.Set.Class

Methods

(<>) :: XUnion s -> XUnion s -> XUnion s #

sconcat :: NonEmpty (XUnion s) -> XUnion s #

stimes :: Integral b => b -> XUnion s -> XUnion s #

(HasXUnion s, HasEmpty s, HasUnion s, HasIntersection s, HasDifference s) => Monoid (XUnion s) Source # 
Instance details

Defined in Data.Set.Class

Methods

mempty :: XUnion s #

mappend :: XUnion s -> XUnion s -> XUnion s #

mconcat :: [XUnion s] -> XUnion s #

(HasXUnion s, HasUnion s, HasIntersection s, HasDifference s) => Commutative (XUnion s) Source # 
Instance details

Defined in Data.Set.Class

Methods

commute :: XUnion s -> XUnion s -> XUnion s #

CanBeProperSubset a => CanBeProperSubset (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

CanBeSubset a => CanBeSubset (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: XUnion a -> XUnion a -> Bool Source #

HasSize a => HasSize (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: XUnion a -> Int Source #

HasTotal a => HasTotal (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

total :: XUnion a Source #

HasEmpty a => HasEmpty (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: XUnion a Source #

HasComplement a => HasComplement (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

complement :: XUnion a -> XUnion a Source #

HasDifference a => HasDifference (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

difference :: XUnion a -> XUnion a -> XUnion a Source #

HasIntersection a => HasIntersection (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

intersection :: XUnion a -> XUnion a -> XUnion a Source #

HasUnion a => HasUnion (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

union :: XUnion a -> XUnion a -> XUnion a Source #

Complement

class HasComplement s where Source #

Methods

complement :: s -> s Source #

Instances
HasComplement (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

Ord a => HasComplement (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

HasComplement a => HasComplement (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

complement :: XUnion a -> XUnion a Source #

HasComplement a => HasComplement (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasComplement a => HasComplement (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

complement :: Union a -> Union a Source #

Per-Element

class HasSingleton a s where Source #

Methods

singleton :: a -> s Source #

Instances
HasSingleton Key IntSet Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: Key -> IntSet Source #

HasSingleton a (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> UUSet a Source #

HasSingleton a (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> UMSet a Source #

HasSingleton a (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> OMSet a Source #

Eq a => HasSingleton a (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> Predicate a Source #

Hashable a => HasSingleton a (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> HashSet a Source #

HasSingleton a (Seq a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> Seq a Source #

HasSingleton a (Vector a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> Vector a Source #

HasSingleton a [a] Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> [a] Source #

HasSingleton a (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: a -> Set a Source #

HasSingleton x a => HasSingleton x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: x -> XUnion a Source #

HasSingleton x a => HasSingleton x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: x -> Intersection a Source #

HasSingleton x a => HasSingleton x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singleton :: x -> Union a Source #

class HasSingletonWith k a s where Source #

Methods

singletonWith :: k -> a -> s Source #

Instances
HasSingletonWith k x a => HasSingletonWith k x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> x -> XUnion a Source #

HasSingletonWith k x a => HasSingletonWith k x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> x -> Intersection a Source #

HasSingletonWith k x a => HasSingletonWith k x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> x -> Union a Source #

HasSingletonWith Key a (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: Key -> a -> IntMap a Source #

Hashable k => HasSingletonWith k a (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> a -> HashMap k a Source #

HasSingletonWith k a (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: k -> a -> Map k a Source #

HasSingletonWith (Set a) a (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: Set a -> a -> FiniteSet a Source #

Ord k => HasSingletonWith (a -> k) a (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

singletonWith :: (a -> k) -> a -> SetWith k a Source #

(Ord k, HasUnion (c a), HasSingleton a (c a)) => HasSingletonWith (a -> k) a (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

singletonWith :: (a -> k) -> a -> SetsWith k c a Source #

class HasDelete a s where Source #

Methods

delete :: a -> s -> s Source #

Instances
HasDelete Key IntSet Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: Key -> IntSet -> IntSet Source #

Ord a => HasDelete a (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> FiniteSet a -> FiniteSet a Source #

Eq a => HasDelete a (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> UUSet a -> UUSet a Source #

Eq a => HasDelete a (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> UMSet a -> UMSet a Source #

Eq a => HasDelete a (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> OMSet a -> OMSet a Source #

Eq a => HasDelete a (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> Predicate a -> Predicate a Source #

(Hashable a, Eq a) => HasDelete a (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> HashSet a -> HashSet a Source #

Eq a => HasDelete a (Vector a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> Vector a -> Vector a Source #

Eq a => HasDelete a [a] Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> [a] -> [a] Source #

Ord a => HasDelete a (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> Set a -> Set a Source #

HasDelete x a => HasDelete x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: x -> XUnion a -> XUnion a Source #

HasDelete x a => HasDelete x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: x -> Intersection a -> Intersection a Source #

HasDelete x a => HasDelete x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: x -> Union a -> Union a Source #

HasDelete Key (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: Key -> IntMap a -> IntMap a Source #

Ord k => HasDelete a (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: a -> SetWith k a -> SetWith k a Source #

(Hashable k, Eq k) => HasDelete k (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: k -> HashMap k a -> HashMap k a Source #

Ord k => HasDelete k (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

delete :: k -> Map k a -> Map k a Source #

(Ord k, Eq (c a), HasEmpty (c a), HasDelete a (c a)) => HasDelete a (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

delete :: a -> SetsWith k c a -> SetsWith k c a Source #

class HasInsert a s where Source #

Methods

insert :: a -> s -> s Source #

Instances
HasInsert Key IntSet Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: Key -> IntSet -> IntSet Source #

Ord a => HasInsert a (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> FiniteSet a -> FiniteSet a Source #

Eq a => HasInsert a (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> UUSet a -> UUSet a Source #

HasInsert a (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> UMSet a -> UMSet a Source #

Ord a => HasInsert a (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> OMSet a -> OMSet a Source #

Eq a => HasInsert a (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> Predicate a -> Predicate a Source #

(Hashable a, Eq a) => HasInsert a (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> HashSet a -> HashSet a Source #

HasInsert a (Vector a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> Vector a -> Vector a Source #

HasInsert a [a] Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> [a] -> [a] Source #

Ord a => HasInsert a (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> Set a -> Set a Source #

HasInsert x a => HasInsert x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: x -> XUnion a -> XUnion a Source #

HasInsert x a => HasInsert x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: x -> Intersection a -> Intersection a Source #

HasInsert x a => HasInsert x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: x -> Union a -> Union a Source #

Ord k => HasInsert a (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insert :: a -> SetWith k a -> SetWith k a Source #

(Ord k, HasUnion (c a), HasSingleton a (c a)) => HasInsert a (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

insert :: a -> SetsWith k c a -> SetsWith k c a Source #

class HasInsertWith k a s where Source #

Methods

insertWith :: k -> a -> s -> s Source #

Instances
HasInsertWith k x a => HasInsertWith k x (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> x -> XUnion a -> XUnion a Source #

HasInsertWith k x a => HasInsertWith k x (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> x -> Intersection a -> Intersection a Source #

HasInsertWith k x a => HasInsertWith k x (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> x -> Union a -> Union a Source #

HasInsertWith Key a (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: Key -> a -> IntMap a -> IntMap a Source #

(Hashable k, Eq k) => HasInsertWith k a (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> a -> HashMap k a -> HashMap k a Source #

Ord k => HasInsertWith k a (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

insertWith :: k -> a -> Map k a -> Map k a Source #

Top and Bottom Elements

class HasEmpty s where Source #

Methods

empty :: s Source #

Instances
HasEmpty IntSet Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: IntSet Source #

HasEmpty [a] Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: [a] Source #

HasEmpty (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: Predicate a Source #

HasEmpty (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: IntMap a Source #

HasEmpty (Seq a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: Seq a Source #

HasEmpty (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: Set a Source #

HasEmpty (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: HashSet a Source #

HasEmpty (Vector a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: Vector a Source #

HasEmpty (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: OMSet a Source #

HasEmpty (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: UMSet a Source #

HasEmpty (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: UUSet a Source #

HasEmpty a => HasEmpty (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: XUnion a Source #

HasEmpty a => HasEmpty (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasEmpty a => HasEmpty (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: Union a Source #

HasEmpty (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: HashMap k a Source #

HasEmpty (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

empty :: Map k a Source #

class HasEmptyWith k s where Source #

Methods

emptyWith :: k -> s Source #

Instances
HasEmptyWith k a => HasEmptyWith k (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: k -> XUnion a Source #

HasEmptyWith k a => HasEmptyWith k (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: k -> Intersection a Source #

HasEmptyWith k a => HasEmptyWith k (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: k -> Union a Source #

HasEmptyWith (Set a) (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: Set a -> FiniteSet a Source #

HasEmptyWith (a -> k) (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

emptyWith :: (a -> k) -> SetWith k a Source #

HasEmptyWith (a -> k) (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

emptyWith :: (a -> k) -> SetsWith k c a Source #

class HasTotal s where Source #

Methods

total :: s Source #

Instances
HasTotal (Predicate a) Source # 
Instance details

Defined in Data.Set.Class

Methods

total :: Predicate a Source #

HasTotal a => HasTotal (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

total :: XUnion a Source #

HasTotal a => HasTotal (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

HasTotal a => HasTotal (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

total :: Union a Source #

class HasTotalWith k s where Source #

Methods

totalWith :: k -> s Source #

Instances
HasTotalWith k a => HasTotalWith k (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

totalWith :: k -> XUnion a Source #

HasTotalWith k a => HasTotalWith k (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

totalWith :: k -> Intersection a Source #

HasTotalWith k a => HasTotalWith k (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

totalWith :: k -> Union a Source #

HasTotalWith (FiniteSet a) (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Size

class HasSize s where Source #

Methods

size :: s -> Int Source #

Instances
HasSize IntSet Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: IntSet -> Int Source #

HasSize [a] Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: [a] -> Int Source #

HasSize (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: IntMap a -> Int Source #

HasSize (Seq a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Seq a -> Int Source #

HasSize (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Set a -> Int Source #

HasSize (HashSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: HashSet a -> Int Source #

HasSize (Vector a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Vector a -> Int Source #

HasSize (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: OMSet a -> Int Source #

HasSize (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: FiniteSet a -> Int Source #

HasSize (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: UMSet a -> Int Source #

HasSize (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: UUSet a -> Int Source #

HasSize a => HasSize (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: XUnion a -> Int Source #

HasSize a => HasSize (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Intersection a -> Int Source #

HasSize a => HasSize (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Union a -> Int Source #

HasSize (HashMap k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: HashMap k a -> Int Source #

HasSize (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: Map k a -> Int Source #

HasSize (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

size :: SetWith k a -> Int Source #

HasSize (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

size :: SetsWith k c a -> Int Source #

Relation

class CanBeSubset s where Source #

Methods

isSubsetOf :: s -> s -> Bool Source #

Instances
CanBeSubset IntSet Source # 
Instance details

Defined in Data.Set.Class

Eq a => CanBeSubset (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: IntMap a -> IntMap a -> Bool Source #

Ord a => CanBeSubset (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: Set a -> Set a -> Bool Source #

Eq a => CanBeSubset (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: OMSet a -> OMSet a -> Bool Source #

Ord a => CanBeSubset (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Eq a => CanBeSubset (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: UMSet a -> UMSet a -> Bool Source #

Eq a => CanBeSubset (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: UUSet a -> UUSet a -> Bool Source #

CanBeSubset a => CanBeSubset (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: XUnion a -> XUnion a -> Bool Source #

CanBeSubset a => CanBeSubset (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

CanBeSubset a => CanBeSubset (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: Union a -> Union a -> Bool Source #

(Eq k, Ord k, Eq a) => CanBeSubset (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: Map k a -> Map k a -> Bool Source #

(Ord k, Eq a) => CanBeSubset (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isSubsetOf :: SetWith k a -> SetWith k a -> Bool Source #

(Ord k, Eq (c a), CanBeSubset (c a)) => CanBeSubset (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

isSubsetOf :: SetsWith k c a -> SetsWith k c a -> Bool Source #

class CanBeProperSubset s where Source #

Methods

isProperSubsetOf :: s -> s -> Bool Source #

Instances
CanBeProperSubset IntSet Source # 
Instance details

Defined in Data.Set.Class

Eq a => CanBeProperSubset (IntMap a) Source # 
Instance details

Defined in Data.Set.Class

Ord a => CanBeProperSubset (Set a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: Set a -> Set a -> Bool Source #

Eq a => CanBeProperSubset (OMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: OMSet a -> OMSet a -> Bool Source #

Ord a => CanBeProperSubset (FiniteSet a) Source # 
Instance details

Defined in Data.Set.Class

Eq a => CanBeProperSubset (UMSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: UMSet a -> UMSet a -> Bool Source #

Eq a => CanBeProperSubset (UUSet a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: UUSet a -> UUSet a -> Bool Source #

CanBeProperSubset a => CanBeProperSubset (XUnion a) Source # 
Instance details

Defined in Data.Set.Class

CanBeProperSubset a => CanBeProperSubset (Intersection a) Source # 
Instance details

Defined in Data.Set.Class

CanBeProperSubset a => CanBeProperSubset (Union a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: Union a -> Union a -> Bool Source #

(Eq k, Ord k, Eq a) => CanBeProperSubset (Map k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: Map k a -> Map k a -> Bool Source #

(Ord k, Eq a) => CanBeProperSubset (SetWith k a) Source # 
Instance details

Defined in Data.Set.Class

Methods

isProperSubsetOf :: SetWith k a -> SetWith k a -> Bool Source #

(Ord k, Eq (c a), CanBeSubset (c a)) => CanBeProperSubset (SetsWith k c a) Source # 
Instance details

Defined in Data.Set.Ordered.Many.With

Methods

isProperSubsetOf :: SetsWith k c a -> SetsWith k c a -> Bool Source #

Generic Builders

fromFoldable :: (Foldable f, HasInsert a s, HasEmpty s) => f a -> s Source #