Software:ROBODoc

From HandWiki
ROBODoc
Developer(s)Frans Slothouber
Initial release1994 (1994)
Stable release
4.99.43 / April 26, 2015 (2015-04-26)
Operating systemLinux, Windows, Mac OS, Solaris
TypeDocumentation generator
LicenseGNU General Public License
WebsiteROBODoc Homepage

ROBODoc is a documentation tool similar to Javadoc and licensed under the GPL. It is used to extract API documentation from source code. It can be used with any language that supports comments and works by extracting specially formatted headers. These are then reformatted into HTML, DocBook, TROFF, ASCII, LaTeX, PDF, or RTF.

It can be used to document any programming artifact, such as: classes, functions, tests, makefile entries, etc.

ROBODoc works with C, C++, Fortran, Perl, shell scripts, Assembler, DCL, DB/C, Tcl/Tk, Forth, Lisp, COBOL, Occam, Basic, HTML, Clarion, and any other language that supports comments.[citation needed]

History

The first version of ROBODoc was written by Jacco van Weert in 1995. ROBODoc was inspired by the Autodocs program that was available on the Amiga. Autodocs produced ASCII output only. Jacco created a version that created output in Amigaguide format. This made it possible to create hyperlinks between the various documentation parts.

Example

A typical ROBODoc header

/****f* Robodoc/RB_Panic [2.0d]
   * SYNOPSIS
   */
   
   void RB_Panic (char* cause, char *add_info)
   
  /*
   * FUNCTION
   *   Prints an error message.
   *   Frees all resources used by robodoc.
   *   Terminates program.
   * INPUTS
   *   * cause    - pointer to a string which describes the
   *                cause of the error.
   *   * add_info - pointer to a string with additional information.
   * SEE ALSO
   *   RB_Close_The_Shop ()
   * SOURCE
   */
    {
      printf ("Robodoc: Error, %s\n",cause) ;
      printf ("         %s\n", add_info) ;
      printf ("Robodoc: Panic Fatal error, closing down..\n") ;
      RB_Close_The_Shop () ; /* Free All Resources */
      exit(100) ;
    }
    
   /*******/

and the resulting output

Robodoc example small.png

See also

External links