NAME

ACE_Double_Linked_List_Iterator_Base - Implements a common base class for iterators for a double linked list ADT

SYNOPSIS

#include <ace/Containers.h>

template<class T> class ACE_Double_Linked_List_Iterator_Base { public: int next (T *&) const; T *next (void) const; int done (void) const; T & operator* (void) const; void reset (ACE_Double_Linked_List<T> &); ACE_ALLOC_HOOK_DECLARE; protected: ACE_Double_Linked_List_Iterator_Base ( ACE_Double_Linked_List<T> & ); ACE_Double_Linked_List_Iterator_Base ( const ACE_Double_Linked_List_Iterator_Base<T> &iter ); int go_head (void); int go_tail (void); T *not_done (void) const; T *do_advance (void); T *do_retreat (void); void dump_i (void) const; T *current_; ACE_Double_Linked_List<T> *dllist_; };

Iteration methods.

int next (T *&) const;

T *next (void) const;

int done (void) const;

T & operator* (void) const;

void reset (ACE_Double_Linked_List<T> &);

ACE_ALLOC_HOOK_DECLARE;

Initialization methods.

ACE_Double_Linked_List_Iterator_Base (ACE_Double_Linked_List<T> &);

ACE_Double_Linked_List_Iterator_Base (
    const ACE_Double_Linked_List_Iterator_Base<T> &iter
    );

AUTHOR

Doug Schmidt

LIBRARY

ace