diff options
author | Simon Marlow <marlowsd@gmail.com> | 2013-02-14 08:46:55 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2013-02-14 10:56:58 +0000 |
commit | 7e7a4e4d7e9e84b2c57d3d55e372e738b5f8dbf5 (patch) | |
tree | b5ab2b56418c09f01275970cc7d4e6629b0e7b43 /rts/Hash.h | |
parent | 65a0e1eb88fb48d085f8da498a7acc2fd345c2a8 (diff) | |
download | haskell-7e7a4e4d7e9e84b2c57d3d55e372e738b5f8dbf5.tar.gz |
Separate StablePtr and StableName tables (#7674)
To improve performance of StablePtr.
Diffstat (limited to 'rts/Hash.h')
-rw-r--r-- | rts/Hash.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/rts/Hash.h b/rts/Hash.h index 727c04298c..d22caba555 100644 --- a/rts/Hash.h +++ b/rts/Hash.h @@ -19,6 +19,8 @@ void * lookupHashTable ( HashTable *table, StgWord key ); void insertHashTable ( HashTable *table, StgWord key, void *data ); void * removeHashTable ( HashTable *table, StgWord key, void *data ); +int keyCountHashTable (HashTable *table); + /* Hash table access where the keys are C strings (the strings are * assumed to be allocated by the caller, and mustn't be deallocated * until the corresponding hash table entry has been removed). @@ -41,7 +43,7 @@ HashTable * allocHashTable_(HashFunction *hash, CompareFunction *compare); int hashWord(HashTable *table, StgWord key); int hashStr(HashTable *table, char *key); -/* Freeing hash tables +/* Freeing hash tables */ void freeHashTable ( HashTable *table, void (*freeDataFun)(void *) ); @@ -50,4 +52,3 @@ void exitHashTable ( void ); #include "EndPrivate.h" #endif /* HASH_H */ - |