1- Introduce sub-evaluator types for unary, binary, product, and map expressions to ease specializing them.

2- Remove a lot of code which should not be there with evaluators, in particular coeff/packet methods implemented in the expressions.
This commit is contained in:
Gael Guennebaud
2014-06-20 15:39:38 +02:00
parent 0a6c472335
commit 78bb808337
18 changed files with 300 additions and 159 deletions

View File

@@ -1071,8 +1071,8 @@ struct evaluator_traits<TriangularView<MatrixType,Mode> >
static const int AssumeAliasing = 0;
};
template<typename MatrixType, unsigned int Mode, typename Kind>
struct evaluator<TriangularView<MatrixType,Mode>, Kind, typename MatrixType::Scalar>
template<typename MatrixType, unsigned int Mode>
struct evaluator<TriangularView<MatrixType,Mode> >
: evaluator<typename internal::remove_all<MatrixType>::type>
{
typedef TriangularView<MatrixType,Mode> XprType;