Basics

Guides

API Reference

Menu

Basics

Guides

API Reference

class: GCache

[16:7] extends: object

A GCache allows sharing of complex data structures, in order to save system resources. GCache uses keys and values. A GCache key describes the properties of a particular resource. A GCache value is the actual resource. GCache has been marked as deprecated, since this API is rarely used and not very actively maintained.

Members

  • handleObj
  • lib
  • retainedCallbacks
  • signalHandlerNames
  • signalSetterHandlers

Methods

  • GCache (Handle = null)

    Creates a new Cache by wrapping a native handle or another wrapper.

    • @p Handle is the native handle or another wrapper whose handle to adopt.
  • toNativeHandle (Source)

    Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from fn.call(...), another generated wrapper exposing handle(), or null. Returns null when the argument carries no pointer.

    • @p Source is the raw handle, raw buffer, wrapper, or null.
    • @r A raw pointer carrier or null when no pointer is present.
  • getLib ()

    Returns the opened native library for this generated wrapper.

    • @r The opened native library.
  • handle ()

    Returns the wrapped NativeHandle.

    • @r The wrapped NativeHandle.
  • isNull ()

    Returns true when the wrapped handle is null.

    • @r A bool.
  • describe ()

    Returns a small string for debugging generated wrappers.

    • @r A string.
  • destroy ()

    Frees the memory allocated for the #GCache. Note that it does not destroy the keys and values which were contained in the #GCache.

    • @r None.
  • insert (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 g_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.
    • @p key is a key describing a #GCache object.
    • @r a pointer to a #GCache value.
  • key_foreach (user_data)

    Calls the given function for each of the keys in the #GCache. NOTE @func is passed three parameters, the value and key of a cache entry and the

    • @user_data. The order of value and key is different from the order in which g_hash_table_foreach() passes key-value pairs to its callback function !
    • @p func is the function to call with each #GCache key.
    • @p user_data is user data to pass to the function.
    • @r None.
  • remove (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 g_cache_new().
    • @p value is the value to remove.
    • @r None.
  • value_foreach (user_data)

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

    • @p func is the function to call with each #GCache value.
    • @p user_data is user data to pass to the function.
    • @r None.