Table of Contents

Class SerializedPdbImage

Namespace
AsmResolver.Symbols.Pdb
Assembly
AsmResolver.Symbols.Pdb.dll

Provides an implementation for a PDB image that is read from an input MSF file.

public class SerializedPdbImage : PdbImage, ICodeViewSymbolProvider
Inheritance
SerializedPdbImage
Implements
Inherited Members

Constructors

SerializedPdbImage(MsfFile, PdbReaderParameters)

Interprets a PDB image from the provided MSF file.

public SerializedPdbImage(MsfFile file, PdbReaderParameters readerParameters)

Parameters

file MsfFile

The MSF file to read from.

readerParameters PdbReaderParameters

The parameters to use while reading the PDB image.

Methods

GetIdLeafRecords()

Obtains all records stored in the original IPI stream of the PDB image.

public override IEnumerable<IIpiLeaf> GetIdLeafRecords()

Returns

IEnumerable<IIpiLeaf>

An object that lazily enumerates all IPI leaf records.

GetLeafRecords()

Obtains all records stored in the original TPI stream of the PDB image.

public override IEnumerable<ITpiLeaf> GetLeafRecords()

Returns

IEnumerable<ITpiLeaf>

An object that lazily enumerates all TPI leaf records.

GetModules()

Obtains a collection of modules stored in the DBI stream of the PDB image.

protected override IList<PdbModule> GetModules()

Returns

IList<PdbModule>

The modules.

Remarks

This method is called upon initialization of the Modules property.

GetSymbols()

Obtains a collection of symbols stored in the symbol record stream of the PDB image.

protected override IList<ICodeViewSymbol> GetSymbols()

Returns

IList<ICodeViewSymbol>

The symbols.

Remarks

This method is called upon initialization of the Symbols property.

TryGetIdLeafRecord(uint, out IIpiLeaf?)

Attempts to obtain an ID record from the IPI stream based on its ID index.

public override bool TryGetIdLeafRecord(uint idIndex, out IIpiLeaf? leaf)

Parameters

idIndex uint

The ID index.

leaf IIpiLeaf

The resolved leaf.

Returns

bool

true if the leaf was found, false otherwise.

TryGetLeafRecord(uint, out ITpiLeaf?)

Attempts to obtain a type record from the TPI stream based on its type index.

public override bool TryGetLeafRecord(uint typeIndex, out ITpiLeaf? leaf)

Parameters

typeIndex uint

The type index.

leaf ITpiLeaf

The resolved type.

Returns

bool

true if the type was found, false otherwise.