27 lines
475 B
C
27 lines
475 B
C
![]() |
|
||
|
|
||
|
|
||
|
typedef struct Bucket_Array {
|
||
|
|
||
|
|
||
|
|
||
|
u64 _block_size;
|
||
|
u64 _bucket_count;
|
||
|
} Bucket_Array;
|
||
|
|
||
|
typedef struct Bucket_Array_Free_Node {
|
||
|
struct Bucket_Array_Free_Node *next;
|
||
|
} Bucket_Array_Free_Node;
|
||
|
typedef struct Bucket_Array_Bucket {
|
||
|
Bucket_Array_Free_Node *first_free;
|
||
|
void *data;
|
||
|
Bucket *next;
|
||
|
} Bucket_Array_Bucket;
|
||
|
|
||
|
|
||
|
Bucket_Array make_bucket_array(u64 block_size, u64 bucket_count) {
|
||
|
Bucket_Array ba;
|
||
|
|
||
|
ba._block_size = block_size;
|
||
|
ba._bucket_count = bucket_count;
|
||
|
}
|