ghc-9.6.3: The GHC API

Safe Haskell | Safe-Inferred
Language | Haskell2010

GHC.Cmm.Dataflow.Label

# Documentation

data Label Source #

#### Instances

Instances details

Show Label Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods showsPrec :: Int -> Label -> ShowS Source # show :: Label -> String Source # showList :: [Label] -> ShowS Source #
Uniquable Label Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods getUnique :: Label -> Unique Source #
Outputable Label Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods ppr :: Label -> SDoc Source #
Eq Label Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods (==) :: Label -> Label -> Bool # (/=) :: Label -> Label -> Bool #
Ord Label Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods compare :: Label -> Label -> Ordering # (<) :: Label -> Label -> Bool # (<=) :: Label -> Label -> Bool # (>) :: Label -> Label -> Bool # (>=) :: Label -> Label -> Bool # max :: Label -> Label -> Label # min :: Label -> Label -> Label #
OutputableP env Label Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods pdoc :: env -> Label -> SDoc Source #

data LabelMap v Source #

#### Instances

Instances details

Foldable LabelMap Source # |

Instance details

Defined in GHC.Cmm.Dataflow.Label

Methods

fold :: Monoid m => LabelMap m -> m Source #

foldMap :: Monoid m => (a -> m) -> LabelMap a -> m Source #

foldMap' :: Monoid m => (a -> m) -> LabelMap a -> m Source #

foldr :: (a -> b -> b) -> b -> LabelMap a -> b Source #

foldr' :: (a -> b -> b) -> b -> LabelMap a -> b Source #

foldl :: (b -> a -> b) -> b -> LabelMap a -> b Source #

foldl' :: (b -> a -> b) -> b -> LabelMap a -> b Source #

foldr1 :: (a -> a -> a) -> LabelMap a -> a Source #

foldl1 :: (a -> a -> a) -> LabelMap a -> a Source #

toList :: LabelMap a -> [a] Source #

null :: LabelMap a -> Bool Source #

length :: LabelMap a -> Int Source #

elem :: Eq a => a -> LabelMap a -> Bool Source #

maximum :: Ord a => LabelMap a -> a Source #

minimum :: Ord a => LabelMap a -> a Source #

sum :: Num a => LabelMap a -> a Source #

product :: Num a => LabelMap a -> a Source #

Traversable LabelMap Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods traverse :: Applicative f => (a -> f b) -> LabelMap a -> f (LabelMap b) Source # sequenceA :: Applicative f => LabelMap (f a) -> f (LabelMap a) Source # mapM :: Monad m => (a -> m b) -> LabelMap a -> m (LabelMap b) Source # sequence :: Monad m => LabelMap (m a) -> m (LabelMap a) Source #
Functor LabelMap Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods fmap :: (a -> b) -> LabelMap a -> LabelMap b Source # (<$) :: a -> LabelMap b -> LabelMap a Source #
IsMap LabelMap Source # |

Instance details

Defined in GHC.Cmm.Dataflow.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 #

mapAlter :: (Maybe a -> Maybe a) -> KeyOf LabelMap -> LabelMap a -> LabelMap a Source #

mapAdjust :: (a -> a) -> 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 #

mapFoldl :: (b -> a -> b) -> b -> LabelMap a -> b Source #

mapFoldr :: (a -> b -> b) -> b -> LabelMap a -> b Source #

mapFoldlWithKey :: (b -> KeyOf LabelMap -> a -> b) -> b -> LabelMap a -> b Source #

mapFoldMapWithKey :: Monoid m => (KeyOf LabelMap -> a -> m) -> LabelMap a -> m Source #

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

mapFilterWithKey :: (KeyOf LabelMap -> 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 #

TrieMap LabelMap Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Associated Types type Key LabelMap Source # Methods emptyTM :: LabelMap a Source # lookupTM :: Key LabelMap -> LabelMap b -> Maybe b Source # alterTM :: Key LabelMap -> XT b -> LabelMap b -> LabelMap b Source # filterTM :: (a -> Bool) -> LabelMap a -> LabelMap a Source # foldTM :: (a -> b -> b) -> LabelMap a -> b -> b Source #
OutputableP env a => OutputableP env (LabelMap a) Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods pdoc :: env -> LabelMap a -> SDoc Source #
Show v => Show (LabelMap v) Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods showsPrec :: Int -> LabelMap v -> ShowS Source # show :: LabelMap v -> String Source # showList :: [LabelMap v] -> ShowS Source #
Outputable a => Outputable (LabelMap a) Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods ppr :: LabelMap a -> SDoc Source #
Eq v => Eq (LabelMap v) Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods (==) :: LabelMap v -> LabelMap v -> Bool # (/=) :: LabelMap v -> LabelMap v -> Bool #
Ord v => Ord (LabelMap v) Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods compare :: LabelMap v -> LabelMap v -> Ordering # (<) :: LabelMap v -> LabelMap v -> Bool # (<=) :: LabelMap v -> LabelMap v -> Bool # (>) :: LabelMap v -> LabelMap v -> Bool # (>=) :: LabelMap v -> LabelMap v -> Bool # max :: LabelMap v -> LabelMap v -> LabelMap v # min :: LabelMap v -> LabelMap v -> LabelMap v #
type KeyOf LabelMap Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label type KeyOf LabelMap = Label
type Key LabelMap Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label type Key LabelMap = Label

data LabelSet Source #

#### Instances

Instances details

Monoid LabelSet Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods mempty :: LabelSet Source # mappend :: LabelSet -> LabelSet -> LabelSet Source # mconcat :: [LabelSet] -> LabelSet Source #
Semigroup LabelSet Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods (<>) :: LabelSet -> LabelSet -> LabelSet Source # sconcat :: NonEmpty LabelSet -> LabelSet Source # stimes :: Integral b => b -> LabelSet -> LabelSet Source #
Show LabelSet Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods showsPrec :: Int -> LabelSet -> ShowS Source # show :: LabelSet -> String Source # showList :: [LabelSet] -> ShowS Source #
IsSet LabelSet Source # |

Instance details

Defined in GHC.Cmm.Dataflow.Label

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 #

setFilter :: (ElemOf LabelSet -> Bool) -> LabelSet -> LabelSet Source #

setFoldl :: (b -> ElemOf LabelSet -> b) -> b -> LabelSet -> b Source #

setFoldr :: (ElemOf LabelSet -> b -> b) -> b -> LabelSet -> b Source #

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

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

Outputable LabelSet Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods ppr :: LabelSet -> SDoc Source #
Eq LabelSet Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods (==) :: LabelSet -> LabelSet -> Bool # (/=) :: LabelSet -> LabelSet -> Bool #
Ord LabelSet Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods compare :: LabelSet -> LabelSet -> Ordering # (<) :: LabelSet -> LabelSet -> Bool # (<=) :: LabelSet -> LabelSet -> Bool # (>) :: LabelSet -> LabelSet -> Bool # (>=) :: LabelSet -> LabelSet -> Bool # max :: LabelSet -> LabelSet -> LabelSet # min :: LabelSet -> LabelSet -> LabelSet #
type ElemOf LabelSet Source # |
Instance details Defined in GHC.Cmm.Dataflow.Label type ElemOf LabelSet = Label

type FactBase f = LabelMap f Source #

lookupFact :: Label -> FactBase f -> Maybe f Source #

mkHooplLabel :: Int -> Label Source #