Lines Matching refs:HashSetIterator
38 class HashSetIterator : std::iterator<std::forward_iterator_tag, Elem> {
40 HashSetIterator(const HashSetIterator&) = default;
41 HashSetIterator(HashSetIterator&&) = default;
42 HashSetIterator(HashSetType* hash_set, size_t index) : index_(index), hash_set_(hash_set) {} in HashSetIterator() function
50 HashSetIterator(const HashSetIterator<OtherElem, OtherHashSetType>& other) in HashSetIterator() function
53 HashSetIterator& operator=(const HashSetIterator&) = default;
54 HashSetIterator& operator=(HashSetIterator&&) = default;
56 bool operator==(const HashSetIterator& other) const {
60 bool operator!=(const HashSetIterator& other) const {
64 HashSetIterator operator++() { // Value after modification.
69 HashSetIterator operator++(int) {
70 HashSetIterator temp = *this;
89 friend bool operator==(const HashSetIterator<Elem1, HashSetType1>& lhs,
90 const HashSetIterator<Elem2, HashSetType2>& rhs);
92 template <class OtherElem, class OtherHashSetType> friend class HashSetIterator; variable
96 bool operator==(const HashSetIterator<Elem1, HashSetType1>& lhs,
97 const HashSetIterator<Elem2, HashSetType2>& rhs) {
99 std::is_convertible<HashSetIterator<Elem1, HashSetType1>,
100 HashSetIterator<Elem2, HashSetType2>>::value ||
101 std::is_convertible<HashSetIterator<Elem2, HashSetType2>,
102 HashSetIterator<Elem1, HashSetType1>>::value, "Bad iterator types.");
108 bool operator!=(const HashSetIterator<Elem1, HashSetType1>& lhs,
109 const HashSetIterator<Elem2, HashSetType2>& rhs) {
173 using iterator = HashSetIterator<T, HashSet>;
174 using const_iterator = HashSetIterator<const T, const HashSet>;
747 friend class HashSetIterator; variable