Function

GLibListinsert_sorted

Declaration

GList*
g_list_insert_sorted (
  GList* list,
  gpointer data,
  GCompareFunc func
)

Description

Inserts a new element into the list, using the given comparison function to determine its position.

If you are adding many new elements to a list, and the number of new elements is much larger than the length of the list, use g_list_prepend() to add the new items and sort the list afterwards with g_list_sort().

Parameters

list

Type: A list of gpointer

A pointer to a GList, this must point to the top of the already sorted list.

The data is owned by the caller of the function.
data

Type: gpointer

The data for the new element.

The argument can be NULL.
The data is owned by the caller of the function.
func

Type: GCompareFunc

The function to compare elements in the list. It should return a number > 0 if the first parameter comes after the second parameter in the sort order.

Return value

Type: A list of gpointer

The (possibly changed) start of the GList.

The data is owned by the called function.