]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeTypedef.cpp
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
[FreeBSD/FreeBSD.git] / contrib / llvm / lib / DebugInfo / PDB / Native / NativeTypeTypedef.cpp
1 #include "llvm/DebugInfo/PDB/Native/NativeTypeTypedef.h"
2
3 using namespace llvm;
4 using namespace llvm::codeview;
5 using namespace llvm::pdb;
6
7 NativeTypeTypedef::NativeTypeTypedef(NativeSession &Session, SymIndexId Id,
8                                      codeview::UDTSym Typedef)
9     : NativeRawSymbol(Session, PDB_SymType::Typedef, Id),
10       Record(std::move(Typedef)) {}
11
12 NativeTypeTypedef::~NativeTypeTypedef() {}
13
14 void NativeTypeTypedef::dump(raw_ostream &OS, int Indent,
15                              PdbSymbolIdField ShowIdFields,
16                              PdbSymbolIdField RecurseIdFields) const {
17   NativeRawSymbol::dump(OS, Indent, ShowIdFields, RecurseIdFields);
18   dumpSymbolField(OS, "name", getName(), Indent);
19   dumpSymbolIdField(OS, "typeId", getTypeId(), Indent, Session,
20                     PdbSymbolIdField::Type, ShowIdFields, RecurseIdFields);
21 }
22
23 std::string NativeTypeTypedef::getName() const { return Record.Name; }
24
25 SymIndexId NativeTypeTypedef::getTypeId() const {
26   return Session.getSymbolCache().findSymbolByTypeIndex(Record.Type);
27 }