NetworkManager/shared/c-list/NEWS
Beniamino Galvani b16b4a4362 Merge commit 'afe2594a7799d3113470c40664c6eda88b83c7e5' as 'shared/c-list'
Imported c-list code with command:

  git subtree add --prefix shared/c-list/ git@github.com:c-util/c-list.git master --squash

To update the library use:

  git subtree pull --prefix shared/c-list/ git@github.com:c-util/c-list.git master --squash
2018-04-18 15:20:40 +02:00

67 lines
2.5 KiB
Plaintext

c-list - Circular Intrusive Double Linked List Collection in ISO-C11
CHANGES WITH 3:
* API break: The c_list_loop_*() symbols were removed, since we saw
little use for them. No user was known at the time, so
all projects should build with the new API version
unchanged.
Since c-list does not distribute any compiled code, there
is no ABI issue with this change.
* Two new symbols c_list_length() and c_list_contains(). They are meant
for debugging purposes, to easily verify list integrity. Since they
run in O(n) time, they are not recommended for any other use than
debugging.
* New symbol c_list_init() is provided as alternative to the verbose
C_LIST_INIT assignment.
* The c-list API is extended to work well with `const CList` objects.
That is, any read-only accessor function allows constant objects as
input now.
Note that this does not propagate into other members linked in the
list. Using `const` for CList members is of little practical use.
However, it might be of use for its embedding objects, so we now
allow it in the CList API as well.
* The c_list_splice() call now clears the source list, rather than
returning with stale pointers. Technically, this is also an API
break, but unlikely to affect any existing code.
Contributions from: David Herrmann, Thomas Haller
- Berlin, 2017-08-13
CHANGES WITH 2:
* Adjust project-name in build-system to reflect the actual project. The
previous releases incorrectly claimed to be c-rbtree in the build
system.
* Add c_list_swap() that swaps two lists given their head pointers.
* Add c_list_splice() that moves a list.
* Add LGPL2.1+ as license so c-list can be imported into GPL2 projects.
It is now officially dual-licensed.
* As usual a bunch of fixes, additional tests, and documentation
updates.
Contributions from: David Herrmann, Tom Gundersen
- Lund, 2017-05-03
CHANGES WITH 1:
* Initial release of c-list.
* This project provides an implementation of a circular double linked
list in standard ISO-C11. License is ASL-2.0 and the build system
used is `Meson'.
Contributions from: David Herrmann, Tom Gundersen
- Berlin, 2017-03-03