Gecode::Iter::Values::Map< I, M, strict > Class Template Reference
Common functionality » Range and value iterators » Value iterators

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

`#include <values-map.hpp>`

## Protected Attributes

I | i
| Input iterator.
M | 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:

- gecode/iter/values-map.hpp