1 #ifndef __JTOOLS__JHASHMAP__ 
    2 #define __JTOOLS__JHASHMAP__ 
   21 namespace JPP { 
using namespace JTOOLS; }
 
   31   template<
class JEvaluator_t>
 
   35     using JEvaluator_t::operator();
 
   43       JEvaluator_t(evaluator)
 
   53     template<
class JKey_t, 
class JValue_t>
 
   56       return JEvaluator_t::operator()(pair.first);
 
   70   template<
class JKey_t, 
class JValue_t, 
class JEvaluator_t = JHashEvaluator>
 
   72     public JHashCollection<std::pair<JKey_t, JValue_t>, JHashMapEvaluator<JEvaluator_t> >,
 
   87     typedef typename container_type::iterator                    
iterator;
 
   98     JHashMap(
const JEvaluator_t& evaluator = JEvaluator_t()) :
 
  120       const int ival = this->
getValue(key);
 
  122       if (!this->
router.has(ival)) {
 
  126       return container_type::operator[](this->
router.get(ival)).second;
 
  140       const int ival = this->
getValue(key);
 
  142       if (this->
router.has(ival))
 
  143         return container_type::operator[](this->
router.get(ival)).second;
 
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message. 
 
General purpose class for a hash collection of unique elements. 
 
JArgument< T >::argument_type argument_type
 
Template for generic class types. 
 
Exception for accessing an index in a collection that is outside of its range.