Add a function to get the count of nodes in a hash.
authorningerso <ningerso>
Thu, 4 Jan 2007 07:45:40 +0000 (07:45 +0000)
committerningerso <ningerso@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 4 Jan 2007 07:45:40 +0000 (07:45 +0000)
SVN revision: 27786

legacy/ecore/src/lib/ecore/Ecore_Data.h
legacy/ecore/src/lib/ecore/ecore_hash.c

index d37fa12..80af820 100644 (file)
@@ -238,6 +238,7 @@ extern "C" {
    EAPI int ecore_hash_set_free_value(Ecore_Hash *hash, Ecore_Free_Cb function);
    EAPI void ecore_hash_destroy(Ecore_Hash *hash);
 
+   EAPI int ecore_hash_count(Ecore_Hash *hash);
    EAPI int ecore_hash_for_each_node(Ecore_Hash *hash, Ecore_For_Each for_each_func,
                                     void *user_data);
    EAPI Ecore_List *ecore_hash_keys(Ecore_Hash *hash);
index f57655a..197cbb5 100644 (file)
@@ -216,6 +216,20 @@ ecore_hash_destroy(Ecore_Hash *hash)
  */
 
 /**
+ * Counts the number of nodes in a hash table.
+ * @param   hash The hash table to count current nodes.
+ * @return  The number of nodes in the hash.
+ * @ingroup Ecore_Data_Hash_ADT_Destruction_Group
+ */
+EAPI int
+ecore_hash_count(Ecore_Hash *hash)
+{
+   CHECK_PARAM_POINTER_RETURN("hash", hash, 0);
+
+   return hash->nodes;
+}
+
+/**
  * Runs the @p for_each_func function on each entry in the given hash.
  * @param   hash          The given hash.
  * @param   for_each_func The function that each entry is passed to.