diff options
author | Eugene Zhulenev <ezhulenev@google.com> | 2018-10-10 10:31:40 -0700 |
---|---|---|
committer | Eugene Zhulenev <ezhulenev@google.com> | 2018-10-10 10:31:40 -0700 |
commit | 2bf1a31d811fef2085bad97f98e2d0095136b636 (patch) | |
tree | ef48422c1b1a317f3a082ef1cfa28a1d4360659d /Eigen | |
parent | f3130ee1bab17d7d031d08d031d078707a67e3d1 (diff) |
Use void type if stl-style iterators are not supported
Diffstat (limited to 'Eigen')
-rw-r--r-- | Eigen/src/Core/DenseBase.h | 4 | ||||
-rw-r--r-- | Eigen/src/Core/StlIterators.h | 13 | ||||
-rw-r--r-- | Eigen/src/Core/util/ForwardDeclarations.h | 1 |
3 files changed, 2 insertions, 16 deletions
diff --git a/Eigen/src/Core/DenseBase.h b/Eigen/src/Core/DenseBase.h index eedeacc94..2a0927317 100644 --- a/Eigen/src/Core/DenseBase.h +++ b/Eigen/src/Core/DenseBase.h @@ -594,12 +594,12 @@ template<typename Derived> class DenseBase typedef typename internal::conditional< IsVectorAtCompileTime, iterator_type, - internal::not_an_iterator<const Derived> + void >::type iterator; typedef typename internal::conditional< IsVectorAtCompileTime, const_iterator_type, - internal::not_an_iterator<const Derived> + void >::type const_iterator; #endif diff --git a/Eigen/src/Core/StlIterators.h b/Eigen/src/Core/StlIterators.h index 5f2edc4e6..24eef1269 100644 --- a/Eigen/src/Core/StlIterators.h +++ b/Eigen/src/Core/StlIterators.h @@ -11,19 +11,6 @@ namespace Eigen { namespace internal { -// Iterator type for XprType that do not support stl-style iterators. Allows to -// detect that expression does not support stl iterators at compile time. -template<typename XprType> -class not_an_iterator -{ - not_an_iterator() : mp_xpr(0), m_index(0) {} - not_an_iterator(XprType& xpr, Index index) : mp_xpr(&xpr), m_index(index) {} - - protected: - XprType *mp_xpr; - Index m_index; -}; - template<typename XprType,typename Derived> class indexed_based_stl_iterator_base { diff --git a/Eigen/src/Core/util/ForwardDeclarations.h b/Eigen/src/Core/util/ForwardDeclarations.h index 49c4e0c31..3ab3a5f50 100644 --- a/Eigen/src/Core/util/ForwardDeclarations.h +++ b/Eigen/src/Core/util/ForwardDeclarations.h @@ -135,7 +135,6 @@ template<typename Derived> class SolverBase; template<typename XprType> class InnerIterator; namespace internal { -template<typename XprType> class not_an_iterator; template<typename XprType> class generic_randaccess_stl_iterator; template<typename XprType> class pointer_based_stl_iterator; template<typename XprType, DirectionType Direction> class subvector_stl_iterator; |