ACE_Iterator< T > Class Template Reference

Defines the iterator interface. More...

#include <Map_T.h>

List of all members.

Public Types

typedef T value_type
typedef ACE_Iterator_Impl< T > implementation

Public Member Functions

 ACE_Iterator (ACE_Iterator_Impl< T > *impl)
 Constructor.

 ACE_Iterator (const ACE_Iterator< T > &rhs)
 Copy constructor.

 ~ACE_Iterator (void)
 Destructor.

ACE_Iterator< T > & operator= (const ACE_Iterator< T > &rhs)
 Assignment operator.

bool operator== (const ACE_Iterator< T > &rhs) const
 Comparison operators.

bool operator!= (const ACE_Iterator< T > &rhs) const
operator * () const
 Dereference operator.

ACE_Iterator< T > & operator++ (void)
 Prefix advance.

ACE_Iterator< T > operator++ (int)
 Postfix advance.

ACE_Iterator< T > & operator-- (void)
 Prefix reverse.

ACE_Iterator< T > operator-- (int)
 Postfix reverse.

ACE_Iterator_Impl< T > & impl (void)
 Accessor to implementation object.


Protected Attributes

ACE_Iterator_Impl< T > * implementation_
 Implementation pointer.


Detailed Description

template<class T>
class ACE_Iterator< T >

Defines the iterator interface.

Implementation to be provided by forwarding.

Definition at line 145 of file Map_T.h.


Member Typedef Documentation

template<class T>
typedef ACE_Iterator_Impl<T> ACE_Iterator< T >::implementation
 

Definition at line 151 of file Map_T.h.

template<class T>
typedef T ACE_Iterator< T >::value_type
 

Definition at line 150 of file Map_T.h.


Constructor & Destructor Documentation

template<class T>
ACE_INLINE ACE_Iterator< T >::ACE_Iterator ACE_Iterator_Impl< T > *  impl  ) 
 

Constructor.

Definition at line 33 of file Map_T.inl.

00034   : implementation_ (impl)
00035 {
00036 }

template<class T>
ACE_INLINE ACE_Iterator< T >::ACE_Iterator const ACE_Iterator< T > &  rhs  ) 
 

Copy constructor.

Definition at line 39 of file Map_T.inl.

00040   : implementation_ (rhs.implementation_->clone ())
00041 {
00042 }

template<class T>
ACE_INLINE ACE_Iterator< T >::~ACE_Iterator void   ) 
 

Destructor.

Definition at line 45 of file Map_T.inl.

00046 {
00047   delete this->implementation_;
00048 }


Member Function Documentation

template<class T>
ACE_INLINE ACE_Iterator_Impl< T > & ACE_Iterator< T >::impl void   ) 
 

Accessor to implementation object.

Definition at line 107 of file Map_T.inl.

00108 {
00109   return *this->implementation_;
00110 }

template<class T>
ACE_INLINE T ACE_Iterator< T >::operator *  )  const
 

Dereference operator.

Definition at line 71 of file Map_T.inl.

00072 {
00073   return this->implementation_->dereference ();
00074 }

template<class T>
ACE_INLINE bool ACE_Iterator< T >::operator!= const ACE_Iterator< T > &  rhs  )  const
 

Definition at line 65 of file Map_T.inl.

References ACE_Iterator< T >::operator==().

00066 {
00067   return !this->operator== (rhs);
00068 }

template<class T>
ACE_INLINE ACE_Iterator< T > ACE_Iterator< T >::operator++ int   ) 
 

Postfix advance.

Definition at line 84 of file Map_T.inl.

00085 {
00086   ACE_Iterator<T> tmp = *this;
00087   this->implementation_->plus_plus ();
00088   return tmp;
00089 }

template<class T>
ACE_INLINE ACE_Iterator< T > & ACE_Iterator< T >::operator++ void   ) 
 

Prefix advance.

Definition at line 77 of file Map_T.inl.

00078 {
00079   this->implementation_->plus_plus ();
00080   return *this;
00081 }

template<class T>
ACE_INLINE ACE_Iterator< T > ACE_Iterator< T >::operator-- int   ) 
 

Postfix reverse.

Definition at line 99 of file Map_T.inl.

00100 {
00101   ACE_Iterator<T> tmp = *this;
00102   this->implementation_->minus_minus ();
00103   return tmp;
00104 }

template<class T>
ACE_INLINE ACE_Iterator< T > & ACE_Iterator< T >::operator-- void   ) 
 

Prefix reverse.

Definition at line 92 of file Map_T.inl.

00093 {
00094   this->implementation_->minus_minus ();
00095   return *this;
00096 }

template<class T>
ACE_INLINE ACE_Iterator< T > & ACE_Iterator< T >::operator= const ACE_Iterator< T > &  rhs  ) 
 

Assignment operator.

Definition at line 51 of file Map_T.inl.

References ACE_Iterator< T >::implementation_.

00052 {
00053   delete this->implementation_;
00054   this->implementation_ = rhs.implementation_->clone ();
00055   return *this;
00056 }

template<class T>
ACE_INLINE bool ACE_Iterator< T >::operator== const ACE_Iterator< T > &  rhs  )  const
 

Comparison operators.

Definition at line 59 of file Map_T.inl.

References ACE_Iterator< T >::implementation_.

Referenced by ACE_Iterator< T >::operator!=().

00060 {
00061   return this->implementation_->compare (*rhs.implementation_);
00062 }


Member Data Documentation

template<class T>
ACE_Iterator_Impl<T>* ACE_Iterator< T >::implementation_ [protected]
 

Implementation pointer.

Definition at line 190 of file Map_T.h.

Referenced by ACE_Iterator< T >::operator=(), and ACE_Iterator< T >::operator==().


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 11:23:37 2006 for ACE by doxygen 1.3.6