22 #ifndef _BLAZE_MATH_EXPRESSIONS_TDVECSVECMULTEXPR_H_
23 #define _BLAZE_MATH_EXPRESSIONS_TDVECSVECMULTEXPR_H_
83 inline const typename MultTrait<typename T1::ElementType,typename T2::ElementType>::Type
88 typedef typename T1::CompositeType Lhs;
89 typedef typename T2::CompositeType Rhs;
92 typedef typename X1::ElementType ET1;
93 typedef typename X2::ElementType ET2;
95 typedef typename X2::ConstIterator ConstIterator;
102 if( (~lhs).size() != (~rhs).size() )
103 throw std::invalid_argument(
"Vector sizes do not match" );
105 if( (~rhs).nonZeros() == 0UL )
return MultType();
110 ConstIterator element( right.begin() );
111 MultType sp( left[ element->index() ] * element->value() );
114 for( ; element!=right.end(); ++element )
115 sp += left[ element->index() ] * element->value();