<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>libstdc++: type_traits File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(initResizable); /* @license-end */</script> <link href="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">libstdc++ </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> </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('a00167.html','');}); /* @license-end */ </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#namespaces">Namespaces</a> | <a href="#define-members">Macros</a> | <a href="#typedef-members">Typedefs</a> | <a href="#func-members">Functions</a> | <a href="#var-members">Variables</a> </div> <div class="headertitle"> <div class="title">type_traits File Reference</div> </div> </div><!--header--> <div class="contents"> <p><a href="a00167_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="a04112.html">std::__add_pointer_helper< _Tp, bool ></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="a04388.html">std::__detector< _Default, _AlwaysVoid, _Op, _Args ></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="a04392.html">std::__detector< _Default, __void_t< _Op< _Args... > >, _Op, _Args... ></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="a03392.html">std::__is_nullptr_t< _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="a03816.html">std::__is_trivially_copy_assignable_impl< _Tp, bool ></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="a03780.html">std::__is_trivially_copy_constructible_impl< _Tp, bool ></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="a03832.html">std::__is_trivially_move_assignable_impl< _Tp, bool ></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="a03796.html">std::__is_trivially_move_constructible_impl< _Tp, bool ></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="a03920.html">std::add_const< _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="a03928.html">std::add_cv< _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="a03952.html">std::add_lvalue_reference< _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="a03964.html">std::add_rvalue_reference< _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="a03924.html">std::add_volatile< _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="a04132.html">std::aligned_storage< _Len, _Align ></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="a04148.html">std::aligned_union< _Len, _Types ></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="a03856.html">std::alignment_of< _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="a04200.html">std::common_type< _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="a03044.html">std::conditional< _Cond, _Iftrue, _Iffalse ></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="a03044.html">std::conditional< _Cond, _Iftrue, _Iffalse ></a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a04168.html">std::decay< _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="a04188.html">std::enable_if< bool, _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="a03500.html">std::extent< typename, _Uint ></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="a03500.html">std::extent< typename, _Uint ></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="a03852.html">std::has_virtual_destructor< _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="a03040.html">std::integral_constant< _Tp, __v ></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="a03492.html">std::is_abstract< _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="a03400.html">std::is_arithmetic< _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="a03204.html">std::is_array< typename ></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="a03680.html">std::is_assignable< _Tp, _Up ></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="a03888.html">std::is_base_of< _Base, _Derived ></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="a03280.html">std::is_class< _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="a03420.html">std::is_compound< _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="a03444.html">std::is_const< typename ></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="a03572.html">std::is_constructible< _Tp, _Args ></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="a03900.html">std::is_convertible< _From, _To ></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="a03696.html">std::is_copy_assignable< _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="a03592.html">std::is_copy_constructible< _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="a03576.html">std::is_default_constructible< _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="a03540.html">std::is_destructible< _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="a03480.html">std::is_empty< _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="a03272.html">std::is_enum< _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="a03488.html">std::is_final< _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="a03200.html">std::is_floating_point< _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="a03244.html">std::is_function< typename ></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="a03244.html">std::is_function< typename ></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="a03404.html">std::is_fundamental< _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="a03180.html">std::is_integral< _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="a03476.html">std::is_literal_type< _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="a03228.html">std::is_lvalue_reference< typename ></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="a03268.html">std::is_member_function_pointer< _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="a03256.html">std::is_member_object_pointer< _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="a03412.html">std::is_member_pointer< _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="a03412.html">std::is_member_pointer< _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="a03712.html">std::is_move_assignable< _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="a03608.html">std::is_move_constructible< _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="a03720.html">std::is_nothrow_assignable< _Tp, _Up ></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="a03644.html">std::is_nothrow_constructible< _Tp, _Args ></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="a03736.html">std::is_nothrow_copy_assignable< _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="a03660.html">std::is_nothrow_copy_constructible< _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="a03628.html">std::is_nothrow_default_constructible< _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="a03568.html">std::is_nothrow_destructible< _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="a03752.html">std::is_nothrow_move_assignable< _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="a03676.html">std::is_nothrow_move_constructible< _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="a04436.html">std::is_nothrow_swappable< _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="a04468.html">std::is_nothrow_swappable_with< _Tp, _Up ></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="a03388.html">std::is_null_pointer< _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="a03408.html">std::is_object< _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="a03472.html">std::is_pod< _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="a03224.html">std::is_pointer< _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="a03484.html">std::is_polymorphic< _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="a03396.html">std::is_reference< _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="a03236.html">std::is_rvalue_reference< typename ></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="a03880.html">std::is_same< typename, typename ></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="a03416.html">std::is_scalar< _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="a03468.html">std::is_standard_layout< _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="a04432.html">std::is_swappable< _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="a04464.html">std::is_swappable_with< _Tp, _Up ></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="a03460.html">std::is_trivial< _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="a03812.html">std::is_trivially_assignable< _Tp, _Up ></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="a03756.html">std::is_trivially_constructible< _Tp, _Args ></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="a03760.html">std::is_trivially_default_constructible< _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="a03848.html">std::is_trivially_destructible< _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="a03276.html">std::is_union< _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="a03112.html">std::is_void< _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="a03452.html">std::is_volatile< typename ></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="a04076.html">std::make_signed< _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="a04032.html">std::make_unsigned< _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="a03860.html">std::rank< typename ></a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a04172.html">std::reference_wrapper< _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="a03504.html">std::remove_all_extents< _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="a03504.html">std::remove_all_extents< _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="a03904.html">std::remove_const< _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="a03100.html">std::remove_cv< _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="a03100.html">std::remove_cv< _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="a04080.html">std::remove_extent< _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="a04108.html">std::remove_pointer< _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="a03932.html">std::remove_reference< _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="a03912.html">std::remove_volatile< _Tp ></a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a04276.html">std::result_of< _Signature ></a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a02880.html">std::tuple< _Elements ></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="a04244.html">std::underlying_type< _Tp ></a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a> Namespaces</h2></td></tr> <tr class="memitem:a01538"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="a01538.html">std</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="define-members"></a> Macros</h2></td></tr> <tr class="memitem:a8ebc62e255c5994d70e522638f308ace"><td class="memItemLeft" align="right" valign="top"><a id="a8ebc62e255c5994d70e522638f308ace"></a> #define </td><td class="memItemRight" valign="bottom"><b>__cpp_lib_integral_constant_callable</b></td></tr> <tr class="separator:a8ebc62e255c5994d70e522638f308ace"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga84a20980f5e80971caf8c4417e345947"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><b>__cpp_lib_is_final</b></td></tr> <tr class="separator:ga84a20980f5e80971caf8c4417e345947"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac6e7d771687ce20ac33cb0d74f4e7ade"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><b>__cpp_lib_is_null_pointer</b></td></tr> <tr class="separator:gac6e7d771687ce20ac33cb0d74f4e7ade"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7f8d9ca100df6623e206c4466db2a3a5"><td class="memItemLeft" align="right" valign="top"><a id="a7f8d9ca100df6623e206c4466db2a3a5"></a> #define </td><td class="memItemRight" valign="bottom"><b>__cpp_lib_is_swappable</b></td></tr> <tr class="separator:a7f8d9ca100df6623e206c4466db2a3a5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa52ed63ca93baaa165624a2c065b87ac"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><b>__cpp_lib_result_of_sfinae</b></td></tr> <tr class="separator:gaa52ed63ca93baaa165624a2c065b87ac"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9c330429e3fdc9a04c5ee676a94fb9fb"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><b>__cpp_lib_transformation_trait_aliases</b></td></tr> <tr class="separator:ga9c330429e3fdc9a04c5ee676a94fb9fb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9321f4782f730d4aeb8274342f4c1929"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><b>__cpp_lib_void_t</b></td></tr> <tr class="separator:ga9321f4782f730d4aeb8274342f4c1929"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5483c2bfe929a5938ce633f378db2d55"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00167.html#a5483c2bfe929a5938ce633f378db2d55">_GLIBCXX_HAS_NESTED_TYPE</a>(_NTYPE)</td></tr> <tr class="separator:a5483c2bfe929a5938ce633f378db2d55"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad57a3d4ccec7a6d8c9dada24f330afc0"><td class="memItemLeft" align="right" valign="top"><a id="ad57a3d4ccec7a6d8c9dada24f330afc0"></a> #define </td><td class="memItemRight" valign="bottom"><b>_GLIBCXX_TYPE_TRAITS</b></td></tr> <tr class="separator:ad57a3d4ccec7a6d8c9dada24f330afc0"><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:gac8f4c47f527835aee46f6fa174fd35f2"><td class="memTemplParams" colspan="2"> template<bool __v> </td></tr> <tr class="memitem:gac8f4c47f527835aee46f6fa174fd35f2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::__bool_constant</b> = integral_constant< bool, __v ></td></tr> <tr class="separator:gac8f4c47f527835aee46f6fa174fd35f2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac4df6b41b55bd96111176eeacc081cbf"><td class="memTemplParams" colspan="2"><a id="ac4df6b41b55bd96111176eeacc081cbf"></a> template<typename _Fn , typename... _Args> </td></tr> <tr class="memitem:ac4df6b41b55bd96111176eeacc081cbf"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::__call_is_nothrow_</b> = __call_is_nothrow< __invoke_result< _Fn, _Args... >, _Fn, _Args... ></td></tr> <tr class="separator:ac4df6b41b55bd96111176eeacc081cbf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9767a6bf106fadfeaa5ef170d0a02f71"><td class="memTemplParams" colspan="2"> template<typename _Default , template< typename... > class _Op, typename... _Args> </td></tr> <tr class="memitem:ga9767a6bf106fadfeaa5ef170d0a02f71"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::__detected_or</b> = __detector< _Default, void, _Op, _Args... ></td></tr> <tr class="separator:ga9767a6bf106fadfeaa5ef170d0a02f71"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga32356f8c495067d829232c4171a32429"><td class="memTemplParams" colspan="2"> template<typename _Default , template< typename... > class _Op, typename... _Args> </td></tr> <tr class="memitem:ga32356f8c495067d829232c4171a32429"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::__detected_or_t</b> = typename __detected_or< _Default, _Op, _Args... >::type</td></tr> <tr class="separator:ga32356f8c495067d829232c4171a32429"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga884c79cfd588ddd27fd04f1db5659a6c"><td class="memTemplParams" colspan="2"> template<bool _Cond, typename _Tp = void> </td></tr> <tr class="memitem:ga884c79cfd588ddd27fd04f1db5659a6c"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::__enable_if_t</b> = typename enable_if< _Cond, _Tp >::type</td></tr> <tr class="separator:ga884c79cfd588ddd27fd04f1db5659a6c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga67e3dd117413c816b661ae31cc9b42f4"><td class="memTemplParams" colspan="2"> template<typename... > </td></tr> <tr class="memitem:ga67e3dd117413c816b661ae31cc9b42f4"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::__void_t</b> = void</td></tr> <tr class="separator:ga67e3dd117413c816b661ae31cc9b42f4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6be2c03490cfe7e8119e135da59cd2df"><td class="memTemplParams" colspan="2"> template<typename... _Cond> </td></tr> <tr class="memitem:ga6be2c03490cfe7e8119e135da59cd2df"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::_Require</b> = typename enable_if< __and_< _Cond... >::value >::type</td></tr> <tr class="separator:ga6be2c03490cfe7e8119e135da59cd2df"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga448c469269c4f85f992d8df206bbcdda"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga448c469269c4f85f992d8df206bbcdda"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga448c469269c4f85f992d8df206bbcdda">std::add_const_t</a> = typename add_const< _Tp >::type</td></tr> <tr class="separator:ga448c469269c4f85f992d8df206bbcdda"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga499a5ffa196b61f4d828c79614694749"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga499a5ffa196b61f4d828c79614694749"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga499a5ffa196b61f4d828c79614694749">std::add_cv_t</a> = typename add_cv< _Tp >::type</td></tr> <tr class="separator:ga499a5ffa196b61f4d828c79614694749"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga766559a87f1db8dbe7c960199aefc082"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga766559a87f1db8dbe7c960199aefc082"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga766559a87f1db8dbe7c960199aefc082">std::add_lvalue_reference_t</a> = typename add_lvalue_reference< _Tp >::type</td></tr> <tr class="separator:ga766559a87f1db8dbe7c960199aefc082"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga9933b95376df066b14b257ada1d42a6f"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga9933b95376df066b14b257ada1d42a6f"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga9933b95376df066b14b257ada1d42a6f">std::add_pointer_t</a> = typename add_pointer< _Tp >::type</td></tr> <tr class="separator:ga9933b95376df066b14b257ada1d42a6f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0e375bf83b6789f02faabf487cd9146b"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga0e375bf83b6789f02faabf487cd9146b"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga0e375bf83b6789f02faabf487cd9146b">std::add_rvalue_reference_t</a> = typename add_rvalue_reference< _Tp >::type</td></tr> <tr class="separator:ga0e375bf83b6789f02faabf487cd9146b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga71c54f472cfbdadab49bac0fc56a7736"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga71c54f472cfbdadab49bac0fc56a7736"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga71c54f472cfbdadab49bac0fc56a7736">std::add_volatile_t</a> = typename add_volatile< _Tp >::type</td></tr> <tr class="separator:ga71c54f472cfbdadab49bac0fc56a7736"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga333ed0641a23a64d26590875fab8bd64"><td class="memTemplParams" colspan="2">template<size_t _Len, size_t _Align = __alignof__(typename __aligned_storage_msa<_Len>::__type)> </td></tr> <tr class="memitem:ga333ed0641a23a64d26590875fab8bd64"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga333ed0641a23a64d26590875fab8bd64">std::aligned_storage_t</a> = typename aligned_storage< _Len, _Align >::type</td></tr> <tr class="separator:ga333ed0641a23a64d26590875fab8bd64"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa8edaadf3cd6a46efc07b02c09715b53"><td class="memTemplParams" colspan="2"> template<size_t _Len, typename... _Types> </td></tr> <tr class="memitem:gaa8edaadf3cd6a46efc07b02c09715b53"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><b>std::aligned_union_t</b> = typename aligned_union< _Len, _Types... >::type</td></tr> <tr class="separator:gaa8edaadf3cd6a46efc07b02c09715b53"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3ef38e934006ae2422e5a7f136238d22"><td class="memTemplParams" colspan="2">template<typename... _Tp> </td></tr> <tr class="memitem:ga3ef38e934006ae2422e5a7f136238d22"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga3ef38e934006ae2422e5a7f136238d22">std::common_type_t</a> = typename common_type< _Tp... >::type</td></tr> <tr class="separator:ga3ef38e934006ae2422e5a7f136238d22"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3f79e9f15004fc524ff345fc510a2813"><td class="memTemplParams" colspan="2">template<bool _Cond, typename _Iftrue , typename _Iffalse > </td></tr> <tr class="memitem:ga3f79e9f15004fc524ff345fc510a2813"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga3f79e9f15004fc524ff345fc510a2813">std::conditional_t</a> = typename conditional< _Cond, _Iftrue, _Iffalse >::type</td></tr> <tr class="separator:ga3f79e9f15004fc524ff345fc510a2813"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gabe26c12710bb4c683badfaf0a586c5be"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:gabe26c12710bb4c683badfaf0a586c5be"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#gabe26c12710bb4c683badfaf0a586c5be">std::decay_t</a> = typename decay< _Tp >::type</td></tr> <tr class="separator:gabe26c12710bb4c683badfaf0a586c5be"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaccc2a55dff256e901d69f67ef213d12c"><td class="memTemplParams" colspan="2">template<bool _Cond, typename _Tp = void> </td></tr> <tr class="memitem:gaccc2a55dff256e901d69f67ef213d12c"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#gaccc2a55dff256e901d69f67ef213d12c">std::enable_if_t</a> = typename enable_if< _Cond, _Tp >::type</td></tr> <tr class="separator:gaccc2a55dff256e901d69f67ef213d12c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaebe6729ab5488ecc76c762873d226857"><td class="memItemLeft" align="right" valign="top">typedef integral_constant< bool, false > </td><td class="memItemRight" valign="bottom"><a class="el" href="a01476.html#gaebe6729ab5488ecc76c762873d226857">std::false_type</a></td></tr> <tr class="separator:gaebe6729ab5488ecc76c762873d226857"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gabfa3034ef517a7ff731ae2074604a8f2"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:gabfa3034ef517a7ff731ae2074604a8f2"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#gabfa3034ef517a7ff731ae2074604a8f2">std::make_signed_t</a> = typename make_signed< _Tp >::type</td></tr> <tr class="separator:gabfa3034ef517a7ff731ae2074604a8f2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga211e17d720e36c51d2528c3a166d8ba9"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga211e17d720e36c51d2528c3a166d8ba9"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga211e17d720e36c51d2528c3a166d8ba9">std::make_unsigned_t</a> = typename make_unsigned< _Tp >::type</td></tr> <tr class="separator:ga211e17d720e36c51d2528c3a166d8ba9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3bc0ff8d42850eabb6bcbe2440a844ff"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga3bc0ff8d42850eabb6bcbe2440a844ff"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga3bc0ff8d42850eabb6bcbe2440a844ff">std::remove_all_extents_t</a> = typename remove_all_extents< _Tp >::type</td></tr> <tr class="separator:ga3bc0ff8d42850eabb6bcbe2440a844ff"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4e79124b56e4ce8037d87387898b9d1f"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga4e79124b56e4ce8037d87387898b9d1f"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga4e79124b56e4ce8037d87387898b9d1f">std::remove_const_t</a> = typename remove_const< _Tp >::type</td></tr> <tr class="separator:ga4e79124b56e4ce8037d87387898b9d1f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga33d8994a84545d04adc29f8be0d12122"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga33d8994a84545d04adc29f8be0d12122"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga33d8994a84545d04adc29f8be0d12122">std::remove_cv_t</a> = typename remove_cv< _Tp >::type</td></tr> <tr class="separator:ga33d8994a84545d04adc29f8be0d12122"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa9f31e8838657e142868524eca599817"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:gaa9f31e8838657e142868524eca599817"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#gaa9f31e8838657e142868524eca599817">std::remove_extent_t</a> = typename remove_extent< _Tp >::type</td></tr> <tr class="separator:gaa9f31e8838657e142868524eca599817"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga46cd3040e1bdad121ab1668a69a662ff"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga46cd3040e1bdad121ab1668a69a662ff"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga46cd3040e1bdad121ab1668a69a662ff">std::remove_pointer_t</a> = typename remove_pointer< _Tp >::type</td></tr> <tr class="separator:ga46cd3040e1bdad121ab1668a69a662ff"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga05f704b8440a5839204308c83a07748f"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga05f704b8440a5839204308c83a07748f"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga05f704b8440a5839204308c83a07748f">std::remove_reference_t</a> = typename remove_reference< _Tp >::type</td></tr> <tr class="separator:ga05f704b8440a5839204308c83a07748f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7227cba5288e88d88468df26c3200885"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga7227cba5288e88d88468df26c3200885"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga7227cba5288e88d88468df26c3200885">std::remove_volatile_t</a> = typename remove_volatile< _Tp >::type</td></tr> <tr class="separator:ga7227cba5288e88d88468df26c3200885"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga09f3b216a4c36c4d4070a9acbf7eebbb"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:ga09f3b216a4c36c4d4070a9acbf7eebbb"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga09f3b216a4c36c4d4070a9acbf7eebbb">std::result_of_t</a> = typename result_of< _Tp >::type</td></tr> <tr class="separator:ga09f3b216a4c36c4d4070a9acbf7eebbb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6a860513044e23d34e553ea986e83fa1"><td class="memItemLeft" align="right" valign="top">typedef integral_constant< bool, true > </td><td class="memItemRight" valign="bottom"><a class="el" href="a01476.html#ga6a860513044e23d34e553ea986e83fa1">std::true_type</a></td></tr> <tr class="separator:ga6a860513044e23d34e553ea986e83fa1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab714a99dbbeb7066e9d741a4d936e885"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:gab714a99dbbeb7066e9d741a4d936e885"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#gab714a99dbbeb7066e9d741a4d936e885">std::underlying_type_t</a> = typename underlying_type< _Tp >::type</td></tr> <tr class="separator:gab714a99dbbeb7066e9d741a4d936e885"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga22cbeb48987e9b7ee87a626eb5f1d6dc"><td class="memTemplParams" colspan="2">template<typename... > </td></tr> <tr class="memitem:ga22cbeb48987e9b7ee87a626eb5f1d6dc"><td class="memTemplItemLeft" align="right" valign="top">using </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01476.html#ga22cbeb48987e9b7ee87a626eb5f1d6dc">std::void_t</a> = void</td></tr> <tr class="separator:ga22cbeb48987e9b7ee87a626eb5f1d6dc"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:aa3e9d5167d10f4481265c13b577e336f"><td class="memTemplParams" colspan="2"><a id="aa3e9d5167d10f4481265c13b577e336f"></a> template<typename _Fn , typename _Tp , typename... _Args> </td></tr> <tr class="memitem:aa3e9d5167d10f4481265c13b577e336f"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><b>std::__call_is_nt</b> (__invoke_memfun_ref)</td></tr> <tr class="separator:aa3e9d5167d10f4481265c13b577e336f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9eaff8aad693113d993bdddf78fcbd77"><td class="memTemplParams" colspan="2"><a id="a9eaff8aad693113d993bdddf78fcbd77"></a> template<typename _Fn , typename _Tp , typename... _Args> </td></tr> <tr class="memitem:a9eaff8aad693113d993bdddf78fcbd77"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><b>std::__call_is_nt</b> (__invoke_memfun_deref)</td></tr> <tr class="separator:a9eaff8aad693113d993bdddf78fcbd77"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9e4500e0ed45d193636b80604ca66a09"><td class="memTemplParams" colspan="2"><a id="a9e4500e0ed45d193636b80604ca66a09"></a> template<typename _Fn , typename _Tp > </td></tr> <tr class="memitem:a9e4500e0ed45d193636b80604ca66a09"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><b>std::__call_is_nt</b> (__invoke_memobj_ref)</td></tr> <tr class="separator:a9e4500e0ed45d193636b80604ca66a09"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a077b51f22bfaecc23fdd1a53aed01226"><td class="memTemplParams" colspan="2"><a id="a077b51f22bfaecc23fdd1a53aed01226"></a> template<typename _Fn , typename _Tp > </td></tr> <tr class="memitem:a077b51f22bfaecc23fdd1a53aed01226"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><b>std::__call_is_nt</b> (__invoke_memobj_deref)</td></tr> <tr class="separator:a077b51f22bfaecc23fdd1a53aed01226"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae8033a80816787c26f73f0cd7727c063"><td class="memTemplParams" colspan="2"><a id="ae8033a80816787c26f73f0cd7727c063"></a> template<typename _Fn , typename... _Args> </td></tr> <tr class="memitem:ae8033a80816787c26f73f0cd7727c063"><td class="memTemplItemLeft" align="right" valign="top">constexpr bool </td><td class="memTemplItemRight" valign="bottom"><b>std::__call_is_nt</b> (__invoke_other)</td></tr> <tr class="separator:ae8033a80816787c26f73f0cd7727c063"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2b4e53aac9e7c7024ad03eaf21c57471"><td class="memTemplParams" colspan="2"> template<typename _Tp > </td></tr> <tr class="memitem:ga2b4e53aac9e7c7024ad03eaf21c57471"><td class="memTemplItemLeft" align="right" valign="top">auto </td><td class="memTemplItemRight" valign="bottom"><b>std::declval</b> () noexcept -> decltype(__declval< _Tp >(0))</td></tr> <tr class="separator:ga2b4e53aac9e7c7024ad03eaf21c57471"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gafa6fdf3b3bd0b4a333f150d62001e9fc"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:gafa6fdf3b3bd0b4a333f150d62001e9fc"><td class="memTemplItemLeft" align="right" valign="top">enable_if< __and_< __not_< __is_tuple_like< _Tp > >, is_move_constructible< _Tp >, is_move_assignable< _Tp > >::value >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01477.html#gafa6fdf3b3bd0b4a333f150d62001e9fc">std::swap</a> (_Tp &__a, _Tp &__b) noexcept(__and_< is_nothrow_move_constructible< _Tp >, is_nothrow_move_assignable< _Tp >>::value)</td></tr> <tr class="separator:gafa6fdf3b3bd0b4a333f150d62001e9fc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6b5d2a0f9529c41034917992630c6c85"><td class="memTemplParams" colspan="2">template<typename _Tp , size_t _Nm> </td></tr> <tr class="memitem:ga6b5d2a0f9529c41034917992630c6c85"><td class="memTemplItemLeft" align="right" valign="top">enable_if< __is_swappable< _Tp >::value >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01477.html#ga6b5d2a0f9529c41034917992630c6c85">std::swap</a> (_Tp(&__a)[_Nm], _Tp(&__b)[_Nm]) noexcept(__is_nothrow_swappable< _Tp >::value)</td></tr> <tr class="separator:ga6b5d2a0f9529c41034917992630c6c85"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a> Variables</h2></td></tr> <tr class="memitem:aa2b86e9636133cced6ebccab3e95fb0b"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:aa2b86e9636133cced6ebccab3e95fb0b"><td class="memTemplItemLeft" align="right" valign="top">_GLIBCXX17_INLINE constexpr bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01538.html#aa2b86e9636133cced6ebccab3e95fb0b">std::is_nothrow_swappable_v</a></td></tr> <tr class="separator:aa2b86e9636133cced6ebccab3e95fb0b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a35b3f518dd97d4fa57eeb0ae8fd7622f"><td class="memTemplParams" colspan="2">template<typename _Tp , typename _Up > </td></tr> <tr class="memitem:a35b3f518dd97d4fa57eeb0ae8fd7622f"><td class="memTemplItemLeft" align="right" valign="top">_GLIBCXX17_INLINE constexpr bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01538.html#a35b3f518dd97d4fa57eeb0ae8fd7622f">std::is_nothrow_swappable_with_v</a></td></tr> <tr class="separator:a35b3f518dd97d4fa57eeb0ae8fd7622f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9f35f5ddaff13c2c1d262efe1fbdd510"><td class="memTemplParams" colspan="2">template<typename _Tp > </td></tr> <tr class="memitem:a9f35f5ddaff13c2c1d262efe1fbdd510"><td class="memTemplItemLeft" align="right" valign="top">_GLIBCXX17_INLINE constexpr bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01538.html#a9f35f5ddaff13c2c1d262efe1fbdd510">std::is_swappable_v</a></td></tr> <tr class="separator:a9f35f5ddaff13c2c1d262efe1fbdd510"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5e63c1d59eac70153a804ab6bacc3d1f"><td class="memTemplParams" colspan="2">template<typename _Tp , typename _Up > </td></tr> <tr class="memitem:a5e63c1d59eac70153a804ab6bacc3d1f"><td class="memTemplItemLeft" align="right" valign="top">_GLIBCXX17_INLINE constexpr bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01538.html#a5e63c1d59eac70153a804ab6bacc3d1f">std::is_swappable_with_v</a></td></tr> <tr class="separator:a5e63c1d59eac70153a804ab6bacc3d1f"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>This is a Standard C++ Library header. </p> <p class="definition">Definition in file <a class="el" href="a00167_source.html">type_traits</a>.</p> </div><h2 class="groupheader">Macro Definition Documentation</h2> <a id="a5483c2bfe929a5938ce633f378db2d55"></a> <h2 class="memtitle"><span class="permalink"><a href="#a5483c2bfe929a5938ce633f378db2d55">◆ </a></span>_GLIBCXX_HAS_NESTED_TYPE</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define _GLIBCXX_HAS_NESTED_TYPE</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_NTYPE</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Use SFINAE to determine if the type _Tp has a publicly-accessible member type _NTYPE. </p> <p class="definition">Definition at line <a class="el" href="a00167_source.html#l02361">2361</a> of file <a class="el" href="a00167_source.html">type_traits</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="dir_3a83f109ff04170a1f8448445d1bdcba.html">include</a></li><li class="navelem"><a class="el" href="a00167.html">type_traits</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.15 </li> </ul> </div> </body> </html>