|
- <!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: utl::meta Namespace 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('namespaceutl_1_1meta.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="#namespaces">Namespaces</a> |
- <a href="#nested-classes">Classes</a> |
- <a href="#typedef-members">Typedefs</a> </div>
- <div class="headertitle">
- <div class="title">utl::meta Namespace Reference</div> </div>
- </div><!--header-->
- <div class="contents">
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
- Namespaces</h2></td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1apply__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1apply__impl.html">apply_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1at__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1at__impl.html">at_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1back__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1back__impl.html">back_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1cat__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1cat__impl.html">cat_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1count__if__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1count__if__impl.html">count_if_impl</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">detail</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1filter__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1filter__impl.html">filter_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1find__if__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1find__if__impl.html">find_if_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1fold__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1fold__impl.html">fold_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1front__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1front__impl.html">front_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1pop__back__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1pop__back__impl.html">pop_back_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1pop__front__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1pop__front__impl.html">pop_front_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1replace__if__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1replace__if__impl.html">replace_if_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1rev__fold__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1rev__fold__impl.html">rev_fold_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1reverse__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1reverse__impl.html">reverse_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1seek__if__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1seek__if__impl.html">seek_if_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1transform__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1transform__impl.html">transform_impl</a></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:namespaceutl_1_1meta_1_1transform__lazy__impl"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta_1_1transform__lazy__impl.html">transform_lazy_impl</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="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_1bind__back.html">bind_back</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_1bind__front.html">bind_front</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_1identity.html">identity</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_1nat__.html">nat_</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_1nil__.html">nil_</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_1not__same__as.html">not_same_as</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_1quote.html">quote</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_1quote__i.html">quote_i</a></td></tr>
- <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Wrap a template <code>F</code> taking literal constants of type <code>T</code> into an Invokable. <a href="structutl_1_1meta_1_1quote__i.html#details">More...</a><br /></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">same_</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">same_< _Tp, _Tp ></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__as.html">same_as</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_1typelist.html">typelist</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_1wrap.html">wrap</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_1wrap__i.html">wrap_i</a></td></tr>
- <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Wrap a template <code>F</code> taking literal constants of type <code>T</code> into an Invokable. <a href="structutl_1_1meta_1_1wrap__i.html#details">More...</a><br /></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:gac16d50de47cf57734433e9ea636522c5"><td class="memTemplParams" colspan="2">template<typename... > </td></tr>
- <tr class="memitem:gac16d50de47cf57734433e9ea636522c5"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__detection.html#gac16d50de47cf57734433e9ea636522c5">void_</a> = void</td></tr>
- <tr class="memdesc:gac16d50de47cf57734433e9ea636522c5"><td class="mdescLeft"> </td><td class="mdescRight">void_ type alias <a href="group__detection.html#gac16d50de47cf57734433e9ea636522c5">More...</a><br /></td></tr>
- <tr class="separator:gac16d50de47cf57734433e9ea636522c5"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:gae7373c997420d16cf37e542eb3cfa3ad"><td class="memTemplParams" colspan="2">template<typename... > </td></tr>
- <tr class="memitem:gae7373c997420d16cf37e542eb3cfa3ad"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__detection.html#gae7373c997420d16cf37e542eb3cfa3ad">void_t</a> = void</td></tr>
- <tr class="memdesc:gae7373c997420d16cf37e542eb3cfa3ad"><td class="mdescLeft"> </td><td class="mdescRight">void_t type alias <a href="group__detection.html#gae7373c997420d16cf37e542eb3cfa3ad">More...</a><br /></td></tr>
- <tr class="separator:gae7373c997420d16cf37e542eb3cfa3ad"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa5a37adba244ff4286f994111c4c02ea"><td class="memTemplParams" colspan="2">template<typename Tp > </td></tr>
- <tr class="memitem:aa5a37adba244ff4286f994111c4c02ea"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> = typename Tp::type</td></tr>
- <tr class="memdesc:aa5a37adba244ff4286f994111c4c02ea"><td class="mdescLeft"> </td><td class="mdescRight">Type alias for <code>Tp::type</code>. Used to evaluate/extract return type of metafunctions. <a href="#aa5a37adba244ff4286f994111c4c02ea">More...</a><br /></td></tr>
- <tr class="separator:aa5a37adba244ff4286f994111c4c02ea"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af0c85cc6480a9e7a8e4fb7d8f936f01b"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af0c85cc6480a9e7a8e4fb7d8f936f01b">Npos</a> = <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a>< <a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>(-1)></td></tr>
- <tr class="memdesc:af0c85cc6480a9e7a8e4fb7d8f936f01b"><td class="mdescLeft"> </td><td class="mdescRight">The last position we can express for indexing. <a href="#af0c85cc6480a9e7a8e4fb7d8f936f01b">More...</a><br /></td></tr>
- <tr class="separator:af0c85cc6480a9e7a8e4fb7d8f936f01b"><td class="memSeparator" colspan="2"> </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">not_c</a> = <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a><!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">not_</a> = <a class="el" href="group__integral.html#ga7de987520bd0973f03ff8bab3152361a">not_c</a>< _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 class="memitem:a0edfc2c15e42531e53c0822264d220ec"><td class="memTemplParams" colspan="2">template<typename List > </td></tr>
- <tr class="memitem:a0edfc2c15e42531e53c0822264d220ec"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a0edfc2c15e42531e53c0822264d220ec">size</a> = <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a>< List::size()></td></tr>
- <tr class="separator:a0edfc2c15e42531e53c0822264d220ec"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a58c1744750d0df133034f60a95f87e19"><td class="memTemplParams" colspan="2">template<typename List > </td></tr>
- <tr class="memitem:a58c1744750d0df133034f60a95f87e19"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a> = <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a>< List::empty()></td></tr>
- <tr class="separator:a58c1744750d0df133034f60a95f87e19"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa6513d9d2a5db3ba3517efff33adc761"><td class="memTemplParams" colspan="2">template<typename T1 , typename T2 > </td></tr>
- <tr class="memitem:aa6513d9d2a5db3ba3517efff33adc761"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa6513d9d2a5db3ba3517efff33adc761">pair</a> = <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a>< T1, T2 ></td></tr>
- <tr class="separator:aa6513d9d2a5db3ba3517efff33adc761"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ab0f84ba0807b6fd36fa9e4e5cfc4cd32"><td class="memTemplParams" colspan="2">template<typename List , typename... Ts> </td></tr>
- <tr class="memitem:ab0f84ba0807b6fd36fa9e4e5cfc4cd32"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ab0f84ba0807b6fd36fa9e4e5cfc4cd32">push_front</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a>< <a class="el" href="structutl_1_1meta_1_1bind__front.html">bind_front</a>< <a class="el" href="structutl_1_1meta_1_1quote.html">quote</a>< <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a> >, Ts... >, List > ></td></tr>
- <tr class="separator:ab0f84ba0807b6fd36fa9e4e5cfc4cd32"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:adf545ba110edc6a34ddcaf2280a0c7f4"><td class="memTemplParams" colspan="2">template<typename List , typename... Ts> </td></tr>
- <tr class="memitem:adf545ba110edc6a34ddcaf2280a0c7f4"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#adf545ba110edc6a34ddcaf2280a0c7f4">push_back</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a>< <a class="el" href="structutl_1_1meta_1_1bind__back.html">bind_back</a>< <a class="el" href="structutl_1_1meta_1_1quote.html">quote</a>< <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a> >, Ts... >, List > ></td></tr>
- <tr class="separator:adf545ba110edc6a34ddcaf2280a0c7f4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ace96e2f19376375cc71ee0cd80f4bb75"><td class="memTemplParams" colspan="2">template<typename List , typename Pred > </td></tr>
- <tr class="memitem:ace96e2f19376375cc71ee0cd80f4bb75"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ace96e2f19376375cc71ee0cd80f4bb75">all_of</a> = <a class="el" href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">if_</a>< <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a>< List >, <a class="el" href="namespaceutl_1_1meta.html#a55511dbaa0adb605ce22dcec11f8d22d">false_</a>, <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a>< <a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">filter</a>< List, <a class="el" href="namespaceutl_1_1meta.html#a4f0c06cabe66bc73b703eb8509c7bb07">compose</a>< <a class="el" href="structutl_1_1meta_1_1quote.html">quote</a>< <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a> >, Pred > > > ></td></tr>
- <tr class="separator:ace96e2f19376375cc71ee0cd80f4bb75"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a212c26a29491610187f6e8543f06df5f"><td class="memTemplParams" colspan="2">template<typename List , typename Pred > </td></tr>
- <tr class="memitem:a212c26a29491610187f6e8543f06df5f"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a212c26a29491610187f6e8543f06df5f">any_of</a> = <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a>< <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a>< <a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">filter</a>< List, Pred > > ></td></tr>
- <tr class="separator:a212c26a29491610187f6e8543f06df5f"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af324255cfaa0be3f02843961f5becb85"><td class="memTemplParams" colspan="2">template<typename List , typename Pred > </td></tr>
- <tr class="memitem:af324255cfaa0be3f02843961f5becb85"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af324255cfaa0be3f02843961f5becb85">none_of</a> = <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a>< <a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">filter</a>< List, Pred > ></td></tr>
- <tr class="separator:af324255cfaa0be3f02843961f5becb85"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7b4ba22b3afb3e7a98e1012a350cb573"><td class="memTemplParams" colspan="2">template<typename _T1 , typename _T2 , typename _Ret = _T1> </td></tr>
- <tr class="memitem:a7b4ba22b3afb3e7a98e1012a350cb573"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a7b4ba22b3afb3e7a98e1012a350cb573">use_if_same_t</a> = <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< <a class="el" href="structutl_1_1meta_1_1same__.html">same_</a>< _T1, _T2 >::value, _Ret ></td></tr>
- <tr class="memdesc:a7b4ba22b3afb3e7a98e1012a350cb573"><td class="mdescLeft"> </td><td class="mdescRight">If same type resolves to _Ret, else SFINAE. <a href="#a7b4ba22b3afb3e7a98e1012a350cb573">More...</a><br /></td></tr>
- <tr class="separator:a7b4ba22b3afb3e7a98e1012a350cb573"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af590469269a8c378d937d8d75ee96e8c"><td class="memTemplParams" colspan="2">template<typename _T1 , typename _T2 , typename _Ret = _T1> </td></tr>
- <tr class="memitem:af590469269a8c378d937d8d75ee96e8c"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af590469269a8c378d937d8d75ee96e8c">use_if_not_same_t</a> = <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< !<a class="el" href="structutl_1_1meta_1_1same__.html">same_</a>< _T1, _T2 >::value, _Ret ></td></tr>
- <tr class="memdesc:af590469269a8c378d937d8d75ee96e8c"><td class="mdescLeft"> </td><td class="mdescRight">If not same type resolves to _Ret, else SFINAE. <a href="#af590469269a8c378d937d8d75ee96e8c">More...</a><br /></td></tr>
- <tr class="separator:af590469269a8c378d937d8d75ee96e8c"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad0394846551cd881782e46d2d05190de"><td class="memTemplParams" colspan="2">template<typename T1 , typename... Ts> </td></tr>
- <tr class="memitem:ad0394846551cd881782e46d2d05190de"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ad0394846551cd881782e46d2d05190de">use_if_any_t</a> = <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< <a class="el" href="group__integral.html#gac43f400cc93d54f5f79892e618069d9b">or_</a>< T1, Ts... >::value, T1 ></td></tr>
- <tr class="memdesc:ad0394846551cd881782e46d2d05190de"><td class="mdescLeft"> </td><td class="mdescRight">If any type (_T1 or _T2) type resolves to _Ret, else to SFINAE. <a href="#ad0394846551cd881782e46d2d05190de">More...</a><br /></td></tr>
- <tr class="separator:ad0394846551cd881782e46d2d05190de"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a52ff6257bf079904f9cb51a65f5a7397"><td class="memTemplParams" colspan="2">template<typename T1 , typename... Ts> </td></tr>
- <tr class="memitem:a52ff6257bf079904f9cb51a65f5a7397"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a52ff6257bf079904f9cb51a65f5a7397">use_if_all_t</a> = <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< <a class="el" href="group__integral.html#ga8e82f4758321e0e0b3705607f7d8e068">and_</a>< T1, Ts... >::value, T1 ></td></tr>
- <tr class="memdesc:a52ff6257bf079904f9cb51a65f5a7397"><td class="mdescLeft"> </td><td class="mdescRight">If both type (_T1 and _T2) type resolves to _Ret, else to SFINAE. <a href="#a52ff6257bf079904f9cb51a65f5a7397">More...</a><br /></td></tr>
- <tr class="separator:a52ff6257bf079904f9cb51a65f5a7397"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ad60242f998d1d236b7b9744b7b09c8f2"><td class="memTemplParams" colspan="2">template<typename Tp , Tp v> </td></tr>
- <tr class="memitem:ad60242f998d1d236b7b9744b7b09c8f2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a> = std::integral_constant< Tp, v ></td></tr>
- <tr class="separator:ad60242f998d1d236b7b9744b7b09c8f2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a0bec5828d2df0edfb4bc084773a438f6"><td class="memTemplParams" colspan="2">template<bool v> </td></tr>
- <tr class="memitem:a0bec5828d2df0edfb4bc084773a438f6"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< bool, v ></td></tr>
- <tr class="memdesc:a0bec5828d2df0edfb4bc084773a438f6"><td class="mdescLeft"> </td><td class="mdescRight">bool_ type: integral constant wrapper for bool <a href="#a0bec5828d2df0edfb4bc084773a438f6">More...</a><br /></td></tr>
- <tr class="separator:a0bec5828d2df0edfb4bc084773a438f6"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ae9a5a8fbe8202785f059935af219fb97"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ae9a5a8fbe8202785f059935af219fb97">true_</a> = <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a>< true ></td></tr>
- <tr class="memdesc:ae9a5a8fbe8202785f059935af219fb97"><td class="mdescLeft"> </td><td class="mdescRight">The type used as a compile-time boolean with true value. <a href="#ae9a5a8fbe8202785f059935af219fb97">More...</a><br /></td></tr>
- <tr class="separator:ae9a5a8fbe8202785f059935af219fb97"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a55511dbaa0adb605ce22dcec11f8d22d"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a55511dbaa0adb605ce22dcec11f8d22d">false_</a> = <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a>< false ></td></tr>
- <tr class="memdesc:a55511dbaa0adb605ce22dcec11f8d22d"><td class="mdescLeft"> </td><td class="mdescRight">The type used as a compile-time boolean with false value. <a href="#a55511dbaa0adb605ce22dcec11f8d22d">More...</a><br /></td></tr>
- <tr class="separator:a55511dbaa0adb605ce22dcec11f8d22d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa0ca1890dde0298c4380f94582cc2186"><td class="memTemplParams" colspan="2">template<int8_t v> </td></tr>
- <tr class="memitem:aa0ca1890dde0298c4380f94582cc2186"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa0ca1890dde0298c4380f94582cc2186">int8_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< int8_t, v ></td></tr>
- <tr class="memdesc:aa0ca1890dde0298c4380f94582cc2186"><td class="mdescLeft"> </td><td class="mdescRight">int8_ type: integral constant wrapper for <code>int8_t</code> <a href="#aa0ca1890dde0298c4380f94582cc2186">More...</a><br /></td></tr>
- <tr class="separator:aa0ca1890dde0298c4380f94582cc2186"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aae9c77ad9349e98af6cdc41e9b0090f8"><td class="memTemplParams" colspan="2">template<uint8_t v> </td></tr>
- <tr class="memitem:aae9c77ad9349e98af6cdc41e9b0090f8"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aae9c77ad9349e98af6cdc41e9b0090f8">uint8_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< uint8_t, v ></td></tr>
- <tr class="memdesc:aae9c77ad9349e98af6cdc41e9b0090f8"><td class="mdescLeft"> </td><td class="mdescRight">uint8_ type: integral constant wrapper for <code>uint8_t</code> <a href="#aae9c77ad9349e98af6cdc41e9b0090f8">More...</a><br /></td></tr>
- <tr class="separator:aae9c77ad9349e98af6cdc41e9b0090f8"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a65bf025970a7ec0fd488c50a1b9c1038"><td class="memTemplParams" colspan="2">template<int16_t v> </td></tr>
- <tr class="memitem:a65bf025970a7ec0fd488c50a1b9c1038"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a65bf025970a7ec0fd488c50a1b9c1038">int16_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< int16_t, v ></td></tr>
- <tr class="memdesc:a65bf025970a7ec0fd488c50a1b9c1038"><td class="mdescLeft"> </td><td class="mdescRight">int16_ type: integral constant wrapper for <code>int16_t</code> <a href="#a65bf025970a7ec0fd488c50a1b9c1038">More...</a><br /></td></tr>
- <tr class="separator:a65bf025970a7ec0fd488c50a1b9c1038"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af1b0b8109e3e61032c24d148202b6966"><td class="memTemplParams" colspan="2">template<uint16_t v> </td></tr>
- <tr class="memitem:af1b0b8109e3e61032c24d148202b6966"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af1b0b8109e3e61032c24d148202b6966">uint16_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< uint16_t, v ></td></tr>
- <tr class="memdesc:af1b0b8109e3e61032c24d148202b6966"><td class="mdescLeft"> </td><td class="mdescRight">uint16_ type: integral constant wrapper for <code>uint16_t</code> <a href="#af1b0b8109e3e61032c24d148202b6966">More...</a><br /></td></tr>
- <tr class="separator:af1b0b8109e3e61032c24d148202b6966"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa907f027fe3df2cecca2cf60930086fb"><td class="memTemplParams" colspan="2">template<int32_t v> </td></tr>
- <tr class="memitem:aa907f027fe3df2cecca2cf60930086fb"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa907f027fe3df2cecca2cf60930086fb">int32_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< int32_t, v ></td></tr>
- <tr class="memdesc:aa907f027fe3df2cecca2cf60930086fb"><td class="mdescLeft"> </td><td class="mdescRight">int32_ type: integral constant wrapper for <code>int32_t</code> <a href="#aa907f027fe3df2cecca2cf60930086fb">More...</a><br /></td></tr>
- <tr class="separator:aa907f027fe3df2cecca2cf60930086fb"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa8c7c38548db8df196b683ffdc109cd6"><td class="memTemplParams" colspan="2">template<uint32_t v> </td></tr>
- <tr class="memitem:aa8c7c38548db8df196b683ffdc109cd6"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa8c7c38548db8df196b683ffdc109cd6">uint32_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< uint32_t, v ></td></tr>
- <tr class="memdesc:aa8c7c38548db8df196b683ffdc109cd6"><td class="mdescLeft"> </td><td class="mdescRight">uint32_ type: integral constant wrapper for <code>uint32_t</code> <a href="#aa8c7c38548db8df196b683ffdc109cd6">More...</a><br /></td></tr>
- <tr class="separator:aa8c7c38548db8df196b683ffdc109cd6"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0fe31eec9b085e52aa45587e6d887419"><td class="memTemplParams" colspan="2">template<char v> </td></tr>
- <tr class="memitem:a0fe31eec9b085e52aa45587e6d887419"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a0fe31eec9b085e52aa45587e6d887419">char_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< char, v ></td></tr>
- <tr class="memdesc:a0fe31eec9b085e52aa45587e6d887419"><td class="mdescLeft"> </td><td class="mdescRight">char_ type: integral constant wrapper for <code>char</code> <a href="#a0fe31eec9b085e52aa45587e6d887419">More...</a><br /></td></tr>
- <tr class="separator:a0fe31eec9b085e52aa45587e6d887419"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a35b962b97f8277de66c1c8c02796eed4"><td class="memTemplParams" colspan="2">template<int v> </td></tr>
- <tr class="memitem:a35b962b97f8277de66c1c8c02796eed4"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a35b962b97f8277de66c1c8c02796eed4">int_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< int, v ></td></tr>
- <tr class="memdesc:a35b962b97f8277de66c1c8c02796eed4"><td class="mdescLeft"> </td><td class="mdescRight">int_ type: integral constant wrapper for <code>int</code> <a href="#a35b962b97f8277de66c1c8c02796eed4">More...</a><br /></td></tr>
- <tr class="separator:a35b962b97f8277de66c1c8c02796eed4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5d3ed337c64ea13ee70891d09b0caa3e"><td class="memTemplParams" colspan="2">template<long v> </td></tr>
- <tr class="memitem:a5d3ed337c64ea13ee70891d09b0caa3e"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a5d3ed337c64ea13ee70891d09b0caa3e">long_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< long, v ></td></tr>
- <tr class="memdesc:a5d3ed337c64ea13ee70891d09b0caa3e"><td class="mdescLeft"> </td><td class="mdescRight">long_ type: integral constant wrapper for <code>long</code> <a href="#a5d3ed337c64ea13ee70891d09b0caa3e">More...</a><br /></td></tr>
- <tr class="separator:a5d3ed337c64ea13ee70891d09b0caa3e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5b7d36b9e568b81f2df897d56dc23b64"><td class="memTemplParams" colspan="2">template<index_t v> </td></tr>
- <tr class="memitem:a5b7d36b9e568b81f2df897d56dc23b64"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a5b7d36b9e568b81f2df897d56dc23b64">index_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< <a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>, v ></td></tr>
- <tr class="memdesc:a5b7d36b9e568b81f2df897d56dc23b64"><td class="mdescLeft"> </td><td class="mdescRight">index_ type: integral constant wrapper for <code>index_t</code> a.k.a std::size_t <a href="#a5b7d36b9e568b81f2df897d56dc23b64">More...</a><br /></td></tr>
- <tr class="separator:a5b7d36b9e568b81f2df897d56dc23b64"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a249ac51f6613684164663bd22025fe9a"><td class="memTemplParams" colspan="2">template<size_t v> </td></tr>
- <tr class="memitem:a249ac51f6613684164663bd22025fe9a"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< <a class="el" href="namespaceutl.html#a22cbecb50ee5c1032de66133e96cbac6">size_t</a>, v ></td></tr>
- <tr class="memdesc:a249ac51f6613684164663bd22025fe9a"><td class="mdescLeft"> </td><td class="mdescRight">size_ type: integral constant wrapper for <code>size_t</code> a.k.a std::size_t <a href="#a249ac51f6613684164663bd22025fe9a">More...</a><br /></td></tr>
- <tr class="separator:a249ac51f6613684164663bd22025fe9a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a3fdae1894a962a69828ccccf73088cce"><td class="memTemplParams" colspan="2">template<typename Tp > </td></tr>
- <tr class="memitem:a3fdae1894a962a69828ccccf73088cce"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a3fdae1894a962a69828ccccf73088cce">sizeof_</a> = <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a>< sizeof(Tp)></td></tr>
- <tr class="separator:a3fdae1894a962a69828ccccf73088cce"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:afacfb1fb855b9a9a0c8a2a625a2a9bd2"><td class="memTemplParams" colspan="2">template<typename Tp > </td></tr>
- <tr class="memitem:afacfb1fb855b9a9a0c8a2a625a2a9bd2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#afacfb1fb855b9a9a0c8a2a625a2a9bd2">alignof_</a> = <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a>< alignof(Tp)></td></tr>
- <tr class="separator:afacfb1fb855b9a9a0c8a2a625a2a9bd2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:abc3ba8590a6cdd451f64d6c5dcd8ff99"><td class="memTemplParams" colspan="2">template<class Tp , Tp... Ints> </td></tr>
- <tr class="memitem:abc3ba8590a6cdd451f64d6c5dcd8ff99"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#abc3ba8590a6cdd451f64d6c5dcd8ff99">integer_sequence</a> = std::integer_sequence< Tp, Ints... ></td></tr>
- <tr class="separator:abc3ba8590a6cdd451f64d6c5dcd8ff99"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a093a8cfdae571002c305273aa02ad6a2"><td class="memTemplParams" colspan="2">template<typename Tp , Tp Num> </td></tr>
- <tr class="memitem:a093a8cfdae571002c305273aa02ad6a2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a093a8cfdae571002c305273aa02ad6a2">make_integer_sequence</a> = std::make_integer_sequence< Tp, Num ></td></tr>
- <tr class="separator:a093a8cfdae571002c305273aa02ad6a2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:acb42e9c38b726174e64a36eea39239a5"><td class="memTemplParams" colspan="2">template<index_t... Idx> </td></tr>
- <tr class="memitem:acb42e9c38b726174e64a36eea39239a5"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#acb42e9c38b726174e64a36eea39239a5">index_sequence</a> = <a class="el" href="namespaceutl_1_1meta.html#abc3ba8590a6cdd451f64d6c5dcd8ff99">integer_sequence</a>< <a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>, Idx... ></td></tr>
- <tr class="memdesc:acb42e9c38b726174e64a36eea39239a5"><td class="mdescLeft"> </td><td class="mdescRight">Alias template index_sequence. <a href="#acb42e9c38b726174e64a36eea39239a5">More...</a><br /></td></tr>
- <tr class="separator:acb42e9c38b726174e64a36eea39239a5"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa7e48cd5c76ea88fc89ff4a66bc6f596"><td class="memTemplParams" colspan="2">template<index_t Num> </td></tr>
- <tr class="memitem:aa7e48cd5c76ea88fc89ff4a66bc6f596"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa7e48cd5c76ea88fc89ff4a66bc6f596">make_index_sequence</a> = <a class="el" href="namespaceutl_1_1meta.html#a093a8cfdae571002c305273aa02ad6a2">make_integer_sequence</a>< <a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>, Num ></td></tr>
- <tr class="memdesc:aa7e48cd5c76ea88fc89ff4a66bc6f596"><td class="mdescLeft"> </td><td class="mdescRight">Alias template make_index_sequence. <a href="#aa7e48cd5c76ea88fc89ff4a66bc6f596">More...</a><br /></td></tr>
- <tr class="separator:aa7e48cd5c76ea88fc89ff4a66bc6f596"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7cdf7fbb62116925ccdecab03d3383d9"><td class="memTemplParams" colspan="2">template<typename... Types> </td></tr>
- <tr class="memitem:a7cdf7fbb62116925ccdecab03d3383d9"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a7cdf7fbb62116925ccdecab03d3383d9">index_sequence_for</a> = <a class="el" href="namespaceutl_1_1meta.html#aa7e48cd5c76ea88fc89ff4a66bc6f596">make_index_sequence</a>< sizeof...(Types)></td></tr>
- <tr class="memdesc:a7cdf7fbb62116925ccdecab03d3383d9"><td class="mdescLeft"> </td><td class="mdescRight">Alias template index_sequence_for. <a href="#a7cdf7fbb62116925ccdecab03d3383d9">More...</a><br /></td></tr>
- <tr class="separator:a7cdf7fbb62116925ccdecab03d3383d9"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader">meta::invoke</div></td></tr>
- <tr><td colspan="2"><div class="groupText"><p>A meta-programming <a class="el" href="namespaceutl_1_1meta.html#a77630cd8adc01f7193f6cb834313d90f">invoke()</a> analogous. A <code>meta::invocable</code> shall contain a nested template type named <b>apply</b> which is bind to actual invocable meta-function.</p>
- <ul>
- <li>We can use <code>wrap<></code> or even better <code>quote<></code> in order to wrap a metafunction to a type (metafunction class)</li>
- <li>We can pass these wrapped types to other metafunctions</li>
- <li>We can <code>invoke<></code> the inner <code>apply</code> from a wrapped metafunction class. </li>
- </ul>
- </div></td></tr>
- <tr class="memitem:a63c0b6b08f4c1d9bd3c4db7432e9b2af"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr>
- <tr class="memitem:a63c0b6b08f4c1d9bd3c4db7432e9b2af"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a63c0b6b08f4c1d9bd3c4db7432e9b2af">identity_t</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1identity.html">identity</a>< _Tp > ></td></tr>
- <tr class="memdesc:a63c0b6b08f4c1d9bd3c4db7432e9b2af"><td class="mdescLeft"> </td><td class="mdescRight">identity type alias <a href="#a63c0b6b08f4c1d9bd3c4db7432e9b2af">More...</a><br /></td></tr>
- <tr class="separator:a63c0b6b08f4c1d9bd3c4db7432e9b2af"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a77630cd8adc01f7193f6cb834313d90f"><td class="memTemplParams" colspan="2">template<typename Fn , typename... Args> </td></tr>
- <tr class="memitem:a77630cd8adc01f7193f6cb834313d90f"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a77630cd8adc01f7193f6cb834313d90f">invoke</a> = typename Fn::template <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a>< Args... ></td></tr>
- <tr class="separator:a77630cd8adc01f7193f6cb834313d90f"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac27f3e5f3ec42921d9f8a6bb85560cf1"><td class="memTemplParams" colspan="2">template<typename Fn , typename... Args> </td></tr>
- <tr class="memitem:ac27f3e5f3ec42921d9f8a6bb85560cf1"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ac27f3e5f3ec42921d9f8a6bb85560cf1">invoke_t</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a77630cd8adc01f7193f6cb834313d90f">invoke</a>< Fn, Args... > ></td></tr>
- <tr class="separator:ac27f3e5f3ec42921d9f8a6bb85560cf1"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a695a94a2bbe51b0d0eec9bf82214d094"><td class="memTemplParams" colspan="2">template<template< typename... > class F, typename... T> </td></tr>
- <tr class="memitem:a695a94a2bbe51b0d0eec9bf82214d094"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a695a94a2bbe51b0d0eec9bf82214d094">is_applicable_t</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__.html">detail::is_applicable_</a>< F, T... > ></td></tr>
- <tr class="memdesc:a695a94a2bbe51b0d0eec9bf82214d094"><td class="mdescLeft"> </td><td class="mdescRight">check if we can instantiate <code>F</code> with parameters <code>T</code> <a href="#a695a94a2bbe51b0d0eec9bf82214d094">More...</a><br /></td></tr>
- <tr class="separator:a695a94a2bbe51b0d0eec9bf82214d094"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a52c0afa73f63dc889e44cc6cc180f1f8"><td class="memTemplParams" colspan="2">template<typename Q , typename... T> </td></tr>
- <tr class="memitem:a52c0afa73f63dc889e44cc6cc180f1f8"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a52c0afa73f63dc889e44cc6cc180f1f8">is_applicable_qt</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__q__.html">detail::is_applicable_q_</a>< Q, T... > ></td></tr>
- <tr class="memdesc:a52c0afa73f63dc889e44cc6cc180f1f8"><td class="mdescLeft"> </td><td class="mdescRight">check if we can invoke <code>Q</code> with parameters <code>T</code> <a href="#a52c0afa73f63dc889e44cc6cc180f1f8">More...</a><br /></td></tr>
- <tr class="separator:a52c0afa73f63dc889e44cc6cc180f1f8"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:add602488265f07c7a3080355350cda70"><td class="memTemplParams" colspan="2">template<typename T , template< T... > class F, T... Is> </td></tr>
- <tr class="memitem:add602488265f07c7a3080355350cda70"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#add602488265f07c7a3080355350cda70">is_applicable_it</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__i__.html">detail::is_applicable_i_</a>< T, F, Is... > ></td></tr>
- <tr class="memdesc:add602488265f07c7a3080355350cda70"><td class="mdescLeft"> </td><td class="mdescRight">check if we can instantiate <code>F</code> with parameters <code>Is</code> of type <code>T</code> <a href="#add602488265f07c7a3080355350cda70">More...</a><br /></td></tr>
- <tr class="separator:add602488265f07c7a3080355350cda70"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a48f9a1220931596a9652351d2e7242be"><td class="memTemplParams" colspan="2">template<template< class... > class F, class... Ts> </td></tr>
- <tr class="memitem:a48f9a1220931596a9652351d2e7242be"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a48f9a1220931596a9652351d2e7242be">defer</a> = <a class="el" href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">if_</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__.html">detail::is_applicable_</a>< F, Ts... >, <a class="el" href="structutl_1_1meta_1_1detail_1_1defer__.html">detail::defer_</a>< F, Ts... >, <a class="el" href="structutl_1_1meta_1_1nil__.html">nil_</a> ></td></tr>
- <tr class="memdesc:a48f9a1220931596a9652351d2e7242be"><td class="mdescLeft"> </td><td class="mdescRight">defer alias template for F<Ts...> <a href="#a48f9a1220931596a9652351d2e7242be">More...</a><br /></td></tr>
- <tr class="separator:a48f9a1220931596a9652351d2e7242be"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a01f183f337439e414184beedc9bcf9e3"><td class="memTemplParams" colspan="2">template<typename T , template< T... > class F, T... Is> </td></tr>
- <tr class="memitem:a01f183f337439e414184beedc9bcf9e3"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a01f183f337439e414184beedc9bcf9e3">defer_i</a> = <a class="el" href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">if_</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__i__.html">detail::is_applicable_i_</a>< T, F, Is... >, <a class="el" href="structutl_1_1meta_1_1detail_1_1defer__i__.html">detail::defer_i_</a>< T, F, Is... >, <a class="el" href="structutl_1_1meta_1_1nil__.html">nil_</a> ></td></tr>
- <tr class="memdesc:a01f183f337439e414184beedc9bcf9e3"><td class="mdescLeft"> </td><td class="mdescRight">defer_i alias template for F<T, Is...> <a href="#a01f183f337439e414184beedc9bcf9e3">More...</a><br /></td></tr>
- <tr class="separator:a01f183f337439e414184beedc9bcf9e3"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a4f0c06cabe66bc73b703eb8509c7bb07"><td class="memTemplParams" colspan="2">template<typename... Fns> </td></tr>
- <tr class="memitem:a4f0c06cabe66bc73b703eb8509c7bb07"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a4f0c06cabe66bc73b703eb8509c7bb07">compose</a> = <a class="el" href="structutl_1_1meta_1_1detail_1_1compose__.html">detail::compose_</a>< Fns... ></td></tr>
- <tr class="separator:a4f0c06cabe66bc73b703eb8509c7bb07"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a729294327829b3068632da1235dc3090"><td class="memTemplParams" colspan="2">template<template< typename... > class... Fns> </td></tr>
- <tr class="memitem:a729294327829b3068632da1235dc3090"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a729294327829b3068632da1235dc3090">compose_f</a> = <a class="el" href="structutl_1_1meta_1_1detail_1_1compose__f__.html">detail::compose_f_</a>< Fns... ></td></tr>
- <tr class="separator:a729294327829b3068632da1235dc3090"><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">or_</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1__or__.html">detail::_or_</a>< _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">and_</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1__and__.html">detail::_and_</a>< _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">not_same_</a> = <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a>< <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1same__.html">same_</a>< _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">negate</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(-_Tp()), -_Tp()></td></tr>
- <tr class="memdesc:aec4bf9329ff8356d333a59e3c369d0b7"><td class="mdescLeft"> </td><td class="mdescRight">Negation. <a href="#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">add</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp1()+_Tp2()), _Tp1()+_Tp2() ></td></tr>
- <tr class="memdesc:a559ad95ef39fd2c81664bd1a22dd99c1"><td class="mdescLeft"> </td><td class="mdescRight">Addition. <a href="#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">mult</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp2() *_Tp2()), _Tp1() *_Tp2() ></td></tr>
- <tr class="memdesc:a5f0a890cbd116d4a72a760a26f5a8244"><td class="mdescLeft"> </td><td class="mdescRight">Multiplication. <a href="#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">divide</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp2()/_Tp2()), _Tp1()/_Tp2() ></td></tr>
- <tr class="memdesc:ae1ec6fc1f76abbb2e5287aa91cd85068"><td class="mdescLeft"> </td><td class="mdescRight">Division. <a href="#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">modulo</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp1() % _Tp2()), _Tp1() % _Tp2() ></td></tr>
- <tr class="memdesc:adf7106374b1acc978be05b5848002cfc"><td class="mdescLeft"> </td><td class="mdescRight">Modulo. <a href="#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">sub</a> = <a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">add</a>< _Tp1, <a class="el" href="namespaceutl_1_1meta.html#aec4bf9329ff8356d333a59e3c369d0b7">negate</a>< _Tp2 > ></td></tr>
- <tr class="memdesc:a9f90eea3852367afa4e1fe74756976fb"><td class="mdescLeft"> </td><td class="mdescRight">Substruction. <a href="#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">inc</a> = <a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">add</a>< _Tp, <a class="el" href="namespaceutl_1_1meta.html#a35b962b97f8277de66c1c8c02796eed4">int_</a>< 1 > ></td></tr>
- <tr class="memdesc:af74f5af58b33241f1b94102742a73ab1"><td class="mdescLeft"> </td><td class="mdescRight">Increase. <a href="#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">dec</a> = <a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">add</a>< _Tp, <a class="el" href="namespaceutl_1_1meta.html#a35b962b97f8277de66c1c8c02796eed4">int_</a><-1 > ></td></tr>
- <tr class="memdesc:abee96e75aadb364fdd0890aa3ee490b7"><td class="mdescLeft"> </td><td class="mdescRight">decrease <a href="#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">comp_eq</a> = <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a>< _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">comp_lt</a> = <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a><(_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">comp_ne</a> = <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a>< <a class="el" href="namespaceutl_1_1meta.html#a7ae2d08147055946f1b9345e579a26b6">comp_eq</a>< _Tp1, _Tp2 > ></td></tr>
- <tr class="memdesc:af92bee16de47b16ba01a8efac686b488"><td class="mdescLeft"> </td><td class="mdescRight">Not equal. <a href="#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">comp_gt</a> = <a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">comp_lt</a>< _Tp2, _Tp1 ></td></tr>
- <tr class="memdesc:a3c4784ad3eb1f745c58b9a4b65a406e8"><td class="mdescLeft"> </td><td class="mdescRight">Greater than. <a href="#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">comp_le</a> = <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a>< <a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">comp_lt</a>< _Tp2, _Tp1 > ></td></tr>
- <tr class="memdesc:afb9a35dc5ef40b5bf9902c0daec7f1af"><td class="mdescLeft"> </td><td class="mdescRight">Less or equal. <a href="#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">comp_ge</a> = <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a>< <a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">comp_lt</a>< _Tp1, _Tp2 > ></td></tr>
- <tr class="memdesc:ae6c552e8e99ac5578f865f17c1d0efdc"><td class="mdescLeft"> </td><td class="mdescRight">Greater or equal. <a href="#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">bitnot_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< 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">bitand_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< 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">bitor_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< 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">bitxor_</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< 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">shift_left</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< 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">shift_right</a> = <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< typename _Tp::value_type,(typename _Tp::value_type)(_Tp() > > shift())></td></tr>
- <tr class="separator:acbe6dd78c4a4230e92acc5ca86e3fcc7"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:gaa3812817ce749832da73fdf5d2a85380"><td class="memTemplParams" colspan="2">template<bool B, typename... Args> </td></tr>
- <tr class="memitem:gaa3812817ce749832da73fdf5d2a85380"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__type.html#gaa3812817ce749832da73fdf5d2a85380">if_c</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1if__c__.html">detail::if_c_</a>< B, Args... > ></td></tr>
- <tr class="memdesc:gaa3812817ce749832da73fdf5d2a85380"><td class="mdescLeft"> </td><td class="mdescRight">Select one type or another depending on a compile-time Boolean. <a href="group__type.html#gaa3812817ce749832da73fdf5d2a85380">More...</a><br /></td></tr>
- <tr class="separator:gaa3812817ce749832da73fdf5d2a85380"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ga39cc4e727a8faa5ea176f543e62c05c0"><td class="memTemplParams" colspan="2">template<typename If , typename... Args> </td></tr>
- <tr class="memitem:ga39cc4e727a8faa5ea176f543e62c05c0"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">if_</a> = <a class="el" href="group__type.html#gaa3812817ce749832da73fdf5d2a85380">if_c</a>< If::type::value, Args... ></td></tr>
- <tr class="memdesc:ga39cc4e727a8faa5ea176f543e62c05c0"><td class="mdescLeft"> </td><td class="mdescRight">Select one type or another depending on a compile-time Boolean type. <a href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">More...</a><br /></td></tr>
- <tr class="separator:ga39cc4e727a8faa5ea176f543e62c05c0"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:gaf7089523d21cd405c76985643f31092a"><td class="memTemplParams" colspan="2">template<typename T1 , typename ... > </td></tr>
- <tr class="memitem:gaf7089523d21cd405c76985643f31092a"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__type.html#gaf7089523d21cd405c76985643f31092a">first_of</a> = T1</td></tr>
- <tr class="memdesc:gaf7089523d21cd405c76985643f31092a"><td class="mdescLeft"> </td><td class="mdescRight">Select the first type of a type sequence. <a href="group__type.html#gaf7089523d21cd405c76985643f31092a">More...</a><br /></td></tr>
- <tr class="separator:gaf7089523d21cd405c76985643f31092a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ga422dd1b0895f0074ad9932d68d9edbc5"><td class="memTemplParams" colspan="2">template<typename T1 , typename T2 , typename ... > </td></tr>
- <tr class="memitem:ga422dd1b0895f0074ad9932d68d9edbc5"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__type.html#ga422dd1b0895f0074ad9932d68d9edbc5">second_of</a> = T2</td></tr>
- <tr class="memdesc:ga422dd1b0895f0074ad9932d68d9edbc5"><td class="mdescLeft"> </td><td class="mdescRight">Select the second type of a type sequence. <a href="group__type.html#ga422dd1b0895f0074ad9932d68d9edbc5">More...</a><br /></td></tr>
- <tr class="separator:ga422dd1b0895f0074ad9932d68d9edbc5"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a181d79db46b10170529e85b907ed3dc7"><td class="memTemplParams" colspan="2">template<bool If> </td></tr>
- <tr class="memitem:a181d79db46b10170529e85b907ed3dc7"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a181d79db46b10170529e85b907ed3dc7">when</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1when__.html">detail::when_</a>< If > ></td></tr>
- <tr class="memdesc:a181d79db46b10170529e85b907ed3dc7"><td class="mdescLeft"> </td><td class="mdescRight">Well formed only if <code>If</code> is true. <a href="#a181d79db46b10170529e85b907ed3dc7">More...</a><br /></td></tr>
- <tr class="separator:a181d79db46b10170529e85b907ed3dc7"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ab3fed26a4c7a8204accb349f0b6600e8"><td class="memTemplParams" colspan="2">template<bool If, typename _Tp = void> </td></tr>
- <tr class="memitem:ab3fed26a4c7a8204accb349f0b6600e8"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ab3fed26a4c7a8204accb349f0b6600e8">enable_if</a> = std::enable_if< If, _Tp ></td></tr>
- <tr class="memdesc:ab3fed26a4c7a8204accb349f0b6600e8"><td class="mdescLeft"> </td><td class="mdescRight">enable_if, imported from stl <a href="#ab3fed26a4c7a8204accb349f0b6600e8">More...</a><br /></td></tr>
- <tr class="separator:ab3fed26a4c7a8204accb349f0b6600e8"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a372fe391d9567f66a81091f581e1fa01"><td class="memTemplParams" colspan="2">template<bool If, typename _Tp = void> </td></tr>
- <tr class="memitem:a372fe391d9567f66a81091f581e1fa01"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#ab3fed26a4c7a8204accb349f0b6600e8">enable_if</a>< If, _Tp > ></td></tr>
- <tr class="memdesc:a372fe391d9567f66a81091f581e1fa01"><td class="mdescLeft"> </td><td class="mdescRight">alias template for enable_if <a href="#a372fe391d9567f66a81091f581e1fa01">More...</a><br /></td></tr>
- <tr class="separator:a372fe391d9567f66a81091f581e1fa01"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:af6ff0017ea5e914543527b7135930f47"><td class="memTemplParams" colspan="2">template<size_t N, typename ... Ts> </td></tr>
- <tr class="memitem:af6ff0017ea5e914543527b7135930f47"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af6ff0017ea5e914543527b7135930f47">repeat_c</a> = typename <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a>< Ts... >::template times< N ></td></tr>
- <tr class="separator:af6ff0017ea5e914543527b7135930f47"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa013c45afb59b5c132a72be54ba145fb"><td class="memTemplParams" colspan="2">template<typename N , typename ... Ts> </td></tr>
- <tr class="memitem:aa013c45afb59b5c132a72be54ba145fb"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa013c45afb59b5c132a72be54ba145fb">repeat</a> = <a class="el" href="namespaceutl_1_1meta.html#af6ff0017ea5e914543527b7135930f47">repeat_c</a>< N::type::value, Ts... ></td></tr>
- <tr class="separator:aa013c45afb59b5c132a72be54ba145fb"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a3f684549221fac60bc8c7979cb4b98f4"><td class="memTemplParams" colspan="2">template<typename Fn , typename Seq > </td></tr>
- <tr class="memitem:a3f684549221fac60bc8c7979cb4b98f4"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a> = <a class="el" href="structutl_1_1meta_1_1apply__impl_1_1apply__.html">apply_impl::apply_</a>< Fn, Seq ></td></tr>
- <tr class="separator:a3f684549221fac60bc8c7979cb4b98f4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac2952cd4ed04938edc6de21ffe200e9b"><td class="memTemplParams" colspan="2">template<typename Fn , typename Seq > </td></tr>
- <tr class="memitem:ac2952cd4ed04938edc6de21ffe200e9b"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ac2952cd4ed04938edc6de21ffe200e9b">apply_t</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a>< Fn, Seq > ></td></tr>
- <tr class="separator:ac2952cd4ed04938edc6de21ffe200e9b"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a6683b804a20d54817d61ce4663527084"><td class="memTemplParams" colspan="2">template<typename List , index_t N> </td></tr>
- <tr class="memitem:a6683b804a20d54817d61ce4663527084"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a6683b804a20d54817d61ce4663527084">at_c</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1at__impl_1_1at__.html">at_impl::at_</a>< List, N > ></td></tr>
- <tr class="separator:a6683b804a20d54817d61ce4663527084"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a67329ec425c857dcaf4cde9044674c90"><td class="memTemplParams" colspan="2">template<typename List , typename N > </td></tr>
- <tr class="memitem:a67329ec425c857dcaf4cde9044674c90"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a67329ec425c857dcaf4cde9044674c90">at</a> = <a class="el" href="namespaceutl_1_1meta.html#a6683b804a20d54817d61ce4663527084">at_c</a>< List, N::type::value ></td></tr>
- <tr class="separator:a67329ec425c857dcaf4cde9044674c90"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ace309fb2eff5c4a5a806b9393abea486"><td class="memTemplParams" colspan="2">template<typename List > </td></tr>
- <tr class="memitem:ace309fb2eff5c4a5a806b9393abea486"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ace309fb2eff5c4a5a806b9393abea486">front</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1front__impl_1_1front__.html">front_impl::front_</a>< List > ></td></tr>
- <tr class="separator:ace309fb2eff5c4a5a806b9393abea486"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ad9ee55707fc633d53577b81a59136b7d"><td class="memTemplParams" colspan="2">template<typename List > </td></tr>
- <tr class="memitem:ad9ee55707fc633d53577b81a59136b7d"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ad9ee55707fc633d53577b81a59136b7d">back</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1back__impl_1_1back__.html">back_impl::back_</a>< List > ></td></tr>
- <tr class="separator:ad9ee55707fc633d53577b81a59136b7d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a70d0910ace47f4e12e8fa0788679044a"><td class="memTemplParams" colspan="2">template<typename... Lists> </td></tr>
- <tr class="memitem:a70d0910ace47f4e12e8fa0788679044a"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a70d0910ace47f4e12e8fa0788679044a">cat</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1cat__impl_1_1cat__.html">cat_impl::cat_</a>< Lists... > ></td></tr>
- <tr class="separator:a70d0910ace47f4e12e8fa0788679044a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a6108f39d28c924146eff4143a61af226"><td class="memTemplParams" colspan="2">template<typename List , typename V , typename Fn > </td></tr>
- <tr class="memitem:a6108f39d28c924146eff4143a61af226"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a6108f39d28c924146eff4143a61af226">fold</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1fold__impl_1_1fold__.html">fold_impl::fold_</a>< List, V, Fn > ></td></tr>
- <tr class="separator:a6108f39d28c924146eff4143a61af226"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aeb5cb48e804cd160b39f8c3ed2967c37"><td class="memTemplParams" colspan="2">template<typename List , typename V , typename Fn > </td></tr>
- <tr class="memitem:aeb5cb48e804cd160b39f8c3ed2967c37"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aeb5cb48e804cd160b39f8c3ed2967c37">accumulate</a> = <a class="el" href="namespaceutl_1_1meta.html#a6108f39d28c924146eff4143a61af226">fold</a>< List, V, Fn ></td></tr>
- <tr class="memdesc:aeb5cb48e804cd160b39f8c3ed2967c37"><td class="mdescLeft"> </td><td class="mdescRight">accumulate is an stl name for fold <a href="#aeb5cb48e804cd160b39f8c3ed2967c37">More...</a><br /></td></tr>
- <tr class="separator:aeb5cb48e804cd160b39f8c3ed2967c37"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ab1a91edef4cf9fd56b73c9a03eaeb3d4"><td class="memTemplParams" colspan="2">template<typename List , typename V , typename Fn > </td></tr>
- <tr class="memitem:ab1a91edef4cf9fd56b73c9a03eaeb3d4"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ab1a91edef4cf9fd56b73c9a03eaeb3d4">rev_fold</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1rev__fold__impl_1_1rev__fold__.html">rev_fold_impl::rev_fold_</a>< List, V, Fn > ></td></tr>
- <tr class="separator:ab1a91edef4cf9fd56b73c9a03eaeb3d4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a2ae6bfa22f1912b0ba09d24e0ae2ccd9"><td class="memTemplParams" colspan="2">template<typename List > </td></tr>
- <tr class="memitem:a2ae6bfa22f1912b0ba09d24e0ae2ccd9"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a2ae6bfa22f1912b0ba09d24e0ae2ccd9">reverse</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1reverse__impl_1_1reverse__.html">reverse_impl::reverse_</a>< List > ></td></tr>
- <tr class="separator:a2ae6bfa22f1912b0ba09d24e0ae2ccd9"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:aa4a307a81c0640c6c0dd08f8a53f3c32"><td class="memTemplParams" colspan="2">template<typename List > </td></tr>
- <tr class="memitem:aa4a307a81c0640c6c0dd08f8a53f3c32"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa4a307a81c0640c6c0dd08f8a53f3c32">pop_front</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1pop__front__impl_1_1pop__front__.html">pop_front_impl::pop_front_</a>< List > ></td></tr>
- <tr class="separator:aa4a307a81c0640c6c0dd08f8a53f3c32"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a86a37f5803c474823963e1f3c6f7a6d6"><td class="memTemplParams" colspan="2">template<typename List > </td></tr>
- <tr class="memitem:a86a37f5803c474823963e1f3c6f7a6d6"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a86a37f5803c474823963e1f3c6f7a6d6">pop_back</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1pop__back__impl_1_1pop__back__.html">pop_back_impl::pop_back_</a>< List > ></td></tr>
- <tr class="separator:a86a37f5803c474823963e1f3c6f7a6d6"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ac8bbf187eea3cb5da38d1bdc97b52334"><td class="memTemplParams" colspan="2">template<typename... Args> </td></tr>
- <tr class="memitem:ac8bbf187eea3cb5da38d1bdc97b52334"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ac8bbf187eea3cb5da38d1bdc97b52334">transform</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1transform__impl_1_1transform__.html">transform_impl::transform_</a>< <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a>< Args... > > ></td></tr>
- <tr class="separator:ac8bbf187eea3cb5da38d1bdc97b52334"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a55c0405bfb94c1d285d3131390c31451"><td class="memTemplParams" colspan="2">template<typename... Args> </td></tr>
- <tr class="memitem:a55c0405bfb94c1d285d3131390c31451"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a55c0405bfb94c1d285d3131390c31451">transform_lazy</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1transform__lazy__impl_1_1transform__lazy__.html">transform_lazy_impl::transform_lazy_</a>< <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a>< Args... > > ></td></tr>
- <tr class="separator:a55c0405bfb94c1d285d3131390c31451"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:aacf124929c0cbb3b29d34679bff50a96"><td class="memTemplParams" colspan="2">template<typename List , typename Pred > </td></tr>
- <tr class="memitem:aacf124929c0cbb3b29d34679bff50a96"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aacf124929c0cbb3b29d34679bff50a96">find_if</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1find__if__impl_1_1find__if__.html">find_if_impl::find_if_</a>< List, Pred, 0 > ></td></tr>
- <tr class="separator:aacf124929c0cbb3b29d34679bff50a96"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af4c9b6350bba98cc0dd73e87cb4ce413"><td class="memTemplParams" colspan="2">template<typename List , typename T > </td></tr>
- <tr class="memitem:af4c9b6350bba98cc0dd73e87cb4ce413"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#af4c9b6350bba98cc0dd73e87cb4ce413">find</a> = <a class="el" href="namespaceutl_1_1meta.html#aacf124929c0cbb3b29d34679bff50a96">find_if</a>< List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a>< T > ></td></tr>
- <tr class="separator:af4c9b6350bba98cc0dd73e87cb4ce413"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ab8eafd75f3077a36c4e3363b742da64a"><td class="memTemplParams" colspan="2">template<typename List , typename Pred > </td></tr>
- <tr class="memitem:ab8eafd75f3077a36c4e3363b742da64a"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ab8eafd75f3077a36c4e3363b742da64a">seek_if</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1seek__if__impl_1_1seek__if__.html">seek_if_impl::seek_if_</a>< List, Pred, 0 > ></td></tr>
- <tr class="separator:ab8eafd75f3077a36c4e3363b742da64a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa550d9dc96d34623af4ce71f8a1eaff5"><td class="memTemplParams" colspan="2">template<typename List , typename T > </td></tr>
- <tr class="memitem:aa550d9dc96d34623af4ce71f8a1eaff5"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa550d9dc96d34623af4ce71f8a1eaff5">seek</a> = <a class="el" href="namespaceutl_1_1meta.html#ab8eafd75f3077a36c4e3363b742da64a">seek_if</a>< List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a>< T > ></td></tr>
- <tr class="separator:aa550d9dc96d34623af4ce71f8a1eaff5"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a981e18b40d69cdd76466de7bfe24e619"><td class="memTemplParams" colspan="2">template<typename List , typename Pred > </td></tr>
- <tr class="memitem:a981e18b40d69cdd76466de7bfe24e619"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a981e18b40d69cdd76466de7bfe24e619">count_if</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1count__if__impl_1_1count__if__.html">count_if_impl::count_if_</a>< List, Pred, 0 > ></td></tr>
- <tr class="separator:a981e18b40d69cdd76466de7bfe24e619"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ab5508236016638fa8e6b97cd17dfc9c2"><td class="memTemplParams" colspan="2">template<typename List , typename T > </td></tr>
- <tr class="memitem:ab5508236016638fa8e6b97cd17dfc9c2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ab5508236016638fa8e6b97cd17dfc9c2">count</a> = <a class="el" href="namespaceutl_1_1meta.html#a981e18b40d69cdd76466de7bfe24e619">count_if</a>< List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a>< T > ></td></tr>
- <tr class="separator:ab5508236016638fa8e6b97cd17dfc9c2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:ac72acc616316c322e750d20a46553ba4"><td class="memTemplParams" colspan="2">template<typename List , typename Pred > </td></tr>
- <tr class="memitem:ac72acc616316c322e750d20a46553ba4"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">filter</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1filter__impl_1_1filter__.html">filter_impl::filter_</a>< List, Pred, <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><> > ></td></tr>
- <tr class="separator:ac72acc616316c322e750d20a46553ba4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
- <tr class="memitem:a848a47bf281bf3eaf932cc9113477102"><td class="memTemplParams" colspan="2">template<typename List , typename Pred , typename T > </td></tr>
- <tr class="memitem:a848a47bf281bf3eaf932cc9113477102"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a848a47bf281bf3eaf932cc9113477102">replace_if</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1replace__if__impl_1_1replace__if__.html">replace_if_impl::replace_if_</a>< List, Pred, T, <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><> > ></td></tr>
- <tr class="separator:a848a47bf281bf3eaf932cc9113477102"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac9d120f858ebfa2b0ef74c6305a9fb6d"><td class="memTemplParams" colspan="2">template<typename List , typename T , typename U > </td></tr>
- <tr class="memitem:ac9d120f858ebfa2b0ef74c6305a9fb6d"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ac9d120f858ebfa2b0ef74c6305a9fb6d">replace</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a848a47bf281bf3eaf932cc9113477102">replace_if</a>< List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a>< T >, U > ></td></tr>
- <tr class="separator:ac9d120f858ebfa2b0ef74c6305a9fb6d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5329219a9d2f195421a78d8e07873507"><td class="memTemplParams" colspan="2">template<template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:a5329219a9d2f195421a78d8e07873507"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a5329219a9d2f195421a78d8e07873507">is_detected</a> = typename <a class="el" href="structutl_1_1meta_1_1detail_1_1detector.html">detail::detector</a>< <a class="el" href="structutl_1_1meta_1_1nat__.html">nat_</a>, void, Op, Args... >::detected</td></tr>
- <tr class="separator:a5329219a9d2f195421a78d8e07873507"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa654a286b3bc8e6d8116ee1f57087110"><td class="memTemplParams" colspan="2">template<template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:aa654a286b3bc8e6d8116ee1f57087110"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#aa654a286b3bc8e6d8116ee1f57087110">detected_t</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1detector.html">detail::detector</a>< <a class="el" href="structutl_1_1meta_1_1nat__.html">nat_</a>, void, Op, Args... > ></td></tr>
- <tr class="separator:aa654a286b3bc8e6d8116ee1f57087110"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a8fd055bc6c6c3b1d551e9605aa35644c"><td class="memTemplParams" colspan="2">template<typename Default , template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:a8fd055bc6c6c3b1d551e9605aa35644c"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a8fd055bc6c6c3b1d551e9605aa35644c">detected_or_t</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta_1_1detail.html#a835827cb3116483228d6f7f774b68970">detail::detected_or</a>< Default, Op, Args... > ></td></tr>
- <tr class="separator:a8fd055bc6c6c3b1d551e9605aa35644c"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad5224ef66e8f40efaaf3ad3d605dd629"><td class="memTemplParams" colspan="2">template<typename Expected , template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:ad5224ef66e8f40efaaf3ad3d605dd629"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#ad5224ef66e8f40efaaf3ad3d605dd629">is_detected_exact</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1same__.html">same_</a>< Expected, <a class="el" href="namespaceutl_1_1meta.html#aa654a286b3bc8e6d8116ee1f57087110">detected_t</a>< Op, Args... > > ></td></tr>
- <tr class="separator:ad5224ef66e8f40efaaf3ad3d605dd629"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:afa24702fa15a1d0a8a05761c54b79def"><td class="memTemplParams" colspan="2">template<typename To , template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:afa24702fa15a1d0a8a05761c54b79def"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#afa24702fa15a1d0a8a05761c54b79def">is_detected_convertible</a> = <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< std::is_convertible< <a class="el" href="namespaceutl_1_1meta.html#aa654a286b3bc8e6d8116ee1f57087110">detected_t</a>< Op, Args... >, To > ></td></tr>
- <tr class="separator:afa24702fa15a1d0a8a05761c54b79def"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a4f3184ccb8e8ba2a78e2d2e83a0b9885"><td class="memTemplParams" colspan="2">template<template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:a4f3184ccb8e8ba2a78e2d2e83a0b9885"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a4f3184ccb8e8ba2a78e2d2e83a0b9885">is_detected_v</a> = <a class="el" href="namespaceutl_1_1meta.html#a5329219a9d2f195421a78d8e07873507">is_detected</a><Op, Args...>::value</td></tr>
- <tr class="memdesc:a4f3184ccb8e8ba2a78e2d2e83a0b9885"><td class="mdescLeft"> </td><td class="mdescRight">Detection predicate. <a href="#a4f3184ccb8e8ba2a78e2d2e83a0b9885">More...</a><br /></td></tr>
- <tr class="separator:a4f3184ccb8e8ba2a78e2d2e83a0b9885"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a960827a1d72083a511f8ea4ccc8beceb"><td class="memTemplParams" colspan="2">template<typename Expected , template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:a960827a1d72083a511f8ea4ccc8beceb"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#a960827a1d72083a511f8ea4ccc8beceb">is_detected_exact_v</a> = <a class="el" href="namespaceutl_1_1meta.html#ad5224ef66e8f40efaaf3ad3d605dd629">is_detected_exact</a>< Expected, Op, Args...>::value</td></tr>
- <tr class="memdesc:a960827a1d72083a511f8ea4ccc8beceb"><td class="mdescLeft"> </td><td class="mdescRight">evaluates to true if evaluation of Op<Args...> is <code>Expected</code> and to false if not <a href="#a960827a1d72083a511f8ea4ccc8beceb">More...</a><br /></td></tr>
- <tr class="separator:a960827a1d72083a511f8ea4ccc8beceb"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:acba521b528e775be4b37d2e481e0f138"><td class="memTemplParams" colspan="2">template<typename To , template< typename... > class Op, typename... Args> </td></tr>
- <tr class="memitem:acba521b528e775be4b37d2e481e0f138"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceutl_1_1meta.html#acba521b528e775be4b37d2e481e0f138">is_detected_convertible_v</a></td></tr>
- <tr class="separator:acba521b528e775be4b37d2e481e0f138"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <h2 class="groupheader">Typedef Documentation</h2>
- <a id="aeb5cb48e804cd160b39f8c3ed2967c37"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aeb5cb48e804cd160b39f8c3ed2967c37">◆ </a></span>accumulate</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename V , typename Fn > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aeb5cb48e804cd160b39f8c3ed2967c37">utl::meta::accumulate</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a6108f39d28c924146eff4143a61af226">fold</a><List, V, Fn></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>accumulate is an stl name for fold </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a24">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00387">387</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a559ad95ef39fd2c81664bd1a22dd99c1"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a559ad95ef39fd2c81664bd1a22dd99c1">◆ </a></span>add</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">utl::meta::add</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp1() + _Tp2()), _Tp1() + _Tp2() ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Addition. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00144">144</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="afacfb1fb855b9a9a0c8a2a625a2a9bd2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#afacfb1fb855b9a9a0c8a2a625a2a9bd2">◆ </a></span>alignof_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Tp > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#afacfb1fb855b9a9a0c8a2a625a2a9bd2">utl::meta::alignof_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a><alignof(Tp)></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Computes the alignment required for any instance of the type <code>Tp</code>. Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/>. </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00120">120</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="ace96e2f19376375cc71ee0cd80f4bb75"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ace96e2f19376375cc71ee0cd80f4bb75">◆ </a></span>all_of</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ace96e2f19376375cc71ee0cd80f4bb75">utl::meta::all_of</a> = typedef <a class="el" href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">if_</a> < <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a> <List>, <a class="el" href="namespaceutl_1_1meta.html#a55511dbaa0adb605ce22dcec11f8d22d">false_</a>, <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a> < <a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">filter</a> <List, <a class="el" href="namespaceutl_1_1meta.html#a4f0c06cabe66bc73b703eb8509c7bb07">compose</a><<a class="el" href="structutl_1_1meta_1_1quote.html">quote</a><<a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a>>, Pred> > > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns <code>true_</code> if <code>Pred</code> returns <code>true_</code> for all the elements in the <code>List</code> or if the <code>List</code> is empty and <code>false_</code> otherwise. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a47">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00861">861</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a212c26a29491610187f6e8543f06df5f"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a212c26a29491610187f6e8543f06df5f">◆ </a></span>any_of</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a212c26a29491610187f6e8543f06df5f">utl::meta::any_of</a> = typedef <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a>< <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a><<a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">filter</a> <List, Pred> > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns <code>true_</code> if <code>Pred</code> returns <code>true_</code> for any of the elements in the <code>List</code> and <code>false_</code> otherwise. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a49">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00868">868</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a3f684549221fac60bc8c7979cb4b98f4"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a3f684549221fac60bc8c7979cb4b98f4">◆ </a></span>apply</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Fn , typename Seq > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">utl::meta::apply</a> = typedef <a class="el" href="structutl_1_1meta_1_1apply__impl_1_1apply__.html">apply_impl::apply_</a><Fn, Seq></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Apply the Invocable <code>Fn</code> using the types in the type <code>Seq</code> as arguments. </p><dl class="section note"><dt>Note</dt><dd>This is the opposed operation of typelist<Ts...></dd></dl>
- <p>If <code>Seq</code> == typelist<> then Unpack typelist and apply to <code>Fn</code> It <code>Seq</code> == integer_sequence<> then Unpack and use the integral_c<> of each integer </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a7">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>, and <a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a13">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00197">197</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ac2952cd4ed04938edc6de21ffe200e9b"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac2952cd4ed04938edc6de21ffe200e9b">◆ </a></span>apply_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Fn , typename Seq > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ac2952cd4ed04938edc6de21ffe200e9b">utl::meta::apply_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> <<a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a><Fn, Seq> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a14">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00200">200</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a67329ec425c857dcaf4cde9044674c90"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a67329ec425c857dcaf4cde9044674c90">◆ </a></span>at</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename N > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a67329ec425c857dcaf4cde9044674c90">utl::meta::at</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a6683b804a20d54817d61ce4663527084">at_c</a><List, N::type::value></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the <code>N</code> th element in the <code><a class="el" href="structutl_1_1meta_1_1typelist.html">meta::typelist</a></code> <code>List</code>.</p>
- <p>Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/>. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a19">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00253">253</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a6683b804a20d54817d61ce4663527084"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a6683b804a20d54817d61ce4663527084">◆ </a></span>at_c</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , index_t N> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a6683b804a20d54817d61ce4663527084">utl::meta::at_c</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1at__impl_1_1at__.html">at_impl::at_</a><List, N> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the <code>N</code> th element in the <code><a class="el" href="structutl_1_1meta_1_1typelist.html">meta::typelist</a></code> <code>List</code>.</p>
- <p>Complexity <img class="formulaInl" alt="$ O(logN) $" src="form_1.png"/>. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a18">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00245">245</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ad9ee55707fc633d53577b81a59136b7d"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ad9ee55707fc633d53577b81a59136b7d">◆ </a></span>back</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ad9ee55707fc633d53577b81a59136b7d">utl::meta::back</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1back__impl_1_1back__.html">back_impl::back_</a><List> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the last element in <code><a class="el" href="structutl_1_1meta_1_1typelist.html">meta::typelist</a></code> <code>List</code>. Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/>. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a21">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00296">296</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="aca6b42898b47945118c518bde9d25cc2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aca6b42898b47945118c518bde9d25cc2">◆ </a></span>bitand_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aca6b42898b47945118c518bde9d25cc2">utl::meta::bitand_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><decltype(_Tp1() & _Tp2()), _Tp1() & _Tp2()></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl class="section return"><dt>Returns</dt><dd>bitwise and (&) operation of its arguments </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00208">208</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a9ea199752ca985d1b813d7127868566c"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a9ea199752ca985d1b813d7127868566c">◆ </a></span>bitnot_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _T > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a9ea199752ca985d1b813d7127868566c">utl::meta::bitnot_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><typename _T::value_type, (typename _T::value_type)(~_T())></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Bitwise operations requires IntegralConstant(_Tp)</p><dl class="section return"><dt>Returns</dt><dd>bitwise not (~) operation of its argument. </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00205">205</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a1e2c2decdd22972fc8ce43203c0ef0d1"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a1e2c2decdd22972fc8ce43203c0ef0d1">◆ </a></span>bitor_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a1e2c2decdd22972fc8ce43203c0ef0d1">utl::meta::bitor_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><decltype(_Tp1() | _Tp2()), _Tp1() | _Tp2()></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl class="section return"><dt>Returns</dt><dd>bitwise or (|) operation of its arguments. </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00211">211</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a910e21345bc7e75dc7c0ceb4a4721754"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a910e21345bc7e75dc7c0ceb4a4721754">◆ </a></span>bitxor_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a910e21345bc7e75dc7c0ceb4a4721754">utl::meta::bitxor_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><decltype(_Tp1() ^ _Tp2()), _Tp1() ^ _Tp2()></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl class="section return"><dt>Returns</dt><dd>bitwise xor (^) operation of its arguments. </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00215">215</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a0bec5828d2df0edfb4bc084773a438f6"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a0bec5828d2df0edfb4bc084773a438f6">◆ </a></span>bool_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<bool v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">utl::meta::bool_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><bool, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>bool_ type: integral constant wrapper for bool </p>
- <p>Wrappers for basic types </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00066">66</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a70d0910ace47f4e12e8fa0788679044a"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a70d0910ace47f4e12e8fa0788679044a">◆ </a></span>cat</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename... Lists> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a70d0910ace47f4e12e8fa0788679044a">utl::meta::cat</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1cat__impl_1_1cat__.html">cat_impl::cat_</a><Lists...> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Transformation that concatenates several lists into a single typelist. The parameters must all be instantiations of <code><a class="el" href="structutl_1_1meta_1_1typelist.html">meta::typelist</a></code>. Complexity: <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/> where <img class="formulaInl" alt="$ N $" src="form_3.png"/> is the number of lists passed to the algorithm. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a22">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00338">338</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a0fe31eec9b085e52aa45587e6d887419"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a0fe31eec9b085e52aa45587e6d887419">◆ </a></span>char_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<char v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a0fe31eec9b085e52aa45587e6d887419">utl::meta::char_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><char, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>char_ type: integral constant wrapper for <code>char</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00094">94</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a7ae2d08147055946f1b9345e579a26b6"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a7ae2d08147055946f1b9345e579a26b6">◆ </a></span>comp_eq</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a7ae2d08147055946f1b9345e579a26b6">utl::meta::comp_eq</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a><_Tp1() == _Tp2()></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Comparison operations requires IntegralConstant(_Tp)</p><dl class="section return"><dt>Returns</dt><dd>a true-valued Integral Constant if _Tp1 and _Tp2 are equal. </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00184">184</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="ae6c552e8e99ac5578f865f17c1d0efdc"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ae6c552e8e99ac5578f865f17c1d0efdc">◆ </a></span>comp_ge</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ae6c552e8e99ac5578f865f17c1d0efdc">utl::meta::comp_ge</a> = typedef <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a><<a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">comp_lt</a><_Tp1, _Tp2> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Greater or equal. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00195">195</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a3c4784ad3eb1f745c58b9a4b65a406e8"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a3c4784ad3eb1f745c58b9a4b65a406e8">◆ </a></span>comp_gt</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a3c4784ad3eb1f745c58b9a4b65a406e8">utl::meta::comp_gt</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">comp_lt</a> <_Tp2, _Tp1></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Greater than. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00191">191</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="afb9a35dc5ef40b5bf9902c0daec7f1af"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#afb9a35dc5ef40b5bf9902c0daec7f1af">◆ </a></span>comp_le</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#afb9a35dc5ef40b5bf9902c0daec7f1af">utl::meta::comp_le</a> = typedef <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a><<a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">comp_lt</a><_Tp2, _Tp1> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Less or equal. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00193">193</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a1a948746d1758a05c0ae71cfd114b05d"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a1a948746d1758a05c0ae71cfd114b05d">◆ </a></span>comp_lt</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a1a948746d1758a05c0ae71cfd114b05d">utl::meta::comp_lt</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a><(_Tp1() < _Tp2())></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl class="section return"><dt>Returns</dt><dd>a true-valued Integral Constant if _Tp1 is less than _Tp2. </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00186">186</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="af92bee16de47b16ba01a8efac686b488"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af92bee16de47b16ba01a8efac686b488">◆ </a></span>comp_ne</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af92bee16de47b16ba01a8efac686b488">utl::meta::comp_ne</a> = typedef <a class="el" href="group__integral.html#ga16df145331d3c62e624385c5949d90c4">not_</a><<a class="el" href="namespaceutl_1_1meta.html#a7ae2d08147055946f1b9345e579a26b6">comp_eq</a><_Tp1, _Tp2> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Not equal. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00189">189</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a4f0c06cabe66bc73b703eb8509c7bb07"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a4f0c06cabe66bc73b703eb8509c7bb07">◆ </a></span>compose</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename... Fns> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a4f0c06cabe66bc73b703eb8509c7bb07">utl::meta::compose</a> = typedef <a class="el" href="structutl_1_1meta_1_1detail_1_1compose__.html">detail::compose_</a><Fns...></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a1">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00308">308</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="a729294327829b3068632da1235dc3090"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a729294327829b3068632da1235dc3090">◆ </a></span>compose_f</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<template< typename... > class... Fns> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a729294327829b3068632da1235dc3090">utl::meta::compose_f</a> = typedef <a class="el" href="structutl_1_1meta_1_1detail_1_1compose__f__.html">detail::compose_f_</a><Fns...></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a31">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00324">324</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="ab5508236016638fa8e6b97cd17dfc9c2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ab5508236016638fa8e6b97cd17dfc9c2">◆ </a></span>count</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename T > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ab5508236016638fa8e6b97cd17dfc9c2">utl::meta::count</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a981e18b40d69cdd76466de7bfe24e619">count_if</a><List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a><T> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Count all occurrences of type <code>T</code> int <code>List</code> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a43">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00761">761</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a981e18b40d69cdd76466de7bfe24e619"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a981e18b40d69cdd76466de7bfe24e619">◆ </a></span>count_if</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a981e18b40d69cdd76466de7bfe24e619">utl::meta::count_if</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1count__if__impl_1_1count__if__.html">count_if_impl::count_if_</a><List, Pred, 0> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Count all <code>Items</code> on the <code>List</code> for which the predicate <code>Pred</code> returns true_ when <code>eval<invoke<Pred, Item>></code></p>
- <p>Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/></p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">List</td><td>A typelist </td></tr>
- <tr><td class="paramname">Pred</td><td>A Unary invocable predicate </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>The total count of occurrences as an integral constant of size_t </dd></dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a42">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00755">755</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="abee96e75aadb364fdd0890aa3ee490b7"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#abee96e75aadb364fdd0890aa3ee490b7">◆ </a></span>dec</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#abee96e75aadb364fdd0890aa3ee490b7">utl::meta::dec</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">add</a><_Tp, <a class="el" href="namespaceutl_1_1meta.html#a35b962b97f8277de66c1c8c02796eed4">int_</a><-1> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>decrease </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00173">173</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a48f9a1220931596a9652351d2e7242be"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a48f9a1220931596a9652351d2e7242be">◆ </a></span>defer</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<template< class... > class F, class... Ts> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a48f9a1220931596a9652351d2e7242be">utl::meta::defer</a> = typedef <a class="el" href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">if_</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__.html">detail::is_applicable_</a><F, Ts...>, <a class="el" href="structutl_1_1meta_1_1detail_1_1defer__.html">detail::defer_</a><F, Ts...>, <a class="el" href="structutl_1_1meta_1_1nil__.html">nil_</a> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>defer alias template for F<Ts...> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a27">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00213">213</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="a01f183f337439e414184beedc9bcf9e3"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a01f183f337439e414184beedc9bcf9e3">◆ </a></span>defer_i</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename T , template< T... > class F, T... Is> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a01f183f337439e414184beedc9bcf9e3">utl::meta::defer_i</a> = typedef <a class="el" href="group__type.html#ga39cc4e727a8faa5ea176f543e62c05c0">if_</a> < <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__i__.html">detail::is_applicable_i_</a><T, F, Is...>, <a class="el" href="structutl_1_1meta_1_1detail_1_1defer__i__.html">detail::defer_i_</a><T, F, Is...>, <a class="el" href="structutl_1_1meta_1_1nil__.html">nil_</a> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>defer_i alias template for F<T, Is...> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a28">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00221">221</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="a8fd055bc6c6c3b1d551e9605aa35644c"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a8fd055bc6c6c3b1d551e9605aa35644c">◆ </a></span>detected_or_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Default , template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a8fd055bc6c6c3b1d551e9605aa35644c">utl::meta::detected_or_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> < <a class="el" href="namespaceutl_1_1meta_1_1detail.html#a835827cb3116483228d6f7f774b68970">detail::detected_or</a><Default, Op, Args...> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a9">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00172">172</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </div>
- <a id="aa654a286b3bc8e6d8116ee1f57087110"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa654a286b3bc8e6d8116ee1f57087110">◆ </a></span>detected_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa654a286b3bc8e6d8116ee1f57087110">utl::meta::detected_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> < <a class="el" href="structutl_1_1meta_1_1detail_1_1detector.html">detail::detector</a><<a class="el" href="structutl_1_1meta_1_1nat__.html">nat_</a>, void, Op, Args...> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a8">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00146">146</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </div>
- <a id="ae1ec6fc1f76abbb2e5287aa91cd85068"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ae1ec6fc1f76abbb2e5287aa91cd85068">◆ </a></span>divide</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ae1ec6fc1f76abbb2e5287aa91cd85068">utl::meta::divide</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp2() / _Tp2()), _Tp1() / _Tp2() ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Division. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00156">156</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a58c1744750d0df133034f60a95f87e19"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a58c1744750d0df133034f60a95f87e19">◆ </a></span>empty</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">utl::meta::empty</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a><List::empty()></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>An Boolean constant wrapper that returns if the typelist is empty</p>
- <p>Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/>.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">List</td><td>A typelist </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>Empty or not </dd></dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a7">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00140">140</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ab3fed26a4c7a8204accb349f0b6600e8"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ab3fed26a4c7a8204accb349f0b6600e8">◆ </a></span>enable_if</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<bool If, typename _Tp = void> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ab3fed26a4c7a8204accb349f0b6600e8">utl::meta::enable_if</a> = typedef std::enable_if<If, _Tp></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>enable_if, imported from stl </p>
- <p>enable_if </p>
-
- <p class="definition">Definition at line <a class="el" href="sfinae_8h_source.html#l00060">60</a> of file <a class="el" href="sfinae_8h_source.html">sfinae.h</a>.</p>
-
- </div>
- </div>
- <a id="a372fe391d9567f66a81091f581e1fa01"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a372fe391d9567f66a81091f581e1fa01">◆ </a></span>enable_if_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<bool If, typename _Tp = void> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">utl::meta::enable_if_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#ab3fed26a4c7a8204accb349f0b6600e8">enable_if</a><If, _Tp> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>alias template for enable_if </p>
-
- <p class="definition">Definition at line <a class="el" href="sfinae_8h_source.html#l00063">63</a> of file <a class="el" href="sfinae_8h_source.html">sfinae.h</a>.</p>
-
- </div>
- </div>
- <a id="aa5a37adba244ff4286f994111c4c02ea"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa5a37adba244ff4286f994111c4c02ea">◆ </a></span>eval</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Tp > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">utl::meta::eval</a> = typedef typename Tp::type</td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Type alias for <code>Tp::type</code>. Used to evaluate/extract return type of metafunctions. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a2">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>, <a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a9">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>, and <a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a4">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00049">49</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a55511dbaa0adb605ce22dcec11f8d22d"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a55511dbaa0adb605ce22dcec11f8d22d">◆ </a></span>false_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a55511dbaa0adb605ce22dcec11f8d22d">utl::meta::false_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a><false></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>The type used as a compile-time boolean with false value. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a3">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>, <a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a14">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>, and <a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a48">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00069">69</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="ac72acc616316c322e750d20a46553ba4"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac72acc616316c322e750d20a46553ba4">◆ </a></span>filter</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">utl::meta::filter</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1filter__impl_1_1filter__.html">filter_impl::filter_</a><List, Pred, <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><> > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return a new typelist with elements, the elements of <code>List</code> that satisfy the invocable <code>Pred</code> such that <code>eval<invoke<Pred, Item>></code> is <code>true_</code> </p>
- <p>Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/></p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">List</td><td>The input typelist </td></tr>
- <tr><td class="paramname">Pred</td><td>A unary invocable predicate </td></tr>
- </table>
- </dd>
- </dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a44">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00800">800</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="af4c9b6350bba98cc0dd73e87cb4ce413"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af4c9b6350bba98cc0dd73e87cb4ce413">◆ </a></span>find</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename T > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af4c9b6350bba98cc0dd73e87cb4ce413">utl::meta::find</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aacf124929c0cbb3b29d34679bff50a96">find_if</a><List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a><T> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Search for the first occurrence of type <code>T</code> on a <code>List</code> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a39">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00663">663</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="aacf124929c0cbb3b29d34679bff50a96"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aacf124929c0cbb3b29d34679bff50a96">◆ </a></span>find_if</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aacf124929c0cbb3b29d34679bff50a96">utl::meta::find_if</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1find__if__impl_1_1find__if__.html">find_if_impl::find_if_</a><List, Pred, 0> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Search for the first <code>Item</code> on the <code>List</code> for which the predicate <code>Pred</code> returns true_ when <code>eval<invoke<Pred, Item>></code></p>
- <p>Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/></p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">List</td><td>A typelist </td></tr>
- <tr><td class="paramname">Pred</td><td>A Unary invocable predicate </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>An integral constant of index_t with the location of the first match, or Npos otherwise. </dd></dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a38">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00657">657</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a6108f39d28c924146eff4143a61af226"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a6108f39d28c924146eff4143a61af226">◆ </a></span>fold</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename V , typename Fn > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a6108f39d28c924146eff4143a61af226">utl::meta::fold</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a><<a class="el" href="structutl_1_1meta_1_1fold__impl_1_1fold__.html">fold_impl::fold_</a><List, V, Fn> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a23">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00383">383</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ace309fb2eff5c4a5a806b9393abea486"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ace309fb2eff5c4a5a806b9393abea486">◆ </a></span>front</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ace309fb2eff5c4a5a806b9393abea486">utl::meta::front</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1front__impl_1_1front__.html">front_impl::front_</a><List> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the first element in <code><a class="el" href="structutl_1_1meta_1_1typelist.html">meta::typelist</a></code> <code>List</code>. Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/>. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a20">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00274">274</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a63c0b6b08f4c1d9bd3c4db7432e9b2af"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a63c0b6b08f4c1d9bd3c4db7432e9b2af">◆ </a></span>identity_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a63c0b6b08f4c1d9bd3c4db7432e9b2af">utl::meta::identity_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a><<a class="el" href="structutl_1_1meta_1_1identity.html">identity</a><_Tp> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>identity type alias </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a6">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00068">68</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="af74f5af58b33241f1b94102742a73ab1"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af74f5af58b33241f1b94102742a73ab1">◆ </a></span>inc</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af74f5af58b33241f1b94102742a73ab1">utl::meta::inc</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">add</a><_Tp, <a class="el" href="namespaceutl_1_1meta.html#a35b962b97f8277de66c1c8c02796eed4">int_</a><1> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Increase. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00169">169</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a5b7d36b9e568b81f2df897d56dc23b64"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a5b7d36b9e568b81f2df897d56dc23b64">◆ </a></span>index_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<index_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a5b7d36b9e568b81f2df897d56dc23b64">utl::meta::index_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><<a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>index_ type: integral constant wrapper for <code>index_t</code> a.k.a std::size_t </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00106">106</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="acb42e9c38b726174e64a36eea39239a5"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#acb42e9c38b726174e64a36eea39239a5">◆ </a></span>index_sequence</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<index_t... Idx> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#acb42e9c38b726174e64a36eea39239a5">utl::meta::index_sequence</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#abc3ba8590a6cdd451f64d6c5dcd8ff99">integer_sequence</a><<a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>, Idx...></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Alias template index_sequence. </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00136">136</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a7cdf7fbb62116925ccdecab03d3383d9"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a7cdf7fbb62116925ccdecab03d3383d9">◆ </a></span>index_sequence_for</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename... Types> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a7cdf7fbb62116925ccdecab03d3383d9">utl::meta::index_sequence_for</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa7e48cd5c76ea88fc89ff4a66bc6f596">make_index_sequence</a><sizeof...(Types)></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Alias template index_sequence_for. </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00144">144</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a65bf025970a7ec0fd488c50a1b9c1038"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a65bf025970a7ec0fd488c50a1b9c1038">◆ </a></span>int16_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<int16_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a65bf025970a7ec0fd488c50a1b9c1038">utl::meta::int16_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><int16_t, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>int16_ type: integral constant wrapper for <code>int16_t</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00080">80</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="aa907f027fe3df2cecca2cf60930086fb"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa907f027fe3df2cecca2cf60930086fb">◆ </a></span>int32_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<int32_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa907f027fe3df2cecca2cf60930086fb">utl::meta::int32_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><int32_t, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>int32_ type: integral constant wrapper for <code>int32_t</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00087">87</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="aa0ca1890dde0298c4380f94582cc2186"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa0ca1890dde0298c4380f94582cc2186">◆ </a></span>int8_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<int8_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa0ca1890dde0298c4380f94582cc2186">utl::meta::int8_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><int8_t, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>int8_ type: integral constant wrapper for <code>int8_t</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00073">73</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a35b962b97f8277de66c1c8c02796eed4"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a35b962b97f8277de66c1c8c02796eed4">◆ </a></span>int_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<int v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a35b962b97f8277de66c1c8c02796eed4">utl::meta::int_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><int, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>int_ type: integral constant wrapper for <code>int</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00098">98</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="abc3ba8590a6cdd451f64d6c5dcd8ff99"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#abc3ba8590a6cdd451f64d6c5dcd8ff99">◆ </a></span>integer_sequence</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class Tp , Tp... Ints> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#abc3ba8590a6cdd451f64d6c5dcd8ff99">utl::meta::integer_sequence</a> = typedef std::integer_sequence<Tp, Ints...></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>integer sequence </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a12">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00129">129</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="ad60242f998d1d236b7b9744b7b09c8f2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ad60242f998d1d236b7b9744b7b09c8f2">◆ </a></span>integral_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Tp , Tp v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">utl::meta::integral_</a> = typedef std::integral_constant<Tp, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>integral_ Integral Constant is a holder class for a compile-time value of an integral type. Every Integral Constant is also a null-ary Metafunction, returning itself. An integral constant object is implicitly convertible to the corresponding run-time value of the wrapped integral type </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00058">58</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a77630cd8adc01f7193f6cb834313d90f"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a77630cd8adc01f7193f6cb834313d90f">◆ </a></span>invoke</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Fn , typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a77630cd8adc01f7193f6cb834313d90f">utl::meta::invoke</a> = typedef typename Fn::template <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a><Args...></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>invoke, invoke_t</p>
- <p>Invoke the nested apply meta-function from <code>Fn</code> with the arguments <code>Args</code>. </p><dl class="section note"><dt>Note</dt><dd>This is an analogous to the <a class="el" href="namespaceutl.html#adc675874b5426194d04112f76b356714" title="Invoke a callable object (for C++14) ">std::invoke()</a> </dd></dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a0">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>, and <a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a11">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00081">81</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="ac27f3e5f3ec42921d9f8a6bb85560cf1"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac27f3e5f3ec42921d9f8a6bb85560cf1">◆ </a></span>invoke_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Fn , typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ac27f3e5f3ec42921d9f8a6bb85560cf1">utl::meta::invoke_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a77630cd8adc01f7193f6cb834313d90f">invoke</a> <Fn, Args...> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Evaluate the invocation of the nested apply metafunction from <code>Fn</code> with the arguments <code>Args</code>. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a8">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00088">88</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="add602488265f07c7a3080355350cda70"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#add602488265f07c7a3080355350cda70">◆ </a></span>is_applicable_it</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename T , template< T... > class F, T... Is> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#add602488265f07c7a3080355350cda70">utl::meta::is_applicable_it</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__i__.html">detail::is_applicable_i_</a><T, F, Is...> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>check if we can instantiate <code>F</code> with parameters <code>Is</code> of type <code>T</code> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a24">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00174">174</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="a52c0afa73f63dc889e44cc6cc180f1f8"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a52c0afa73f63dc889e44cc6cc180f1f8">◆ </a></span>is_applicable_qt</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Q , typename... T> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a52c0afa73f63dc889e44cc6cc180f1f8">utl::meta::is_applicable_qt</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> < <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__q__.html">detail::is_applicable_q_</a> <Q, T...> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>check if we can invoke <code>Q</code> with parameters <code>T</code> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a23">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00168">168</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="a695a94a2bbe51b0d0eec9bf82214d094"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a695a94a2bbe51b0d0eec9bf82214d094">◆ </a></span>is_applicable_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<template< typename... > class F, typename... T> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a695a94a2bbe51b0d0eec9bf82214d094">utl::meta::is_applicable_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1is__applicable__.html">detail::is_applicable_</a><F, T...> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>check if we can instantiate <code>F</code> with parameters <code>T</code> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a22">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="meta_2invoke_8h_source.html#l00163">163</a> of file <a class="el" href="meta_2invoke_8h_source.html">invoke.h</a>.</p>
-
- </div>
- </div>
- <a id="a5329219a9d2f195421a78d8e07873507"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a5329219a9d2f195421a78d8e07873507">◆ </a></span>is_detected</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a5329219a9d2f195421a78d8e07873507">utl::meta::is_detected</a> = typedef typename <a class="el" href="structutl_1_1meta_1_1detail_1_1detector.html">detail::detector</a><<a class="el" href="structutl_1_1meta_1_1nat__.html">nat_</a>, void, Op, Args...>::detected</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a6">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00118">118</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </div>
- <a id="afa24702fa15a1d0a8a05761c54b79def"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#afa24702fa15a1d0a8a05761c54b79def">◆ </a></span>is_detected_convertible</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename To , template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#afa24702fa15a1d0a8a05761c54b79def">utl::meta::is_detected_convertible</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> < std::is_convertible< <a class="el" href="namespaceutl_1_1meta.html#aa654a286b3bc8e6d8116ee1f57087110">detected_t</a><Op, Args...>, To > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a12">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00231">231</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </div>
- <a id="ad5224ef66e8f40efaaf3ad3d605dd629"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ad5224ef66e8f40efaaf3ad3d605dd629">◆ </a></span>is_detected_exact</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Expected , template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ad5224ef66e8f40efaaf3ad3d605dd629">utl::meta::is_detected_exact</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> < <a class="el" href="structutl_1_1meta_1_1same__.html">same_</a><Expected, <a class="el" href="namespaceutl_1_1meta.html#aa654a286b3bc8e6d8116ee1f57087110">detected_t</a><Op, Args...> > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a10">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00199">199</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </div>
- <a id="a5d3ed337c64ea13ee70891d09b0caa3e"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a5d3ed337c64ea13ee70891d09b0caa3e">◆ </a></span>long_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<long v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a5d3ed337c64ea13ee70891d09b0caa3e">utl::meta::long_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><long, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>long_ type: integral constant wrapper for <code>long</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00102">102</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="aa7e48cd5c76ea88fc89ff4a66bc6f596"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa7e48cd5c76ea88fc89ff4a66bc6f596">◆ </a></span>make_index_sequence</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<index_t Num> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa7e48cd5c76ea88fc89ff4a66bc6f596">utl::meta::make_index_sequence</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a093a8cfdae571002c305273aa02ad6a2">make_integer_sequence</a> <<a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>, Num></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Alias template make_index_sequence. </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00140">140</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a093a8cfdae571002c305273aa02ad6a2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a093a8cfdae571002c305273aa02ad6a2">◆ </a></span>make_integer_sequence</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Tp , Tp Num> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a093a8cfdae571002c305273aa02ad6a2">utl::meta::make_integer_sequence</a> = typedef std::make_integer_sequence<Tp, Num></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00132">132</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="adf7106374b1acc978be05b5848002cfc"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#adf7106374b1acc978be05b5848002cfc">◆ </a></span>modulo</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#adf7106374b1acc978be05b5848002cfc">utl::meta::modulo</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp1() % _Tp2()), _Tp1() % _Tp2() ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Modulo. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00162">162</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a5f0a890cbd116d4a72a760a26f5a8244"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a5f0a890cbd116d4a72a760a26f5a8244">◆ </a></span>mult</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a5f0a890cbd116d4a72a760a26f5a8244">utl::meta::mult</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a>< decltype(_Tp2() * _Tp2()), _Tp1() * _Tp2() ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Multiplication. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00150">150</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="aec4bf9329ff8356d333a59e3c369d0b7"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aec4bf9329ff8356d333a59e3c369d0b7">◆ </a></span>negate</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aec4bf9329ff8356d333a59e3c369d0b7">utl::meta::negate</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><decltype(-_Tp()), -_Tp()></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Negation. </p>
- <p>Math operations requires IntegralConstant(_Tp) </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00138">138</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="af324255cfaa0be3f02843961f5becb85"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af324255cfaa0be3f02843961f5becb85">◆ </a></span>none_of</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af324255cfaa0be3f02843961f5becb85">utl::meta::none_of</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a58c1744750d0df133034f60a95f87e19">empty</a>< <a class="el" href="namespaceutl_1_1meta.html#ac72acc616316c322e750d20a46553ba4">filter</a> <List, Pred> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns <code>true_</code> if <code>Pred</code> returns <code>false_</code> for all the elements in the <code>List</code> or if the <code>List</code> is empty and <code>false</code> otherwise. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a51">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00875">875</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="af0c85cc6480a9e7a8e4fb7d8f936f01b"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af0c85cc6480a9e7a8e4fb7d8f936f01b">◆ </a></span>Npos</h2>
-
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af0c85cc6480a9e7a8e4fb7d8f936f01b">utl::meta::Npos</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a><<a class="el" href="namespaceutl.html#a676c0acd539dd04048dcc7b4d698577e">index_t</a>(-1)></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>The last position we can express for indexing. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a37">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00124">124</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="aa6513d9d2a5db3ba3517efff33adc761"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa6513d9d2a5db3ba3517efff33adc761">◆ </a></span>pair</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename T1 , typename T2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa6513d9d2a5db3ba3517efff33adc761">utl::meta::pair</a> = typedef <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><T1, T2></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>pair A special typelist with only 2 Types </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a8">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00145">145</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a86a37f5803c474823963e1f3c6f7a6d6"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a86a37f5803c474823963e1f3c6f7a6d6">◆ </a></span>pop_back</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a86a37f5803c474823963e1f3c6f7a6d6">utl::meta::pop_back</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> < <a class="el" href="structutl_1_1meta_1_1pop__back__impl_1_1pop__back__.html">pop_back_impl::pop_back_</a><List> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return a new <code>typelist</code> by removing the last element from the <code>List</code>. Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/>. </p><dl class="section note"><dt>Note</dt><dd>This operation, in addition from other push/pop operations, is heavy(2 reverse operations). </dd></dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a32">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00526">526</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="aa4a307a81c0640c6c0dd08f8a53f3c32"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa4a307a81c0640c6c0dd08f8a53f3c32">◆ </a></span>pop_front</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa4a307a81c0640c6c0dd08f8a53f3c32">utl::meta::pop_front</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1pop__front__impl_1_1pop__front__.html">pop_front_impl::pop_front_</a><List> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return a new <code>typelist</code> by removing the first element from the front of <code>List</code>. Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a30">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00502">502</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="adf545ba110edc6a34ddcaf2280a0c7f4"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#adf545ba110edc6a34ddcaf2280a0c7f4">◆ </a></span>push_back</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename... Ts> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#adf545ba110edc6a34ddcaf2280a0c7f4">utl::meta::push_back</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a> < <a class="el" href="structutl_1_1meta_1_1bind__back.html">bind_back</a><<a class="el" href="structutl_1_1meta_1_1quote.html">quote</a><<a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a>>, Ts...>, List > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return a new <code>typelist</code> by adding the elements <code>Ts</code> to the back of <code>List</code>. Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a27">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00461">461</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ab0f84ba0807b6fd36fa9e4e5cfc4cd32"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ab0f84ba0807b6fd36fa9e4e5cfc4cd32">◆ </a></span>push_front</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename... Ts> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ab0f84ba0807b6fd36fa9e4e5cfc4cd32">utl::meta::push_front</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="namespaceutl_1_1meta.html#a3f684549221fac60bc8c7979cb4b98f4">apply</a> < <a class="el" href="structutl_1_1meta_1_1bind__front.html">bind_front</a><<a class="el" href="structutl_1_1meta_1_1quote.html">quote</a><<a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a>>, Ts...>, List > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return a new <code>typelist</code> by adding the elements <code>Ts</code> to the front of <code>List</code>. Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a26">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00450">450</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="aa013c45afb59b5c132a72be54ba145fb"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa013c45afb59b5c132a72be54ba145fb">◆ </a></span>repeat</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename N , typename ... Ts> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa013c45afb59b5c132a72be54ba145fb">utl::meta::repeat</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#af6ff0017ea5e914543527b7135930f47">repeat_c</a><N::type::value, Ts...></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>A wrapper to typelist<>::times<> utility for integral_c argument <code>N</code> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a10">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00161">161</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="af6ff0017ea5e914543527b7135930f47"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af6ff0017ea5e914543527b7135930f47">◆ </a></span>repeat_c</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<size_t N, typename ... Ts> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af6ff0017ea5e914543527b7135930f47">utl::meta::repeat_c</a> = typedef typename <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><Ts...>::template times<N></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>repeat</p>
- <p>A wrapper to typelist<>::times<> utility for integer argument <code>N</code> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a9">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00155">155</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ac9d120f858ebfa2b0ef74c6305a9fb6d"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac9d120f858ebfa2b0ef74c6305a9fb6d">◆ </a></span>replace</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename T , typename U > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ac9d120f858ebfa2b0ef74c6305a9fb6d">utl::meta::replace</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a> < <a class="el" href="namespaceutl_1_1meta.html#a848a47bf281bf3eaf932cc9113477102">replace_if</a> <List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a><T>, U> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Alias wrapper that returns a new <code>typelist</code> where all instances of type <code>T</code> have been replaced with <code>U</code>. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a46">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00848">848</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a848a47bf281bf3eaf932cc9113477102"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a848a47bf281bf3eaf932cc9113477102">◆ </a></span>replace_if</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred , typename T > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a848a47bf281bf3eaf932cc9113477102">utl::meta::replace_if</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1replace__if__impl_1_1replace__if__.html">replace_if_impl::replace_if_</a><List, Pred, T, <a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><> > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return a new typelist where all the instances for which the invocation of<code>Pred</code> returns <code>true_</code>, are replaced with <code>T</code> </p>
- <p>Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/></p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">List</td><td>The input typelist </td></tr>
- <tr><td class="paramname">Pred</td><td>A unary invocable predicate </td></tr>
- <tr><td class="paramname">T</td><td>The new type to replace the item of the <code>List</code>, when eval<invoke<Pred, Item>> returns <code>true_</code> </td></tr>
- </table>
- </dd>
- </dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a45">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00841">841</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ab1a91edef4cf9fd56b73c9a03eaeb3d4"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ab1a91edef4cf9fd56b73c9a03eaeb3d4">◆ </a></span>rev_fold</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename V , typename Fn > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ab1a91edef4cf9fd56b73c9a03eaeb3d4">utl::meta::rev_fold</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1rev__fold__impl_1_1rev__fold__.html">rev_fold_impl::rev_fold_</a><List, V, Fn> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a25">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00438">438</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a2ae6bfa22f1912b0ba09d24e0ae2ccd9"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a2ae6bfa22f1912b0ba09d24e0ae2ccd9">◆ </a></span>reverse</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a2ae6bfa22f1912b0ba09d24e0ae2ccd9">utl::meta::reverse</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1reverse__impl_1_1reverse__.html">reverse_impl::reverse_</a><List> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return a new <code>typelist</code> by reversing the elements in the list <code>List</code>. Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/> </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a29">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00479">479</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="aa550d9dc96d34623af4ce71f8a1eaff5"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa550d9dc96d34623af4ce71f8a1eaff5">◆ </a></span>seek</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename T > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa550d9dc96d34623af4ce71f8a1eaff5">utl::meta::seek</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ab8eafd75f3077a36c4e3363b742da64a">seek_if</a> <List, <a class="el" href="structutl_1_1meta_1_1same__as.html">same_as</a><T> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Search for the first <code>Item</code> on the <code>List</code> of type <code>T</code> and return the rest of the <code>List</code> starting from that position as new typelist </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a41">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00711">711</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ab8eafd75f3077a36c4e3363b742da64a"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ab8eafd75f3077a36c4e3363b742da64a">◆ </a></span>seek_if</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List , typename Pred > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ab8eafd75f3077a36c4e3363b742da64a">utl::meta::seek_if</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1seek__if__impl_1_1seek__if__.html">seek_if_impl::seek_if_</a><List, Pred, 0> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Search for the first <code>Item</code> on the <code>List</code> for which the predicate <code>Pred</code> returns true_ when <code>eval<invoke<Pred, Item>></code> and return the rest of the <code>List</code> starting from that position as new typelist</p>
- <p>Complexity <img class="formulaInl" alt="$ O(N) $" src="form_2.png"/></p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">List</td><td>A typelist </td></tr>
- <tr><td class="paramname">Pred</td><td>A Unary invocable predicate </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>An integral constant with the location of the first match, on Npos otherwise </dd></dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a40">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00705">705</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a63088c29ac25eefda4189721e662b391"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a63088c29ac25eefda4189721e662b391">◆ </a></span>shift_left</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp , typename shift > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a63088c29ac25eefda4189721e662b391">utl::meta::shift_left</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><typename _Tp::value_type, (typename _Tp::value_type)(_Tp() << shift())></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl class="section return"><dt>Returns</dt><dd>the result of bitwise shift left (<<) operation on _Tp. </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00218">218</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="acbe6dd78c4a4230e92acc5ca86e3fcc7"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#acbe6dd78c4a4230e92acc5ca86e3fcc7">◆ </a></span>shift_right</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp , typename shift > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#acbe6dd78c4a4230e92acc5ca86e3fcc7">utl::meta::shift_right</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><typename _Tp::value_type, (typename _Tp::value_type)(_Tp() > > shift())></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl class="section return"><dt>Returns</dt><dd>the result of bitwise shift right (>>) operation on _Tp. </dd></dl>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00221">221</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="a0edfc2c15e42531e53c0822264d220ec"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a0edfc2c15e42531e53c0822264d220ec">◆ </a></span>size</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename List > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a0edfc2c15e42531e53c0822264d220ec">utl::meta::size</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a><List::size()></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>An integral constant wrapper that is the size of the <code><a class="el" href="structutl_1_1meta_1_1typelist.html">meta::typelist</a></code> </p>
- <p>Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/>.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">List</td><td>A typelist </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>The size of the typelist </dd></dl>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a6">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00129">129</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a249ac51f6613684164663bd22025fe9a"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a249ac51f6613684164663bd22025fe9a">◆ </a></span>size_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<size_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">utl::meta::size_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><<a class="el" href="namespaceutl.html#a22cbecb50ee5c1032de66133e96cbac6">size_t</a>, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>size_ type: integral constant wrapper for <code>size_t</code> a.k.a std::size_t </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00110">110</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a3fdae1894a962a69828ccccf73088cce"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a3fdae1894a962a69828ccccf73088cce">◆ </a></span>sizeof_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Tp > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a3fdae1894a962a69828ccccf73088cce">utl::meta::sizeof_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a249ac51f6613684164663bd22025fe9a">size_</a><sizeof(Tp)></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Computes the size of the type <code>Tp</code>. Complexity <img class="formulaInl" alt="$ O(1) $" src="form_0.png"/>. </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00115">115</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a9f90eea3852367afa4e1fe74756976fb"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a9f90eea3852367afa4e1fe74756976fb">◆ </a></span>sub</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _Tp1 , typename _Tp2 > </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a9f90eea3852367afa4e1fe74756976fb">utl::meta::sub</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a559ad95ef39fd2c81664bd1a22dd99c1">add</a><_Tp1, <a class="el" href="namespaceutl_1_1meta.html#aec4bf9329ff8356d333a59e3c369d0b7">negate</a><_Tp2> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Substruction. </p>
-
- <p class="definition">Definition at line <a class="el" href="operations_8h_source.html#l00165">165</a> of file <a class="el" href="operations_8h_source.html">operations.h</a>.</p>
-
- </div>
- </div>
- <a id="ac8bbf187eea3cb5da38d1bdc97b52334"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac8bbf187eea3cb5da38d1bdc97b52334">◆ </a></span>transform</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ac8bbf187eea3cb5da38d1bdc97b52334">utl::meta::transform</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1transform__impl_1_1transform__.html">transform_impl::transform_</a><<a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><Args...> > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a34">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00568">568</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="a55c0405bfb94c1d285d3131390c31451"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a55c0405bfb94c1d285d3131390c31451">◆ </a></span>transform_lazy</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a55c0405bfb94c1d285d3131390c31451">utl::meta::transform_lazy</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1transform__lazy__impl_1_1transform__lazy__.html">transform_lazy_impl::transform_lazy_</a><<a class="el" href="structutl_1_1meta_1_1typelist.html">typelist</a><Args...> > ></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2typelist_8h-example.html#a35">W:/Work/Software/Libraries/utl/include/utl/meta/typelist.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="typelist_8h_source.html#l00614">614</a> of file <a class="el" href="typelist_8h_source.html">typelist.h</a>.</p>
-
- </div>
- </div>
- <a id="ae9a5a8fbe8202785f059935af219fb97"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ae9a5a8fbe8202785f059935af219fb97">◆ </a></span>true_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ae9a5a8fbe8202785f059935af219fb97">utl::meta::true_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a0bec5828d2df0edfb4bc084773a438f6">bool_</a><true></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>The type used as a compile-time boolean with true value. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a4">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>, and <a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2invoke_8h-example.html#a12">W:/Work/Software/Libraries/utl/include/utl/meta/invoke.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00068">68</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="af1b0b8109e3e61032c24d148202b6966"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af1b0b8109e3e61032c24d148202b6966">◆ </a></span>uint16_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<uint16_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af1b0b8109e3e61032c24d148202b6966">utl::meta::uint16_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><uint16_t, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>uint16_ type: integral constant wrapper for <code>uint16_t</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00083">83</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="aa8c7c38548db8df196b683ffdc109cd6"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa8c7c38548db8df196b683ffdc109cd6">◆ </a></span>uint32_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<uint32_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aa8c7c38548db8df196b683ffdc109cd6">utl::meta::uint32_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><uint32_t, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>uint32_ type: integral constant wrapper for <code>uint32_t</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00090">90</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="aae9c77ad9349e98af6cdc41e9b0090f8"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aae9c77ad9349e98af6cdc41e9b0090f8">◆ </a></span>uint8_</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<uint8_t v> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#aae9c77ad9349e98af6cdc41e9b0090f8">utl::meta::uint8_</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#ad60242f998d1d236b7b9744b7b09c8f2">integral_</a><uint8_t, v></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>uint8_ type: integral constant wrapper for <code>uint8_t</code> </p>
-
- <p class="definition">Definition at line <a class="el" href="integral_8h_source.html#l00076">76</a> of file <a class="el" href="integral_8h_source.html">integral.h</a>.</p>
-
- </div>
- </div>
- <a id="a52ff6257bf079904f9cb51a65f5a7397"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a52ff6257bf079904f9cb51a65f5a7397">◆ </a></span>use_if_all_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename T1 , typename... Ts> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a52ff6257bf079904f9cb51a65f5a7397">utl::meta::use_if_all_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< <a class="el" href="group__integral.html#ga8e82f4758321e0e0b3705607f7d8e068">and_</a><T1, Ts...>::value, T1 ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>If both type (_T1 and _T2) type resolves to _Ret, else to SFINAE. </p>
-
- <p class="definition">Definition at line <a class="el" href="useif_8h_source.html#l00056">56</a> of file <a class="el" href="useif_8h_source.html">useif.h</a>.</p>
-
- </div>
- </div>
- <a id="ad0394846551cd881782e46d2d05190de"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ad0394846551cd881782e46d2d05190de">◆ </a></span>use_if_any_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename T1 , typename... Ts> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#ad0394846551cd881782e46d2d05190de">utl::meta::use_if_any_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< <a class="el" href="group__integral.html#gac43f400cc93d54f5f79892e618069d9b">or_</a><T1, Ts...>::value, T1 ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>If any type (_T1 or _T2) type resolves to _Ret, else to SFINAE. </p>
-
- <p class="definition">Definition at line <a class="el" href="useif_8h_source.html#l00050">50</a> of file <a class="el" href="useif_8h_source.html">useif.h</a>.</p>
-
- </div>
- </div>
- <a id="af590469269a8c378d937d8d75ee96e8c"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#af590469269a8c378d937d8d75ee96e8c">◆ </a></span>use_if_not_same_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _T1 , typename _T2 , typename _Ret = _T1> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#af590469269a8c378d937d8d75ee96e8c">utl::meta::use_if_not_same_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< !<a class="el" href="structutl_1_1meta_1_1same__.html">same_</a><_T1, _T2>::value, _Ret ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>If not same type resolves to _Ret, else SFINAE. </p>
-
- <p class="definition">Definition at line <a class="el" href="useif_8h_source.html#l00045">45</a> of file <a class="el" href="useif_8h_source.html">useif.h</a>.</p>
-
- </div>
- </div>
- <a id="a7b4ba22b3afb3e7a98e1012a350cb573"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a7b4ba22b3afb3e7a98e1012a350cb573">◆ </a></span>use_if_same_t</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename _T1 , typename _T2 , typename _Ret = _T1> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a7b4ba22b3afb3e7a98e1012a350cb573">utl::meta::use_if_same_t</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#a372fe391d9567f66a81091f581e1fa01">enable_if_t</a>< <a class="el" href="structutl_1_1meta_1_1same__.html">same_</a><_T1, _T2>::value, _Ret ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>If same type resolves to _Ret, else SFINAE. </p>
-
- <p class="definition">Definition at line <a class="el" href="useif_8h_source.html#l00040">40</a> of file <a class="el" href="useif_8h_source.html">useif.h</a>.</p>
-
- </div>
- </div>
- <a id="a181d79db46b10170529e85b907ed3dc7"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a181d79db46b10170529e85b907ed3dc7">◆ </a></span>when</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<bool If> </div>
- <table class="memname">
- <tr>
- <td class="memname">using <a class="el" href="namespaceutl_1_1meta.html#a181d79db46b10170529e85b907ed3dc7">utl::meta::when</a> = typedef <a class="el" href="namespaceutl_1_1meta.html#aa5a37adba244ff4286f994111c4c02ea">eval</a>< <a class="el" href="structutl_1_1meta_1_1detail_1_1when__.html">detail::when_</a><If> ></td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Well formed only if <code>If</code> is true. </p>
-
- <p class="definition">Definition at line <a class="el" href="sfinae_8h_source.html#l00046">46</a> of file <a class="el" href="sfinae_8h_source.html">sfinae.h</a>.</p>
-
- </div>
- </div>
- <h2 class="groupheader">Variable Documentation</h2>
- <a id="acba521b528e775be4b37d2e481e0f138"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#acba521b528e775be4b37d2e481e0f138">◆ </a></span>is_detected_convertible_v</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename To , template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">constexpr bool utl::meta::is_detected_convertible_v</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line"> <a class="code" href="namespaceutl_1_1meta.html#afa24702fa15a1d0a8a05761c54b79def">is_detected_convertible</a><To, Op, Args...>::value</div><div class="ttc" id="namespaceutl_1_1meta_html_afa24702fa15a1d0a8a05761c54b79def"><div class="ttname"><a href="namespaceutl_1_1meta.html#afa24702fa15a1d0a8a05761c54b79def">utl::meta::is_detected_convertible</a></div><div class="ttdeci">eval< std::is_convertible< detected_t< Op, Args... >, To > > is_detected_convertible</div><div class="ttdef"><b>Definition:</b> <a href="detection_8h_source.html#l00231">detection.h:231</a></div></div>
- </div><!-- fragment --><p>evaluates to true if evaluation of Op<Args...> is convertible to <code>To</code> and to false if not </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a13">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00237">237</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </div>
- <a id="a960827a1d72083a511f8ea4ccc8beceb"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a960827a1d72083a511f8ea4ccc8beceb">◆ </a></span>is_detected_exact_v</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<typename Expected , template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">constexpr bool utl::meta::is_detected_exact_v = <a class="el" href="namespaceutl_1_1meta.html#ad5224ef66e8f40efaaf3ad3d605dd629">is_detected_exact</a>< Expected, Op, Args...>::value</td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>evaluates to true if evaluation of Op<Args...> is <code>Expected</code> and to false if not </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a11">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00204">204</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </div>
- <a id="a4f3184ccb8e8ba2a78e2d2e83a0b9885"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a4f3184ccb8e8ba2a78e2d2e83a0b9885">◆ </a></span>is_detected_v</h2>
-
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<template< typename... > class Op, typename... Args> </div>
- <table class="memname">
- <tr>
- <td class="memname">constexpr bool utl::meta::is_detected_v = <a class="el" href="namespaceutl_1_1meta.html#a5329219a9d2f195421a78d8e07873507">is_detected</a><Op, Args...>::value</td>
- </tr>
- </table>
- </div><div class="memdoc">
-
- <p>Detection predicate. </p>
- <dl><dt><b>Examples: </b></dt><dd><a class="el" href="_w_1_2_work_2_software_2_libraries_2utl_2include_2utl_2meta_2detection_8h-example.html#a7">W:/Work/Software/Libraries/utl/include/utl/meta/detection.h</a>.</dd>
- </dl>
- <p class="definition">Definition at line <a class="el" href="detection_8h_source.html#l00122">122</a> of file <a class="el" href="detection_8h_source.html">detection.h</a>.</p>
-
- </div>
- </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="namespaceutl.html">utl</a></li><li class="navelem"><a class="el" href="namespaceutl_1_1meta.html">meta</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>
|