MOAB
4.9.3pre
|
Pseudo expression providing an operator = assuming no aliasing. More...
#include <NoAlias.h>
Public Types | |
typedef ExpressionType::Scalar | Scalar |
Public Member Functions | |
NoAlias (ExpressionType &expression) | |
template<typename OtherDerived > | |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ExpressionType & | operator= (const StorageBase< OtherDerived > &other) |
template<typename OtherDerived > | |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ExpressionType & | operator+= (const StorageBase< OtherDerived > &other) |
template<typename OtherDerived > | |
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ExpressionType & | operator-= (const StorageBase< OtherDerived > &other) |
EIGEN_DEVICE_FUNC ExpressionType & | expression () const |
Protected Attributes | |
ExpressionType & | m_expression |
Pseudo expression providing an operator = assuming no aliasing.
ExpressionType | the type of the object on which to do the lazy assignment |
This class represents an expression with special assignment operators assuming no aliasing between the target expression and the source expression. More precisely it alloas to bypass the EvalBeforeAssignBit flag of the source expression. It is the return type of MatrixBase::noalias() and most of the time this is the only way it is used.
typedef ExpressionType::Scalar Eigen::NoAlias< ExpressionType, StorageBase >::Scalar |
Eigen::NoAlias< ExpressionType, StorageBase >::NoAlias | ( | ExpressionType & | expression | ) | [inline, explicit] |
Definition at line 36 of file NoAlias.h.
: m_expression(expression) {}
EIGEN_DEVICE_FUNC ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::expression | ( | ) | const [inline] |
Definition at line 63 of file NoAlias.h.
{ return m_expression; }
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator+= | ( | const StorageBase< OtherDerived > & | other | ) | [inline] |
Definition at line 48 of file NoAlias.h.
{ call_assignment_no_alias(m_expression, other.derived(), internal::add_assign_op<Scalar>()); return m_expression; }
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator-= | ( | const StorageBase< OtherDerived > & | other | ) | [inline] |
Definition at line 56 of file NoAlias.h.
{ call_assignment_no_alias(m_expression, other.derived(), internal::sub_assign_op<Scalar>()); return m_expression; }
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::operator= | ( | const StorageBase< OtherDerived > & | other | ) | [inline] |
Definition at line 40 of file NoAlias.h.
{ call_assignment_no_alias(m_expression, other.derived(), internal::assign_op<Scalar>()); return m_expression; }
ExpressionType& Eigen::NoAlias< ExpressionType, StorageBase >::m_expression [protected] |