stdex/structstdex_1_1interval.html

792 lines
40 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.10.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>stdex: stdex::interval&lt; T &gt; Struct Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">stdex
</div>
<div id="projectbrief">Additional custom or not Standard C++ covered algorithms</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.10.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>stdex</b></li><li class="navelem"><a class="el" href="structstdex_1_1interval.html">interval</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structstdex_1_1interval-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">stdex::interval&lt; T &gt; Struct Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Numerical interval.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="interval_8hpp_source.html">stdex/interval.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9f6c66e8a3fd15c693011216bb45d6b9" id="r_a9f6c66e8a3fd15c693011216bb45d6b9"><td class="memItemLeft" align="right" valign="top"><a id="a9f6c66e8a3fd15c693011216bb45d6b9" name="a9f6c66e8a3fd15c693011216bb45d6b9"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>interval</b> () noexcept</td></tr>
<tr class="memdesc:a9f6c66e8a3fd15c693011216bb45d6b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an invalid interval. <br /></td></tr>
<tr class="separator:a9f6c66e8a3fd15c693011216bb45d6b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a100a68cd81867cbf1b275cd5ab5d2160" id="r_a100a68cd81867cbf1b275cd5ab5d2160"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a100a68cd81867cbf1b275cd5ab5d2160">interval</a> (T x) noexcept</td></tr>
<tr class="memdesc:a100a68cd81867cbf1b275cd5ab5d2160"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a zero-size interval. <br /></td></tr>
<tr class="separator:a100a68cd81867cbf1b275cd5ab5d2160"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41ac8e9fdb33a2dfaae6113006b792d8" id="r_a41ac8e9fdb33a2dfaae6113006b792d8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a41ac8e9fdb33a2dfaae6113006b792d8">interval</a> (T _start, T _end) noexcept</td></tr>
<tr class="memdesc:a41ac8e9fdb33a2dfaae6113006b792d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an interval. <br /></td></tr>
<tr class="separator:a41ac8e9fdb33a2dfaae6113006b792d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c5222bc73fc66ba78bfabc1b985c864" id="r_a8c5222bc73fc66ba78bfabc1b985c864"><td class="memItemLeft" align="right" valign="top">T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8c5222bc73fc66ba78bfabc1b985c864">size</a> () const</td></tr>
<tr class="memdesc:a8c5222bc73fc66ba78bfabc1b985c864"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns interval size. <br /></td></tr>
<tr class="separator:a8c5222bc73fc66ba78bfabc1b985c864"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fa5153f1f7707e21dc41c31197659a4" id="r_a1fa5153f1f7707e21dc41c31197659a4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1fa5153f1f7707e21dc41c31197659a4">empty</a> () const</td></tr>
<tr class="memdesc:a1fa5153f1f7707e21dc41c31197659a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is interval empty? <br /></td></tr>
<tr class="separator:a1fa5153f1f7707e21dc41c31197659a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8113c9f2e3781fb25e30cb3d139e119" id="r_aa8113c9f2e3781fb25e30cb3d139e119"><td class="memItemLeft" align="right" valign="top"><a id="aa8113c9f2e3781fb25e30cb3d139e119" name="aa8113c9f2e3781fb25e30cb3d139e119"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>invalidate</b> ()</td></tr>
<tr class="memdesc:aa8113c9f2e3781fb25e30cb3d139e119"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalidates interval. <br /></td></tr>
<tr class="separator:aa8113c9f2e3781fb25e30cb3d139e119"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15945d1ba829410c61466d95922000d0" id="r_a15945d1ba829410c61466d95922000d0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a15945d1ba829410c61466d95922000d0">operator bool</a> () const</td></tr>
<tr class="memdesc:a15945d1ba829410c61466d95922000d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is interval valid? <br /></td></tr>
<tr class="separator:a15945d1ba829410c61466d95922000d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1624ca77e8c9cb45cef61f7f8b532222" id="r_a1624ca77e8c9cb45cef61f7f8b532222"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1624ca77e8c9cb45cef61f7f8b532222">contains</a> (T x) const</td></tr>
<tr class="memdesc:a1624ca77e8c9cb45cef61f7f8b532222"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is value in interval? <br /></td></tr>
<tr class="separator:a1624ca77e8c9cb45cef61f7f8b532222"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fffa4a0acac53cead2e0e8e4414444b" id="r_a0fffa4a0acac53cead2e0e8e4414444b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0fffa4a0acac53cead2e0e8e4414444b">operator+</a> (const <a class="el" href="structstdex_1_1interval.html">interval</a> &amp;other) const</td></tr>
<tr class="memdesc:a0fffa4a0acac53cead2e0e8e4414444b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds two intervals by components. <br /></td></tr>
<tr class="separator:a0fffa4a0acac53cead2e0e8e4414444b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a513b7d1e5239789e0cd3d2d3b52bfec8" id="r_a513b7d1e5239789e0cd3d2d3b52bfec8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a513b7d1e5239789e0cd3d2d3b52bfec8">operator+</a> (const T x) const</td></tr>
<tr class="memdesc:a513b7d1e5239789e0cd3d2d3b52bfec8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the end by a number. <br /></td></tr>
<tr class="separator:a513b7d1e5239789e0cd3d2d3b52bfec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fdb836bb17143226f667b03b4617a8e" id="r_a1fdb836bb17143226f667b03b4617a8e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1fdb836bb17143226f667b03b4617a8e">operator+=</a> (const T x)</td></tr>
<tr class="memdesc:a1fdb836bb17143226f667b03b4617a8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the end by a number. <br /></td></tr>
<tr class="separator:a1fdb836bb17143226f667b03b4617a8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bfdfd117da4f7811929ce1d0a194e70" id="r_a4bfdfd117da4f7811929ce1d0a194e70"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4bfdfd117da4f7811929ce1d0a194e70">operator++</a> ()</td></tr>
<tr class="memdesc:a4bfdfd117da4f7811929ce1d0a194e70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the end by one. <br /></td></tr>
<tr class="separator:a4bfdfd117da4f7811929ce1d0a194e70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46259cbeb3d74b3d83e35d8a40130380" id="r_a46259cbeb3d74b3d83e35d8a40130380"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a46259cbeb3d74b3d83e35d8a40130380">operator++</a> (int)</td></tr>
<tr class="memdesc:a46259cbeb3d74b3d83e35d8a40130380"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the end by one. <br /></td></tr>
<tr class="separator:a46259cbeb3d74b3d83e35d8a40130380"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa434dd39698a95feea335fa75e7d7347" id="r_aa434dd39698a95feea335fa75e7d7347"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa434dd39698a95feea335fa75e7d7347">operator-</a> (const <a class="el" href="structstdex_1_1interval.html">interval</a> &amp;other) const</td></tr>
<tr class="memdesc:aa434dd39698a95feea335fa75e7d7347"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtracts two intervals by components. <br /></td></tr>
<tr class="separator:aa434dd39698a95feea335fa75e7d7347"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1171ae839a6e7139ebaaf04fe2bafae" id="r_aa1171ae839a6e7139ebaaf04fe2bafae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa1171ae839a6e7139ebaaf04fe2bafae">operator-</a> (const T x) const</td></tr>
<tr class="memdesc:aa1171ae839a6e7139ebaaf04fe2bafae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the beginning by a number. <br /></td></tr>
<tr class="separator:aa1171ae839a6e7139ebaaf04fe2bafae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04d5e6387d4d76f23be906d7c930253f" id="r_a04d5e6387d4d76f23be906d7c930253f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a04d5e6387d4d76f23be906d7c930253f">operator-=</a> (const T x)</td></tr>
<tr class="memdesc:a04d5e6387d4d76f23be906d7c930253f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the beginning by a number. <br /></td></tr>
<tr class="separator:a04d5e6387d4d76f23be906d7c930253f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae0d87b8a3975d7ce92ab51e97783b3cf" id="r_ae0d87b8a3975d7ce92ab51e97783b3cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae0d87b8a3975d7ce92ab51e97783b3cf">operator--</a> ()</td></tr>
<tr class="memdesc:ae0d87b8a3975d7ce92ab51e97783b3cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the beginning by one. <br /></td></tr>
<tr class="separator:ae0d87b8a3975d7ce92ab51e97783b3cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab207eaa925d0f6a146cacc9d69117df6" id="r_ab207eaa925d0f6a146cacc9d69117df6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdex_1_1interval.html">interval</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab207eaa925d0f6a146cacc9d69117df6">operator--</a> (int)</td></tr>
<tr class="memdesc:ab207eaa925d0f6a146cacc9d69117df6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves interval towards the begginning by one. <br /></td></tr>
<tr class="separator:ab207eaa925d0f6a146cacc9d69117df6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abec7b896ea0d650fc086955b0cba00a9" id="r_abec7b896ea0d650fc086955b0cba00a9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abec7b896ea0d650fc086955b0cba00a9">operator==</a> (const <a class="el" href="structstdex_1_1interval.html">interval</a> &amp;other) const</td></tr>
<tr class="memdesc:abec7b896ea0d650fc086955b0cba00a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Are intervals identical? <br /></td></tr>
<tr class="separator:abec7b896ea0d650fc086955b0cba00a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5e6ff5a63e3cd9f8e36a32663ebfda8" id="r_aa5e6ff5a63e3cd9f8e36a32663ebfda8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa5e6ff5a63e3cd9f8e36a32663ebfda8">operator!=</a> (const <a class="el" href="structstdex_1_1interval.html">interval</a> &amp;other) const</td></tr>
<tr class="memdesc:aa5e6ff5a63e3cd9f8e36a32663ebfda8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Are intervals different? <br /></td></tr>
<tr class="separator:aa5e6ff5a63e3cd9f8e36a32663ebfda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ab6a104de0f15b29bea77fe181b49c40b" id="r_ab6a104de0f15b29bea77fe181b49c40b"><td class="memItemLeft" align="right" valign="top"><a id="ab6a104de0f15b29bea77fe181b49c40b" name="ab6a104de0f15b29bea77fe181b49c40b"></a>
T&#160;</td><td class="memItemRight" valign="bottom"><b>start</b></td></tr>
<tr class="memdesc:ab6a104de0f15b29bea77fe181b49c40b"><td class="mdescLeft">&#160;</td><td class="mdescRight">interval start <br /></td></tr>
<tr class="separator:ab6a104de0f15b29bea77fe181b49c40b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b92e2b20290d8ac5a9b00209f25e27a" id="r_a9b92e2b20290d8ac5a9b00209f25e27a"><td class="memItemLeft" align="right" valign="top"><a id="a9b92e2b20290d8ac5a9b00209f25e27a" name="a9b92e2b20290d8ac5a9b00209f25e27a"></a>
T&#160;</td><td class="memItemRight" valign="bottom"><b>end</b></td></tr>
<tr class="memdesc:a9b92e2b20290d8ac5a9b00209f25e27a"><td class="mdescLeft">&#160;</td><td class="mdescRight">interval end <br /></td></tr>
<tr class="separator:a9b92e2b20290d8ac5a9b00209f25e27a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;class T&gt;<br />
struct stdex::interval&lt; T &gt;</div><p>Numerical interval. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a100a68cd81867cbf1b275cd5ab5d2160" name="a100a68cd81867cbf1b275cd5ab5d2160"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a100a68cd81867cbf1b275cd5ab5d2160">&#9670;&#160;</a></span>interval() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::interval </td>
<td>(</td>
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a zero-size interval. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Interval start and end value </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a41ac8e9fdb33a2dfaae6113006b792d8" name="a41ac8e9fdb33a2dfaae6113006b792d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41ac8e9fdb33a2dfaae6113006b792d8">&#9670;&#160;</a></span>interval() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::interval </td>
<td>(</td>
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>_start</em>, </span></td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>_end</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an interval. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">_start</td><td>Interval start value </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">_end</td><td>Interval end value </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a1624ca77e8c9cb45cef61f7f8b532222" name="a1624ca77e8c9cb45cef61f7f8b532222"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1624ca77e8c9cb45cef61f7f8b532222">&#9670;&#160;</a></span>contains()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::contains </td>
<td>(</td>
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Is value in interval? </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Value to test</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if x is in [start, end) or false otherwise </dd></dl>
</div>
</div>
<a id="a1fa5153f1f7707e21dc41c31197659a4" name="a1fa5153f1f7707e21dc41c31197659a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1fa5153f1f7707e21dc41c31197659a4">&#9670;&#160;</a></span>empty()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::empty </td>
<td>(</td>
<td class="paramname"><span class="paramname"></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Is interval empty? </p>
<dl class="section return"><dt>Returns</dt><dd>true if interval is empty or false otherwise </dd></dl>
</div>
</div>
<a id="a15945d1ba829410c61466d95922000d0" name="a15945d1ba829410c61466d95922000d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15945d1ba829410c61466d95922000d0">&#9670;&#160;</a></span>operator bool()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator bool </td>
<td>(</td>
<td class="paramname"><span class="paramname"></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Is interval valid? </p>
<dl class="section return"><dt>Returns</dt><dd>true if interval is valid or false otherwise </dd></dl>
</div>
</div>
<a id="aa5e6ff5a63e3cd9f8e36a32663ebfda8" name="aa5e6ff5a63e3cd9f8e36a32663ebfda8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5e6ff5a63e3cd9f8e36a32663ebfda8">&#9670;&#160;</a></span>operator!=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator!= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstdex_1_1interval.html">interval</a>&lt; T &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Are intervals different? </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>Second interval to compare</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if intervals are different or false otherwise </dd></dl>
</div>
</div>
<a id="a0fffa4a0acac53cead2e0e8e4414444b" name="a0fffa4a0acac53cead2e0e8e4414444b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fffa4a0acac53cead2e0e8e4414444b">&#9670;&#160;</a></span>operator+() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator+ </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstdex_1_1interval.html">interval</a>&lt; T &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds two intervals by components. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>Second interval</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Resulting interval </dd></dl>
</div>
</div>
<a id="a513b7d1e5239789e0cd3d2d3b52bfec8" name="a513b7d1e5239789e0cd3d2d3b52bfec8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a513b7d1e5239789e0cd3d2d3b52bfec8">&#9670;&#160;</a></span>operator+() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator+ </td>
<td>(</td>
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the end by a number. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Amount to move for</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Moved interval </dd></dl>
</div>
</div>
<a id="a4bfdfd117da4f7811929ce1d0a194e70" name="a4bfdfd117da4f7811929ce1d0a194e70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4bfdfd117da4f7811929ce1d0a194e70">&#9670;&#160;</a></span>operator++() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator++ </td>
<td>(</td>
<td class="paramname"><span class="paramname"></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the end by one. </p>
<dl class="section return"><dt>Returns</dt><dd>Moved interval </dd></dl>
</div>
</div>
<a id="a46259cbeb3d74b3d83e35d8a40130380" name="a46259cbeb3d74b3d83e35d8a40130380"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46259cbeb3d74b3d83e35d8a40130380">&#9670;&#160;</a></span>operator++() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator++ </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the end by one. </p>
<dl class="section return"><dt>Returns</dt><dd>Original interval </dd></dl>
</div>
</div>
<a id="a1fdb836bb17143226f667b03b4617a8e" name="a1fdb836bb17143226f667b03b4617a8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1fdb836bb17143226f667b03b4617a8e">&#9670;&#160;</a></span>operator+=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator+= </td>
<td>(</td>
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the end by a number. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Amount to move for</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Resulting interval </dd></dl>
</div>
</div>
<a id="aa434dd39698a95feea335fa75e7d7347" name="aa434dd39698a95feea335fa75e7d7347"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa434dd39698a95feea335fa75e7d7347">&#9670;&#160;</a></span>operator-() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator- </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstdex_1_1interval.html">interval</a>&lt; T &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Subtracts two intervals by components. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>Second interval</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Resulting interval </dd></dl>
</div>
</div>
<a id="aa1171ae839a6e7139ebaaf04fe2bafae" name="aa1171ae839a6e7139ebaaf04fe2bafae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1171ae839a6e7139ebaaf04fe2bafae">&#9670;&#160;</a></span>operator-() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator- </td>
<td>(</td>
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the beginning by a number. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Amount to move for</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Moved interval </dd></dl>
</div>
</div>
<a id="ae0d87b8a3975d7ce92ab51e97783b3cf" name="ae0d87b8a3975d7ce92ab51e97783b3cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae0d87b8a3975d7ce92ab51e97783b3cf">&#9670;&#160;</a></span>operator--() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator-- </td>
<td>(</td>
<td class="paramname"><span class="paramname"></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the beginning by one. </p>
<dl class="section return"><dt>Returns</dt><dd>Moved interval </dd></dl>
</div>
</div>
<a id="ab207eaa925d0f6a146cacc9d69117df6" name="ab207eaa925d0f6a146cacc9d69117df6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab207eaa925d0f6a146cacc9d69117df6">&#9670;&#160;</a></span>operator--() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator-- </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the begginning by one. </p>
<dl class="section return"><dt>Returns</dt><dd>Original interval </dd></dl>
</div>
</div>
<a id="a04d5e6387d4d76f23be906d7c930253f" name="a04d5e6387d4d76f23be906d7c930253f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04d5e6387d4d76f23be906d7c930253f">&#9670;&#160;</a></span>operator-=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstdex_1_1interval.html">interval</a> <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator-= </td>
<td>(</td>
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>x</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves interval towards the beginning by a number. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Amount to move for</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Resulting interval </dd></dl>
</div>
</div>
<a id="abec7b896ea0d650fc086955b0cba00a9" name="abec7b896ea0d650fc086955b0cba00a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abec7b896ea0d650fc086955b0cba00a9">&#9670;&#160;</a></span>operator==()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::operator== </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structstdex_1_1interval.html">interval</a>&lt; T &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Are intervals identical? </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>Second interval to compare</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if intervals are identical or false otherwise </dd></dl>
</div>
</div>
<a id="a8c5222bc73fc66ba78bfabc1b985c864" name="a8c5222bc73fc66ba78bfabc1b985c864"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c5222bc73fc66ba78bfabc1b985c864">&#9670;&#160;</a></span>size()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">T <a class="el" href="structstdex_1_1interval.html">stdex::interval</a>&lt; T &gt;::size </td>
<td>(</td>
<td class="paramname"><span class="paramname"></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns interval size. </p>
<dl class="section return"><dt>Returns</dt><dd>Interval size or 0 if interval is invalid </dd></dl>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/stdex/<a class="el" href="interval_8hpp_source.html">interval.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Mar 4 2024 13:35:24 for stdex by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.10.0
</small></address>
</body>
</html>