Table of Contents

Class DebugBasicType

Namespace
Ubiquity.NET.Llvm.DebugInfo
Assembly
Ubiquity.NET.Llvm.dll

Debug information binding between an LLVM native ITypeRef and a DIBasicType

public class DebugBasicType : DebugType<ITypeRef, DIBasicType>, IDebugType<ITypeRef, DIBasicType>, ITypeRef, IEquatable<ITypeRef>, IEquatable<ITypeHandleOwner>
Inheritance
DebugBasicType
Implements
IEquatable<ITypeHandleOwner>
Inherited Members
Extension Methods

Remarks

This class provides a binding between an LLVM type and a corresponding DIBasicType. In LLVM all primitive types are unnamed and interned. That is, any use of an i8 is always the same type. However, at the source language level it is common to have named primitive types that map to the same underlying LLVM. For example, in C and C++ char maps to i8 but so does unsigned char (LLVM integral types don't have signed vs unsigned). This class is designed to handle this sort of one to many mapping of the lower level LLVM types to source level debugging types. Each instance of this class represents a source level basic type and the corresponding representation for LLVM.

Constructors

DebugBasicType(ITypeRef, IDIBuilder, string, DiTypeKind)

Initializes a new instance of the DebugBasicType class.

See Also