Table of Contents

Namespace Ubiquity.NET.Llvm.Types

This namespace contains the support for native types in this library. Of particular interest is the use of an interface ITypeRef for consumption of types. This is done to allow consumption of a type with debugging information attached or just a native LLVM type in the same manner. This is a very useful convenience for code generation that also helps to solve the "type tracking of pointers" to support the new LLVM opaque pointer model.

Classes

PointerTypeExtensions

Utility class to provide extensions for IPointerType

Interfaces

IArrayType

Interface for an LLVM array type

IFunctionType

Interface to represent the LLVM type of a function (e.g. a signature)

INamedStructuralType

Interface for a named type with members

IPointerType

Interface for a pointer type in LLVM

ISequenceType

Interface for an LLVM sequence type

IStructType

Interface for an LLVM structure type

ITypeRef

Interface for a Type in LLVM

IVectorType

Interface for an LLVM vector type

Enums

TypeKind

Basic kind of a type