aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/Swap.h
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2010-01-04 19:00:16 +0100
committerGravatar Gael Guennebaud <g.gael@free.fr>2010-01-04 19:00:16 +0100
commit8eab9fb87e2bcb3d9bce50c588e88fb6d500bfb5 (patch)
treee2ea6cb7185a144979a617b7e765491775b1a800 /Eigen/src/Core/Swap.h
parentfcc3be5dceb2378a1b7659793686faaeb3fbe294 (diff)
port VectorwiseOp and Swap to the novel mechanisms, and various cleanning
Diffstat (limited to 'Eigen/src/Core/Swap.h')
-rw-r--r--Eigen/src/Core/Swap.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/Eigen/src/Core/Swap.h b/Eigen/src/Core/Swap.h
index 010d8bb8b..60b6fffc9 100644
--- a/Eigen/src/Core/Swap.h
+++ b/Eigen/src/Core/Swap.h
@@ -35,11 +35,12 @@ template<typename ExpressionType>
struct ei_traits<SwapWrapper<ExpressionType> > : ei_traits<ExpressionType> {};
template<typename ExpressionType> class SwapWrapper
- : public MatrixBase<SwapWrapper<ExpressionType> >
+ : public ExpressionType::template MakeBase<SwapWrapper<ExpressionType> >::Type
{
public:
- EIGEN_GENERIC_PUBLIC_INTERFACE(SwapWrapper)
+ typedef typename ExpressionType::template MakeBase<SwapWrapper<ExpressionType> >::Type Base;
+ _EIGEN_DENSE_PUBLIC_INTERFACE(SwapWrapper)
typedef typename ei_packet_traits<Scalar>::type Packet;
inline SwapWrapper(ExpressionType& xpr) : m_expression(xpr) {}
@@ -117,7 +118,7 @@ template<typename ExpressionType> class SwapWrapper
*/
template<typename Derived>
template<typename OtherDerived>
-void MatrixBase<Derived>::swap(MatrixBase<OtherDerived> EIGEN_REF_TO_TEMPORARY other)
+void DenseBase<Derived>::swap(DenseBase<OtherDerived> EIGEN_REF_TO_TEMPORARY other)
{
(SwapWrapper<Derived>(derived())).lazyAssign(other);
}