LLVM  8.0.1
Classes | Public Member Functions | Static Public Member Functions | List of all members
llvm::codeview::SymbolDeserializer Class Reference

#include "llvm/DebugInfo/CodeView/SymbolDeserializer.h"

Inheritance diagram for llvm::codeview::SymbolDeserializer:
Inheritance graph
[legend]
Collaboration diagram for llvm::codeview::SymbolDeserializer:
Collaboration graph
[legend]

Public Member Functions

 SymbolDeserializer (SymbolVisitorDelegate *Delegate, CodeViewContainer Container)
 
Error visitSymbolBegin (CVSymbol &Record, uint32_t Offset) override
 Paired begin/end actions for all symbols. More...
 
Error visitSymbolBegin (CVSymbol &Record) override
 
Error visitSymbolEnd (CVSymbol &Record) override
 
- Public Member Functions inherited from llvm::codeview::SymbolVisitorCallbacks
virtual ~SymbolVisitorCallbacks ()=default
 
virtual Error visitUnknownSymbol (CVSymbol &Record)
 Action to take on unknown symbols. By default, they are ignored. More...
 

Static Public Member Functions

template<typename T >
static Error deserializeAs (CVSymbol Symbol, T &Record)
 
template<typename T >
static Expected< TdeserializeAs (CVSymbol Symbol)
 

Detailed Description

Definition at line 25 of file SymbolDeserializer.h.

Constructor & Destructor Documentation

◆ SymbolDeserializer()

llvm::codeview::SymbolDeserializer::SymbolDeserializer ( SymbolVisitorDelegate Delegate,
CodeViewContainer  Container 
)
inlineexplicit

Definition at line 56 of file SymbolDeserializer.h.

Member Function Documentation

◆ deserializeAs() [1/2]

template<typename T >
static Error llvm::codeview::SymbolDeserializer::deserializeAs ( CVSymbol  Symbol,
T Record 
)
inlinestatic

◆ deserializeAs() [2/2]

template<typename T >
static Expected<T> llvm::codeview::SymbolDeserializer::deserializeAs ( CVSymbol  Symbol)
inlinestatic

◆ visitSymbolBegin() [1/2]

Error llvm::codeview::SymbolDeserializer::visitSymbolBegin ( CVSymbol Record,
uint32_t  Offset 
)
inlineoverridevirtual

Paired begin/end actions for all symbols.

Receives all record data, including the fixed-length record prefix. visitSymbolBegin() should return the type of the Symbol, or an error if it cannot be determined.

Reimplemented from llvm::codeview::SymbolVisitorCallbacks.

Definition at line 60 of file SymbolDeserializer.h.

Referenced by deserializeAs().

◆ visitSymbolBegin() [2/2]

Error llvm::codeview::SymbolDeserializer::visitSymbolBegin ( CVSymbol Record)
inlineoverridevirtual

◆ visitSymbolEnd()

Error llvm::codeview::SymbolDeserializer::visitSymbolEnd ( CVSymbol Record)
inlineoverridevirtual

Reimplemented from llvm::codeview::SymbolVisitorCallbacks.

Definition at line 69 of file SymbolDeserializer.h.

References assert(), and llvm::codeview::EC.

Referenced by deserializeAs().


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