summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorsteven.bethard <devnull@localhost>2009-03-28 14:56:14 +0000
committersteven.bethard <devnull@localhost>2009-03-28 14:56:14 +0000
commite32dd0b388e1d8fe0ddb23ba2271c2a71fedc63f (patch)
tree0c1c5395bc66701f359810e7b6a9274014559fed /doc
parent578a0bdff8813fb5c4f239ee096b75f387da3529 (diff)
downloadargparse-e32dd0b388e1d8fe0ddb23ba2271c2a71fedc63f.tar.gz
No really, add documentation for FileType.
Diffstat (limited to 'doc')
-rw-r--r--doc/other-utilities.html130
-rw-r--r--doc/source/other-utilities.rst21
2 files changed, 151 insertions, 0 deletions
diff --git a/doc/other-utilities.html b/doc/other-utilities.html
new file mode 100644
index 0000000..7a63463
--- /dev/null
+++ b/doc/other-utilities.html
@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+ <title>Other utilities &mdash; argparse v0.9.0 documentation</title>
+ <link rel="stylesheet" href="_static/default.css" type="text/css" />
+ <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+ <script type="text/javascript">
+ var DOCUMENTATION_OPTIONS = {
+ URL_ROOT: '',
+ VERSION: '0.9.0',
+ COLLAPSE_MODINDEX: false,
+ FILE_SUFFIX: '.html',
+ HAS_SOURCE: true
+ };
+ </script>
+ <script type="text/javascript" src="_static/jquery.js"></script>
+ <script type="text/javascript" src="_static/doctools.js"></script>
+ <link rel="top" title="argparse v0.9.0 documentation" href="index.html" />
+ <link rel="up" title="API documentation" href="api-docs.html" />
+ <link rel="prev" title="Other methods" href="other-methods.html" />
+ </head>
+ <body>
+ <div class="related">
+ <h3>Navigation</h3>
+ <ul>
+ <li class="right" style="margin-right: 10px">
+ <a href="genindex.html" title="General Index"
+ accesskey="I">index</a></li>
+ <li class="right" >
+ <a href="other-methods.html" title="Other methods"
+ accesskey="P">previous</a> |</li>
+ <li><a href="index.html">argparse v0.9.0 documentation</a> &raquo;</li>
+ <li><a href="api-docs.html" accesskey="U">API documentation</a> &raquo;</li>
+ </ul>
+ </div>
+
+ <div class="document">
+ <div class="documentwrapper">
+ <div class="bodywrapper">
+ <div class="body">
+
+ <div class="section" id="other-utilities">
+<h1>Other utilities<a class="headerlink" href="#other-utilities" title="Permalink to this headline">¶</a></h1>
+<div class="section" id="filetype-objects">
+<h2>FileType objects<a class="headerlink" href="#filetype-objects" title="Permalink to this headline">¶</a></h2>
+<dl class="class">
+<dt id="FileType">
+<em class="property">
+class </em><tt class="descname">FileType</tt><big>(</big><em>mode='r'</em>, <em>bufsize=None</em><big>)</big><a class="headerlink" href="#FileType" title="Permalink to this definition">¶</a></dt>
+<dd><p>The <a title="FileType" class="reference internal" href="#FileType"><tt class="xref docutils literal"><span class="pre">FileType</span></tt></a> factory creates objects that can be passed to the type argument of <a title="add_argument" class="reference external" href="add_argument.html#add_argument"><tt class="xref docutils literal"><span class="pre">add_argument()</span></tt></a>. Arguments that have <a title="FileType" class="reference internal" href="#FileType"><tt class="xref docutils literal"><span class="pre">FileType</span></tt></a> objects as their type will open command-line args as files with the requested modes and buffer sizes:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">parser</span> <span class="o">=</span> <span class="n">argparse</span><span class="o">.</span><span class="n">ArgumentParser</span><span class="p">()</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">parser</span><span class="o">.</span><span class="n">add_argument</span><span class="p">(</span><span class="s">&#39;--output&#39;</span><span class="p">,</span> <span class="nb">type</span><span class="o">=</span><span class="n">argparse</span><span class="o">.</span><span class="n">FileType</span><span class="p">(</span><span class="s">&#39;wb&#39;</span><span class="p">,</span> <span class="mf">0</span><span class="p">))</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">parser</span><span class="o">.</span><span class="n">parse_args</span><span class="p">([</span><span class="s">&#39;--output&#39;</span><span class="p">,</span> <span class="s">&#39;out&#39;</span><span class="p">])</span>
+<span class="go">Namespace(output=&lt;open file &#39;out&#39;, mode &#39;wb&#39; at 0x013A2380&gt;)</span>
+</pre></div>
+</div>
+<p>FileType objects understand the pseudo-argument <tt class="docutils literal"><span class="pre">'-'</span></tt> and automatically convert this into <tt class="docutils literal"><span class="pre">sys.stdin</span></tt> for readable <a title="FileType" class="reference internal" href="#FileType"><tt class="xref docutils literal"><span class="pre">FileType</span></tt></a> objects and <tt class="docutils literal"><span class="pre">sys.stdout</span></tt> for writable <a title="FileType" class="reference internal" href="#FileType"><tt class="xref docutils literal"><span class="pre">FileType</span></tt></a> objects:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">parser</span> <span class="o">=</span> <span class="n">argparse</span><span class="o">.</span><span class="n">ArgumentParser</span><span class="p">()</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">parser</span><span class="o">.</span><span class="n">add_argument</span><span class="p">(</span><span class="s">&#39;infile&#39;</span><span class="p">,</span> <span class="nb">type</span><span class="o">=</span><span class="n">argparse</span><span class="o">.</span><span class="n">FileType</span><span class="p">(</span><span class="s">&#39;r&#39;</span><span class="p">))</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">parser</span><span class="o">.</span><span class="n">parse_args</span><span class="p">([</span><span class="s">&#39;-&#39;</span><span class="p">])</span>
+<span class="go">Namespace(infile=&lt;open file &#39;&lt;stdin&gt;&#39;, mode &#39;r&#39; at 0x00ADF020&gt;)</span>
+</pre></div>
+</div>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ </div>
+ </div>
+ <div class="sphinxsidebar">
+ <div class="sphinxsidebarwrapper">
+ <h3><a href="index.html">Table Of Contents</a></h3>
+ <ul>
+<li><a class="reference external" href="">Other utilities</a><ul>
+<li><a class="reference external" href="#filetype-objects">FileType objects</a></li>
+</ul>
+</li>
+</ul>
+
+ <h4>Previous topic</h4>
+ <p class="topless"><a href="other-methods.html"
+ title="previous chapter">Other methods</a></p>
+ <h3>This Page</h3>
+ <ul class="this-page-menu">
+ <li><a href="_sources/other-utilities.txt"
+ rel="nofollow">Show Source</a></li>
+ </ul>
+ <div id="searchbox" style="display: none">
+ <h3>Quick search</h3>
+ <form class="search" action="search.html" method="get">
+ <input type="text" name="q" size="18" />
+ <input type="submit" value="Go" />
+ <input type="hidden" name="check_keywords" value="yes" />
+ <input type="hidden" name="area" value="default" />
+ </form>
+ <p class="searchtip" style="font-size: 90%">
+ Enter search terms or a module, class or function name.
+ </p>
+ </div>
+ <script type="text/javascript">$('#searchbox').show(0);</script>
+ </div>
+ </div>
+ <div class="clearer"></div>
+ </div>
+ <div class="related">
+ <h3>Navigation</h3>
+ <ul>
+ <li class="right" style="margin-right: 10px">
+ <a href="genindex.html" title="General Index"
+ >index</a></li>
+ <li class="right" >
+ <a href="other-methods.html" title="Other methods"
+ >previous</a> |</li>
+ <li><a href="index.html">argparse v0.9.0 documentation</a> &raquo;</li>
+ <li><a href="api-docs.html" >API documentation</a> &raquo;</li>
+ </ul>
+ </div>
+ <div class="footer">
+ &copy; Copyright 2006-2009, Steven Bethard.
+ Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.1.
+ </div>
+ </body>
+</html> \ No newline at end of file
diff --git a/doc/source/other-utilities.rst b/doc/source/other-utilities.rst
new file mode 100644
index 0000000..9fd9d61
--- /dev/null
+++ b/doc/source/other-utilities.rst
@@ -0,0 +1,21 @@
+Other utilities
+===============
+
+FileType objects
+----------------
+
+.. class:: FileType(mode='r', bufsize=None)
+
+ The :class:`FileType` factory creates objects that can be passed to the type argument of :meth:`add_argument`. Arguments that have :class:`FileType` objects as their type will open command-line args as files with the requested modes and buffer sizes:
+
+ >>> parser = argparse.ArgumentParser()
+ >>> parser.add_argument('--output', type=argparse.FileType('wb', 0))
+ >>> parser.parse_args(['--output', 'out'])
+ Namespace(output=<open file 'out', mode 'wb' at 0x013A2380>)
+
+ FileType objects understand the pseudo-argument ``'-'`` and automatically convert this into ``sys.stdin`` for readable :class:`FileType` objects and ``sys.stdout`` for writable :class:`FileType` objects:
+
+ >>> parser = argparse.ArgumentParser()
+ >>> parser.add_argument('infile', type=argparse.FileType('r'))
+ >>> parser.parse_args(['-'])
+ Namespace(infile=<open file '<stdin>', mode 'r' at 0x00ADF020>)