Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction > Class Template Reference

#include <StlIterators.h>

+ Inheritance diagram for Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >:

Classes

class  subvector_stl_reverse_iterator_ptr
 

Public Types

typedef std::conditional_t< bool(is_lvalue), SubVectorType, ConstSubVectorTypereference
 
typedef reference::PlainObject value_type
 
typedef subvector_stl_reverse_iterator_ptr pointer
 
- Public Types inherited from Eigen::internal::indexed_based_stl_reverse_iterator_base< subvector_stl_reverse_iterator< XprType, Direction > >
typedef Index difference_type
 
typedef std::random_access_iterator_tag iterator_category
 

Public Member Functions

 subvector_stl_reverse_iterator ()
 
 subvector_stl_reverse_iterator (XprType &xpr, Index index)
 
reference operator* () const
 
reference operator[] (Index i) const
 
pointer operator-> () const
 
- Public Member Functions inherited from Eigen::internal::indexed_based_stl_reverse_iterator_base< subvector_stl_reverse_iterator< XprType, Direction > >
 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)
 
subvector_stl_reverse_iterator< XprType, Direction > & operator++ ()
 
subvector_stl_reverse_iterator< XprType, Directionoperator++ (int)
 
subvector_stl_reverse_iterator< XprType, Direction > & operator-- ()
 
subvector_stl_reverse_iterator< XprType, Directionoperator-- (int)
 
difference_type operator- (const indexed_based_stl_reverse_iterator_base &other) const
 
difference_type operator- (const other_iterator &other) const
 
subvector_stl_reverse_iterator< XprType, Direction > & operator+= (Index b)
 
subvector_stl_reverse_iterator< XprType, Direction > & operator-= (Index b)
 
bool operator== (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator== (const other_iterator &other) const
 
bool operator!= (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator!= (const other_iterator &other) const
 
bool operator< (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator< (const other_iterator &other) const
 
bool operator<= (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator<= (const other_iterator &other) const
 
bool operator> (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator> (const other_iterator &other) const
 
bool operator>= (const indexed_based_stl_reverse_iterator_base &other) const
 
bool operator>= (const other_iterator &other) const
 

Protected Types

enum  { is_lvalue = internal::is_lvalue<XprType>::value }
 
typedef indexed_based_stl_reverse_iterator_base< subvector_stl_reverse_iteratorBase
 
typedef std::conditional_t< Direction==Vertical, typename XprType::ColXpr, typename XprType::RowXpr > SubVectorType
 
typedef std::conditional_t< Direction==Vertical, typename XprType::ConstColXpr, typename XprType::ConstRowXpr > ConstSubVectorType
 
- Protected Types inherited from Eigen::internal::indexed_based_stl_reverse_iterator_base< subvector_stl_reverse_iterator< XprType, Direction > >
typedef indexed_based_stl_iterator_traits< subvector_stl_reverse_iterator< XprType, Direction > > 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 Attributes

Index m_index
 
XprTypemp_xpr
 
- Protected Attributes inherited from Eigen::internal::indexed_based_stl_reverse_iterator_base< subvector_stl_reverse_iterator< XprType, Direction > >
XprTypemp_xpr
 
Index m_index
 

Additional Inherited Members

- Protected Member Functions inherited from Eigen::internal::indexed_based_stl_reverse_iterator_base< subvector_stl_reverse_iterator< XprType, Direction > >
subvector_stl_reverse_iterator< XprType, Direction > & derived ()
 
const subvector_stl_reverse_iterator< XprType, Direction > & derived () const
 

Member Typedef Documentation

◆ Base

◆ ConstSubVectorType

template<typename XprType , DirectionType Direction>
typedef std::conditional_t<Direction == Vertical, typename XprType::ConstColXpr, typename XprType::ConstRowXpr> Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::ConstSubVectorType
protected

◆ pointer

template<typename XprType , DirectionType Direction>
typedef subvector_stl_reverse_iterator_ptr Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::pointer

◆ reference

template<typename XprType , DirectionType Direction>
typedef std::conditional_t<bool(is_lvalue), SubVectorType, ConstSubVectorType> Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::reference

◆ SubVectorType

template<typename XprType , DirectionType Direction>
typedef std::conditional_t<Direction == Vertical, typename XprType::ColXpr, typename XprType::RowXpr> Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::SubVectorType
protected

◆ value_type

template<typename XprType , DirectionType Direction>
typedef reference::PlainObject Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::value_type

Member Enumeration Documentation

◆ anonymous enum

template<typename XprType , DirectionType Direction>
anonymous enum
protected
Enumerator
is_lvalue 
@ is_lvalue
Definition: StlIterators.h:529
@ value
Definition: XprHelper.h:820

Constructor & Destructor Documentation

◆ subvector_stl_reverse_iterator() [1/2]

template<typename XprType , DirectionType Direction>
Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::subvector_stl_reverse_iterator ( )
inline
556 : Base() {}
indexed_based_stl_reverse_iterator_base< subvector_stl_reverse_iterator > Base
Definition: StlIterators.h:531

◆ subvector_stl_reverse_iterator() [2/2]

template<typename XprType , DirectionType Direction>
Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::subvector_stl_reverse_iterator ( XprType xpr,
Index  index 
)
inline
557 : Base(xpr, index) {}

Member Function Documentation

◆ operator*()

template<typename XprType , DirectionType Direction>
reference Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::operator* ( ) const
inline
559 { return (*mp_xpr).template subVector<Direction>(m_index); }
Index m_index
Definition: StlIterators.h:312

References Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::m_index.

◆ operator->()

template<typename XprType , DirectionType Direction>
pointer Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::operator-> ( ) const
inline
561 { return (*mp_xpr).template subVector<Direction>(m_index); }

References Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::m_index.

◆ operator[]()

template<typename XprType , DirectionType Direction>
reference Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::operator[] ( Index  i) const
inline
560 { return (*mp_xpr).template subVector<Direction>(m_index + i); }
int i
Definition: BiCGSTAB_step_by_step.cpp:9

References i, and Eigen::internal::subvector_stl_reverse_iterator< XprType, Direction >::m_index.

Member Data Documentation

◆ m_index

◆ mp_xpr

template<typename XprType , DirectionType Direction>
XprType* Eigen::internal::indexed_based_stl_reverse_iterator_base< Derived >::mp_xpr
protected

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