26 lines
587 B
C
26 lines
587 B
C
#ifndef HASHMAP_H
|
|
#define HASHMAP_H
|
|
|
|
#include "engine_build_config.h"
|
|
#include <stddef.h>
|
|
#include <stdint.h>
|
|
|
|
#ifdef DEBUG_ENGINE
|
|
#include <stdio.h>
|
|
#endif /* DEBUG_ENGINE */
|
|
|
|
typedef struct hashmap Hashmap;
|
|
|
|
Hashmap *create_hashmap();
|
|
int32_t add_object_to_map(Hashmap *map, const char *key);
|
|
int32_t get_object_index(Hashmap *map, const char *key);
|
|
int32_t delete_object_from_map(Hashmap *map, const char *key);
|
|
void destroy_hashmap(Hashmap *map);
|
|
|
|
#ifdef DEBUG_ENGINE
|
|
void print_hashmap(Hashmap *map);
|
|
void print_non_empty(Hashmap *map);
|
|
#endif // DEBUG_ENGINE
|
|
|
|
#endif // !HASHMAP_H
|