LLVM 19.0.0git
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]

Public Member Functions

 SymbolDeserializer (SymbolVisitorDelegate *Delegate, CodeViewContainer Container)
 
Error visitSymbolBegin (CVSymbol &Record, uint32_t Offset) override
 Paired begin/end actions for all symbols.
 
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.
 
virtual Error visitSymbolBegin (CVSymbol &Record, uint32_t Offset)
 Paired begin/end actions for all symbols.
 
virtual Error visitSymbolBegin (CVSymbol &Record)
 
virtual Error visitSymbolEnd (CVSymbol &Record)
 

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 24 of file SymbolDeserializer.h.

Constructor & Destructor Documentation

◆ SymbolDeserializer()

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

Definition at line 55 of file SymbolDeserializer.h.

Member Function Documentation

◆ deserializeAs() [1/2]

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

Definition at line 48 of file SymbolDeserializer.h.

References llvm::codeview::EC.

◆ deserializeAs() [2/2]

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

◆ visitSymbolBegin() [1/2]

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

Reimplemented from llvm::codeview::SymbolVisitorCallbacks.

Definition at line 63 of file SymbolDeserializer.h.

References assert().

◆ visitSymbolBegin() [2/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 59 of file SymbolDeserializer.h.

References visitSymbolBegin().

Referenced by deserializeAs(), and visitSymbolBegin().

◆ visitSymbolEnd()

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

Reimplemented from llvm::codeview::SymbolVisitorCallbacks.

Definition at line 68 of file SymbolDeserializer.h.

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

Referenced by deserializeAs().


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