chiark
/
gitweb
/
~mdw
/
disorder
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Convert track names and input lines to NFC. This is a database format
[disorder]
/
lib
/
cache.h
diff --git
a/lib/cache.h
b/lib/cache.h
index f1aeccd1357fe4407170a97ca231dda05992b39c..b2c9ffc56387858fc474e0ef3d032dd8d4cb4898 100644
(file)
--- a/
lib/cache.h
+++ b/
lib/cache.h
@@
-17,14
+17,22
@@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*/
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*/
+/** @file lib/cache.h
+ * @brief Object caching
+ *
+ * There is a single cache for the whole process. Objects of different types
+ * are distinguished. Objects might be thrown out of the cache at any point.
+ */
#ifndef CACHE_H
#define CACHE_H
/* Defines a cache mapping keys to typed data items */
#ifndef CACHE_H
#define CACHE_H
/* Defines a cache mapping keys to typed data items */
+/** @brief Type of a cache object */
struct cache_type {
struct cache_type {
- int lifetime; /* Lifetime of a cache entry */
+ /** @brief Lifetime for objects of this type (seconds) */
+ int lifetime;
};
void cache_put(const struct cache_type *type,
};
void cache_put(const struct cache_type *type,
@@
-41,6
+49,9
@@
void cache_expire(void);
void cache_clean(const struct cache_type *type);
/* Clean all elements of a particular type, or all elements if TYPE=0 */
void cache_clean(const struct cache_type *type);
/* Clean all elements of a particular type, or all elements if TYPE=0 */
+size_t cache_count(void);
+/* Return the size of the cache */
+
#endif /* CACHE_H */
/*
#endif /* CACHE_H */
/*
@@
-51,4
+62,3
@@
fill-column:79
indent-tabs-mode:nil
End:
*/
indent-tabs-mode:nil
End:
*/
-/* arch-tag:8TQYM58jrfK4bi9YaWTutQ */