12 #ifndef EIGEN_ASSIGN_H
13 #define EIGEN_ASSIGN_H
17 template<
typename Derived>
18 template<
typename OtherDerived>
19 EIGEN_STRONG_INLINE Derived& DenseBase<Derived>
20 ::lazyAssign(
const DenseBase<OtherDerived>& other)
23 SameType = internal::is_same<typename Derived::Scalar,typename OtherDerived::Scalar>::value
26 EIGEN_STATIC_ASSERT_LVALUE(Derived)
27 EIGEN_STATIC_ASSERT_SAME_MATRIX_SIZE(Derived,OtherDerived)
28 EIGEN_STATIC_ASSERT(SameType,YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY)
30 eigen_assert(rows() == other.rows() && cols() == other.cols());
31 internal::call_assignment_no_alias(derived(),other.derived());
36 template<
typename Derived>
37 template<
typename OtherDerived>
41 internal::call_assignment(derived(), other.
derived());
45 template<
typename Derived>
49 internal::call_assignment(derived(), other.
derived());
53 template<
typename Derived>
57 internal::call_assignment(derived(), other.
derived());
61 template<
typename Derived>
62 template <
typename OtherDerived>
66 internal::call_assignment(derived(), other.
derived());
70 template<
typename Derived>
71 template <
typename OtherDerived>
75 internal::call_assignment(derived(), other.derived());
79 template<
typename Derived>
80 template<
typename OtherDerived>
84 other.derived().evalTo(derived());
90 #endif // EIGEN_ASSIGN_H