Exciting news! :)

rdoc-hacks got some new functionality: firstly, it is able to
RueDoc.fix data output by RDoc to add in missing method names
from C, something sorely missing from the previous version.

The second and far more exciting change is RueDoc.normalize,
which takes the data structure generated by RDoc and rearranges
it into a much more sensible one. This makes it much easier to
do arbitrary things with the data (see Examples for a plain YAML
dump of a structure). I included a description of the generated
data structure at the bottom of this message.

The frameless template underwent some minor changes, no real
new functionality. Still seems to suffer from previous problems.

Examples:
http://www.magical-cat.org/projects/ruedoc/yaml
http://www.magical-cat.org/projects/ruedoc/oughtve
http://www.magical-cat.org/projects/ruedoc/ruby-1.9

Download:
http://www.magical-cat.org/projects/ruedoc/download/ruedoc-0.1.2.tar.gz
http://www.magical-cat.org/projects/ruedoc/download/ruedoc-0.1.2.tar.bz2

Documentation:
http://www.magical-cat.org/projects/ruedoc/rdoc/


================| Normalized data format |====================

Calling RueDoc.normalize on the data generated by
RDoc (see below) generates this data structure:

   modules:    <as classes>
   classes:
     -
       name:   <name of the class>
       parent: <parent class>
       type:   <class or module>
       desc:   <class description>
       files:
         -
           path:  <relative path to file where class defined>

       constants:
         -
           name:   <name of the constant>
           value:  <value of the constant>
           desc:   <description of the constant>

       public_class_methods:
         -
           name:     <method name>
           params:   <(parameters)>
           desc:     <description>
           source:   <source code>
           example:  <example of calling the method>   # C methods only

       protected_class_methods:    <as above>
       private_class_methods:      <as above>
       public_instance_methods:    <as above>
       protected_instance_methods: <as above>
       private_instance_methods:   <as above>

   files:
     -
       name:     <filename>
       path:     <relative path>
       desc:     <description>
       modified: <modification timestamp>
       requires:
         -
           name: <library name>


E

-- 
template<typename duck>
void quack(duck& d) { d.quack(); }