()
| 751 | final Iterator<? extends E> itr2 = set2.iterator(); |
| 752 | return new AbstractIterator<E>() { |
| 753 | @Override |
| 754 | public E computeNext() { |
| 755 | while (itr1.hasNext()) { |
| 756 | E elem1 = itr1.next(); |
| 757 | if (!set2.contains(elem1)) { |
| 758 | return elem1; |
| 759 | } |
| 760 | } |
| 761 | while (itr2.hasNext()) { |
| 762 | E elem2 = itr2.next(); |
| 763 | if (!set1.contains(elem2)) { |
| 764 | return elem2; |
| 765 | } |
| 766 | } |
| 767 | return endOfData(); |
| 768 | } |
| 769 | }; |
| 770 | } |
| 771 |