14#include "../hashmap/hashmap.h"
20#define XXH_STATIC_LINKING_ONLY
24#include "../xxHash/xxhash.h"
67 const hashmap_uint32_t len, PyObject *py_key,
81 const char *
const key,
82 const hashmap_uint32_t len);
105 struct hashmap_s *
const out_hashmap);
void hashmap_destroy_tuple(struct hashmap_s *m)
Destroy a hashmap, assuming the values are map_tuples.
Definition hashmap_ext.c:111
struct map_tuple * hashmap_pop_tuple(struct hashmap_s *const m, const char *const key, const hashmap_uint32_t len)
Remove a value from the hashmap.
Definition hashmap_ext.c:70
void hashmap_destroy_py(struct hashmap_s *m)
Destroy a hashmap, assuming the values are PyObjects.
Definition hashmap_ext.c:122
int hashmap_put_tuple(struct hashmap_s *const m, const char *const key, const hashmap_uint32_t len, PyObject *py_key, PyObject *value)
Put a key-value pair into the hashmap.
int hashmap_create_xh(const hashmap_uint32_t initial_capacity, struct hashmap_s *const out_hashmap)
Create a hashmap with a custom hash function.
Definition hashmap_ext.c:17
A struct to store a key-value pair.
Definition hashmap_ext.h:41
PyObject * value
The Python object containing the value.
Definition hashmap_ext.h:52
PyObject * key
The Python object containing the key.
Definition hashmap_ext.h:47