aboutsummaryrefslogtreecommitdiff
path: root/src/shared/util/hashmap.h
diff options
context:
space:
mode:
authorAlexander Pickering <alex@cogarr.net>2018-06-28 16:05:26 -0600
committerAlexander Pickering <alex@cogarr.net>2018-06-28 16:05:26 -0600
commitef25a513437196a3ea9ee45e6e03565eb86067d2 (patch)
treeacd43d214f9a7ec96e7fcd66097fd13593dd8f38 /src/shared/util/hashmap.h
parent2260a1dda8693664c77a03781ae07fbb5f0ea8a0 (diff)
downloadbrokengine-ef25a513437196a3ea9ee45e6e03565eb86067d2.tar.gz
brokengine-ef25a513437196a3ea9ee45e6e03565eb86067d2.tar.bz2
brokengine-ef25a513437196a3ea9ee45e6e03565eb86067d2.zip
Simplified makefile
Made makefile much simpiler, added option to build dynamically with DEBUG=true
Diffstat (limited to 'src/shared/util/hashmap.h')
-rw-r--r--src/shared/util/hashmap.h81
1 files changed, 0 insertions, 81 deletions
diff --git a/src/shared/util/hashmap.h b/src/shared/util/hashmap.h
deleted file mode 100644
index 16c76dd..0000000
--- a/src/shared/util/hashmap.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Generic hashmap manipulation functions
- *
- * Originally by Elliot C Back - http://elliottback.com/wp/hashmap-implementation-in-c/
- *
- * Modified by Pete Warden to fix a serious performance problem, support strings as keys
- * and removed thread synchronization - http://petewarden.typepad.com
- */
-#ifndef __HASHMAP_H__
-#define __HASHMAP_H__
-
-#define MAP_MISSING -3 /* No such element */
-#define MAP_FULL -2 /* Hashmap is full */
-#define MAP_OMEM -1 /* Out of Memory */
-#define MAP_OK 0 /* OK */
-
-/*
- * any_t is a pointer. This allows you to put arbitrary structures in
- * the hashmap.
- */
-typedef void *any_t;
-
-/*
- * PFany is a pointer to a function that can take two any_t arguments
- * and return an integer. Returns status code..
- */
-typedef int (*PFany)(any_t, any_t);
-
-/*
- * map_t is a pointer to an internally maintained data structure.
- * Clients of this package do not need to know how hashmaps are
- * represented. They see and manipulate only map_t's.
- */
-typedef any_t map_t;
-
-/*
- * Return an empty hashmap. Returns NULL if empty.
-*/
-extern map_t hashmap_new();
-
-/*
- * Iteratively call f with argument (item, data) for
- * each element data in the hashmap. The function must
- * return a map status code. If it returns anything other
- * than MAP_OK the traversal is terminated. f must
- * not reenter any hashmap functions, or deadlock may arise.
- */
-extern int hashmap_iterate(map_t in, PFany f, any_t item);
-
-/*
- * Add an element to the hashmap. Return MAP_OK or MAP_OMEM.
- */
-extern int hashmap_put(map_t in, char* key, any_t value);
-
-/*
- * Get an element from the hashmap. Return MAP_OK or MAP_MISSING.
- */
-extern int hashmap_get(map_t in, char* key, any_t *arg);
-
-/*
- * Remove an element from the hashmap. Return MAP_OK or MAP_MISSING.
- */
-extern int hashmap_remove(map_t in, char* key);
-
-/*
- * Get any element. Return MAP_OK or MAP_MISSING.
- * remove - should the element be removed from the hashmap
- */
-extern int hashmap_get_one(map_t in, any_t *arg, int remove);
-
-/*
- * Free the hashmap
- */
-extern void hashmap_free(map_t in);
-
-/*
- * Get the current size of a hashmap
- */
-extern int hashmap_length(map_t in);
-
-#endif //__HASHMAP_H__