<!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++: macros.h File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(initResizable); /* @license-end */</script> <link href="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('a00755.html','');}); /* @license-end */ </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#define-members">Macros</a> </div> <div class="headertitle"> <div class="title">macros.h File Reference</div> </div> </div><!--header--> <div class="contents"> <p><a href="a00755_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="define-members"></a> Macros</h2></td></tr> <tr class="memitem:a5aa82067fce99b592438df07be7445c0"><td class="memItemLeft" align="right" valign="top"><a id="a5aa82067fce99b592438df07be7445c0"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_bucket_index</b>(_N)</td></tr> <tr class="separator:a5aa82067fce99b592438df07be7445c0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0fffd86ffb57d67b11878baf3b9fec4a"><td class="memItemLeft" align="right" valign="top"><a id="a0fffd86ffb57d67b11878baf3b9fec4a"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_equal_allocs</b>(_This, _Other)</td></tr> <tr class="separator:a0fffd86ffb57d67b11878baf3b9fec4a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a991c7e564ec0f174f81e0b65bdd236cf"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a991c7e564ec0f174f81e0b65bdd236cf">__glibcxx_check_erase</a>(_Position)</td></tr> <tr class="separator:a991c7e564ec0f174f81e0b65bdd236cf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1163c4caa47de6274b07329922c7fef5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a1163c4caa47de6274b07329922c7fef5">__glibcxx_check_erase_after</a>(_Position)</td></tr> <tr class="separator:a1163c4caa47de6274b07329922c7fef5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7f5f459ee711afceff11d342059a5bcd"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a7f5f459ee711afceff11d342059a5bcd">__glibcxx_check_erase_range</a>(_First, _Last)</td></tr> <tr class="separator:a7f5f459ee711afceff11d342059a5bcd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afef6cd40efd0755ceefbda6499a27e78"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#afef6cd40efd0755ceefbda6499a27e78">__glibcxx_check_erase_range_after</a>(_First, _Last)</td></tr> <tr class="separator:afef6cd40efd0755ceefbda6499a27e78"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a582443bad022ae77f8b969c932610e9f"><td class="memItemLeft" align="right" valign="top"><a id="a582443bad022ae77f8b969c932610e9f"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_heap</b>(_First, _Last)</td></tr> <tr class="separator:a582443bad022ae77f8b969c932610e9f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2f3402923321554f4e9e5e1f5e02e7df"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a2f3402923321554f4e9e5e1f5e02e7df">__glibcxx_check_heap_pred</a>(_First, _Last, _Pred)</td></tr> <tr class="separator:a2f3402923321554f4e9e5e1f5e02e7df"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a14508f9347d4fb4566b1a16f8ce685d5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a14508f9347d4fb4566b1a16f8ce685d5">__glibcxx_check_insert</a>(_Position)</td></tr> <tr class="separator:a14508f9347d4fb4566b1a16f8ce685d5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0d4085848ee3a3f00e1ab06ef535565f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a0d4085848ee3a3f00e1ab06ef535565f">__glibcxx_check_insert_after</a>(_Position)</td></tr> <tr class="separator:a0d4085848ee3a3f00e1ab06ef535565f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af3d576c2f08ec3b6f9ee1880e4a495a1"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#af3d576c2f08ec3b6f9ee1880e4a495a1">__glibcxx_check_insert_range</a>(_Position, _First, _Last, _Dist)</td></tr> <tr class="separator:af3d576c2f08ec3b6f9ee1880e4a495a1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a74088af7168ba8d52eb5d000b1bc7a19"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a74088af7168ba8d52eb5d000b1bc7a19">__glibcxx_check_insert_range_after</a>(_Position, _First, _Last, _Dist)</td></tr> <tr class="separator:a74088af7168ba8d52eb5d000b1bc7a19"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0636b9fefc87dcc0c0b38c626023a582"><td class="memItemLeft" align="right" valign="top"><a id="a0636b9fefc87dcc0c0b38c626023a582"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_irreflexive</b>(_First, _Last)</td></tr> <tr class="separator:a0636b9fefc87dcc0c0b38c626023a582"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae0e918fd2af44fb9f20fdbf4e2908dfd"><td class="memItemLeft" align="right" valign="top"><a id="ae0e918fd2af44fb9f20fdbf4e2908dfd"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_irreflexive2</b>(_First, _Last)</td></tr> <tr class="separator:ae0e918fd2af44fb9f20fdbf4e2908dfd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a93d6a52f0d3cd00803d8c447b7e05fd0"><td class="memItemLeft" align="right" valign="top"><a id="a93d6a52f0d3cd00803d8c447b7e05fd0"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_irreflexive_pred</b>(_First, _Last, _Pred)</td></tr> <tr class="separator:a93d6a52f0d3cd00803d8c447b7e05fd0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab6f0db6c68539de8f9872032218d1c15"><td class="memItemLeft" align="right" valign="top"><a id="ab6f0db6c68539de8f9872032218d1c15"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_irreflexive_pred2</b>(_First, _Last, _Pred)</td></tr> <tr class="separator:ab6f0db6c68539de8f9872032218d1c15"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a49309be7b2cc0e58ebbb4a068498604d"><td class="memItemLeft" align="right" valign="top"><a id="a49309be7b2cc0e58ebbb4a068498604d"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_max_load_factor</b>(_F)</td></tr> <tr class="separator:a49309be7b2cc0e58ebbb4a068498604d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0304c954358053090ceda238af27f33d"><td class="memItemLeft" align="right" valign="top"><a id="a0304c954358053090ceda238af27f33d"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_non_empty_range</b>(_First, _Last)</td></tr> <tr class="separator:a0304c954358053090ceda238af27f33d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aab798d530e4a545a2194f0f443f09c6c"><td class="memItemLeft" align="right" valign="top"><a id="aab798d530e4a545a2194f0f443f09c6c"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_nonempty</b>()</td></tr> <tr class="separator:aab798d530e4a545a2194f0f443f09c6c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a509251efdabc63ef4a39a9c2b892c58c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a509251efdabc63ef4a39a9c2b892c58c">__glibcxx_check_partitioned_lower</a>(_First, _Last, _Value)</td></tr> <tr class="separator:a509251efdabc63ef4a39a9c2b892c58c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad6ba08219f25b99db407f7ff7dc2c595"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#ad6ba08219f25b99db407f7ff7dc2c595">__glibcxx_check_partitioned_lower_pred</a>(_First, _Last, _Value, _Pred)</td></tr> <tr class="separator:ad6ba08219f25b99db407f7ff7dc2c595"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2d094d7e02609cfc0a258b4f6d62cdf5"><td class="memItemLeft" align="right" valign="top"><a id="a2d094d7e02609cfc0a258b4f6d62cdf5"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_partitioned_upper</b>(_First, _Last, _Value)</td></tr> <tr class="separator:a2d094d7e02609cfc0a258b4f6d62cdf5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acf798c501271ab717db55d658c67c9a5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#acf798c501271ab717db55d658c67c9a5">__glibcxx_check_partitioned_upper_pred</a>(_First, _Last, _Value, _Pred)</td></tr> <tr class="separator:acf798c501271ab717db55d658c67c9a5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac27472b1eb741b8a606d6a11be72bc3e"><td class="memItemLeft" align="right" valign="top"><a id="ac27472b1eb741b8a606d6a11be72bc3e"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_self_move_assign</b>(_Other)</td></tr> <tr class="separator:ac27472b1eb741b8a606d6a11be72bc3e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab1b0b4d32e4e4f078d9e6b882cf24503"><td class="memItemLeft" align="right" valign="top"><a id="ab1b0b4d32e4e4f078d9e6b882cf24503"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_sorted</b>(_First, _Last)</td></tr> <tr class="separator:ab1b0b4d32e4e4f078d9e6b882cf24503"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a43708f78d7d3c93f88659ac067b89db0"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a43708f78d7d3c93f88659ac067b89db0">__glibcxx_check_sorted_pred</a>(_First, _Last, _Pred)</td></tr> <tr class="separator:a43708f78d7d3c93f88659ac067b89db0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2186cf72aa73a93da5747c32b8475293"><td class="memItemLeft" align="right" valign="top"><a id="a2186cf72aa73a93da5747c32b8475293"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_sorted_set</b>(_First1, _Last1, _First2)</td></tr> <tr class="separator:a2186cf72aa73a93da5747c32b8475293"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a12cc360ac1b74092781795dbedc2cdc3"><td class="memItemLeft" align="right" valign="top"><a id="a12cc360ac1b74092781795dbedc2cdc3"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_sorted_set_pred</b>(_First1, _Last1, _First2, _Pred)</td></tr> <tr class="separator:a12cc360ac1b74092781795dbedc2cdc3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a298263bfccc937e49cd5700da80d1543"><td class="memItemLeft" align="right" valign="top"><a id="a298263bfccc937e49cd5700da80d1543"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_string</b>(_String)</td></tr> <tr class="separator:a298263bfccc937e49cd5700da80d1543"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aec89828eb148a9841f7b5b6fbbb5eb21"><td class="memItemLeft" align="right" valign="top"><a id="aec89828eb148a9841f7b5b6fbbb5eb21"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_string_len</b>(_String, _Len)</td></tr> <tr class="separator:aec89828eb148a9841f7b5b6fbbb5eb21"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a61dea879b96ea726124fe02cc27adc7c"><td class="memItemLeft" align="right" valign="top"><a id="a61dea879b96ea726124fe02cc27adc7c"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_subscript</b>(_N)</td></tr> <tr class="separator:a61dea879b96ea726124fe02cc27adc7c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5712e2c598e03f91470952cf5b6fe8d2"><td class="memItemLeft" align="right" valign="top"><a id="a5712e2c598e03f91470952cf5b6fe8d2"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_valid_range</b>(_First, _Last)</td></tr> <tr class="separator:a5712e2c598e03f91470952cf5b6fe8d2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3feecb348a86e8cfcb82c62cb0ecae5e"><td class="memItemLeft" align="right" valign="top"><a id="a3feecb348a86e8cfcb82c62cb0ecae5e"></a> #define </td><td class="memItemRight" valign="bottom"><b>__glibcxx_check_valid_range2</b>(_First, _Last, _Dist)</td></tr> <tr class="separator:a3feecb348a86e8cfcb82c62cb0ecae5e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a81bb37b8f63ba333684cd0c2d60f70ef"><td class="memItemLeft" align="right" valign="top"><a id="a81bb37b8f63ba333684cd0c2d60f70ef"></a> #define </td><td class="memItemRight" valign="bottom"><b>_GLIBCXX_DEBUG_VERIFY</b>(_Condition, _ErrorMessage)</td></tr> <tr class="separator:a81bb37b8f63ba333684cd0c2d60f70ef"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a70a64c7020ea69a5dd594944f244e58a"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00755.html#a70a64c7020ea69a5dd594944f244e58a">_GLIBCXX_DEBUG_VERIFY_AT</a>(_Condition, _ErrorMessage, _File, _Line)</td></tr> <tr class="separator:a70a64c7020ea69a5dd594944f244e58a"><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 file is a GNU debug extension to the Standard C++ Library. </p> <p class="definition">Definition in file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div><h2 class="groupheader">Macro Definition Documentation</h2> <a id="a991c7e564ec0f174f81e0b65bdd236cf"></a> <h2 class="memtitle"><span class="permalink"><a href="#a991c7e564ec0f174f81e0b65bdd236cf">◆ </a></span>__glibcxx_check_erase</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_erase</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_Position</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can erase the element referenced by the iterator _Position. We can erase the element if the _Position iterator is dereferenceable and references this sequence. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00145">145</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a1163c4caa47de6274b07329922c7fef5"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1163c4caa47de6274b07329922c7fef5">◆ </a></span>__glibcxx_check_erase_after</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_erase_after</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_Position</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can erase the element after the iterator _Position. We can erase the element if the _Position iterator is before a dereferenceable one and references this sequence. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00159">159</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a7f5f459ee711afceff11d342059a5bcd"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7f5f459ee711afceff11d342059a5bcd">◆ </a></span>__glibcxx_check_erase_range</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_erase_range</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can erase the elements in the iterator range [_First, _Last). We can erase the elements if [_First, _Last) is a valid iterator range within this sequence. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00173">173</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="afef6cd40efd0755ceefbda6499a27e78"></a> <h2 class="memtitle"><span class="permalink"><a href="#afef6cd40efd0755ceefbda6499a27e78">◆ </a></span>__glibcxx_check_erase_range_after</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_erase_range_after</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can erase the elements in the iterator range (_First, _Last). We can erase the elements if (_First, _Last) is a valid iterator range within this sequence. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00185">185</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a2f3402923321554f4e9e5e1f5e02e7df"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2f3402923321554f4e9e5e1f5e02e7df">◆ </a></span>__glibcxx_check_heap_pred</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_heap_pred</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Pred </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that the iterator range [_First, _Last) is a heap w.r.t. the predicate _Pred. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00335">335</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a14508f9347d4fb4566b1a16f8ce685d5"></a> <h2 class="memtitle"><span class="permalink"><a href="#a14508f9347d4fb4566b1a16f8ce685d5">◆ </a></span>__glibcxx_check_insert</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_insert</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_Position</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can insert into *this with the iterator _Position. Insertion into a container at a specific position requires that the iterator be nonsingular, either dereferenceable or past-the-end, and that it reference the sequence we are inserting into. Note that this macro is only valid when the container is a_Safe_sequence and the iterator is a _Safe_iterator. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00079">79</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a0d4085848ee3a3f00e1ab06ef535565f"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0d4085848ee3a3f00e1ab06ef535565f">◆ </a></span>__glibcxx_check_insert_after</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_insert_after</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_Position</td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can insert into *this after the iterator _Position. Insertion into a container after a specific position requires that the iterator be nonsingular, either dereferenceable or before-begin, and that it reference the sequence we are inserting into. Note that this macro is only valid when the container is a_Safe_sequence and the iterator is a _Safe_iterator. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00096">96</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="af3d576c2f08ec3b6f9ee1880e4a495a1"></a> <h2 class="memtitle"><span class="permalink"><a href="#af3d576c2f08ec3b6f9ee1880e4a495a1">◆ </a></span>__glibcxx_check_insert_range</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_insert_range</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_Position, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Dist </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can insert the values in the iterator range [_First, _Last) into *this with the iterator _Position. Insertion into a container at a specific position requires that the iterator be nonsingular (i.e., either dereferenceable or past-the-end), that it reference the sequence we are inserting into, and that the iterator range [_First, _Last) is a valid (possibly empty) range which does not reference the sequence we are inserting into. Note that this macro is only valid when the container is a _Safe_sequence and the _Position iterator is a _Safe_iterator. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00113">113</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a74088af7168ba8d52eb5d000b1bc7a19"></a> <h2 class="memtitle"><span class="permalink"><a href="#a74088af7168ba8d52eb5d000b1bc7a19">◆ </a></span>__glibcxx_check_insert_range_after</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_insert_range_after</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_Position, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Dist </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that we can insert the values in the iterator range [_First, _Last) into *this after the iterator _Position. Insertion into a container after a specific position requires that the iterator be nonsingular (i.e., either dereferenceable or past-the-end), that it reference the sequence we are inserting into, and that the iterator range [_First, _Last) is a valid (possibly empty) range which does not reference the sequence we are inserting into. Note that this macro is only valid when the container is a _Safe_sequence and the _Position iterator is a _Safe_iterator. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00132">132</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a509251efdabc63ef4a39a9c2b892c58c"></a> <h2 class="memtitle"><span class="permalink"><a href="#a509251efdabc63ef4a39a9c2b892c58c">◆ </a></span>__glibcxx_check_partitioned_lower</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_partitioned_lower</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Value </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that the iterator range [_First, _Last) is partitioned w.r.t. the value _Value. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00279">279</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="ad6ba08219f25b99db407f7ff7dc2c595"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad6ba08219f25b99db407f7ff7dc2c595">◆ </a></span>__glibcxx_check_partitioned_lower_pred</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_partitioned_lower_pred</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Value, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Pred </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that the iterator range [_First, _Last) is partitioned w.r.t. the value _Value and predicate _Pred. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00301">301</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="acf798c501271ab717db55d658c67c9a5"></a> <h2 class="memtitle"><span class="permalink"><a href="#acf798c501271ab717db55d658c67c9a5">◆ </a></span>__glibcxx_check_partitioned_upper_pred</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_partitioned_upper_pred</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Value, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Pred </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that the iterator range [_First, _Last) is partitioned w.r.t. the value _Value and predicate _Pred. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00314">314</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a43708f78d7d3c93f88659ac067b89db0"></a> <h2 class="memtitle"><span class="permalink"><a href="#a43708f78d7d3c93f88659ac067b89db0">◆ </a></span>__glibcxx_check_sorted_pred</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define __glibcxx_check_sorted_pred</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_First, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Last, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Pred </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Verify that the iterator range [_First, _Last) is sorted by the predicate _Pred. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00245">245</a> of file <a class="el" href="a00755_source.html">macros.h</a>.</p> </div> </div> <a id="a70a64c7020ea69a5dd594944f244e58a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a70a64c7020ea69a5dd594944f244e58a">◆ </a></span>_GLIBCXX_DEBUG_VERIFY_AT</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define _GLIBCXX_DEBUG_VERIFY_AT</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname">_Condition, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_ErrorMessage, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_File, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">_Line </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Macros used by the implementation to verify certain properties. These macros may only be used directly by the debug wrappers. Note that these are macros (instead of the more obviously <em>correct</em> choice of making them functions) because we need line and file information at the call site, to minimize the distance between the user error and where the error is reported. </p> <p class="definition">Definition at line <a class="el" href="a00755_source.html#l00041">41</a> of file <a class="el" href="a00755_source.html">macros.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="dir_3a83f109ff04170a1f8448445d1bdcba.html">include</a></li><li class="navelem"><a class="el" href="dir_4e6508221809585092d0ebec9b41a00e.html">debug</a></li><li class="navelem"><a class="el" href="a00755.html">macros.h</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li> </ul> </div> </body> </html>