Line data Source code
1 : #include "llvm/DebugInfo/PDB/Native/NativeTypeVTShape.h"
2 :
3 : using namespace llvm;
4 : using namespace llvm::pdb;
5 :
6 : // Create a pointer record for a non-simple type.
7 0 : NativeTypeVTShape::NativeTypeVTShape(NativeSession &Session, SymIndexId Id,
8 : codeview::TypeIndex TI,
9 0 : codeview::VFTableShapeRecord SR)
10 : : NativeRawSymbol(Session, PDB_SymType::VTableShape, Id), TI(TI),
11 0 : Record(std::move(SR)) {}
12 :
13 0 : NativeTypeVTShape::~NativeTypeVTShape() {}
14 :
15 0 : void NativeTypeVTShape::dump(raw_ostream &OS, int Indent,
16 : PdbSymbolIdField ShowIdFields,
17 : PdbSymbolIdField RecurseIdFields) const {
18 0 : NativeRawSymbol::dump(OS, Indent, ShowIdFields, RecurseIdFields);
19 :
20 0 : dumpSymbolIdField(OS, "lexicalParentId", 0, Indent, Session,
21 : PdbSymbolIdField::LexicalParent, ShowIdFields,
22 : RecurseIdFields);
23 0 : dumpSymbolField(OS, "count", getCount(), Indent);
24 0 : dumpSymbolField(OS, "constType", isConstType(), Indent);
25 0 : dumpSymbolField(OS, "unalignedType", isUnalignedType(), Indent);
26 0 : dumpSymbolField(OS, "volatileType", isVolatileType(), Indent);
27 0 : }
28 :
29 0 : bool NativeTypeVTShape::isConstType() const { return false; }
30 :
31 0 : bool NativeTypeVTShape::isVolatileType() const { return false; }
32 :
33 0 : bool NativeTypeVTShape::isUnalignedType() const { return false; }
34 :
35 0 : uint32_t NativeTypeVTShape::getCount() const { return Record.Slots.size(); }
|