# HG changeset patch
# User Alpar Juttner <alpar@cs.elte.hu>
# Date 1199487016 -3600
# Node ID d6bc33fa659099d384af098a9253e25e9e18423b
# Parent  ad7f593399b0a500ff7bdc4ac4a3e62fe9708133# Parent  b88dd07e6349be2b159e163d4a0da3861c0a2dd5
Merge

diff -r ad7f593399b0 -r d6bc33fa6590 lemon/maps.h
--- a/lemon/maps.h	Fri Jan 04 21:45:55 2008 +0100
+++ b/lemon/maps.h	Fri Jan 04 23:50:16 2008 +0100
@@ -44,9 +44,9 @@
   template<typename K, typename T>
   class MapBase {
   public:
-    ///\e
+    /// The key type of the map.
     typedef K Key;
-    ///\e
+    /// The value type of the map. (The type of objects associated with the keys).
     typedef T Value;
   };
 
@@ -249,9 +249,9 @@
     };
   };
 
-  /// \brief Map for storing values for the range \c [0..size-1] range keys
+  /// \brief Map for storing values for keys from the range <tt>[0..size-1]</tt>
   ///
-  /// The current map has the \c [0..size-1] keyset and the values
+  /// The current map has the <tt>[0..size-1]</tt> keyset and the values
   /// are stored in a \c std::vector<T>  container. It can be used with
   /// some data structures, for example \c UnionFind, \c BinHeap, when 
   /// the used items are small integer numbers. 
@@ -829,7 +829,7 @@
   ///
   ///For example if \c m1 and \c m2 are both \c double valued maps, then 
   ///\code
-  ///combineMap<double>(m1,m2,std::plus<double>())
+  ///combineMap(m1,m2,std::plus<double>())
   ///\endcode
   ///is equivalent to
   ///\code
@@ -962,8 +962,9 @@
   ///of a given functor.
   ///
   ///Template parameters \c K and \c V will become its
-  ///\c Key and \c Value. They must be given explicitly
-  ///because a functor does not provide such typedefs.
+  ///\c Key and \c Value. 
+  ///In most cases they have to be given explicitly because a 
+  ///functor typically does not provide such typedefs.
   ///
   ///Parameter \c F is the type of the used functor.
   ///
@@ -1240,6 +1241,8 @@
   ///\endcode
   ///
   ///\sa BackInserterBoolMap 
+  ///\sa FrontInserterBoolMap 
+  ///\sa InserterBoolMap 
   ///
   ///\todo Revise the name of this class and the related ones.
   template <typename _Iterator, 
@@ -1305,7 +1308,7 @@
             _maps_bits::Identity<typename Container::value_type> >
   class BackInserterBoolMap {
   public:
-    typedef typename Container::value_type Key;
+    typedef typename Functor::argument_type Key;
     typedef bool Value;
 
     /// Constructor
@@ -1340,7 +1343,7 @@
             _maps_bits::Identity<typename Container::value_type> >
   class FrontInserterBoolMap {
   public:
-    typedef typename Container::value_type Key;
+    typedef typename Functor::argument_type Key;
     typedef bool Value;
 
     /// Constructor