mirror of
https://github.com/clap-rs/clap
synced 2025-03-04 15:27:16 +00:00
docs(clap): rebuild documentation
This commit is contained in:
parent
24ec2da5bf
commit
ad43f3a5ea
10 changed files with 162 additions and 124 deletions
|
@ -43,7 +43,7 @@
|
|||
<section id='main' class="content mod">
|
||||
<h1 class='fqn'><span class='in-band'>Crate <a class='mod' href=''>clap</a><wbr></span><span class='out-of-band'><a href='stability.html'>[stability]</a> <span id='render-detail'>
|
||||
<a id="collapse-all" href="#">[-]</a> <a id="expand-all" href="#">[+]</a>
|
||||
</span><a id='src-0' href='../src/clap/lib.rs.html#1-259'>[src]</a></span></h1>
|
||||
</span><a id='src-0' href='../src/clap/lib.rs.html#1-272'>[src]</a></span></h1>
|
||||
<div class='docblock'>
|
||||
<h1 id="clap" class='section-header'><a
|
||||
href="#clap">clap</a></h1>
|
||||
|
@ -72,7 +72,7 @@
|
|||
.<span class='ident'>version</span>(<span class='string'>"1.0"</span>)
|
||||
.<span class='ident'>author</span>(<span class='string'>"Kevin K. <kbknapp@gmail.com>"</span>)
|
||||
.<span class='ident'>about</span>(<span class='string'>"Does awesome things"</span>)
|
||||
.<span class='ident'>arg</span>(<span class='ident'>Arg</span>::<span class='ident'>new</span>(<span class='string'>"config"</span>)
|
||||
.<span class='ident'>arg</span>(<span class='ident'>Arg</span>::<span class='ident'>new</span>(<span class='string'>"CONFIG"</span>)
|
||||
.<span class='ident'>short</span>(<span class='string'>"c"</span>)
|
||||
.<span class='ident'>long</span>(<span class='string'>"config"</span>)
|
||||
.<span class='ident'>help</span>(<span class='string'>"Sets a custom config file"</span>)
|
||||
|
@ -95,7 +95,7 @@
|
|||
<span class='macro'>println</span><span class='macro'>!</span>(<span class='string'>"Value for output: {}"</span>, <span class='ident'>o</span>);
|
||||
}
|
||||
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='ident'>c</span>) <span class='op'>=</span> <span class='ident'>matches</span>.<span class='ident'>value_of</span>(<span class='string'>"config"</span>) {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='ident'>c</span>) <span class='op'>=</span> <span class='ident'>matches</span>.<span class='ident'>value_of</span>(<span class='string'>"CONFIG"</span>) {
|
||||
<span class='macro'>println</span><span class='macro'>!</span>(<span class='string'>"Value for config: {}"</span>, <span class='ident'>c</span>);
|
||||
}
|
||||
|
||||
|
@ -134,7 +134,7 @@ FLAGS:
|
|||
-v,--version Prints version information
|
||||
|
||||
OPTIONS:
|
||||
-c,--config <config> Sets a custom config file
|
||||
-c,--config=CONFIG Sets a custom config file
|
||||
|
||||
POSITIONAL ARGUMENTS:
|
||||
output Sets an optional output file
|
||||
|
@ -172,9 +172,19 @@ SUBCOMMANDS:
|
|||
|
||||
<h2 id="how-to-build" class='section-header'><a
|
||||
href="#how-to-build">How to build</a></h2>
|
||||
<p>Clone the repo (<code>master</code> branch if using <code>clap</code>, <code>dev</code> branch if contributing) and build with Cargo</p>
|
||||
<pre id='rust-example-rendered' class='rust '>
|
||||
<span class='ident'>git</span> <span class='ident'>clone</span> <span class='ident'>https</span>:<span class='comment'>//github.com/kbknapp/clap-rs</span>
|
||||
<span class='ident'>cd</span> <span class='ident'>clap</span><span class='op'>-</span><span class='ident'>rs</span>
|
||||
<span class='ident'>cargo</span> <span class='ident'>build</span> <span class='op'>-</span><span class='op'>-</span><span class='ident'>release</span>
|
||||
</pre>
|
||||
|
||||
<h3 id="running-the-tests" class='section-header'><a
|
||||
href="#running-the-tests">Running the tests</a></h3><pre id='rust-example-rendered' class='rust '>
|
||||
<span class='ident'>cargo</span> <span class='ident'>test</span>
|
||||
href="#running-the-tests">Running the tests</a></h3>
|
||||
<p>If contributing, you can run the tests as follows (assuming you've already cloned the repo to <code>clap-rs/</code></p>
|
||||
<pre id='rust-example-rendered' class='rust '>
|
||||
<span class='ident'>cd</span> <span class='ident'>clap</span><span class='op'>-</span><span class='ident'>rs</span><span class='op'>/</span><span class='ident'>claptests</span>
|
||||
<span class='ident'>make</span> <span class='ident'>test</span>
|
||||
</pre>
|
||||
|
||||
<h3 id="building-the-documentation" class='section-header'><a
|
||||
|
@ -183,6 +193,8 @@ SUBCOMMANDS:
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
<span class='ident'>make</span> <span class='ident'>doc</span>
|
||||
</pre>
|
||||
|
||||
<p>Then browse to <code>clap-rs/docs/index.html</code> in your web-browser of choice</p>
|
||||
</div><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
|
||||
<table>
|
||||
<tr>
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
<h1 class='fqn'><span class='in-band'>Struct <a href='index.html'>clap</a>::<wbr><a class='struct' href=''>App</a><wbr></span><span class='out-of-band'><span id='render-detail'>
|
||||
<a id="collapse-all" href="#">[-]</a> <a id="expand-all" href="#">[+]</a>
|
||||
</span><a id='src-33' href='../src/clap/app.rs.html#39-65'>[src]</a></span></h1>
|
||||
<pre class='rust struct'>pub struct App<'a, 'v, 'ab, 'u> {
|
||||
<pre class='rust struct'>pub struct App<'a, 'v, 'ab, 'u, 'ar> {
|
||||
// some fields omitted
|
||||
}</pre><div class='docblock'><p>Used to create a representation of the program and all possible command line arguments
|
||||
for parsing at runtime.</p>
|
||||
|
@ -66,7 +66,7 @@ help and versioning information.</p>
|
|||
|
||||
<span class='comment'>// Your pogram logic starts here...</span>
|
||||
</pre>
|
||||
</div><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl<'a, 'v, 'ab, 'u> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a><'n>(n: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl<'a, 'v, 'ab, 'u, 'ar> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a><'n>(n: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Creates a new instance of an application requiring a name (such as the binary). Will be displayed
|
||||
to the user when they print version or help and usage information.</p>
|
||||
|
||||
|
@ -74,28 +74,28 @@ to the user when they print version or help and usage information.</p>
|
|||
href="#example">Example</a></h1><pre id='rust-example-rendered' class='rust '>
|
||||
<span class='kw'>let</span> <span class='ident'>prog</span> <span class='op'>=</span> <span class='ident'>App</span>::<span class='ident'>new</span>(<span class='string'>"myprog"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.author' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.author' class='fnname'>author</a>(self, a: &'a <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.author' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.author' class='fnname'>author</a>(self, a: &'a <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Sets a string of author(s)</p>
|
||||
|
||||
<h1 id="example" class='section-header'><a
|
||||
href="#example">Example</a></h1><pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>author</span>(<span class='string'>"Kevin <kbknapp@gmail.com>"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.about' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.about' class='fnname'>about</a>(self, a: &'ab <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.about' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.about' class='fnname'>about</a>(self, a: &'ab <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Sets a string briefly describing what the program does</p>
|
||||
|
||||
<h1 id="example" class='section-header'><a
|
||||
href="#example">Example</a></h1><pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>about</span>(<span class='string'>"Does really amazing things to great people"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.version' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.version' class='fnname'>version</a>(self, v: &'v <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.version' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.version' class='fnname'>version</a>(self, v: &'v <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Sets a string of the version number</p>
|
||||
|
||||
<h1 id="example" class='section-header'><a
|
||||
href="#example">Example</a></h1><pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>version</span>(<span class='string'>"v0.1.24"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.usage' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.usage' class='fnname'>usage</a>(self, u: &'u <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.usage' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.usage' class='fnname'>usage</a>(self, u: &'u <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Sets a custom usage string to over-ride the one auto-generated by <code>clap</code></p>
|
||||
|
||||
<p><em>NOTE:</em> You do not need to specify the "USAGE: " portion, as that will
|
||||
|
@ -109,7 +109,7 @@ showing the usage.</p>
|
|||
href="#example">Example</a></h1><pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>usage</span>(<span class='string'>"myapp [-clDas] <some_file>"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.arg' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.arg' class='fnname'>arg</a>(self, a: <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.arg' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.arg' class='fnname'>arg</a><'l, 'h, 'b, 'r>(self, a: <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'ar, 'ar, 'ar, 'ar, 'ar>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Adds an argument to the list of valid possibilties</p>
|
||||
|
||||
<h1 id="example" class='section-header'><a
|
||||
|
@ -119,7 +119,7 @@ showing the usage.</p>
|
|||
<span class='comment'>// Additional argument configuration goes here...</span>
|
||||
)
|
||||
</pre>
|
||||
</div><h4 id='method.args' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.args' class='fnname'>args</a>(self, args: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><<a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a>>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.args' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.args' class='fnname'>args</a>(self, args: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><<a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'ar, 'ar, 'ar, 'ar, 'ar>>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Adds multiple arguments to the list of valid possibilties</p>
|
||||
|
||||
<h1 id="example" class='section-header'><a
|
||||
|
@ -127,7 +127,7 @@ showing the usage.</p>
|
|||
.<span class='ident'>args</span>( <span class='macro'>vec</span><span class='macro'>!</span>[<span class='ident'>Arg</span>::<span class='ident'>new</span>(<span class='string'>"config"</span>).<span class='ident'>short</span>(<span class='string'>"c"</span>),
|
||||
<span class='ident'>Arg</span>::<span class='ident'>new</span>(<span class='string'>"debug"</span>).<span class='ident'>short</span>(<span class='string'>"d"</span>)])
|
||||
</pre>
|
||||
</div><h4 id='method.subcommand' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.subcommand' class='fnname'>subcommand</a>(self, subcmd: <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.subcommand' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.subcommand' class='fnname'>subcommand</a>(self, subcmd: <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Adds a subcommand to the list of valid possibilties. Subcommands
|
||||
are effectively sub apps, because they can contain their own arguments
|
||||
and subcommands. They also function just like apps, in that they get their
|
||||
|
@ -142,7 +142,7 @@ own auto generated help and version switches.</p>
|
|||
.<span class='ident'>help</span>(<span class='string'>"Configuration file to use"</span>)))
|
||||
<span class='comment'>// Additional subcommand configuration goes here, such as arguments...</span>
|
||||
</pre>
|
||||
</div><h4 id='method.subcommands' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.subcommands' class='fnname'>subcommands</a>(self, subcmds: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><<a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u>>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
</div><h4 id='method.subcommands' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.subcommands' class='fnname'>subcommands</a>(self, subcmds: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><<a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar>>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Adds multiple subcommands to the list of valid possibilties</p>
|
||||
|
||||
<h1 id="example" class='section-header'><a
|
||||
|
@ -152,7 +152,7 @@ own auto generated help and version switches.</p>
|
|||
.<span class='ident'>arg</span>(<span class='ident'>Arg</span>::<span class='ident'>new</span>(<span class='string'>"config_file"</span>).<span class='ident'>index</span>(<span class='number'>1</span>)),
|
||||
<span class='ident'>SubCommand</span>::<span class='ident'>new</span>(<span class='string'>"debug"</span>).<span class='ident'>about</span>(<span class='string'>"Controls debug functionality"</span>)])
|
||||
</pre>
|
||||
</div><h4 id='method.get_matches' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.get_matches' class='fnname'>get_matches</a>(self) -> <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a></code></h4>
|
||||
</div><h4 id='method.get_matches' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.get_matches' class='fnname'>get_matches</a>(self) -> <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a><'ar></code></h4>
|
||||
</div></section>
|
||||
<section id='search' class="content hidden"></section>
|
||||
|
||||
|
|
|
@ -43,18 +43,18 @@
|
|||
<section id='main' class="content struct">
|
||||
<h1 class='fqn'><span class='in-band'>Struct <a href='index.html'>clap</a>::<wbr><a class='struct' href=''>Arg</a><wbr></span><span class='out-of-band'><span id='render-detail'>
|
||||
<a id="collapse-all" href="#">[-]</a> <a id="expand-all" href="#">[+]</a>
|
||||
</span><a id='src-5701' href='../src/clap/args/arg.rs.html#21-53'>[src]</a></span></h1>
|
||||
<pre class='rust struct'>pub struct Arg {
|
||||
pub name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>,
|
||||
</span><a id='src-5743' href='../src/clap/args/arg.rs.html#21-53'>[src]</a></span></h1>
|
||||
<pre class='rust struct'>pub struct Arg<'n, 'l, 'h, 'b, 'r> {
|
||||
pub name: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>,
|
||||
pub short: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a href='http://doc.rust-lang.org/nightly/std/primitive.char.html'>char</a>>,
|
||||
pub long: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>,
|
||||
pub help: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>,
|
||||
pub long: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&'l <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>,
|
||||
pub help: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&'h <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>,
|
||||
pub required: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>,
|
||||
pub takes_value: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>,
|
||||
pub index: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a href='http://doc.rust-lang.org/nightly/std/primitive.u8.html'>u8</a>>,
|
||||
pub multiple: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>,
|
||||
pub blacklist: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>>,
|
||||
pub requires: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>>,
|
||||
pub blacklist: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'b <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>>,
|
||||
pub requires: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'r <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>>,
|
||||
}</pre><div class='docblock'><p>The abstract representation of a command line argument used by the consumer of the library.</p>
|
||||
|
||||
<p>This struct is used by the library consumer and describes the command line arguments for
|
||||
|
@ -92,7 +92,7 @@ I.e. <code>-v -v -v</code> or <code>-vvv</code></p>
|
|||
</div></td></tr><tr><td id='structfield.blacklist'><a class='stability Unmarked' title='No stability level'></a><code>blacklist</code></td><td><div class='docblock'><p>A list of names for other arguments that <em>may not</em> be used with this flag</p>
|
||||
</div></td></tr><tr><td id='structfield.requires'><a class='stability Unmarked' title='No stability level'></a><code>requires</code></td><td><div class='docblock'><p>A list of names of other arguments that are <em>required</em> to be used when
|
||||
this flag is used</p>
|
||||
</div></td></tr></table><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a>(n: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div></td></tr></table><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl<'n, 'l, 'h, 'b, 'r> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a>(n: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Creates a new instace of <code>Arg</code> using a unique string name.
|
||||
The name will be used by the library consumer to get information about
|
||||
whether or not the argument was used at runtime. </p>
|
||||
|
@ -105,7 +105,7 @@ be displayed when the user prints the usage/help information of the program.</p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
<span class='ident'>Arg</span>::<span class='ident'>new</span>(<span class='string'>"conifg"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.short' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.short' class='fnname'>short</a>(self, s: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.short' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.short' class='fnname'>short</a>(self, s: &<a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets the short version of the argument without the preceding <code>-</code>.</p>
|
||||
|
||||
<p>By default <code>clap</code> automatically assigns <code>v</code> and <code>h</code> to display version and help information
|
||||
|
@ -119,7 +119,7 @@ Example:</p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>short</span>(<span class='string'>"c"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.long' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.long' class='fnname'>long</a>(self, l: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.long' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.long' class='fnname'>long</a>(self, l: &'l <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets the long version of the argument without the preceding <code>--</code>.</p>
|
||||
|
||||
<p>By default <code>clap</code> automatically assigns <code>version</code> and <code>help</code> to display version and help information
|
||||
|
@ -134,7 +134,7 @@ when the user mistakenly sets the short to <code>--out</code> or the like.</p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>long</span>(<span class='string'>"config"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.help' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.help' class='fnname'>help</a>(self, h: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.help' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.help' class='fnname'>help</a>(self, h: &'h <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets the help text of the argument that will be displayed to the user
|
||||
when they print the usage/help information. </p>
|
||||
|
||||
|
@ -142,7 +142,7 @@ when they print the usage/help information. </p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>help</span>(<span class='string'>"The config file used by the myprog"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.required' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.required' class='fnname'>required</a>(self, r: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.required' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.required' class='fnname'>required</a>(self, r: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets whether or not the argument is required by default. Required by
|
||||
default means it is required, when no other mutually exlusive rules have
|
||||
been evaluated. Mutually exclusive rules take precedence over being required
|
||||
|
@ -156,7 +156,7 @@ when they print the usage/help information. </p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>required</span>(<span class='boolval'>true</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.mutually_excludes' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.mutually_excludes' class='fnname'>mutually_excludes</a>(self, name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.mutually_excludes' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.mutually_excludes' class='fnname'>mutually_excludes</a>(self, name: &'b <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets a mutually exclusive argument by name. I.e. when using this argument,
|
||||
the following argument can't be present.</p>
|
||||
|
||||
|
@ -168,7 +168,7 @@ arguments, they do not need to be set for each.</p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>mutually_excludes</span>(<span class='string'>"debug"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.mutually_excludes_all' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.mutually_excludes_all' class='fnname'>mutually_excludes_all</a>(self, names: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.mutually_excludes_all' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.mutually_excludes_all' class='fnname'>mutually_excludes_all</a>(self, names: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'b <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets a mutually exclusive arguments by names. I.e. when using this argument,
|
||||
the following argument can't be present.</p>
|
||||
|
||||
|
@ -181,7 +181,7 @@ arguments, they do not need to be set for each.</p>
|
|||
.<span class='ident'>mutually_excludes_all</span>(
|
||||
<span class='macro'>vec</span><span class='macro'>!</span>[<span class='string'>"debug"</span>, <span class='string'>"input"</span>])
|
||||
</pre>
|
||||
</div><h4 id='method.requires' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.requires' class='fnname'>requires</a>(self, name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.requires' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.requires' class='fnname'>requires</a>(self, name: &'r <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets an argument by name that is required when this one is presnet I.e. when
|
||||
using this argument, the following argument <em>must</em> be present.</p>
|
||||
|
||||
|
@ -191,7 +191,7 @@ using this argument, the following argument <em>must</em> be present.</p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>requires</span>(<span class='string'>"debug"</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.requires_all' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.requires_all' class='fnname'>requires_all</a>(self, names: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.requires_all' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.requires_all' class='fnname'>requires_all</a>(self, names: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&'r <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Sets arguments by names that are required when this one is presnet I.e. when
|
||||
using this argument, the following arguments <em>must</em> be present.</p>
|
||||
|
||||
|
@ -203,7 +203,7 @@ by default. </p>
|
|||
.<span class='ident'>requires_all</span>(
|
||||
<span class='macro'>vec</span><span class='macro'>!</span>[<span class='string'>"debug"</span>, <span class='string'>"input"</span>])
|
||||
</pre>
|
||||
</div><h4 id='method.takes_value' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.takes_value' class='fnname'>takes_value</a>(self, tv: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.takes_value' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.takes_value' class='fnname'>takes_value</a>(self, tv: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Specifies that the argument takes an additional value at run time.</p>
|
||||
|
||||
<p><strong>NOTE:</strong> When setting this to <code>true</code> the <code>name</code> of the argument
|
||||
|
@ -213,7 +213,7 @@ will be used when printing the help/usage information to the user. </p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>takes_value</span>(<span class='boolval'>true</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.index' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.index' class='fnname'>index</a>(self, idx: <a href='http://doc.rust-lang.org/nightly/std/primitive.u8.html'>u8</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.index' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.index' class='fnname'>index</a>(self, idx: <a href='http://doc.rust-lang.org/nightly/std/primitive.u8.html'>u8</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Specifies the index of a positional argument starting at 1.</p>
|
||||
|
||||
<p><strong>NOTE:</strong> When setting this, any <code>short</code> or <code>long</code> values you set
|
||||
|
@ -225,7 +225,7 @@ to the user. </p>
|
|||
<pre id='rust-example-rendered' class='rust '>
|
||||
.<span class='ident'>index</span>(<span class='number'>1</span>)
|
||||
</pre>
|
||||
</div><h4 id='method.multiple' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.multiple' class='fnname'>multiple</a>(self, multi: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a></code></h4>
|
||||
</div><h4 id='method.multiple' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.multiple' class='fnname'>multiple</a>(self, multi: <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a>) -> <a class='struct' href='../clap/struct.Arg.html' title='clap::Arg'>Arg</a><'n, 'l, 'h, 'b, 'r></code></h4>
|
||||
<div class='docblock'><p>Specifies if the flag may appear more than once such as for multiple debugging
|
||||
levels (as an example). <code>-ddd</code> for three levels of debugging, or <code>-d -d -d</code>.
|
||||
When this is set to <code>true</code> you recieve the number of occurances the user supplied
|
||||
|
|
|
@ -43,12 +43,12 @@
|
|||
<section id='main' class="content struct">
|
||||
<h1 class='fqn'><span class='in-band'>Struct <a href='index.html'>clap</a>::<wbr><a class='struct' href=''>ArgMatches</a><wbr></span><span class='out-of-band'><span id='render-detail'>
|
||||
<a id="collapse-all" href="#">[-]</a> <a id="expand-all" href="#">[+]</a>
|
||||
</span><a id='src-6146' href='../src/clap/args/argmatches.rs.html#62-68'>[src]</a></span></h1>
|
||||
<pre class='rust struct'>pub struct ArgMatches {
|
||||
pub flags: <a class='struct' href='http://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html' title='std::collections::hash::map::HashMap'>HashMap</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>, FlagArg>,
|
||||
pub opts: <a class='struct' href='http://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html' title='std::collections::hash::map::HashMap'>HashMap</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>, OptArg>,
|
||||
pub positionals: <a class='struct' href='http://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html' title='std::collections::hash::map::HashMap'>HashMap</a><&'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>, PosArg>,
|
||||
pub subcommand: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html' title='alloc::boxed::Box'>Box</a><<a class='struct' href='../clap/struct.SubCommand.html' title='clap::SubCommand'>SubCommand</a>>>,
|
||||
</span><a id='src-6262' href='../src/clap/args/argmatches.rs.html#62-68'>[src]</a></span></h1>
|
||||
<pre class='rust struct'>pub struct ArgMatches<'a> {
|
||||
pub flags: <a class='struct' href='http://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html' title='std::collections::hash::map::HashMap'>HashMap</a><&'a <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>, FlagArg>,
|
||||
pub opts: <a class='struct' href='http://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html' title='std::collections::hash::map::HashMap'>HashMap</a><&'a <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>, OptArg>,
|
||||
pub positionals: <a class='struct' href='http://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html' title='std::collections::hash::map::HashMap'>HashMap</a><&'a <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>, PosArg>,
|
||||
pub subcommand: <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html' title='alloc::boxed::Box'>Box</a><<a class='struct' href='../clap/struct.SubCommand.html' title='clap::SubCommand'>SubCommand</a><'a>>>,
|
||||
}</pre><div class='docblock'><p>Used to get information about the arguments that
|
||||
where supplied to the program at runtime.</p>
|
||||
|
||||
|
@ -95,7 +95,7 @@ the methods in order to query information.</p>
|
|||
}
|
||||
</pre>
|
||||
</div><h2 class='fields'>Fields</h2>
|
||||
<table><tr><td id='structfield.flags'><a class='stability Unmarked' title='No stability level'></a><code>flags</code></td><td></td></tr><tr><td id='structfield.opts'><a class='stability Unmarked' title='No stability level'></a><code>opts</code></td><td></td></tr><tr><td id='structfield.positionals'><a class='stability Unmarked' title='No stability level'></a><code>positionals</code></td><td></td></tr><tr><td id='structfield.subcommand'><a class='stability Unmarked' title='No stability level'></a><code>subcommand</code></td><td></td></tr></table><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a>() -> <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a></code></h4>
|
||||
<table><tr><td id='structfield.flags'><a class='stability Unmarked' title='No stability level'></a><code>flags</code></td><td></td></tr><tr><td id='structfield.opts'><a class='stability Unmarked' title='No stability level'></a><code>opts</code></td><td></td></tr><tr><td id='structfield.positionals'><a class='stability Unmarked' title='No stability level'></a><code>positionals</code></td><td></td></tr><tr><td id='structfield.subcommand'><a class='stability Unmarked' title='No stability level'></a><code>subcommand</code></td><td></td></tr></table><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl<'a> <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a><'a></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a>() -> <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a><'a></code></h4>
|
||||
<div class='docblock'><p>Creates a new instance of <code>ArgMatches</code>. This ins't called directly, but
|
||||
through the <code>.get_matches()</code> method of <code>App</code></p>
|
||||
|
||||
|
@ -103,7 +103,7 @@ through the <code>.get_matches()</code> method of <code>App</code></p>
|
|||
href="#example">Example</a></h1><pre id='rust-example-rendered' class='rust '>
|
||||
<span class='kw'>let</span> <span class='ident'>matches</span> <span class='op'>=</span> <span class='ident'>App</span>::<span class='ident'>new</span>(<span class='string'>"myprog"</span>).<span class='ident'>get_matches</span>();
|
||||
</pre>
|
||||
</div><h4 id='method.value_of' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.value_of' class='fnname'>value_of</a>(&self, name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&<a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>></code></h4>
|
||||
</div><h4 id='method.value_of' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.value_of' class='fnname'>value_of</a><'n>(&self, name: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&<a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>></code></h4>
|
||||
<div class='docblock'><p>Gets the value of a specific option or positional argument (i.e. an argument that takes
|
||||
an additional value at runtime). If the option wasn't present at runtime
|
||||
it returns <code>None</code>. </p>
|
||||
|
@ -117,7 +117,7 @@ as <code>value_of()</code> will only return the <em><em>first</em></em> value.</
|
|||
<span class='macro'>println</span><span class='macro'>!</span>(<span class='string'>"Value for output: {}"</span>, <span class='ident'>o</span>);
|
||||
}
|
||||
</pre>
|
||||
</div><h4 id='method.values_of' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.values_of' class='fnname'>values_of</a>(&self, name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&<a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>></code></h4>
|
||||
</div><h4 id='method.values_of' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.values_of' class='fnname'>values_of</a><'n>(&self, name: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><<a class='struct' href='http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html' title='collections::vec::Vec'>Vec</a><&<a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>>></code></h4>
|
||||
<div class='docblock'><p>Gets the values of a specific option in a vector (i.e. an argument that takes
|
||||
an additional value at runtime). If the option wasn't present at runtime
|
||||
it returns <code>None</code></p>
|
||||
|
@ -133,7 +133,7 @@ it returns <code>None</code></p>
|
|||
}
|
||||
}
|
||||
</pre>
|
||||
</div><h4 id='method.is_present' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.is_present' class='fnname'>is_present</a>(&self, name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a></code></h4>
|
||||
</div><h4 id='method.is_present' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.is_present' class='fnname'>is_present</a><'n>(&self, name: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a href='http://doc.rust-lang.org/nightly/std/primitive.bool.html'>bool</a></code></h4>
|
||||
<div class='docblock'><p>Checks if a flag was argument was supplied at runtime. <strong>DOES NOT</strong> work for
|
||||
option or positional arguments (use <code>.value_of()</code> instead)</p>
|
||||
|
||||
|
@ -143,7 +143,7 @@ option or positional arguments (use <code>.value_of()</code> instead)</p>
|
|||
<span class='macro'>println</span><span class='macro'>!</span>(<span class='string'>"The output argument was used!"</span>);
|
||||
}
|
||||
</pre>
|
||||
</div><h4 id='method.occurrences_of' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.occurrences_of' class='fnname'>occurrences_of</a>(&self, name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a href='http://doc.rust-lang.org/nightly/std/primitive.u8.html'>u8</a></code></h4>
|
||||
</div><h4 id='method.occurrences_of' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.occurrences_of' class='fnname'>occurrences_of</a><'n>(&self, name: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a href='http://doc.rust-lang.org/nightly/std/primitive.u8.html'>u8</a></code></h4>
|
||||
<div class='docblock'><p>Checks the number of occurrences of an option or flag at runtime.
|
||||
If an option or flag isn't present it will return <code>0</code>, if the option or flag doesn't
|
||||
allow multiple occurrences, it will return <code>1</code> no matter how many times it occurred
|
||||
|
@ -159,7 +159,7 @@ allow multiple occurrences, it will return <code>1</code> no matter how many tim
|
|||
<span class='macro'>println</span><span class='macro'>!</span>(<span class='string'>"Debug mode kind of on"</span>);
|
||||
}
|
||||
</pre>
|
||||
</div><h4 id='method.subcommand_matches' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.subcommand_matches' class='fnname'>subcommand_matches</a>(&self, name: &'static <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&<a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a>></code></h4>
|
||||
</div><h4 id='method.subcommand_matches' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.subcommand_matches' class='fnname'>subcommand_matches</a><'n>(&self, name: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='enum' href='http://doc.rust-lang.org/nightly/core/option/enum.Option.html' title='core::option::Option'>Option</a><&<a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a>></code></h4>
|
||||
<div class='docblock'><p>If a subcommand was found, returns the ArgMatches struct associated with it's matches</p>
|
||||
|
||||
<h1 id="example" class='section-header'><a
|
||||
|
|
|
@ -43,10 +43,10 @@
|
|||
<section id='main' class="content struct">
|
||||
<h1 class='fqn'><span class='in-band'>Struct <a href='index.html'>clap</a>::<wbr><a class='struct' href=''>SubCommand</a><wbr></span><span class='out-of-band'><span id='render-detail'>
|
||||
<a id="collapse-all" href="#">[-]</a> <a id="expand-all" href="#">[+]</a>
|
||||
</span><a id='src-6498' href='../src/clap/args/subcommand.rs.html#23-26'>[src]</a></span></h1>
|
||||
<pre class='rust struct'>pub struct SubCommand {
|
||||
</span><a id='src-6624' href='../src/clap/args/subcommand.rs.html#23-26'>[src]</a></span></h1>
|
||||
<pre class='rust struct'>pub struct SubCommand<'a> {
|
||||
pub name: <a class='struct' href='http://doc.rust-lang.org/nightly/collections/string/struct.String.html' title='collections::string::String'>String</a>,
|
||||
pub matches: <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a>,
|
||||
pub matches: <a class='struct' href='../clap/struct.ArgMatches.html' title='clap::ArgMatches'>ArgMatches</a><'a>,
|
||||
}</pre><div class='docblock'><p>The abstract representation of a command line subcommand used by the consumer of the library.</p>
|
||||
|
||||
<p>This struct is used by the library consumer and describes all the valid options of the subcommand for
|
||||
|
@ -62,7 +62,7 @@ their own arguments and subcommands).</p>
|
|||
.<span class='ident'>index</span>(<span class='number'>1</span>))
|
||||
</pre>
|
||||
</div><h2 class='fields'>Fields</h2>
|
||||
<table><tr><td id='structfield.name'><a class='stability Unmarked' title='No stability level'></a><code>name</code></td><td></td></tr><tr><td id='structfield.matches'><a class='stability Unmarked' title='No stability level'></a><code>matches</code></td><td></td></tr></table><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl <a class='struct' href='../clap/struct.SubCommand.html' title='clap::SubCommand'>SubCommand</a></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a><'a, 'v, 'ab, 'u>(name: &'a <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'a, 'v, 'ab, 'u></code></h4>
|
||||
<table><tr><td id='structfield.name'><a class='stability Unmarked' title='No stability level'></a><code>name</code></td><td></td></tr><tr><td id='structfield.matches'><a class='stability Unmarked' title='No stability level'></a><code>matches</code></td><td></td></tr></table><h2 id='methods'>Methods</h2><h3 class='impl'><a class='stability Unmarked' title='No stability level'></a><code>impl<'a> <a class='struct' href='../clap/struct.SubCommand.html' title='clap::SubCommand'>SubCommand</a><'a></code></h3><div class='impl-items'><h4 id='method.new' class='method'><a class='stability Unmarked' title='No stability level'></a><code>fn <a href='#method.new' class='fnname'>new</a><'n, 'au, 'v, 'ab, 'u, 'ar>(name: &'n <a href='http://doc.rust-lang.org/nightly/std/primitive.str.html'>str</a>) -> <a class='struct' href='../clap/struct.App.html' title='clap::App'>App</a><'au, 'v, 'ab, 'u, 'ar></code></h4>
|
||||
<div class='docblock'><p>Creates a new instance of a subcommand requiring a name. Will be displayed
|
||||
to the user when they print version or help and usage information.</p>
|
||||
|
||||
|
|
|
@ -977,7 +977,7 @@
|
|||
<span class='doccomment'>///</span>
|
||||
<span class='doccomment'>/// // Your pogram logic starts here...</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='comment'>// The name displayed to the user when showing version and help/usage information</span>
|
||||
<span class='ident'>name</span>: <span class='ident'>String</span>,
|
||||
<span class='comment'>// A string of author(s) if desired. Displayed when showing help/usage information</span>
|
||||
|
@ -986,26 +986,26 @@
|
|||
<span class='ident'>version</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'v</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='comment'>// A brief explaination of the program that gets displayed to the user when shown help/usage information</span>
|
||||
<span class='ident'>about</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ab</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>flags</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>, <span class='ident'>FlagBuilder</span><span class='op'>></span>,
|
||||
<span class='ident'>opts</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>, <span class='ident'>OptBuilder</span><span class='op'>></span>,
|
||||
<span class='ident'>positionals_idx</span>: <span class='ident'>BTreeMap</span><span class='op'><</span><span class='ident'>u8</span>, <span class='ident'>PosBuilder</span><span class='op'>></span>,
|
||||
<span class='ident'>subcommands</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='ident'>String</span>, <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>>></span>,
|
||||
<span class='ident'>flags</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span>, <span class='ident'>FlagBuilder</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>>></span>,
|
||||
<span class='ident'>opts</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span>, <span class='ident'>OptBuilder</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>>></span>,
|
||||
<span class='ident'>positionals_idx</span>: <span class='ident'>BTreeMap</span><span class='op'><</span><span class='ident'>u8</span>, <span class='ident'>PosBuilder</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>>></span>,
|
||||
<span class='ident'>subcommands</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='ident'>String</span>, <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>>></span>,
|
||||
<span class='ident'>needs_long_help</span>: <span class='ident'>bool</span>,
|
||||
<span class='ident'>needs_long_version</span>: <span class='ident'>bool</span>,
|
||||
<span class='ident'>needs_short_help</span>: <span class='ident'>bool</span>,
|
||||
<span class='ident'>needs_short_version</span>: <span class='ident'>bool</span>,
|
||||
<span class='ident'>needs_subcmd_help</span>: <span class='ident'>bool</span>,
|
||||
<span class='ident'>required</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>arg_list</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>required</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>arg_list</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>short_list</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='ident'>char</span><span class='op'>></span>,
|
||||
<span class='ident'>long_list</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>blacklist</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>long_list</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>blacklist</span>: <span class='ident'>HashSet</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>usage_str</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'u</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='ident'>bin_name</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>String</span><span class='op'>></span>
|
||||
|
||||
}
|
||||
|
||||
<span class='kw'>impl</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span>{
|
||||
<span class='kw'>impl</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span>{
|
||||
<span class='doccomment'>/// Creates a new instance of an application requiring a name (such as the binary). Will be displayed</span>
|
||||
<span class='doccomment'>/// to the user when they print version or help and usage information.</span>
|
||||
<span class='doccomment'>///</span>
|
||||
|
@ -1016,7 +1016,7 @@
|
|||
<span class='doccomment'>/// let prog = App::new("myprog")</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span><span class='op'><</span><span class='lifetime'>'n</span><span class='op'>></span>(<span class='ident'>n</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span><span class='op'><</span><span class='lifetime'>'n</span><span class='op'>></span>(<span class='ident'>n</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='ident'>App</span> {
|
||||
<span class='ident'>name</span>: <span class='ident'>n</span>.<span class='ident'>to_owned</span>(),
|
||||
<span class='ident'>author</span>: <span class='prelude-val'>None</span>,
|
||||
|
@ -1051,7 +1051,7 @@
|
|||
<span class='doccomment'>/// .author("Kevin <kbknapp@gmail.com>")</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>author</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>a</span>: <span class='kw-2'>&</span><span class='lifetime'>'a</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>author</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>a</span>: <span class='kw-2'>&</span><span class='lifetime'>'a</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>author</span> <span class='op'>=</span> <span class='prelude-val'>Some</span>(<span class='ident'>a</span>);
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -1066,7 +1066,7 @@
|
|||
<span class='doccomment'>/// .about("Does really amazing things to great people")</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>about</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>a</span>: <span class='kw-2'>&</span><span class='lifetime'>'ab</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span> <span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>about</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>a</span>: <span class='kw-2'>&</span><span class='lifetime'>'ab</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>about</span> <span class='op'>=</span> <span class='prelude-val'>Some</span>(<span class='ident'>a</span>);
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -1081,7 +1081,7 @@
|
|||
<span class='doccomment'>/// .version("v0.1.24")</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>version</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>v</span>: <span class='kw-2'>&</span><span class='lifetime'>'v</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>version</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>v</span>: <span class='kw-2'>&</span><span class='lifetime'>'v</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>version</span> <span class='op'>=</span> <span class='prelude-val'>Some</span>(<span class='ident'>v</span>);
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -1103,7 +1103,7 @@
|
|||
<span class='doccomment'>/// .usage("myapp [-clDas] <some_file>")</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>usage</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>u</span>: <span class='kw-2'>&</span><span class='lifetime'>'u</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>usage</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>u</span>: <span class='kw-2'>&</span><span class='lifetime'>'u</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>usage_str</span> <span class='op'>=</span> <span class='prelude-val'>Some</span>(<span class='ident'>u</span>);
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -1121,7 +1121,7 @@
|
|||
<span class='doccomment'>/// )</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>arg</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>a</span>: <span class='ident'>Arg</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>arg</span><span class='op'><</span><span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>a</span>: <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='self'>self</span>.<span class='ident'>arg_list</span>.<span class='ident'>contains</span>(<span class='ident'>a</span>.<span class='ident'>name</span>) {
|
||||
<span class='macro'>panic</span><span class='macro'>!</span>(<span class='string'>"Argument name must be unique, \"{}\" is already in use"</span>, <span class='ident'>a</span>.<span class='ident'>name</span>);
|
||||
} <span class='kw'>else</span> {
|
||||
|
@ -1230,7 +1230,7 @@
|
|||
<span class='doccomment'>/// Arg::new("debug").short("d")])</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>args</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>args</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='ident'>Arg</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>args</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>args</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span>, <span class='lifetime'>'ar</span><span class='op'>>></span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='kw'>for</span> <span class='ident'>arg</span> <span class='kw'>in</span> <span class='ident'>args</span>.<span class='ident'>into_iter</span>() {
|
||||
<span class='self'>self</span> <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>arg</span>(<span class='ident'>arg</span>);
|
||||
}
|
||||
|
@ -1255,7 +1255,7 @@
|
|||
<span class='doccomment'>/// // Additional subcommand configuration goes here, such as arguments...</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>subcommand</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>subcmd</span>: <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>subcommand</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>subcmd</span>: <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='ident'>subcmd</span>.<span class='ident'>name</span> <span class='op'>==</span> <span class='string'>"help"</span> { <span class='self'>self</span>.<span class='ident'>needs_subcmd_help</span> <span class='op'>=</span> <span class='boolval'>false</span>; }
|
||||
<span class='self'>self</span>.<span class='ident'>subcommands</span>.<span class='ident'>insert</span>(<span class='ident'>subcmd</span>.<span class='ident'>name</span>.<span class='ident'>clone</span>(), <span class='ident'>subcmd</span>);
|
||||
<span class='self'>self</span>
|
||||
|
@ -1274,7 +1274,7 @@
|
|||
<span class='doccomment'>/// SubCommand::new("debug").about("Controls debug functionality")])</span>
|
||||
<span class='doccomment'>/// # .get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>subcommands</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>subcmds</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>>></span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>subcommands</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>subcmds</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>>></span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='kw'>for</span> <span class='ident'>subcmd</span> <span class='kw'>in</span> <span class='ident'>subcmds</span>.<span class='ident'>into_iter</span>() {
|
||||
<span class='self'>self</span> <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>subcommand</span>(<span class='ident'>subcmd</span>);
|
||||
}
|
||||
|
@ -1390,7 +1390,7 @@
|
|||
<span class='kw'>if</span> <span class='ident'>quit</span> { <span class='ident'>env</span>::<span class='ident'>set_exit_status</span>(<span class='number'>1</span>); <span class='self'>self</span>.<span class='ident'>exit</span>(); }
|
||||
}
|
||||
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>get_matches</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>) <span class='op'>-></span> <span class='ident'>ArgMatches</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>get_matches</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>) <span class='op'>-></span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>matches</span> <span class='op'>=</span> <span class='ident'>ArgMatches</span>::<span class='ident'>new</span>();
|
||||
|
||||
<span class='kw'>let</span> <span class='ident'>args</span> <span class='op'>=</span> <span class='ident'>env</span>::<span class='ident'>args</span>().<span class='ident'>collect</span>::<span class='op'><</span><span class='ident'>Vec</span><span class='op'><</span>_<span class='op'>>></span>();
|
||||
|
@ -1409,12 +1409,12 @@
|
|||
<span class='ident'>matches</span>
|
||||
}
|
||||
|
||||
<span class='kw'>fn</span> <span class='ident'>get_matches_from</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span>, <span class='ident'>it</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>IntoIter</span><span class='op'><</span><span class='ident'>String</span><span class='op'>></span>) {
|
||||
<span class='kw'>fn</span> <span class='ident'>get_matches_from</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>></span>, <span class='ident'>it</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>IntoIter</span><span class='op'><</span><span class='ident'>String</span><span class='op'>></span>) {
|
||||
<span class='self'>self</span>.<span class='ident'>create_help_and_version</span>();
|
||||
|
||||
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>pos_only</span> <span class='op'>=</span> <span class='boolval'>false</span>;
|
||||
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>subcmd_name</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>String</span><span class='op'>></span> <span class='op'>=</span> <span class='prelude-val'>None</span>;
|
||||
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>needs_val_of</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span> <span class='op'>=</span> <span class='prelude-val'>None</span>;
|
||||
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>needs_val_of</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='ident'>str</span><span class='op'>></span> <span class='op'>=</span> <span class='prelude-val'>None</span>;
|
||||
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>pos_counter</span> <span class='op'>=</span> <span class='number'>1</span>;
|
||||
<span class='kw'>while</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='ident'>arg</span>) <span class='op'>=</span> <span class='ident'>it</span>.<span class='ident'>next</span>() {
|
||||
<span class='kw'>let</span> <span class='ident'>arg_slice</span> <span class='op'>=</span> <span class='kw-2'>&</span><span class='ident'>arg</span>[..];
|
||||
|
@ -1459,14 +1459,14 @@
|
|||
<span class='macro'>format</span><span class='macro'>!</span>(<span class='string'>"Found positional argument {}, but {} doesn't accept any"</span>, <span class='ident'>arg</span>, <span class='self'>self</span>.<span class='ident'>name</span>),
|
||||
<span class='boolval'>true</span>, <span class='boolval'>true</span>);
|
||||
}
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='ident'>p</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>positionals_idx</span>.<span class='ident'>get</span>(<span class='kw-2'>&</span><span class='ident'>pos_counter</span>) {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='ident'>p</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>positionals_idx</span>.<span class='ident'>get</span>(<span class='kw-2'>&</span><span class='ident'>pos_counter</span>) {
|
||||
<span class='kw'>if</span> <span class='self'>self</span>.<span class='ident'>blacklist</span>.<span class='ident'>contains</span>(<span class='ident'>p</span>.<span class='ident'>name</span>) {
|
||||
<span class='self'>self</span>.<span class='ident'>report_error</span>(<span class='macro'>format</span><span class='macro'>!</span>(<span class='string'>"The argument \"{}\" is mutually exclusive with one or more other arguments"</span>, <span class='ident'>arg</span>),
|
||||
<span class='boolval'>true</span>, <span class='boolval'>true</span>);
|
||||
}
|
||||
|
||||
<span class='ident'>matches</span>.<span class='ident'>positionals</span>.<span class='ident'>insert</span>(<span class='ident'>p</span>.<span class='ident'>name</span>, <span class='ident'>PosArg</span>{
|
||||
<span class='ident'>name</span>: <span class='ident'>p</span>.<span class='ident'>name</span>,
|
||||
<span class='ident'>name</span>: <span class='ident'>p</span>.<span class='ident'>name</span>.<span class='ident'>to_owned</span>(),
|
||||
<span class='ident'>value</span>: <span class='ident'>arg</span>.<span class='ident'>clone</span>(),
|
||||
});
|
||||
|
||||
|
@ -1557,7 +1557,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
<span class='kw'>fn</span> <span class='ident'>parse_long_arg</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span> ,<span class='ident'>full_arg</span>: <span class='kw-2'>&</span><span class='ident'>String</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span> {
|
||||
<span class='kw'>fn</span> <span class='ident'>parse_long_arg</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>></span> ,<span class='ident'>full_arg</span>: <span class='kw-2'>&</span><span class='ident'>String</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span><span class='op'>></span> {
|
||||
<span class='kw'>let</span> <span class='kw-2'>mut</span> <span class='ident'>arg</span> <span class='op'>=</span> <span class='ident'>full_arg</span>.<span class='ident'>trim_left_matches</span>(<span class='op'>|</span><span class='ident'>c</span><span class='op'>|</span> <span class='ident'>c</span> <span class='op'>==</span> <span class='string'>'-'</span>);
|
||||
|
||||
<span class='kw'>if</span> <span class='ident'>arg</span> <span class='op'>==</span> <span class='string'>"help"</span> <span class='op'>&&</span> <span class='self'>self</span>.<span class='ident'>needs_long_help</span> {
|
||||
|
@ -1597,7 +1597,7 @@
|
|||
}
|
||||
} <span class='kw'>else</span> {
|
||||
<span class='ident'>matches</span>.<span class='ident'>opts</span>.<span class='ident'>insert</span>(<span class='ident'>v</span>.<span class='ident'>name</span>, <span class='ident'>OptArg</span>{
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>,
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>.<span class='ident'>to_owned</span>(),
|
||||
<span class='comment'>// If arg_val is None occurrences will get incremented upon receiving a value</span>
|
||||
<span class='ident'>occurrences</span>: <span class='kw'>if</span> <span class='ident'>arg_val</span>.<span class='ident'>is_some</span>() { <span class='number'>1</span> } <span class='kw'>else</span> { <span class='number'>0</span> },
|
||||
<span class='ident'>values</span>: <span class='kw'>if</span> <span class='ident'>arg_val</span>.<span class='ident'>is_some</span>() { <span class='macro'>vec</span><span class='macro'>!</span>[<span class='ident'>arg_val</span>.<span class='ident'>clone</span>().<span class='ident'>unwrap</span>()]} <span class='kw'>else</span> {<span class='macro'>vec</span><span class='macro'>!</span>[]}
|
||||
|
@ -1648,7 +1648,7 @@
|
|||
}
|
||||
<span class='kw'>if</span> <span class='op'>!</span><span class='ident'>done</span> {
|
||||
<span class='ident'>matches</span>.<span class='ident'>flags</span>.<span class='ident'>insert</span>(<span class='ident'>v</span>.<span class='ident'>name</span>, <span class='ident'>FlagArg</span>{
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>,
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>.<span class='ident'>to_owned</span>(),
|
||||
<span class='ident'>occurrences</span>: <span class='number'>1</span>
|
||||
});
|
||||
}
|
||||
|
@ -1684,7 +1684,7 @@
|
|||
<span class='macro'>unreachable</span><span class='macro'>!</span>();
|
||||
}
|
||||
|
||||
<span class='kw'>fn</span> <span class='ident'>parse_short_arg</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span> ,<span class='ident'>full_arg</span>: <span class='kw-2'>&</span><span class='ident'>String</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span> {
|
||||
<span class='kw'>fn</span> <span class='ident'>parse_short_arg</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>></span> ,<span class='ident'>full_arg</span>: <span class='kw-2'>&</span><span class='ident'>String</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'ar</span> <span class='ident'>str</span><span class='op'>></span> {
|
||||
<span class='kw'>let</span> <span class='ident'>arg</span> <span class='op'>=</span> <span class='kw-2'>&</span><span class='ident'>full_arg</span>[..].<span class='ident'>trim_left_matches</span>(<span class='op'>|</span><span class='ident'>c</span><span class='op'>|</span> <span class='ident'>c</span> <span class='op'>==</span> <span class='string'>'-'</span>);
|
||||
<span class='kw'>if</span> <span class='ident'>arg</span>.<span class='ident'>len</span>() <span class='op'>></span> <span class='number'>1</span> {
|
||||
<span class='comment'>// Multiple flags using short i.e. -bgHlS</span>
|
||||
|
@ -1720,7 +1720,7 @@
|
|||
}
|
||||
} <span class='kw'>else</span> {
|
||||
<span class='ident'>matches</span>.<span class='ident'>opts</span>.<span class='ident'>insert</span>(<span class='ident'>v</span>.<span class='ident'>name</span>, <span class='ident'>OptArg</span>{
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>,
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>.<span class='ident'>to_owned</span>(),
|
||||
<span class='comment'>// occurrences will get incremented upon receiving a value</span>
|
||||
<span class='ident'>occurrences</span>: <span class='number'>0</span>,
|
||||
<span class='ident'>values</span>: <span class='macro'>vec</span><span class='macro'>!</span>[]
|
||||
|
@ -1754,7 +1754,7 @@
|
|||
<span class='macro'>unreachable</span><span class='macro'>!</span>();
|
||||
}
|
||||
|
||||
<span class='kw'>fn</span> <span class='ident'>parse_single_short_flag</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span>, <span class='ident'>arg</span>: <span class='ident'>char</span>) <span class='op'>-></span> <span class='ident'>bool</span> {
|
||||
<span class='kw'>fn</span> <span class='ident'>parse_single_short_flag</span>(<span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='kw-2'>mut</span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>></span>, <span class='ident'>arg</span>: <span class='ident'>char</span>) <span class='op'>-></span> <span class='ident'>bool</span> {
|
||||
<span class='kw'>for</span> <span class='ident'>v</span> <span class='kw'>in</span> <span class='self'>self</span>.<span class='ident'>flags</span>.<span class='ident'>values</span>().<span class='ident'>filter</span>(<span class='op'>|</span><span class='kw-2'>&</span><span class='ident'>v</span><span class='op'>|</span> <span class='ident'>v</span>.<span class='ident'>short</span>.<span class='ident'>is_some</span>()).<span class='ident'>filter</span>(<span class='op'>|</span><span class='kw-2'>&</span><span class='ident'>v</span><span class='op'>|</span> <span class='ident'>v</span>.<span class='ident'>short</span>.<span class='ident'>unwrap</span>() <span class='op'>==</span> <span class='ident'>arg</span>) {
|
||||
<span class='comment'>// Ensure this flag isn't on the mutually excludes list</span>
|
||||
<span class='kw'>if</span> <span class='self'>self</span>.<span class='ident'>blacklist</span>.<span class='ident'>contains</span>(<span class='ident'>v</span>.<span class='ident'>name</span>) {
|
||||
|
@ -1774,7 +1774,7 @@
|
|||
}
|
||||
<span class='kw'>if</span> <span class='op'>!</span><span class='ident'>done</span> {
|
||||
<span class='ident'>matches</span>.<span class='ident'>flags</span>.<span class='ident'>insert</span>(<span class='ident'>v</span>.<span class='ident'>name</span>, <span class='ident'>FlagArg</span>{
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>,
|
||||
<span class='ident'>name</span>: <span class='ident'>v</span>.<span class='ident'>name</span>.<span class='ident'>to_owned</span>(),
|
||||
<span class='ident'>occurrences</span>: <span class='number'>1</span>
|
||||
});
|
||||
}
|
||||
|
@ -1807,7 +1807,7 @@
|
|||
<span class='boolval'>false</span>
|
||||
}
|
||||
|
||||
<span class='kw'>fn</span> <span class='ident'>validate_blacklist</span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='ident'>ArgMatches</span>) {
|
||||
<span class='kw'>fn</span> <span class='ident'>validate_blacklist</span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>matches</span>: <span class='kw-2'>&</span><span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'ar</span><span class='op'>></span>) {
|
||||
<span class='kw'>for</span> <span class='ident'>name</span> <span class='kw'>in</span> <span class='self'>self</span>.<span class='ident'>blacklist</span>.<span class='ident'>iter</span>() {
|
||||
<span class='kw'>if</span> <span class='ident'>matches</span>.<span class='ident'>flags</span>.<span class='ident'>contains_key</span>(<span class='ident'>name</span>) {
|
||||
<span class='self'>self</span>.<span class='ident'>report_error</span>(<span class='macro'>format</span><span class='macro'>!</span>(<span class='string'>"The argument {} is mutually exclusive with one or more other arguments"</span>,
|
||||
|
|
|
@ -393,18 +393,18 @@
|
|||
<span class='doccomment'>/// .takes_value(true)</span>
|
||||
<span class='doccomment'>/// .help("Provides a config file to myprog")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='doccomment'>/// The unique name of the argument, required</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>,
|
||||
<span class='doccomment'>/// The short version (i.e. single character) of the argument, no preceding `-`</span>
|
||||
<span class='doccomment'>/// **NOTE:** `short` is mutually exclusive with `index`</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>short</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>char</span><span class='op'>></span>,
|
||||
<span class='doccomment'>/// The long version of the flag (i.e. word) without the preceding `--`</span>
|
||||
<span class='doccomment'>/// **NOTE:** `long` is mutually exclusive with `index`</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>long</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>long</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'l</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='doccomment'>/// The string of text that will displayed to the user when the application's</span>
|
||||
<span class='doccomment'>/// `help` text is displayed</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>help</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>help</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'h</span> <span class='ident'>str</span><span class='op'>></span>,
|
||||
<span class='doccomment'>/// If this is a required by default when using the command line program</span>
|
||||
<span class='doccomment'>/// i.e. a configuration file that's required for the program to function</span>
|
||||
<span class='doccomment'>/// **NOTE:** required by default means, it is required *until* mutually</span>
|
||||
|
@ -421,13 +421,13 @@
|
|||
<span class='doccomment'>/// I.e. `-v -v -v` or `-vvv`</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>multiple</span>: <span class='ident'>bool</span>,
|
||||
<span class='doccomment'>/// A list of names for other arguments that *may not* be used with this flag</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>blacklist</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>blacklist</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'b</span> <span class='ident'>str</span><span class='op'>>></span>,
|
||||
<span class='doccomment'>/// A list of names of other arguments that are *required* to be used when </span>
|
||||
<span class='doccomment'>/// this flag is used</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>requires</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>>></span>
|
||||
<span class='kw'>pub</span> <span class='ident'>requires</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'r</span> <span class='ident'>str</span><span class='op'>>></span>
|
||||
}
|
||||
|
||||
<span class='kw'>impl</span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>impl</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='doccomment'>/// Creates a new instace of `Arg` using a unique string name. </span>
|
||||
<span class='doccomment'>/// The name will be used by the library consumer to get information about</span>
|
||||
<span class='doccomment'>/// whether or not the argument was used at runtime. </span>
|
||||
|
@ -445,7 +445,7 @@
|
|||
<span class='doccomment'>/// Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// # .short("c")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span>(<span class='ident'>n</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span>(<span class='ident'>n</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='ident'>Arg</span> {
|
||||
<span class='ident'>name</span>: <span class='ident'>n</span>,
|
||||
<span class='ident'>short</span>: <span class='prelude-val'>None</span>,
|
||||
|
@ -479,7 +479,7 @@
|
|||
<span class='doccomment'>/// # Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .short("c")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>short</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>s</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>short</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>s</span>: <span class='kw-2'>&</span><span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>short</span> <span class='op'>=</span> <span class='ident'>s</span>.<span class='ident'>trim_left_matches</span>(<span class='op'>|</span><span class='ident'>c</span><span class='op'>|</span> <span class='ident'>c</span> <span class='op'>==</span> <span class='string'>'-'</span>).<span class='ident'>chars</span>().<span class='ident'>nth</span>(<span class='number'>0</span>);
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -503,7 +503,7 @@
|
|||
<span class='doccomment'>/// # Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .long("config")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>long</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>l</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>long</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>l</span>: <span class='kw-2'>&</span><span class='lifetime'>'l</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>long</span> <span class='op'>=</span> <span class='prelude-val'>Some</span>(<span class='ident'>l</span>.<span class='ident'>trim_left_matches</span>(<span class='op'>|</span><span class='ident'>c</span><span class='op'>|</span> <span class='ident'>c</span> <span class='op'>==</span> <span class='string'>'-'</span>));
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -520,7 +520,7 @@
|
|||
<span class='doccomment'>/// # Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .help("The config file used by the myprog")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>help</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>h</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>help</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>h</span>: <span class='kw-2'>&</span><span class='lifetime'>'h</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>help</span> <span class='op'>=</span> <span class='prelude-val'>Some</span>(<span class='ident'>h</span>);
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -543,7 +543,7 @@
|
|||
<span class='doccomment'>/// # Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .required(true)</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>required</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>r</span>: <span class='ident'>bool</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>required</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>r</span>: <span class='ident'>bool</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>required</span> <span class='op'>=</span> <span class='ident'>r</span>;
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -562,7 +562,7 @@
|
|||
<span class='doccomment'>/// # let myprog = App::new("myprog").arg(Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .mutually_excludes("debug")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>mutually_excludes</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>mutually_excludes</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'b</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='kw-2'>mut</span> <span class='ident'>vec</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>blacklist</span> {
|
||||
<span class='ident'>vec</span>.<span class='ident'>push</span>(<span class='ident'>name</span>);
|
||||
} <span class='kw'>else</span> {
|
||||
|
@ -586,7 +586,7 @@
|
|||
<span class='doccomment'>/// .mutually_excludes_all(</span>
|
||||
<span class='doccomment'>/// vec!["debug", "input"])</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>mutually_excludes_all</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>names</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>mutually_excludes_all</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>names</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'b</span> <span class='ident'>str</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='kw-2'>mut</span> <span class='ident'>vec</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>blacklist</span> {
|
||||
<span class='kw'>for</span> <span class='ident'>n</span> <span class='kw'>in</span> <span class='ident'>names</span> {
|
||||
<span class='ident'>vec</span>.<span class='ident'>push</span>(<span class='ident'>n</span>);
|
||||
|
@ -609,7 +609,7 @@
|
|||
<span class='doccomment'>/// # let myprog = App::new("myprog").arg(Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .requires("debug")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>requires</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>requires</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'r</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='kw-2'>mut</span> <span class='ident'>vec</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>requires</span> {
|
||||
<span class='ident'>vec</span>.<span class='ident'>push</span>(<span class='ident'>name</span>);
|
||||
} <span class='kw'>else</span> {
|
||||
|
@ -632,7 +632,7 @@
|
|||
<span class='doccomment'>/// .requires_all(</span>
|
||||
<span class='doccomment'>/// vec!["debug", "input"])</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>requires_all</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>names</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>requires_all</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>names</span>: <span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'r</span> <span class='ident'>str</span><span class='op'>></span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='kw-2'>mut</span> <span class='ident'>vec</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>requires</span> {
|
||||
<span class='kw'>for</span> <span class='ident'>n</span> <span class='kw'>in</span> <span class='ident'>names</span> {
|
||||
<span class='ident'>vec</span>.<span class='ident'>push</span>(<span class='ident'>n</span>);
|
||||
|
@ -657,7 +657,7 @@
|
|||
<span class='doccomment'>/// # Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .takes_value(true)</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>takes_value</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>tv</span>: <span class='ident'>bool</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>takes_value</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>tv</span>: <span class='ident'>bool</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>takes_value</span> <span class='op'>=</span> <span class='ident'>tv</span>;
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -678,7 +678,7 @@
|
|||
<span class='doccomment'>/// # Arg::new("conifg")</span>
|
||||
<span class='doccomment'>/// .index(1)</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>index</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>idx</span>: <span class='ident'>u8</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>index</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>idx</span>: <span class='ident'>u8</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>index</span> <span class='op'>=</span> <span class='prelude-val'>Some</span>(<span class='ident'>idx</span>);
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
@ -700,7 +700,7 @@
|
|||
<span class='doccomment'>/// # Arg::new("debug")</span>
|
||||
<span class='doccomment'>/// .multiple(true)</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>multiple</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>multi</span>: <span class='ident'>bool</span>) <span class='op'>-></span> <span class='ident'>Arg</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>multiple</span>(<span class='kw-2'>mut</span> <span class='self'>self</span>, <span class='ident'>multi</span>: <span class='ident'>bool</span>) <span class='op'>-></span> <span class='ident'>Arg</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'l</span>, <span class='lifetime'>'h</span>, <span class='lifetime'>'b</span>, <span class='lifetime'>'r</span><span class='op'>></span> {
|
||||
<span class='self'>self</span>.<span class='ident'>multiple</span> <span class='op'>=</span> <span class='ident'>multi</span>;
|
||||
<span class='self'>self</span>
|
||||
}
|
||||
|
|
|
@ -341,15 +341,15 @@
|
|||
<span class='doccomment'>/// println!("Not printing testing lists...");</span>
|
||||
<span class='doccomment'>/// }</span>
|
||||
<span class='doccomment'>/// }</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>ArgMatches</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span> {
|
||||
<span class='comment'>// pub matches_of: &'static str,</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>flags</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>, <span class='ident'>FlagArg</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>opts</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>, <span class='ident'>OptArg</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>positionals</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>, <span class='ident'>PosArg</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>subcommand</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Box</span><span class='op'><</span><span class='ident'>SubCommand</span><span class='op'>>></span>
|
||||
<span class='kw'>pub</span> <span class='ident'>flags</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'a</span> <span class='ident'>str</span>, <span class='ident'>FlagArg</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>opts</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'a</span> <span class='ident'>str</span>, <span class='ident'>OptArg</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>positionals</span>: <span class='ident'>HashMap</span><span class='op'><</span><span class='kw-2'>&</span><span class='lifetime'>'a</span> <span class='ident'>str</span>, <span class='ident'>PosArg</span><span class='op'>></span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>subcommand</span>: <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Box</span><span class='op'><</span><span class='ident'>SubCommand</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>>></span><span class='op'>></span>
|
||||
}
|
||||
|
||||
<span class='kw'>impl</span> <span class='ident'>ArgMatches</span> {
|
||||
<span class='kw'>impl</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span> {
|
||||
<span class='doccomment'>/// Creates a new instance of `ArgMatches`. This ins't called directly, but</span>
|
||||
<span class='doccomment'>/// through the `.get_matches()` method of `App`</span>
|
||||
<span class='doccomment'>///</span>
|
||||
|
@ -359,7 +359,7 @@
|
|||
<span class='doccomment'>/// # use clap::{App, Arg};</span>
|
||||
<span class='doccomment'>/// let matches = App::new("myprog").get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span>() <span class='op'>-></span> <span class='ident'>ArgMatches</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span>() <span class='op'>-></span> <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span> {
|
||||
<span class='ident'>ArgMatches</span> {
|
||||
<span class='comment'>// matches_of: name,</span>
|
||||
<span class='ident'>flags</span>: <span class='ident'>HashMap</span>::<span class='ident'>new</span>(),
|
||||
|
@ -385,7 +385,7 @@
|
|||
<span class='doccomment'>/// println!("Value for output: {}", o);</span>
|
||||
<span class='doccomment'>/// }</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>value_of</span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='ident'>str</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>value_of</span><span class='op'><</span><span class='lifetime'>'n</span><span class='op'>></span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='ident'>str</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='ident'>opt</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>opts</span>.<span class='ident'>get</span>(<span class='ident'>name</span>) {
|
||||
<span class='kw'>if</span> <span class='op'>!</span><span class='ident'>opt</span>.<span class='ident'>values</span>.<span class='ident'>is_empty</span>() {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='ident'>s</span>) <span class='op'>=</span> <span class='ident'>opt</span>.<span class='ident'>values</span>.<span class='ident'>iter</span>().<span class='ident'>nth</span>(<span class='number'>0</span>) {
|
||||
|
@ -417,7 +417,7 @@
|
|||
<span class='doccomment'>/// }</span>
|
||||
<span class='doccomment'>/// }</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>values_of</span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='ident'>str</span><span class='op'>>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>values_of</span><span class='op'><</span><span class='lifetime'>'n</span><span class='op'>></span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='ident'>Vec</span><span class='op'><</span><span class='kw-2'>&</span><span class='ident'>str</span><span class='op'>>></span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='ident'>opt</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>opts</span>.<span class='ident'>get</span>(<span class='ident'>name</span>) {
|
||||
<span class='kw'>if</span> <span class='ident'>opt</span>.<span class='ident'>values</span>.<span class='ident'>is_empty</span>() { <span class='kw'>return</span> <span class='prelude-val'>None</span>; }
|
||||
|
||||
|
@ -439,7 +439,7 @@
|
|||
<span class='doccomment'>/// println!("The output argument was used!");</span>
|
||||
<span class='doccomment'>/// }</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>is_present</span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>bool</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>is_present</span><span class='op'><</span><span class='lifetime'>'n</span><span class='op'>></span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>bool</span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='ident'>sc</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>subcommand</span> {
|
||||
<span class='kw'>if</span> <span class='ident'>sc</span>.<span class='ident'>name</span> <span class='op'>==</span> <span class='ident'>name</span> { <span class='kw'>return</span> <span class='boolval'>true</span>; }
|
||||
}
|
||||
|
@ -468,7 +468,7 @@
|
|||
<span class='doccomment'>/// println!("Debug mode kind of on");</span>
|
||||
<span class='doccomment'>/// }</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>occurrences_of</span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>u8</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>occurrences_of</span><span class='op'><</span><span class='lifetime'>'n</span><span class='op'>></span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>u8</span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>ref</span> <span class='ident'>f</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>flags</span>.<span class='ident'>get</span>(<span class='ident'>name</span>) {
|
||||
<span class='kw'>return</span> <span class='ident'>f</span>.<span class='ident'>occurrences</span>;
|
||||
}
|
||||
|
@ -490,7 +490,7 @@
|
|||
<span class='doccomment'>/// // Use matches as normal</span>
|
||||
<span class='doccomment'>/// }</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>subcommand_matches</span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'static</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='ident'>ArgMatches</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>subcommand_matches</span><span class='op'><</span><span class='lifetime'>'n</span><span class='op'>></span>(<span class='kw-2'>&</span><span class='self'>self</span>, <span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='prelude-ty'>Option</span><span class='op'><</span><span class='kw-2'>&</span><span class='ident'>ArgMatches</span><span class='op'>></span> {
|
||||
<span class='kw'>if</span> <span class='kw'>let</span> <span class='prelude-val'>Some</span>( <span class='kw-2'>ref</span> <span class='ident'>sc</span>) <span class='op'>=</span> <span class='self'>self</span>.<span class='ident'>subcommand</span> {
|
||||
<span class='kw'>if</span> <span class='ident'>sc</span>.<span class='ident'>name</span> <span class='op'>!=</span> <span class='ident'>name</span> { <span class='kw'>return</span> <span class='prelude-val'>None</span>; }
|
||||
<span class='kw'>return</span> <span class='prelude-val'>Some</span>(<span class='kw-2'>&</span><span class='ident'>sc</span>.<span class='ident'>matches</span>);
|
||||
|
|
|
@ -106,12 +106,12 @@
|
|||
<span class='doccomment'>/// .help("The configuration file to use")</span>
|
||||
<span class='doccomment'>/// .index(1))</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>SubCommand</span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>struct</span> <span class='ident'>SubCommand</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='ident'>name</span>: <span class='ident'>String</span>,
|
||||
<span class='kw'>pub</span> <span class='ident'>matches</span>: <span class='ident'>ArgMatches</span>
|
||||
<span class='kw'>pub</span> <span class='ident'>matches</span>: <span class='ident'>ArgMatches</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span>
|
||||
}
|
||||
|
||||
<span class='kw'>impl</span> <span class='ident'>SubCommand</span> {
|
||||
<span class='kw'>impl</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span> <span class='ident'>SubCommand</span><span class='op'><</span><span class='lifetime'>'a</span><span class='op'>></span> {
|
||||
<span class='doccomment'>/// Creates a new instance of a subcommand requiring a name. Will be displayed</span>
|
||||
<span class='doccomment'>/// to the user when they print version or help and usage information.</span>
|
||||
<span class='doccomment'>///</span>
|
||||
|
@ -123,7 +123,7 @@
|
|||
<span class='doccomment'>/// SubCommand::new("config")</span>
|
||||
<span class='doccomment'>/// # ).get_matches();</span>
|
||||
<span class='doccomment'>/// ```</span>
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span>(<span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'a</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'a</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span><span class='op'>></span> {
|
||||
<span class='kw'>pub</span> <span class='kw'>fn</span> <span class='ident'>new</span><span class='op'><</span><span class='lifetime'>'n</span>, <span class='lifetime'>'au</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span>(<span class='ident'>name</span>: <span class='kw-2'>&</span><span class='lifetime'>'n</span> <span class='ident'>str</span>) <span class='op'>-></span> <span class='ident'>App</span><span class='op'><</span><span class='lifetime'>'au</span>, <span class='lifetime'>'v</span>, <span class='lifetime'>'ab</span>, <span class='lifetime'>'u</span>, <span class='lifetime'>'ar</span><span class='op'>></span> {
|
||||
<span class='ident'>App</span>::<span class='ident'>new</span>(<span class='ident'>name</span>)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -299,6 +299,19 @@
|
|||
<span id="257">257</span>
|
||||
<span id="258">258</span>
|
||||
<span id="259">259</span>
|
||||
<span id="260">260</span>
|
||||
<span id="261">261</span>
|
||||
<span id="262">262</span>
|
||||
<span id="263">263</span>
|
||||
<span id="264">264</span>
|
||||
<span id="265">265</span>
|
||||
<span id="266">266</span>
|
||||
<span id="267">267</span>
|
||||
<span id="268">268</span>
|
||||
<span id="269">269</span>
|
||||
<span id="270">270</span>
|
||||
<span id="271">271</span>
|
||||
<span id="272">272</span>
|
||||
</pre><pre class='rust '>
|
||||
<span class='attribute'>#<span class='op'>!</span>[<span class='ident'>crate_type</span><span class='op'>=</span> <span class='string'>"lib"</span>]</span>
|
||||
|
||||
|
@ -333,7 +346,7 @@
|
|||
<span class='doccomment'>//! .version("1.0")</span>
|
||||
<span class='doccomment'>//! .author("Kevin K. <kbknapp@gmail.com>")</span>
|
||||
<span class='doccomment'>//! .about("Does awesome things")</span>
|
||||
<span class='doccomment'>//! .arg(Arg::new("config")</span>
|
||||
<span class='doccomment'>//! .arg(Arg::new("CONFIG")</span>
|
||||
<span class='doccomment'>//! .short("c")</span>
|
||||
<span class='doccomment'>//! .long("config")</span>
|
||||
<span class='doccomment'>//! .help("Sets a custom config file")</span>
|
||||
|
@ -356,7 +369,7 @@
|
|||
<span class='doccomment'>//! println!("Value for output: {}", o);</span>
|
||||
<span class='doccomment'>//! }</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! if let Some(c) = matches.value_of("config") {</span>
|
||||
<span class='doccomment'>//! if let Some(c) = matches.value_of("CONFIG") {</span>
|
||||
<span class='doccomment'>//! println!("Value for config: {}", c);</span>
|
||||
<span class='doccomment'>//! }</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
|
@ -396,7 +409,7 @@
|
|||
<span class='doccomment'>//! -v,--version Prints version information</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! OPTIONS:</span>
|
||||
<span class='doccomment'>//! -c,--config <config> Sets a custom config file</span>
|
||||
<span class='doccomment'>//! -c,--config=CONFIG Sets a custom config file</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! POSITIONAL ARGUMENTS:</span>
|
||||
<span class='doccomment'>//! output Sets an optional output file</span>
|
||||
|
@ -434,10 +447,21 @@
|
|||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! ## How to build</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! ### Running the tests</span>
|
||||
<span class='doccomment'>//! Clone the repo (`master` branch if using `clap`, `dev` branch if contributing) and build with Cargo</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! ```</span>
|
||||
<span class='doccomment'>//! cargo test</span>
|
||||
<span class='doccomment'>//! git clone https://github.com/kbknapp/clap-rs</span>
|
||||
<span class='doccomment'>//! cd clap-rs</span>
|
||||
<span class='doccomment'>//! cargo build --release</span>
|
||||
<span class='doccomment'>//! ```</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! ### Running the tests</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! If contributing, you can run the tests as follows (assuming you've already cloned the repo to `clap-rs/`</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! ```</span>
|
||||
<span class='doccomment'>//! cd clap-rs/claptests</span>
|
||||
<span class='doccomment'>//! make test</span>
|
||||
<span class='doccomment'>//! ```</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! ### Building the documentation</span>
|
||||
|
@ -447,6 +471,8 @@
|
|||
<span class='doccomment'>//! ```</span>
|
||||
<span class='doccomment'>//! make doc</span>
|
||||
<span class='doccomment'>//! ```</span>
|
||||
<span class='doccomment'>//! </span>
|
||||
<span class='doccomment'>//! Then browse to `clap-rs/docs/index.html` in your web-browser of choice</span>
|
||||
|
||||
<span class='kw'>extern</span> <span class='kw'>crate</span> <span class='ident'>libc</span>;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue