class NativeTypeEnum
Declaration
class NativeTypeEnum : public NativeRawSymbol { /* full declaration omitted */ };
Description
IPDBRawSymbol defines an interface used to represent an arbitrary symbol. It exposes a monolithic interface consisting of accessors for the union of all properties that are valid for any symbol type. This interface is then wrapped by a concrete class which exposes only those set of methods valid for this particular symbol type. See PDBSymbol.h for more details.
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:25
Inherits from: NativeRawSymbol
Member Variables
- protected codeview::TypeIndex Index
- protected Optional<codeview::EnumRecord> Record
- protected llvm::pdb::NativeTypeEnum* UnmodifiedType = nullptr
- protected Optional<codeview::ModifierRecord> Modifiers
Inherited from NativeRawSymbol:
Method Overview
- public NativeTypeEnum(llvm::pdb::NativeSession & Session, llvm::pdb::SymIndexId Id, llvm::pdb::NativeTypeEnum & UnmodifiedType, codeview::ModifierRecord Modifier)
- public NativeTypeEnum(llvm::pdb::NativeSession & Session, llvm::pdb::SymIndexId Id, codeview::TypeIndex TI, codeview::EnumRecord Record)
- public void dump(llvm::raw_ostream & OS, int Indent, llvm::pdb::PdbSymbolIdField ShowIdFields, llvm::pdb::PdbSymbolIdField RecurseIdFields) const
- public std::unique_ptr<IPDBEnumSymbols> findChildren(llvm::pdb::PDB_SymType Type) const
- public llvm::pdb::PDB_BuiltinType getBuiltinType() const
- public const codeview::EnumRecord & getEnumRecord() const
- public uint64_t getLength() const
- public std::string getName() const
- public llvm::pdb::PDB_SymType getSymTag() const
- public llvm::pdb::SymIndexId getTypeId() const
- public const llvm::pdb::NativeTypeBuiltin & getUnderlyingBuiltinType() const
- public llvm::pdb::SymIndexId getUnmodifiedTypeId() const
- public bool hasAssignmentOperator() const
- public bool hasCastOperator() const
- public bool hasConstructor() const
- public bool hasNestedTypes() const
- public bool hasOverloadedOperator() const
- public bool isConstType() const
- public bool isInterfaceUdt() const
- public bool isIntrinsic() const
- public bool isNested() const
- public bool isPacked() const
- public bool isRefUdt() const
- public bool isScoped() const
- public bool isUnalignedType() const
- public bool isValueUdt() const
- public bool isVolatileType() const
- public ~NativeTypeEnum()
Inherited from NativeRawSymbol:
- public dump
- public findChildren
- public findChildren
- public findChildrenByAddr
- public findChildrenByRVA
- public findChildrenByVA
- public findInlineFramesByAddr
- public findInlineFramesByRVA
- public findInlineFramesByVA
- public findInlineeLines
- public findInlineeLinesByAddr
- public findInlineeLinesByRVA
- public findInlineeLinesByVA
- public getAccess
- public getAddressOffset
- public getAddressSection
- public getAddressTaken
- public getAge
- public getArrayIndexTypeId
- public getBackEndVersion
- public getBaseDataOffset
- public getBaseDataSlot
- public getBaseSymbolId
- public getBitPosition
- public getBuiltinType
- public getCallingConvention
- public getClassParentId
- public getCompilerName
- public getCount
- public getCountLiveRanges
- public getDataBytes
- public getDataKind
- public getFrontEndVersion
- public getGuid
- public getLanguage
- public getLength
- public getLexicalParentId
- public getLibraryName
- public getLiveRangeLength
- public getLiveRangeStartAddressOffset
- public getLiveRangeStartAddressSection
- public getLiveRangeStartRelativeVirtualAddress
- public getLocalBasePointerRegisterId
- public getLocationType
- public getLowerBoundId
- public getMachineType
- public getMemorySpaceKind
- public getName
- public getNoStackOrdering
- public getNumberOfAcceleratorPointerTags
- public getNumberOfColumns
- public getNumberOfModifiers
- public getNumberOfRegisterIndices
- public getNumberOfRows
- public getObjectFileName
- public getOemId
- public getOemSymbolId
- public getOffset
- public getOffsetInUdt
- public getPlatform
- public getRank
- public getRegisterId
- public getRegisterType
- public getRelativeVirtualAddress
- public getSamplerSlot
- public getSignature
- public getSizeInUdt
- public getSlot
- public getSourceFileName
- public getSrcLineOnTypeDefn
- public getStride
- public getSubTypeId
- public getSymIndexId
- public getSymTag
- public getSymbolsFileName
- public getTargetOffset
- public getTargetRelativeVirtualAddress
- public getTargetSection
- public getTargetVirtualAddress
- public getTextureSlot
- public getThisAdjust
- public getThunkOrdinal
- public getTimeStamp
- public getToken
- public getTypeId
- public getUavSlot
- public getUdtKind
- public getUndecoratedName
- public getUndecoratedNameEx
- public getUnmodifiedTypeId
- public getUnused
- public getUpperBoundId
- public getValue
- public getVirtualAddress
- public getVirtualBaseDispIndex
- public getVirtualBaseOffset
- public getVirtualBasePointerOffset
- public getVirtualBaseTableType
- public getVirtualTableShapeId
- public hasAlloca
- public hasAssignmentOperator
- public hasCTypes
- public hasCastOperator
- public hasConstructor
- public hasCustomCallingConvention
- public hasDebugInfo
- public hasEH
- public hasEHa
- public hasFarReturn
- public hasFramePointer
- public hasInlAsm
- public hasInlineAttribute
- public hasInterruptReturn
- public hasLongJump
- public hasManagedCode
- public hasNestedTypes
- public hasNoInlineAttribute
- public hasNoReturnAttribute
- public hasOptimizedCodeDebugInfo
- public hasOverloadedOperator
- public hasPrivateSymbols
- public hasSEH
- public hasSecurityChecks
- public hasSetJump
- public hasStrictGSCheck
- public isAcceleratorGroupSharedLocal
- public isAcceleratorPointerTagLiveRange
- public isAcceleratorStubFunction
- public isAggregated
- public isCVTCIL
- public isCode
- public isCompilerGenerated
- public isConstType
- public isConstructorVirtualBase
- public isCxxReturnUdt
- public isDataAligned
- public isEditAndContinueEnabled
- public isFunction
- public isHLSLData
- public isHotpatchable
- public isIndirectVirtualBaseClass
- public isInterfaceUdt
- public isIntrinsic
- public isIntroVirtualFunction
- public isLTCG
- public isLocationControlFlowDependent
- public isMSILCode
- public isMSILNetmodule
- public isManagedCode
- public isMatrixRowMajor
- public isMultipleInheritance
- public isNaked
- public isNested
- public isOptimizedAway
- public isPacked
- public isPointerBasedOnSymbolValue
- public isPointerToDataMember
- public isPointerToMemberFunction
- public isPureVirtual
- public isRValueReference
- public isRefUdt
- public isReference
- public isRestrictedType
- public isReturnValue
- public isSafeBuffers
- public isScoped
- public isSdl
- public isSingleInheritance
- public isSplitted
- public isStatic
- public isUnalignedType
- public isUnreached
- public isValueUdt
- public isVirtual
- public isVirtualBaseClass
- public isVirtualInheritance
- public isVolatileType
- public wasInlined
Inherited from IPDBRawSymbol:
- public dump
- public findChildren
- public findChildren
- public findChildrenByAddr
- public findChildrenByRVA
- public findChildrenByVA
- public findInlineFramesByAddr
- public findInlineFramesByRVA
- public findInlineFramesByVA
- public findInlineeLines
- public findInlineeLinesByAddr
- public findInlineeLinesByRVA
- public findInlineeLinesByVA
- public getAccess
- public getAddressOffset
- public getAddressSection
- public getAddressTaken
- public getAge
- public getArrayIndexTypeId
- public getBackEndVersion
- public getBaseDataOffset
- public getBaseDataSlot
- public getBaseSymbolId
- public getBitPosition
- public getBuiltinType
- public getCallingConvention
- public getClassParentId
- public getCompilerName
- public getCount
- public getCountLiveRanges
- public getDataBytes
- public getDataKind
- public getFrontEndVersion
- public getGuid
- public getLanguage
- public getLength
- public getLexicalParentId
- public getLibraryName
- public getLiveRangeLength
- public getLiveRangeStartAddressOffset
- public getLiveRangeStartAddressSection
- public getLiveRangeStartRelativeVirtualAddress
- public getLocalBasePointerRegisterId
- public getLocationType
- public getLowerBoundId
- public getMachineType
- public getMemorySpaceKind
- public getName
- public getNoStackOrdering
- public getNumberOfAcceleratorPointerTags
- public getNumberOfColumns
- public getNumberOfModifiers
- public getNumberOfRegisterIndices
- public getNumberOfRows
- public getObjectFileName
- public getOemId
- public getOemSymbolId
- public getOffset
- public getOffsetInUdt
- public getPlatform
- public getRank
- public getRegisterId
- public getRegisterType
- public getRelativeVirtualAddress
- public getSamplerSlot
- public getSignature
- public getSizeInUdt
- public getSlot
- public getSourceFileName
- public getSrcLineOnTypeDefn
- public getStride
- public getSubTypeId
- public getSymIndexId
- public getSymTag
- public getSymbolsFileName
- public getTargetOffset
- public getTargetRelativeVirtualAddress
- public getTargetSection
- public getTargetVirtualAddress
- public getTextureSlot
- public getThisAdjust
- public getThunkOrdinal
- public getTimeStamp
- public getToken
- public getTypeId
- public getUavSlot
- public getUdtKind
- public getUndecoratedName
- public getUndecoratedNameEx
- public getUnmodifiedTypeId
- public getUnused
- public getUpperBoundId
- public getValue
- public getVirtualAddress
- public getVirtualBaseDispIndex
- public getVirtualBaseOffset
- public getVirtualBasePointerOffset
- public getVirtualBaseTableType
- public getVirtualTableShapeId
- public hasAlloca
- public hasAssignmentOperator
- public hasCTypes
- public hasCastOperator
- public hasConstructor
- public hasCustomCallingConvention
- public hasDebugInfo
- public hasEH
- public hasEHa
- public hasFarReturn
- public hasFramePointer
- public hasInlAsm
- public hasInlineAttribute
- public hasInterruptReturn
- public hasLongJump
- public hasManagedCode
- public hasNestedTypes
- public hasNoInlineAttribute
- public hasNoReturnAttribute
- public hasOptimizedCodeDebugInfo
- public hasOverloadedOperator
- public hasPrivateSymbols
- public hasSEH
- public hasSecurityChecks
- public hasSetJump
- public hasStrictGSCheck
- public isAcceleratorGroupSharedLocal
- public isAcceleratorPointerTagLiveRange
- public isAcceleratorStubFunction
- public isAggregated
- public isCVTCIL
- public isCode
- public isCompilerGenerated
- public isConstType
- public isConstructorVirtualBase
- public isCxxReturnUdt
- public isDataAligned
- public isEditAndContinueEnabled
- public isFunction
- public isHLSLData
- public isHotpatchable
- public isIndirectVirtualBaseClass
- public isInterfaceUdt
- public isIntrinsic
- public isIntroVirtualFunction
- public isLTCG
- public isLocationControlFlowDependent
- public isMSILCode
- public isMSILNetmodule
- public isManagedCode
- public isMatrixRowMajor
- public isMultipleInheritance
- public isNaked
- public isNested
- public isOptimizedAway
- public isPacked
- public isPointerBasedOnSymbolValue
- public isPointerToDataMember
- public isPointerToMemberFunction
- public isPureVirtual
- public isRValueReference
- public isRefUdt
- public isReference
- public isRestrictedType
- public isReturnValue
- public isSafeBuffers
- public isScoped
- public isSdl
- public isSingleInheritance
- public isSplitted
- public isStatic
- public isUnalignedType
- public isUnreached
- public isValueUdt
- public isVirtual
- public isVirtualBaseClass
- public isVirtualInheritance
- public isVolatileType
- public wasInlined
Methods
¶NativeTypeEnum(
llvm::pdb::NativeSession& Session,
llvm::pdb::SymIndexId Id,
llvm::pdb::NativeTypeEnum& UnmodifiedType,
codeview::ModifierRecord Modifier)
NativeTypeEnum(
llvm::pdb::NativeSession& Session,
llvm::pdb::SymIndexId Id,
llvm::pdb::NativeTypeEnum& UnmodifiedType,
codeview::ModifierRecord Modifier)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:30
Parameters
- llvm::pdb::NativeSession& Session
- llvm::pdb::SymIndexId Id
- llvm::pdb::NativeTypeEnum& UnmodifiedType
- codeview::ModifierRecord Modifier
¶NativeTypeEnum(llvm::pdb::NativeSession& Session,
llvm::pdb::SymIndexId Id,
codeview::TypeIndex TI,
codeview::EnumRecord Record)
NativeTypeEnum(llvm::pdb::NativeSession& Session,
llvm::pdb::SymIndexId Id,
codeview::TypeIndex TI,
codeview::EnumRecord Record)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:27
Parameters
- llvm::pdb::NativeSession& Session
- llvm::pdb::SymIndexId Id
- codeview::TypeIndex TI
- codeview::EnumRecord Record
¶void dump(
llvm::raw_ostream& OS,
int Indent,
llvm::pdb::PdbSymbolIdField ShowIdFields,
llvm::pdb::PdbSymbolIdField RecurseIdFields)
const
void dump(
llvm::raw_ostream& OS,
int Indent,
llvm::pdb::PdbSymbolIdField ShowIdFields,
llvm::pdb::PdbSymbolIdField RecurseIdFields)
const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:35
Parameters
- llvm::raw_ostream& OS
- int Indent
- llvm::pdb::PdbSymbolIdField ShowIdFields
- llvm::pdb::PdbSymbolIdField RecurseIdFields
¶std::unique_ptr<IPDBEnumSymbols> findChildren(
llvm::pdb::PDB_SymType Type) const
std::unique_ptr<IPDBEnumSymbols> findChildren(
llvm::pdb::PDB_SymType Type) const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:39
Parameters
- llvm::pdb::PDB_SymType Type
¶llvm::pdb::PDB_BuiltinType getBuiltinType() const
llvm::pdb::PDB_BuiltinType getBuiltinType() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:41
¶const codeview::EnumRecord& getEnumRecord() const
const codeview::EnumRecord& getEnumRecord() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:64
¶uint64_t getLength() const
uint64_t getLength() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:47
¶std::string getName() const
std::string getName() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:48
¶llvm::pdb::PDB_SymType getSymTag() const
llvm::pdb::PDB_SymType getSymTag() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:42
¶llvm::pdb::SymIndexId getTypeId() const
llvm::pdb::SymIndexId getTypeId() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:58
¶const llvm::pdb::NativeTypeBuiltin&
getUnderlyingBuiltinType() const
const llvm::pdb::NativeTypeBuiltin&
getUnderlyingBuiltinType() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:63
¶llvm::pdb::SymIndexId getUnmodifiedTypeId() const
llvm::pdb::SymIndexId getUnmodifiedTypeId() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:43
¶bool hasAssignmentOperator() const
bool hasAssignmentOperator() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:45
¶bool hasCastOperator() const
bool hasCastOperator() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:46
¶bool hasConstructor() const
bool hasConstructor() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:44
¶bool hasNestedTypes() const
bool hasNestedTypes() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:54
¶bool hasOverloadedOperator() const
bool hasOverloadedOperator() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:53
¶bool isConstType() const
bool isConstType() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:49
¶bool isInterfaceUdt() const
bool isInterfaceUdt() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:61
¶bool isIntrinsic() const
bool isIntrinsic() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:55
¶bool isNested() const
bool isNested() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:52
¶bool isPacked() const
bool isPacked() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:56
¶bool isRefUdt() const
bool isRefUdt() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:59
¶bool isScoped() const
bool isScoped() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:57
¶bool isUnalignedType() const
bool isUnalignedType() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:51
¶bool isValueUdt() const
bool isValueUdt() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:60
¶bool isVolatileType() const
bool isVolatileType() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:50
¶~NativeTypeEnum()
~NativeTypeEnum()
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h:33