Update libds.
This commit is contained in:
2
external/libds
vendored
2
external/libds
vendored
Submodule external/libds updated: cd822fedfc...1d037dd31e
@@ -36,20 +36,20 @@ typedef struct pairmap_key_s pairmap_key;
|
||||
* @param key the key for the hash table.
|
||||
* @return the resulting hash.
|
||||
*/
|
||||
unsigned long pairmap_hash_func(void* key);
|
||||
unsigned long pairmap_hash_func(const void* key);
|
||||
/**
|
||||
* Compares two pairmap_key's.
|
||||
* @param a the first pairmap_key
|
||||
* @param b the second pairmap_key
|
||||
* @return
|
||||
*/
|
||||
int pairmap_cmp_func(void* a, void* b);
|
||||
int pairmap_cmp_func(const void* a, const void* b);
|
||||
/**
|
||||
* Copies a pairmap_key.
|
||||
* @param key the key to copy.
|
||||
* @return the copy of the key.
|
||||
*/
|
||||
void* pairmap_copy_func(void* key);
|
||||
void* pairmap_copy_func(const void* key);
|
||||
/**
|
||||
* Initializes a hash table with functions used for pair maps.
|
||||
* @param ht the hash table to initialize.
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
#include "pairmap.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
unsigned long pairmap_hash_func(void* key){
|
||||
pairmap_key* new_key = key;
|
||||
unsigned long pairmap_hash_func(const void* key){
|
||||
const pairmap_key* new_key = key;
|
||||
unsigned int hash = 0;
|
||||
hash |= ((new_key->x & 0xffff) << 8) + (new_key->y & 0xffff);
|
||||
return hash;
|
||||
}
|
||||
int pairmap_cmp_func(void* a, void* b){
|
||||
pairmap_key* new_key_a = a;
|
||||
pairmap_key* new_key_b = b;
|
||||
int pairmap_cmp_func(const void* a, const void* b){
|
||||
const pairmap_key* new_key_a = a;
|
||||
const pairmap_key* new_key_b = b;
|
||||
return (new_key_a->x == new_key_b->x) && (new_key_a->y == new_key_b->y);
|
||||
}
|
||||
void* pairmap_copy_func(void* key){
|
||||
pairmap_key* copy_from = key;
|
||||
void* pairmap_copy_func(const void* key){
|
||||
const pairmap_key* copy_from = key;
|
||||
pairmap_key* new_key = malloc(sizeof(*new_key));
|
||||
if(new_key){
|
||||
new_key->x = copy_from->x;
|
||||
|
||||
Reference in New Issue
Block a user