Download

Support

Linked List Remove Functions

Functions that remove data from linked lists. More...

Functions

EAPI Evas_Listevas_list_remove (Evas_List *list, const void *data)
 Removes the first instance of the specified data from the given list.
EAPI Evas_Listevas_list_remove_list (Evas_List *list, Evas_List *remove_list)
 Removes the specified data.
EAPI Evas_Listevas_list_free (Evas_List *list)
 Free an entire list and all the nodes, ignoring the data contained.

Detailed Description

Functions that remove data from linked lists.


Function Documentation

EAPI Evas_List* evas_list_free ( Evas_List list  ) 

Free an entire list and all the nodes, ignoring the data contained.

Parameters:
list The list to free
Returns:
A NULL pointer
This function will free all the list nodes in list specified by list.

Example:

 extern Evas_List *list;

 list = evas_list_free(list);

References _Evas_List::accounting, and _Evas_List::next.

Referenced by evas_event_feed_hold(), evas_event_feed_mouse_down(), evas_event_feed_mouse_in(), evas_event_feed_mouse_move(), evas_event_feed_mouse_out(), evas_event_feed_mouse_up(), evas_event_feed_mouse_wheel(), and evas_free().

EAPI Evas_List* evas_list_remove ( Evas_List list,
const void *  data 
)

Removes the first instance of the specified data from the given list.

If the specified data is not in the given list, nothing is done.

Parameters:
list The given list.
data The specified data.
Returns:
A new list pointer that should be used in place of the one passed to this functions.

References _Evas_List::data, evas_list_remove_list(), and _Evas_List::next.

Referenced by evas_event_feed_mouse_move(), evas_font_path_clear(), evas_free(), evas_object_clip_set(), evas_object_clip_unset(), evas_object_hide(), evas_object_polygon_points_clear(), evas_obscured_clear(), evas_render_method_list_free(), and evas_render_updates_free().

EAPI Evas_List* evas_list_remove_list ( Evas_List list,
Evas_List remove_list 
)

Removes the specified data.

Remove a specified member from a list

Parameters:
list The list handle to remove remove_list from
remove_list The list node which is to be removed
Returns:
A new list handle to replace the old one
Calling this function takes the list node remove_list and removes it from the list list, freeing the list node structure remove_list.

Example:

 extern Evas_List *list;
 Evas_List *l;
 extern void *my_data;

 for (l = list; l; l= l->next)
   {
     if (l->data == my_data)
       {
         list = evas_list_remove_list(list, l);
         break;
       }
   }

References _Evas_List::accounting, _Evas_List::next, and _Evas_List::prev.

Referenced by evas_list_remove(), and evas_object_data_del().


Copyright © Enlightenment.org

Evas Documentation