[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Lost] list_destroy()
Dieser Patch bereichert die Sammlung der Listen-Funktionen um die
Möglichkeit Listen nicht nur zu erstellen, sondern sie auch wieder zu
zerstören.
Index: src/include/collections.h
===================================================================
--- src/include/collections.h (Revision 589)
+++ src/include/collections.h (Arbeitskopie)
@@ -9,6 +9,7 @@
} list_t;
list_t* list_create();
+void list_destroy(list_t* list);
list_t* list_push(list_t* list, void* value);
void* list_pop(list_t* list);
bool list_is_empty(list_t* list);
Index: src/lib/collections/list.c
===================================================================
--- src/lib/collections/list.c (Revision 589)
+++ src/lib/collections/list.c (Arbeitskopie)
@@ -66,6 +66,18 @@
}
/**
+ * Zerstoert eine Liste
+ */
+void list_destroy(list_t* list)
+{
+ // Alle Elemente loeschen
+ while(list_pop(list) != NULL);
+
+ // Listenhandle freigeben
+ free(list);
+}
+
+/**
* @return TRUE, wenn die Liste leer ist, FALSE sonst.
*/
bool list_is_empty(list_t* list)