Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived > Class Template Reference

#include <StlIterators.h>

Public Types

typedef Index difference_type
 
typedef std::random_access_iterator_tag iterator_category
 

Public Member Functions

 indexed_based_stl_reverse_iterator_base ()
 
 indexed_based_stl_reverse_iterator_base (XprType &xpr, Index index)
 
 indexed_based_stl_reverse_iterator_base (const non_const_iterator &other)
 
indexed_based_stl_reverse_iterator_baseoperator= (const non_const_iterator &other)
 
Derived & operator++ ()
 
Derived & operator-- ()
 
Derived operator++ (int)
 
Derived operator-- (int)
 
Derived & operator+= (Index b)
 
Derived & operator-= (Index b)
 
difference_type operator- (const indexed_based_stl_reverse_iterator_base &other) const
 
difference_type operator- (const other_iterator &other) const
 
bool operator== (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator!= (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator< (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator<= (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator> (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator>= (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator== (const other_iterator &other) const
 
bool operator!= (const other_iterator &other) const
 
bool operator< (const other_iterator &other) const
 
bool operator<= (const other_iterator &other) const
 
bool operator> (const other_iterator &other) const
 
bool operator>= (const other_iterator &other) const
 

Protected Types

typedef indexed_based_stl_iterator_traits< Derived > traits
 
typedef traits::XprType XprType
 
typedef indexed_based_stl_reverse_iterator_base< typename traits::non_const_iterator > non_const_iterator
 
typedef indexed_based_stl_reverse_iterator_base< typename traits::const_iterator > const_iterator
 
typedef std::conditional_t< internal::is_const< XprType >::value, non_const_iterator, const_iteratorother_iterator
 

Protected Member Functions

Derived & derived ()
 
const Derived & derived () const
 

Protected Attributes

XprTypemp_xpr
 
Index m_index
 

Friends

class indexed_based_stl_reverse_iterator_base< typename traits::const_iterator >
 
class indexed_based_stl_reverse_iterator_base< typename traits::non_const_iterator >
 
Derived operator+ (const indexed_based_stl_reverse_iterator_base &a, Index b)
 
Derived operator- (const indexed_based_stl_reverse_iterator_base &a, Index b)
 
Derived operator+ (Index a, const indexed_based_stl_reverse_iterator_base &b)
 
Derived operator- (Index a, const indexed_based_stl_reverse_iterator_base &b)
 

Member Typedef Documentation

◆ const_iterator

template<typename Derived >
typedef indexed_based_stl_reverse_iterator_base<typename traits::const_iterator> Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::const_iterator
protected

◆ difference_type

template<typename Derived >
typedef Index Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::difference_type

◆ iterator_category

template<typename Derived >
typedef std::random_access_iterator_tag Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::iterator_category

◆ non_const_iterator

template<typename Derived >
typedef indexed_based_stl_reverse_iterator_base<typename traits::non_const_iterator> Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::non_const_iterator
protected

◆ other_iterator

template<typename Derived >
typedef std::conditional_t<internal::is_const<XprType>::value, non_const_iterator, const_iterator> Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::other_iterator
protected

◆ traits

template<typename Derived >
typedef indexed_based_stl_iterator_traits<Derived> Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::traits
protected

◆ XprType

template<typename Derived >
typedef traits::XprType Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::XprType
protected

Constructor & Destructor Documentation

◆ indexed_based_stl_reverse_iterator_base() [1/3]

185 : mp_xpr(0), m_index(0) {}
XprType * mp_xpr
Definition: StlIterators.h:311

◆ indexed_based_stl_reverse_iterator_base() [2/3]

template<typename Derived >
Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::indexed_based_stl_reverse_iterator_base ( XprType xpr,
Index  index 
)
inline
186 : mp_xpr(&xpr), m_index(index) {}

◆ indexed_based_stl_reverse_iterator_base() [3/3]

189  : mp_xpr(other.mp_xpr), m_index(other.m_index) {}

Member Function Documentation

◆ derived() [1/2]

◆ derived() [2/2]

template<typename Derived >
const Derived& Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::derived ( ) const
inlineprotected
309 { return static_cast<const Derived&>(*this); }

◆ operator!=() [1/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator!= ( const indexed_based_stl_reverse_iterator_base< Derived > &  other) const
inline
261  {
262  eigen_assert(mp_xpr == other.mp_xpr);
263  return m_index != other.m_index;
264  }
#define eigen_assert(x)
Definition: Macros.h:910

References eigen_assert, Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::m_index, and Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::mp_xpr.

◆ operator!=() [2/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator!= ( const other_iterator other) const
inline

◆ operator++() [1/2]

◆ operator++() [2/2]

template<typename Derived >
Derived Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator++ ( int  )
inline

◆ operator+=()

template<typename Derived >
Derived& Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator+= ( Index  b)
inline

◆ operator-() [1/2]

◆ operator-() [2/2]

◆ operator--() [1/2]

◆ operator--() [2/2]

template<typename Derived >
Derived Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator-- ( int  )
inline

◆ operator-=()

◆ operator<() [1/2]

◆ operator<() [2/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator< ( const other_iterator other) const
inline

◆ operator<=() [1/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator<= ( const indexed_based_stl_reverse_iterator_base< Derived > &  other) const
inline

◆ operator<=() [2/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator<= ( const other_iterator other) const
inline

◆ operator=()

◆ operator==() [1/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator== ( const indexed_based_stl_reverse_iterator_base< Derived > &  other) const
inline

◆ operator==() [2/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator== ( const other_iterator other) const
inline

◆ operator>() [1/2]

◆ operator>() [2/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator> ( const other_iterator other) const
inline

◆ operator>=() [1/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator>= ( const indexed_based_stl_reverse_iterator_base< Derived > &  other) const
inline

◆ operator>=() [2/2]

template<typename Derived >
bool Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::operator>= ( const other_iterator other) const
inline

Friends And Related Function Documentation

◆ indexed_based_stl_reverse_iterator_base< typename traits::const_iterator >

template<typename Derived >
friend class indexed_based_stl_reverse_iterator_base< typename traits::const_iterator >
friend

◆ indexed_based_stl_reverse_iterator_base< typename traits::non_const_iterator >

template<typename Derived >
friend class indexed_based_stl_reverse_iterator_base< typename traits::non_const_iterator >
friend

◆ operator+ [1/2]

template<typename Derived >
Derived operator+ ( const indexed_based_stl_reverse_iterator_base< Derived > &  a,
Index  b 
)
friend
217  {
218  Derived ret(a.derived());
219  ret += b;
220  return ret;
221  }
Eigen::DenseIndex ret
Definition: level1_cplx_impl.h:43
const Scalar * a
Definition: level2_cplx_impl.h:32

◆ operator+ [2/2]

template<typename Derived >
Derived operator+ ( Index  a,
const indexed_based_stl_reverse_iterator_base< Derived > &  b 
)
friend
227  {
228  Derived ret(b.derived());
229  ret += a;
230  return ret;
231  }

◆ operator- [1/2]

template<typename Derived >
Derived operator- ( const indexed_based_stl_reverse_iterator_base< Derived > &  a,
Index  b 
)
friend
222  {
223  Derived ret(a.derived());
224  ret -= b;
225  return ret;
226  }

◆ operator- [2/2]

template<typename Derived >
Derived operator- ( Index  a,
const indexed_based_stl_reverse_iterator_base< Derived > &  b 
)
friend
232  {
233  Derived ret(b.derived());
234  ret -= a;
235  return ret;
236  }

Member Data Documentation

◆ m_index

◆ mp_xpr


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