|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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=9"/>
- <meta name="generator" content="Doxygen 1.8.14"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>uTL: include/utl/meta/operations.h File 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>
- <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>
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- $(document).ready(initResizable);
- /* @license-end */</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 style="height: 56px;">
- <td id="projectalign" style="padding-left: 0.5em;">
- <div id="projectname">uTL
- </div>
- <div id="projectbrief">micro Template library</div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.8.14 -->
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- var searchBox = new SearchBox("searchBox", "search",false,'Search');
- /* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- $(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
- });
- /* @license-end */</script>
- <div id="main-nav"></div>
- </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:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- $(document).ready(function(){initNavTree('operations_8h.html','');});
- /* @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="#nested-classes">Classes</a> |
- <a href="#namespaces">Namespaces</a> |
- <a href="#typedef-members">Typedefs</a> </div>
- <div class="headertitle">
- <div class="title">operations.h File Reference</div> </div>
- </div><!--header-->
- <div class="contents">
-
- <p>Integral constant operations and logical operations.
- <a href="#details">More...</a></p>
- <div class="textblock"><code>#include <<a class="el" href="impl_8h_source.html">utl/core/impl.h</a>></code><br />
- <code>#include <<a class="el" href="selection_8h_source.html">utl/meta/selection.h</a>></code><br />
- </div>
- <p><a href="operations_8h_source.html">Go to the source code of this file.</a></p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
- Classes</h2></td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__or__.html">utl::meta::detail::_or_<... ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__or___3_4.html">utl::meta::detail::_or_<></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__or___3_01___t1_01_4.html">utl::meta::detail::_or_< _T1 ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__or___3_01___t1_00_01___t2_01_4.html">utl::meta::detail::_or_< _T1, _T2 ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__or___3_01___t1_00_01___t2_00_01___t3_00_01___tn_8_8_8_01_4.html">utl::meta::detail::_or_< _T1, _T2, _T3, _Tn... ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__and__.html">utl::meta::detail::_and_<... ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__and___3_4.html">utl::meta::detail::_and_<></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__and___3_01___t1_01_4.html">utl::meta::detail::_and_< _T1 ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__and___3_01___t1_00_01___t2_01_4.html">utl::meta::detail::_and_< _T1, _T2 ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1detail_1_1__and___3_01___t1_00_01___t2_00_01___t3_00_01___tn_8_8_8_01_4.html">utl::meta::detail::_and_< _T1, _T2, _T3, _Tn... ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1same__.html">utl::meta::same_< _T1, _T2 ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structutl_1_1meta_1_1same___3_01___tp_00_01___tp_01_4.html">utl::meta::same_< _Tp, _Tp ></a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
- Namespaces</h2></td></tr>
- <tr class="memitem:namespaceutl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl.html">utl</a></td></tr>
- <tr class="memdesc:namespaceutl"><td class="mdescLeft"> </td><td class="mdescRight">STL's core language concepts. <br /></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html">utl::meta</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1detail"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1detail.html">utl::meta::detail</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
- Typedefs</h2></td></tr>
- <tr class="memitem:ga7de987520bd0973f03ff8bab3152361a"><td class="memTemplParams" colspan="2">template<bool B> </td></tr>
- <tr class="memitem:ga7de987520bd0973f03ff8bab3152361a"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__integral.html#ga7de987520bd0973f03ff8bab3152361a">utl::meta::not_c</a> = bool_<!B ></td></tr>
- <tr class="memdesc:ga7de987520bd0973f03ff8bab3152361a"><td class="mdescLeft"> </td><td class="mdescRight">Negate the <em>bool</em> constant parameter. <a href="group__integral.html#ga7de987520bd0973f03ff8bab3152361a">More...</a><br /></td></tr>
- <tr class="separator:ga7de987520bd0973f03ff8bab3152361a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ga16df145331d3c62e624385c5949d90c4"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr>
- <tr class="memitem:ga16df145331d3c62e624385c5949d90c4"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">utl::meta::not_</a> = not_c< _Tp::type::value ></td></tr>
- <tr class="memdesc:ga16df145331d3c62e624385c5949d90c4"><td class="mdescLeft"> </td><td class="mdescRight">not <a href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">More...</a><br /></td></tr>
- <tr class="separator:ga16df145331d3c62e624385c5949d90c4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:gac43f400cc93d54f5f79892e618069d9b"><td class="memTemplParams" colspan="2">template<typename... _Ts> </td></tr>
- <tr class="memitem:gac43f400cc93d54f5f79892e618069d9b"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__integral.html#gac43f400cc93d54f5f79892e618069d9b">utl::meta::or_</a> = eval< detail::_or_< _Ts... > ></td></tr>
- <tr class="separator:gac43f400cc93d54f5f79892e618069d9b"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ga8e82f4758321e0e0b3705607f7d8e068"><td class="memTemplParams" colspan="2">template<typename... _Ts> </td></tr>
- <tr class="memitem:ga8e82f4758321e0e0b3705607f7d8e068"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__integral.html#ga8e82f4758321e0e0b3705607f7d8e068">utl::meta::and_</a> = eval< detail::_and_< _Ts... > ></td></tr>
- <tr class="separator:ga8e82f4758321e0e0b3705607f7d8e068"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ga4dfaf054d891eb35d741662b077bbbd2"><td class="memTemplParams" colspan="2">template<typename _T1 , typename _T2 > </td></tr>
- <tr class="memitem:ga4dfaf054d891eb35d741662b077bbbd2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__integral.html#ga4dfaf054d891eb35d741662b077bbbd2">utl::meta::not_same_</a> = not_< eval< same_< _T1, _T2 > >></td></tr>
- <tr class="separator:ga4dfaf054d891eb35d741662b077bbbd2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:aec4bf9329ff8356d333a59e3c369d0b7"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr>
- <tr class="memitem:aec4bf9329ff8356d333a59e3c369d0b7"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aec4bf9329ff8356d333a59e3c369d0b7">utl::meta::negate</a> = integral_< decltype(-_Tp()), -_Tp()></td></tr>
- <tr class="memdesc:aec4bf9329ff8356d333a59e3c369d0b7"><td class="mdescLeft"> </td><td class="mdescRight">Negation. <a href="namespaceutl_1_1meta.html#aec4bf9329ff8356d333a59e3c369d0b7">More...</a><br /></td></tr>
- <tr class="separator:aec4bf9329ff8356d333a59e3c369d0b7"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a559ad95ef39fd2c81664bd1a22dd99c1"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a559ad95ef39fd2c81664bd1a22dd99c1"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">utl::meta::add</a> = integral_< decltype(_Tp1()+_Tp2()), _Tp1()+_Tp2() ></td></tr>
- <tr class="memdesc:a559ad95ef39fd2c81664bd1a22dd99c1"><td class="mdescLeft"> </td><td class="mdescRight">Addition. <a href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">More...</a><br /></td></tr>
- <tr class="separator:a559ad95ef39fd2c81664bd1a22dd99c1"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5f0a890cbd116d4a72a760a26f5a8244"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a5f0a890cbd116d4a72a760a26f5a8244"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a5f0a890cbd116d4a72a760a26f5a8244">utl::meta::mult</a> = integral_< decltype(_Tp2() *_Tp2()), _Tp1() *_Tp2() ></td></tr>
- <tr class="memdesc:a5f0a890cbd116d4a72a760a26f5a8244"><td class="mdescLeft"> </td><td class="mdescRight">Multiplication. <a href="namespaceutl_1_1meta.html#a5f0a890cbd116d4a72a760a26f5a8244">More...</a><br /></td></tr>
- <tr class="separator:a5f0a890cbd116d4a72a760a26f5a8244"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ae1ec6fc1f76abbb2e5287aa91cd85068"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:ae1ec6fc1f76abbb2e5287aa91cd85068"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ae1ec6fc1f76abbb2e5287aa91cd85068">utl::meta::divide</a> = integral_< decltype(_Tp2()/_Tp2()), _Tp1()/_Tp2() ></td></tr>
- <tr class="memdesc:ae1ec6fc1f76abbb2e5287aa91cd85068"><td class="mdescLeft"> </td><td class="mdescRight">Division. <a href="namespaceutl_1_1meta.html#ae1ec6fc1f76abbb2e5287aa91cd85068">More...</a><br /></td></tr>
- <tr class="separator:ae1ec6fc1f76abbb2e5287aa91cd85068"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:adf7106374b1acc978be05b5848002cfc"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:adf7106374b1acc978be05b5848002cfc"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#adf7106374b1acc978be05b5848002cfc">utl::meta::modulo</a> = integral_< decltype(_Tp1() % _Tp2()), _Tp1() % _Tp2() ></td></tr>
- <tr class="memdesc:adf7106374b1acc978be05b5848002cfc"><td class="mdescLeft"> </td><td class="mdescRight">Modulo. <a href="namespaceutl_1_1meta.html#adf7106374b1acc978be05b5848002cfc">More...</a><br /></td></tr>
- <tr class="separator:adf7106374b1acc978be05b5848002cfc"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a9f90eea3852367afa4e1fe74756976fb"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a9f90eea3852367afa4e1fe74756976fb"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a9f90eea3852367afa4e1fe74756976fb">utl::meta::sub</a> = add< _Tp1, negate< _Tp2 > ></td></tr>
- <tr class="memdesc:a9f90eea3852367afa4e1fe74756976fb"><td class="mdescLeft"> </td><td class="mdescRight">Substruction. <a href="namespaceutl_1_1meta.html#a9f90eea3852367afa4e1fe74756976fb">More...</a><br /></td></tr>
- <tr class="separator:a9f90eea3852367afa4e1fe74756976fb"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af74f5af58b33241f1b94102742a73ab1"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr>
- <tr class="memitem:af74f5af58b33241f1b94102742a73ab1"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af74f5af58b33241f1b94102742a73ab1">utl::meta::inc</a> = add< _Tp, int_< 1 > ></td></tr>
- <tr class="memdesc:af74f5af58b33241f1b94102742a73ab1"><td class="mdescLeft"> </td><td class="mdescRight">Increase. <a href="namespaceutl_1_1meta.html#af74f5af58b33241f1b94102742a73ab1">More...</a><br /></td></tr>
- <tr class="separator:af74f5af58b33241f1b94102742a73ab1"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:abee96e75aadb364fdd0890aa3ee490b7"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr>
- <tr class="memitem:abee96e75aadb364fdd0890aa3ee490b7"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#abee96e75aadb364fdd0890aa3ee490b7">utl::meta::dec</a> = add< _Tp, int_<-1 > ></td></tr>
- <tr class="memdesc:abee96e75aadb364fdd0890aa3ee490b7"><td class="mdescLeft"> </td><td class="mdescRight">decrease <a href="namespaceutl_1_1meta.html#abee96e75aadb364fdd0890aa3ee490b7">More...</a><br /></td></tr>
- <tr class="separator:abee96e75aadb364fdd0890aa3ee490b7"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a7ae2d08147055946f1b9345e579a26b6"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a7ae2d08147055946f1b9345e579a26b6"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a7ae2d08147055946f1b9345e579a26b6">utl::meta::comp_eq</a> = bool_< _Tp1()==_Tp2()></td></tr>
- <tr class="separator:a7ae2d08147055946f1b9345e579a26b6"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a1a948746d1758a05c0ae71cfd114b05d"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a1a948746d1758a05c0ae71cfd114b05d"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">utl::meta::comp_lt</a> = bool_<(_Tp1()< _Tp2())></td></tr>
- <tr class="separator:a1a948746d1758a05c0ae71cfd114b05d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af92bee16de47b16ba01a8efac686b488"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:af92bee16de47b16ba01a8efac686b488"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af92bee16de47b16ba01a8efac686b488">utl::meta::comp_ne</a> = not_< comp_eq< _Tp1, _Tp2 > ></td></tr>
- <tr class="memdesc:af92bee16de47b16ba01a8efac686b488"><td class="mdescLeft"> </td><td class="mdescRight">Not equal. <a href="namespaceutl_1_1meta.html#af92bee16de47b16ba01a8efac686b488">More...</a><br /></td></tr>
- <tr class="separator:af92bee16de47b16ba01a8efac686b488"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a3c4784ad3eb1f745c58b9a4b65a406e8"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a3c4784ad3eb1f745c58b9a4b65a406e8"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a3c4784ad3eb1f745c58b9a4b65a406e8">utl::meta::comp_gt</a> = comp_lt< _Tp2, _Tp1 ></td></tr>
- <tr class="memdesc:a3c4784ad3eb1f745c58b9a4b65a406e8"><td class="mdescLeft"> </td><td class="mdescRight">Greater than. <a href="namespaceutl_1_1meta.html#a3c4784ad3eb1f745c58b9a4b65a406e8">More...</a><br /></td></tr>
- <tr class="separator:a3c4784ad3eb1f745c58b9a4b65a406e8"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:afb9a35dc5ef40b5bf9902c0daec7f1af"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:afb9a35dc5ef40b5bf9902c0daec7f1af"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#afb9a35dc5ef40b5bf9902c0daec7f1af">utl::meta::comp_le</a> = not_< comp_lt< _Tp2, _Tp1 > ></td></tr>
- <tr class="memdesc:afb9a35dc5ef40b5bf9902c0daec7f1af"><td class="mdescLeft"> </td><td class="mdescRight">Less or equal. <a href="namespaceutl_1_1meta.html#afb9a35dc5ef40b5bf9902c0daec7f1af">More...</a><br /></td></tr>
- <tr class="separator:afb9a35dc5ef40b5bf9902c0daec7f1af"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ae6c552e8e99ac5578f865f17c1d0efdc"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:ae6c552e8e99ac5578f865f17c1d0efdc"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ae6c552e8e99ac5578f865f17c1d0efdc">utl::meta::comp_ge</a> = not_< comp_lt< _Tp1, _Tp2 > ></td></tr>
- <tr class="memdesc:ae6c552e8e99ac5578f865f17c1d0efdc"><td class="mdescLeft"> </td><td class="mdescRight">Greater or equal. <a href="namespaceutl_1_1meta.html#ae6c552e8e99ac5578f865f17c1d0efdc">More...</a><br /></td></tr>
- <tr class="separator:ae6c552e8e99ac5578f865f17c1d0efdc"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a9ea199752ca985d1b813d7127868566c"><td class="memTemplParams" colspan="2">template<typename _T > </td></tr>
- <tr class="memitem:a9ea199752ca985d1b813d7127868566c"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a9ea199752ca985d1b813d7127868566c">utl::meta::bitnot_</a> = integral_< typename _T::value_type,(typename _T::value_type)(~_T())></td></tr>
- <tr class="separator:a9ea199752ca985d1b813d7127868566c"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aca6b42898b47945118c518bde9d25cc2"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:aca6b42898b47945118c518bde9d25cc2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aca6b42898b47945118c518bde9d25cc2">utl::meta::bitand_</a> = integral_< decltype(_Tp1() &_Tp2()), _Tp1() &_Tp2()></td></tr>
- <tr class="separator:aca6b42898b47945118c518bde9d25cc2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a1e2c2decdd22972fc8ce43203c0ef0d1"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a1e2c2decdd22972fc8ce43203c0ef0d1"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a1e2c2decdd22972fc8ce43203c0ef0d1">utl::meta::bitor_</a> = integral_< decltype(_Tp1()|_Tp2()), _Tp1()|_Tp2()></td></tr>
- <tr class="separator:a1e2c2decdd22972fc8ce43203c0ef0d1"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a910e21345bc7e75dc7c0ceb4a4721754"><td class="memTemplParams" colspan="2">template<typename _Tp1 , typename _Tp2 > </td></tr>
- <tr class="memitem:a910e21345bc7e75dc7c0ceb4a4721754"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a910e21345bc7e75dc7c0ceb4a4721754">utl::meta::bitxor_</a> = integral_< decltype(_Tp1() ^ _Tp2()), _Tp1() ^ _Tp2()></td></tr>
- <tr class="separator:a910e21345bc7e75dc7c0ceb4a4721754"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a63088c29ac25eefda4189721e662b391"><td class="memTemplParams" colspan="2">template<typename _Tp , typename shift > </td></tr>
- <tr class="memitem:a63088c29ac25eefda4189721e662b391"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a63088c29ac25eefda4189721e662b391">utl::meta::shift_left</a> = integral_< typename _Tp::value_type,(typename _Tp::value_type)(_Tp()<< shift())></td></tr>
- <tr class="separator:a63088c29ac25eefda4189721e662b391"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:acbe6dd78c4a4230e92acc5ca86e3fcc7"><td class="memTemplParams" colspan="2">template<typename _Tp , typename shift > </td></tr>
- <tr class="memitem:acbe6dd78c4a4230e92acc5ca86e3fcc7"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#acbe6dd78c4a4230e92acc5ca86e3fcc7">utl::meta::shift_right</a> = integral_< typename _Tp::value_type,(typename _Tp::value_type)(_Tp() > > shift())></td></tr>
- <tr class="separator:acbe6dd78c4a4230e92acc5ca86e3fcc7"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><p>Integral constant operations and logical operations. </p>
- <p>Copyright (C) 2018-2019 Christos Choutouridis</p>
- <p>This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</p>
- <p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.</p>
- <p>You should have received a copy of the GNU Lesser General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. </p>
-
- <p class="definition">Definition in file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
- </div></div><!-- contents -->
- </div><!-- doc-content -->
- <!-- start footer part -->
- <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
- <ul>
- <li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_82754f54d9380477ef02477185c1f103.html">utl</a></li><li class="navelem"><a class="el" href="dir_c6a55aeb35dd92d90cdd3b5869981960.html">meta</a></li><li class="navelem"><a class="el" href="operations_8h.html">operations.h</a></li>
- <li class="footer">Generated by
- <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
- </ul>
- </div>
- </body>
- </html>
|