a couple of fixes and cleaning

This commit is contained in:
Gael Guennebaud
2009-12-17 10:00:35 +01:00
parent 2033903376
commit 34c95029ca
9 changed files with 79 additions and 112 deletions

View File

@@ -131,7 +131,7 @@ MatrixBase<Derived>::marked() const
}
/** \deprecated use MatrixBase::noalias()
*
*
* \returns an expression of *this with the EvalBeforeAssigningBit flag removed.
*
* Example: \include MatrixBase_lazy.cpp
@@ -146,4 +146,25 @@ MatrixBase<Derived>::lazy() const
return derived();
}
/** \internal
* Overloaded to perform an efficient C += (A*B).lazy() */
template<typename Derived>
template<typename ProductDerived, typename Lhs, typename Rhs>
Derived& MatrixBase<Derived>::operator+=(const Flagged<ProductBase<ProductDerived, Lhs,Rhs>, 0,
EvalBeforeAssigningBit>& other)
{
other._expression().derived().addTo(derived()); return derived();
}
/** \internal
* Overloaded to perform an efficient C -= (A*B).lazy() */
template<typename Derived>
template<typename ProductDerived, typename Lhs, typename Rhs>
Derived& MatrixBase<Derived>::operator-=(const Flagged<ProductBase<ProductDerived, Lhs,Rhs>, 0,
EvalBeforeAssigningBit>& other)
{
other._expression().derived().subTo(derived()); return derived();
}
#endif // EIGEN_FLAGGED_H