Compiled doxygen
This commit is contained in:
@@ -310,15 +310,13 @@ Parameter incompatibilities</h2>
|
||||
<div class="line"> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line">}</div>
|
||||
</div><!-- fragment --><hr />
|
||||
<p> Note that you can also combine these two constraint-types by populating the struct yourself: </p><div class="fragment"><div class="line">ParamConstraint pc;</div>
|
||||
<div class="line">pc.constrainType = <span class="keyword">true</span>;</div>
|
||||
<div class="line">pc.requiredType = DATA_TYPE::STRING;</div>
|
||||
<div class="line">pc.defaultValue = {}; <span class="comment">// no default value</span></div>
|
||||
<div class="line">pc.required = <span class="keyword">true</span>;</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line">args.<a class="code" href="classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2">RegisterConstraint</a>(<span class="stringliteral">"--my-key"</span>, pc);</div>
|
||||
</div><!-- fragment --><p>What doesn't work is inserting multiple constraints for one key. It will just discard the older one. But that's okay because one can describe all possible constraints for a single key in <b>one</b> struct.</p>
|
||||
<p><span id="automatic-parameter-documentation"></span> </p>
|
||||
<p> Keep in mind that you can only register ONE constraint for each parameter! Adding another one will just overwrite the prior one. However, one constraint can do all three "types" at once if you daisychain them: </p><div class="fragment"><div class="line">args.<a class="code" href="classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2">RegisterConstraint</a>(</div>
|
||||
<div class="line"> <span class="stringliteral">"--width"</span>,</div>
|
||||
<div class="line"> ParamConstraint::Require() <span class="comment">// Make this parameter mandatory</span></div>
|
||||
<div class="line"> .AddTypeSafety(DATA_TYPE::FLOAT) <span class="comment">// Force this param to be a float</span></div>
|
||||
<div class="line"> .AddIncompatibility({ <span class="stringliteral">"--antiwidth"</span> }) <span class="comment">// Make this param incompatible with '--antiwidth'</span></div>
|
||||
<div class="line">);</div>
|
||||
</div><!-- fragment --><p><span id="automatic-parameter-documentation"></span> </p>
|
||||
<h1><a class="anchor" id="autotoc_md12"></a>
|
||||
Automatic parameter documentation</h1>
|
||||
<p>Hazelnupp does automatically create a parameter documentation, accessible via <code>--help</code>. <br />
|
||||
@@ -424,18 +422,18 @@ LICENSE</h1>
|
||||
<div class="ttc" id="anamespaceHazelnp_html"><div class="ttname"><a href="namespaceHazelnp.html">Hazelnp</a></div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8h_source.html#l00009">CmdArgsInterface.h:9</a></div></div>
|
||||
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a8a7e5d7ddffc3cfbb54ac6823dd7eded"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a8a7e5d7ddffc3cfbb54ac6823dd7eded">Hazelnp::ParamConstraint::Require</a></div><div class="ttdeci">static ParamConstraint Require(const std::initializer_list< std::string > &defaultValue={}, bool required=true)</div><div class="ttdoc">Constructs a require constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00016">ParamConstraint.h:16</a></div></div>
|
||||
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html">Hazelnp::CmdArgsInterface</a></div><div class="ttdoc">The main class to interface with.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8h_source.html#l00013">CmdArgsInterface.h:13</a></div></div>
|
||||
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a20fa41460106b5327a51114f8a187871"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a20fa41460106b5327a51114f8a187871">Hazelnp::ParamConstraint::Incompatibility</a></div><div class="ttdeci">static ParamConstraint Incompatibility(const std::initializer_list< std::string > &incompatibleParameters)</div><div class="ttdoc">Constructs an incompatibility constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00037">ParamConstraint.h:37</a></div></div>
|
||||
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a20fa41460106b5327a51114f8a187871"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a20fa41460106b5327a51114f8a187871">Hazelnp::ParamConstraint::Incompatibility</a></div><div class="ttdeci">static ParamConstraint Incompatibility(const std::initializer_list< std::string > &incompatibleParameters)</div><div class="ttdoc">Constructs an incompatibility constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00059">ParamConstraint.h:59</a></div></div>
|
||||
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_abf553ed4acabf9e1db357715bc10533c"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#abf553ed4acabf9e1db357715bc10533c">Hazelnp::CmdArgsInterface::SetCatchHelp</a></div><div class="ttdeci">void SetCatchHelp(bool catchHelp)</div><div class="ttdoc">Sets whether the CmdArgsInterface should automatically catch the –help parameter, print the parameter...</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00368">CmdArgsInterface.cpp:368</a></div></div>
|
||||
<div class="ttc" id="aclassHazelnp_1_1HazelnuppInvalidKeyException_html"><div class="ttname"><a href="classHazelnp_1_1HazelnuppInvalidKeyException.html">Hazelnp::HazelnuppInvalidKeyException</a></div><div class="ttdoc">Gets thrown when an non-existent key gets dereferenced.</div><div class="ttdef"><b>Definition:</b> <a href="HazelnuppException_8h_source.html#l00029">HazelnuppException.h:29</a></div></div>
|
||||
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_aa30222df012f357455f90e3620346bb2"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2">Hazelnp::CmdArgsInterface::RegisterConstraint</a></div><div class="ttdeci">void RegisterConstraint(const std::string &key, const ParamConstraint &constraint)</div><div class="ttdoc">Will register a constraint for a parameter.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00663">CmdArgsInterface.cpp:663</a></div></div>
|
||||
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_aaccf591a74408aeb4363033fe8cb2224"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#aaccf591a74408aeb4363033fe8cb2224">Hazelnp::CmdArgsInterface::RegisterAbbreviation</a></div><div class="ttdeci">void RegisterAbbreviation(const std::string &abbrev, const std::string &target)</div><div class="ttdoc">Will register an abbreviation (like -f for –force)</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00632">CmdArgsInterface.cpp:632</a></div></div>
|
||||
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_a3a7fa36fe69ee8bf3b400983a21ecd24"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#a3a7fa36fe69ee8bf3b400983a21ecd24">Hazelnp::CmdArgsInterface::HasParam</a></div><div class="ttdeci">bool HasParam(const std::string &key) const</div><div class="ttdoc">Will check wether a parameter exists given a key, or not.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00199">CmdArgsInterface.cpp:199</a></div></div>
|
||||
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_a1f4845041e08b3335510de44fafaee19"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#a1f4845041e08b3335510de44fafaee19">Hazelnp::CmdArgsInterface::Parse</a></div><div class="ttdeci">void Parse(const int argc, const char *const *argv)</div><div class="ttdoc">Will parse command line arguments.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00036">CmdArgsInterface.cpp:36</a></div></div>
|
||||
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a7df61dbc8dbaff4bc596fdf2c0532d5b"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a7df61dbc8dbaff4bc596fdf2c0532d5b">Hazelnp::ParamConstraint::TypeSafety</a></div><div class="ttdeci">static ParamConstraint TypeSafety(DATA_TYPE requiredType, bool constrainType=true)</div><div class="ttdoc">Constructs a type-safety constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00026">ParamConstraint.h:26</a></div></div>
|
||||
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a7df61dbc8dbaff4bc596fdf2c0532d5b"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a7df61dbc8dbaff4bc596fdf2c0532d5b">Hazelnp::ParamConstraint::TypeSafety</a></div><div class="ttdeci">static ParamConstraint TypeSafety(DATA_TYPE requiredType, bool constrainType=true)</div><div class="ttdoc">Constructs a type-safety constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00037">ParamConstraint.h:37</a></div></div>
|
||||
<div class="ttc" id="anamespaceHazelnp_html_a07b61ac22ce9cd97eceebdf9487f803fa53f93baa3057821107c750323892fa92"><div class="ttname"><a href="namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa53f93baa3057821107c750323892fa92">Hazelnp::DATA_TYPE::INT</a></div><div class="ttdeci">@ INT</div></div>
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sun Sep 5 2021 12:24:40 for Leonetienne/Hazelnupp by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Sep 5 2021 12:56:58 for Leonetienne/Hazelnupp by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.17
|
||||
</small></address>
|
||||
|
Reference in New Issue
Block a user