aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/MatrixBase.h
diff options
context:
space:
mode:
Diffstat (limited to 'Eigen/src/Core/MatrixBase.h')
-rw-r--r--Eigen/src/Core/MatrixBase.h32
1 files changed, 11 insertions, 21 deletions
diff --git a/Eigen/src/Core/MatrixBase.h b/Eigen/src/Core/MatrixBase.h
index f94764731..6ec7ddbb7 100644
--- a/Eigen/src/Core/MatrixBase.h
+++ b/Eigen/src/Core/MatrixBase.h
@@ -318,17 +318,6 @@ template<typename Derived> class MatrixBase
Derived& operator-=(const AnyMatrixBase<OtherDerived> &other)
{ other.derived().subToDense(derived()); return derived(); }
-
- template<typename ProductDerived, typename Lhs, typename Rhs>
- Derived& operator=(const ProductBase<ProductDerived, Lhs, Rhs> &other);
-
- template<typename ProductDerived, typename Lhs, typename Rhs>
- Derived& operator+=(const ProductBase<ProductDerived, Lhs, Rhs> &other);
-
- template<typename ProductDerived, typename Lhs, typename Rhs>
- Derived& operator-=(const ProductBase<ProductDerived, Lhs, Rhs> &other);
-
-
template<typename OtherDerived,typename OtherEvalType>
Derived& operator=(const ReturnByValue<OtherDerived,OtherEvalType>& func);
@@ -338,13 +327,20 @@ template<typename Derived> class MatrixBase
Derived& lazyAssign(const MatrixBase<OtherDerived>& other);
/** Overloaded for cache friendly product evaluation */
- template<typename Lhs, typename Rhs>
- Derived& lazyAssign(const Product<Lhs,Rhs,CacheFriendlyProduct>& product);
-
- /** Overloaded for cache friendly product evaluation */
template<typename OtherDerived>
Derived& lazyAssign(const Flagged<OtherDerived, 0, EvalBeforeNestingBit | EvalBeforeAssigningBit>& other)
{ return lazyAssign(other._expression()); }
+
+ template<typename ProductDerived, typename Lhs, typename Rhs>
+ Derived& lazyAssign(const ProductBase<ProductDerived, Lhs,Rhs>& other);
+
+ template<typename ProductDerived, typename Lhs, typename Rhs>
+ Derived& operator+=(const Flagged<ProductBase<ProductDerived, Lhs,Rhs>, 0,
+ EvalBeforeNestingBit | EvalBeforeAssigningBit>& other);
+
+ template<typename ProductDerived, typename Lhs, typename Rhs>
+ Derived& operator-=(const Flagged<ProductBase<ProductDerived, Lhs,Rhs>, 0,
+ EvalBeforeNestingBit | EvalBeforeAssigningBit>& other);
#endif // not EIGEN_PARSED_BY_DOXYGEN
CommaInitializer<Derived> operator<< (const Scalar& s);
@@ -412,12 +408,6 @@ template<typename Derived> class MatrixBase
template<typename OtherDerived>
Derived& operator-=(const MatrixBase<OtherDerived>& other);
- template<typename Lhs,typename Rhs>
- Derived& operator+=(const Flagged<Product<Lhs,Rhs,CacheFriendlyProduct>, 0, EvalBeforeNestingBit | EvalBeforeAssigningBit>& other);
-
- template<typename Lhs,typename Rhs>
- Derived& operator-=(const Flagged<Product<Lhs,Rhs,CacheFriendlyProduct>, 0, EvalBeforeNestingBit | EvalBeforeAssigningBit>& other);
-
Derived& operator*=(const Scalar& other);
Derived& operator/=(const Scalar& other);