ListIterator.h
Go to the documentation of this file.00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00023 #ifndef _INTERFACE_BEE_UTIL_LISTITERATOR_H
00024 #define _INTERFACE_BEE_UTIL_LISTITERATOR_H
00025 
00026 #ifdef __cplusplus
00027 
00028 #include "beecrypt/c++/util/Iterator.h"
00029 using beecrypt::util::Iterator;
00030 
00031 namespace beecrypt {
00032     namespace util {
00035         template<class E> class ListIterator : public virtual Iterator<E>
00036         {
00037         public:
00038             virtual void add(E* e) = 0;
00039             virtual bool hasNext() throw () = 0;
00040             virtual bool hasPrevious() throw () = 0;
00041             virtual E* next() throw (NoSuchElementException) = 0;
00042             virtual int nextIndex() throw () = 0;
00043             virtual E* previous() throw (NoSuchElementException) = 0;
00044             virtual int previousIndex() throw () = 0;
00045             virtual void remove() = 0;
00046             virtual void set(E* e) = 0;
00047         };
00048     }
00049 }
00050 
00051 #endif
00052 
00053 #endif