LLVM 20.0.0git
NativeTypeTypedef.cpp
Go to the documentation of this file.
4
5using namespace llvm;
6using namespace llvm::codeview;
7using namespace llvm::pdb;
8
11 : NativeRawSymbol(Session, PDB_SymType::Typedef, Id),
13
15
17 PdbSymbolIdField ShowIdFields,
18 PdbSymbolIdField RecurseIdFields) const {
19 NativeRawSymbol::dump(OS, Indent, ShowIdFields, RecurseIdFields);
20 dumpSymbolField(OS, "name", getName(), Indent);
21 dumpSymbolIdField(OS, "typeId", getTypeId(), Indent, Session,
22 PdbSymbolIdField::Type, ShowIdFields, RecurseIdFields);
23}
24
25std::string NativeTypeTypedef::getName() const {
26 return std::string(Record.Name);
27}
28
31}
raw_pwrite_stream & OS
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
SymbolCache & getSymbolCache()
std::string getName() const override
SymIndexId getTypeId() const override
NativeTypeTypedef(NativeSession &Session, SymIndexId Id, codeview::UDTSym Typedef)
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
SymIndexId findSymbolByTypeIndex(codeview::TypeIndex TI) const
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:52
void dumpSymbolField(raw_ostream &OS, StringRef Name, T Value, int Indent)
Definition: PDBExtras.h:47
PDB_SymType
These values correspond to the SymTagEnum enumeration, and are documented here: https://msdn....
Definition: PDBTypes.h:243
void dumpSymbolIdField(raw_ostream &OS, StringRef Name, SymIndexId Value, int Indent, const IPDBSession &Session, PdbSymbolIdField FieldId, PdbSymbolIdField ShowFlags, PdbSymbolIdField RecurseFlags)
Definition: PDBSymbol.cpp:202
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Definition: STLExtras.h:1873
Implement std::hash so that hash_code can be used in STL containers.
Definition: BitVector.h:858