/Doc/library/pyclbr.rst
http://unladen-swallow.googlecode.com/ · ReStructuredText · 113 lines · 64 code · 49 blank · 0 comment · 0 complexity · a1df9676d886fb8b9e62dd8601392bc2 MD5 · raw file
- :mod:`pyclbr` --- Python class browser support
- ==============================================
- .. module:: pyclbr
- :synopsis: Supports information extraction for a Python class browser.
- .. sectionauthor:: Fred L. Drake, Jr. <fdrake@acm.org>
- The :mod:`pyclbr` module can be used to determine some limited information
- about the classes, methods and top-level functions 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 by importing the module, so this module is safe to use with untrusted
- code. This restriction makes it impossible to use this module with modules
- not implemented in Python, including all standard and optional extension
- modules.
- .. function:: readmodule(module[, path=None])
- Read a module and return a dictionary mapping class names to class
- descriptor objects. The parameter *module* should be the name of a
- module as a string; it may be the name of a module within a package. The
- *path* parameter should be a sequence, and is used to augment the value
- of ``sys.path``, which is used to locate module source code.
- .. function:: readmodule_ex(module[, path=None])
- Like :func:`readmodule`, but the returned dictionary, in addition to
- mapping class names to class descriptor objects, also maps top-level
- function names to function descriptor objects. Moreover, if the module
- being read is a package, the key ``'__path__'`` in the returned
- dictionary has as its value a list which contains the package search
- path.
- .. _pyclbr-class-objects:
- Class Objects
- -------------
- The :class:`Class` objects used as values in the dictionary returned by
- :func:`readmodule` and :func:`readmodule_ex` provide the following data
- members:
- .. attribute:: Class.module
- The name of the module defining the class described by the class descriptor.
- .. attribute:: Class.name
- The name of the class.
- .. attribute:: Class.super
- A list of :class:`Class` objects which describe the immediate base
- classes of the class being described. Classes which are named as
- superclasses but which are not discoverable by :func:`readmodule` are
- listed as a string with the class name instead of as :class:`Class`
- objects.
- .. attribute:: Class.methods
- A dictionary mapping method names to line numbers.
- .. attribute:: Class.file
- Name of the file containing the ``class`` statement defining the class.
- .. attribute:: Class.lineno
- The line number of the ``class`` statement within the file named by
- :attr:`file`.
- .. _pyclbr-function-objects:
- Function Objects
- ----------------
- The :class:`Function` objects used as values in the dictionary returned by
- :func:`readmodule_ex` provide the following data members:
- .. attribute:: Function.module
- The name of the module defining the function described by the function
- descriptor.
- .. attribute:: Function.name
- The name of the function.
- .. attribute:: Function.file
- Name of the file containing the ``def`` statement defining the function.
- .. attribute:: Function.lineno
- The line number of the ``def`` statement within the file named by
- :attr:`file`.