
"sphinx.ext.inheritance_diagram" -- Include inheritance diagrams
****************************************************************

New in version 0.6.

This extension allows you to include inheritance diagrams, rendered
via the "Graphviz extension".

It adds this directive:

.. inheritance-diagram::

   This directive has one or more arguments, each giving a module or
   class name.  Class names can be unqualified; in that case they are
   taken to exist in the currently described module (see "py:module").

   For each given class, and each class in each given module, the base
   classes are determined.  Then, from all classes and their base
   classes, a graph is generated which is then rendered via the
   graphviz extension to a directed graph.

   This directive supports an option called "parts" that, if given,
   must be an integer, advising the directive to remove that many
   parts of module names from the displayed names.  (For example, if
   all your class names start with "lib.", you can give ":parts: 1" to
   remove that prefix from the displayed node names.)

   It also supports a "private-bases" flag option; if given, private
   base classes (those whose name starts with "_") will be included.

   Changed in version 1.1: Added "private-bases" option; previously,
   all bases were always included.

New config values are:

inheritance_graph_attrs

   A dictionary of graphviz graph attributes for inheritance diagrams.

   For example:

      inheritance_graph_attrs = dict(rankdir="LR", size='"6.0, 8.0"',
                                     fontsize=14, ratio='compress')

inheritance_node_attrs

   A dictionary of graphviz node attributes for inheritance diagrams.

   For example:

      inheritance_node_attrs = dict(shape='ellipse', fontsize=14, height=0.75,
                                    color='dodgerblue1', style='filled')

inheritance_edge_attrs

   A dictionary of graphviz edge attributes for inheritance diagrams.
