00001 #ifndef STATIC_CONTAINER_LIST_HASH_H
00002
00003 #define STATIC_CONTAINER_LIST_HASH_H
00004
00005 #include "static_container/hash.h"
00006 #include "static_container/list.h"
00007
00008 namespace static_container {
00010 template < typename Key, typename Value, size_type MaxSize, typename KeyEqual = std::equal_to< Key > >
00011 class list_hash : public hash< Key, Value, list< std::pair< Key, Value >, MaxSize >, KeyEqual > {
00012 public:
00013 typedef hash< Key, Value, list< std::pair< Key, Value >, MaxSize >, KeyEqual > parent;
00014
00015 typedef typename parent::value_type value_type;
00016 typedef typename parent::reference reference;
00017 typedef typename parent::const_reference const_reference;
00018 typedef typename parent::iterator iterator;
00019 typedef typename parent::const_iterator const_iterator;
00020 typedef typename parent::size_type size_type;
00021
00022 list_hash( key_equal equal = KeyEqual() ) : parent( equal ) {}
00023 };
00024 }
00025
00026 #endif