1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
|
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class options_description</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../../program_options/reference.html#header.boost.program_options.options_description_hpp" title="Header <boost/program_options/options_description.hpp>">
<link rel="prev" href="options_descri_idp94227496.html" title="Class options_description_easy_init">
<link rel="next" href="duplicate_option_error.html" title="Class duplicate_option_error">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="options_descri_idp94227496.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../program_options/reference.html#header.boost.program_options.options_description_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="duplicate_option_error.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.program_options.options_description"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class options_description</span></h2>
<p>boost::program_options::options_description</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: <<a class="link" href="../../program_options/reference.html#header.boost.program_options.options_description_hpp" title="Header <boost/program_options/options_description.hpp>">boost/program_options/options_description.hpp</a>>
</span>
<span class="keyword">class</span> <a class="link" href="options_description.html" title="Class options_description">options_description</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
<span class="comment">// <a class="link" href="options_description.html#boost.program_options.options_descriptionconstruct-copy-destruct">construct/copy/destruct</a></span>
<a class="link" href="options_description.html#idp97874056-bb"><span class="identifier">options_description</span></a><span class="special">(</span><span class="keyword">unsigned</span> <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">,</span>
<span class="keyword">unsigned</span> <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">/</span><span class="number">2</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="options_description.html#idp102361560-bb"><span class="identifier">options_description</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">,</span>
<span class="keyword">unsigned</span> <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">/</span><span class="number">2</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// <a class="link" href="options_description.html#idp101533784-bb">public member functions</a></span>
<span class="keyword">void</span> <a class="link" href="options_description.html#idp101533960-bb"><span class="identifier">add</span></a><span class="special">(</span><span class="identifier">shared_ptr</span><span class="special"><</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">></span><span class="special">)</span><span class="special">;</span>
<a class="link" href="options_description.html" title="Class options_description">options_description</a> <span class="special">&</span> <a class="link" href="options_description.html#idp101535208-bb"><span class="identifier">add</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="options_description.html" title="Class options_description">options_description</a> <span class="special">&</span><span class="special">)</span><span class="special">;</span>
<a class="link" href="options_descri_idp94227496.html" title="Class options_description_easy_init">options_description_easy_init</a> <a class="link" href="options_description.html#idp97723064-bb"><span class="identifier">add_options</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">const</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">&</span>
<a class="link" href="options_description.html#idp103481256-bb"><span class="identifier">find</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">,</span> <span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">false</span><span class="special">,</span> <span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">const</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">*</span>
<a class="link" href="options_description.html#idp102023528-bb"><span class="identifier">find_nothrow</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">,</span> <span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">false</span><span class="special">,</span> <span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span> <span class="identifier">shared_ptr</span><span class="special"><</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">></span> <span class="special">></span> <span class="special">&</span> <a class="link" href="options_description.html#idp101365608-bb"><span class="identifier">options</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="keyword">void</span> <a class="link" href="options_description.html#idp94020216-bb"><span class="identifier">print</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="comment">// <a class="link" href="options_description.html#idp101595256-bb">friend functions</a></span>
<span class="keyword">friend</span> <span class="identifier">BOOST_PROGRAM_OPTIONS_DECL</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&</span>
<a class="link" href="options_description.html#idp101595432-bb"><span class="keyword">operator</span><span class="special"><<</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="options_description.html" title="Class options_description">options_description</a> <span class="special">&</span><span class="special">)</span><span class="special">;</span>
<span class="comment">// public data members</span>
<span class="keyword">static</span> <span class="keyword">const</span> <span class="keyword">unsigned</span> <span class="identifier">m_default_line_length</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="idp164474984"></a><h2>Description</h2>
<p>A set of option descriptions. This provides convenient interface for adding new option (the add_options) method, and facilities to search for options by name.</p>
<p>See here for option adding interface discussion. </p>
<p><span class="bold"><strong>See Also:</strong></span></p>
<p><a class="link" href="option_description.html" title="Class option_description">option_description</a> </p>
<p>
</p>
<div class="refsect2">
<a name="idp164476664"></a><h3>
<a name="boost.program_options.options_descriptionconstruct-copy-destruct"></a><code class="computeroutput">options_description</code>
public
construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><a name="idp97874056-bb"></a><span class="identifier">options_description</span><span class="special">(</span><span class="keyword">unsigned</span> line_length <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">,</span>
<span class="keyword">unsigned</span> min_description_length <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">/</span><span class="number">2</span><span class="special">)</span><span class="special">;</span></pre>
<p>Creates the instance. </p>
</li>
<li class="listitem">
<pre class="literallayout"><a name="idp102361560-bb"></a><span class="identifier">options_description</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&</span> caption<span class="special">,</span>
<span class="keyword">unsigned</span> line_length <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">,</span>
<span class="keyword">unsigned</span> min_description_length <span class="special">=</span> <span class="identifier">m_default_line_length</span><span class="special">/</span><span class="number">2</span><span class="special">)</span><span class="special">;</span></pre>
<p>Creates the instance. The 'caption' parameter gives the name of this '<code class="computeroutput"><a class="link" href="options_description.html" title="Class options_description">options_description</a></code>' instance. Primarily useful for output. The 'description_length' specifies the number of columns that should be reserved for the description text; if the option text encroaches into this, then the description will start on the next line. </p>
</li>
</ol></div>
</div>
<div class="refsect2">
<a name="idp164490136"></a><h3>
<a name="idp101533784-bb"></a><code class="computeroutput">options_description</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idp101533960-bb"></a><span class="identifier">add</span><span class="special">(</span><span class="identifier">shared_ptr</span><span class="special"><</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">></span> desc<span class="special">)</span><span class="special">;</span></pre>
<p>Adds new variable description. Throws duplicate_variable_error if either short or long name matches that of already present one. </p>
</li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="options_description.html" title="Class options_description">options_description</a> <span class="special">&</span> <a name="idp101535208-bb"></a><span class="identifier">add</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="options_description.html" title="Class options_description">options_description</a> <span class="special">&</span> desc<span class="special">)</span><span class="special">;</span></pre>
<p>Adds a group of option description. This has the same effect as adding all option_descriptions in 'desc' individually, except that output operator will show a separate group. Returns *this. </p>
</li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="options_descri_idp94227496.html" title="Class options_description_easy_init">options_description_easy_init</a> <a name="idp97723064-bb"></a><span class="identifier">add_options</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>
<p>Returns an object of implementation-defined type suitable for adding options to <code class="computeroutput"><a class="link" href="options_description.html" title="Class options_description">options_description</a></code>. The returned object will have overloaded operator() with parameter type matching '<code class="computeroutput"><a class="link" href="option_description.html" title="Class option_description">option_description</a></code>' constructors. Calling the operator will create new <code class="computeroutput"><a class="link" href="option_description.html" title="Class option_description">option_description</a></code> instance and add it. </p>
</li>
<li class="listitem"><pre class="literallayout"><span class="keyword">const</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">&</span>
<a name="idp103481256-bb"></a><span class="identifier">find</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&</span> name<span class="special">,</span> <span class="keyword">bool</span> approx<span class="special">,</span> <span class="keyword">bool</span> long_ignore_case <span class="special">=</span> <span class="keyword">false</span><span class="special">,</span>
<span class="keyword">bool</span> short_ignore_case <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">const</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">*</span>
<a name="idp102023528-bb"></a><span class="identifier">find_nothrow</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&</span> name<span class="special">,</span> <span class="keyword">bool</span> approx<span class="special">,</span>
<span class="keyword">bool</span> long_ignore_case <span class="special">=</span> <span class="keyword">false</span><span class="special">,</span> <span class="keyword">bool</span> short_ignore_case <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem"><pre class="literallayout"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span> <span class="identifier">shared_ptr</span><span class="special"><</span> <a class="link" href="option_description.html" title="Class option_description">option_description</a> <span class="special">></span> <span class="special">></span> <span class="special">&</span> <a name="idp101365608-bb"></a><span class="identifier">options</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">void</span> <a name="idp94020216-bb"></a><span class="identifier">print</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&</span> os<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
<p>Outputs 'desc' to the specified stream, calling 'f' to output each <code class="computeroutput"><a class="link" href="option_description.html" title="Class option_description">option_description</a></code> element. </p>
</li>
</ol></div>
</div>
<div class="refsect2">
<a name="idp164529864"></a><h3>
<a name="idp101595256-bb"></a><code class="computeroutput">options_description</code> friend functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
<pre class="literallayout"><span class="keyword">friend</span> <span class="identifier">BOOST_PROGRAM_OPTIONS_DECL</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&</span>
<a name="idp101595432-bb"></a><span class="keyword">operator</span><span class="special"><<</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span> <span class="special">&</span> os<span class="special">,</span> <span class="keyword">const</span> <a class="link" href="options_description.html" title="Class options_description">options_description</a> <span class="special">&</span> desc<span class="special">)</span><span class="special">;</span></pre>
<p>Produces a human readable output of 'desc', listing options, their descriptions and allowed parameters. Other <code class="computeroutput"><a class="link" href="options_description.html" title="Class options_description">options_description</a></code> instances previously passed to add will be output separately. </p>
</li></ol></div>
</div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2002-2004 Vladimir Prus<p>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <code class="filename">LICENSE_1_0.txt</code> or copy at
<a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="options_descri_idp94227496.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../program_options/reference.html#header.boost.program_options.options_description_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="duplicate_option_error.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
|