Lines Matching refs:w1
288 inline bool operator==(const StringWeight<L, S> &w1,
290 if (w1.Size() != w2.Size())
293 StringWeightIterator<L, S> iter1(w1);
304 inline bool operator!=(const StringWeight<L, S> &w1,
306 return !(w1 == w2);
310 inline bool ApproxEqual(const StringWeight<L, S> &w1,
313 return w1 == w2;
362 Plus(const StringWeight<L, S> &w1, in Plus() argument
364 if (w1 == StringWeight<L, S>::Zero()) in Plus()
367 return w1; in Plus()
369 if (w1 != w2) in Plus()
373 return w1; in Plus()
379 Plus(const StringWeight<L, STRING_LEFT> &w1, in Plus() argument
381 if (w1 == StringWeight<L, STRING_LEFT>::Zero()) in Plus()
384 return w1; in Plus()
387 StringWeightIterator<L, STRING_LEFT> iter1(w1); in Plus()
398 Plus(const StringWeight<L, STRING_RIGHT> &w1, in Plus() argument
400 if (w1 == StringWeight<L, STRING_RIGHT>::Zero()) in Plus()
403 return w1; in Plus()
406 StringWeightReverseIterator<L, STRING_RIGHT> iter1(w1); in Plus()
416 inline StringWeight<L, S> Times(const StringWeight<L, S> &w1, in Times() argument
418 if (w1 == StringWeight<L, S>::Zero() || w2 == StringWeight<L, S>::Zero()) in Times()
421 StringWeight<L, S> prod(w1); in Times()
432 Divide(const StringWeight<L, S> &w1, in Divide() argument
442 else if (w1 == StringWeight<L, S>::Zero()) in Divide()
446 StringWeightIterator<L, S> iter(w1); in Divide()
457 Divide(const StringWeight<L, STRING_RIGHT> &w1, in Divide() argument
467 else if (w1 == StringWeight<L, STRING_RIGHT>::Zero()) in Divide()
471 StringWeightReverseIterator<L, STRING_RIGHT> iter(w1); in Divide()
482 Divide(const StringWeight<L, STRING_RIGHT_RESTRICT> &w1, in Divide() argument
492 else if (w1 == StringWeight<L, STRING_RIGHT_RESTRICT>::Zero()) in Divide()
496 StringWeightReverseIterator<L, STRING_RIGHT_RESTRICT> iter(w1); in Divide()
513 GallicWeight(StringWeight<L, S> w1, W w2) in GallicWeight()
514 : ProductWeight<StringWeight<L, S>, W>(w1, w2) {} in GallicWeight()