LLVM  14.0.0git
NativeSymbolEnumerator.h
Go to the documentation of this file.
1 //===- NativeSymbolEnumerator.h - info about enumerator values --*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_DEBUGINFO_PDB_NATIVE_NATIVESYMBOLENUMERATOR_H
10 #define LLVM_DEBUGINFO_PDB_NATIVE_NATIVESYMBOLENUMERATOR_H
11 
15 
16 namespace llvm {
17 namespace pdb {
18 class NativeTypeEnum;
19 
21 public:
23  const NativeTypeEnum &Parent,
25 
26  ~NativeSymbolEnumerator() override;
27 
28  void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields,
29  PdbSymbolIdField RecurseIdFields) const override;
30 
31  SymIndexId getClassParentId() const override;
32  SymIndexId getLexicalParentId() const override;
33  std::string getName() const override;
34  SymIndexId getTypeId() const override;
35  PDB_DataKind getDataKind() const override;
36  PDB_LocType getLocationType() const override;
37  bool isConstType() const override;
38  bool isVolatileType() const override;
39  bool isUnalignedType() const override;
40  Variant getValue() const override;
41 
42 protected:
45 };
46 
47 } // namespace pdb
48 } // namespace llvm
49 
50 #endif // LLVM_DEBUGINFO_PDB_NATIVE_NATIVESYMBOLENUMERATOR_H
llvm
This file implements support for optimizing divisions by a constant.
Definition: AllocatorList.h:23
llvm::pdb::NativeSymbolEnumerator::getTypeId
SymIndexId getTypeId() const override
Definition: NativeSymbolEnumerator.cpp:58
llvm::pdb::NativeSymbolEnumerator::isUnalignedType
bool isUnalignedType() const override
Definition: NativeSymbolEnumerator.cpp:74
llvm::pdb::NativeSymbolEnumerator::getValue
Variant getValue() const override
Definition: NativeSymbolEnumerator.cpp:76
llvm::pdb::NativeSymbolEnumerator::Parent
const NativeTypeEnum & Parent
Definition: NativeSymbolEnumerator.h:43
llvm::pdb::NativeSymbolEnumerator::dump
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
Definition: NativeSymbolEnumerator.cpp:27
llvm::pdb::PDB_LocType
PDB_LocType
These values correspond to the LocationType enumeration, and are documented here: https://msdn....
Definition: PDBTypes.h:292
llvm::pdb::NativeSymbolEnumerator::~NativeSymbolEnumerator
~NativeSymbolEnumerator() override
Definition: NativeSymbolEnumerator.cpp:25
llvm::pdb::NativeSymbolEnumerator::getLocationType
PDB_LocType getLocationType() const override
Definition: NativeSymbolEnumerator.cpp:66
llvm::pdb::PDB_DataKind
PDB_DataKind
These values correspond to the DataKind enumeration, and are documented here: https://msdn....
Definition: PDBTypes.h:228
llvm::raw_ostream
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:53
CodeView.h
llvm::pdb::NativeSymbolEnumerator::getClassParentId
SymIndexId getClassParentId() const override
Definition: NativeSymbolEnumerator.cpp:48
llvm::pdb::NativeTypeEnum
Definition: NativeTypeEnum.h:23
llvm::codeview::EnumeratorRecord
Definition: TypeRecord.h:829
llvm::pdb::NativeSymbolEnumerator::getLexicalParentId
SymIndexId getLexicalParentId() const override
Definition: NativeSymbolEnumerator.cpp:52
llvm::pdb::NativeSymbolEnumerator
Definition: NativeSymbolEnumerator.h:20
llvm::pdb::NativeSymbolEnumerator::Record
codeview::EnumeratorRecord Record
Definition: NativeSymbolEnumerator.h:44
llvm::Record
Definition: Record.h:1472
llvm::pdb::NativeSymbolEnumerator::isVolatileType
bool isVolatileType() const override
Definition: NativeSymbolEnumerator.cpp:72
uint32_t
llvm::pdb::Variant
Definition: PDBTypes.h:410
llvm::pdb::NativeSymbolEnumerator::getName
std::string getName() const override
Definition: NativeSymbolEnumerator.cpp:54
NativeRawSymbol.h
llvm::pdb::NativeSession
Definition: NativeSession.h:28
llvm::pdb::PdbSymbolIdField
PdbSymbolIdField
Definition: IPDBRawSymbol.h:24
llvm::pdb::NativeSymbolEnumerator::isConstType
bool isConstType() const override
Definition: NativeSymbolEnumerator.cpp:70
llvm::pdb::NativeSymbolEnumerator::getDataKind
PDB_DataKind getDataKind() const override
Definition: NativeSymbolEnumerator.cpp:62
llvm::pdb::NativeSymbolEnumerator::NativeSymbolEnumerator
NativeSymbolEnumerator(NativeSession &Session, SymIndexId Id, const NativeTypeEnum &Parent, codeview::EnumeratorRecord Record)
Definition: NativeSymbolEnumerator.cpp:19
llvm::pdb::NativeRawSymbol::Session
NativeSession & Session
Definition: NativeRawSymbol.h:232
llvm::AMDGPU::VGPRIndexMode::Id
Id
Definition: SIDefines.h:231
llvm::pdb::NativeRawSymbol
Definition: NativeRawSymbol.h:21
NativeSession.h