docs/Writerside/topics/list.h.md

changeset 1188
b0300de92b72
parent 1146
151c057faf7c
child 1190
a7b913d5d589
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/Writerside/topics/list.h.md	Tue Feb 11 19:55:32 2025 +0100
@@ -0,0 +1,28 @@
+# List Interface
+
+<warning>
+Outdated - Rewrite!
+</warning>
+
+This header defines a common interface for all list implementations.
+
+UCX already comes with two common list implementations (linked list and array list) that should cover most use cases.
+But if you feel the need to implement an own list, the only thing you need to do is to define a struct with a
+`struct cx_list_s` as first member, and set an appropriate list class that implements the functionality.
+It is strongly recommended that this class is shared among all instances of the same list type, because otherwise
+the `cxListCompare` function cannot use the optimized implementation of your class and will instead fall back to
+using iterators to compare the contents element-wise.
+
+## Undocumented Symbols (TODO)
+### cx_empty_list
+### cxEmptyList
+### cxListCompare
+### cx_list_default_insert_array
+### cx_list_default_insert_sorted
+### cx_list_default_sort
+### cx_list_default_swap
+### cxListFree
+### cx_list_init
+### cxListMutBackwardsIteratorAt
+### cxListMutIteratorAt
+

mercurial