llvm-hs-pretty-0.4.0.0: A pretty printer for LLVM IR.

Safe HaskellNone
LanguageHaskell2010

LLVM.Pretty

Synopsis

Documentation

class PP p where Source #

Minimal complete definition

pp

Methods

pp :: p -> Doc Source #

Instances

PP Bool Source # 

Methods

pp :: Bool -> Doc Source #

PP Int32 Source # 

Methods

pp :: Int32 -> Doc Source #

PP Int64 Source # 

Methods

pp :: Int64 -> Doc Source #

PP Integer Source # 

Methods

pp :: Integer -> Doc Source #

PP Word8 Source # 

Methods

pp :: Word8 -> Doc Source #

PP Word16 Source # 

Methods

pp :: Word16 -> Doc Source #

PP Word32 Source # 

Methods

pp :: Word32 -> Doc Source #

PP Word64 Source # 

Methods

pp :: Word64 -> Doc Source #

PP ShortByteString Source # 
PP Definition Source # 

Methods

pp :: Definition -> Doc Source #

PP Module Source # 

Methods

pp :: Module -> Doc Source #

PP DataLayout Source # 

Methods

pp :: DataLayout -> Doc Source #

PP Global Source # 

Methods

pp :: Global -> Doc Source #

PP Parameter Source # 

Methods

pp :: Parameter -> Doc Source #

PP BasicBlock Source # 

Methods

pp :: BasicBlock -> Doc Source #

PP UnnamedAddr Source # 

Methods

pp :: UnnamedAddr -> Doc Source #

PP InstructionMetadata Source # 
PP Terminator Source # 

Methods

pp :: Terminator -> Doc Source #

PP MemoryOrdering Source # 
PP SynchronizationScope Source # 
PP Atomicity Source # 

Methods

pp :: Atomicity -> Doc Source #

PP LandingPadClause Source # 
PP Instruction Source # 

Methods

pp :: Instruction -> Doc Source #

PP Operand Source # 

Methods

pp :: Operand -> Doc Source #

PP CallableOperand Source # 
PP Metadata Source # 

Methods

pp :: Metadata -> Doc Source #

PP MetadataNodeID Source # 
PP MDNode Source # 

Methods

pp :: MDNode -> Doc Source #

PP DILocation Source # 

Methods

pp :: DILocation -> Doc Source #

PP DIExpression Source # 

Methods

pp :: DIExpression -> Doc Source #

PP DIGlobalVariableExpression Source # 
PP DIFlag Source # 

Methods

pp :: DIFlag -> Doc Source #

PP DIMacroInfo Source # 

Methods

pp :: DIMacroInfo -> Doc Source #

PP DIMacroNode Source # 

Methods

pp :: DIMacroNode -> Doc Source #

PP DINode Source # 

Methods

pp :: DINode -> Doc Source #

PP DIObjCProperty Source # 
PP ImportedEntityTag Source # 
PP DIImportedEntity Source # 
PP DIEnumerator Source # 

Methods

pp :: DIEnumerator -> Doc Source #

PP DISubrange Source # 

Methods

pp :: DISubrange -> Doc Source #

PP DIScope Source # 

Methods

pp :: DIScope -> Doc Source #

PP DIModule Source # 

Methods

pp :: DIModule -> Doc Source #

PP DINamespace Source # 

Methods

pp :: DINamespace -> Doc Source #

PP DebugEmissionKind Source # 
PP DICompileUnit Source # 

Methods

pp :: DICompileUnit -> Doc Source #

PP DIFile Source # 

Methods

pp :: DIFile -> Doc Source #

PP ChecksumKind Source # 

Methods

pp :: ChecksumKind -> Doc Source #

PP DILocalScope Source # 

Methods

pp :: DILocalScope -> Doc Source #

PP DISubprogram Source # 

Methods

pp :: DISubprogram -> Doc Source #

PP BasicTypeTag Source # 

Methods

pp :: BasicTypeTag -> Doc Source #

PP DIType Source # 

Methods

pp :: DIType -> Doc Source #

PP DIBasicType Source # 

Methods

pp :: DIBasicType -> Doc Source #

PP DISubroutineType Source # 
PP DerivedTypeTag Source # 
PP DIDerivedType Source # 

Methods

pp :: DIDerivedType -> Doc Source #

PP DICompositeType Source # 
PP Encoding Source # 

Methods

pp :: Encoding -> Doc Source #

PP DITemplateParameter Source # 
PP DILexicalBlockBase Source # 
PP DIVariable Source # 

Methods

pp :: DIVariable -> Doc Source #

PP DIGlobalVariable Source # 
PP DILocalVariable Source # 
PP Constant Source # 

Methods

pp :: Constant -> Doc Source #

PP Type Source # 

Methods

pp :: Type -> Doc Source #

PP SelectionKind Source # 

Methods

pp :: SelectionKind -> Doc Source #

PP CallingConvention Source # 
PP FloatingPointPredicate Source # 
PP FunctionAttribute Source # 
PP GroupID Source # 

Methods

pp :: GroupID -> Doc Source #

PP IntegerPredicate Source # 
PP Linkage Source # 

Methods

pp :: Linkage -> Doc Source #

PP Name Source # 

Methods

pp :: Name -> Doc Source #

PP ParameterAttribute Source # 
PP RMWOperation Source # 

Methods

pp :: RMWOperation -> Doc Source #

PP [Char] Source # 

Methods

pp :: [Char] -> Doc Source #

PP [Either GroupID FunctionAttribute] Source # 
PP [ParameterAttribute] Source # 
PP a => PP (Named a) Source # 

Methods

pp :: Named a -> Doc Source #

PP a => PP (MDRef a) Source # 

Methods

pp :: MDRef a -> Doc Source #

PP (Either GroupID FunctionAttribute) Source # 
PP ([Parameter], Bool) Source # 

Methods

pp :: ([Parameter], Bool) -> Doc Source #

PP (Operand, [ParameterAttribute]) Source # 

ppllvm :: Module -> Text Source #

Pretty print a LLVM module

ppll :: PP a => a -> Text Source #

Pretty print a printable LLVM expression