Module

Data.HashSet.Multi

Package
purescript-multiset-hashed
Repository
colehaus/purescript-multiset-hashed

#empty Source

empty :: forall a. MultiSet a

#singleton Source

singleton :: forall a. Hashable a => a -> MultiSet a

#insert Source

insert :: forall a. Hashable a => a -> MultiSet a -> MultiSet a

#insertN Source

insertN :: forall a. Hashable a => Natural -> a -> MultiSet a -> MultiSet a

#member Source

member :: forall a. Hashable a => a -> MultiSet a -> Boolean

#count Source

count :: forall a. Hashable a => a -> MultiSet a -> Natural

#delete Source

delete :: forall a. Hashable a => a -> MultiSet a -> MultiSet a

#fromFoldable Source

fromFoldable :: forall a f. Foldable f => Hashable a => f a -> MultiSet a

#fromFoldableWithCounts Source

fromFoldableWithCounts :: forall a f. Foldable f => Hashable a => f (Tuple a Natural) -> MultiSet a

#toRepeatingArray Source

toRepeatingArray :: forall a. MultiSet a -> Array a

#toArray Source

toArray :: forall a. MultiSet a -> Array (Tuple a Natural)

#toSet Source

toSet :: forall a. MultiSet a -> HashSet a

#map Source

map :: forall b a. Hashable b => (a -> b) -> MultiSet a -> MultiSet b

#mapWithCount Source

mapWithCount :: forall b a. Hashable b => (a -> Natural -> b) -> MultiSet a -> MultiSet b

#filter Source

filter :: forall a. (a -> Boolean) -> MultiSet a -> MultiSet a

#filterWithCount Source

filterWithCount :: forall a. (a -> Natural -> Boolean) -> MultiSet a -> MultiSet a

#union Source

union :: forall a. Hashable a => MultiSet a -> MultiSet a -> MultiSet a

#intersection Source

intersection :: forall a. Hashable a => MultiSet a -> MultiSet a -> MultiSet a

#difference Source

difference :: forall a. Hashable a => MultiSet a -> MultiSet a -> MultiSet a

#size Source

size :: forall a. MultiSet a -> Natural

#isEmpty Source

isEmpty :: forall a. MultiSet a -> Boolean