mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
tools/xenstored: hashtable: Constify the parameters of hashfn/eqfn
The parameters of hashfn/eqfn should never be modified. So constify them and propagate the const to the users. Take the opportunity to solve some coding style issues around the code modified. Signed-off-by: Julien Grall <jgrall@amazon.com> Reviewed-by: Henry Wang <Henry.Wang@arm.com> Tested-by: Henry Wang <Henry.Wang@arm.com> Reviewed-by: Juergen Gross <jgross@suse.com>
This commit is contained in:
1 parent
4e0e7a29d2
commit
5b46dd85d0
4 files changed
+21
-21
No files matched your search
@@ -23,8 +23,8 @@ struct hashtable {
|
||||
unsigned int entrycount;
|
||||
unsigned int loadlimit;
|
||||
unsigned int primeindex;
|
||||
unsigned int (*hashfn) (void *k);
|
||||
int (*eqfn) (void *k1, void *k2);
|
||||
unsigned int (*hashfn) (const void *k);
|
||||
int (*eqfn) (const void *k1, const void *k2);
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -53,8 +53,8 @@ indexFor(unsigned int tablelength, unsigned int hashvalue) {
|
||||
/*****************************************************************************/
|
||||
struct hashtable *
|
||||
create_hashtable(const void *ctx, unsigned int minsize,
|
||||
unsigned int (*hashf) (void*),
|
||||
int (*eqf) (void*,void*),
|
||||
unsigned int (*hashf) (const void *),
|
||||
int (*eqf) (const void *, const void *),
|
||||
unsigned int flags)
|
||||
{
|
||||
struct hashtable *h;
|
||||
@@ -92,7 +92,7 @@ err0:
|
||||
|
||||
/*****************************************************************************/
|
||||
unsigned int
|
||||
hash(struct hashtable *h, void *k)
|
||||
hash(const struct hashtable *h, const void *k)
|
||||
{
|
||||
/* Aim to protect against poor hash functions by adding logic here
|
||||
* - logic taken from java 1.4 hashtable source */
|
||||
@@ -151,7 +151,7 @@ hashtable_expand(struct hashtable *h)
|
||||
|
||||
/*****************************************************************************/
|
||||
unsigned int
|
||||
hashtable_count(struct hashtable *h)
|
||||
hashtable_count(const struct hashtable *h)
|
||||
{
|
||||
return h->entrycount;
|
||||
}
|
||||
@@ -188,7 +188,7 @@ hashtable_insert(struct hashtable *h, void *k, void *v)
|
||||
|
||||
/*****************************************************************************/
|
||||
void * /* returns value associated with key */
|
||||
hashtable_search(struct hashtable *h, void *k)
|
||||
hashtable_search(const struct hashtable *h, const void *k)
|
||||
{
|
||||
struct entry *e;
|
||||
unsigned int hashvalue, index;
|
||||
@@ -206,7 +206,7 @@ hashtable_search(struct hashtable *h, void *k)
|
||||
|
||||
/*****************************************************************************/
|
||||
void
|
||||
hashtable_remove(struct hashtable *h, void *k)
|
||||
hashtable_remove(struct hashtable *h, const void *k)
|
||||
{
|
||||
/* TODO: consider compacting the table when the load factor drops enough,
|
||||
* or provide a 'compact' method. */
|
||||
|
||||
@@ -24,8 +24,8 @@ struct hashtable;
|
||||
|
||||
struct hashtable *
|
||||
create_hashtable(const void *ctx, unsigned int minsize,
|
||||
unsigned int (*hashfunction) (void*),
|
||||
int (*key_eq_fn) (void*,void*),
|
||||
unsigned int (*hashfunction) (const void *),
|
||||
int (*key_eq_fn) (const void *, const void *),
|
||||
unsigned int flags
|
||||
);
|
||||
|
||||
@@ -61,7 +61,7 @@ hashtable_insert(struct hashtable *h, void *k, void *v);
|
||||
*/
|
||||
|
||||
void *
|
||||
hashtable_search(struct hashtable *h, void *k);
|
||||
hashtable_search(const struct hashtable *h, const void *k);
|
||||
|
||||
/*****************************************************************************
|
||||
* hashtable_remove
|
||||
@@ -72,7 +72,7 @@ hashtable_search(struct hashtable *h, void *k);
|
||||
*/
|
||||
|
||||
void
|
||||
hashtable_remove(struct hashtable *h, void *k);
|
||||
hashtable_remove(struct hashtable *h, const void *k);
|
||||
|
||||
/*****************************************************************************
|
||||
* hashtable_count
|
||||
@@ -82,7 +82,7 @@ hashtable_remove(struct hashtable *h, void *k);
|
||||
* @return the number of items stored in the hashtable
|
||||
*/
|
||||
unsigned int
|
||||
hashtable_count(struct hashtable *h);
|
||||
hashtable_count(const struct hashtable *h);
|
||||
|
||||
/*****************************************************************************
|
||||
* hashtable_iterate
|
||||
|
||||
@@ -2386,9 +2386,9 @@ void setup_structure(bool live_update)
|
||||
}
|
||||
}
|
||||
|
||||
static unsigned int hash_from_key_fn(void *k)
|
||||
static unsigned int hash_from_key_fn(const void *k)
|
||||
{
|
||||
char *str = k;
|
||||
const char *str = k;
|
||||
unsigned int hash = 5381;
|
||||
char c;
|
||||
|
||||
@@ -2399,9 +2399,9 @@ static unsigned int hash_from_key_fn(void *k)
|
||||
}
|
||||
|
||||
|
||||
static int keys_equal_fn(void *key1, void *key2)
|
||||
static int keys_equal_fn(const void *key1, const void *key2)
|
||||
{
|
||||
return 0 == strcmp((char *)key1, (char *)key2);
|
||||
return 0 == strcmp(key1, key2);
|
||||
}
|
||||
|
||||
int remember_string(struct hashtable *hash, const char *str)
|
||||
|
||||
@@ -916,14 +916,14 @@ void dom0_init(void)
|
||||
xenevtchn_notify(xce_handle, dom0->port);
|
||||
}
|
||||
|
||||
static unsigned int domhash_fn(void *k)
|
||||
static unsigned int domhash_fn(const void *k)
|
||||
{
|
||||
return *(unsigned int *)k;
|
||||
return *(const unsigned int *)k;
|
||||
}
|
||||
|
||||
static int domeq_fn(void *key1, void *key2)
|
||||
static int domeq_fn(const void *key1, const void *key2)
|
||||
{
|
||||
return *(unsigned int *)key1 == *(unsigned int *)key2;
|
||||
return *(const unsigned int *)key1 == *(const unsigned int *)key2;
|
||||
}
|
||||
|
||||
void domain_init(int evtfd)
|
||||
|
||||