Hoopl.Collections

ghc-8.4.1: The GHC API

Safe Haskell | Safe
Language | Haskell2010

Hoopl.Collections

# Documentation

class IsSet set where Source #

Minimal complete definition

setNull, setSize, setMember, setEmpty, setSingleton, setInsert, setDelete, setUnion, setDifference, setIntersection, setIsSubsetOf, setFold, setElems, setFromList

Associated Types

type ElemOf set Source #

Methods

setNull :: set -> Bool Source #

setSize :: set -> Int Source #

setMember :: ElemOf set -> set -> Bool Source #

setEmpty :: set Source #

setSingleton :: ElemOf set -> set Source #

setInsert :: ElemOf set -> set -> set Source #

setDelete :: ElemOf set -> set -> set Source #

setUnion :: set -> set -> set Source #

setDifference :: set -> set -> set Source #

setIntersection :: set -> set -> set Source #

setIsSubsetOf :: set -> set -> Bool Source #

setFold :: (ElemOf set -> b -> b) -> b -> set -> b Source #

setElems :: set -> [ElemOf set] Source #

setFromList :: [ElemOf set] -> set Source #

Instances

IsSet UniqueSet Source # |
Instance details Associated Types type ElemOf UniqueSet :: * Source # Methods setNull :: UniqueSet -> Bool Source # setSize :: UniqueSet -> Int Source # setMember :: ElemOf UniqueSet -> UniqueSet -> Bool Source # setEmpty :: UniqueSet Source # setSingleton :: ElemOf UniqueSet -> UniqueSet Source # setInsert :: ElemOf UniqueSet -> UniqueSet -> UniqueSet Source # setDelete :: ElemOf UniqueSet -> UniqueSet -> UniqueSet Source # setUnion :: UniqueSet -> UniqueSet -> UniqueSet Source # setDifference :: UniqueSet -> UniqueSet -> UniqueSet Source # setIntersection :: UniqueSet -> UniqueSet -> UniqueSet Source # setIsSubsetOf :: UniqueSet -> UniqueSet -> Bool Source # setFold :: (ElemOf UniqueSet -> b -> b) -> b -> UniqueSet -> b Source # setElems :: UniqueSet -> [ElemOf UniqueSet] Source # setFromList :: [ElemOf UniqueSet] -> UniqueSet Source #
IsSet LabelSet Source # |
Instance details Associated Types type ElemOf LabelSet :: * Source # Methods setNull :: LabelSet -> Bool Source # setSize :: LabelSet -> Int Source # setMember :: ElemOf LabelSet -> LabelSet -> Bool Source # setEmpty :: LabelSet Source # setSingleton :: ElemOf LabelSet -> LabelSet Source # setInsert :: ElemOf LabelSet -> LabelSet -> LabelSet Source # setDelete :: ElemOf LabelSet -> LabelSet -> LabelSet Source # setUnion :: LabelSet -> LabelSet -> LabelSet Source # setDifference :: LabelSet -> LabelSet -> LabelSet Source # setIntersection :: LabelSet -> LabelSet -> LabelSet Source # setIsSubsetOf :: LabelSet -> LabelSet -> Bool Source # setFold :: (ElemOf LabelSet -> b -> b) -> b -> LabelSet -> b Source # setElems :: LabelSet -> [ElemOf LabelSet] Source # setFromList :: [ElemOf LabelSet] -> LabelSet Source #

setInsertList :: IsSet set => [ElemOf set] -> set -> set Source #

setDeleteList :: IsSet set => [ElemOf set] -> set -> set Source #

setUnions :: IsSet set => [set] -> set Source #

class IsMap map where Source #

Minimal complete definition

mapNull, mapSize, mapMember, mapLookup, mapFindWithDefault, mapEmpty, mapSingleton, mapInsert, mapInsertWith, mapDelete, mapUnion, mapUnionWithKey, mapDifference, mapIntersection, mapIsSubmapOf, mapMap, mapMapWithKey, mapFold, mapFoldWithKey, mapFilter, mapElems, mapKeys, mapToList, mapFromList, mapFromListWith

Associated Types

type KeyOf map Source #

Methods

mapNull :: map a -> Bool Source #

mapSize :: map a -> Int Source #

mapMember :: KeyOf map -> map a -> Bool Source #

mapLookup :: KeyOf map -> map a -> Maybe a Source #

mapFindWithDefault :: a -> KeyOf map -> map a -> a Source #

mapEmpty :: map a Source #

mapSingleton :: KeyOf map -> a -> map a Source #

mapInsert :: KeyOf map -> a -> map a -> map a Source #

mapInsertWith :: (a -> a -> a) -> KeyOf map -> a -> map a -> map a Source #

mapDelete :: KeyOf map -> map a -> map a Source #

mapUnion :: map a -> map a -> map a Source #

mapUnionWithKey :: (KeyOf map -> a -> a -> a) -> map a -> map a -> map a Source #

mapDifference :: map a -> map a -> map a Source #

mapIntersection :: map a -> map a -> map a Source #

mapIsSubmapOf :: Eq a => map a -> map a -> Bool Source #

mapMap :: (a -> b) -> map a -> map b Source #

mapMapWithKey :: (KeyOf map -> a -> b) -> map a -> map b Source #

mapFold :: (a -> b -> b) -> b -> map a -> b Source #

mapFoldWithKey :: (KeyOf map -> a -> b -> b) -> b -> map a -> b Source #

