twisted.python.usage.Options.html [plain text]
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>twisted.python.usage.Options</title>
<link rel="stylesheet" href="epydoc.css" type="text/css"></link>
</head>
<body bgcolor="white" text="black" link="blue" vlink="#204080"
alink="#204080">
<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
<tr valign="center">
<th class="navbar"> <a class="navbar" href="twisted.html">Home</a> </th>
<th class="navbar"> <a class="navbar" href="trees.html">Trees</a> </th>
<th class="navbar"> <a class="navbar" href="indices.html">Index</a> </th>
<th class="navbar"> <a class="navbar" href="help.html">Help</a> </th>
<th class="navbar" align="right" width="100%">
<table border="0" cellpadding="0" cellspacing="0">
<tr><th class="navbar" align="center">
<p class="nomargin">
<a class="navbar" target="_top" href="http://twistedmatrix.com/">Twisted 1.3.0rc1</a>
</p></th></tr></table>
</th>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="100%">
<font size="-1"><b class="breadcrumbs">
<a href="twisted.html">Package twisted</a> ::
<a href="twisted.python.html">Package python</a> ::
<a href="twisted.python.usage.html">Module usage</a> ::
Class Options
</b></font></br>
</td>
<td><table cellpadding="0" cellspacing="0">
<tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a> | <a href="twisted.python.usage.Options.html" target="_top">no frames</a>]</font></td></tr>
</table></td>
</tr></table>
<!-- =========== START OF CLASS DESCRIPTION =========== -->
<h2 class="class">Class Options</h2>
<pre class="base-tree">
<code>dict</code> --+
|
<b>Options</b>
</pre><br />
<dl><dt><b>Known Subclasses:</b></dt>
<dd>
<a href="twisted.scripts.tapconvert.ConvertOptions.html"><code>ConvertOptions</code></a>,
<a href="twisted.scripts.mktap.FirstPassOptions.html"><code>FirstPassOptions</code></a>,
<a href="twisted.scripts.ckeygen.GeneralOptions.html"><code>GeneralOptions</code></a>,
<a href="twisted.scripts.tap2deb.MyOptions.html"><code>MyOptions</code></a>,
<a href="twisted.scripts.tap2rpm.MyOptions.html"><code>MyOptions</code></a>,
<a href="twisted.im.tap.Options.html"><code>Options</code></a>,
<a href="twisted.mail.tap.Options.html"><code>Options</code></a>,
<a href="twisted.names.tap.Options.html"><code>Options</code></a>,
<a href="twisted.runner.inetdtap.Options.html"><code>Options</code></a>,
<a href="twisted.scripts.htmlizer.Options.html"><code>Options</code></a>,
<a href="twisted.scripts.lore.Options.html"><code>Options</code></a>,
<a href="twisted.scripts.trial.Options.html"><code>Options</code></a>,
<a href="twisted.scripts.websetroot.Options.html"><code>Options</code></a>,
<a href="twisted.tap.conch.Options.html"><code>Options</code></a>,
<a href="twisted.tap.ftp.Options.html"><code>Options</code></a>,
<a href="twisted.tap.manhole.Options.html"><code>Options</code></a>,
<a href="twisted.tap.portforward.Options.html"><code>Options</code></a>,
<a href="twisted.tap.socks.Options.html"><code>Options</code></a>,
<a href="twisted.tap.telnet.Options.html"><code>Options</code></a>,
<a href="twisted.tap.toc.Options.html"><code>Options</code></a>,
<a href="twisted.tap.web.Options.html"><code>Options</code></a>,
<a href="twisted.tap.words.Options.html"><code>Options</code></a>,
<a href="twisted.application.app.ServerOptions.html"><code>ServerOptions</code></a>,
<a href="twisted.scripts.tkunzip.TkunzipOptions.html"><code>TkunzipOptions</code></a></dd></dl>
<hr/>
<p>An option list parser class</p>
<p><code>optFlags</code> and <code>optParameters</code> are lists of
available parameters which your program can handle. The difference
between the two is the 'flags' have an on(1) or off(0) state (off by
default) whereas 'parameters' have an assigned value, with an optional
default. (Compare '--verbose' and '--verbosity=2')</p>
optFlags is assigned a list of lists. Each list represents a flag
parameter, as so:
<pre class="literalblock">
</pre>
<p>| optFlags = [['verbose', 'v', 'Makes it tell you what it doing.'], |
['quiet', 'q', 'Be vewy vewy quiet.']]</p>
<p>As you can see, the first item is the long option name (prefixed with
'--' on the command line), followed by the short option name (prefixed
with '-'), and the description. The description is used for the built-in
handling of the --help switch, which prints a usage summary.</p>
<code>optParameters</code> is much the same, except the list also
contains a default value:
<pre class="literalblock">
</pre>
<p>| optParameters = [['outfile', 'O', 'outfile.log',
'Description...']]</p>
subCommands is a list of 4-tuples of (command name, command shortcut,
parser class, documentation). If the first non-option argument found is
one of the given command names, an instance of the given parser class is
instantiated and given the remainder of the arguments to parse and
self.opts[command] is set to the command name. For example:
<pre class="literalblock">
</pre>
<p>| subCommands = [ | ['inquisition', 'inquest', InquisitionOptions,
'Perform an inquisition'], | ['holyquest', 'quest', HolyQuestOptions,
'Embark upon a holy quest'] | ]</p>
<p>In this case, <code>"<program> holyquest --horseback
--for-grail"</code> will cause <code>HolyQuestOptions</code> to be
instantiated and asked to parse <code>['--horseback',
'--for-grail']</code>. Currently, only the first sub-command is parsed,
and all options following it are passed to its parser. If a subcommand is
found, the subCommand attribute is set to its name and the subOptions
attribute is set to the Option instance that parses the remaining
options. If a subcommand is not given to parseOptions, the subCommand
attribute will be None. You can also mark one of the subCommands to be
the default.</p>
<p>| defaultSubCommand = 'holyquest'</p>
<p>In this case, the subCommand attribute will never be None, and the
subOptions attribute will always be set.</p>
<p>If you want to handle your own options, define a method named
<code>opt_paramname</code> that takes <code>(self, option)</code> as
arguments. <code>option</code> will be whatever immediately follows the
parameter on the command line. Options fully supports the mapping
interface, so you can do things like <code>'self["option"] =
val'</code> in these methods.</p>
Advanced functionality is covered in the howto documentation,
available at <a
href="http://twistedmatrix.com/documents/howto/options">http://twistedmatrix.com/documents/howto/options</a>,
or doc/howto/options.html in your Twisted directory.
<hr/>
<!-- =========== START OF METHOD SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
<th colspan="2">Method Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="__init__"></a><span class="summary-sig"><span class="summary-sig-name">__init__</span>(<span class=summary-sig-arg>self</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="__hash__"></a><span class="summary-sig"><span class="summary-sig-name">__hash__</span>(<span class=summary-sig-arg>self</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="__str__"></a><span class="summary-sig"><span class="summary-sig-name">__str__</span>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>width</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><a href="twisted.python.usage.Options.html#_gather_flags" class="summary-sig-name"><code>_gather_flags</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Gather up boolean (flag) options.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><a href="twisted.python.usage.Options.html#_gather_handlers" class="summary-sig-name"><code>_gather_handlers</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Gather up options with their own handler methods.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><a href="twisted.python.usage.Options.html#_gather_parameters" class="summary-sig-name"><code>_gather_parameters</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Gather options which take a value.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="_generic_flag"></a><span class="summary-sig"><span class="summary-sig-name">_generic_flag</span>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>flagName</span>,
<span class=summary-sig-arg>value</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="_generic_parameter"></a><span class="summary-sig"><span class="summary-sig-name">_generic_parameter</span>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>parameterName</span>,
<span class=summary-sig-arg>value</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="getSynopsis"></a><span class="summary-sig"><span class="summary-sig-name">getSynopsis</span>(<span class=summary-sig-arg>self</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="getUsage"></a><span class="summary-sig"><span class="summary-sig-name">getUsage</span>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>width</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><a href="twisted.python.usage.Options.html#opt_help" class="summary-sig-name"><code>opt_help</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Display this help and exit.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><a name="opt_version"></a><span class="summary-sig"><span class="summary-sig-name">opt_version</span>(<span class=summary-sig-arg>self</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><a href="twisted.python.usage.Options.html#parseArgs" class="summary-sig-name"><code>parseArgs</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
I am called with any leftover arguments which were not options.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><a href="twisted.python.usage.Options.html#parseOptions" class="summary-sig-name"><code>parseOptions</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>options</span>)</span></code>
<br />
The guts of the command-line parser.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><a href="twisted.python.usage.Options.html#postOptions" class="summary-sig-name"><code>postOptions</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
I am called after the options are parsed.</td></tr>
<tr bgcolor="#e8f0f8" class="group">
<th colspan="2"> Inherited from dict</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__cmp__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__contains__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__delitem__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__eq__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__ge__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__getattribute__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__getitem__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__gt__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__iter__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__le__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__len__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__lt__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__ne__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__repr__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__setitem__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">clear</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">copy</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">get</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">has_key</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">items</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">iteritems</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">iterkeys</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">itervalues</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">keys</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">popitem</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">setdefault</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">update</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">values</span>(...)</span></code>
</td></tr>
<tr bgcolor="#e8f0f8" class="group">
<th colspan="2"> Inherited from object</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__delattr__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__reduce__</span>(...)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__setattr__</span>(...)</span></code>
</td></tr>
<tr bgcolor="#e8f0f8" class="group">
<th colspan="2"> Inherited from type</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td>
<td><code><span class="summary-sig"><span class="summary-sig-name">__new__</span>(...)</span></code>
</td></tr>
</table><br />
<!-- =========== START OF CLASS VARIABLE SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
<th colspan="2">Class Variable Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>NoneType</code></font></td>
<td><b><a href="twisted.python.usage.Options.html#defaultSubCommand"><code>defaultSubCommand</code></a></b> = <span title="None">None </span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>NoneType</code></font></td>
<td><b><a href="twisted.python.usage.Options.html#parent"><code>parent</code></a></b> = <span title="None">None </span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>NoneType</code></font></td>
<td><b><a href="twisted.python.usage.Options.html#subCommand"><code>subCommand</code></a></b> = <span title="None">None </span></td></tr>
</table><br />
<!-- =========== START OF METHOD DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
<th colspan="2">Method Details</th></tr>
</table>
<a name="_gather_flags"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">_gather_flags</span>(<span class=sig-arg>self</span>)</span>
</h3>
Gather up boolean (flag) options.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="_gather_handlers"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">_gather_handlers</span>(<span class=sig-arg>self</span>)</span>
</h3>
Gather up options with their own handler methods.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="_gather_parameters"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">_gather_parameters</span>(<span class=sig-arg>self</span>)</span>
</h3>
Gather options which take a value.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="opt_help"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">opt_help</span>(<span class=sig-arg>self</span>)</span>
</h3>
Display this help and exit.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="parseArgs"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">parseArgs</span>(<span class=sig-arg>self</span>)</span>
</h3>
<p>I am called with any leftover arguments which were not options.</p>
<p>Override me to do something with the remaining arguments on the
command line, those which were not flags or options. e.g. interpret
them as a list of files to operate on.</p>
Note that if there more arguments on the command line than this
method accepts, parseArgs will blow up with a getopt.error. This means
if you don't override me, parseArgs will blow up if I am passed any
arguments at all!
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="parseOptions"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">parseOptions</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>options</span>=<span class=sig-default>None</span>)</span>
</h3>
The guts of the command-line parser.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="postOptions"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">postOptions</span>(<span class=sig-arg>self</span>)</span>
</h3>
<p>I am called after the options are parsed.</p>
Override this method in your subclass to do something after the
options have been parsed and assigned, like validate that all options
are sane.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<br />
<!-- =========== START OF CLASS VARIABLE DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
<th colspan="2">Class Variable Details</th></tr>
</table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="defaultSubCommand"></a>
<h3>defaultSubCommand</h3>
<dl>
<dt></dt>
<dd>
<dl>
<dt><b>Type:</b></dt>
<dd>
<code>NoneType</code>
</dd>
<span title="None"> <dt><b>Value:</b></dt>
<dd><table><tr><td>
<pre class="variable">
None </pre>
</td></tr></table></dd>
</span> </dl>
</dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="parent"></a>
<h3>parent</h3>
<dl>
<dt></dt>
<dd>
<dl>
<dt><b>Type:</b></dt>
<dd>
<code>NoneType</code>
</dd>
<span title="None"> <dt><b>Value:</b></dt>
<dd><table><tr><td>
<pre class="variable">
None </pre>
</td></tr></table></dd>
</span> </dl>
</dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="subCommand"></a>
<h3>subCommand</h3>
<dl>
<dt></dt>
<dd>
<dl>
<dt><b>Type:</b></dt>
<dd>
<code>NoneType</code>
</dd>
<span title="None"> <dt><b>Value:</b></dt>
<dd><table><tr><td>
<pre class="variable">
None </pre>
</td></tr></table></dd>
</span> </dl>
</dd>
</dl></td></tr></table>
<br />
<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
<tr valign="center">
<th class="navbar"> <a class="navbar" href="twisted.html">Home</a> </th>
<th class="navbar"> <a class="navbar" href="trees.html">Trees</a> </th>
<th class="navbar"> <a class="navbar" href="indices.html">Index</a> </th>
<th class="navbar"> <a class="navbar" href="help.html">Help</a> </th>
<th class="navbar" align="right" width="100%">
<table border="0" cellpadding="0" cellspacing="0">
<tr><th class="navbar" align="center">
<p class="nomargin">
<a class="navbar" target="_top" href="http://twistedmatrix.com/">Twisted 1.3.0rc1</a>
</p></th></tr></table>
</th>
</tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td align="left"><font size="-2">Generated by Epydoc 2.0 on Sat May 15 20:08:18 2004</font></td>
<td align="right"><a href="http://epydoc.sourceforge.net"
><font size="-2">http://epydoc.sf.net</font></a></td>
</tr>
</table>
</body>
</html>