LLVM 22.0.0git
llvm::codeview::SymbolDeserializer Class Reference

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

Inheritance diagram for llvm::codeview::SymbolDeserializer:
[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.

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.

Referenced by deserializeAs().

Member Function Documentation

◆ deserializeAs() [1/2]

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

Definition at line 48 of file SymbolDeserializer.h.

References deserializeAs(), llvm::codeview::EC, and T.

◆ deserializeAs() [2/2]

◆ 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 llvm::Offset, and 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: