Lines Matching defs:Iterator
75 class Iterator {
77 Iterator() = default;
78 ~Iterator() = default;
79 explicit Iterator(LinkNode<Key, Val> *pnode, HashList *phashList);
80 explicit Iterator(const LinkNode<Key, Val> *pnode, const HashList *phashList);
81 Iterator(const Iterator &itr);
82 Iterator(Iterator &&itr);
83 Iterator &operator=(const Iterator &itr);
84 Iterator &operator=(Iterator &&itr);
85 Iterator &operator++() noexcept;
86 Iterator operator++(int) noexcept;
87 Iterator &operator--() noexcept;
88 Iterator operator--(int) noexcept;
89 bool operator<(const Iterator &itr) const noexcept;
90 bool operator==(const Iterator &itr) const noexcept;
95 void swap(HashList<Key, Val>::Iterator &other);
181 Iterator begin();
182 const Iterator cbegin() const;
183 Iterator end();
184 const Iterator cend() const;
195 Iterator find(const Key &key);
203 Iterator erase(const Key &key);
204 Iterator erase(const Iterator pos);
205 Iterator erase(const Iterator first, const Iterator last);
210 bool MoveNode(const Iterator &pos, LinkNode<Key, Val> *&pnode);
292 // implementation of template class Iterator
294 HashList<Key, Val>::Iterator::Iterator(LinkNode<Key, Val> *pnode, HashList *phashList)
303 HashList<Key, Val>::Iterator::Iterator(const LinkNode<Key, Val> *pnode, const HashList *phashList)
313 HashList<Key, Val>::Iterator::Iterator(const Iterator& itr)
318 HashList<Key, Val>::Iterator::Iterator(Iterator&& itr)
326 auto HashList<Key, Val>::Iterator::operator=(const Iterator& itr)
327 -> HashList<Key, Val>::Iterator&
329 Iterator temp {itr};
335 auto HashList<Key, Val>::Iterator::operator=(Iterator&& itr)
336 -> HashList<Key, Val>::Iterator&
338 Iterator temp {std::move(itr)};
344 auto HashList<Key, Val>::Iterator::operator++() noexcept
345 -> HashList<Key, Val>::Iterator &
362 auto HashList<Key, Val>::Iterator::operator++(int) noexcept
363 -> HashList<Key, Val>::Iterator
365 Iterator res {*this};
381 auto HashList<Key, Val>::Iterator::operator--() noexcept
382 -> HashList<Key, Val>::Iterator &
403 auto HashList<Key, Val>::Iterator::operator--(int) noexcept
404 -> HashList<Key, Val>::Iterator
406 Iterator res {*this};
426 bool HashList<Key, Val>::Iterator::operator<(const HashList<Key, Val>::Iterator &itr) const noexcept
434 Iterator tempItr {*this};
448 bool HashList<Key, Val>::Iterator::operator==(const HashList<Key, Val>::Iterator &itr) const noexcept
460 Val& HashList<Key, Val>::Iterator::operator*()
466 const Val& HashList<Key, Val>::Iterator::operator*() const
472 Val* HashList<Key, Val>::Iterator::operator->()
478 const Val* HashList<Key, Val>::Iterator::operator->() const
484 void HashList<Key, Val>::Iterator::swap(HashList<Key, Val>::Iterator& other)
490 // end of Iterator
796 -> HashList<Key, Val>::Iterator
801 return Iterator(LinkNode<Key, Val>::GetLinkNode(dataHead_.next_), this);
806 -> const HashList<Key, Val>::Iterator
811 return Iterator(LinkNode<Key, Val>::GetLinkNode(dataHead_.next_), this);
816 -> HashList<Key, Val>::Iterator
818 return Iterator(nullptr, this);
823 -> const HashList<Key, Val>::Iterator
825 return Iterator(nullptr, this);
906 -> HashList<Key, Val>::Iterator
912 return Iterator(itr->second, this);
993 -> HashList<Key, Val>::Iterator
1001 Iterator tempItr {LinkNode<Key, Val>::GetLinkNode(plink), this};
1007 auto HashList<Key, Val>::erase(const Iterator pos)
1008 -> HashList<Key, Val>::Iterator
1011 Iterator tempItr {pos};
1020 auto HashList<Key, Val>::erase(const Iterator first, const Iterator last)
1021 -> HashList<Key, Val>::Iterator
1025 Iterator curPos {first};
1035 bool HashList<Key, Val>::MoveNode(const Iterator& pos, LinkNode<Key, Val> *&pnode)