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.

References ACE_Iterator< T >::implementation_.

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.

References ACE_Iterator< T >::implementation_.

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.

References ACE_Iterator< T >::implementation_.

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.

References ACE_Iterator< T >::implementation_.

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.

References ACE_Iterator< T >::implementation_.

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.

References ACE_Iterator< T >::implementation_.

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.

References ACE_Iterator< T >::implementation_.

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 >::impl(), ACE_Iterator< T >::operator *(), ACE_Iterator< T >::operator++(), ACE_Iterator< T >::operator--(), ACE_Iterator< T >::operator=(), ACE_Iterator< T >::operator==(), and ACE_Iterator< T >::~ACE_Iterator().


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:35:13 2010 for ACE by  doxygen 1.4.7