ACE_String_Base_Const_Iterator< CHAR > Class Template Reference

Const iterator class for the ACE_String_Base class. More...

#include <String_Base.h>

List of all members.

Public Types

typedef
std::bidirectional_iterator_tag 
iterator_category
typedef const CHAR value_type
typedef const CHAR & reference
typedef const CHAR * pointer
typedef ptrdiff_t difference_type

Public Member Functions

 ACE_String_Base_Const_Iterator (const ACE_String_Base< CHAR > &str, int end=0)
 ACE_String_Base_Const_Iterator (const ACE_String_Base_Const_Iterator< CHAR > &iter)
 ~ACE_String_Base_Const_Iterator (void)
 Destructor.
int done (void) const
int next (const CHAR *&ch) const
int advance (void)
const
ACE_String_Base_Const_Iterator
< CHAR > & 
operator= (const ACE_String_Base_Const_Iterator< CHAR > &iter)
const CHAR & operator* (void)
ACE_String_Base_Const_Iterator
< CHAR > & 
operator++ (void)
ACE_String_Base_Const_Iterator
< CHAR > 
operator++ (int)
ACE_String_Base_Const_Iterator
< CHAR > & 
operator-- (void)
ACE_String_Base_Const_Iterator
< CHAR > 
operator-- (int)
bool operator== (const ACE_String_Base_Const_Iterator< CHAR > &rhs) const
bool operator!= (const ACE_String_Base_Const_Iterator< CHAR > &rhs) const
bool operator< (const ACE_String_Base_Const_Iterator< CHAR > &rhs) const
bool operator> (const ACE_String_Base_Const_Iterator< CHAR > &rhs) const
bool operator<= (const ACE_String_Base_Const_Iterator< CHAR > &rhs) const
bool operator>= (const ACE_String_Base_Const_Iterator< CHAR > &rhs) const

Private Attributes

const ACE_String_Base< CHAR > * str_
 Target string to iterate over.
size_t index_
 Current location in the string.

Detailed Description

template<class CHAR>
class ACE_String_Base_Const_Iterator< CHAR >

Const iterator class for the ACE_String_Base class.

This class is an implementation of an iterator that allows client applications it iterator over the contents of a string. Currently, now this iterator fall under the std::bidirectional_iterator_tag category. Future versions of the class will support the operations of std::random_access_iterator_tag.


Member Typedef Documentation

template<class CHAR >
typedef ptrdiff_t ACE_String_Base_Const_Iterator< CHAR >::difference_type
template<class CHAR >
typedef std::bidirectional_iterator_tag ACE_String_Base_Const_Iterator< CHAR >::iterator_category
template<class CHAR >
typedef const CHAR* ACE_String_Base_Const_Iterator< CHAR >::pointer
template<class CHAR >
typedef const CHAR& ACE_String_Base_Const_Iterator< CHAR >::reference
template<class CHAR >
typedef const CHAR ACE_String_Base_Const_Iterator< CHAR >::value_type

Constructor & Destructor Documentation

template<class CHAR >
ACE_String_Base_Const_Iterator< CHAR >::ACE_String_Base_Const_Iterator ( const ACE_String_Base< CHAR > &  str,
int  end = 0 
) [inline]

Initializing constructor

Parameters:
[in] str Target string for iterator.
template<class CHAR >
ACE_String_Base_Const_Iterator< CHAR >::ACE_String_Base_Const_Iterator ( const ACE_String_Base_Const_Iterator< CHAR > &  iter  )  [inline]

Copy constructor

Parameters:
[in] iter Iterator to copy.
template<class CHAR >
ACE_String_Base_Const_Iterator< CHAR >::~ACE_String_Base_Const_Iterator ( void   )  [inline]

Destructor.


Member Function Documentation

template<class CHAR >
int ACE_String_Base_Const_Iterator< CHAR >::advance ( void   )  [inline]

Move to the next character in the string.

Return values:
0 All characters have been seen.
1 Items still remain to be seen.
template<class CHAR >
int ACE_String_Base_Const_Iterator< CHAR >::done ( void   )  const [inline]

Test if the iterator has seen all characters.

Return values:
0 Characters still remain.
1 All characters have been seen.
template<class CHAR >
int ACE_String_Base_Const_Iterator< CHAR >::next ( const CHAR *&  ch  )  const [inline]

Get the current character.

Parameters:
[out] ch The current character.
Return values:
0 All characters have been seen.
1 Items still remain to be seen.
template<class CHAR >
bool ACE_String_Base_Const_Iterator< CHAR >::operator!= ( const ACE_String_Base_Const_Iterator< CHAR > &  rhs  )  const [inline]

Ineqaulity comparison operator

Parameters:
[in] rhs Right-hand side of operator.
template<class CHAR >
const CHAR & ACE_String_Base_Const_Iterator< CHAR >::operator* ( void   )  [inline]

Dereference operator

Returns:
Reference to current character seen by iterator.
template<class CHAR >
ACE_String_Base_Const_Iterator< CHAR > ACE_String_Base_Const_Iterator< CHAR >::operator++ ( int   )  [inline]

Postfix operator

template<class CHAR >
ACE_String_Base_Const_Iterator< CHAR > & ACE_String_Base_Const_Iterator< CHAR >::operator++ ( void   )  [inline]

Prefix operator

template<class CHAR >
ACE_String_Base_Const_Iterator< CHAR > ACE_String_Base_Const_Iterator< CHAR >::operator-- ( int   )  [inline]

Postfix operator

template<class CHAR >
ACE_String_Base_Const_Iterator< CHAR > & ACE_String_Base_Const_Iterator< CHAR >::operator-- ( void   )  [inline]

Prefix operator

template<class CHAR >
bool ACE_String_Base_Const_Iterator< CHAR >::operator< ( const ACE_String_Base_Const_Iterator< CHAR > &  rhs  )  const [inline]
template<class CHAR >
bool ACE_String_Base_Const_Iterator< CHAR >::operator<= ( const ACE_String_Base_Const_Iterator< CHAR > &  rhs  )  const [inline]
template<class CHAR >
const ACE_String_Base_Const_Iterator< CHAR > & ACE_String_Base_Const_Iterator< CHAR >::operator= ( const ACE_String_Base_Const_Iterator< CHAR > &  iter  )  [inline]

Assignment operator

Parameters:
[in] iter Right-hand side of operator.
Returns:
Reference to self.
template<class CHAR >
bool ACE_String_Base_Const_Iterator< CHAR >::operator== ( const ACE_String_Base_Const_Iterator< CHAR > &  rhs  )  const [inline]

Eqaulity comparison operator

Parameters:
[in] rhs Right-hand side of operator.
template<class CHAR >
bool ACE_String_Base_Const_Iterator< CHAR >::operator> ( const ACE_String_Base_Const_Iterator< CHAR > &  rhs  )  const [inline]
template<class CHAR >
bool ACE_String_Base_Const_Iterator< CHAR >::operator>= ( const ACE_String_Base_Const_Iterator< CHAR > &  rhs  )  const [inline]

Member Data Documentation

template<class CHAR >
size_t ACE_String_Base_Const_Iterator< CHAR >::index_ [private]

Current location in the string.

template<class CHAR >
const ACE_String_Base<CHAR>* ACE_String_Base_Const_Iterator< CHAR >::str_ [private]

Target string to iterate over.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Fri Sep 11 03:58:26 2009 for ACE by  doxygen 1.6.1