Lines Matching defs:RHS

72   bool operator==(const SparseBitVectorElement &RHS) const {
73 if (ElementIndex != RHS.ElementIndex)
76 if (Bits[i] != RHS.Bits[i])
81 bool operator!=(const SparseBitVectorElement &RHS) const {
82 return !(*this == RHS);
183 // Union this element with RHS and return true if this one changed.
184 bool unionWith(const SparseBitVectorElement &RHS) {
189 Bits[i] |= RHS.Bits[i];
196 // Return true if we have any bits in common with RHS
197 bool intersects(const SparseBitVectorElement &RHS) const {
199 if (RHS.Bits[i] & Bits[i])
205 // Intersect this Element with RHS and return true if this one changed.
207 bool intersectWith(const SparseBitVectorElement &RHS,
216 Bits[i] &= RHS.Bits[i];
226 // Intersect this Element with the complement of RHS and return true if this
229 bool intersectWithComplement(const SparseBitVectorElement &RHS,
238 Bits[i] &= ~RHS.Bits[i];
406 bool operator==(const SparseBitVectorIterator &RHS) const {
408 if (AtEnd && RHS.AtEnd)
412 return AtEnd == RHS.AtEnd && RHS.BitNumber == BitNumber;
414 bool operator!=(const SparseBitVectorIterator &RHS) const {
415 return !(*this == RHS);
421 SparseBitVectorIterator(const SparseBitVector<ElementSize> *RHS,
422 bool end = false):BitVector(RHS) {
442 SparseBitVector(const SparseBitVector &RHS) {
443 ElementListConstIter ElementIter = RHS.Elements.begin();
444 while (ElementIter != RHS.Elements.end()) {
458 SparseBitVector& operator=(const SparseBitVector& RHS) {
461 ElementListConstIter ElementIter = RHS.Elements.begin();
462 while (ElementIter != RHS.Elements.end()) {
547 bool operator!=(const SparseBitVector &RHS) const {
548 return !(*this == RHS);
551 bool operator==(const SparseBitVector &RHS) const {
553 ElementListConstIter Iter2 = RHS.Elements.begin();
555 for (; Iter1 != Elements.end() && Iter2 != RHS.Elements.end();
560 return Iter1 == Elements.end() && Iter2 == RHS.Elements.end();
563 // Union our bitmap with the RHS and return true if we changed.
564 bool operator|=(const SparseBitVector &RHS) {
567 ElementListConstIter Iter2 = RHS.Elements.begin();
569 // If RHS is empty, we are done
570 if (RHS.Elements.empty())
573 while (Iter2 != RHS.Elements.end()) {
591 // Intersect our bitmap with the RHS and return true if ours changed.
592 bool operator&=(const SparseBitVector &RHS) {
595 ElementListConstIter Iter2 = RHS.Elements.begin();
598 if (Elements.empty() && RHS.Elements.empty())
602 while (Iter2 != RHS.Elements.end()) {
632 // Intersect our bitmap with the complement of the RHS and return true
634 bool intersectWithComplement(const SparseBitVector &RHS) {
637 ElementListConstIter Iter2 = RHS.Elements.begin();
639 // If either our bitmap or RHS is empty, we are done
640 if (Elements.empty() || RHS.Elements.empty())
644 while (Iter2 != RHS.Elements.end()) {
671 bool intersectWithComplement(const SparseBitVector<ElementSize> *RHS) const {
672 return intersectWithComplement(*RHS);
734 bool intersects(const SparseBitVector<ElementSize> *RHS) const {
735 return intersects(*RHS);
738 // Return true if we share any bits in common with RHS
739 bool intersects(const SparseBitVector<ElementSize> &RHS) const {
741 ElementListConstIter Iter2 = RHS.Elements.begin();
744 if (Elements.empty() && RHS.Elements.empty())
748 while (Iter2 != RHS.Elements.end()) {
767 // also set in RHS.
768 bool contains(const SparseBitVector<ElementSize> &RHS) const {
770 Result &= RHS;
771 return (Result == RHS);
810 const SparseBitVector<ElementSize> *RHS) {
811 return LHS |= *RHS;
816 const SparseBitVector<ElementSize> &RHS) {
817 return LHS->operator|=(RHS);
822 const SparseBitVector<ElementSize> &RHS) {
823 return LHS->operator&=(RHS);
828 const SparseBitVector<ElementSize> *RHS) {
829 return LHS &= *RHS;
837 const SparseBitVector<ElementSize> &RHS) {
839 Result |= RHS;
846 const SparseBitVector<ElementSize> &RHS) {
848 Result &= RHS;
855 const SparseBitVector<ElementSize> &RHS) {
857 Result.intersectWithComplement(LHS, RHS);