My Project
Loading...
Searching...
No Matches
ComposeMap< M1, M2 > Class Template Reference

Detailed Description

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

This read-only map returns the composition of two given maps. That is to say, if m1 is of type M1 and m2 is of M2, then for

Composition of two maps.
Definition maps.h:489

cm[x] will be equal to m1[m2[x]].

The Key type of the map is inherited from M2 and the Value type is from M1. M2::Value must be convertible to M1::Key.

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

See also
CombineMap

#include <lemon/maps.h>

+ Inheritance diagram for ComposeMap< M1, M2 >:

Public Types

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

Public Member Functions

 ComposeMap (const M1 &m1, const M2 &m2)
 Constructor.
 
MapTraits< M1 >::ConstReturnValue operator[] (const Key &k) const
 
 

Related Symbols

(Note that these are not member symbols.)

template<typename M1 , typename M2 >
ComposeMap< M1, M2 > composeMap (const M1 &m1, const M2 &m2)
 Returns a ComposeMap class.