llvm-hs-6.3.0: General purpose LLVM bindings

Safe HaskellSafe
LanguageHaskell2010

LLVM.Internal.FFI.PtrHierarchy

Description

This module defines typeclasses to represent the relationships of an object-oriented inheritance hierarchy

Synopsis

Documentation

class DescendentOf a b where Source #

a class to represent safe casting of pointers to objects of descendant-classes to ancestor-classes.

Methods

upCast :: Ptr b -> Ptr a Source #

Instances
(DescendentOf a b, ChildOf b c) => DescendentOf a c Source #

ancestor-descentant relationships are build out of parent-child relationships

Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

Methods

upCast :: Ptr c -> Ptr a Source #

DescendentOf a a Source #

trivial casts

Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

Methods

upCast :: Ptr a -> Ptr a Source #

class ChildOf b c | c -> b Source #

a class to represent direct parent-child relationships

Instances
ChildOf RawOStream RawPWriteStream Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Metadata MDValue Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Metadata MDString Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Metadata MDNode Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIMacroNode DIMacroFile Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIMacroNode DIMacro Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DILexicalBlockBase DILexicalBlockFile Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DILexicalBlockBase DILexicalBlock Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DILocalScope DISubprogram Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DILocalScope DILexicalBlockBase Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIType DICompositeType Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIType DISubroutineType Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIType DIDerivedType Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIType DIBasicType Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIScope DILocalScope Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIScope DIType Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIScope DICompileUnit Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIScope DIFile Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIScope DINamespace Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIScope DIModule Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DITemplateParameter DITemplateValueParameter Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DITemplateParameter DITemplateTypeParameter Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIVariable DIGlobalVariable Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DIVariable DILocalVariable Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DINode DIScope Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DINode DITemplateParameter Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DINode DIVariable Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DINode DIEnumerator Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DINode DISubrange Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DINode DIObjCProperty Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf DINode DIImportedEntity Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf MDNode DIMacroNode Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf MDNode DINode Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf MDNode DILocation Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf MDNode DIGlobalVariableExpression Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf MDNode DIExpression Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf MDNode MDTuple Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf User Instruction Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf User Constant Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Instruction BinaryOperator Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf GlobalObject Function Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf GlobalObject GlobalVariable Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf GlobalValue GlobalAlias Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf GlobalValue GlobalObject Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Constant GlobalValue Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Value MetadataAsVal Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Value InlineAsm Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Value User Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Value Parameter Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf Value BasicBlock Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy

ChildOf LinkingLayer ObjectLinkingLayer Source # 
Instance details

Defined in LLVM.Internal.FFI.OrcJIT.LinkingLayer

ChildOf CompileLayer IRTransformLayer Source # 
Instance details

Defined in LLVM.Internal.FFI.OrcJIT.IRTransformLayer

ChildOf CompileLayer IRCompileLayer Source # 
Instance details

Defined in LLVM.Internal.FFI.OrcJIT.IRCompileLayer

ChildOf CompileLayer CompileOnDemandLayer Source # 
Instance details

Defined in LLVM.Internal.FFI.OrcJIT.CompileOnDemandLayer

data MDTuple Source #

Instances
ChildOf MDNode MDTuple Source # 
Instance details

Defined in LLVM.Internal.FFI.PtrHierarchy