LLVM  10.0.0svn
NativeTypeTypedef.cpp
Go to the documentation of this file.
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 
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 
27 }
This class represents lattice values for constants.
Definition: AllocatorList.h:23
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
Definition: BitVector.h:937
PDB_SymType
These values correspond to the SymTagEnum enumeration, and are documented here: https://msdn.microsoft.com/en-us/library/bkedss5f.aspx.
Definition: PDBTypes.h:241
void dumpSymbolField(raw_ostream &OS, StringRef Name, T Value, int Indent)
Definition: PDBExtras.h:48
SymIndexId getTypeId() const override
void dumpSymbolIdField(raw_ostream &OS, StringRef Name, SymIndexId Value, int Indent, const IPDBSession &Session, PdbSymbolIdField FieldId, PdbSymbolIdField ShowFlags, PdbSymbolIdField RecurseFlags)
Definition: PDBSymbol.cpp:185
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
SymIndexId findSymbolByTypeIndex(codeview::TypeIndex TI)
SymbolCache & getSymbolCache()
std::string getName() const override
This class implements an extremely fast bulk output stream that can only output to a stream...
Definition: raw_ostream.h:45