From: Moritz Hoffmann <antiguru@gm...> - 2008-01-25 14:02:01
A couple of days ago I added a new project to the incubator called
rexxdoc. Rexxdoc is intended to become a complete application to
generate source code documentation out of the source code itself. From
its architecture it is similar to JavaDoc: A parser produces a parse
tree of source code with all relevant statements translated into
special objects to hold the element's attributes. This tree can be
traversed to produce a documentation.
The current status is that there is a working parser that recognizes
all directives (class, method, constant, attribute, requires, routine)
and translates them into special objects that hold the properties. For
example, there is a class called SourceMethod that has a method to
check if the method is private etc. On top of parsing the directives
it tries to resolve class references so linking classes should work as
well. In case it encounters some error on the directive warnings are
printed. It is about as strict as the rexx interpreter regarding
errors on directives.
For the purpose of demonstrating just a couple of its features I
created a very simple front end for the rexxdoc package. It can be
found in the incubator: /incubator/rexxdoc. Start it with frontend.rex
<your source>, e.g. frontend.rex rexxdoc.cls. This will produce a file
called doc.html, which can be displayed in a browser. The front end is
really simple, so please don't comment on its layout ;-)
My primary goal is to get your feedback on the class' functionality,
whether you like it or not. Especially important for me are bugs you
find. If you find one you may open a ticket, but you can also post
here as it is in quite early stages of development.
* source code is not includede (should be based on options)
* procedures are not parsed (interfaces are there)
* frontend is missing (e.g. HTML and docbook)
* class resolution may be incorrect
I hope you find the application useful!