Self next() const { if (m_node) return ListIterator(m_node->m_next); else return ListIterator(nullptr); }
ListIterator ListIterator::operator--(int){ ListItem *cp = item; if (item == nullptr) { item = list->last; } else { item = item->getPrevious(); } return ListIterator(list, cp); }
ListIterator ListIterator::operator++(int){ ListItem *cp = item; if (item == nullptr) { item = list->first; } else { item = item->getNext(); } return ListIterator(list, cp); }
ListIterator List::end() { return ListIterator(this, nullptr); }
ListIterator List::begin() { return ListIterator(this, first); }
ListIterator end() const { return ListIterator(); }
ListIterator begin() const { return ListIterator(m_sx); }
// Creates an iterator to refer to the beginning of the list ListIterator TokenList::begin() { return ListIterator( this, head ); }
// Creates an iterator to refer after the end of the list // This list is simple: it ends with NULL ListIterator TokenList::end() { return ListIterator( this, NULL ); }
Self prev() const{ if(m_node) return ListIterator(m_node -> m_prev); else return ListIterator(nullptr); }
/** * @brief リスト内のイベントを順に返す反復子を取得する * @return 反復子 */ ListIterator iterator(){ updateIdList(); return ListIterator( this ); }
Event::ListIterator Event::List::iterator() { updateIdList(); return ListIterator(this); }