LIEF: Library to Instrument Executable Formats Version 0.15.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
LIEF::ref_iterator< T, U, ITERATOR_T > Class Template Reference

Iterator which returns reference on container's values. More...

#include <iterators.hpp>

Public Types

using iterator_category = std::bidirectional_iterator_tag
 
using value_type = decay_t<U>
 
using difference_type = ptrdiff_t
 
using pointer = typename std::remove_pointer<U>::type*
 
using reference = typename std::remove_pointer<U>::type&
 
using container_type = T
 
using DT_VAL = U
 
using DT = decay_t<T>
 
using ref_t = typename ref_iterator::reference
 
using pointer_t = typename ref_iterator::pointer
 

Public Member Functions

 ref_iterator (T container)
 
 ref_iterator (const ref_iterator &copy)
 
ref_iteratoroperator= (ref_iterator other)
 
void swap (ref_iterator &other)
 
ref_iteratoroperator++ ()
 
ref_iterator operator++ (int)
 
ref_iteratoroperator-- ()
 
ref_iterator operator-- (int)
 
ref_iteratoroperator+= (const typename ref_iterator::difference_type &movement)
 
ref_iteratoroperator-= (const typename ref_iterator::difference_type &movement)
 
std::enable_if<!std::is_const< ref_t >::value, remove_const_t< ref_t > >::type operator[] (size_t n)
 
add_const_t< ref_t > operator[] (size_t n) const
 
ref_iterator operator+ (typename ref_iterator::difference_type n) const
 
ref_iterator operator- (typename ref_iterator::difference_type n) const
 
ref_iterator::difference_type operator- (const ref_iterator &rhs) const
 
bool operator< (const ref_iterator &rhs) const
 
bool operator> (const ref_iterator &rhs) const
 
bool operator>= (const ref_iterator &rhs) const
 
bool operator<= (const ref_iterator &rhs) const
 
ref_iterator begin () const
 
ref_iterator cbegin () const
 
ref_iterator end () const
 
ref_iterator cend () const
 
bool operator== (const ref_iterator &other) const
 
bool operator!= (const ref_iterator &other) const
 
size_t size () const
 
bool empty () const
 
std::enable_if<!std::is_const< ref_t >::value, remove_const_t< ref_t > >::type operator* ()
 
template<typename V = DT_VAL>
std::enable_if< std::is_pointer< V >::value, add_const_t< ref_t > >::type operator* () const
 
template<typename V = DT_VAL>
std::enable_if<!std::is_pointer< V >::value, add_const_t< ref_t > >::type operator* () const
 
std::enable_if<!std::is_const< pointer_t >::value, pointer_t >::type operator-> ()
 
add_const_t< pointer_t > operator-> () const
 

Detailed Description

template<class T, typename U = typename decay_t<T>::value_type, class ITERATOR_T = typename decay_t<T>::iterator>
class LIEF::ref_iterator< T, U, ITERATOR_T >

Iterator which returns reference on container's values.


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