summaryrefslogtreecommitdiff
path: root/yhttpd/src/maps
diff options
context:
space:
mode:
Diffstat (limited to 'yhttpd/src/maps')
-rw-r--r--yhttpd/src/maps/hashmap.h53
-rw-r--r--yhttpd/src/maps/hashmap.tmpl126
-rw-r--r--yhttpd/src/maps/mtools.h11
-rw-r--r--yhttpd/src/maps/mtools.tmpl12
-rw-r--r--yhttpd/src/maps/nhashmap.h21
-rw-r--r--yhttpd/src/maps/nhashmap.tmpl11
-rw-r--r--yhttpd/src/maps/shashmap.h49
-rw-r--r--yhttpd/src/maps/shashmap.tmpl157
8 files changed, 0 insertions, 440 deletions
diff --git a/yhttpd/src/maps/hashmap.h b/yhttpd/src/maps/hashmap.h
deleted file mode 100644
index b3a3212..0000000
--- a/yhttpd/src/maps/hashmap.h
+++ /dev/null
@@ -1,53 +0,0 @@
-#ifndef HASHMAP_H
-#define HASHMAP_H
-
-#include <ext/hash_map>
-
-using namespace std;
-
-template<class key_type_>
-struct compare_allocator
-{
- inline bool operator()(key_type_ t_key_1, key_type_ t_key_2) const;
-};
-
-template<class key_type_>
-struct equals_allocator
-{
- inline bool operator()(key_type_ t_key_1, key_type_ t_key_2) const;
-};
-
-template<class key_type_>
-struct size_hash
-{
- inline int operator()(key_type_ t_key) const;
-};
-
-template<class key_type_>
-struct self_hash
-{
- inline int operator()(key_type_ t_key) const;
-};
-
-template
-<
-class obj_type,
-class key_type_ = string,
-class hash_type = size_hash<string>,
-class alloc_type = compare_allocator<string>
->
-struct hashmap : public __gnu_cxx::hash_map<key_type_, obj_type, hash_type, alloc_type>
-{
- virtual inline void set_elem(obj_type t_obj, key_type_ t_key);
- virtual inline obj_type get_elem(key_type_ t_key);
- virtual inline obj_type get_set_elem(obj_type t_obj, key_type_ t_key);
- virtual inline obj_type get_or_callback_set
- (obj_type (*func)(void*), void* p_void, key_type_ t_key);
- virtual inline vector<key_type_>* get_key_vector();
- virtual inline bool exists(key_type_ t_key);
- virtual inline void run_func( void (*func)(obj_type) );
- virtual inline void run_func( void (*func)(obj_type, void*), void* v_arg );
-};
-
-#include "hashmap.tmpl"
-#endif
diff --git a/yhttpd/src/maps/hashmap.tmpl b/yhttpd/src/maps/hashmap.tmpl
deleted file mode 100644
index 9ee2f36..0000000
--- a/yhttpd/src/maps/hashmap.tmpl
+++ /dev/null
@@ -1,126 +0,0 @@
-template<class key_type_>
-bool
-compare_allocator<key_type_>::operator()(key_type_ t_key_1, key_type_ t_key_2) const
-{
- return t_key_1.compare(t_key_2) == 0;
-}
-
-template<class key_type_>
-bool
-equals_allocator<key_type_>::operator()(key_type_ t_key_1, key_type_ t_key_2) const
-{
- return t_key_1 == t_key_2;
-}
-
-template<class key_type_>
-int
-size_hash<key_type_>::operator()(key_type_ t_key) const
-{
- int i_hash = 0;
- int i_size = t_key.size();
-
- for( size_t i = 0; i < i_size; ++i )
- i_hash = ( i_hash << 5 ) ^ t_key.at(i) ^ i_hash;
-
- return i_hash;
-}
-
-template<class key_type_>
-int
-self_hash<key_type_>::operator()(key_type_ t_key) const
-{
- return t_key;
-}
-
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-obj_type
-hashmap<obj_type, key_type_, hash_type, alloc_type>::get_set_elem(obj_type t_obj, key_type_ t_key)
-{
- typename hashmap<obj_type, key_type_, hash_type, alloc_type>::iterator iter = this->find(t_key);
-
- if ( iter == this->end() )
- {
- set_elem(t_obj, t_key);
- return obj_type();
- }
-
- obj_type t_ret = iter->second;
- iter->second = t_obj;
-
- return t_ret;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-obj_type
-hashmap<obj_type, key_type_, hash_type, alloc_type>::get_or_callback_set
-(obj_type (*func)(void*), void* p_void, key_type_ t_key)
-{
- typename hashmap<obj_type, key_type_, hash_type, alloc_type>::iterator iter = this->find(t_key);
-
- if ( iter == this->end() )
- {
- obj_type t_obj = (*func) (p_void);
- set_elem(t_obj, t_key);
- return t_obj;
- }
-
- return iter->second;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-hashmap<obj_type, key_type_, hash_type, alloc_type>::set_elem(obj_type t_obj, key_type_ t_key)
-{
- (*this)[t_key] = t_obj;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-obj_type
-hashmap<obj_type, key_type_, hash_type, alloc_type>::get_elem(key_type_ t_key)
-{
- typename hashmap<obj_type, key_type_, hash_type, alloc_type>::iterator iter = this->find(t_key);
-
- if ( iter != this->end() )
- return iter->second;
-
- return obj_type();
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-vector<key_type_>*
-hashmap<obj_type, key_type_, hash_type, alloc_type>::get_key_vector()
-{
- vector<key_type_>* p_vec = new vector<key_type_>;
- typename hashmap<obj_type, key_type_, hash_type, alloc_type>::iterator iter;
-
- for ( iter = this->begin(); iter != this->end(); ++iter )
- p_vec->push_back(iter->first);
-
- return p_vec;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-bool
-hashmap<obj_type, key_type_, hash_type, alloc_type>::exists(key_type_ t_key)
-{
- return this->find(t_key) != this->end();
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-hashmap<obj_type, key_type_, hash_type, alloc_type>::run_func( void (*func)(obj_type) )
-{
- typename hashmap<obj_type, key_type_, hash_type, alloc_type>::iterator iter;
- for ( iter = this->begin(); iter != this->end(); ++iter )
- ( *func ) ( iter->second );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-hashmap<obj_type, key_type_, hash_type, alloc_type>::run_func( void (*func)(obj_type, void*), void* v_arg )
-{
- typename hashmap<obj_type, key_type_, hash_type, alloc_type>::iterator iter;
- for ( iter = this->begin(); iter != this->end(); ++iter )
- ( *func ) ( iter->second, v_arg );
-}
diff --git a/yhttpd/src/maps/mtools.h b/yhttpd/src/maps/mtools.h
deleted file mode 100644
index 4ee45b8..0000000
--- a/yhttpd/src/maps/mtools.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#ifndef MTOOLS_H
-#define MTOOLS_H
-
-template <class type_>
-struct mtools
-{
- static void delete_obj(type_ type_obj);
-};
-
-#include "mtools.tmpl"
-#endif
diff --git a/yhttpd/src/maps/mtools.tmpl b/yhttpd/src/maps/mtools.tmpl
deleted file mode 100644
index 6917131..0000000
--- a/yhttpd/src/maps/mtools.tmpl
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifndef MTOOLS_TMPL
-#define MTOOLS_TMPL
-
-template <class type_>
-void
-mtools<type_>::delete_obj( type_ type_obj )
-{
- if ( type_obj )
- delete type_obj;
-}
-
-#endif
diff --git a/yhttpd/src/maps/nhashmap.h b/yhttpd/src/maps/nhashmap.h
deleted file mode 100644
index f440230..0000000
--- a/yhttpd/src/maps/nhashmap.h
+++ /dev/null
@@ -1,21 +0,0 @@
-#ifndef NHASHMAP_H
-#define NHASHMAP_H
-
-#include "shashmap.h"
-
-using namespace std;
-
-template
-<
-class obj_type,
-class key_type_ = string,
-class hash_type = size_hash<string>,
-class alloc_type = compare_allocator<string>
->
-struct nhashmap : public shashmap<obj_type, key_type_, hash_type, alloc_type>
-{
- inline obj_type get_elem(key_type_ t_key);
-};
-
-#include "nhashmap.tmpl"
-#endif
diff --git a/yhttpd/src/maps/nhashmap.tmpl b/yhttpd/src/maps/nhashmap.tmpl
deleted file mode 100644
index 3ea1934..0000000
--- a/yhttpd/src/maps/nhashmap.tmpl
+++ /dev/null
@@ -1,11 +0,0 @@
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-obj_type
-nhashmap<obj_type, key_type_, hash_type, alloc_type>::get_elem(key_type_ t_key)
-{
- typename hashmap<obj_type, key_type_, hash_type, alloc_type>::iterator iter = this->find(t_key);
-
- if ( iter != this->end() )
- return iter->second;
-
- return NULL;
-}
diff --git a/yhttpd/src/maps/shashmap.h b/yhttpd/src/maps/shashmap.h
deleted file mode 100644
index f692e32..0000000
--- a/yhttpd/src/maps/shashmap.h
+++ /dev/null
@@ -1,49 +0,0 @@
-#ifndef SHASHMAP_H
-#define SHASHMAP_H
-
-#include <pthread.h>
-#include "hashmap.h"
-
-#include "../monitor/dump.h"
-
-using namespace std;
-
-template
-<
-class obj_type,
-class key_type_ = string,
-class hash_type = size_hash<string>,
-class alloc_type = compare_allocator<string>
->
-class shashmap : protected hashmap<obj_type, key_type_, hash_type, alloc_type>,
- public dumpable
-{
-private:
- pthread_mutex_t mut_shashmap;
-
-protected:
- virtual void dumpit();
-
-public:
- explicit shashmap();
- ~shashmap();
- virtual inline void set_elem(obj_type t_obj, key_type_ t_key);
- virtual inline obj_type get_set_elem(obj_type t_obj, key_type_ t_key);
- virtual inline obj_type get_or_callback_set
- (obj_type (*func)(void*), void* p_void, key_type_ t_key);
- virtual inline void add_elem(obj_type t_obj, key_type_ t_key);
- virtual inline void add_elem_insecure(obj_type t_obj, key_type_ t_key);
- virtual inline obj_type get_elem(key_type_ t_key);
- virtual inline void del_elem(key_type_ t_key);
- virtual inline void del_elem_insecure(key_type_ t_key);
- virtual inline void clear();
- virtual inline int size();
- virtual inline bool exists(key_type_ t_key);
- virtual inline vector<key_type_>* get_key_vector();
- virtual inline void run_func( void (*func)(obj_type) );
- virtual inline void run_func( void (*func)(obj_type, void*), void* v_arg );
-
-};
-
-#include "shashmap.tmpl"
-#endif
diff --git a/yhttpd/src/maps/shashmap.tmpl b/yhttpd/src/maps/shashmap.tmpl
deleted file mode 100644
index 0bd5796..0000000
--- a/yhttpd/src/maps/shashmap.tmpl
+++ /dev/null
@@ -1,157 +0,0 @@
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-shashmap<obj_type, key_type_, hash_type, alloc_type>::shashmap()
-{
- pthread_mutex_init( &mut_shashmap, NULL );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-shashmap<obj_type, key_type_, hash_type, alloc_type>::~shashmap()
-{
- pthread_mutex_destroy( &mut_shashmap );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::add_elem(obj_type t_obj, key_type_ t_key)
-{
- pthread_mutex_lock( &mut_shashmap );
- (*this)[t_key] = t_obj;
- pthread_mutex_unlock( &mut_shashmap );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::add_elem_insecure(obj_type t_obj, key_type_ t_key)
-{
- (*this)[t_key] = t_obj;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-obj_type
-shashmap<obj_type, key_type_, hash_type, alloc_type>::get_set_elem(obj_type t_obj, key_type_ t_key)
-{
- pthread_mutex_lock( &mut_shashmap );
- obj_type t_ret = hashmap<obj_type, key_type_, hash_type, alloc_type>::get_set_elem(t_obj, t_key);
- pthread_mutex_unlock( &mut_shashmap );
- return t_ret;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-obj_type
-shashmap<obj_type, key_type_, hash_type, alloc_type>::get_or_callback_set
-(obj_type (*func)(void*), void* p_void, key_type_ t_key)
-{
- pthread_mutex_lock( &mut_shashmap );
- obj_type t_ret = hashmap<obj_type, key_type_, hash_type, alloc_type>::get_or_callback_set
- (func, p_void, t_key);
- pthread_mutex_unlock( &mut_shashmap );
- return t_ret;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::set_elem(obj_type t_obj, key_type_ t_key)
-{
- pthread_mutex_lock( &mut_shashmap );
- (*this)[t_key] = t_obj;
- pthread_mutex_unlock( &mut_shashmap );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-obj_type
-shashmap<obj_type, key_type_, hash_type, alloc_type>::get_elem(key_type_ t_key)
-{
- pthread_mutex_lock( &mut_shashmap );
- obj_type t_ret = hashmap<obj_type, key_type_, hash_type, alloc_type>::get_elem(t_key);
- pthread_mutex_unlock( &mut_shashmap );
- return t_ret;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::del_elem(key_type_ t_key)
-{
- pthread_mutex_lock( &mut_shashmap );
- hashmap<obj_type, key_type_, hash_type, alloc_type>::erase(t_key);
- pthread_mutex_unlock( &mut_shashmap );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::del_elem_insecure(key_type_ t_key)
-{
- hashmap<obj_type, key_type_, hash_type, alloc_type>::erase(t_key);
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-vector<key_type_>*
-shashmap<obj_type, key_type_, hash_type, alloc_type>::get_key_vector()
-{
- pthread_mutex_lock( &mut_shashmap );
- vector<key_type_>* p_vec = hashmap<obj_type, key_type_, hash_type, alloc_type>::get_key_vector();
- pthread_mutex_unlock( &mut_shashmap );
- return p_vec;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::clear()
-{
- pthread_mutex_lock( &mut_shashmap );
- hashmap<obj_type, key_type_, hash_type, alloc_type>::clear();
- pthread_mutex_unlock( &mut_shashmap );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-int
-shashmap<obj_type, key_type_, hash_type, alloc_type>::size()
-{
- pthread_mutex_lock( &mut_shashmap );
- int i_size = hashmap<obj_type, key_type_, hash_type, alloc_type>::size();
- pthread_mutex_unlock( &mut_shashmap );
- return i_size;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-bool
-shashmap<obj_type, key_type_, hash_type, alloc_type>::exists(key_type_ t_key)
-{
- pthread_mutex_lock( &mut_shashmap );
- bool b_ret = hashmap<obj_type, key_type_, hash_type, alloc_type>::exists(t_key);
- pthread_mutex_unlock( &mut_shashmap );
- return b_ret;
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::run_func( void (*func)(obj_type) )
-{
- pthread_mutex_lock( &mut_shashmap );
- hashmap<obj_type, key_type_, hash_type, alloc_type>::run_func(func);
- pthread_mutex_unlock( &mut_shashmap );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::run_func( void (*func)(obj_type, void*), void* v_arg )
-{
- pthread_mutex_lock( &mut_shashmap );
- hashmap<obj_type, key_type_, hash_type, alloc_type>::run_func(func, v_arg);
- pthread_mutex_unlock( &mut_shashmap );
-}
-
-template<class obj_type, class key_type_, class hash_type, class alloc_type>
-void
-shashmap<obj_type, key_type_, hash_type, alloc_type>::dumpit()
-{
- dumpable::add
- ("[shashmap]");
- vector<key_type_>* p_vec = get_key_vector();
-
- typename vector<key_type_>::iterator iter;
- for (iter = p_vec->begin(); iter != p_vec->end(); ++iter)
- dumpable::add
- (*iter);
-
- delete p_vec;
-}