~ubuntu-branches/debian/squeeze/nose/squeeze

« back to all changes in this revision

Viewing changes to doc/module_nose.plugins.manager.html

  • Committer: Bazaar Package Importer
  • Author(s): Torsten Marek
  • Date: 2008-06-12 13:39:43 UTC
  • mto: (1.1.5 upstream)
  • mto: This revision was merged to the branch mainline in revision 3.
  • Revision ID: james.westby@ubuntu.com-20080612133943-e5s4muhk60y249y9
Tags: upstream-0.10.3
ImportĀ upstreamĀ versionĀ 0.10.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<html>
 
2
  <head>
 
3
    <title>nose: nose.plugins.manager</title>
 
4
    <link rel="stylesheet" href="site.css" type="text/css"></link>
 
5
  </head>
 
6
  <body>
 
7
    
 
8
    <div id="menu">
 
9
      <p>This document covers nose version <b>0.10.3</b></p>
 
10
      <p>Last update: <b>Tue Jun  3 11:50:26 2008</b></p>
 
11
      <h2>Plugins</h2><ul><li><a href="plugin_attrib.html">Builtin Plugin: attrib</a></li><li><a href="plugin_capture.html">Builtin Plugin: capture</a></li><li><a href="plugin_cover.html">Builtin Plugin: cover</a></li><li><a href="plugin_debug.html">Builtin Plugin: debug</a></li><li><a href="plugin_deprecated.html">Builtin Plugin: deprecated</a></li><li><a href="plugin_doctests.html">Builtin Plugin: doctests</a></li><li><a href="plugin_failuredetail.html">Builtin Plugin: failuredetail</a></li><li><a href="plugin_isolate.html">Builtin Plugin: isolate</a></li><li><a href="plugin_prof.html">Builtin Plugin: prof</a></li><li><a href="plugin_skip.html">Builtin Plugin: skip</a></li><li><a href="plugin_testid.html">Builtin Plugin: testid</a></li><li><a href="error_class_plugin.html">ErrorClass Plugins</a></li><li><a href="plugin_interface.html">Plugin Interface</a></li><li><a href="writing_plugins.html">Writing Plugins</a></li></ul><h2>Modules</h2><ul><li><a href="module_nose.case.html">Module: nose.case</a></li><li><a href="module_nose.commands.html">Module: nose.commands</a></li><li><a href="module_nose.config.html">Module: nose.config</a></li><li><a href="module_nose.core.html">Module: nose.core</a></li><li><a href="module_nose.exc.html">Module: nose.exc</a></li><li><a href="module_nose.failure.html">Module: nose.failure</a></li><li><a href="module_nose.importer.html">Module: nose.importer</a></li><li><a href="module_nose.inspector.html">Module: nose.inspector</a></li><li><a href="module_nose.loader.html">Module: nose.loader</a></li><li><a href="module_nose.plugins.manager.html">Module: nose.plugins.manager</a></li><li><a href="module_nose.plugins.plugintest.html">Module: nose.plugins.plugintest</a></li><li><a href="module_nose.proxy.html">Module: nose.proxy</a></li><li><a href="module_nose.result.html">Module: nose.result</a></li><li><a href="module_nose.selector.html">Module: nose.selector</a></li><li><a href="module_nose.suite.html">Module: nose.suite</a></li><li><a href="module_nose.tools.html">Module: nose.tools</a></li><li><a href="module_nose.twistedtools.html">Module: nose.twistedtools</a></li><li><a href="module_nose.util.html">Module: nose.util</a></li></ul><h2>Plugin Examples</h2><ul><li><a href="unwanted_package.html">Excluding Unwanted Packages</a></li><li><a href="errorclass_failure.html">Failure of Errorclasses</a></li><li><a href="imported_tests.html">Importing Tests</a></li><li><a href="empty_plugin.html">Minimal plugin</a></li><li><a href="restricted_plugin_options.html">Restricted Plugin Managers</a></li><li><a href="init_plugin.html">Running Initialization Code Before the Test Run</a></li><li><a href="selector_plugin.html">Using a Custom Selector</a></li><li><a href="plugin_exceptions.html">When Plugins Fail</a></li><li><a href="plugintest_environment.html">nose.plugins.plugintest, os.environ and sys.argv</a></li></ul>
 
