16#include "./InternalHeaderCheck.h"
20template <
typename Derived>
21template <
typename OtherDerived>
22EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived& DenseBase<Derived>::lazyAssign(
const DenseBase<OtherDerived>& other) {
23 enum { SameType = internal::is_same<typename Derived::Scalar, typename OtherDerived::Scalar>::value };
25 EIGEN_STATIC_ASSERT_LVALUE(Derived)
26 EIGEN_STATIC_ASSERT_SAME_MATRIX_SIZE(Derived, OtherDerived)
29 YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY)
31 eigen_assert(rows() == other.rows() && cols() == other.cols());
32 internal::call_assignment_no_alias(derived(), other.derived());
37template <
typename Derived>
38template <
typename OtherDerived>
40 internal::call_assignment(derived(), other.
derived());
44template <
typename Derived>
46 internal::call_assignment(derived(), other.
derived());
50template <
typename Derived>
52 internal::call_assignment(derived(), other.
derived());
56template <
typename Derived>
57template <
typename OtherDerived>
59 internal::call_assignment(derived(), other.
derived());
63template <
typename Derived>
64template <
typename OtherDerived>
65EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived& MatrixBase<Derived>::operator=(
const EigenBase<OtherDerived>& other) {
66 internal::call_assignment(derived(), other.derived());
70template <
typename Derived>
71template <
typename OtherDerived>
72EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Derived& MatrixBase<Derived>::operator=(
73 const ReturnByValue<OtherDerived>& other) {
74 other.derived().evalTo(derived());
Base class for all dense matrices, vectors, and arrays.
Definition DenseBase.h:44
Derived & derived()
Definition EigenBase.h:49
Base class for all dense matrices, vectors, and expressions.
Definition MatrixBase.h:52
Namespace containing all symbols from the Eigen library.
Definition Core:137