mirror of
				https://gitlab.gnome.org/GNOME/glib.git
				synced 2025-10-31 00:12:19 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			137 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			137 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| <!-- ##### SECTION Title ##### -->
 | |
| Value arrays
 | |
| 
 | |
| <!-- ##### SECTION Short_Description ##### -->
 | |
| A container structure to maintain an array of generic values
 | |
| 
 | |
| <!-- ##### SECTION Long_Description ##### -->
 | |
| <para>
 | |
| The prime purpose of a #GValueArray is for it to be used as an object property
 | |
| that holds an array of values. A #GValueArray wraps an array of #GValue elements
 | |
| in order for it to be used as a boxed type through %G_TYPE_VALUE_ARRAY.
 | |
| </para>
 | |
| 
 | |
| <!-- ##### SECTION See_Also ##### -->
 | |
| <para>
 | |
| #GValue, #GParamSpecValueArray, g_param_spec_value_array()
 | |
| </para>
 | |
| 
 | |
| <!-- ##### STRUCT GValueArray ##### -->
 | |
| <para>
 | |
| </para>
 | |
| 
 | |
| @n_values:     number of values contained in the array
 | |
| @values:       array of values
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_get_nth ##### -->
 | |
| <para>
 | |
| Return a pointer to the value at @index_ containd in @value_array.
 | |
| </para>
 | |
| 
 | |
| @value_array: #GValueArray to get a value from
 | |
| @index_:      index of the value of interest
 | |
| @Returns:     pointer to a value at @index_ in @value_array
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_new ##### -->
 | |
| <para>
 | |
| Allocate and initialize a new #GValueArray, optionally preserve space
 | |
| for @n_prealloced elements. New arrays always contain 0 elements,
 | |
| regardless of the value of @n_prealloced.
 | |
| </para>
 | |
| 
 | |
| @n_prealloced: number of values to preallocate space for
 | |
| @Returns:      a newly allocated #GValueArray with 0 values
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_copy ##### -->
 | |
| <para>
 | |
| Construct an exact copy of a #GValueArray by duplicating all its
 | |
| contents.
 | |
| </para>
 | |
| 
 | |
| @value_array: #GValueArray to copy
 | |
| @Returns:     Newly allocated copy of #GValueArray
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_free ##### -->
 | |
| <para>
 | |
| Free a #GValueArray including its contents.
 | |
| </para>
 | |
| 
 | |
| @value_array: 
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_append ##### -->
 | |
| <para>
 | |
| Insert a copy of @value as last element of @value_array.
 | |
| </para>
 | |
| 
 | |
| @value_array: #GValueArray to add an element to
 | |
| @value:       #GValue to copy into #GValueArray
 | |
| @Returns:     the #GValueArray passed in as @value_array
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_prepend ##### -->
 | |
| <para>
 | |
| Insert a copy of @value as first element of @value_array.
 | |
| </para>
 | |
| 
 | |
| @value_array: #GValueArray to add an element to
 | |
| @value:       #GValue to copy into #GValueArray
 | |
| @Returns:     the #GValueArray passed in as @value_array
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_insert ##### -->
 | |
| <para>
 | |
| Insert a copy of @value at specified position into @value_array.
 | |
| </para>
 | |
| 
 | |
| @value_array: #GValueArray to add an element to
 | |
| @index_:      insertion position, must be <= value_array->n_values
 | |
| @value:       #GValue to copy into #GValueArray
 | |
| @Returns:     the #GValueArray passed in as @value_array
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_remove ##### -->
 | |
| <para>
 | |
| Remove the value at position @index_ from @value_array.
 | |
| </para>
 | |
| 
 | |
| @value_array: #GValueArray to remove an element from
 | |
| @index_:      position of value to remove, must be < value_array->n_values
 | |
| @Returns:     the #GValueArray passed in as @value_array
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_sort ##### -->
 | |
| <para>
 | |
| Sort @value_array using @compare_func to compare the elements accoring to
 | |
| the semantics of #GCompareFunc.
 | |
| </para>
 | |
| 
 | |
| <para>
 | |
| The current implementation uses Quick-Sort as sorting algorithm.
 | |
| </para>
 | |
| 
 | |
| @value_array:  #GValueArray to sort
 | |
| @compare_func: function to compare elements
 | |
| @Returns:      the #GValueArray passed in as @value_array
 | |
| 
 | |
| 
 | |
| <!-- ##### FUNCTION g_value_array_sort_with_data ##### -->
 | |
| <para>
 | |
| Sort @value_array using @compare_func to compare the elements accoring
 | |
| to the semantics of #GCompareDataFunc.
 | |
| </para>
 | |
| 
 | |
| <para>
 | |
| The current implementation uses Quick-Sort as sorting algorithm.
 | |
| </para>
 | |
| 
 | |
| @value_array:   #GValueArray to sort
 | |
| @compare_func:  function to compare elements
 | |
| @user_data:     extra data argument provided for @compare_func
 | |
| @Returns:       the #GValueArray passed in as @value_array
 | |
| 
 | |
| 
 |