mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-05-19 04:01:57 +02:00
[GIBaseInfo] Document all functions
This commit is contained in:
parent
51118b3338
commit
75c9df12f1
112
ginfo.c
112
ginfo.c
@ -167,6 +167,46 @@ g_info_from_entry (GIRepository *repository,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* GIBaseInfo functions */
|
/* GIBaseInfo functions */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SECTION:gibaseinfo
|
||||||
|
* @Short_description: Base struct for all GTypelib structs
|
||||||
|
* @Title: GIBaseInfo
|
||||||
|
*
|
||||||
|
* GIBaseInfo is the common base struct of all other *Info structs
|
||||||
|
* accessible through the #GIRepository API.
|
||||||
|
* All other structs can be casted to a #GIBaseInfo, for instance:
|
||||||
|
* <example>
|
||||||
|
* <title>Casting a #GIFunctionInfo to #GIBaseInfo</title>
|
||||||
|
* <programlisting>
|
||||||
|
* GIFunctionInfo *function_info = ...;
|
||||||
|
* GIBaseInfo *info = (GIBaseInfo*)function_info;
|
||||||
|
* </programlisting>
|
||||||
|
* </example>
|
||||||
|
* Most #GIRepository APIs returning a #GIBaseInfo is actually creating a new struct, in other
|
||||||
|
* words, g_base_info_unref() has to be called when done accessing the data.
|
||||||
|
* GIBaseInfos are normally accessed by calling either
|
||||||
|
* g_irepository_find_by_name(), g_irepository_find_by_gtype() or g_irepository_get_info().
|
||||||
|
*
|
||||||
|
* <example>
|
||||||
|
* <title>Getting the Button of the Gtk typelib</title>
|
||||||
|
* <programlisting>
|
||||||
|
* GIBaseInfo *button_info = g_irepository_find_by_name(NULL, "Gtk", "Button");
|
||||||
|
* ... use button_info ...
|
||||||
|
* g_base_info_unref(button_info);
|
||||||
|
* </programlisting>
|
||||||
|
* </example>
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_ref:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Increases the reference count of @info.
|
||||||
|
*
|
||||||
|
* Returns: the same @info.
|
||||||
|
*/
|
||||||
GIBaseInfo *
|
GIBaseInfo *
|
||||||
g_base_info_ref (GIBaseInfo *info)
|
g_base_info_ref (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
@ -178,6 +218,13 @@ g_base_info_ref (GIBaseInfo *info)
|
|||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_unref:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Decreases the reference count of @info. When its reference count
|
||||||
|
* drops to 0, the info is freed.
|
||||||
|
*/
|
||||||
void
|
void
|
||||||
g_base_info_unref (GIBaseInfo *info)
|
g_base_info_unref (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
@ -198,6 +245,14 @@ g_base_info_unref (GIBaseInfo *info)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_get_type:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Obtains the info type of the GIBaseInfo.
|
||||||
|
*
|
||||||
|
* Returns: the info type of @info
|
||||||
|
*/
|
||||||
GIInfoType
|
GIInfoType
|
||||||
g_base_info_get_type (GIBaseInfo *info)
|
g_base_info_get_type (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
@ -205,6 +260,16 @@ g_base_info_get_type (GIBaseInfo *info)
|
|||||||
return ((GIRealInfo*)info)->type;
|
return ((GIRealInfo*)info)->type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_get_name:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Obtains the name of the @info. What the name represents depends on
|
||||||
|
* the #GIInfoType of the @info. For instance for #GIFunctionInfo it is
|
||||||
|
* the name of the function.
|
||||||
|
*
|
||||||
|
* Returns: the name of @info or %NULL if it lacks a name.
|
||||||
|
*/
|
||||||
const gchar *
|
const gchar *
|
||||||
g_base_info_get_name (GIBaseInfo *info)
|
g_base_info_get_name (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
@ -293,6 +358,14 @@ g_base_info_get_name (GIBaseInfo *info)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_get_namespace:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Obtains the namespace of @info.
|
||||||
|
*
|
||||||
|
* Returns: the namespace
|
||||||
|
*/
|
||||||
const gchar *
|
const gchar *
|
||||||
g_base_info_get_namespace (GIBaseInfo *info)
|
g_base_info_get_namespace (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
@ -311,6 +384,15 @@ g_base_info_get_namespace (GIBaseInfo *info)
|
|||||||
return g_typelib_get_string (rinfo->typelib, header->namespace);
|
return g_typelib_get_string (rinfo->typelib, header->namespace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_is_deprecated:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Obtains whether the @info is represents a metadata which is
|
||||||
|
* deprecated or not.
|
||||||
|
*
|
||||||
|
* Returns: %TRUE if deprecated, otherwise %FALSE
|
||||||
|
*/
|
||||||
gboolean
|
gboolean
|
||||||
g_base_info_is_deprecated (GIBaseInfo *info)
|
g_base_info_is_deprecated (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
@ -371,8 +453,8 @@ g_base_info_is_deprecated (GIBaseInfo *info)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* g_base_info_get_attribute:
|
* g_base_info_get_attribute:
|
||||||
* @info: A #GIBaseInfo
|
* @info: a #GIBaseInfo
|
||||||
* @name: A freeform string naming an attribute
|
* @name: a freeform string naming an attribute
|
||||||
*
|
*
|
||||||
* Retrieve an arbitrary attribute associated with this node.
|
* Retrieve an arbitrary attribute associated with this node.
|
||||||
*
|
*
|
||||||
@ -495,22 +577,40 @@ g_base_info_iterate_attributes (GIBaseInfo *info,
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_get_container:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Obtains the container of the @info. The container is the parent
|
||||||
|
* GIBaseInfo. For instance, the parent of a #GIFunctionInfo is an
|
||||||
|
* #GIObjectInfo or #GIInterfaceInfo.
|
||||||
|
*
|
||||||
|
* Returns: the container
|
||||||
|
*/
|
||||||
GIBaseInfo *
|
GIBaseInfo *
|
||||||
g_base_info_get_container (GIBaseInfo *info)
|
g_base_info_get_container (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
return ((GIRealInfo*)info)->container;
|
return ((GIRealInfo*)info)->container;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_base_info_get_typelib:
|
||||||
|
* @info: a GIBaseInfo
|
||||||
|
*
|
||||||
|
* Obtains the typelib this @info belongs to
|
||||||
|
*
|
||||||
|
* Returns: the typelib.
|
||||||
|
*/
|
||||||
GTypelib *
|
GTypelib *
|
||||||
g_base_info_get_typelib (GIBaseInfo *info)
|
g_base_info_get_typelib (GIBaseInfo *info)
|
||||||
{
|
{
|
||||||
return ((GIRealInfo*)info)->typelib;
|
return ((GIRealInfo*)info)->typelib;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* g_base_info_equal:
|
* g_base_info_equal:
|
||||||
* @info1: A #GIBaseInfo
|
* @info1: a #GIBaseInfo
|
||||||
* @info2: A #GIBaseInfo
|
* @info2: a #GIBaseInfo
|
||||||
*
|
*
|
||||||
* Compare two #GIBaseInfo.
|
* Compare two #GIBaseInfo.
|
||||||
*
|
*
|
||||||
@ -518,7 +618,7 @@ g_base_info_get_typelib (GIBaseInfo *info)
|
|||||||
* different instances of #GIBaseInfo that refers to the same part of the
|
* different instances of #GIBaseInfo that refers to the same part of the
|
||||||
* TypeLib; use this function instead to do #GIBaseInfo comparisons.
|
* TypeLib; use this function instead to do #GIBaseInfo comparisons.
|
||||||
*
|
*
|
||||||
* Return value: TRUE if and only if @info1 equals @info2.
|
* Returns: TRUE if and only if @info1 equals @info2.
|
||||||
*/
|
*/
|
||||||
gboolean
|
gboolean
|
||||||
g_base_info_equal (GIBaseInfo *info1, GIBaseInfo *info2)
|
g_base_info_equal (GIBaseInfo *info1, GIBaseInfo *info2)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user