12
      <h2>Classes</h2><ul><li><a href="#DefaultPluginManager">DefaultPluginManager</a></li><li><a href="#PluginManager">PluginManager</a></li><li><a href="#EntryPointPluginManager">EntryPointPluginManager</a></li><li><a href="#BuiltinPluginManager">BuiltinPluginManager</a></li><li><a href="#RestrictedPluginManager">RestrictedPluginManager</a></li><li><a href="#PluginProxy">PluginProxy</a></li><li><a href="#ZeroNinePlugin">ZeroNinePlugin</a></li><li><a href="#NoPlugins">NoPlugins</a></li></ul>
 
13
    </div>
 
14
    
 
15
    <div id="main">
 
16
      <h1>nose: nose.plugins.manager</h1>
 
17
      
 
18
      <p>A plugin manager class is used to load plugins, manage the list of
 
19
loaded plugins, and proxy calls to those plugins.</p>
 
20
<p>The plugin managers provided with nose are:</p>
 
21
<dl class="docutils">
 
22
<dt><tt class="docutils literal"><span class="pre">PluginManager</span></tt></dt>
 
23
<dd>This manager doesn't implement loadPlugins, so it can only work
 
24
with a static list of plugins.</dd>
 
25
<dt><tt class="docutils literal"><span class="pre">BuiltinPluginManager</span></tt></dt>
 
26
<dd>This manager loads plugins referenced in <tt class="docutils literal"><span class="pre">nose.plugins.builtin</span></tt>.</dd>
 
27
<dt><tt class="docutils literal"><span class="pre">EntryPointPluginManager</span></tt></dt>
 
28
<dd>This manager uses setuptools entrypoints to load plugins.</dd>
 
29
<dt><tt class="docutils literal"><span class="pre">DefaultPluginMananger</span></tt></dt>
 
30
<dd>This is the manager class that will be used by default. If
 
31
setuptools is installed, it is a subclass of
 
32
<tt class="docutils literal"><span class="pre">EntryPointPluginManager</span></tt> and <tt class="docutils literal"><span class="pre">BuiltinPluginManager</span></tt>; otherwise, an
 
33
alias to <tt class="docutils literal"><span class="pre">BuiltinPluginManager</span></tt>.</dd>
 
34
<dt><tt class="docutils literal"><span class="pre">RestrictedPluginManager</span></tt></dt>
 
35
<dd>This manager is for use in test runs where some plugin calls are
 
36
not available, such as runs started with <cite>python setup.py test</cite>,
 
37
where the test runner is the default unittest <tt class="docutils literal"><span class="pre">TextTestRunner</span></tt>. It
 
38
is a subclass of <tt class="docutils literal"><span class="pre">DefaultPluginManager</span></tt>.</dd>
 
39
</dl>
 
40
<div class="section">
 
41
<h1><a id="writing-a-plugin-manager" name="writing-a-plugin-manager">Writing a plugin manager</a></h1>
 
42
<p>If you want to load plugins via some other means, you can write a
 
43
plugin manager and pass an instance of your plugin manager class when
 
44
instantiating the <a class="reference" href="module_nose.config.html#Config">nose.config.Config</a> instance that you pass to
 
45
<tt class="docutils literal"><span class="pre">TestProgram</span></tt> (or <tt class="docutils literal"><span class="pre">main</span></tt> or <tt class="docutils literal"><span class="pre">run</span></tt>).</p>
 
46
<p>To implement your plugin loading scheme, implement <tt class="docutils literal"><span class="pre">loadPlugins()</span></tt>,
 
47
and in that method, call <tt class="docutils literal"><span class="pre">addPlugin()</span></tt> with an instance each plugin
 
48
you wish to make available. Make sure to call
 
49
<tt class="docutils literal"><span class="pre">super(self).loadPlugins()</span></tt> as well if have subclassed a manager
 
50
other than <tt class="docutils literal"><span class="pre">PluginManager</span></tt>.</p>
 
