<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.3"/> <title>libstdc++: __gnu_pbds::detail::pat_trie_base::_Inode< _ATraits, Metadata > Struct Template 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="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </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 style="padding-left: 0.5em;"> <div id="projectname">libstdc++ </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.3 --> </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"> $(document).ready(function(){initNavTree('a00282.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-attribs">Public Attributes</a> | <a href="a02469.html">List of all members</a> </div> <div class="headertitle"> <div class="title">__gnu_pbds::detail::pat_trie_base::_Inode< _ATraits, Metadata > Struct Template Reference</div> </div> </div><!--header--> <div class="contents"> <div class="dynheader"> Inheritance diagram for __gnu_pbds::detail::pat_trie_base::_Inode< _ATraits, Metadata >:</div> <div class="dyncontent"> <div class="center"><img src="a02470.png" border="0" usemap="#____gnu__pbds_1_1detail_1_1pat__trie__base_1_1___inode_3_01___a_traits_00_01_metadata_01_4_inherit__map" alt="Inheritance graph"/></div> <map name="____gnu__pbds_1_1detail_1_1pat__trie__base_1_1___inode_3_01___a_traits_00_01_metadata_01_4_inherit__map" id="____gnu__pbds_1_1detail_1_1pat__trie__base_1_1___inode_3_01___a_traits_00_01_metadata_01_4_inherit__map"> <area shape="rect" id="node2" href="a00289.html" title="Node base." alt="" coords="5,6,184,58"/></map> <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div> <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="a00283.html">const_iterator</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="a00284.html">iterator</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="pub-types"></a> Public Types</h2></td></tr> <tr class="memitem:ace3256e5fb876abbf46d51835da7a64f"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom">{ <b>arr_size</b> }</td></tr> <tr class="separator:ace3256e5fb876abbf46d51835da7a64f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a199d996d6e144c1e0167d17e49a6bdf0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a199d996d6e144c1e0167d17e49a6bdf0"></a> typedef _Alloc::template <br class="typebreak"/> rebind< _ATraits > </td><td class="memItemRight" valign="bottom"><b>__rebind_at</b></td></tr> <tr class="separator:a199d996d6e144c1e0167d17e49a6bdf0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5e54693963a935204a91430d3c2ef2aa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e54693963a935204a91430d3c2ef2aa"></a> typedef _Alloc::template <br class="typebreak"/> rebind< node_pointer >::other </td><td class="memItemRight" valign="bottom"><b>__rebind_np</b></td></tr> <tr class="separator:a5e54693963a935204a91430d3c2ef2aa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a03662677ecd72b1db1766a1a49bb6bb8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03662677ecd72b1db1766a1a49bb6bb8"></a> typedef base_type::allocator_type </td><td class="memItemRight" valign="bottom"><b>_Alloc</b></td></tr> <tr class="separator:a03662677ecd72b1db1766a1a49bb6bb8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4474e50c03159baec7919da692c2d0ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4474e50c03159baec7919da692c2d0ab"></a> typedef base_type::access_traits </td><td class="memItemRight" valign="bottom"><b>access_traits</b></td></tr> <tr class="separator:a4474e50c03159baec7919da692c2d0ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0133439074d4bb502815f35f32ca7451"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0133439074d4bb502815f35f32ca7451"></a> typedef _Alloc </td><td class="memItemRight" valign="bottom"><b>allocator_type</b></td></tr> <tr class="separator:a0133439074d4bb502815f35f32ca7451"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac3d05ceadb87824e3f561d2669e73e01"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3d05ceadb87824e3f561d2669e73e01"></a> typedef <a class="el" href="a00289.html">_Node_base</a>< _ATraits, <br class="typebreak"/> Metadata > </td><td class="memItemRight" valign="bottom"><b>base_type</b></td></tr> <tr class="separator:ac3d05ceadb87824e3f561d2669e73e01"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aefe834a985fa1ba580577993350355c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aefe834a985fa1ba580577993350355c0"></a> typedef __rebind_np::pointer </td><td class="memItemRight" valign="bottom"><b>node_pointer_pointer</b></td></tr> <tr class="separator:aefe834a985fa1ba580577993350355c0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afb9cf4c8cf902066b162baa841767479"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb9cf4c8cf902066b162baa841767479"></a> typedef __rebind_np::reference </td><td class="memItemRight" valign="bottom"><b>node_pointer_reference</b></td></tr> <tr class="separator:afb9cf4c8cf902066b162baa841767479"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0c875f74d64ee4c5b28a6548f19d30a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c875f74d64ee4c5b28a6548f19d30a7"></a> typedef _Alloc::size_type </td><td class="memItemRight" valign="bottom"><b>size_type</b></td></tr> <tr class="separator:a0c875f74d64ee4c5b28a6548f19d30a7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afac420532913afa106e38d35a9175457"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afac420532913afa106e38d35a9175457"></a> typedef base_type::type_traits </td><td class="memItemRight" valign="bottom"><b>type_traits</b></td></tr> <tr class="separator:afac420532913afa106e38d35a9175457"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abd3b3dd27a91c2045865be5992f472e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd3b3dd27a91c2045865be5992f472e9"></a> typedef type_traits::value_type </td><td class="memItemRight" valign="bottom"><b>value_type</b></td></tr> <tr class="separator:abd3b3dd27a91c2045865be5992f472e9"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:ab731fc4160adb7f67f99940e3df4e00c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab731fc4160adb7f67f99940e3df4e00c"></a>  </td><td class="memItemRight" valign="bottom"><b>_Inode</b> (size_type, const a_const_iterator)</td></tr> <tr class="separator:ab731fc4160adb7f67f99940e3df4e00c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a66c487fc0375c0481cac1ebdd219e0af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a66c487fc0375c0481cac1ebdd219e0af"></a> node_pointer </td><td class="memItemRight" valign="bottom"><b>add_child</b> (node_pointer, a_const_iterator, a_const_iterator, a_const_pointer)</td></tr> <tr class="separator:a66c487fc0375c0481cac1ebdd219e0af"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a998b8ef1134e2a7f550d4b0313fa5b06"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a998b8ef1134e2a7f550d4b0313fa5b06"></a> <a class="el" href="a00283.html">const_iterator</a> </td><td class="memItemRight" valign="bottom"><b>begin</b> () const </td></tr> <tr class="separator:a998b8ef1134e2a7f550d4b0313fa5b06"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a407e2c4c5ed65361706582e868eca7b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a407e2c4c5ed65361706582e868eca7b8"></a> <a class="el" href="a00284.html">iterator</a> </td><td class="memItemRight" valign="bottom"><b>begin</b> ()</td></tr> <tr class="separator:a407e2c4c5ed65361706582e868eca7b8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad733bf230588bf6f065088907e811ab4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad733bf230588bf6f065088907e811ab4"></a> <a class="el" href="a00283.html">const_iterator</a> </td><td class="memItemRight" valign="bottom"><b>end</b> () const </td></tr> <tr class="separator:ad733bf230588bf6f065088907e811ab4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a95a91687395b5b565fe144785e3b6e8f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95a91687395b5b565fe144785e3b6e8f"></a> <a class="el" href="a00284.html">iterator</a> </td><td class="memItemRight" valign="bottom"><b>end</b> ()</td></tr> <tr class="separator:a95a91687395b5b565fe144785e3b6e8f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4afbc09c759d64688f7342a901252bdd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4afbc09c759d64688f7342a901252bdd"></a> <a class="el" href="a00284.html">iterator</a> </td><td class="memItemRight" valign="bottom"><b>get_child_it</b> (a_const_iterator, a_const_iterator, a_const_pointer)</td></tr> <tr class="separator:a4afbc09c759d64688f7342a901252bdd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a28d34ca8203ea9b1067c03788fbcd17a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28d34ca8203ea9b1067c03788fbcd17a"></a> node_pointer </td><td class="memItemRight" valign="bottom"><b>get_child_node</b> (a_const_iterator, a_const_iterator, a_const_pointer)</td></tr> <tr class="separator:a28d34ca8203ea9b1067c03788fbcd17a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a52c35a94a1ce752a393743761f4ab49c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52c35a94a1ce752a393743761f4ab49c"></a> node_const_pointer </td><td class="memItemRight" valign="bottom"><b>get_child_node</b> (a_const_iterator, a_const_iterator, a_const_pointer) const </td></tr> <tr class="separator:a52c35a94a1ce752a393743761f4ab49c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a74b2e2ac21f092d9ffc6b02ac0dd49c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74b2e2ac21f092d9ffc6b02ac0dd49c6"></a> size_type </td><td class="memItemRight" valign="bottom"><b>get_e_ind</b> () const </td></tr> <tr class="separator:a74b2e2ac21f092d9ffc6b02ac0dd49c6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a16c0d199ba82d63f2276d5e847d475ec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16c0d199ba82d63f2276d5e847d475ec"></a> node_const_pointer </td><td class="memItemRight" valign="bottom"><b>get_join_child</b> (node_const_pointer, a_const_pointer) const </td></tr> <tr class="separator:a16c0d199ba82d63f2276d5e847d475ec"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0281724b29dfb70f22a6bf99a3f4e9f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0281724b29dfb70f22a6bf99a3f4e9f0"></a> node_pointer </td><td class="memItemRight" valign="bottom"><b>get_join_child</b> (node_pointer, a_const_pointer)</td></tr> <tr class="separator:a0281724b29dfb70f22a6bf99a3f4e9f0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad8bd4544a7d724bad4f6deb89bd60dde"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8bd4544a7d724bad4f6deb89bd60dde"></a> node_pointer </td><td class="memItemRight" valign="bottom"><b>get_lower_bound_child_node</b> (a_const_iterator, a_const_iterator, size_type, a_const_pointer)</td></tr> <tr class="separator:ad8bd4544a7d724bad4f6deb89bd60dde"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac7cb39f46fe4caa09ac259eefc0146d2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac7cb39f46fe4caa09ac259eefc0146d2"></a> leaf_pointer </td><td class="memItemRight" valign="bottom"><b>leftmost_descendant</b> ()</td></tr> <tr class="separator:ac7cb39f46fe4caa09ac259eefc0146d2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a340f6ffff5c51b7ee949440afa2b3d62"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a340f6ffff5c51b7ee949440afa2b3d62"></a> leaf_const_pointer </td><td class="memItemRight" valign="bottom"><b>leftmost_descendant</b> () const </td></tr> <tr class="separator:a340f6ffff5c51b7ee949440afa2b3d62"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1b00cebceab1188a67e390357359d121"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b00cebceab1188a67e390357359d121"></a>  </td><td class="memItemRight" valign="bottom"><b>PB_DS_STATIC_ASSERT</b> (min_arr_size, arr_size >=2)</td></tr> <tr class="separator:a1b00cebceab1188a67e390357359d121"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1a0ba2881e43d881513dfa761bbac989"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a0ba2881e43d881513dfa761bbac989"></a> a_const_iterator </td><td class="memItemRight" valign="bottom"><b>pref_b_it</b> () const </td></tr> <tr class="separator:a1a0ba2881e43d881513dfa761bbac989"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a460409a3186519434b3cd86a453f5861"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a460409a3186519434b3cd86a453f5861"></a> a_const_iterator </td><td class="memItemRight" valign="bottom"><b>pref_e_it</b> () const </td></tr> <tr class="separator:a460409a3186519434b3cd86a453f5861"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abb971d3541e2e07307fd3f406ca4d3ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb971d3541e2e07307fd3f406ca4d3ab"></a> void </td><td class="memItemRight" valign="bottom"><b>remove_child</b> (node_pointer)</td></tr> <tr class="separator:abb971d3541e2e07307fd3f406ca4d3ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9c801805adb45c0af564677c0a53e689"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c801805adb45c0af564677c0a53e689"></a> void </td><td class="memItemRight" valign="bottom"><b>remove_child</b> (<a class="el" href="a00284.html">iterator</a>)</td></tr> <tr class="separator:a9c801805adb45c0af564677c0a53e689"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3d5a4925674f8bf07550aa24769e0266"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d5a4925674f8bf07550aa24769e0266"></a> void </td><td class="memItemRight" valign="bottom"><b>replace_child</b> (node_pointer, a_const_iterator, a_const_iterator, a_const_pointer)</td></tr> <tr class="separator:a3d5a4925674f8bf07550aa24769e0266"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4605bbc131fa70ffce74cca3cfcf0f17"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4605bbc131fa70ffce74cca3cfcf0f17"></a> leaf_pointer </td><td class="memItemRight" valign="bottom"><b>rightmost_descendant</b> ()</td></tr> <tr class="separator:a4605bbc131fa70ffce74cca3cfcf0f17"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a94c2cb777db1e532dde9e21f6b71c3de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a94c2cb777db1e532dde9e21f6b71c3de"></a> leaf_const_pointer </td><td class="memItemRight" valign="bottom"><b>rightmost_descendant</b> () const </td></tr> <tr class="separator:a94c2cb777db1e532dde9e21f6b71c3de"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a50cc8df5d57884ca5ed92d0b516b7b49"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a50cc8df5d57884ca5ed92d0b516b7b49"></a> bool </td><td class="memItemRight" valign="bottom"><b>should_be_mine</b> (a_const_iterator, a_const_iterator, size_type, a_const_pointer) const </td></tr> <tr class="separator:a50cc8df5d57884ca5ed92d0b516b7b49"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a662efe188a198a00696efd541cc1e6d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a662efe188a198a00696efd541cc1e6d8"></a> void </td><td class="memItemRight" valign="bottom"><b>update_prefixes</b> (a_const_pointer)</td></tr> <tr class="separator:a662efe188a198a00696efd541cc1e6d8"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a> Public Attributes</h2></td></tr> <tr class="memitem:aa7993833def1d9ad84b41a3b03f13d88"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7993833def1d9ad84b41a3b03f13d88"></a> node_pointer </td><td class="memItemRight" valign="bottom"><b>m_p_parent</b></td></tr> <tr class="separator:aa7993833def1d9ad84b41a3b03f13d88"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a94f41bc5d690ca9e0b8c648a95f0c3a0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a94f41bc5d690ca9e0b8c648a95f0c3a0"></a> const <a class="el" href="a00279.html#a3df5e43907830910e3ce34d411088940">node_type</a> </td><td class="memItemRight" valign="bottom"><b>m_type</b></td></tr> <tr class="separator:a94f41bc5d690ca9e0b8c648a95f0c3a0"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename _ATraits, typename Metadata><br/> struct __gnu_pbds::detail::pat_trie_base::_Inode< _ATraits, Metadata ></h3> <p>Internal node type, PATRICIA tree. </p> <p>Definition at line <a class="el" href="a01353_source.html#l00211">211</a> of file <a class="el" href="a01353_source.html">pat_trie_base.hpp</a>.</p> </div><hr/>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="a01353_source.html">pat_trie_base.hpp</a></li> </ul> </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="a01598.html">__gnu_pbds</a></li><li class="navelem"><b>detail</b></li><li class="navelem"><a class="el" href="a00279.html">pat_trie_base</a></li><li class="navelem"><a class="el" href="a00282.html">_Inode</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.3 </li> </ul> </div> </body> </html>