summaryrefslogtreecommitdiff
path: root/sys/src/cmd/python/Doc/lib/libpyclbr.tex
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@localhost>2011-05-03 11:25:13 +0000
committercinap_lenrek <cinap_lenrek@localhost>2011-05-03 11:25:13 +0000
commit458120dd40db6b4df55a4e96b650e16798ef06a0 (patch)
tree8f82685be24fef97e715c6f5ca4c68d34d5074ee /sys/src/cmd/python/Doc/lib/libpyclbr.tex
parent3a742c699f6806c1145aea5149bf15de15a0afd7 (diff)
add hg and python
Diffstat (limited to 'sys/src/cmd/python/Doc/lib/libpyclbr.tex')
-rw-r--r--sys/src/cmd/python/Doc/lib/libpyclbr.tex102
1 files changed, 102 insertions, 0 deletions
diff --git a/sys/src/cmd/python/Doc/lib/libpyclbr.tex b/sys/src/cmd/python/Doc/lib/libpyclbr.tex
new file mode 100644
index 000000000..0dedb9e5d
--- /dev/null
+++ b/sys/src/cmd/python/Doc/lib/libpyclbr.tex
@@ -0,0 +1,102 @@
+\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, 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 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}
+
+\begin{funcdesc}{readmodule_ex}{module\optional{, path}}
+ % The 'inpackage' parameter appears to be for internal use only....
+ Like \function{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 \code{'__path__'} in the
+ returned dictionary has as its value a list which contains the package
+ search path.
+\end{funcdesc}
+
+
+\subsection{Class Descriptor Objects \label{pyclbr-class-objects}}
+
+The class descriptor objects used as values in the dictionary returned
+by \function{readmodule()} and \function{readmodule_ex()}
+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 \code{class} statement defining the class.
+\end{memberdesc}
+
+\begin{memberdesc}[class descriptor]{lineno}
+ The line number of the \code{class} statement within the file named by
+ \member{file}.
+\end{memberdesc}
+
+\subsection{Function Descriptor Objects \label{pyclbr-function-objects}}
+
+The function descriptor objects used as values in the dictionary returned
+by \function{readmodule_ex()} provide the following data members:
+
+
+\begin{memberdesc}[function descriptor]{module}
+ The name of the module defining the function described by the function
+ descriptor.
+\end{memberdesc}
+
+\begin{memberdesc}[function descriptor]{name}
+ The name of the function.
+\end{memberdesc}
+
+\begin{memberdesc}[function descriptor]{file}
+ Name of the file containing the \code{def} statement defining the function.
+\end{memberdesc}
+
+\begin{memberdesc}[function descriptor]{lineno}
+ The line number of the \code{def} statement within the file named by
+ \member{file}.
+\end{memberdesc}
+