51
</div>
 
52
<h2>Classes</h2>
 
53
<p>Highlighted methods are defined in this class.</p><a name="DefaultPluginManager"></a><div class="cls section"><span class="cls name">DefaultPluginManager</span> (<a href="module_nose.plugins.manager.html#BuiltinPluginManager">BuiltinPluginManager</a>, <a href="module_nose.plugins.manager.html#EntryPointPluginManager">EntryPointPluginManager</a>)<div class="cls doc"><h3>Methods</h3><div class="method section inherited"><span class="method name">__init__<span class="args">(self, plugins=(), proxyClass=None)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">__iter__<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_get_plugins<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_set_plugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugin<span class="args">(self, plug)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">configure<span class="args">(self, options, config)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"><p>Configure the set of plugins with the given options
 
54
and config instance. After configuration, disabled plugins
 
55
are removed from the plugins list.</p>
 
56
</div></div><div class="method section inherited"><span class="method name">loadPlugins<span class="args">(self)</span></span><span class="method inherited">(inherited from BuiltinPluginManager)</span><div class="method doc"><p>Load plugins in nose.plugins.builtin</p>
 
57
</div></div><div class="method section inherited"><span class="method name">sort<span class="args">(self, cmpf=None)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><h3>Attributes</h3><div class="attr section inherited"><span class="attr name">entry_points</span><pre class="attr value">Default value: ((&#39;nose.plugins.0.10&#39;, None), (&#39;nose.plugins&#39;, &lt;class nose.plugins.manager.ZeroNinePlugin&gt;))</pre><div class="attr doc"></div></div><div class="attr section inherited"><span class="attr name">plugins</span><pre class="attr value">Default value: (property)</pre><div class="attr doc"><p>Access the list of plugins managed by
 
58
this plugin manager</p>
 
59
</div></div></div></div>
 
60
<a name="PluginManager"></a><div class="cls section"><span class="cls name">PluginManager</span> (object)<div class="cls doc"><p>Base class for plugin managers. Does not implement loadPlugins, so it
 
61
may only be used with a static list of plugins.</p>
 
62
<p>The basic functionality of a plugin manager is to proxy all unknown
 
63
attributes through a <tt class="docutils literal"><span class="pre">PluginProxy</span></tt> to a list of plugins.</p>
 
64
<p>Note that the list of plugins <em>may not</em> be changed after the first plugin
 
65
call.</p>
 
66
<h3>Methods</h3><div class="method section"><span class="method name">__init__<span class="args">(self, plugins=(), proxyClass=None)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">__iter__<span class="args">(self)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">_get_plugins<span class="args">(self)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">_set_plugins<span class="args">(self, plugins)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">addPlugin<span class="args">(self, plug)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">addPlugins<span class="args">(self, plugins)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">configure<span class="args">(self, options, config)</span></span><div class="method doc"><p>Configure the set of plugins with the given options
 
67
and config instance. After configuration, disabled plugins
 
68
are removed from the plugins list.</p>
 
69
</div></div><div class="method section"><span class="method name">loadPlugins<span class="args">(self)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">sort<span class="args">(self, cmpf=None)</span></span><div class="method doc"></div></div><h3>Attributes</h3><div class="attr section"><span class="attr name">plugins</span><pre class="attr value">Default value: (property)</pre><div class="attr doc"><p>Access the list of plugins managed by
 
70
this plugin manager</p>
 
71
</div></div></div></div>
 
72
<a name="EntryPointPluginManager"></a><div class="cls section"><span class="cls name">EntryPointPluginManager</span> (<a href="module_nose.plugins.manager.html#PluginManager">PluginManager</a>)<div class="cls doc"><p>Plugin manager that loads plugins from the <cite>nose.plugins</cite> and
 
73
<cite>nose.plugins.0.10</cite> entry points.</p>
 
74
<h3>Methods</h3><div class="method section inherited"><span class="method name">__init__<span class="args">(self, plugins=(), proxyClass=None)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">__iter__<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_get_plugins<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_set_plugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugin<span class="args">(self, plug)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">configure<span class="args">(self, options, config)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"><p>Configure the set of plugins with the given options
 
75
and config instance. After configuration, disabled plugins
 
76
are removed from the plugins list.</p>
 
77
</div></div><div class="method section"><span class="method name">loadPlugins<span class="args">(self)</span></span><div class="method doc"><p>Load plugins by iterating the <cite>nose.plugins</cite> entry point.</p>
 
78
</div></div><div class="method section inherited"><span class="method name">sort<span class="args">(self, cmpf=None)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><h3>Attributes</h3><div class="attr section"><span class="attr name">entry_points</span><pre class="attr value">Default value: ((&#39;nose.plugins.0.10&#39;, None), (&#39;nose.plugins&#39;, &lt;class nose.plugins.manager.ZeroNinePlugin&gt;))</pre><div class="attr doc"></div></div><div class="attr section inherited"><span class="attr name">plugins</span><pre class="attr value">Default value: (property)</pre><div class="attr doc"><p>Access the list of plugins managed by
 
79
this plugin manager</p>
 
80
</div></div></div></div>
 
81
<a name="BuiltinPluginManager"></a><div class="cls section"><span class="cls name">BuiltinPluginManager</span> (<a href="module_nose.plugins.manager.html#PluginManager">PluginManager</a>)<div class="cls doc"><p>Plugin manager that loads plugins from the list in
 
82
<cite>nose.plugins.builtin</cite>.</p>
 
83
<h3>Methods</h3><div class="method section inherited"><span class="method name">__init__<span class="args">(self, plugins=(), proxyClass=None)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">__iter__<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_get_plugins<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_set_plugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugin<span class="args">(self, plug)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">configure<span class="args">(self, options, config)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"><p>Configure the set of plugins with the given options
 
84
and config instance. After configuration, disabled plugins
 
85
are removed from the plugins list.</p>
 
86
</div></div><div class="method section"><span class="method name">loadPlugins<span class="args">(self)</span></span><div class="method doc"><p>Load plugins in nose.plugins.builtin</p>
 
87
</div></div><div class="method section inherited"><span class="method name">sort<span class="args">(self, cmpf=None)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><h3>Attributes</h3><div class="attr section inherited"><span class="attr name">plugins</span><pre class="attr value">Default value: (property)</pre><div class="attr doc"><p>Access the list of plugins managed by
 
88
this plugin manager</p>
 
89
</div></div></div></div>
 
90
<a name="RestrictedPluginManager"></a><div class="cls section"><span class="cls name">RestrictedPluginManager</span> (<a href="module_nose.plugins.manager.html#DefaultPluginManager">DefaultPluginManager</a>)<div class="cls doc"><p>Plugin manager that restricts the plugin list to those not
 
91
excluded by a list of exclude methods. Any plugin that implements
 
92
an excluded method will be removed from the manager's plugin list
 
93
after plugins are loaded.</p>
 
94
<h3>Methods</h3><div class="method section"><span class="method name">__init__<span class="args">(self, plugins=(), exclude=(), load=True)</span></span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">__iter__<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_get_plugins<span class="args">(self)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">_set_plugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugin<span class="args">(self, plug)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">addPlugins<span class="args">(self, plugins)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">configure<span class="args">(self, options, config)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"><p>Configure the set of plugins with the given options
 
95
and config instance. After configuration, disabled plugins
 
96
are removed from the plugins list.</p>
 
97
</div></div><div class="method section"><span class="method name">excludedOption<span class="args">(self, name)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">loadPlugins<span class="args">(self)</span></span><div class="method doc"></div></div><div class="method section inherited"><span class="method name">sort<span class="args">(self, cmpf=None)</span></span><span class="method inherited">(inherited from PluginManager)</span><div class="method doc"></div></div><h3>Attributes</h3><div class="attr section inherited"><span class="attr name">entry_points</span><pre class="attr value">Default value: ((&#39;nose.plugins.0.10&#39;, None), (&#39;nose.plugins&#39;, &lt;class nose.plugins.manager.ZeroNinePlugin&gt;))</pre><div class="attr doc"></div></div><div class="attr section inherited"><span class="attr name">plugins</span><pre class="attr value">Default value: (property)</pre><div class="attr doc"><p>Access the list of plugins managed by
 
98
this plugin manager</p>
 
99
</div></div></div></div>
 
100
<a name="PluginProxy"></a><div class="cls section"><span class="cls name">PluginProxy</span> (object)<div class="cls doc"><p>Proxy for plugin calls. Essentially a closure bound to the
 
101
given call and plugin list.</p>
 
102
<p>The plugin proxy also must be bound to a particular plugin
 
103
interface specification, so that it knows what calls are available
 
104
and any special handling that is required for each call.</p>
 
105
<h3>Methods</h3><div class="method section"><span class="method name">__call__<span class="args">(self, *arg, **kw)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">__init__<span class="args">(self, call, plugins)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">_loadTestsFromNames<span class="args">(self, names, module=None)</span></span><div class="method doc"><p>Chainable but not quite normal. Plugins return a tuple of
 
106
(tests, names) after processing the names. The tests are added
 
107
to a suite that is accumulated throughout the full call, while
 
108
names are input for the next plugin in the chain.</p>
 
109
</div></div><div class="method section"><span class="method name">addPlugin<span class="args">(self, plugin, call)</span></span><div class="method doc"><p>Add plugin to my list of plugins to call, if it has the attribute
 
110
I'm bound to.</p>
 
111
</div></div><div class="method section"><span class="method name">chain<span class="args">(self, *arg, **kw)</span></span><div class="method doc"><p>Call plugins in a chain, where the result of each plugin call is
 
112
sent to the next plugin as input. The final output result is returned.</p>
 
113
</div></div><div class="method section"><span class="method name">generate<span class="args">(self, *arg, **kw)</span></span><div class="method doc"><p>Call all plugins, yielding each item in each non-None result.</p>
 
114
</div></div><div class="method section"><span class="method name">makeCall<span class="args">(self, call)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">simple<span class="args">(self, *arg, **kw)</span></span><div class="method doc"><p>Call all plugins, returning the first non-None result.</p>
 
115
</div></div></div></div>
 
116
<a name="ZeroNinePlugin"></a><div class="cls section"><span class="cls name">ZeroNinePlugin</span> ()<div class="cls doc"><p>Proxy for 0.9 plugins, adapts 0.10 calls to 0.9 standard.</p>
 
117
<h3>Methods</h3><div class="method section"><span class="method name">__init__<span class="args">(self, plugin)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">addError<span class="args">(self, test, err)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">addFailure<span class="args">(self, test, err)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">addSuccess<span class="args">(self, test)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">loadTestsFromFile<span class="args">(self, filename)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">options<span class="args">(self, parser, env=os.environ)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">startTest<span class="args">(self, test)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">stopTest<span class="args">(self, test)</span></span><div class="method doc"></div></div></div></div>
 
118
<a name="NoPlugins"></a><div class="cls section"><span class="cls name">NoPlugins</span> (object)<div class="cls doc"><p>Null Plugin manager that has no plugins.</p>
 
119
<h3>Methods</h3><div class="method section"><span class="method name">__init__<span class="args">(self)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">__iter__<span class="args">(self)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">_doNothing<span class="args">(self, *args, **kwds)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">_emptyIterator<span class="args">(self, *args, **kwds)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">addPlugin<span class="args">(self, plug)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">addPlugins<span class="args">(self, plugins)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">configure<span class="args">(self, options, config)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">loadPlugins<span class="args">(self)</span></span><div class="method doc"></div></div><div class="method section"><span class="method name">sort<span class="args">(self, cmpf=None)</span></span><div class="method doc"></div></div></div></div>
 
120
 
 
121
    </div>
 
122
    <script src="http://www.google-analytics.com/urchin.js" 
 
123
            type="text/javascript">
 
124
    </script>
 
125
    <script type="text/javascript">
 
126
      _uacct = "UA-2236166-1";
 
127
      urchinTracker();
 
128
    </script>
 
129
  </body>
 
130
</html>
 
131