Projects / Bare XML

Bare XML

Bare XML is a "bare" XML parser with all primary parsing done via a simple state engine with about 20 or so different states. A tree structure is created during parsing, with all node names and values linked via pointers directly into the original text buffer. As such, Bare XML is extremely fast and simple. Currently, the parser is available in a perl module with Perl glue to turn the created tree into a Perl hash tree. The module name is XML::Bare.

Tags
Licenses
Operating Systems
Implementation

RSS Recent releases

  •  10 Mar 2009 21:26

Release Notes: Schema checking functionality was added. Parsing of nodes with more than one comment block was added. There were other changes.

  •  07 Nov 2007 10:22

Release Notes: Basic mixed XML with comments is now supported. The parsing engine has been rewritten in C instead of C++. Hash creation is now done in XS instead of Perl. A number of additional functions have been added for ease of use. The test suite has been updated, and there are a number of small fixes.

  •  24 Jun 2007 19:59

Release Notes: XS code ha been changed so that it is backwards compatible with older versions of Perl. XS code ha been changed to use 'blind' pointers, a custom created Perl Scalar. Speed is increased as a result for XML with large contiguous values. XS routines are 30% more efficient. The speed of parsing and Perl hash creation is now very good in comparison to all currently available alternatives in Perl. The library ha been rewritten using XS instead of SWIG. The parser has been rewritten in C to avoid dependency on g++. After node parsing, C tree structure memory is now freed.

  •  20 Jun 2007 06:51

Release Notes: Custom compiler script has been corrected. It was incorrect in its use of redirection and was causing some platforms to fail to compile.

  •  18 Jun 2007 04:27

Release Notes: The Makefile has been modified to use a custom script to switch between g++ and gcc for compilation. Even as C, the SWIG interface still did not compile properly with g++ on some systems.

Screenshot

Project Spotlight

Whole Platform

A technology for engineering the production of software.

Screenshot

Project Spotlight

CyaSSL

A lightweight SSL/TLS library supporting up to TLS 1.2 and DTLS 1.2.