LIEF: Library to Instrument Executable Formats Version 1.0.0
Loading...
Searching...
No Matches
LIEF::runtime::windows::LdrDataTableEntry::Iterator Class Referencefinal

Bidirectional iterator over the LdrDataTableEntry mirroring the doubly-linked list used by Windows. More...

#include <LdrDataTableEntry.hpp>

Inheritance diagram for LIEF::runtime::windows::LdrDataTableEntry::Iterator:
Collaboration diagram for LIEF::runtime::windows::LdrDataTableEntry::Iterator:

Public Types

using implementation = details::ldr_entry_it
Public Types inherited from LIEF::iterator_facade_base< Iterator, std::bidirectional_iterator_tag, LdrDataTableEntry, std::ptrdiff_t, const LdrDataTableEntry *, const LdrDataTableEntry & >
using iterator_category
using value_type
using difference_type
using pointer
using reference

Public Member Functions

 Iterator ()
 Iterator (std::unique_ptr< details::ldr_entry_it > impl)
 Iterator (const Iterator &)
Iteratoroperator= (const Iterator &)
 Iterator (Iterator &&) noexcept
Iteratoroperator= (Iterator &&) noexcept
 ~Iterator ()
Iteratoroperator++ ()
Iteratoroperator-- ()
const LdrDataTableEntryoperator* () const
const LdrDataTableEntryoperator-> () const
std::unique_ptr< LdrDataTableEntryyield ()
 Transfer ownership of the entry at the current position to the caller. Returns nullptr if the iterator is past-the-end.
DerivedT operator++ (int)
DerivedT operator-- (int)
Public Member Functions inherited from LIEF::iterator_facade_base< Iterator, std::bidirectional_iterator_tag, LdrDataTableEntry, std::ptrdiff_t, const LdrDataTableEntry *, const LdrDataTableEntry & >
Iterator operator+ (std::ptrdiff_t n) const
Iterator operator- (std::ptrdiff_t n) const
Iterator & operator++ ()
Iterator & operator-- ()
bool operator!= (const Iterator &RHS) const
bool operator> (const Iterator &RHS) const
bool operator<= (const Iterator &RHS) const
bool operator>= (const Iterator &RHS) const
PointerProxy operator-> () const
ReferenceProxy operator[] (std::ptrdiff_t n) const

Detailed Description

Bidirectional iterator over the LdrDataTableEntry mirroring the doubly-linked list used by Windows.

Member Typedef Documentation

◆ implementation

Constructor & Destructor Documentation

◆ Iterator() [1/4]

LIEF::runtime::windows::LdrDataTableEntry::Iterator::Iterator ( )

◆ Iterator() [2/4]

LIEF::runtime::windows::LdrDataTableEntry::Iterator::Iterator ( std::unique_ptr< details::ldr_entry_it > impl)

References LIEF_API.

◆ Iterator() [3/4]

LIEF::runtime::windows::LdrDataTableEntry::Iterator::Iterator ( const Iterator & )

References Iterator(), and LIEF_API.

◆ Iterator() [4/4]

LIEF::runtime::windows::LdrDataTableEntry::Iterator::Iterator ( Iterator && )
noexcept

References Iterator(), and LIEF_API.

◆ ~Iterator()

LIEF::runtime::windows::LdrDataTableEntry::Iterator::~Iterator ( )

References Iterator(), and LIEF_API.

Member Function Documentation

◆ operator*()

const LdrDataTableEntry & LIEF::runtime::windows::LdrDataTableEntry::Iterator::operator* ( ) const

◆ operator++() [1/2]

Iterator & LIEF::runtime::windows::LdrDataTableEntry::Iterator::operator++ ( )

◆ operator++() [2/2]

DerivedT LIEF::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT >::operator++ ( int )
inline

◆ operator--() [1/2]

Iterator & LIEF::runtime::windows::LdrDataTableEntry::Iterator::operator-- ( )

◆ operator--() [2/2]

DerivedT LIEF::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT >::operator-- ( int )
inline

◆ operator->()

const LdrDataTableEntry * LIEF::runtime::windows::LdrDataTableEntry::Iterator::operator-> ( ) const

◆ operator=() [1/2]

Iterator & LIEF::runtime::windows::LdrDataTableEntry::Iterator::operator= ( const Iterator & )

References Iterator(), and LIEF_API.

◆ operator=() [2/2]

Iterator & LIEF::runtime::windows::LdrDataTableEntry::Iterator::operator= ( Iterator && )
noexcept

References Iterator(), and LIEF_API.

◆ yield()

std::unique_ptr< LdrDataTableEntry > LIEF::runtime::windows::LdrDataTableEntry::Iterator::yield ( )

Transfer ownership of the entry at the current position to the caller. Returns nullptr if the iterator is past-the-end.

References LIEF::runtime::windows::LdrDataTableEntry::LdrDataTableEntry(), LIEF_API, and yield().

Referenced by yield().


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