A taste of Doxygen used to diagram the SWI-Prolog C structures relations

Doxygen is used to generate documentation from source code.

Doxygen can also generate a diagram of the usage relations with other structs. (ref)

The following image is a capture of an SVG and one of hundreds generated automatically from the SWI-Prolog C header files (*.h). (GitHub)

Note: To get a better view of the image, click on image and open in another/new tab.

Note: GraphViz must be installed to generate the images and some DOxygen expert options set such as HAVE_DOT, CALL_GRAPH, DOT_IMAGE_FORMAT, CALLER_GRAPH, DOT_PATH.


I don’t know if there is a way to get all of the related structures in one image but the example above shows many of the core structures.



Side note about SWI-Prolog Doxygen extension.

A filter done in LEX (.l) to convert PROLOG programs into simple tokens of C/C++ that can be used to generate documentation of Prolog programs with Doxygen.

If you find the page Doxygen plugin (helper) for Prolog, the link (Extensions) is dead.

I believe the code is on GitHub.

2 Likes