10#ifndef EIGEN_SPARSE_CWISE_BINARY_OP_H
11#define EIGEN_SPARSE_CWISE_BINARY_OP_H
35template<
typename BinaryOp,
typename Lhs,
typename Rhs>
49 THE_STORAGE_ORDER_OF_BOTH_SIDES_MUST_MATCH);
59template<
typename BinaryOp,
typename Lhs,
typename Rhs>
76 : m_lhsIter(
aEval.m_lhsImpl,outer), m_rhsIter(
aEval.m_rhsImpl,outer), m_functor(
aEval.m_functor)
83 if (m_lhsIter && m_rhsIter && (m_lhsIter.index() == m_rhsIter.index()))
85 m_id = m_lhsIter.
index();
86 m_value = m_functor(m_lhsIter.value(), m_rhsIter.value());
90 else if (m_lhsIter && (!m_rhsIter || (m_lhsIter.index() < m_rhsIter.index())))
92 m_id = m_lhsIter.index();
93 m_value = m_functor(m_lhsIter.value(),
Scalar(0));
96 else if (m_rhsIter && (!m_lhsIter || (m_lhsIter.index() > m_rhsIter.index())))
98 m_id = m_rhsIter.index();
99 m_value = m_functor(
Scalar(0), m_rhsIter.value());
130 Flags = XprType::Flags
134 : m_functor(
xpr.functor()),
135 m_lhsImpl(
xpr.lhs()),
143 return m_lhsImpl.nonZerosEstimate() + m_rhsImpl.nonZerosEstimate();
153template<
typename BinaryOp,
typename Lhs,
typename Rhs>
170 : m_lhsEval(
aEval.m_lhsImpl), m_rhsIter(
aEval.m_rhsImpl,outer), m_functor(
aEval.m_functor), m_value(0), m_id(-1), m_innerSize(
aEval.m_expr.rhs().innerSize())
180 Scalar lhsVal = m_lhsEval.coeff(IsRowMajor?m_rhsIter.outer():m_id,
181 IsRowMajor?m_id:m_rhsIter.outer());
182 if(m_rhsIter && m_rhsIter.index()==m_id)
184 m_value = m_functor(
lhsVal, m_rhsIter.value());
215 Flags = XprType::Flags
219 : m_functor(
xpr.functor()),
220 m_lhsImpl(
xpr.lhs()),
221 m_rhsImpl(
xpr.rhs()),
229 return m_expr.size();
240template<
typename BinaryOp,
typename Lhs,
typename Rhs>
257 : m_lhsIter(
aEval.m_lhsImpl,outer), m_rhsEval(
aEval.m_rhsImpl), m_functor(
aEval.m_functor), m_value(0), m_id(-1), m_innerSize(
aEval.m_expr.lhs().innerSize())
267 Scalar rhsVal = m_rhsEval.coeff(IsRowMajor?m_lhsIter.outer():m_id,
268 IsRowMajor?m_id:m_lhsIter.outer());
269 if(m_lhsIter && m_lhsIter.index()==m_id)
271 m_value = m_functor(m_lhsIter.value(),
rhsVal);
302 Flags = XprType::Flags
306 : m_functor(
xpr.functor()),
307 m_lhsImpl(
xpr.lhs()),
308 m_rhsImpl(
xpr.rhs()),
316 return m_expr.size();
333template<
typename T1,
typename T2,
typename Lhs,
typename Rhs>
342template<
typename T1,
typename T2,
typename Lhs,
typename Rhs>
351template<
typename T1,
typename T2,
typename Lhs,
typename Rhs>
361template<
typename T1,
typename T2,
typename Lhs,
typename Rhs>
371template<
typename Lhs,
typename Rhs>
380template<
typename Lhs,
typename Rhs>
389template<
typename Lhs,
typename Rhs>
399template<
typename XprType>
418 : m_lhsIter(
aEval.m_lhsImpl,outer), m_rhsIter(
aEval.m_rhsImpl,outer), m_functor(
aEval.m_functor)
420 while (m_lhsIter && m_rhsIter && (m_lhsIter.index() != m_rhsIter.index()))
422 if (m_lhsIter.index() < m_rhsIter.index())
433 while (m_lhsIter && m_rhsIter && (m_lhsIter.index() != m_rhsIter.index()))
435 if (m_lhsIter.index() < m_rhsIter.index())
461 Flags = XprType::Flags
465 : m_functor(
xpr.functor()),
466 m_lhsImpl(
xpr.lhs()),
474 return (std::min)(m_lhsImpl.nonZerosEstimate(), m_rhsImpl.nonZerosEstimate());
484template<
typename XprType>
505 : m_lhsEval(
aEval.m_lhsImpl), m_rhsIter(
aEval.m_rhsImpl,outer), m_functor(
aEval.m_functor), m_outer(outer)
515 {
return m_functor(m_lhsEval.coeff(IsRowMajor?m_outer:m_rhsIter.index(),IsRowMajor?m_rhsIter.index():m_outer), m_rhsIter.value()); }
534 Flags = XprType::Flags
538 : m_functor(
xpr.functor()),
539 m_lhsImpl(
xpr.lhs()),
547 return m_rhsImpl.nonZerosEstimate();
557template<
typename XprType>
578 : m_lhsIter(
aEval.m_lhsImpl,outer), m_rhsEval(
aEval.m_rhsImpl), m_functor(
aEval.m_functor), m_outer(outer)
588 {
return m_functor(m_lhsIter.value(),
589 m_rhsEval.coeff(IsRowMajor?m_outer:m_lhsIter.index(),IsRowMajor?m_lhsIter.index():m_outer)); }
608 Flags = XprType::Flags
612 : m_functor(
xpr.functor()),
613 m_lhsImpl(
xpr.lhs()),
621 return m_lhsImpl.nonZerosEstimate();
636template<
typename Derived>
637template<
typename OtherDerived>
644template<
typename Derived>
645template<
typename OtherDerived>
652template<
typename Derived>
653template<
typename OtherDerived>
657 return derived() = derived() - other.
derived();
660template<
typename Derived>
661template<
typename OtherDerived>
665 return derived() = derived() + other.
derived();
668template<
typename Derived>
669template<
typename OtherDerived>
676template<
typename Derived>
677template<
typename OtherDerived>
684template<
typename Derived>
685template<
typename OtherDerived>
692template<
typename DenseDerived,
typename SparseDerived>
699template<
typename SparseDerived,
typename DenseDerived>
700EIGEN_STRONG_INLINE const CwiseBinaryOp<internal::scalar_sum_op<typename SparseDerived::Scalar,typename DenseDerived::Scalar>,
const SparseDerived,
const DenseDerived>
706template<
typename DenseDerived,
typename SparseDerived>
707EIGEN_STRONG_INLINE const CwiseBinaryOp<internal::scalar_difference_op<typename DenseDerived::Scalar,typename SparseDerived::Scalar>,
const DenseDerived,
const SparseDerived>
713template<
typename SparseDerived,
typename DenseDerived>
714EIGEN_STRONG_INLINE const CwiseBinaryOp<internal::scalar_difference_op<typename SparseDerived::Scalar,typename DenseDerived::Scalar>,
const SparseDerived,
const DenseDerived>
ArrayXXi a
Definition Array_initializer_list_23_cxx11.cpp:1
EIGEN_DEVICE_FUNC const NegativeReturnType operator-() const
Definition CommonCwiseUnaryOps.h:45
#define eigen_internal_assert(x)
Definition Macros.h:1043
#define EIGEN_STRONG_INLINE
Definition Macros.h:917
#define EIGEN_SPARSE_PUBLIC_INTERFACE(Derived)
Definition SparseUtil.h:43
#define EIGEN_INTERNAL_CHECK_COST_VALUE(C)
Definition StaticAssert.h:218
#define EIGEN_STATIC_ASSERT(CONDITION, MSG)
Definition StaticAssert.h:127
Eigen::Triplet< double > T
Definition Tutorial_sparse_example.cpp:6
Scalar * b
Definition benchVecAdd.cpp:17
SCALAR Scalar
Definition bench_gemm.cpp:46
CwiseBinaryOp< BinaryOp, Lhs, Rhs > Derived
Definition SparseCwiseBinaryOp.h:40
SparseMatrixBase< Derived > Base
Definition SparseCwiseBinaryOp.h:41
Definition CwiseBinaryOp.h:150
Generic expression where a coefficient-wise binary operator is applied to two expressions.
Definition CwiseBinaryOp.h:84
Definition DiagonalMatrix.h:19
EIGEN_DEVICE_FUNC const Derived & derived() const
Definition DiagonalMatrix.h:41
An InnerIterator allows to loop over the element of any matrix expression.
Definition CoreIterators.h:34
EIGEN_STRONG_INLINE Index index() const
Definition CoreIterators.h:57
Base class for all dense matrices, vectors, and expressions.
Definition MatrixBase.h:50
Base class of any sparse matrices or sparse expressions.
Definition SparseMatrixBase.h:28
const Derived & derived() const
Definition SparseMatrixBase.h:143
Derived & operator-=(const SparseMatrixBase< OtherDerived > &other)
Derived & operator+=(const SparseMatrixBase< OtherDerived > &other)
EIGEN_STRONG_INLINE const CwiseProductDenseReturnType< OtherDerived >::Type cwiseProduct(const MatrixBase< OtherDerived > &other) const
RhsIterator m_rhsIter
Definition SparseCwiseBinaryOp.h:205
EIGEN_STRONG_INLINE Index col() const
Definition SparseCwiseBinaryOp.h:199
const evaluator< Lhs > & m_lhsEval
Definition SparseCwiseBinaryOp.h:204
EIGEN_STRONG_INLINE InnerIterator(const binary_evaluator &aEval, Index outer)
Definition SparseCwiseBinaryOp.h:169
const BinaryOp & m_functor
Definition SparseCwiseBinaryOp.h:206
Scalar m_value
Definition SparseCwiseBinaryOp.h:207
EIGEN_STRONG_INLINE Index outer() const
Definition SparseCwiseBinaryOp.h:197
EIGEN_STRONG_INLINE Scalar value() const
Definition SparseCwiseBinaryOp.h:194
EIGEN_STRONG_INLINE InnerIterator & operator++()
Definition SparseCwiseBinaryOp.h:175
StorageIndex m_id
Definition SparseCwiseBinaryOp.h:208
EIGEN_STRONG_INLINE Index row() const
Definition SparseCwiseBinaryOp.h:198
StorageIndex m_innerSize
Definition SparseCwiseBinaryOp.h:209
EIGEN_STRONG_INLINE StorageIndex index() const
Definition SparseCwiseBinaryOp.h:196
EIGEN_STRONG_INLINE Scalar value() const
Definition SparseCwiseBinaryOp.h:110
EIGEN_STRONG_INLINE Index outer() const
Definition SparseCwiseBinaryOp.h:113
EIGEN_STRONG_INLINE StorageIndex index() const
Definition SparseCwiseBinaryOp.h:112
EIGEN_STRONG_INLINE InnerIterator(const binary_evaluator &aEval, Index outer)
Definition SparseCwiseBinaryOp.h:75
RhsIterator m_rhsIter
Definition SparseCwiseBinaryOp.h:121
const BinaryOp & m_functor
Definition SparseCwiseBinaryOp.h:122
Scalar m_value
Definition SparseCwiseBinaryOp.h:123
StorageIndex m_id
Definition SparseCwiseBinaryOp.h:124
LhsIterator m_lhsIter
Definition SparseCwiseBinaryOp.h:120
EIGEN_STRONG_INLINE InnerIterator & operator++()
Definition SparseCwiseBinaryOp.h:81
EIGEN_STRONG_INLINE Index row() const
Definition SparseCwiseBinaryOp.h:114
EIGEN_STRONG_INLINE Index col() const
Definition SparseCwiseBinaryOp.h:115
const BinaryOp & m_functor
Definition SparseCwiseBinaryOp.h:293
EIGEN_STRONG_INLINE Index col() const
Definition SparseCwiseBinaryOp.h:286
EIGEN_STRONG_INLINE Index row() const
Definition SparseCwiseBinaryOp.h:285
StorageIndex m_id
Definition SparseCwiseBinaryOp.h:295
EIGEN_STRONG_INLINE InnerIterator & operator++()
Definition SparseCwiseBinaryOp.h:262
Scalar m_value
Definition SparseCwiseBinaryOp.h:294
EIGEN_STRONG_INLINE InnerIterator(const binary_evaluator &aEval, Index outer)
Definition SparseCwiseBinaryOp.h:256
const evaluator< Rhs > & m_rhsEval
Definition SparseCwiseBinaryOp.h:292
EIGEN_STRONG_INLINE Scalar value() const
Definition SparseCwiseBinaryOp.h:281
LhsIterator m_lhsIter
Definition SparseCwiseBinaryOp.h:291
StorageIndex m_innerSize
Definition SparseCwiseBinaryOp.h:296
EIGEN_STRONG_INLINE Index outer() const
Definition SparseCwiseBinaryOp.h:284
EIGEN_STRONG_INLINE StorageIndex index() const
Definition SparseCwiseBinaryOp.h:283
EIGEN_STRONG_INLINE StorageIndex index() const
Definition SparseCwiseBinaryOp.h:517
EIGEN_STRONG_INLINE InnerIterator & operator++()
Definition SparseCwiseBinaryOp.h:508
EIGEN_STRONG_INLINE Index outer() const
Definition SparseCwiseBinaryOp.h:518
const Index m_outer
Definition SparseCwiseBinaryOp.h:528
EIGEN_STRONG_INLINE InnerIterator(const sparse_conjunction_evaluator &aEval, Index outer)
Definition SparseCwiseBinaryOp.h:504
EIGEN_STRONG_INLINE Index row() const
Definition SparseCwiseBinaryOp.h:519
EIGEN_STRONG_INLINE Index col() const
Definition SparseCwiseBinaryOp.h:520
const LhsEvaluator & m_lhsEval
Definition SparseCwiseBinaryOp.h:525
RhsIterator m_rhsIter
Definition SparseCwiseBinaryOp.h:526
EIGEN_STRONG_INLINE Scalar value() const
Definition SparseCwiseBinaryOp.h:514
const BinaryOp & m_functor
Definition SparseCwiseBinaryOp.h:527
EIGEN_STRONG_INLINE Index col() const
Definition SparseCwiseBinaryOp.h:594
LhsIterator m_lhsIter
Definition SparseCwiseBinaryOp.h:599
EIGEN_STRONG_INLINE InnerIterator & operator++()
Definition SparseCwiseBinaryOp.h:581
EIGEN_STRONG_INLINE StorageIndex index() const
Definition SparseCwiseBinaryOp.h:591
const Index m_outer
Definition SparseCwiseBinaryOp.h:602
const BinaryOp & m_functor
Definition SparseCwiseBinaryOp.h:601
EIGEN_STRONG_INLINE Index row() const
Definition SparseCwiseBinaryOp.h:593
EIGEN_STRONG_INLINE InnerIterator(const sparse_conjunction_evaluator &aEval, Index outer)
Definition SparseCwiseBinaryOp.h:577
const evaluator< RhsArg > & m_rhsEval
Definition SparseCwiseBinaryOp.h:600
EIGEN_STRONG_INLINE Scalar value() const
Definition SparseCwiseBinaryOp.h:587
EIGEN_STRONG_INLINE Index outer() const
Definition SparseCwiseBinaryOp.h:592
EIGEN_STRONG_INLINE Scalar value() const
Definition SparseCwiseBinaryOp.h:443
EIGEN_STRONG_INLINE Index col() const
Definition SparseCwiseBinaryOp.h:448
const BinaryOp & m_functor
Definition SparseCwiseBinaryOp.h:455
EIGEN_STRONG_INLINE Index outer() const
Definition SparseCwiseBinaryOp.h:446
EIGEN_STRONG_INLINE StorageIndex index() const
Definition SparseCwiseBinaryOp.h:445
EIGEN_STRONG_INLINE InnerIterator & operator++()
Definition SparseCwiseBinaryOp.h:429
EIGEN_STRONG_INLINE InnerIterator(const sparse_conjunction_evaluator &aEval, Index outer)
Definition SparseCwiseBinaryOp.h:417
RhsIterator m_rhsIter
Definition SparseCwiseBinaryOp.h:454
EIGEN_STRONG_INLINE Index row() const
Definition SparseCwiseBinaryOp.h:447
LhsIterator m_lhsIter
Definition SparseCwiseBinaryOp.h:453
const unsigned int RowMajorBit
Definition Constants.h:66
@ Lhs
Definition TensorContractionMapper.h:19
@ Rhs
Definition TensorContractionMapper.h:18
Namespace containing all symbols from the Eigen library.
Definition bench_norm.cpp:85
EIGEN_STRONG_INLINE const CwiseBinaryOp< internal::scalar_sum_op< typename DenseDerived::Scalar, typename SparseDerived::Scalar >, const DenseDerived, const SparseDerived > operator+(const MatrixBase< DenseDerived > &a, const SparseMatrixBase< SparseDerived > &b)
Definition SparseCwiseBinaryOp.h:694
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition Meta.h:74
Definition BandTriangularSolver.h:13
CwiseBinaryOp< internal::scalar_sum_op< double, double >, const CpyMatrixXd, const CpyMatrixXd > XprType
Definition nestbyvalue.cpp:15
Definition EigenBase.h:30
EIGEN_DEVICE_FUNC Derived & derived()
Definition EigenBase.h:46
Definition Constants.h:510
Definition Constants.h:542
Definition Constants.h:545
CwiseBinaryOp< BinaryOp, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:159
evaluator< Rhs > m_rhsImpl
Definition SparseCwiseBinaryOp.h:235
Index nonZerosEstimate() const
Definition SparseCwiseBinaryOp.h:228
const XprType & m_expr
Definition SparseCwiseBinaryOp.h:236
evaluator< Lhs > m_lhsImpl
Definition SparseCwiseBinaryOp.h:234
XprType::StorageIndex StorageIndex
Definition SparseCwiseBinaryOp.h:161
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:218
traits< XprType >::Scalar Scalar
Definition SparseCwiseBinaryOp.h:160
evaluator< Rhs >::InnerIterator RhsIterator
Definition SparseCwiseBinaryOp.h:158
const BinaryOp m_functor
Definition SparseCwiseBinaryOp.h:233
const BinaryOp m_functor
Definition SparseCwiseBinaryOp.h:147
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:133
evaluator< Rhs >::InnerIterator RhsIterator
Definition SparseCwiseBinaryOp.h:65
evaluator< Rhs > m_rhsImpl
Definition SparseCwiseBinaryOp.h:149
Index nonZerosEstimate() const
Definition SparseCwiseBinaryOp.h:142
traits< XprType >::Scalar Scalar
Definition SparseCwiseBinaryOp.h:67
evaluator< Lhs > m_lhsImpl
Definition SparseCwiseBinaryOp.h:148
evaluator< Lhs >::InnerIterator LhsIterator
Definition SparseCwiseBinaryOp.h:64
CwiseBinaryOp< BinaryOp, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:66
XprType::StorageIndex StorageIndex
Definition SparseCwiseBinaryOp.h:68
XprType::StorageIndex StorageIndex
Definition SparseCwiseBinaryOp.h:248
const XprType & m_expr
Definition SparseCwiseBinaryOp.h:323
Index nonZerosEstimate() const
Definition SparseCwiseBinaryOp.h:315
traits< XprType >::Scalar Scalar
Definition SparseCwiseBinaryOp.h:247
evaluator< Lhs >::InnerIterator LhsIterator
Definition SparseCwiseBinaryOp.h:245
const BinaryOp m_functor
Definition SparseCwiseBinaryOp.h:320
CwiseBinaryOp< BinaryOp, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:246
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:305
evaluator< Lhs > m_lhsImpl
Definition SparseCwiseBinaryOp.h:321
evaluator< Rhs > m_rhsImpl
Definition SparseCwiseBinaryOp.h:322
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:395
sparse_conjunction_evaluator< XprType > Base
Definition SparseCwiseBinaryOp.h:394
CwiseBinaryOp< scalar_boolean_and_op, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:393
CwiseBinaryOp< scalar_boolean_and_op, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:375
sparse_conjunction_evaluator< XprType > Base
Definition SparseCwiseBinaryOp.h:376
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:377
CwiseBinaryOp< scalar_boolean_and_op, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:384
sparse_conjunction_evaluator< XprType > Base
Definition SparseCwiseBinaryOp.h:385
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:386
CwiseBinaryOp< scalar_product_op< T1, T2 >, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:355
sparse_conjunction_evaluator< XprType > Base
Definition SparseCwiseBinaryOp.h:356
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:357
sparse_conjunction_evaluator< XprType > Base
Definition SparseCwiseBinaryOp.h:338
CwiseBinaryOp< scalar_product_op< T1, T2 >, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:337
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:339
sparse_conjunction_evaluator< XprType > Base
Definition SparseCwiseBinaryOp.h:347
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:348
CwiseBinaryOp< scalar_product_op< T1, T2 >, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:346
sparse_conjunction_evaluator< XprType > Base
Definition SparseCwiseBinaryOp.h:366
CwiseBinaryOp< scalar_quotient_op< T1, T2 >, Lhs, Rhs > XprType
Definition SparseCwiseBinaryOp.h:365
binary_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:367
Definition CoreEvaluators.h:61
Definition SparseCwiseBinaryOp.h:57
Definition CoreEvaluators.h:111
Definition CoreEvaluators.h:91
Definition XprHelper.h:176
Definition BinaryFunctors.h:409
Definition BinaryFunctors.h:71
Definition BinaryFunctors.h:379
XprType::Rhs RhsArg
Definition SparseCwiseBinaryOp.h:491
XprType::Functor BinaryOp
Definition SparseCwiseBinaryOp.h:489
sparse_conjunction_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:537
XprType::Lhs LhsArg
Definition SparseCwiseBinaryOp.h:490
traits< XprType >::Scalar Scalar
Definition SparseCwiseBinaryOp.h:495
evaluator< RhsArg >::InnerIterator RhsIterator
Definition SparseCwiseBinaryOp.h:493
evaluator< LhsArg > LhsEvaluator
Definition SparseCwiseBinaryOp.h:492
evaluator< RhsArg > m_rhsImpl
Definition SparseCwiseBinaryOp.h:553
const BinaryOp m_functor
Definition SparseCwiseBinaryOp.h:551
evaluator< LhsArg > m_lhsImpl
Definition SparseCwiseBinaryOp.h:552
XprType::StorageIndex StorageIndex
Definition SparseCwiseBinaryOp.h:494
Index nonZerosEstimate() const
Definition SparseCwiseBinaryOp.h:546
evaluator< RhsArg > m_rhsImpl
Definition SparseCwiseBinaryOp.h:627
sparse_conjunction_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:611
XprType::Rhs RhsArg
Definition SparseCwiseBinaryOp.h:564
XprType::Functor BinaryOp
Definition SparseCwiseBinaryOp.h:562
Index nonZerosEstimate() const
Definition SparseCwiseBinaryOp.h:620
XprType::StorageIndex StorageIndex
Definition SparseCwiseBinaryOp.h:567
evaluator< LhsArg > m_lhsImpl
Definition SparseCwiseBinaryOp.h:626
traits< XprType >::Scalar Scalar
Definition SparseCwiseBinaryOp.h:568
evaluator< RhsArg > RhsEvaluator
Definition SparseCwiseBinaryOp.h:566
const BinaryOp m_functor
Definition SparseCwiseBinaryOp.h:625
evaluator< LhsArg >::InnerIterator LhsIterator
Definition SparseCwiseBinaryOp.h:565
XprType::Lhs LhsArg
Definition SparseCwiseBinaryOp.h:563
Index nonZerosEstimate() const
Definition SparseCwiseBinaryOp.h:473
XprType::Functor BinaryOp
Definition SparseCwiseBinaryOp.h:404
sparse_conjunction_evaluator(const XprType &xpr)
Definition SparseCwiseBinaryOp.h:464
const BinaryOp m_functor
Definition SparseCwiseBinaryOp.h:478
traits< XprType >::Scalar Scalar
Definition SparseCwiseBinaryOp.h:410
XprType::Rhs RhsArg
Definition SparseCwiseBinaryOp.h:406
evaluator< RhsArg >::InnerIterator RhsIterator
Definition SparseCwiseBinaryOp.h:408
evaluator< RhsArg > m_rhsImpl
Definition SparseCwiseBinaryOp.h:480
XprType::StorageIndex StorageIndex
Definition SparseCwiseBinaryOp.h:409
XprType::Lhs LhsArg
Definition SparseCwiseBinaryOp.h:405
evaluator< LhsArg > m_lhsImpl
Definition SparseCwiseBinaryOp.h:479
evaluator< LhsArg >::InnerIterator LhsIterator
Definition SparseCwiseBinaryOp.h:407
Definition SparseCwiseBinaryOp.h:330
Definition ForwardDeclarations.h:17