LLVM  6.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
[legend]
Collaboration diagram for llvm::pdb::PDBSymbolCustom:
Collaboration graph
[legend]

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.

https://msdn.microsoft.com/en-us/library/d88sf09h.aspx

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
overridevirtual

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: