ghc-8.4.1.20180329: The GHC API

Safe HaskellSafe
LanguageHaskell2010

Hoopl.Collections

Documentation

class IsSet set where Source #

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

Defined in Hoopl.Unique

Associated Types

type ElemOf UniqueSet :: * Source #

IsSet LabelSet Source # 
Instance details

Defined in Hoopl.Label

Associated Types

type ElemOf 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 #

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

Defined in Hoopl.Unique

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

Defined in Hoopl.Label

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 #