Files
allhaileris afb81b8278
Some checks failed
Docker. / Ubuntu (push) Has been cancelled
User-agent updater. / User-agent (push) Failing after 15s
Lock Threads / lock (push) Failing after 10s
Waiting for answer. / waiting-for-answer (push) Failing after 22s
Close stale issues and PRs / stale (push) Successful in 13s
Needs user action. / needs-user-action (push) Failing after 8s
Can't reproduce. / cant-reproduce (push) Failing after 8s
init
2026-02-16 15:50:16 +03:00

215 lines
22 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">
<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.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Range-v3: Math</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>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.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>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_search(); });
/* @license-end */
</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">Range-v3
</div>
<div id="projectbrief">Range algorithms, views, and actions for the Standard Library</div>
</td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.svg"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('group__math.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- 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">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#groups">Modules</a> &#124;
<a href="#typedef-members">Typedefs</a> </div>
<div class="headertitle"><div class="title">Math<div class="ingroups"><a class="el" href="group__meta.html">Meta</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>Integral constant arithmetic.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="groups" name="groups"></a>
Modules</h2></td></tr>
<tr class="memitem:group__lazy__math"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__lazy__math.html">lazy</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga34d588aaca15812df2d4af67863bcfb4"><td class="memTemplParams" colspan="2"><a id="ga34d588aaca15812df2d4af67863bcfb4" name="ga34d588aaca15812df2d4af67863bcfb4"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga34d588aaca15812df2d4af67863bcfb4"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::bit_and</b> = std::integral_constant&lt; decltype(T::type::value &amp;U::type::value), T::type::value &amp;U::type::value &gt;</td></tr>
<tr class="memdesc:ga34d588aaca15812df2d4af67863bcfb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of bitwise-and'ing the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:ga34d588aaca15812df2d4af67863bcfb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7123fd4e34449e1357f8230c1c142f58"><td class="memTemplParams" colspan="2"><a id="ga7123fd4e34449e1357f8230c1c142f58" name="ga7123fd4e34449e1357f8230c1c142f58"></a>
template&lt;integral T&gt; </td></tr>
<tr class="memitem:ga7123fd4e34449e1357f8230c1c142f58"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::bit_not</b> = std::integral_constant&lt; decltype(~T::type::value), ~T::type::value &gt;</td></tr>
<tr class="memdesc:ga7123fd4e34449e1357f8230c1c142f58"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of bitwise-complementing the wrapped integer <code>T::type::value</code>. <br /></td></tr>
<tr class="separator:ga7123fd4e34449e1357f8230c1c142f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ae6f56a9b7c7f29593cd48812ce09ca"><td class="memTemplParams" colspan="2"><a id="ga5ae6f56a9b7c7f29593cd48812ce09ca" name="ga5ae6f56a9b7c7f29593cd48812ce09ca"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga5ae6f56a9b7c7f29593cd48812ce09ca"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::bit_or</b> = std::integral_constant&lt; decltype(T::type::value|U::type::value), T::type::value|U::type::value &gt;</td></tr>
<tr class="memdesc:ga5ae6f56a9b7c7f29593cd48812ce09ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of bitwise-or'ing the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:ga5ae6f56a9b7c7f29593cd48812ce09ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1bc30e36ab8d456a9907e1f16cf21976"><td class="memTemplParams" colspan="2"><a id="ga1bc30e36ab8d456a9907e1f16cf21976" name="ga1bc30e36ab8d456a9907e1f16cf21976"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga1bc30e36ab8d456a9907e1f16cf21976"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::bit_xor</b> = std::integral_constant&lt; decltype(T::type::value ^ U::type::value), T::type::value ^ U::type::value &gt;</td></tr>
<tr class="memdesc:ga1bc30e36ab8d456a9907e1f16cf21976"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of bitwise-exclusive-or'ing the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:ga1bc30e36ab8d456a9907e1f16cf21976"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4d16896fb397ec3ded21808fc2749b41"><td class="memTemplParams" colspan="2"><a id="ga4d16896fb397ec3ded21808fc2749b41" name="ga4d16896fb397ec3ded21808fc2749b41"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga4d16896fb397ec3ded21808fc2749b41"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::divides</b> = std::integral_constant&lt; decltype(T::type::value/U::type::value), T::type::value/U::type::value &gt;</td></tr>
<tr class="memdesc:ga4d16896fb397ec3ded21808fc2749b41"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of dividing the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:ga4d16896fb397ec3ded21808fc2749b41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadccc21f4cad9bc9971798006950c48a2"><td class="memTemplParams" colspan="2"><a id="gadccc21f4cad9bc9971798006950c48a2" name="gadccc21f4cad9bc9971798006950c48a2"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:gadccc21f4cad9bc9971798006950c48a2"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::equal_to</b> = <a class="el" href="group__integral.html#ga8cd5c79222ce70365f7469f35ece905a">bool_</a>&lt; T::type::value==U::type::value &gt;</td></tr>
<tr class="memdesc:gadccc21f4cad9bc9971798006950c48a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Boolean integral constant wrapper around the result of comparing <code>T::type::value</code> and <code>U::type::value</code> for equality. <br /></td></tr>
<tr class="separator:gadccc21f4cad9bc9971798006950c48a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf4b1427cc9c4040ffca9845c068621ed"><td class="memTemplParams" colspan="2"><a id="gaf4b1427cc9c4040ffca9845c068621ed" name="gaf4b1427cc9c4040ffca9845c068621ed"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:gaf4b1427cc9c4040ffca9845c068621ed"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::greater</b> = <a class="el" href="group__integral.html#ga8cd5c79222ce70365f7469f35ece905a">bool_</a>&lt;(T::type::value &gt; U::type::value)&gt;</td></tr>
<tr class="memdesc:gaf4b1427cc9c4040ffca9845c068621ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Boolean integral constant wrapper around <code>true</code> if <code>T::type::value</code> is greater than <code>U::type::value</code>; <code>false</code>, otherwise. <br /></td></tr>
<tr class="separator:gaf4b1427cc9c4040ffca9845c068621ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga03eb74e40109672a931e14505c90f40d"><td class="memTemplParams" colspan="2"><a id="ga03eb74e40109672a931e14505c90f40d" name="ga03eb74e40109672a931e14505c90f40d"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga03eb74e40109672a931e14505c90f40d"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::greater_equal</b> = <a class="el" href="group__integral.html#ga8cd5c79222ce70365f7469f35ece905a">bool_</a>&lt;(T::type::value &gt;=U::type::value)&gt;</td></tr>
<tr class="memdesc:ga03eb74e40109672a931e14505c90f40d"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Boolean integral constant wrapper around <code>true</code> if <code>T::type::value</code> is greater than or equal to <code>U::type::value</code>; <code>false</code>, otherwise. <br /></td></tr>
<tr class="separator:ga03eb74e40109672a931e14505c90f40d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabdb640343287440ca84ce0217faf7741"><td class="memTemplParams" colspan="2"><a id="gabdb640343287440ca84ce0217faf7741" name="gabdb640343287440ca84ce0217faf7741"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:gabdb640343287440ca84ce0217faf7741"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::less</b> = <a class="el" href="group__integral.html#ga8cd5c79222ce70365f7469f35ece905a">bool_</a>&lt;(T::type::value&lt; U::type::value)&gt;</td></tr>
<tr class="memdesc:gabdb640343287440ca84ce0217faf7741"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Boolean integral constant wrapper around <code>true</code> if <code>T::type::value</code> is less than <code>U::type::value</code>; <code>false</code>, otherwise. <br /></td></tr>
<tr class="separator:gabdb640343287440ca84ce0217faf7741"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab2b03f0bfd42cbb237831b6aaf2f0ef5"><td class="memTemplParams" colspan="2"><a id="gab2b03f0bfd42cbb237831b6aaf2f0ef5" name="gab2b03f0bfd42cbb237831b6aaf2f0ef5"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:gab2b03f0bfd42cbb237831b6aaf2f0ef5"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::less_equal</b> = <a class="el" href="group__integral.html#ga8cd5c79222ce70365f7469f35ece905a">bool_</a>&lt;(T::type::value&lt;=U::type::value)&gt;</td></tr>
<tr class="memdesc:gab2b03f0bfd42cbb237831b6aaf2f0ef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Boolean integral constant wrapper around <code>true</code> if <code>T::type::value</code> is less than or equal to <code>U::type::value</code>; <code>false</code>, otherwise. <br /></td></tr>
<tr class="separator:gab2b03f0bfd42cbb237831b6aaf2f0ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafdb706a104cdb0d6753839332767fbd8"><td class="memTemplParams" colspan="2"><a id="gafdb706a104cdb0d6753839332767fbd8" name="gafdb706a104cdb0d6753839332767fbd8"></a>
template&lt;integral ... Ts&gt; </td></tr>
<tr class="memitem:gafdb706a104cdb0d6753839332767fbd8"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::max_</b> = <a class="el" href="group__transformation.html#gace05917716be9857eb49b847b17548ff">fold</a>&lt; <a class="el" href="group__transformation.html#gae161f030face244119ce54815630d878">pop_front</a>&lt; <a class="el" href="structmeta_1_1list.html">list</a>&lt; Ts... &gt; &gt;, <a class="el" href="group__list.html#gadd1d8e54275858523926ab20aa88ed0a">front</a>&lt; <a class="el" href="structmeta_1_1list.html">list</a>&lt; Ts... &gt; &gt;, <a class="el" href="structmeta_1_1quote.html">quote</a>&lt; detail::max_ &gt; &gt;</td></tr>
<tr class="memdesc:gafdb706a104cdb0d6753839332767fbd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the maximum of <code>Ts::type::value...</code> <br /></td></tr>
<tr class="separator:gafdb706a104cdb0d6753839332767fbd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga05bc34dddc89823545d871c4fe9e6de4"><td class="memTemplParams" colspan="2"><a id="ga05bc34dddc89823545d871c4fe9e6de4" name="ga05bc34dddc89823545d871c4fe9e6de4"></a>
template&lt;integral ... Ts&gt; </td></tr>
<tr class="memitem:ga05bc34dddc89823545d871c4fe9e6de4"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::min_</b> = <a class="el" href="group__transformation.html#gace05917716be9857eb49b847b17548ff">fold</a>&lt; <a class="el" href="group__transformation.html#gae161f030face244119ce54815630d878">pop_front</a>&lt; <a class="el" href="structmeta_1_1list.html">list</a>&lt; Ts... &gt; &gt;, <a class="el" href="group__list.html#gadd1d8e54275858523926ab20aa88ed0a">front</a>&lt; <a class="el" href="structmeta_1_1list.html">list</a>&lt; Ts... &gt; &gt;, <a class="el" href="structmeta_1_1quote.html">quote</a>&lt; detail::min_ &gt; &gt;</td></tr>
<tr class="memdesc:ga05bc34dddc89823545d871c4fe9e6de4"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the minimum of <code>Ts::type::value...</code> <br /></td></tr>
<tr class="separator:ga05bc34dddc89823545d871c4fe9e6de4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5738a7d892d9bf6f281f87b556057ecb"><td class="memTemplParams" colspan="2"><a id="ga5738a7d892d9bf6f281f87b556057ecb" name="ga5738a7d892d9bf6f281f87b556057ecb"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga5738a7d892d9bf6f281f87b556057ecb"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::minus</b> = std::integral_constant&lt; decltype(T::type::value - U::type::value), T::type::value - U::type::value &gt;</td></tr>
<tr class="memdesc:ga5738a7d892d9bf6f281f87b556057ecb"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of subtracting the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:ga5738a7d892d9bf6f281f87b556057ecb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadb0adcf6123000b8aabccca5a6090289"><td class="memTemplParams" colspan="2"><a id="gadb0adcf6123000b8aabccca5a6090289" name="gadb0adcf6123000b8aabccca5a6090289"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:gadb0adcf6123000b8aabccca5a6090289"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::modulus</b> = std::integral_constant&lt; decltype(T::type::value % U::type::value), T::type::value % U::type::value &gt;</td></tr>
<tr class="memdesc:gadb0adcf6123000b8aabccca5a6090289"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the remainder of dividing the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:gadb0adcf6123000b8aabccca5a6090289"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga795c76535d57404cdfd5e42e247ce109"><td class="memTemplParams" colspan="2"><a id="ga795c76535d57404cdfd5e42e247ce109" name="ga795c76535d57404cdfd5e42e247ce109"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga795c76535d57404cdfd5e42e247ce109"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::multiplies</b> = std::integral_constant&lt; decltype(T::type::value *U::type::value), T::type::value *U::type::value &gt;</td></tr>
<tr class="memdesc:ga795c76535d57404cdfd5e42e247ce109"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of multiplying the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:ga795c76535d57404cdfd5e42e247ce109"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9f3a3adf2556161e23d0b181d075498a"><td class="memTemplParams" colspan="2"><a id="ga9f3a3adf2556161e23d0b181d075498a" name="ga9f3a3adf2556161e23d0b181d075498a"></a>
template&lt;integral T&gt; </td></tr>
<tr class="memitem:ga9f3a3adf2556161e23d0b181d075498a"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::negate</b> = std::integral_constant&lt; decltype(-T::type::value), -T::type::value &gt;</td></tr>
<tr class="memdesc:ga9f3a3adf2556161e23d0b181d075498a"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of negating the wrapped integer <code>T::type::value</code>. <br /></td></tr>
<tr class="separator:ga9f3a3adf2556161e23d0b181d075498a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0ac5f5c29d6eacedec33733d5e224ec0"><td class="memTemplParams" colspan="2"><a id="ga0ac5f5c29d6eacedec33733d5e224ec0" name="ga0ac5f5c29d6eacedec33733d5e224ec0"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:ga0ac5f5c29d6eacedec33733d5e224ec0"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::not_equal_to</b> = <a class="el" href="group__integral.html#ga8cd5c79222ce70365f7469f35ece905a">bool_</a>&lt; T::type::value !=U::type::value &gt;</td></tr>
<tr class="memdesc:ga0ac5f5c29d6eacedec33733d5e224ec0"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Boolean integral constant wrapper around the result of comparing <code>T::type::value</code> and <code>U::type::value</code> for inequality. <br /></td></tr>
<tr class="separator:ga0ac5f5c29d6eacedec33733d5e224ec0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab5e2f54a307613cfd97223ca45fb2419"><td class="memTemplParams" colspan="2"><a id="gab5e2f54a307613cfd97223ca45fb2419" name="gab5e2f54a307613cfd97223ca45fb2419"></a>
template&lt;integral T, integral U&gt; </td></tr>
<tr class="memitem:gab5e2f54a307613cfd97223ca45fb2419"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><b>meta::plus</b> = std::integral_constant&lt; decltype(T::type::value+U::type::value), T::type::value+U::type::value &gt;</td></tr>
<tr class="memdesc:gab5e2f54a307613cfd97223ca45fb2419"><td class="mdescLeft">&#160;</td><td class="mdescRight">An integral constant wrapper around the result of adding the two wrapped integers <code>T::type::value</code> and <code>U::type::value</code>. <br /></td></tr>
<tr class="separator:gab5e2f54a307613cfd97223ca45fb2419"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p >Integral constant arithmetic. </p>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>