Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends
utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal > Class Template Reference

iterator for table More...

#include <iter.hh>

List of all members.

Public Types

typedef value_typepointer
 Pointer type.
typedef value_typereference
 Reference type.
typedef size_t size_type
 Size type.
typedef Value value_type
 Type of the pointed elements.

Public Member Functions

 iter ()
 default crontructor
bool operator!= (iter const &other) const
 Difference test.
reference operator* () const
 dereference operator
iter operator+ (size_type pos) const
 Addition operation.
iteroperator++ ()
 Pre-incremant operation.
iter operator++ (int)
 Post-increment operation.
iteroperator+= (size_type pos)
 Advance operation.
pointer operator-> () const
 access operator
bool operator== (iter const &other) const
 Equality test.

Private Types

typedef table< Key, Value,
Extract, Hash, Equal > 
container_type
typedef container_type::node_type node_type

Private Member Functions

 iter (node_type *, container_type *)

Private Attributes

node_typecurrent
container_typeowner

Friends

class const_iter
class table

Detailed Description

template<typename Key, typename Value, class Extract, class Hash, class Equal>
class utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >

iterator for table

This class implements a iterator for utilmm::hash_toolbox::table.

Author:
Frédéric Py <fpy@laas.fr>

Definition at line 175 of file iter.hh.


Member Typedef Documentation

template<typename Key, typename Value, class Extract, class Hash, class Equal>
typedef table<Key, Value, Extract, Hash, Equal> utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::container_type [private]

Definition at line 274 of file iter.hh.

template<typename Key, typename Value, class Extract, class Hash, class Equal>
typedef container_type::node_type utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::node_type [private]

Definition at line 275 of file iter.hh.

template<typename Key, typename Value, class Extract, class Hash, class Equal>
typedef value_type* utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::pointer

Pointer type.

This is the type of the pointer used to access to Value. For cont iterator it is a const pointer

Definition at line 187 of file iter.hh.

template<typename Key, typename Value, class Extract, class Hash, class Equal>
typedef value_type& utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::reference

Reference type.

This is the type of the reference used to access to Value.

Definition at line 192 of file iter.hh.

template<typename Key, typename Value, class Extract, class Hash, class Equal>
typedef size_t utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::size_type

Size type.

This is the type used to advance the iterator or other things like that.

Definition at line 198 of file iter.hh.

template<typename Key, typename Value, class Extract, class Hash, class Equal>
typedef Value utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::value_type

Type of the pointed elements.

This the type of the elements in the container

Definition at line 181 of file iter.hh.


Constructor & Destructor Documentation

template<typename Key, typename Value, class Extract, class Hash, class Equal>
utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::iter ( )

default crontructor

Create an iterator not attached to any table

template<typename Key, typename Value, class Extract, class Hash, class Equal>
utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::iter ( node_type ,
container_type  
) [private]

Member Function Documentation

template<typename Key, typename Value, class Extract, class Hash, class Equal>
bool utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator!= ( iter< Key, Value, Extract, Hash, Equal > const &  other) const

Difference test.

Parameters:
otherThe instance to compare
Return values:
trueif *this is not equal to other
falseelse
template<typename Key, typename Value, class Extract, class Hash, class Equal>
reference utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator* ( ) const

dereference operator

Returns:
a refence to pointed cell
template<typename Key, typename Value, class Extract, class Hash, class Equal>
iter utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator+ ( size_type  pos) const

Addition operation.

Parameters:
posdistance to add

This function returns an iterator pos cells after current instance

Returns:
the itrerator at pos
template<typename Key, typename Value, class Extract, class Hash, class Equal>
iter& utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator++ ( )

Pre-incremant operation.

Advance iterator of one cell

Returns:
the iterator after operation.
template<typename Key, typename Value, class Extract, class Hash, class Equal>
iter utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator++ ( int  )

Post-increment operation.

Advance iterator of one cell

Returns:
value of the iterator just before the operation.
template<typename Key, typename Value, class Extract, class Hash, class Equal>
iter& utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator+= ( size_type  pos)

Advance operation.

Parameters:
posdistance to advance

This function increments the iterator position of the given distance pos .

Returns:
*this after operation
template<typename Key, typename Value, class Extract, class Hash, class Equal>
pointer utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator-> ( ) const

access operator

This operator allow user to acces directly to attributes of pointed cell.

Returns:
a pointer to the cell
template<typename Key, typename Value, class Extract, class Hash, class Equal>
bool utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::operator== ( iter< Key, Value, Extract, Hash, Equal > const &  other) const

Equality test.

Parameters:
otherThe instance to compare
Return values:
trueif *this is equal to other
falseelse

Friends And Related Function Documentation

template<typename Key, typename Value, class Extract, class Hash, class Equal>
friend class const_iter [friend]

Definition at line 283 of file iter.hh.

template<typename Key, typename Value, class Extract, class Hash, class Equal>
friend class table [friend]

Definition at line 286 of file iter.hh.


Member Data Documentation

template<typename Key, typename Value, class Extract, class Hash, class Equal>
node_type* utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::current [private]

Definition at line 278 of file iter.hh.

template<typename Key, typename Value, class Extract, class Hash, class Equal>
container_type* utilmm::hash_toolbox::iter< Key, Value, Extract, Hash, Equal >::owner [private]

Definition at line 277 of file iter.hh.


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


utilmm
Author(s): Sylvain Joyeux/sylvain.joyeux@m4x.org
autogenerated on Thu Jan 2 2014 11:38:31