mapFilter :: (a -> Bool) -> map a -> map a Source #

mapElems :: map a -> [a] Source #

mapKeys :: map a -> [KeyOf map] Source #

mapToList :: map a -> [(KeyOf map, a)] Source #

mapFromList :: [(KeyOf map, a)] -> map a Source #

mapFromListWith :: (a -> a -> a) -> [(KeyOf map, a)] -> map a Source #

Instances

IsMap UniqueMap Source # |
Instance details Associated Types type KeyOf UniqueMap :: * Source # Methods mapNull :: UniqueMap a -> Bool Source # mapSize :: UniqueMap a -> Int Source # mapMember :: KeyOf UniqueMap -> UniqueMap a -> Bool Source # mapLookup :: KeyOf UniqueMap -> UniqueMap a -> Maybe a Source # mapFindWithDefault :: a -> KeyOf UniqueMap -> UniqueMap a -> a Source # mapEmpty :: UniqueMap a Source # mapSingleton :: KeyOf UniqueMap -> a -> UniqueMap a Source # mapInsert :: KeyOf UniqueMap -> a -> UniqueMap a -> UniqueMap a Source # mapInsertWith :: (a -> a -> a) -> KeyOf UniqueMap -> a -> UniqueMap a -> UniqueMap a Source # mapDelete :: KeyOf UniqueMap -> UniqueMap a -> UniqueMap a Source # mapUnion :: UniqueMap a -> UniqueMap a -> UniqueMap a Source # mapUnionWithKey :: (KeyOf UniqueMap -> a -> a -> a) -> UniqueMap a -> UniqueMap a -> UniqueMap a Source # mapDifference :: UniqueMap a -> UniqueMap a -> UniqueMap a Source # mapIntersection :: UniqueMap a -> UniqueMap a -> UniqueMap a Source # mapIsSubmapOf :: Eq a => UniqueMap a -> UniqueMap a -> Bool Source # mapMap :: (a -> b) -> UniqueMap a -> UniqueMap b Source # mapMapWithKey :: (KeyOf UniqueMap -> a -> b) -> UniqueMap a -> UniqueMap b Source # mapFold :: (a -> b -> b) -> b -> UniqueMap a -> b Source # mapFoldWithKey :: (KeyOf UniqueMap -> a -> b -> b) -> b -> UniqueMap a -> b Source # mapFilter :: (a -> Bool) -> UniqueMap a -> UniqueMap a Source # mapElems :: UniqueMap a -> [a] Source # mapKeys :: UniqueMap a -> [KeyOf UniqueMap] Source # mapToList :: UniqueMap a -> [(KeyOf UniqueMap, a)] Source # mapFromList :: [(KeyOf UniqueMap, a)] -> UniqueMap a Source # mapFromListWith :: (a -> a -> a) -> [(KeyOf UniqueMap, a)] -> UniqueMap a Source #
IsMap LabelMap Source # |
Instance details Associated Types type KeyOf LabelMap :: * Source # Methods mapNull :: LabelMap a -> Bool Source # mapSize :: LabelMap a -> Int Source # mapMember :: KeyOf LabelMap -> LabelMap a -> Bool Source # mapLookup :: KeyOf LabelMap -> LabelMap a -> Maybe a Source # mapFindWithDefault :: a -> KeyOf LabelMap -> LabelMap a -> a Source # mapEmpty :: LabelMap a Source # mapSingleton :: KeyOf LabelMap -> a -> LabelMap a Source # mapInsert :: KeyOf LabelMap -> a -> LabelMap a -> LabelMap a Source # mapInsertWith :: (a -> a -> a) -> KeyOf LabelMap -> a -> LabelMap a -> LabelMap a Source # mapDelete :: KeyOf LabelMap -> LabelMap a -> LabelMap a Source # mapUnion :: LabelMap a -> LabelMap a -> LabelMap a Source # mapUnionWithKey :: (KeyOf LabelMap -> a -> a -> a) -> LabelMap a -> LabelMap a -> LabelMap a Source # mapDifference :: LabelMap a -> LabelMap a -> LabelMap a Source # mapIntersection :: LabelMap a -> LabelMap a -> LabelMap a Source # mapIsSubmapOf :: Eq a => LabelMap a -> LabelMap a -> Bool Source # mapMap :: (a -> b) -> LabelMap a -> LabelMap b Source # mapMapWithKey :: (KeyOf LabelMap -> a -> b) -> LabelMap a -> LabelMap b Source # mapFold :: (a -> b -> b) -> b -> LabelMap a -> b Source # mapFoldWithKey :: (KeyOf LabelMap -> a -> b -> b) -> b -> LabelMap a -> b Source # mapFilter :: (a -> Bool) -> LabelMap a -> LabelMap a Source # mapElems :: LabelMap a -> [a] Source # mapKeys :: LabelMap a -> [KeyOf LabelMap] Source # mapToList :: LabelMap a -> [(KeyOf LabelMap, a)] Source # mapFromList :: [(KeyOf LabelMap, a)] -> LabelMap a Source # mapFromListWith :: (a -> a -> a) -> [(KeyOf LabelMap, a)] -> LabelMap a Source #

mapInsertList :: IsMap map => [(KeyOf map, a)] -> map a -> map a Source #

mapDeleteList :: IsMap map => [KeyOf map] -> map a -> map a Source #

mapUnions :: IsMap map => [map a] -> map a Source #