The UCW library =============== The UCW library aims to provide a set general purpose tools for programming in the C language. It contains generic data structures (lists, trees, hash tables etc.), fast memory allocators optimized for various usage patterns, abstract I/O streams and optimized implementations of some common algorithms (e.g., sorting of arrays and files). Please note that this documentation is not yet complete. Many modules are not described, so you might need to look into the source code. You can see the index of <>. Modules ------- - <> - <> - <> - <> - <> - <> - <> - <> Other features -------------- - <> - <> - <> Yet undocumented modules ------------------------ - Sorting * `sorter/` - Binary search * `binsearch.h` - Primes * `prime.h` - Growing buffers * `gbuf.h` * `bbuf.h` - Heaps * `binheap.h` * `binheap-node.h` * `heap.h` - Hash tables * `hashtable.h` - Trie * `trie.h` - Red-black trees * `redblack.h` - Bit manipulation * `bitarray.h` * `bitopts.h` * `bitsig.h` - Character manipulation * `char-map.h` * `chartype.h` * `unicode.h` - String manipulation * `kmp.h` * `kmp-search.h` * `regex.h` * `stkstring.h` * `string.h` * `str-match.h` * `wildmatch.h` - File manipulation * `asio.h` * `lfs.h` * `partmap.h` - Address manipulation * `url.h` * `ipaccess.h` - Fixed-sized allocator * `eltpool.h` - Prefetching of memory * `prefetch.h` - Compression * `lizard.h` - Caches * `qache.h` - Threads * `semaphore.h` * `threads.h` * `workqueue.h` - Profiling support * `profile.h` License ------- The UCW library is copyrighted by its authors: - Pavel Charvát - Martin Mareš - Robert Špalek - Michal Vaner It can be freely distributed and used according to the terms of the GNU Lesser General Public License.