Documentation PreviousNext

Each Eiffel library or tool should come with some documentation to be placed in $GOBO/library/<library-name>/doc or $GOBO/tool/<tool-name>/doc. Documentation should be written in American English. It is possible to provide the documentation in other languages (French, Spanish, Dutch, German, ...), but it should at least be available in American English.

Documentation format: DocBook XML DTD? ...

Graphviz could probably be used to generate class inheritance graphs. Graphiz is an open source graph drawing software. Have a look at:

For example, with the following file:

digraph G {
	edge [dir=back, color=maroon];
	node [height=0.35, fontsize=8, style=filled, color=paleturquoise3];

	ds_list [label="DS_LIST*"];
	ds_linked_list [label="DS_LINKED_LIST"];
	ds_bilinked_list [label="DS_BILINKED_LIST"];
	ds_arrayed_list [label="DS_ARRAYED_LIST"];

	ds_list -> ds_linked_list -> ds_bilinked_list;
	ds_list -> ds_arrayed_list;

I managed to generate a list.gif file similar to those used in the existing Gobo Eiffel documentation with the command-line:

  dot -Tgif -o list.gif

I don't know yet how to simulate the client relationship double-arrow with graphviz though.

(Thank you to Franck Arnaud for letting me know about this graphviz tool.)

Copyright 2001-2016, Eric Bezault
Last Updated: 22 December 2016