LLVM  8.0.0svn
Public Member Functions | List of all members
llvm::pdb::PDBSymbolCustom Class Reference

PDBSymbolCustom represents symbols that are compiler-specific and do not fit anywhere else in the lexical hierarchy. More...

#include "llvm/DebugInfo/PDB/PDBSymbolCustom.h"

Inheritance diagram for llvm::pdb::PDBSymbolCustom:
Inheritance graph
Collaboration diagram for llvm::pdb::PDBSymbolCustom:
Collaboration graph

Public Member Functions

 PDBSymbolCustom (const IPDBSession &PDBSession, std::unique_ptr< IPDBRawSymbol > CustomSymbol)
void dump (PDBSymDumper &Dumper) const override
 Dumps the contents of a symbol a raw_ostream. More...
void getDataBytes (llvm::SmallVector< uint8_t, 32 > &bytes)
- Public Member Functions inherited from llvm::pdb::PDBSymbol
virtual ~PDBSymbol ()
virtual void dumpRight (PDBSymDumper &Dumper) const
 For certain PDBSymbolTypes, dumps additional information for the type that normally goes on the right side of the symbol. More...
void defaultDump (raw_ostream &OS, int Indent) const
void dumpProperties () const
void dumpChildStats () const
PDB_SymType getSymTag () const
uint32_t getSymIndexId () const
template<typename T >
std::unique_ptr< TfindOneChild () const
std::unique_ptr< PDBSymbolclone () const
template<typename T >
std::unique_ptr< ConcreteSymbolEnumerator< T > > findAllChildren () const
std::unique_ptr< IPDBEnumSymbolsfindAllChildren (PDB_SymType Type) const
std::unique_ptr< IPDBEnumSymbolsfindAllChildren () const
std::unique_ptr< IPDBEnumSymbolsfindChildren (PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags) const
std::unique_ptr< IPDBEnumSymbolsfindChildrenByRVA (PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags, uint32_t RVA) const
std::unique_ptr< IPDBEnumSymbolsfindInlineFramesByRVA (uint32_t RVA) const
const IPDBRawSymbolgetRawSymbol () const
IPDBRawSymbolgetRawSymbol ()
const IPDBSessiongetSession () const
std::unique_ptr< IPDBEnumSymbolsgetChildStats (TagStats &Stats) const

Additional Inherited Members

- Static Public Member Functions inherited from llvm::pdb::PDBSymbol
static std::unique_ptr< PDBSymbolcreate (const IPDBSession &PDBSession, std::unique_ptr< IPDBRawSymbol > Symbol)
- Protected Member Functions inherited from llvm::pdb::PDBSymbol
 PDBSymbol (const IPDBSession &PDBSession, std::unique_ptr< IPDBRawSymbol > Symbol)
 PDBSymbol (PDBSymbol &Symbol)
std::unique_ptr< PDBSymbolgetSymbolByIdHelper (uint32_t Id) const
template<typename ConcreteType >
std::unique_ptr< ConcreteType > getConcreteSymbolByIdHelper (uint32_t Id) const
- Protected Attributes inherited from llvm::pdb::PDBSymbol
const IPDBSessionSession
std::unique_ptr< IPDBRawSymbolRawSymbol

Detailed Description

PDBSymbolCustom represents symbols that are compiler-specific and do not fit anywhere else in the lexical hierarchy.


Definition at line 25 of file PDBSymbolCustom.h.

Constructor & Destructor Documentation

◆ PDBSymbolCustom()

PDBSymbolCustom::PDBSymbolCustom ( const IPDBSession PDBSession,
std::unique_ptr< IPDBRawSymbol CustomSymbol 

Definition at line 21 of file PDBSymbolCustom.cpp.

References assert(), llvm::pdb::Custom, and llvm::pdb::PDBSymbol::RawSymbol.

Member Function Documentation

◆ dump()

void PDBSymbolCustom::dump ( PDBSymDumper Dumper) const

Dumps the contents of a symbol a raw_ostream.

By default this will just call dump() on the underlying RawSymbol, which allows us to discover unknown properties, but individual implementations of PDBSymbol may override the behavior to only dump known fields.

Implements llvm::pdb::PDBSymbol.

Definition at line 31 of file PDBSymbolCustom.cpp.

References llvm::pdb::PDBSymDumper::dump().

◆ getDataBytes()

void PDBSymbolCustom::getDataBytes ( llvm::SmallVector< uint8_t, 32 > &  bytes)

Definition at line 27 of file PDBSymbolCustom.cpp.

References llvm::pdb::PDBSymbol::RawSymbol.

The documentation for this class was generated from the following files: