aboutsummaryrefslogtreecommitdiff
path: root/src/cache.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/cache.h')
-rw-r--r--src/cache.h32
1 files changed, 0 insertions, 32 deletions
diff --git a/src/cache.h b/src/cache.h
deleted file mode 100644
index 3ca054f..0000000
--- a/src/cache.h
+++ /dev/null
@@ -1,32 +0,0 @@
-#pragma once
-
-struct cache;
-
-typedef void *(*cache_getter_t)(void *user_data, const char *key, int *err);
-typedef void (*cache_free_t)(void *user_data, void *data);
-
-/// Create a cache with `getter`, and a free function `f` which is used to free the cache
-/// value when they are invalidated.
-///
-/// `user_data` will be passed to `getter` and `f` when they are called.
-struct cache *new_cache(void *user_data, cache_getter_t getter, cache_free_t f);
-
-/// Fetch a value from the cache. If the value doesn't present in the cache yet, the
-/// getter will be called, and the returned value will be stored into the cache.
-void *cache_get(struct cache *, const char *key, int *err);
-
-/// Invalidate a value in the cache.
-void cache_invalidate(struct cache *, const char *key);
-
-/// Invalidate all values in the cache.
-void cache_invalidate_all(struct cache *);
-
-/// Invalidate all values in the cache and free it. Returns the user data passed to
-/// `new_cache`
-void *cache_free(struct cache *);
-
-/// Insert a key-value pair into the cache. Only used for internal testing. Takes
-/// ownership of `data`
-///
-/// If `key` already exists in the cache, this function will abort the program.
-void cache_set(struct cache *c, const char *key, void *data);