Click or drag to resize
Llvm.NET LogoDebugBasicType Class

[This is preliminary documentation and is subject to change.]

Debug information binding between an LLVM native ITypeRef and a DIBasicType
Inheritance Hierarchy
SystemObject
  Llvm.NET.DebugInfoDebugTypeITypeRef, DIBasicType
    Llvm.NET.DebugInfoDebugBasicType

Namespace:  Llvm.NET.DebugInfo
Assembly:  Llvm.NET (in Llvm.NET.dll) Version: 3.8.6158
Syntax
C#
public class DebugBasicType : DebugType<ITypeRef, DIBasicType>

The DebugBasicType type exposes the following members.

Constructors
  NameDescription
Public methodDebugBasicType
Create a debug type for a basic type
Top
Properties
  NameDescription
Public propertyContext (Inherited from DebugTypeTNative, TDebug.)
Public propertyDIType (Inherited from DebugTypeTNative, TDebug.)
Public propertyIntegerBitWidth (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsDouble (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsFloat (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsFloatingPoint (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsInteger (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsPointer (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsPointerPointer (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsSequence (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsSized (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsStruct (Inherited from DebugTypeTNative, TDebug.)
Public propertyIsVoid (Inherited from DebugTypeTNative, TDebug.)
Public propertyKind (Inherited from DebugTypeTNative, TDebug.)
Public propertyNativeType (Inherited from DebugTypeTNative, TDebug.)
Public propertyTypeHandle (Inherited from DebugTypeTNative, TDebug.)
Top
Methods
  NameDescription
Public methodAddExtendedPropertyValue (Inherited from DebugTypeTNative, TDebug.)
Public methodCreateArrayType(UInt32) (Inherited from DebugTypeTNative, TDebug.)
Public methodCreateArrayType(NativeModule, UInt32, UInt32) (Inherited from DebugTypeTNative, TDebug.)
Public methodCreatePointerType (Inherited from DebugTypeTNative, TDebug.)
Public methodCreatePointerType(UInt32) (Inherited from DebugTypeTNative, TDebug.)
Public methodCreatePointerType(NativeModule, UInt32) (Inherited from DebugTypeTNative, TDebug.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetNullValue (Inherited from DebugTypeTNative, TDebug.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodTryGetExtendedPropertyValueTProperty (Inherited from DebugTypeTNative, TDebug.)
Top
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.
See Also