|
LIEF: Library to Instrument Executable Formats Version 0.17.1
|
Class which represents an entry defined in DT_VERDEF or .gnu.version_d. More...
#include <SymbolVersionDefinition.hpp>


Public Types | |
| using | version_aux_t = std::vector<std::unique_ptr<SymbolVersionAux>> |
| using | it_version_aux = ref_iterator<version_aux_t&, SymbolVersionAux*> |
| using | it_const_version_aux = const_ref_iterator<const version_aux_t&, const SymbolVersionAux*> |
| Public Types inherited from LIEF::Object | |
| template<class T> | |
| using | output_t = add_pointer_t<decay_t<T>> |
| template<class T> | |
| using | output_const_t = add_pointer_t<add_const_t<decay_t<T>>> |
Public Member Functions | |
| SymbolVersionDefinition ()=default | |
| SymbolVersionDefinition (const details::Elf64_Verdef &header) | |
| SymbolVersionDefinition (const details::Elf32_Verdef &header) | |
| ~SymbolVersionDefinition () override | |
| SymbolVersionDefinition & | operator= (SymbolVersionDefinition other) |
| SymbolVersionDefinition (const SymbolVersionDefinition &other) | |
| void | swap (SymbolVersionDefinition &other) |
| uint16_t | version () const |
| Version revision. | |
| uint16_t | flags () const |
| Version information. | |
| uint16_t | ndx () const |
| Version index. | |
| uint32_t | hash () const |
| Hash value of the symbol's name (using ELF hash function). | |
| it_version_aux | symbols_aux () |
| SymbolVersionAux entries. | |
| it_const_version_aux | symbols_aux () const |
| void | version (uint16_t version) |
| void | flags (uint16_t flags) |
| void | hash (uint32_t hash) |
| void | accept (Visitor &visitor) const override |
| Public Member Functions inherited from LIEF::Object | |
| Object () | |
| Object (const Object &other) | |
| Object & | operator= (const Object &other) |
| Object (Object &&other) noexcept=default | |
| Object & | operator= (Object &&other) noexcept=default |
| template<class T> | |
| output_t< T > | as () |
| template<class T> | |
| output_const_t< T > | as () const |
| virtual bool | operator== (const Object &other) const |
| virtual bool | operator!= (const Object &other) const |
| virtual | ~Object () |
Class which represents an entry defined in DT_VERDEF or .gnu.version_d.
| using LIEF::ELF::SymbolVersionDefinition::it_const_version_aux = const_ref_iterator<const version_aux_t&, const SymbolVersionAux*> |
| using LIEF::ELF::SymbolVersionDefinition::it_version_aux = ref_iterator<version_aux_t&, SymbolVersionAux*> |
| using LIEF::ELF::SymbolVersionDefinition::version_aux_t = std::vector<std::unique_ptr<SymbolVersionAux>> |
|
default |
Referenced by operator<<, operator=(), swap(), and SymbolVersionDefinition().
| LIEF::ELF::SymbolVersionDefinition::SymbolVersionDefinition | ( | const details::Elf64_Verdef & | header | ) |
| LIEF::ELF::SymbolVersionDefinition::SymbolVersionDefinition | ( | const details::Elf32_Verdef & | header | ) |
|
override |
| LIEF::ELF::SymbolVersionDefinition::SymbolVersionDefinition | ( | const SymbolVersionDefinition & | other | ) |
References SymbolVersionDefinition().
|
overridevirtual |
Implements LIEF::Object.
|
inline |
Version information.
Referenced by flags().
|
inline |
References flags().
|
inline |
|
inline |
References hash().
|
inline |
Version index.
Numeric value used as an index in the LIEF::ELF::SymbolVersion table
| SymbolVersionDefinition & LIEF::ELF::SymbolVersionDefinition::operator= | ( | SymbolVersionDefinition | other | ) |
References SymbolVersionDefinition().
| void LIEF::ELF::SymbolVersionDefinition::swap | ( | SymbolVersionDefinition & | other | ) |
References SymbolVersionDefinition().
|
inline |
SymbolVersionAux entries.
|
inline |
|
inline |
Version revision.
This field should always have the value 1. It will be changed if the versioning implementation has to be changed in an incompatible way.
Referenced by version().
|
inline |
References version().