Table of Contents

Enum PointerAttributes

Namespace
AsmResolver.Symbols.Pdb.Leaves
Assembly
AsmResolver.Symbols.Pdb.dll

Provides members defining all possible flags that can be assigned to a pointer type in a TPI or IPI stream.

[Flags]
public enum PointerAttributes : uint

Fields

BasedOnAddress = Huge16 | BasedOnValue

Indicates the pointer is a based on address of base.

BasedOnSegment = Far16 | Huge16

Indicates the pointer is a based on segment.

BasedOnSegmentAddress = Far16 | BasedOnAddress

Indicates the pointer is a based on segment address of base.

BasedOnSegmentValue = Far16 | BasedOnValue

Indicates the pointer is a based on segment value of base.

BasedOnSelf = Far16 | BasedOnType

Indicates the pointer is a based on self.

BasedOnType = 8

Indicates the pointer is a based on type.

BasedOnValue = 4

Indicates the pointer is a based on value of base.

Const = 1024

Indicates the pointer is marked const.

Far16 = 1

Indicates the pointer is a 16:16 far pointer.

Far32 = Far16 | Near32

Indicates the pointer is a 16:32 pointer.

Flat32 = 256

Indicates the pointer is a "flat" pointer.

Huge16 = 2

Indicates the pointer is a 16:16 huge pointer.

KindMask = 31

Provides the bit-mask for extracting the pointer kind from the flags.

LValueRefThisPointer = 1048576

Indicates the pointer is a 'this' pointer of a member function with ref qualifier.

LValueReference = 32

Indicates the pointer is an "old" reference.

ModeMask = PointerToMemberFunction | RValueReference

Provides the bit-mask for extracting the pointer mode from the flags.

Near16 = 0

Indicates the pointer is a 16 bit pointer.

Near32 = Huge16 | BasedOnType

Indicates the pointer is a 32 bit pointer.

Near64 = BasedOnValue | BasedOnType

Indicates the pointer is a 64 bit pointer.

PointerToDataMember = 64

Indicates the pointer is a pointer to data member.

PointerToMemberFunction = LValueReference | PointerToDataMember

Indicates the pointer is a pointer to member function.

RValueRefThisPointer = 2097152

Indicates the pointer is a 'this' pointer of a member function with ref qualifier.

RValueReference = 128

Indicates the pointer is an r-value reference.

Restrict = 4096

Indicates the pointer is marked restrict.

Unaligned = 2048

Indicates the pointer is marked unaligned.

Volatile = 512

Indicates the pointer is marked volatile.

WinRTSmartPointer = 524288

Indicates the pointer is a WinRT smart pointer.