aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1996-08-11 22:25:20 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1996-08-11 22:25:20 -0400
commitf92076037c2930954aebaea4e0e66f18cdcc833c (patch)
tree0a94403e7a9d8086e63441da4b62d4925195d6d0
parent3e2b54f56db22dc9d0d9ba826e26c5ac6b9afbd6 (diff)
downloadgcc-f92076037c2930954aebaea4e0e66f18cdcc833c.zip
gcc-f92076037c2930954aebaea4e0e66f18cdcc833c.tar.gz
gcc-f92076037c2930954aebaea4e0e66f18cdcc833c.tar.bz2
(hash_is_key_in_hash): Function somehow got lost.
From-SVN: r12614
-rw-r--r--gcc/objc/hash.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc/objc/hash.c b/gcc/objc/hash.c
index 67b9750..6d67aa0 100644
--- a/gcc/objc/hash.c
+++ b/gcc/objc/hash.c
@@ -251,3 +251,22 @@ hash_value_for_key (cache_ptr cache, const void *key)
return retval;
}
+
+/* Given KEY, return YES if it exists in the CACHE.
+ Return NO if it does not */
+
+BOOL
+hash_is_key_in_hash (cache_ptr cache, const void *key)
+{
+ node_ptr node = cache->node_table[(*cache->hash_func)(cache, key)];
+
+ if (node)
+ do {
+ if ((*cache->compare_func)(node->key, key))
+ return YES;
+ else
+ node = node->next;
+ } while (node);
+
+ return NO;
+}