prog_hash_table: Convert compare funcs to match util/hash_table.h.
authorEric Anholt <eric@anholt.net>
Tue, 9 Aug 2016 07:02:44 +0000 (00:02 -0700)
committerEric Anholt <eric@anholt.net>
Wed, 10 Aug 2016 19:27:22 +0000 (12:27 -0700)
I'm going to replace this hash table with util/hash_table.h, and the first
step is to compare things the same way.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
src/mesa/program/hash_table.h
src/mesa/program/prog_hash_table.c

index d0a2abffa343c8b229acefcc8d08aba2efb9f19a..aba5282fe9e539eb2603754b99871a8da49b72e1 100644 (file)
@@ -47,7 +47,7 @@ extern "C" {
 struct hash_table;
 
 typedef unsigned (*hash_func_t)(const void *key);
-typedef int (*hash_compare_func_t)(const void *key1, const void *key2);
+typedef bool (*hash_compare_func_t)(const void *key1, const void *key2);
 
 /**
  * Hash table constructor
@@ -151,12 +151,11 @@ extern unsigned hash_table_string_hash(const void *key);
 /**
  * Compare two strings used as keys
  *
- * This is just a macro wrapper around \c strcmp.
+ * This is just a wrapper around \c strcmp.
  *
  * \sa hash_table_string_hash
  */
-#define hash_table_string_compare ((hash_compare_func_t) strcmp)
-
+bool hash_table_string_compare(const void *a, const void *b);
 
 /**
  * Compute hash value of a pointer
@@ -178,7 +177,7 @@ hash_table_pointer_hash(const void *key);
  *
  * \sa hash_table_pointer_hash
  */
-int
+bool
 hash_table_pointer_compare(const void *key1, const void *key2);
 
 void
index 5592b6fb8148702b987229a69a3703f6a4487d63..f8a7107eb5bd2f0aa82fee0a66ded085d67fc23d 100644 (file)
@@ -228,6 +228,11 @@ hash_table_string_hash(const void *key)
     return hash;
 }
 
+bool hash_table_string_compare(const void *a, const void *b)
+{
+   return strcmp(a, b) == 0;
+}
+
 
 unsigned
 hash_table_pointer_hash(const void *key)
@@ -236,8 +241,8 @@ hash_table_pointer_hash(const void *key)
 }
 
 
-int
+bool
 hash_table_pointer_compare(const void *key1, const void *key2)
 {
-   return key1 == key2 ? 0 : 1;
+   return key1 == key2;
 }