Sourceforge.net - The VCF's Project Host
   The VCF Website Home   |   Online Discussion Forums   |   Sourceforge.net Project Page   

VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType > Class Template Reference

The AssociativeEnumerator is a utility class that makes it easy to use a specific stl collection class (like a map) and have support for the Enumerator interface. More...

#include <vcf/FoundationKit/Enumerator.h>

Inheritance diagram for VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >:

VCF::EnumeratorMapContainer< CollectionType, ValueType > VCF::Enumerator< ValueType > List of all members.

Public Types

typedef CollectionType CollectionT
typedef KeyType KeyT
typedef ValueType ValueT
typedef EnumeratorMapContainer<
CollectionT, ValueT
BaseT
typedef _typename_ CollectionT::key_type key_type
typedef _typename_ CollectionT::key_compare key_compare
typedef _typename_ CollectionT::value_compare value_compare
typedef _typename_ CollectionT::allocator_type allocator_type
typedef _typename_ CollectionT::value_type value_type
typedef _typename_ CollectionT::size_type size_type
typedef _typename_ CollectionT::difference_type difference_type
typedef _typename_ CollectionT::reference reference
typedef _typename_ CollectionT::const_reference const_reference
typedef _typename_ CollectionT::iterator iterator
typedef _typename_ CollectionT::const_iterator const_iterator
typedef _typename_ CollectionT::reverse_iterator reverse_iterator
typedef _typename_ CollectionT::const_reverse_iterator const_reverse_iterator

Public Member Functions

 AssociativeEnumerator ()
 AssociativeEnumerator (const AssociativeEnumerator &rhs)
 operator CollectionT & ()
 operator const CollectionT & () const
CollectionTget ()
const CollectionTget () const
void clear ()
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
reverse_iterator rbegin ()
const_reverse_iterator rbegin () const
reverse_iterator rend ()
const_reverse_iterator rend () const
size_type size () const
size_type max_size () const
bool empty () const
ValueType & operator[] (const KeyType &key)
std::pair< iterator, bool > insert (const value_type &x)
iterator insert (iterator it, const value_type &x)
iterator insert (const value_type *first, const value_type *last)
void erase (iterator it)
void erase (iterator first, iterator last)
size_type erase (const KeyType &key)
void swap (AssociativeEnumerator x)
key_compare key_comp () const
value_compare value_comp () const
iterator find (const KeyType &key)
const_iterator find (const KeyType &key) const
size_type count (const KeyType &key) const
iterator lower_bound (const KeyType &key)
const_iterator lower_bound (const KeyType &key) const
iterator upper_bound (const KeyType &key)
const_iterator upper_bound (const KeyType &key) const
std::pair< iterator, iteratorequal_range (const KeyType &key)
std::pair< const_iterator,
const_iterator
equal_range (const KeyType &key) const

Protected Attributes

CollectionT collection_

Detailed Description

template<typename KeyType, typename ValueType, typename CollectionType>
class VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >

The AssociativeEnumerator is a utility class that makes it easy to use a specific stl collection class (like a map) and have support for the Enumerator interface.

Noet that for this class when you use a collection like a map, that when the Enumerator interface iterates through the items, it is only returning the values in the map, not the keys. If you need the keys, you need to use the STL methods.


Member Typedef Documentation

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::allocator_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::allocator_type
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef EnumeratorMapContainer<CollectionT,ValueT> VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::BaseT
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef CollectionType VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::CollectionT
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::const_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::const_iterator
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::const_reference VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::const_reference
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::const_reverse_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::const_reverse_iterator
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::difference_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::difference_type
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::iterator
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::key_compare VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::key_compare
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::key_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::key_type
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef KeyType VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::KeyT
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::reference VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::reference
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::reverse_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::reverse_iterator
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::size_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::size_type
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::value_compare VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::value_compare
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef _typename_ CollectionT::value_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::value_type
 

template<typename KeyType, typename ValueType, typename CollectionType>
typedef ValueType VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::ValueT
 


Constructor & Destructor Documentation

template<typename KeyType, typename ValueType, typename CollectionType>
VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::AssociativeEnumerator  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::AssociativeEnumerator const AssociativeEnumerator< KeyType, ValueType, CollectionType > &  rhs  )  [inline]
 


Member Function Documentation

template<typename KeyType, typename ValueType, typename CollectionType>
const_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::begin  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::begin  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
void VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::clear  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
size_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::count const KeyType &  key  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
bool VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::empty  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
const_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::end  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::end  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
std::pair<const_iterator, const_iterator> VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::equal_range const KeyType &  key  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
std::pair<iterator, iterator> VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::equal_range const KeyType &  key  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
size_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::erase const KeyType &  key  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
void VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::erase iterator  first,
iterator  last
[inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
void VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::erase iterator  it  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
const_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::find const KeyType &  key  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::find const KeyType &  key  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
const CollectionT& VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::get  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
CollectionT& VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::get  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::insert const value_type first,
const value_type last
[inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::insert iterator  it,
const value_type x
[inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
std::pair<iterator, bool> VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::insert const value_type x  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
key_compare VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::key_comp  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
const_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::lower_bound const KeyType &  key  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::lower_bound const KeyType &  key  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
size_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::max_size  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::operator CollectionT &  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::operator const CollectionT &  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
ValueType& VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::operator[] const KeyType &  key  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
const_reverse_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::rbegin  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
reverse_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::rbegin  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
const_reverse_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::rend  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
reverse_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::rend  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
size_type VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::size  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
void VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::swap AssociativeEnumerator< KeyType, ValueType, CollectionType >  x  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
const_iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::upper_bound const KeyType &  key  )  const [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
iterator VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::upper_bound const KeyType &  key  )  [inline]
 

template<typename KeyType, typename ValueType, typename CollectionType>
value_compare VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::value_comp  )  const [inline]
 


Member Data Documentation

template<typename KeyType, typename ValueType, typename CollectionType>
CollectionT VCF::AssociativeEnumerator< KeyType, ValueType, CollectionType >::collection_ [protected]
 


The documentation for this class was generated from the following file:
   Comments or Suggestions?    License Information