ACE 8.0.5
Loading...
Searching...
No Matches
ACE_Unbounded_Set_Ex_Iterator< T, C > Class Template Reference

Implement an iterator over an unbounded set. More...

#include <Unbounded_Set_Ex.h>

Inheritance diagram for ACE_Unbounded_Set_Ex_Iterator< T, C >:
Collaboration diagram for ACE_Unbounded_Set_Ex_Iterator< T, C >:

Public Types

typedef ACE_Unbounded_Set_Ex< T, C > container_type
 Type definition of the container type.
typedef std::forward_iterator_tag iterator_category
typedef container_type::value_type value_type
typedef container_type::reference reference
typedef container_type::pointer pointer
typedef container_type::difference_type difference_type

Public Member Functions

 ACE_Unbounded_Set_Ex_Iterator (ACE_Unbounded_Set_Ex< T, C > &s, bool end=false)
int next (T *&next_item)
int advance ()
int first ()
int done () const
 Returns 1 when all items have been seen, else 0.
void dump () const
 Dump the state of an object.
ACE_Unbounded_Set_Ex_Iterator< T, C > operator++ (int)
 Postfix advance.
ACE_Unbounded_Set_Ex_Iterator< T, C > & operator++ ()
 Prefix advance.
T & operator* ()
 Returns a reference to the internal element this is pointing to.
bool operator== (const ACE_Unbounded_Set_Ex_Iterator< T, C > &) const
 Check if two iterators point to the same position.
bool operator!= (const ACE_Unbounded_Set_Ex_Iterator< T, C > &) const

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Attributes

ACE_Node< T, C > * current_
 Pointer to the current node in the iteration.
ACE_Unbounded_Set_Ex< T, C > * set_
 Pointer to the set we're iterating over.

Detailed Description

template<class T, class C>
class ACE_Unbounded_Set_Ex_Iterator< T, C >

Implement an iterator over an unbounded set.

Member Typedef Documentation

◆ container_type

template<class T, class C>
typedef ACE_Unbounded_Set_Ex<T, C> ACE_Unbounded_Set_Ex_Iterator< T, C >::container_type

Type definition of the container type.

◆ difference_type

template<class T, class C>
typedef container_type::difference_type ACE_Unbounded_Set_Ex_Iterator< T, C >::difference_type

◆ iterator_category

template<class T, class C>
typedef std::forward_iterator_tag ACE_Unbounded_Set_Ex_Iterator< T, C >::iterator_category

◆ pointer

template<class T, class C>
typedef container_type::pointer ACE_Unbounded_Set_Ex_Iterator< T, C >::pointer

◆ reference

template<class T, class C>
typedef container_type::reference ACE_Unbounded_Set_Ex_Iterator< T, C >::reference

◆ value_type

template<class T, class C>
typedef container_type::value_type ACE_Unbounded_Set_Ex_Iterator< T, C >::value_type

Constructor & Destructor Documentation

◆ ACE_Unbounded_Set_Ex_Iterator()

template<class T, class C>
ACE_Unbounded_Set_Ex_Iterator< T, C >::ACE_Unbounded_Set_Ex_Iterator ( ACE_Unbounded_Set_Ex< T, C > & s,
bool end = false )

Member Function Documentation

◆ advance()

template<class T, class C>
int ACE_Unbounded_Set_Ex_Iterator< T, C >::advance ( )

Move forward by one element in the set. Returns 0 when all the items in the set have been seen, else 1.

◆ done()

template<class T, class C>
int ACE_Unbounded_Set_Ex_Iterator< T, C >::done ( ) const

Returns 1 when all items have been seen, else 0.

◆ dump()

template<class T, class C>
class C void ACE_Unbounded_Set_Ex_Iterator< T, C >::dump ( ) const

Dump the state of an object.

◆ first()

template<class T, class C>
int ACE_Unbounded_Set_Ex_Iterator< T, C >::first ( )

Move to the first element in the set. Returns 0 if the set is empty, else 1.

◆ next()

template<class T, class C>
int ACE_Unbounded_Set_Ex_Iterator< T, C >::next ( T *& next_item)

Pass back the next_item that hasn't been seen in the Set. Returns 0 when all items have been seen, else 1.

◆ operator!=()

template<class T, class C>
bool ACE_Unbounded_Set_Ex_Iterator< T, C >::operator!= ( const ACE_Unbounded_Set_Ex_Iterator< T, C > & rhs) const

◆ operator*()

template<class T, class C>
T & ACE_Unbounded_Set_Ex_Iterator< T, C >::operator* ( )

Returns a reference to the internal element this is pointing to.

◆ operator++() [1/2]

template<class T, class C>
ACE_Unbounded_Set_Ex_Iterator< T, C > & ACE_Unbounded_Set_Ex_Iterator< T, C >::operator++ ( )

Prefix advance.

◆ operator++() [2/2]

template<class T, class C>
ACE_Unbounded_Set_Ex_Iterator< T, C > ACE_Unbounded_Set_Ex_Iterator< T, C >::operator++ ( int )

Postfix advance.

◆ operator==()

template<class T, class C>
bool ACE_Unbounded_Set_Ex_Iterator< T, C >::operator== ( const ACE_Unbounded_Set_Ex_Iterator< T, C > & rhs) const

Check if two iterators point to the same position.

Member Data Documentation

◆ ACE_ALLOC_HOOK_DECLARE

template<class T, class C>
ACE_Unbounded_Set_Ex_Iterator< T, C >::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

◆ current_

template<class T, class C>
ACE_Node<T, C>* ACE_Unbounded_Set_Ex_Iterator< T, C >::current_
private

Pointer to the current node in the iteration.

◆ set_

template<class T, class C>
ACE_Unbounded_Set_Ex<T, C>* ACE_Unbounded_Set_Ex_Iterator< T, C >::set_
private

Pointer to the set we're iterating over.


The documentation for this class was generated from the following files: