Loading...
Searching...
No Matches
OrMap< M1, M2 > Class Template Reference
Data Structures » Maps » Map Adaptors

## Detailed Description

template<typename M1, typename M2>
class lemon::OrMap< M1, M2 >

This read-only map returns the logical 'or' of the values of the two given maps. Its `Key` type is inherited from `M1` and its `Value` type is `bool`. `M2::Key` must be convertible to `M1::Key`.

If `m1` is of type `M1` and `m2` is of `M2`, then for

OrMap<M1,M2> om(m1,m2);
lemon::OrMap::OrMap
OrMap(const M1 &m1, const M2 &m2)
Constructor.
Definition maps.h:1497

om[x] will be equal to m1[x]||m2[x].

The simplest way of using this map is through the orMap() function.

See also
  AndMap
  NotMap, NotWriteMap

`#include <lemon/maps.h>`

Inheritance diagram for OrMap< M1, M2 >:
[legend]

## Public Types

typedef M1::Key | Key
typedef bool | Value
Public Types inherited from MapBase< M1::Key, bool >
typedef M1::Key | Key
| The key type of the map.
typedef bool | Value
| The value type of the map. (The type of objects associated with the keys).

## Public Member Functions

| OrMap (const M1 &m1, const M2 &m2)
| Constructor.
Value | operator[] (const Key &k) const

## Related Symbols

(Note that these are not member symbols.)
template<typename M1, typename M2>
OrMap< M1, M2 > | orMap (const M1 &m1, const M2 &m2)
| Returns an `OrMap` class.