[ANN] Rb++ / RbGCCXML 1.0

What is rb++ / rbgccxml?

  Rb++, rbgccxml, and rice compose a suite of tools that make wrapping C++ libraries into
  Ruby extensions as simple as possible. This is built as a replacement for SWIG-Ruby.

What's New

  * Full 1.9.2 support.
  * MinGW / MSYS build support on Windows.
  * Lots of tweaks and bug fixes.

  rb++:
    * Support for Rice::define_implicit_cast
    * Re-added indentation and styling of the generated C++ code, should be a little easier to read.

  rbgccxml:
    * Now using SAX to parse XML instead of DOM. Startup speed can be slow as the XML tree gets
      built into memory but overall parsing and querying, especially of very large libraries, is
      many times faster.

Project

  Documentation: http://rbplusplus.rubyforge.org

  rb++: http://github.com/jameskilton/rbplusplus
  rbgccxml: http://github.com/jameskilton/rbgccxml

Installation

  This single command will grab the whole stack needed for rb++ to work.

    gem install rbplusplus

  The stack includes four libraries: rb++, rbgccxml, gccxml_gem, and rice

rb++

  Rb++ makes it almost trivially easy to create Ruby extensions for C++ library.
  In the simplest of cases, there is no need to ever touch C++, everything is done
  in a very simple and clean Ruby API.

rbgccxml

  RbGCCXML allows one to easily parse out and query C / C++ code.
  This library uses GCC-XML to parse out the C / C++ code into XML, and then nokogiri
  to parse and query that XML.

gccxml_gem

  GCC-XML (www.gccxml.org) is an application that takes takes the parse tree of C / C++
  and constructs a very parsable and queryable XML file with all related information.

  This gem includes a binary build of GCC-XML for supported platforms,
  to make it trivially easy to install. Platforms currently supported are:

    * Linux 32 & 64 bit
    * Mac OS X
    * Windows via MinGW / MSYS

Rice

  The Ruby Interface for C++ Extensions, it provides a C++ API for working with ruby. More information
  available at its project page:

    http://rice.rubyforge.org

Notes

  Released under the MIT licence.

  For those familiar with py++ / pygccxml, the similarities are in function only.
  Rb++ / rbgccxml were written from scratch to take advantage of the Ruby language to it's fullest.

  Bugs, patches, feature requests, et al should be posted to the corresponding project's Issues page on github.