PStack  2.0
Stack trace printer for MSVC and GCC binaries
psystem::symbol_view Class Reference

Exposes an executable image's debugging symbol data. More...

#include <symbol_view.hpp>

Construction / Destruction

 symbol_view (psystem::address_t const symbol_start, char const *string_start, psystem::address_t const module_base) noexcept
 Construct the view into the debug symbol table. More...
 

Public Interface

image_symbol_iterator begin () const
 Acquire an iterator to the first debugging symbol in the view. More...
 
image_symbol_iterator end () const
 Acquire an iterator just past the final debugging symbol in the view. More...
 

Member Data

psystem::address_t m_symbol_start
 The address that points to the beginning of the symbol table.
 
char const * m_string_start
 The address that points to the beginning of the string table. More...
 
psystem::address_t m_module_base
 Offset from which all function / symbol addresses will be located.
 

Detailed Description

Exposes an executable image's debugging symbol data.

This class exposes an executable image's debugging symbols. This is a "view" in that is it backed by a memory-mapped file. All data extracted from the members is actually read from the module, and not stored here.

Author
Matt Bisson
Date
8 February, 2015
Since
PSystem 2.0
Version
PSystem 2.0

Constructor & Destructor Documentation

psystem::symbol_view::symbol_view ( psystem::address_t const  symbol_start,
char const *  string_start,
psystem::address_t const  module_base 
)
explicitnoexcept

Construct the view into the debug symbol table.

Parameters
[in]symbol_startThe address that points to the beginning of the symbol table.
[in]string_startThe address that points to the beginning of the string table. The beginning of the string table marks the end of the debug symbol table in COFF executable images. This address has a double-purpose.
[in]module_baseOffset from which all function / symbol addresses will be located.

Member Function Documentation

image_symbol_iterator psystem::symbol_view::begin ( ) const

Acquire an iterator to the first debugging symbol in the view.

Returns
An iterator representing the first visible debugging symbol.
image_symbol_iterator psystem::symbol_view::end ( ) const

Acquire an iterator just past the final debugging symbol in the view.

Returns
An iterator representing the end of the visible debugging symbols.

Member Data Documentation

char const* psystem::symbol_view::m_string_start

The address that points to the beginning of the string table.

The beginning of the string table marks the end of the debug symbol table in COFF executable images. This address has a double-purpose.


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