Are there tools to document code

Miscellaneous Forums/General Discussion/Are there tools to document code

Does anybody know if there are any descent tools around to document code.
Something which shows the layout of a program, the different classes, the order of flow etc..?
Something you could use if you haven't worked on project for several months to refresh the memory?

Ghislain

For what language?

DOxygen covers a lot of mainstream languages, and you did say classes as opposed to types.

http://www.stack.nl/~dimitri/doxygen/

There are freeware UML 'mappers', Cod2Doc for Blitzbasic. You can use the bbdoc keywords in Bmax.

In my imagination I would love something which parses my Blitzmax-file, creates images of all types [a là class designer in visual studio]. Then I should be able to print them out along with some general notes. Perhaps maybe some simple sequence-diagrams.

Ghislain

Doxygen with modifications and installed GraphViz

One of the best tools to use is a keyboard, during a coding session.

Does anybody know if there are any descent tools around to document code.
I use JUDE.

Somebody on the Blitz forum made COD2DOC, try to search for it...

I think I will try JUDE.
And maybe use GraphViz to automatically create some UML-diagrams by creating dot-files. If Brucey completes his Graphviz module it might even be done completely in BlitzMax.

I'm not sure if cod2doc is what i'm looking for. It seems very usefull for functions/methods-libraries etc. But I might be wrong..

Ghislain

And maybe use GraphViz to automatically create some UML-diagrams by creating dot-files.

Shouldn't be too hard to parse the source (see docmods as a possible example), and generate whatever you need.
The Graphviz module can even work on-the-fly (doesn't need dot files/text), if you want an in-memory only generator.
Seeing that wxWidgets will happily draw directly onto controls (which MaxGUI won't, alas), I'm considering changing Graphviz to allow different renderers, rather than thru Max2D, which is what it currently uses.
I can see how nice it would be as part of an IDE of some sort - integrated class/type diagrams.

And generating "headers" that Doxygen can parse is quite possible too. I once wrote one for REALbasic code.

Never say never ;-)