Lukas Fleischer 0eb1da8dd7 Add linked lists implementation.
As discussed on the mailing lists, the various linked list
implementations we currently use at a dozen of different places in the
calcurse source tree are inconvenient and should be replaced by a single
generic solution.

This is a first approach to introduce such a generic implemetation. It
provides following functions:

* llist_init(): Initialize a list.

* llist_free_inner(): Loop through a list and free all items.

* llist_free(): Free the list itself (but not the individual items).

* llist_first(): Get the first item of a list.

* llist_nth(): Get the nth item of a list.

* llist_next(): Get the successor of a list item.

* llist_find_first(): Find an item using a callback function.

* llist_find_next(): Find the next match using a callback function.

* llist_find_nth(): Find the nth item in a list (using a callback).

* llist_get_data(): Get a pointer to the actual data of a list item.

* llist_add(): Add an item at the end of a list.

* llist_add_sorted(): Add an item to a sorted list (using a comparison
                      callback function).

* llist_remove(): Remove an item from a list.

Linked lists are stored in "llist_t" structures, list items are to be
stored in "llist_item_t" structs.

All of the llist_*() functions either expect a pointer to a llist_t
structure (in case the function operates on the list itself) or a
pointer to a llist_item_t (llist_*_next() and llist_get_data()).

Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
2011-04-19 11:42:32 +02:00
2011-04-10 18:02:33 +02:00
2011-04-19 11:42:32 +02:00
2011-04-11 10:56:14 +02:00
2011-03-03 12:21:16 +01:00
2011-03-03 12:21:25 +01:00
2011-03-03 12:21:16 +01:00
2011-03-03 18:53:31 +01:00
2011-03-03 12:21:16 +01:00
2011-03-03 12:21:16 +01:00
2011-03-03 12:21:16 +01:00

		README file for the calcurse package

See the file INSTALL for instructions on how to build and install calcurse.
See the file Changelog for a release history and bug-fix notes.
See the file TODO for things that still need doing.

Browse the file doc/manual_xx.html (where xx stands for a language
abbreviation) for narrative descriptions of how to use calcurse.


PACKAGE OVERVIEW:

	You should be reading this file in a directory called: calcurse-x.x,
	where x.x is the current version number. There should be two 
	subdirectories : 'src' and 'doc'. 
	Detailed documentation in html format can be found in the 'doc' 
	directory. Calcurse sources can be found in the 'src' directory.


AUTHORS:

	Frederic Culot   (original author)
	Lukas Fleischer  (several patches + new features)


CONTRIBUTORS:

	Support for regex       Erik Saule

	German translation	Michael Schulz, Chris M., Benjamin Moeller
	Spanish translation	Jose Lopez
	Dutch translation	Jeremy Roon

	See also the 'Thanks' section in doc/manual_xx.html for a list of 
	people who have contributed by reporting bugs, sending fixes, or 
	suggesting improvements.
Description
No description provided
Readme 5.2 MiB
Languages
C 65.7%
Shell 29.6%
Python 3.4%
M4 0.8%
Makefile 0.5%