Eigen::internal::generic_randaccess_stl_iterator< XprType > Class Template Reference

#include <StlIterators.h>

+ Inheritance diagram for Eigen::internal::generic_randaccess_stl_iterator< XprType >:

Public Types

typedef XprType::Scalar value_type
 
typedef std::conditional_t< bool(is_lvalue), value_type *, const value_type * > pointer
 
typedef std::conditional_t< bool(is_lvalue), value_type &, read_only_ref_treference
 
- Public Types inherited from Eigen::internal::indexed_based_stl_iterator_base< generic_randaccess_stl_iterator< XprType > >
typedef Index difference_type
 
typedef std::random_access_iterator_tag iterator_category
 

Public Member Functions

 generic_randaccess_stl_iterator ()
 
 generic_randaccess_stl_iterator (XprType &xpr, Index index)
 
 generic_randaccess_stl_iterator (const typename Base::non_const_iterator &other)
 
reference operator* () const
 
reference operator[] (Index i) const
 
pointer operator-> () const
 
indexed_based_stl_iterator_baseoperator= (const non_const_iterator &other)
 
- Public Member Functions inherited from Eigen::internal::indexed_based_stl_iterator_base< generic_randaccess_stl_iterator< XprType > >
 indexed_based_stl_iterator_base () EIGEN_NO_THROW
 
 indexed_based_stl_iterator_base (XprType &xpr, Index index) EIGEN_NO_THROW
 
 indexed_based_stl_iterator_base (const non_const_iterator &other) EIGEN_NO_THROW
 
indexed_based_stl_iterator_baseoperator= (const non_const_iterator &other)
 
generic_randaccess_stl_iterator< XprType > & operator++ ()
 
generic_randaccess_stl_iterator< XprTypeoperator++ (int)
 
generic_randaccess_stl_iterator< XprType > & operator-- ()
 
generic_randaccess_stl_iterator< XprTypeoperator-- (int)
 
difference_type operator- (const indexed_based_stl_iterator_base &other) const
 
difference_type operator- (const other_iterator &other) const
 
generic_randaccess_stl_iterator< XprType > & operator+= (Index b)
 
generic_randaccess_stl_iterator< XprType > & operator-= (Index b)
 
bool operator== (const indexed_based_stl_iterator_base &other) const
 
bool operator== (const other_iterator &other) const
 
bool operator!= (const indexed_based_stl_iterator_base &other) const
 
bool operator!= (const other_iterator &other) const
 
bool operator< (const indexed_based_stl_iterator_base &other) const
 
bool operator< (const other_iterator &other) const
 
bool operator<= (const indexed_based_stl_iterator_base &other) const
 
bool operator<= (const other_iterator &other) const
 
bool operator> (const indexed_based_stl_iterator_base &other) const
 
bool operator> (const other_iterator &other) const
 
bool operator>= (const indexed_based_stl_iterator_base &other) const
 
bool operator>= (const other_iterator &other) const
 

Protected Types

enum  { has_direct_access = (internal::traits<XprType>::Flags & DirectAccessBit) ? 1 : 0 , is_lvalue = internal::is_lvalue<XprType>::value }
 
typedef indexed_based_stl_iterator_base< generic_randaccess_stl_iteratorBase
 
typedef const value_type read_only_ref_t
 
- Protected Types inherited from Eigen::internal::indexed_based_stl_iterator_base< generic_randaccess_stl_iterator< XprType > >
typedef indexed_based_stl_iterator_traits< generic_randaccess_stl_iterator< XprType > > traits
 
typedef traits::XprType XprType
 
typedef indexed_based_stl_iterator_base< typename traits::non_const_iterator > non_const_iterator
 
typedef indexed_based_stl_iterator_base< typename traits::const_iterator > const_iterator
 
typedef std::conditional_t< internal::is_const< XprType >::value, non_const_iterator, const_iteratorother_iterator
 

Protected Attributes

Index m_index
 
XprTypemp_xpr
 
- Protected Attributes inherited from Eigen::internal::indexed_based_stl_iterator_base< generic_randaccess_stl_iterator< XprType > >
XprTypemp_xpr
 
Index m_index
 

Additional Inherited Members

- Protected Member Functions inherited from Eigen::internal::indexed_based_stl_iterator_base< generic_randaccess_stl_iterator< XprType > >
generic_randaccess_stl_iterator< XprType > & derived ()
 
const generic_randaccess_stl_iterator< XprType > & derived () const
 

Member Typedef Documentation

◆ Base

◆ pointer

template<typename XprType >
typedef std::conditional_t<bool(is_lvalue), value_type*, const value_type*> Eigen::internal::generic_randaccess_stl_iterator< XprType >::pointer

◆ read_only_ref_t

template<typename XprType >
typedef const value_type Eigen::internal::generic_randaccess_stl_iterator< XprType >::read_only_ref_t
protected

◆ reference

template<typename XprType >
typedef std::conditional_t<bool(is_lvalue), value_type&, read_only_ref_t> Eigen::internal::generic_randaccess_stl_iterator< XprType >::reference

◆ value_type

Member Enumeration Documentation

◆ anonymous enum

template<typename XprType >
anonymous enum
protected
Enumerator
has_direct_access 
is_lvalue 
445  {
446  has_direct_access = (internal::traits<XprType>::Flags & DirectAccessBit) ? 1 : 0,
448  };
@ is_lvalue
Definition: StlIterators.h:447
@ has_direct_access
Definition: StlIterators.h:446
const unsigned int DirectAccessBit
Definition: Constants.h:159
@ value
Definition: XprHelper.h:820

Constructor & Destructor Documentation

◆ generic_randaccess_stl_iterator() [1/3]

463 : Base() {}
indexed_based_stl_iterator_base< generic_randaccess_stl_iterator > Base
Definition: StlIterators.h:450

◆ generic_randaccess_stl_iterator() [2/3]

template<typename XprType >
Eigen::internal::generic_randaccess_stl_iterator< XprType >::generic_randaccess_stl_iterator ( XprType xpr,
Index  index 
)
inline
464 : Base(xpr, index) {}

◆ generic_randaccess_stl_iterator() [3/3]

465 : Base(other) {}

Member Function Documentation

◆ operator*()

◆ operator->()

template<typename XprType >
pointer Eigen::internal::generic_randaccess_stl_iterator< XprType >::operator-> ( ) const
inline

◆ operator=()

template<typename XprType >
indexed_based_stl_iterator_base& Eigen::internal::indexed_based_stl_iterator_base< Derived >::operator=
inline
45  {
46  mp_xpr = other.mp_xpr;
47  m_index = other.m_index;
48  return *this;
49  }

◆ operator[]()

template<typename XprType >
reference Eigen::internal::generic_randaccess_stl_iterator< XprType >::operator[] ( Index  i) const
inline

Member Data Documentation

◆ m_index

◆ mp_xpr


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