llvm-pretty-0.11.0: A pretty printing library inspired by the llvm binding.

Safe HaskellNone
LanguageHaskell2010

Text.LLVM.Labels

Documentation

class Functor f => HasLabel f where Source #

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> f a -> m (f b) Source #

Given a function for resolving labels, where the presence of a symbol denotes a label in a different function, rename all labels in a function.

Instances
HasLabel DISubroutineType' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DISubroutineType' a -> m (DISubroutineType' b) Source #

HasLabel DISubprogram' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DISubprogram' a -> m (DISubprogram' b) Source #

HasLabel DILocalVariable' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DILocalVariable' a -> m (DILocalVariable' b) Source #

HasLabel DILexicalBlockFile' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DILexicalBlockFile' a -> m (DILexicalBlockFile' b) Source #

HasLabel DILexicalBlock' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DILexicalBlock' a -> m (DILexicalBlock' b) Source #

HasLabel DIGlobalVariableExpression' Source # 
Instance details

Defined in Text.LLVM.Labels

HasLabel DIGlobalVariable' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIGlobalVariable' a -> m (DIGlobalVariable' b) Source #

HasLabel DIDerivedType' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIDerivedType' a -> m (DIDerivedType' b) Source #

HasLabel DICompositeType' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DICompositeType' a -> m (DICompositeType' b) Source #

HasLabel DICompileUnit' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DICompileUnit' a -> m (DICompileUnit' b) Source #

HasLabel DINameSpace' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DINameSpace' a -> m (DINameSpace' b) Source #

HasLabel DITemplateValueParameter' Source # 
Instance details

Defined in Text.LLVM.Labels

HasLabel DITemplateTypeParameter' Source # 
Instance details

Defined in Text.LLVM.Labels

HasLabel DIImportedEntity' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DIImportedEntity' a -> m (DIImportedEntity' b) Source #

HasLabel DILabel' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DILabel' a -> m (DILabel' b) Source #

HasLabel DebugInfo' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DebugInfo' a -> m (DebugInfo' b) Source #

HasLabel ConstExpr' Source #

Clever instance that actually uses the block name

Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> ConstExpr' a -> m (ConstExpr' b) Source #

HasLabel Stmt' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> Stmt' a -> m (Stmt' b) Source #

HasLabel DebugLoc' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> DebugLoc' a -> m (DebugLoc' b) Source #

HasLabel ValMd' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> ValMd' a -> m (ValMd' b) Source #

HasLabel Value' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> Value' a -> m (Value' b) Source #

HasLabel Clause' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> Clause' a -> m (Clause' b) Source #

HasLabel Instr' Source # 
Instance details

Defined in Text.LLVM.Labels

Methods

relabel :: Applicative m => (Maybe Symbol -> a -> m b) -> Instr' a -> m (Instr' b) Source #