File indexing completed on 2026-05-10 08:43:46
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef LLVM_DEBUGINFO_PDB_PDBSYMBOLDATA_H
0010 #define LLVM_DEBUGINFO_PDB_PDBSYMBOLDATA_H
0011
0012 #include "PDBSymbol.h"
0013 #include "PDBTypes.h"
0014 #include "llvm/DebugInfo/PDB/IPDBRawSymbol.h"
0015
0016 namespace llvm {
0017
0018 namespace pdb {
0019
0020 class PDBSymDumper;
0021
0022 class PDBSymbolData : public PDBSymbol {
0023 DECLARE_PDB_SYMBOL_CONCRETE_TYPE(PDB_SymType::Data)
0024 public:
0025 void dump(PDBSymDumper &Dumper) const override;
0026
0027 FORWARD_SYMBOL_METHOD(getAccess)
0028 FORWARD_SYMBOL_METHOD(getAddressOffset)
0029 FORWARD_SYMBOL_METHOD(getAddressSection)
0030 FORWARD_SYMBOL_METHOD(getAddressTaken)
0031 FORWARD_SYMBOL_METHOD(getBitPosition)
0032 FORWARD_SYMBOL_ID_METHOD(getClassParent)
0033 FORWARD_SYMBOL_METHOD(isCompilerGenerated)
0034 FORWARD_SYMBOL_METHOD(isConstType)
0035 FORWARD_SYMBOL_METHOD(getDataKind)
0036 FORWARD_SYMBOL_METHOD(isAggregated)
0037 FORWARD_SYMBOL_METHOD(isSplitted)
0038 FORWARD_SYMBOL_METHOD(getLength)
0039 FORWARD_SYMBOL_ID_METHOD(getLexicalParent)
0040 FORWARD_SYMBOL_METHOD(getLocationType)
0041 FORWARD_SYMBOL_METHOD(getName)
0042 FORWARD_SYMBOL_METHOD(getOffset)
0043 FORWARD_SYMBOL_METHOD(getRegisterId)
0044 FORWARD_SYMBOL_METHOD(getRelativeVirtualAddress)
0045 FORWARD_SYMBOL_METHOD(getSlot)
0046 FORWARD_SYMBOL_METHOD(getToken)
0047 FORWARD_SYMBOL_ID_METHOD(getType)
0048 FORWARD_SYMBOL_METHOD(isUnalignedType)
0049 FORWARD_SYMBOL_METHOD(getValue)
0050 FORWARD_SYMBOL_METHOD(getVirtualAddress)
0051 FORWARD_SYMBOL_METHOD(isVolatileType)
0052
0053 std::unique_ptr<IPDBEnumLineNumbers> getLineNumbers() const;
0054 uint32_t getCompilandId() const;
0055 };
0056 }
0057 }
0058
0059 #endif