Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
kill dead code
authorFrederic Suter <frederic.suter@cc.in2p3.fr>
Fri, 31 Mar 2017 07:19:00 +0000 (09:19 +0200)
committerFrederic Suter <frederic.suter@cc.in2p3.fr>
Fri, 31 Mar 2017 07:19:00 +0000 (09:19 +0200)
heterogenous dicts disappeared a while ago

src/xbt/dict.cpp
src/xbt/dict_elm.c
src/xbt/dict_private.h

index dbd2865..370774f 100644 (file)
@@ -533,9 +533,6 @@ void xbt_dict_preinit()
   if (dict_elm_mallocator == nullptr)
     dict_elm_mallocator = xbt_mallocator_new(256, dict_elm_mallocator_new_f, dict_elm_mallocator_free_f,
       dict_elm_mallocator_reset_f);
-  if (dict_het_elm_mallocator == nullptr)
-    dict_het_elm_mallocator = xbt_mallocator_new(256, dict_het_elm_mallocator_new_f, dict_het_elm_mallocator_free_f,
-      dict_het_elm_mallocator_reset_f);
 }
 
 /**
@@ -547,8 +544,6 @@ void xbt_dict_postexit()
   if (dict_elm_mallocator != nullptr) {
     xbt_mallocator_free(dict_elm_mallocator);
     dict_elm_mallocator = nullptr;
-    xbt_mallocator_free(dict_het_elm_mallocator);
-    dict_het_elm_mallocator = nullptr;
   }
   if (all_sizes) {
     unsigned int count;
index f7586e5..dae75e8 100644 (file)
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_dict_elm, xbt_dict, "Dictionaries internals");
 
 xbt_mallocator_t dict_elm_mallocator = NULL;
-xbt_mallocator_t dict_het_elm_mallocator = NULL;
 
 xbt_dictelm_t xbt_dictelm_new(xbt_dict_t dict, const char *key, int key_len, unsigned int hash_code, void *content,
                               void_f_pvoid_t free_f)
 {
   xbt_dictelm_t element;
 
-  if (dict->homogeneous) {
-    xbt_assert(!free_f, "Cannot set an individual free function in homogeneous dicts.");
-    element = xbt_mallocator_get(dict_elm_mallocator);
-  } else {
-    xbt_het_dictelm_t het_element = xbt_mallocator_get(dict_het_elm_mallocator);
-    het_element->free_f = free_f;
-    element = &het_element->element;
-  }
+  xbt_assert(!free_f, "Cannot set an individual free function in homogeneous dicts.");
+  element      = xbt_mallocator_get(dict_elm_mallocator);
   element->key = xbt_new(char, key_len + 1);
   memcpy(element->key, key, key_len);
   element->key[key_len] = '\0';
@@ -45,14 +38,8 @@ void xbt_dictelm_free(xbt_dict_t dict, xbt_dictelm_t element)
     char *key = element->key;
     void *content = element->content;
     void_f_pvoid_t free_f;
-    if (dict->homogeneous) {
-      free_f = dict->free_f;
-      xbt_mallocator_release(dict_elm_mallocator, element);
-    } else {
-      xbt_het_dictelm_t het_element = (xbt_het_dictelm_t)element;
-      free_f = het_element->free_f;
-      xbt_mallocator_release(dict_het_elm_mallocator, het_element);
-    }
+    free_f = dict->free_f;
+    xbt_mallocator_release(dict_elm_mallocator, element);
 
     xbt_free(key);
     if (free_f && content)
@@ -63,14 +50,8 @@ void xbt_dictelm_free(xbt_dict_t dict, xbt_dictelm_t element)
 void xbt_dictelm_set_data(xbt_dict_t dict, xbt_dictelm_t element, void *data, void_f_pvoid_t free_ctn)
 {
   void_f_pvoid_t free_f;
-  if (dict->homogeneous) {
-    free_f = dict->free_f;
-    xbt_assert(!free_ctn, "Cannot set an individual free function in homogeneous dicts.");
-  } else {
-    xbt_het_dictelm_t het_element = (xbt_het_dictelm_t)element;
-    free_f  = het_element->free_f;
-    het_element->free_f = free_ctn;
-  }
+  free_f = dict->free_f;
+  xbt_assert(!free_ctn, "Cannot set an individual free function in homogeneous dicts.");
 
   if (free_f && element->content)
     free_f(element->content);
@@ -82,8 +63,3 @@ void *dict_elm_mallocator_new_f(void)
 {
   return xbt_new(s_xbt_dictelm_t, 1);
 }
-
-void *dict_het_elm_mallocator_new_f(void)
-{
-  return xbt_new(s_xbt_het_dictelm_t, 1);
-}
index 98f4adb..43d974f 100644 (file)
@@ -21,12 +21,6 @@ SG_BEGIN_DECL()
 
 #define MAX_FILL_PERCENT 80
 
-typedef struct s_xbt_het_dictelm {
-  s_xbt_dictelm_t element;
-  void_f_pvoid_t free_f;
-} s_xbt_het_dictelm_t;
-typedef s_xbt_het_dictelm_t* xbt_het_dictelm_t;
-
 typedef struct s_xbt_dict {
   void_f_pvoid_t free_f;
   xbt_dictelm_t *table;
@@ -43,11 +37,6 @@ XBT_PRIVATE void * dict_elm_mallocator_new_f(void);
 #define dict_elm_mallocator_free_f xbt_free_f
 #define dict_elm_mallocator_reset_f ((void_f_pvoid_t)NULL)
 
-extern XBT_PRIVATE xbt_mallocator_t dict_het_elm_mallocator;
-extern XBT_PRIVATE void * dict_het_elm_mallocator_new_f(void);
-#define dict_het_elm_mallocator_free_f xbt_free_f
-#define dict_het_elm_mallocator_reset_f ((void_f_pvoid_t)NULL)
-
 /*####[ Function prototypes ]################################################*/
 XBT_PRIVATE xbt_dictelm_t xbt_dictelm_new(xbt_dict_t dict, const char *key, int key_len,
                               unsigned int hash_code, void *content, void_f_pvoid_t free_f);