Public Member Functions | |
common_entry () | |
common_entry (const eh_frame_t &eh_frame) | |
virtual | ~common_entry ()=default |
common_entry (common_entry &&) noexcept=default | |
common_entry (const common_entry &)=default | |
common_entry & | operator= (common_entry &&) noexcept=default |
common_entry & | operator= (const common_entry &)=default |
common_entry & | operator++ () |
operator bool () const | |
bool | is_cie () const |
bool | is_fde () const |
char * | entry_start () const |
char * | entry_end () const |
char * | payload_start () const |
char * | payload_end () const |
eh_frame_t | eh_frame () const |
Protected Member Functions | |
virtual void | parse (char *addr)=0 |
void | non_virtual_parse (char *addr) |
Protected Attributes | |
bool | m_is_cie |
char * | m_entry_start |
char * | m_entry_end |
char * | m_payload_start |
char * | m_payload_end |
eh_frame_t | m_eh_frame |
Common Entry
Both the CIE and the FDE share the length field. The length field can have two different sizes, so this class provides a simple way to describe the CIE/FDE itself (entry start / end), the portion of the CIE/FDE that does not include the length field (the payload), as well as some other functions for convenience.
Definition at line 219 of file eh_frame.h.
common_entry::common_entry | ( | ) |
|
explicit |
Constructor
Creates an invalid CIE/FDE, but stores the location of the beginning of the .eh_frame section.
Definition at line 140 of file eh_frame.cpp.
|
virtualdefault |
Destructor
|
defaultnoexcept |
Default Move Constructor
|
default |
Default Copy Constructor
|
defaultnoexcept |
Default Move Assignment Operator
|
default |
Default Copy Assignment Operator
common_entry & common_entry::operator++ | ( | ) |
Next CIE/FDE
Moves to the next CIE/FDE in the list. If the CIE/FDE is invalid, this function does nothing. If is possible that this function could result in an invalid CIE/FDE, which can be used in a for loop to determine when the end of the list has been approached.
Definition at line 150 of file eh_frame.cpp.
|
inline |
|
inline |
|
inline |
|
inline |
Entry Start
Definition at line 292 of file eh_frame.h.
|
inline |
Entry End
Definition at line 299 of file eh_frame.h.
|
inline |
Payload Start
Definition at line 307 of file eh_frame.h.
|
inline |
Payload End
Definition at line 316 of file eh_frame.h.
|
inline |
EH Framework
Definition at line 323 of file eh_frame.h.
|
protectedpure virtual |
|
protected |
Definition at line 164 of file eh_frame.cpp.
|
protected |
Definition at line 331 of file eh_frame.h.
|
protected |
Definition at line 333 of file eh_frame.h.
|
protected |
Definition at line 334 of file eh_frame.h.
|
protected |
Definition at line 336 of file eh_frame.h.
|
protected |
Definition at line 337 of file eh_frame.h.
|
protected |
Definition at line 339 of file eh_frame.h.