Linked List Remove Functions
Functions that remove data from linked lists. More...
Functions | |
EAPI Evas_List * | evas_list_remove (Evas_List *list, const void *data) |
Removes the first instance of the specified data from the given list. | |
EAPI Evas_List * | evas_list_remove_list (Evas_List *list, Evas_List *remove_list) |
Removes the specified data. | |
EAPI Evas_List * | evas_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
Free an entire list and all the nodes, ignoring the data contained.
- Parameters:
-
list The list to free
- Returns:
- A NULL pointer
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(), evas_free(), and evas_object_smart_move_children_relative().
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_object_textblock_style_set(), evas_obscured_clear(), evas_render_method_list_free(), and evas_render_updates_free().
Removes the specified data.
Remove a specified member from a list
- Parameters:
-
list The list handle to remove remove_list
fromremove_list The list node which is to be removed
- Returns:
- A new list handle to replace the old one
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().