<!-- ##### SECTION Title ##### --> Quarks <!-- ##### SECTION Short_Description ##### --> a 2-way association between a string and a unique integer identifier. <!-- ##### SECTION Long_Description ##### --> <para> Quarks are associations between strings and integer identifiers. Given either the string or the #GQuark identifier it is possible to retrieve the other. </para> <para> Quarks are used for both <link linkend="glib-datasets">Datasets</link> and <link linkend="glib-keyed-data-lists">Keyed Data Lists</link>. </para> <para> To create a new quark from a string, use g_quark_from_string() or g_quark_from_static_string(). </para> <para> To find the string corresponding to a given #GQuark, use g_quark_to_string(). </para> <para> To find the #GQuark corresponding to a given string, use g_quark_try_string(). </para> <!-- ##### SECTION See_Also ##### --> <para> </para> <!-- ##### TYPEDEF GQuark ##### --> <para> A GQuark is an integer which uniquely identifies a particular string. </para> <!-- ##### FUNCTION g_quark_from_string ##### --> <para> Gets the #GQuark identifying the given string. If the string does not currently have an associated #GQuark, a new #GQuark is created, using a copy of the string. </para> @string: a string. @Returns: the #GQuark identifying the string. <!-- ##### FUNCTION g_quark_from_static_string ##### --> <para> Gets the #GQuark identifying the given (static) string. If the string does not currently have an associated #GQuark, a new #GQuark is created, linked to the given string. </para> <para> Note that this function is identical to g_quark_from_string() except that if a new #GQuark is created the string itself is used rather than a copy. This saves memory, but can only be used if the string will always exist (if, for example, it is a statically-allocated string). </para> @string: a string. @Returns: the #GQuark identifying the string. <!-- ##### FUNCTION g_quark_to_string ##### --> <para> Gets the string associated with the given #GQuark. </para> @quark: a #GQuark. @Returns: the string associated with the #GQuark. <!-- ##### FUNCTION g_quark_try_string ##### --> <para> Gets the #GQuark associated with the given string, or 0 if the string has no associated #GQuark. </para> <para> If you want the GQuark to be created if it doesn't already exist, use g_quark_from_string() or g_quark_from_static_string(). </para> @string: a string. @Returns: the #GQuark associated with the string, or 0 if there is no #GQuark associated with the string.