summaryrefslogtreecommitdiff
path: root/doxygen/xml/example_8py.xml
blob: baad80eb75a11bc6f4d17224d1f2bc76bf51c5b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.7.5.1">
  <compounddef id="example_8py" kind="file">
    <compoundname>example.py</compoundname>
    <innerclass refid="classexample_1_1CmdLineApp" prot="public">example::CmdLineApp</innerclass>
    <innernamespace refid="namespaceexample">example</innernamespace>
    <briefdescription>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <programlisting>
<codeline lineno="1" refid="namespaceexample" refkind="compound"><highlight class="stringliteral">&apos;&apos;&apos;A<sp/>sample<sp/>application<sp/>for<sp/>cmd2.&apos;&apos;&apos;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="2"><highlight class="normal"></highlight></codeline>
<codeline lineno="3"><highlight class="normal"></highlight><highlight class="keyword">from</highlight><highlight class="normal"><sp/>cmd2<sp/></highlight><highlight class="keyword">import</highlight><highlight class="normal"><sp/>Cmd,<sp/>make_option,<sp/>options</highlight></codeline>
<codeline lineno="4"><highlight class="normal"></highlight><highlight class="keyword">import</highlight><highlight class="normal"><sp/>unittest,<sp/>optparse,<sp/>sys</highlight></codeline>
<codeline lineno="5"><highlight class="normal"></highlight></codeline>
<codeline lineno="6" refid="classexample_1_1CmdLineApp" refkind="compound"><highlight class="normal"></highlight><highlight class="keyword">class<sp/></highlight><highlight class="normal"><ref refid="classexample_1_1CmdLineApp" kindref="compound">CmdLineApp</ref>(<ref refid="classcmd2_1_1Cmd" kindref="compound">Cmd</ref>):</highlight></codeline>
<codeline lineno="7" refid="classexample_1_1CmdLineApp_1a7720e4d8dd45f289c3962be91c05ac33" refkind="member"><highlight class="normal"><sp/><sp/><sp/><sp/>multilineCommands<sp/>=<sp/>[</highlight><highlight class="stringliteral">&apos;orate&apos;</highlight><highlight class="normal">]</highlight></codeline>
<codeline lineno="8"><highlight class="normal"><sp/><sp/><sp/><sp/>Cmd.shortcuts.update({</highlight><highlight class="stringliteral">&apos;&amp;&apos;</highlight><highlight class="normal">:<sp/></highlight><highlight class="stringliteral">&apos;speak&apos;</highlight><highlight class="normal">})</highlight></codeline>
<codeline lineno="9" refid="classexample_1_1CmdLineApp_1a81a94979fcdd998c72d530e47bab88e0" refkind="member"><highlight class="normal"><sp/><sp/><sp/><sp/>maxrepeats<sp/>=<sp/>3</highlight></codeline>
<codeline lineno="10" refid="classexample_1_1CmdLineApp_1adb66a4ed5e10aa018c7e3a4da6779c76" refkind="member"><highlight class="normal"><sp/><sp/><sp/><sp/>redirector<sp/>=<sp/></highlight><highlight class="stringliteral">&apos;-&gt;&apos;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="11"><highlight class="normal"><sp/><sp/><sp/><sp/>Cmd.settable.append(</highlight><highlight class="stringliteral">&apos;maxrepeats<sp/><sp/><sp/>Max<sp/>number<sp/>of<sp/>`--repeat`s<sp/>allowed&apos;</highlight><highlight class="normal">)</highlight></codeline>
<codeline lineno="12"><highlight class="normal"></highlight></codeline>
<codeline lineno="13"><highlight class="normal"><sp/><sp/><sp/><sp/>@<ref refid="namespacecmd2_1a863be2c5e3b9fdec03710fd550801c22" kindref="member">options</ref>([make_option(</highlight><highlight class="stringliteral">&apos;-p&apos;</highlight><highlight class="normal">,<sp/></highlight><highlight class="stringliteral">&apos;--piglatin&apos;</highlight><highlight class="normal">,<sp/>action=</highlight><highlight class="stringliteral">&quot;store_true&quot;</highlight><highlight class="normal">,<sp/>help=</highlight><highlight class="stringliteral">&quot;atinLay&quot;</highlight><highlight class="normal">),</highlight></codeline>
<codeline lineno="14"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>make_option(</highlight><highlight class="stringliteral">&apos;-s&apos;</highlight><highlight class="normal">,<sp/></highlight><highlight class="stringliteral">&apos;--shout&apos;</highlight><highlight class="normal">,<sp/>action=</highlight><highlight class="stringliteral">&quot;store_true&quot;</highlight><highlight class="normal">,<sp/>help=</highlight><highlight class="stringliteral">&quot;N00B<sp/>EMULATION<sp/>MODE&quot;</highlight><highlight class="normal">),</highlight></codeline>
<codeline lineno="15"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>make_option(</highlight><highlight class="stringliteral">&apos;-r&apos;</highlight><highlight class="normal">,<sp/></highlight><highlight class="stringliteral">&apos;--repeat&apos;</highlight><highlight class="normal">,<sp/>type=</highlight><highlight class="stringliteral">&quot;int&quot;</highlight><highlight class="normal">,<sp/>help=</highlight><highlight class="stringliteral">&quot;output<sp/>[n]<sp/>times&quot;</highlight><highlight class="normal">)</highlight></codeline>
<codeline lineno="16"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>],<sp/>arg_desc<sp/>=<sp/></highlight><highlight class="stringliteral">&apos;(text<sp/>to<sp/>say)&apos;</highlight><highlight class="normal">)</highlight></codeline>
<codeline lineno="17" refid="classexample_1_1CmdLineApp_1afdc6e3337a734471574398731d582ec9" refkind="member"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">def<sp/></highlight><highlight class="normal"><ref refid="classexample_1_1CmdLineApp_1afdc6e3337a734471574398731d582ec9" kindref="member">do_speak</ref>(self,<sp/>arg,<sp/>opts=None):</highlight></codeline>
<codeline lineno="18"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;&quot;&quot;Repeats<sp/>what<sp/>you<sp/>tell<sp/>me<sp/>to.&quot;&quot;&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="19"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>arg<sp/>=<sp/></highlight><highlight class="stringliteral">&apos;&apos;</highlight><highlight class="normal">.join(arg)</highlight></codeline>
<codeline lineno="20"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>opts.piglatin:</highlight></codeline>
<codeline lineno="21"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>arg<sp/>=<sp/></highlight><highlight class="stringliteral">&apos;%s%say&apos;</highlight><highlight class="normal"><sp/>%<sp/>(arg[1:].rstrip(),<sp/>arg[0])</highlight></codeline>
<codeline lineno="22"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>opts.shout:</highlight></codeline>
<codeline lineno="23"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>arg<sp/>=<sp/>arg.upper()</highlight></codeline>
<codeline lineno="24"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>repetitions<sp/>=<sp/>opts.repeat<sp/></highlight><highlight class="keywordflow">or</highlight><highlight class="normal"><sp/>1</highlight></codeline>
<codeline lineno="25"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">for</highlight><highlight class="normal"><sp/>i<sp/></highlight><highlight class="keywordflow">in</highlight><highlight class="normal"><sp/>range(min(repetitions,<sp/>self.<ref refid="classexample_1_1CmdLineApp_1a81a94979fcdd998c72d530e47bab88e0" kindref="member">maxrepeats</ref>)):</highlight></codeline>
<codeline lineno="26"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>self.stdout.write(arg)</highlight></codeline>
<codeline lineno="27"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>self.stdout.write(</highlight><highlight class="stringliteral">&apos;\n&apos;</highlight><highlight class="normal">)</highlight></codeline>
<codeline lineno="28"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">#<sp/>self.stdout.write<sp/>is<sp/>better<sp/>than<sp/>&quot;print&quot;,<sp/>because<sp/>Cmd<sp/>can<sp/>be</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="29"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">#<sp/>initialized<sp/>with<sp/>a<sp/>non-standard<sp/>output<sp/>destination<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="30"><highlight class="normal"></highlight></codeline>
<codeline lineno="31" refid="classexample_1_1CmdLineApp_1a5acab19a8c4c609e944ea1cb345a5ec3" refkind="member"><highlight class="normal"><sp/><sp/><sp/><sp/>do_say<sp/>=<sp/>do_speak<sp/><sp/><sp/><sp/><sp/></highlight><highlight class="comment">#<sp/>now<sp/>&quot;say&quot;<sp/>is<sp/>a<sp/>synonym<sp/>for<sp/>&quot;speak&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="32" refid="classexample_1_1CmdLineApp_1ac9058ddc022235f3876c6b410ddeb688" refkind="member"><highlight class="normal"><sp/><sp/><sp/><sp/>do_orate<sp/>=<sp/>do_speak<sp/><sp/><sp/></highlight><highlight class="comment">#<sp/>another<sp/>synonym,<sp/>but<sp/>this<sp/>one<sp/>takes<sp/>multi-line<sp/>input</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="33"><highlight class="normal"></highlight></codeline>
<codeline lineno="34" refid="namespaceexample_1a067d058cce4025d9c13742cbc474e211" refkind="member"><highlight class="normal">c<sp/>=<sp/><ref refid="classexample_1_1CmdLineApp" kindref="compound">CmdLineApp</ref>()</highlight></codeline>
<codeline lineno="35"><highlight class="normal">c.cmdloop()</highlight></codeline>
    </programlisting>
    <location file="/Users/amrogers/Developer/Projects/cmd2/example/example.py"/>
  </compounddef>
</doxygen>