Cache

A glib.cache.Cache allows sharing of complex data structures, in order to save system resources.

glib.cache.Cache uses keys and values. A glib.cache.Cache key describes the properties of a particular resource. A glib.cache.Cache value is the actual resource.

glib.cache.Cache has been marked as deprecated, since this API is rarely used and not very actively maintained.

More...

Members

Functions

destroy
void destroy()

Frees the memory allocated for the #GCache.

insert
void* insert(void* key)

Gets the value corresponding to the given key, creating it if necessary. It first checks if the value already exists in the #GCache, by using the key_equal_func function passed to glib.cache.Cache.new_. If it does already exist it is returned, and its reference count is increased by one. If the value does not currently exist, if is created by calling the value_new_func. The key is duplicated by calling key_dup_func and the duplicated key and value are inserted into the #GCache.

keyForeach
void keyForeach(glib.types.HFunc func)

Calls the given function for each of the keys in the #GCache.

remove
void remove(const(void)* value)

Decreases the reference count of the given value. If it drops to 0 then the value and its corresponding key are destroyed, using the value_destroy_func and key_destroy_func passed to glib.cache.Cache.new_.

valueForeach
void valueForeach(glib.types.HFunc func)

Calls the given function for each of the values in the #GCache.

Detailed Description

Deprecated: Use a #GHashTable instead