| \section{\module{pyclbr} --- |
| Python class browser support} |
| |
| \declaremodule{standard}{pyclbr} |
| \modulesynopsis{Supports information extraction for a Python class |
| browser.} |
| \sectionauthor{Fred L. Drake, Jr.}{fdrake@acm.org} |
| |
| |
| The \module{pyclbr} can be used to determine some limited information |
| about the classes and methods defined in a module. The information |
| provided is sufficient to implement a traditional three-pane class |
| browser. The information is extracted from the source code rather |
| than from an imported module, so this module is safe to use with |
| untrusted source code. This restriction makes it impossible to use |
| this module with modules not implemented in Python, including many |
| standard and optional extension modules. |
| |
| |
| \begin{funcdesc}{readmodule}{module\optional{, path}} |
| % The 'inpackage' parameter appears to be for internal use only.... |
| Read a module and return a dictionary mapping class names to class |
| descriptor objects. The parameter \var{module} should be the name |
| of a module as a string; it may be the name of a module within a |
| package. The \var{path} parameter should be a sequence, and is used |
| to augment the value of \code{sys.path}, which is used to locate |
| module source code. |
| \end{funcdesc} |
| |
| |
| \subsection{Class Descriptor Objects \label{pyclbr-class-objects}} |
| |
| The class descriptor objects used as values in the dictionary returned |
| by \function{readmodule()} provide the following data members: |
| |
| |
| \begin{memberdesc}[class descriptor]{module} |
| The name of the module defining the class described by the class |
| descriptor. |
| \end{memberdesc} |
| |
| \begin{memberdesc}[class descriptor]{name} |
| The name of the class. |
| \end{memberdesc} |
| |
| \begin{memberdesc}[class descriptor]{super} |
| A list of class descriptors which describe the immediate base |
| classes of the class being described. Classes which are named as |
| superclasses but which are not discoverable by |
| \function{readmodule()} are listed as a string with the class name |
| instead of class descriptors. |
| \end{memberdesc} |
| |
| \begin{memberdesc}[class descriptor]{methods} |
| A dictionary mapping method names to line numbers. |
| \end{memberdesc} |
| |
| \begin{memberdesc}[class descriptor]{file} |
| Name of the file containing the class statement defining the class. |
| \end{memberdesc} |
| |
| \begin{memberdesc}[class descriptor]{lineno} |
| The line number of the class statement within the file named by |
| \member{file}. |
| \end{memberdesc} |