Audacious  $Id:Doxyfile42802007-03-2104:39:00Znenolod$
Functions
stringpool.h File Reference

String pool API for "pooling" identical strings into references instead of keeping multiple copies around. More...

Go to the source code of this file.

Functions

gchar * stringpool_get (gchar *str, gboolean take)
 Fetches or allocates a given string from the stringpool.
void stringpool_unref (gchar *str)
 Unreference a pooled string.

Detailed Description

String pool API for "pooling" identical strings into references instead of keeping multiple copies around.

Definition in file stringpool.h.


Function Documentation

gchar* stringpool_get ( gchar *  str,
gboolean  take 
)

Fetches or allocates a given string from the stringpool.

If string already exists in the pool, reference to it is returned. Otherwise, a new string is created in the pool with one reference.

Parameters:
[in]strString to be poolified.
[in]takeNonzero if the caller no longer needs str; in this case, the pool will eventually call g_free(str).
Returns:
Reference to the pooled string, or NULL if the given string was NULL or an error occured.

Definition at line 32 of file stringpool.c.

Referenced by describe_song(), set_string(), and tuple_copy_value().

void stringpool_unref ( gchar *  str)

Unreference a pooled string.

When there are no references left, the string is unallocated and removed from the pool.

Parameters:
[in]strPointer to a string in the pool.

Definition at line 67 of file stringpool.c.

Referenced by entry_free(), entry_set_tuple_real(), tuple_associate_data(), and tuple_value_destroy().