llvm-hs-7.0.1: General purpose LLVM bindings

Safe HaskellNone
LanguageHaskell2010

LLVM.Internal.EncodeAST

Contents

Documentation

newtype EncodeAST a Source #

Constructors

EncodeAST 

Fields

Instances
Monad EncodeAST Source # 
Instance details

Defined in LLVM.Internal.EncodeAST

Methods

(>>=) :: EncodeAST a -> (a -> EncodeAST b) -> EncodeAST b #

(>>) :: EncodeAST a -> EncodeAST b -> EncodeAST b #

return :: a -> EncodeAST a #

fail :: String -> EncodeAST a #

Functor EncodeAST Source # 
Instance details

Defined in LLVM.Internal.EncodeAST

Methods

fmap :: (a -> b) -> EncodeAST a -> EncodeAST b #

(<$) :: a -> EncodeAST b -> EncodeAST a #

Applicative EncodeAST Source # 
Instance details

Defined in LLVM.Internal.EncodeAST

Methods

pure :: a -> EncodeAST a #

(<*>) :: EncodeAST (a -> b) -> EncodeAST a -> EncodeAST b #

liftA2 :: (a -> b -> c) -> EncodeAST a -> EncodeAST b -> EncodeAST c #

(*>) :: EncodeAST a -> EncodeAST b -> EncodeAST b #

(<*) :: EncodeAST a -> EncodeAST b -> EncodeAST a #

MonadIO EncodeAST Source # 
Instance details

Defined in LLVM.Internal.EncodeAST

Methods

liftIO :: IO a -> EncodeAST a #

MonadThrow EncodeAST Source # 
Instance details

Defined in LLVM.Internal.EncodeAST

Methods

throwM :: Exception e => e -> EncodeAST a #

MonadState EncodeState EncodeAST Source # 
Instance details

Defined in LLVM.Internal.EncodeAST

EncodeM EncodeAST ShortByteString MDKindID Source # 
Instance details

Defined in LLVM.Internal.Metadata

EncodeM EncodeAST FastMathFlags () Source # 
Instance details

Defined in LLVM.Internal.FastMathFlags

EncodeM EncodeAST AttributeList AttributeList Source # 
Instance details

Defined in LLVM.Internal.Attribute

EncodeM EncodeAST ShortByteString (Ptr MDString) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST Terminator (Ptr Instruction) Source # 
Instance details

Defined in LLVM.Internal.Instruction

EncodeM EncodeAST Operand (Ptr Value) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST CallableOperand (Ptr Value) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST Metadata (Ptr Metadata) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST MDNode (Ptr MDNode) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DILocation (Ptr DILocation) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIExpression (Ptr DIExpression) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIGlobalVariableExpression (Ptr DIGlobalVariableExpression) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIMacroNode (Ptr DIMacroNode) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DINode (Ptr DINode) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIObjCProperty (Ptr DIObjCProperty) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIImportedEntity (Ptr DIImportedEntity) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIEnumerator (Ptr DIEnumerator) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DISubrange (Ptr DISubrange) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIScope (Ptr DIScope) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIModule (Ptr DIModule) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DINamespace (Ptr DINamespace) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DICompileUnit (Ptr DICompileUnit) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIFile (Ptr DIFile) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DILocalScope (Ptr DILocalScope) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DISubprogram (Ptr DISubprogram) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIType (Ptr DIType) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIBasicType (Ptr DIBasicType) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DISubroutineType (Ptr DISubroutineType) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIDerivedType (Ptr DIDerivedType) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DICompositeType (Ptr DICompositeType) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DITemplateParameter (Ptr DITemplateParameter) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DILexicalBlockBase (Ptr DILexicalBlockBase) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIVariable (Ptr DIVariable) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DIGlobalVariable (Ptr DIGlobalVariable) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST DILocalVariable (Ptr DILocalVariable) Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST Constant (Ptr Constant) Source # 
Instance details

Defined in LLVM.Internal.Constant

EncodeM EncodeAST InlineAssembly (Ptr InlineAsm) Source # 
Instance details

Defined in LLVM.Internal.InlineAssembly

EncodeM EncodeAST Type (Ptr Type) Source # 
Instance details

Defined in LLVM.Internal.Type

EncodeM EncodeAST Name (Ptr BasicBlock) Source # 
Instance details

Defined in LLVM.Internal.EncodeAST

Monad m => EncodeM m FunctionAttribute (Ptr FunctionAttrBuilder -> EncodeAST ()) Source # 
Instance details

Defined in LLVM.Internal.Attribute

Monad m => EncodeM m ParameterAttribute (Ptr ParameterAttrBuilder -> EncodeAST ()) Source # 
Instance details

Defined in LLVM.Internal.Attribute

EncodeM EncodeAST Instruction (Ptr Instruction, EncodeAST ()) Source # 
Instance details

Defined in LLVM.Internal.Instruction

EncodeM EncodeAST [Either GroupID FunctionAttribute] FunctionAttributeSet Source # 
Instance details

Defined in LLVM.Internal.Attribute

EncodeM EncodeAST (Maybe Encoding) Encoding Source # 
Instance details

Defined in LLVM.Internal.Operand

EncodeM EncodeAST a (Ptr (AttrBuilder b) -> EncodeAST ()) => EncodeM EncodeAST [a] (AttributeSet b) Source # 
Instance details

Defined in LLVM.Internal.Attribute

Methods

encodeM :: [a] -> EncodeAST (AttributeSet b) Source #

(EncodeM EncodeAST a (Ptr Instruction, EncodeAST ()), Show a) => EncodeM EncodeAST (Named a) (EncodeAST ()) Source # 
Instance details

Defined in LLVM.Internal.Instruction

Methods

encodeM :: Named a -> EncodeAST (EncodeAST ()) Source #

(EncodeM EncodeAST a (Ptr Instruction), Show a) => EncodeM EncodeAST (Named a) (Ptr Instruction) Source # 
Instance details

Defined in LLVM.Internal.Instruction

(EncodeM EncodeAST a (Ptr b), DescendentOf MDNode b) => EncodeM EncodeAST (MDRef a) (Ptr b) Source # 
Instance details

Defined in LLVM.Internal.Operand

Methods

encodeM :: MDRef a -> EncodeAST (Ptr b) Source #

withName :: Name -> (CString -> IO a) -> IO a Source #

refer :: (Show n, Ord n) => (EncodeState -> Map n v) -> n -> EncodeAST v -> EncodeAST v Source #

referOrThrow :: (Show n, Ord n) => (EncodeState -> Map n v) -> String -> n -> EncodeAST v Source #

Orphan instances

MonadAnyCont IO m => EncodeM m Name CString Source # 
Instance details

Methods

encodeM :: Name -> m CString Source #