Generated on Thu Jan 16 2025 00:00:00 for Gecode by doxygen 1.14.0
Gecode::Iter::Values::Map< I, M, strict > Class Template Reference

Value iterator for mapping values of a value iterator. More...

#include <values-map.hpp>

Protected Attributes

i
 Input iterator.
m
 Mapping object.

Constructors and initialization

 Map (void)
 Default constructor.
 Map (I &i)
 Initialize with values from i.
 Map (I &i, const M &m)
 Initialize with values from i and map m.
void init (I &i)
 Initialize with values from i.
void init (I &i, const M &m)
 Initialize with values from i and map m.

Iteration control

bool operator() (void) const
 Test whether iterator is still at a value or done.
void operator++ (void)
 Move iterator to next value (if possible)

Value access

int val (void) const
 Return current value.

Detailed Description

template<class I, class M, bool strict = false>
class Gecode::Iter::Values::Map< I, M, strict >

Value iterator for mapping values of a value iterator.

If strict is true, the values obtained by mapping must be strictly increasing (that is, no duplicates).

Definition at line 45 of file values-map.hpp.

Constructor & Destructor Documentation

◆ Map() [1/3]

template<class I, class M, bool strict>
Gecode::Iter::Values::Map< I, M, strict >::Map ( void )
inline

Default constructor.

Definition at line 84 of file values-map.hpp.

◆ Map() [2/3]

template<class I, class M, bool strict>
Gecode::Iter::Values::Map< I, M, strict >::Map ( I & i)
inline

Initialize with values from i.

Definition at line 88 of file values-map.hpp.

◆ Map() [3/3]

template<class I, class M, bool strict>
Gecode::Iter::Values::Map< I, M, strict >::Map ( I & i,
const M & m )
inline

Initialize with values from i and map m.

Definition at line 92 of file values-map.hpp.

Member Function Documentation

◆ init() [1/2]

template<class I, class M, bool strict>
void Gecode::Iter::Values::Map< I, M, strict >::init ( I & i)
inline

Initialize with values from i.

Definition at line 96 of file values-map.hpp.

◆ init() [2/2]

template<class I, class M, bool strict>
void Gecode::Iter::Values::Map< I, M, strict >::init ( I & i,
const M & m )
inline

Initialize with values from i and map m.

Definition at line 102 of file values-map.hpp.

◆ operator()()

template<class I, class M, bool strict>
bool Gecode::Iter::Values::Map< I, M, strict >::operator() ( void ) const
inline

Test whether iterator is still at a value or done.

Definition at line 120 of file values-map.hpp.

◆ operator++()

template<class I, class M, bool strict>
void Gecode::Iter::Values::Map< I, M, strict >::operator++ ( void )
inline

Move iterator to next value (if possible)

Definition at line 108 of file values-map.hpp.

◆ val()

template<class I, class M, bool strict>
int Gecode::Iter::Values::Map< I, M, strict >::val ( void ) const
inline

Return current value.

Definition at line 126 of file values-map.hpp.

Member Data Documentation

◆ i

template<class I, class M, bool strict = false>
I Gecode::Iter::Values::Map< I, M, strict >::i
protected

Input iterator.

Definition at line 48 of file values-map.hpp.

◆ m

template<class I, class M, bool strict = false>
M Gecode::Iter::Values::Map< I, M, strict >::m
protected

Mapping object.

Definition at line 50 of file values-map.hpp.


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