Menu

Version 1.1 released.

Release notes:

- License updated to cover LGPL as a valid license for using this library.
- added sexp_errors.h definitions
- removed casts from malloc/calloc/realloc calls to prevent portability
issues due to casts masking forgotten includes.
- initial implementation of an XML-SAX-like-parser for s-expressions.
instead of returning a parsed sexp_t data structure, in event mode,
the parser will call event handlers depending on the type of s-expression
element (atom, begin sexpr, end sexpr) encountered. This is useful for
parsing huge streams where it is not necessary to parse and store the entire
parse tree, but work on it as it arrives. This code will be re-worked in
the future -- currently two parser routines exist with essentially the same
internals, with one allocating memory while the other does not. I would
like to merge these, but this merger is non-trivial, and a release with this
feature would be usable at this stage before I clean up the insides of the
parser during the merge. Added data file and updated example of callback
driven parsing for Coskun Tasoluk.
- update to make destroy_sexp() free the bindata field if the sexp element
is a binary atom (ie, allocated during INLINE_BINARY parsing mode).
- malloc debugging make target was removed. Tools like valgrind and similar
programs can accomplish this, so it was pointless to continue to carry this
additional, unmaintained code along with the library. I don't think
anyone ever used them in versions past 0.3.x anyway.
- Fix to cstring.h for C++ users. Thanks to Matt Rice for pointing this out.
- Minor doxygen documentation updates.

Posted by Matt Sottile 2006-04-08

Log in to post a comment.