libv Documentation
0.1.4
This manual documents the low-level libv C API.
libv implements common data structures such as linked lists, dynamic arrays, binary trees, AVL-trees, maps, hashes, stacks, queues and others.
- Note:
- "For all intent and purpose, any description of what the codes are doing should be construed as being a note of what we thought the codes did on our machine on a particular Tuesday of last year. If you're really lucky, they might do the same for you someday. Then again, do you really feel *that* lucky?"
(citing from the README of a mathematical subroutine package by R. Freund)
Caveats aside, project goals include:
- portability: libv is extremely portable, compiling on all systems with an ANSI/ISO C90 compiler
- efficiency: libv implements efficient algorithms, not hacks
- documentation: libv is well documented, making it easy for developers to get a grip and actually use the library
- stability / safety: unlike many other data structure libraries, libv is extremely stable and doesn't produce memory leaks or segmentation faults
- consistency: libv features a simple and consistent interface across all its modules; following a few simple rules, you can almost always guess the meaning of parameters and return values of a given function directly from its prototype
- readability: the libv source code is written with intense attention to readability; almost all functions are short, elegant, sweet and simple
- active development: libv is under active development; we love to hear about feature requests, ideas, comments and suggestions
This manual also contains docs for libv internals, so you can use it to get oriented to the libv source code if you're interested in patching the code. You should also read the file HACKING which comes with the source code if you plan to contribute to libv.
How to use this manual
This manual is devided into several parts. In the Modules section, the complete API for a given module is documented. If you're developing an application using libv, this is the place to go. The other two sections, namely "Data Structures" and "Files", additionally document internal data structures and functions you shouldn't have to care about unless you plan to work on libv itself.
Generated on Thu Jul 19 13:36:09 2007 for libv by
1.5.1-p1. Thank you,