
#ifndef autil_tl_string_map__HH
#define autil_tl_string_map__HH

#include <cctype>
#include "string_map.hh"

namespace autil {
  
  using namespace std;

  class ToLowerStringMap : public StringMap {
  public:
    bool add(const char * key) {
      string new_key;
      while (*key) new_key += tolower(*key++);
      return StringMap::add(new_key.c_str());
    }
    bool remove(const char * key) {
      string new_key;
      while (*key) new_key += tolower(*key++);
      return StringMap::remove(new_key.c_str());
    }
  };
}

#endif
