26 lines
455 B
C
26 lines
455 B
C
|
|
#ifndef _B_HASHMAP_H_
|
||
|
|
#define _B_HASHMAP_H_
|
||
|
|
|
||
|
|
#include <blue/core/btree.h>
|
||
|
|
#include <blue/core/queue.h>
|
||
|
|
#include <blue/object/hashmap.h>
|
||
|
|
|
||
|
|
struct b_hashmap_bucket_item {
|
||
|
|
struct b_queue_entry bi_entry;
|
||
|
|
struct b_hashmap_key bi_key;
|
||
|
|
struct b_hashmap_value bi_value;
|
||
|
|
};
|
||
|
|
|
||
|
|
struct b_hashmap_bucket {
|
||
|
|
struct b_btree_node bk_node;
|
||
|
|
uint64_t bk_hash;
|
||
|
|
struct b_queue bk_items;
|
||
|
|
};
|
||
|
|
|
||
|
|
struct b_hashmap {
|
||
|
|
struct b_object h_base;
|
||
|
|
struct b_btree h_buckets;
|
||
|
|
};
|
||
|
|
|
||
|
|
#endif
|