382 lines
41 KiB
HTML
382 lines
41 KiB
HTML
<!-- HTML header for doxygen 1.9.1-->
|
|
<!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.15.0"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>L4Re Operating System Framework: cxx::Avl_tree< Node, Get_key, Compare > Class 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="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="cookie.js"></script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
|
<link href="l4re-awesome.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="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">L4Re Operating System Framework
|
|
</div>
|
|
<div id="projectbrief">Interface and Usage Documentation</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.15.0 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
</script>
|
|
<script type="text/javascript">
|
|
$(function() { codefold.init(); });
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search',true);
|
|
$(function() { init_search(); });
|
|
});
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(function(){initNavTree('classcxx_1_1Avl__tree.html','',''); });
|
|
</script>
|
|
<div id="container">
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<div id="MSearchResults">
|
|
<div class="SRPage">
|
|
<div id="SRIndex">
|
|
<div id="SRResults"></div>
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle"><div class="title">cxx::Avl_tree< Node, Get_key, Compare > Class Template Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>A generic AVL tree.
|
|
<a href="#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="avl__tree_source.html">avl_tree</a>></code></p>
|
|
<div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Inheritance diagram for cxx::Avl_tree< Node, Get_key, Compare >:</div>
|
|
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classcxx_1_1Avl__tree__inherit__graph.svg" width="975" height="1480"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Collaboration diagram for cxx::Avl_tree< Node, Get_key, Compare >:</div>
|
|
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classcxx_1_1Avl__tree__coll__graph.svg" width="172" height="1456"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 id="header-pub-types" class="groupheader"><a id="pub-types" name="pub-types"></a>
|
|
Public Types</h2></td></tr>
|
|
<tr id="pub-types-0" class="groupHeader"><td colspan="2"><div class="groupHeader"></div></td></tr>
|
|
<tr id="pub-types-1" class="groupHeader"><td colspan="2"><div class="groupHeader"></div></td></tr>
|
|
<tr class="memitem:ae424081de9acc64beb848e8fa64f374e" id="r_ae424081de9acc64beb848e8fa64f374e"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a0f49df47b43e17ad2b67add053027365">Bst::Iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae424081de9acc64beb848e8fa64f374e">Iterator</a></td></tr>
|
|
<tr class="memitem:a92ff10953437d00df4694b13abd8b961" id="r_a92ff10953437d00df4694b13abd8b961"><td class="memItemLeft" align="right" valign="top"><a id="a92ff10953437d00df4694b13abd8b961" name="a92ff10953437d00df4694b13abd8b961"></a>
|
|
typedef <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a81b48d62c079d40d94a3dd03335fff1b">Bst::Const_iterator</a> </td><td class="memItemRight" valign="bottom"><b>Const_iterator</b></td></tr>
|
|
<tr class="memdesc:a92ff10953437d00df4694b13abd8b961"><td class="mdescLeft"> </td><td class="mdescRight">Constant forward iterator for the tree. <br /></td></tr>
|
|
<tr class="memitem:abdc8f7b39df524d20fd38697b5cc3077" id="r_abdc8f7b39df524d20fd38697b5cc3077"><td class="memItemLeft" align="right" valign="top"><a id="abdc8f7b39df524d20fd38697b5cc3077" name="abdc8f7b39df524d20fd38697b5cc3077"></a>
|
|
typedef <a class="el" href="classcxx_1_1Bits_1_1Bst.html#adcc5620c090a8588cc9f083d0629f745">Bst::Rev_iterator</a> </td><td class="memItemRight" valign="bottom"><b>Rev_iterator</b></td></tr>
|
|
<tr class="memdesc:abdc8f7b39df524d20fd38697b5cc3077"><td class="mdescLeft"> </td><td class="mdescRight">Backward iterator for the tree. <br /></td></tr>
|
|
<tr class="memitem:aeed2bce893fae74ffbec8041a1c0986f" id="r_aeed2bce893fae74ffbec8041a1c0986f"><td class="memItemLeft" align="right" valign="top"><a id="aeed2bce893fae74ffbec8041a1c0986f" name="aeed2bce893fae74ffbec8041a1c0986f"></a>
|
|
typedef <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a01c39d894ae881d97b89a8d2eb37ed28">Bst::Const_rev_iterator</a> </td><td class="memItemRight" valign="bottom"><b>Const_rev_iterator</b></td></tr>
|
|
<tr class="memdesc:aeed2bce893fae74ffbec8041a1c0986f"><td class="mdescLeft"> </td><td class="mdescRight">Constant backward iterator for the tree. <br /></td></tr>
|
|
<tr class="inherit_header pub_types_classcxx_1_1Bits_1_1Bst"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_types_classcxx_1_1Bits_1_1Bst')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Public Types inherited from <a class="el" href="classcxx_1_1Bits_1_1Bst.html">cxx::Bits::Bst< Node, Get_key, Compare ></a></td></tr>
|
|
<tr class="memitem:a04a944e01c8a41ef2fa682029f5201a8 inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_a04a944e01c8a41ef2fa682029f5201a8"><td class="memItemLeft" align="right" valign="top">
|
|
typedef Get_key::Key_type </td><td class="memItemRight" valign="bottom"><b>Key_type</b></td></tr>
|
|
<tr class="memdesc:a04a944e01c8a41ef2fa682029f5201a8 inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">The type of key values used to generate the total order of the elements. <br /></td></tr>
|
|
<tr class="memitem:a4ef98882678d709fb1fbb21f6bd3a6ea inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_a4ef98882678d709fb1fbb21f6bd3a6ea"><td class="memItemLeft" align="right" valign="top">
|
|
typedef Type_traits< <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a04a944e01c8a41ef2fa682029f5201a8">Key_type</a> >::Param_type </td><td class="memItemRight" valign="bottom"><b>Key_param_type</b></td></tr>
|
|
<tr class="memdesc:a4ef98882678d709fb1fbb21f6bd3a6ea inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">The type for key parameters. <br /></td></tr>
|
|
<tr class="memitem:ae628bde559d6ba86df53d02c0aa62976 inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_ae628bde559d6ba86df53d02c0aa62976"><td class="memItemLeft" align="right" valign="top">
|
|
typedef Fwd </td><td class="memItemRight" valign="bottom"><b>Fwd_iter_ops</b></td></tr>
|
|
<tr class="memdesc:ae628bde559d6ba86df53d02c0aa62976 inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Helper for building forward iterators for different wrapper classes. <br /></td></tr>
|
|
<tr class="memitem:a7ce877ca5f73fad93fdeae0443616f1c inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_a7ce877ca5f73fad93fdeae0443616f1c"><td class="memItemLeft" align="right" valign="top">
|
|
typedef Rev </td><td class="memItemRight" valign="bottom"><b>Rev_iter_ops</b></td></tr>
|
|
<tr class="memdesc:a7ce877ca5f73fad93fdeae0443616f1c inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Helper for building reverse iterators for different wrapper classes. <br /></td></tr>
|
|
<tr class="memitem:a0f49df47b43e17ad2b67add053027365 inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_a0f49df47b43e17ad2b67add053027365"><td class="memItemLeft" align="right" valign="top">
|
|
typedef __Bst_iter< Node, Node, Fwd > </td><td class="memItemRight" valign="bottom"><b>Iterator</b></td></tr>
|
|
<tr class="memdesc:a0f49df47b43e17ad2b67add053027365 inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Forward iterator. <br /></td></tr>
|
|
<tr class="memitem:a81b48d62c079d40d94a3dd03335fff1b inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_a81b48d62c079d40d94a3dd03335fff1b"><td class="memItemLeft" align="right" valign="top">
|
|
typedef __Bst_iter< Node, Node const, Fwd > </td><td class="memItemRight" valign="bottom"><b>Const_iterator</b></td></tr>
|
|
<tr class="memdesc:a81b48d62c079d40d94a3dd03335fff1b inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Constant forward iterator. <br /></td></tr>
|
|
<tr class="memitem:adcc5620c090a8588cc9f083d0629f745 inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_adcc5620c090a8588cc9f083d0629f745"><td class="memItemLeft" align="right" valign="top">
|
|
typedef __Bst_iter< Node, Node, Rev > </td><td class="memItemRight" valign="bottom"><b>Rev_iterator</b></td></tr>
|
|
<tr class="memdesc:adcc5620c090a8588cc9f083d0629f745 inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Backward iterator. <br /></td></tr>
|
|
<tr class="memitem:a01c39d894ae881d97b89a8d2eb37ed28 inherit pub_types_classcxx_1_1Bits_1_1Bst" id="r_a01c39d894ae881d97b89a8d2eb37ed28"><td class="memItemLeft" align="right" valign="top">
|
|
typedef __Bst_iter< Node, Node const, Rev > </td><td class="memItemRight" valign="bottom"><b>Const_rev_iterator</b></td></tr>
|
|
<tr class="memdesc:a01c39d894ae881d97b89a8d2eb37ed28 inherit pub_types_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Constant backward. <br /></td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 id="header-pub-methods" class="groupheader"><a id="pub-methods" name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a202d84f24c534368f98b0986be0eee1b" id="r_a202d84f24c534368f98b0986be0eee1b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcxx_1_1Pair.html">Pair</a>< Node *, bool > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a202d84f24c534368f98b0986be0eee1b">insert</a> (Node *new_node)</td></tr>
|
|
<tr class="memdesc:a202d84f24c534368f98b0986be0eee1b"><td class="mdescLeft"> </td><td class="mdescRight">Insert a new node into this AVL tree. <br /></td></tr>
|
|
<tr class="memitem:a53bfe5700fa6fd227b0d46c0c4da4ade" id="r_a53bfe5700fa6fd227b0d46c0c4da4ade"><td class="memItemLeft" align="right" valign="top">Node * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a53bfe5700fa6fd227b0d46c0c4da4ade">remove</a> (Key_param_type key)</td></tr>
|
|
<tr class="memdesc:a53bfe5700fa6fd227b0d46c0c4da4ade"><td class="mdescLeft"> </td><td class="mdescRight">Remove the node with <em class="arg">key</em> from the tree. <br /></td></tr>
|
|
<tr class="memitem:a252f6cf51fe5e53c647a7fdfd0dc2be1" id="r_a252f6cf51fe5e53c647a7fdfd0dc2be1"><td class="memItemLeft" align="right" valign="top"><a id="a252f6cf51fe5e53c647a7fdfd0dc2be1" name="a252f6cf51fe5e53c647a7fdfd0dc2be1"></a>
|
|
Node * </td><td class="memItemRight" valign="bottom"><b>erase</b> (Key_param_type key)</td></tr>
|
|
<tr class="memdesc:a252f6cf51fe5e53c647a7fdfd0dc2be1"><td class="mdescLeft"> </td><td class="mdescRight">An alias for <a class="el" href="#a53bfe5700fa6fd227b0d46c0c4da4ade" title="Remove the node with key from the tree.">remove()</a>. <br /></td></tr>
|
|
<tr class="memitem:a7b359bfb343bd2f3dbbfa7a5e7a32270" id="r_a7b359bfb343bd2f3dbbfa7a5e7a32270"><td class="memItemLeft" align="right" valign="top"><a id="a7b359bfb343bd2f3dbbfa7a5e7a32270" name="a7b359bfb343bd2f3dbbfa7a5e7a32270"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>Avl_tree</b> ()=default</td></tr>
|
|
<tr class="memdesc:a7b359bfb343bd2f3dbbfa7a5e7a32270"><td class="mdescLeft"> </td><td class="mdescRight">Create an empty AVL tree. <br /></td></tr>
|
|
<tr class="memitem:a76c21afd43e451651a66e95278fd5c26" id="r_a76c21afd43e451651a66e95278fd5c26"><td class="memItemLeft" align="right" valign="top"><a id="a76c21afd43e451651a66e95278fd5c26" name="a76c21afd43e451651a66e95278fd5c26"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>~Avl_tree</b> () noexcept</td></tr>
|
|
<tr class="memdesc:a76c21afd43e451651a66e95278fd5c26"><td class="mdescLeft"> </td><td class="mdescRight">Destroy the tree. <br /></td></tr>
|
|
<tr class="inherit_header pub_methods_classcxx_1_1Bits_1_1Bst"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classcxx_1_1Bits_1_1Bst')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Public Member Functions inherited from <a class="el" href="classcxx_1_1Bits_1_1Bst.html">cxx::Bits::Bst< Node, Get_key, Compare ></a></td></tr>
|
|
<tr class="memitem:af24506a1efd4a2d22f89a0211da3d5e0 inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_af24506a1efd4a2d22f89a0211da3d5e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a81b48d62c079d40d94a3dd03335fff1b">Const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#af24506a1efd4a2d22f89a0211da3d5e0">begin</a> () const</td></tr>
|
|
<tr class="memdesc:af24506a1efd4a2d22f89a0211da3d5e0 inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the constant forward iterator for the first element in the set. <br /></td></tr>
|
|
<tr class="memitem:adc58a4db4e1d3ab931ffb74cf6f0b36a inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_adc58a4db4e1d3ab931ffb74cf6f0b36a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a81b48d62c079d40d94a3dd03335fff1b">Const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#adc58a4db4e1d3ab931ffb74cf6f0b36a">end</a> () const</td></tr>
|
|
<tr class="memdesc:adc58a4db4e1d3ab931ffb74cf6f0b36a inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the end marker for the constant forward iterator. <br /></td></tr>
|
|
<tr class="memitem:aa2444fdc6b235de383e59622717c4e75 inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_aa2444fdc6b235de383e59622717c4e75"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a0f49df47b43e17ad2b67add053027365">Iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#aa2444fdc6b235de383e59622717c4e75">begin</a> ()</td></tr>
|
|
<tr class="memdesc:aa2444fdc6b235de383e59622717c4e75 inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the mutable forward iterator for the first element of the set. <br /></td></tr>
|
|
<tr class="memitem:a1783bebe5fed7fd2d04449eb2ccd4b09 inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_a1783bebe5fed7fd2d04449eb2ccd4b09"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a0f49df47b43e17ad2b67add053027365">Iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a1783bebe5fed7fd2d04449eb2ccd4b09">end</a> ()</td></tr>
|
|
<tr class="memdesc:a1783bebe5fed7fd2d04449eb2ccd4b09 inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the end marker for the mutable forward iterator. <br /></td></tr>
|
|
<tr class="memitem:a5e80aac8fe16a2b7058fb6f872c8faba inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_a5e80aac8fe16a2b7058fb6f872c8faba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a01c39d894ae881d97b89a8d2eb37ed28">Const_rev_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a5e80aac8fe16a2b7058fb6f872c8faba">rbegin</a> () const</td></tr>
|
|
<tr class="memdesc:a5e80aac8fe16a2b7058fb6f872c8faba inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the constant backward iterator for the last element in the set. <br /></td></tr>
|
|
<tr class="memitem:a594fb24200cbf79f599b3bf9fe36d2b5 inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_a594fb24200cbf79f599b3bf9fe36d2b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a01c39d894ae881d97b89a8d2eb37ed28">Const_rev_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a594fb24200cbf79f599b3bf9fe36d2b5">rend</a> () const</td></tr>
|
|
<tr class="memdesc:a594fb24200cbf79f599b3bf9fe36d2b5 inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the end marker for the constant backward iterator. <br /></td></tr>
|
|
<tr class="memitem:af4b265e56d4fbb943e769d816b3ce6ce inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_af4b265e56d4fbb943e769d816b3ce6ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#adcc5620c090a8588cc9f083d0629f745">Rev_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#af4b265e56d4fbb943e769d816b3ce6ce">rbegin</a> ()</td></tr>
|
|
<tr class="memdesc:af4b265e56d4fbb943e769d816b3ce6ce inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the mutable backward iterator for the last element of the set. <br /></td></tr>
|
|
<tr class="memitem:a4ec66458f0c91f295c598f0ef472d76f inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_a4ec66458f0c91f295c598f0ef472d76f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#adcc5620c090a8588cc9f083d0629f745">Rev_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ec66458f0c91f295c598f0ef472d76f">rend</a> ()</td></tr>
|
|
<tr class="memdesc:a4ec66458f0c91f295c598f0ef472d76f inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the end marker for the mutable backward iterator. <br /></td></tr>
|
|
<tr class="memitem:a7f31ce158bf0d2f3c31a412d005e3aaf inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_a7f31ce158bf0d2f3c31a412d005e3aaf"><td class="memItemLeft" align="right" valign="top">Node * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a7f31ce158bf0d2f3c31a412d005e3aaf">find_node</a> (<a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> key) const</td></tr>
|
|
<tr class="memdesc:a7f31ce158bf0d2f3c31a412d005e3aaf inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">find the node with the given <em class="arg">key</em>. <br /></td></tr>
|
|
<tr class="memitem:a206a8d12abbe95b955982f9f8ab1cb7b inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_a206a8d12abbe95b955982f9f8ab1cb7b"><td class="memItemLeft" align="right" valign="top">Node * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a206a8d12abbe95b955982f9f8ab1cb7b">lower_bound_node</a> (<a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> key) const</td></tr>
|
|
<tr class="memdesc:a206a8d12abbe95b955982f9f8ab1cb7b inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Find the first node with a key not less than the given <span class="tt">key</span>. <br /></td></tr>
|
|
<tr class="memitem:a9eebe72ec19fadd1e47c2f38585dabe7 inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_a9eebe72ec19fadd1e47c2f38585dabe7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a81b48d62c079d40d94a3dd03335fff1b">Const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a9eebe72ec19fadd1e47c2f38585dabe7">find</a> (<a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> key) const</td></tr>
|
|
<tr class="memdesc:a9eebe72ec19fadd1e47c2f38585dabe7 inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">find the node with the given <em class="arg">key</em>. <br /></td></tr>
|
|
<tr class="memitem:ab86f783914505fd36cf3abddda981d4a inherit pub_methods_classcxx_1_1Bits_1_1Bst" id="r_ab86f783914505fd36cf3abddda981d4a"><td class="memTemplParams" colspan="2">template<typename FUNC> </td></tr>
|
|
<tr class="memitem:ab86f783914505fd36cf3abddda981d4a inherit pub_methods_classcxx_1_1Bits_1_1Bst template"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#ab86f783914505fd36cf3abddda981d4a">remove_all</a> (FUNC &&callback)</td></tr>
|
|
<tr class="memdesc:ab86f783914505fd36cf3abddda981d4a inherit pub_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Clear the tree. <br /></td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 id="header-inherited" class="groupheader"><a id="inherited" name="inherited"></a>
|
|
Additional Inherited Members</h2></td></tr>
|
|
<tr class="memitem:a294013d2f4e5b4ae4b95fe0dfbc1341a" id="r_a294013d2f4e5b4ae4b95fe0dfbc1341a"><td class="memItemLeft" align="right" valign="top"><a id="a294013d2f4e5b4ae4b95fe0dfbc1341a" name="a294013d2f4e5b4ae4b95fe0dfbc1341a"></a>
|
|
 </td><td class="memItemRight" valign="bottom"><b>Bst</b> ()</td></tr>
|
|
<tr class="memdesc:a294013d2f4e5b4ae4b95fe0dfbc1341a"><td class="mdescLeft"> </td><td class="mdescRight">Create an empty tree. <br /></td></tr>
|
|
<tr class="memitem:affbc6ff2833634e3351077102ae110a4" id="r_affbc6ff2833634e3351077102ae110a4"><td class="memItemLeft" align="right" valign="top"><a id="affbc6ff2833634e3351077102ae110a4" name="affbc6ff2833634e3351077102ae110a4"></a>
|
|
Node * </td><td class="memItemRight" valign="bottom"><b>head</b> () const</td></tr>
|
|
<tr class="memdesc:affbc6ff2833634e3351077102ae110a4"><td class="mdescLeft"> </td><td class="mdescRight">Access the head node as object of type <em class="arg">Node</em>. <br /></td></tr>
|
|
<tr class="inherit_header pro_static_methods_classcxx_1_1Bits_1_1Bst"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_static_methods_classcxx_1_1Bits_1_1Bst')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Static Protected Member Functions inherited from <a class="el" href="classcxx_1_1Bits_1_1Bst.html">cxx::Bits::Bst< Node, Get_key, Compare ></a></td></tr>
|
|
<tr class="memitem:af67018e81ae44b38b09ee239f7a34896 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst" id="r_af67018e81ae44b38b09ee239f7a34896"><td class="memTemplParams" colspan="2">template<typename FUNC> </td></tr>
|
|
<tr class="memitem:af67018e81ae44b38b09ee239f7a34896 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst template"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#af67018e81ae44b38b09ee239f7a34896">remove_tree</a> (<a class="el" href="classcxx_1_1Bits_1_1Bst__node.html">Bst_node</a> *<a class="el" href="classcxx_1_1Bits_1_1Bst.html#affbc6ff2833634e3351077102ae110a4">head</a>, FUNC &&callback)</td></tr>
|
|
<tr class="memdesc:af67018e81ae44b38b09ee239f7a34896 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Remove all elements in the subtree of head. <br /></td></tr>
|
|
<tr class="memitem:ac9bd268f34b9abfaae56008de571c1dc inherit pro_static_methods_classcxx_1_1Bits_1_1Bst" id="r_ac9bd268f34b9abfaae56008de571c1dc"><td class="memItemLeft" align="right" valign="top">
|
|
static <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a04a944e01c8a41ef2fa682029f5201a8">Key_type</a> </td><td class="memItemRight" valign="bottom"><b>k</b> (<a class="el" href="classcxx_1_1Bits_1_1Bst__node.html">Bst_node</a> const *n)</td></tr>
|
|
<tr class="memdesc:ac9bd268f34b9abfaae56008de571c1dc inherit pro_static_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the key value of <em class="arg">n</em>. <br /></td></tr>
|
|
<tr class="memitem:ad995602c0cbd4cae33052bf494afd31d inherit pro_static_methods_classcxx_1_1Bits_1_1Bst" id="r_ad995602c0cbd4cae33052bf494afd31d"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structcxx_1_1Bits_1_1Direction.html">Dir</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#ad995602c0cbd4cae33052bf494afd31d">dir</a> (<a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> l, <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> r)</td></tr>
|
|
<tr class="memdesc:ad995602c0cbd4cae33052bf494afd31d inherit pro_static_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the direction to go from <span class="tt">l</span> to search for <span class="tt">r</span>. <br /></td></tr>
|
|
<tr class="memitem:a82883bc0db3363204e5b95cecc18fd3d inherit pro_static_methods_classcxx_1_1Bits_1_1Bst" id="r_a82883bc0db3363204e5b95cecc18fd3d"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structcxx_1_1Bits_1_1Direction.html">Dir</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcxx_1_1Bits_1_1Bst.html#a82883bc0db3363204e5b95cecc18fd3d">dir</a> (<a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> l, <a class="el" href="classcxx_1_1Bits_1_1Bst__node.html">Bst_node</a> const *r)</td></tr>
|
|
<tr class="memdesc:a82883bc0db3363204e5b95cecc18fd3d inherit pro_static_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Get the direction to go from <span class="tt">l</span> to search for <span class="tt">r</span>. <br /></td></tr>
|
|
<tr class="memitem:a9aaf47aebbe9de9a4fc929b32107af33 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst" id="r_a9aaf47aebbe9de9a4fc929b32107af33"><td class="memItemLeft" align="right" valign="top">
|
|
static bool </td><td class="memItemRight" valign="bottom"><b>greater</b> (<a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> l, <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> r)</td></tr>
|
|
<tr class="memdesc:a9aaf47aebbe9de9a4fc929b32107af33 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Is <em class="arg">l</em> greater than <em class="arg">r</em>. <br /></td></tr>
|
|
<tr class="memitem:a580e74bbd9cb14d1549deee385b83dd3 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst" id="r_a580e74bbd9cb14d1549deee385b83dd3"><td class="memItemLeft" align="right" valign="top">
|
|
static bool </td><td class="memItemRight" valign="bottom"><b>greater</b> (<a class="el" href="classcxx_1_1Bits_1_1Bst.html#a4ef98882678d709fb1fbb21f6bd3a6ea">Key_param_type</a> l, <a class="el" href="classcxx_1_1Bits_1_1Bst__node.html">Bst_node</a> const *r)</td></tr>
|
|
<tr class="memdesc:a580e74bbd9cb14d1549deee385b83dd3 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Is <em class="arg">l</em> greater than <em class="arg">r</em>. <br /></td></tr>
|
|
<tr class="memitem:af81734935978f69dac295c9978fd94b7 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst" id="r_af81734935978f69dac295c9978fd94b7"><td class="memItemLeft" align="right" valign="top">
|
|
static bool </td><td class="memItemRight" valign="bottom"><b>greater</b> (<a class="el" href="classcxx_1_1Bits_1_1Bst__node.html">Bst_node</a> const *l, <a class="el" href="classcxx_1_1Bits_1_1Bst__node.html">Bst_node</a> const *r)</td></tr>
|
|
<tr class="memdesc:af81734935978f69dac295c9978fd94b7 inherit pro_static_methods_classcxx_1_1Bits_1_1Bst"><td class="mdescLeft"> </td><td class="mdescRight">Is <em class="arg">l</em> greater than <em class="arg">r</em>. <br /></td></tr>
|
|
<tr class="memitem:a7d5368dac6bcf39bf28a722629b8b277" id="r_a7d5368dac6bcf39bf28a722629b8b277"><td class="memItemLeft" align="right" valign="top"><a id="a7d5368dac6bcf39bf28a722629b8b277" name="a7d5368dac6bcf39bf28a722629b8b277"></a>
|
|
<a class="el" href="classcxx_1_1Bits_1_1Bst__node.html">Bst_node</a> * </td><td class="memItemRight" valign="bottom"><b>_head</b></td></tr>
|
|
<tr class="memdesc:a7d5368dac6bcf39bf28a722629b8b277"><td class="mdescLeft"> </td><td class="mdescRight">The head pointer of the tree. <br /></td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><div class="compoundTemplParams">template<typename Node, typename Get_key, typename Compare = Lt_functor<typename Get_key::Key_type>><br />
|
|
class cxx::Avl_tree< Node, Get_key, Compare ></div><p>A generic AVL tree. </p>
|
|
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
|
<table class="tparams">
|
|
<tr><td class="paramname">Node</td><td>The data type of the nodes (must inherit from <a class="el" href="classcxx_1_1Avl__tree__node.html" title="Node of an AVL tree.">Avl_tree_node</a>). </td></tr>
|
|
<tr><td class="paramname">Get_key</td><td>The meta function to get the key value from a node. The implementation uses <span class="tt">Get_key::key_of(ptr_to_node)</span>. The type of the key values must be defined in <span class="tt">Get_key::Key_type</span>. </td></tr>
|
|
<tr><td class="paramname">Compare</td><td>Binary relation to establish a total order for the nodes of the tree. <span class="tt">Compare()(l, r)</span> must return true if the key <em class="arg">l</em> is smaller than the key <em class="arg">r</em>.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This implementation does not provide any memory management. It is the responsibility of the caller to allocate nodes before inserting them and to free them when they are removed or when the tree is destroyed. Conversely, the caller must also ensure that nodes are removed from the tree before they are destroyed. </p>
|
|
<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="tmpfs_2lib_2src_2fs_8cc-example.html#_a5">tmpfs/lib/src/fs.cc</a>.</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="avl__tree_source.html#l00100">100</a> of file <a class="el" href="avl__tree_source.html">avl_tree</a>.</p>
|
|
</div><a name="doc-typedef-members" id="doc-typedef-members"></a><h2 id="header-doc-typedef-members" class="groupheader">Member Typedef Documentation</h2>
|
|
<a id="ae424081de9acc64beb848e8fa64f374e" name="ae424081de9acc64beb848e8fa64f374e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae424081de9acc64beb848e8fa64f374e">◆ </a></span>Iterator</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Node, typename Get_key, typename Compare = Lt_functor<typename Get_key::Key_type>> </div>
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">typedef <a class="el" href="classcxx_1_1Bits_1_1Bst.html#a0f49df47b43e17ad2b67add053027365">Bst::Iterator</a> <a class="el" href="classcxx_1_1Avl__tree.html">cxx::Avl_tree</a>< Node, Get_key, Compare >::Iterator</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Forward iterator for the tree. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="avl__tree_source.html#l00130">130</a> of file <a class="el" href="avl__tree_source.html">avl_tree</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Member Function Documentation</h2>
|
|
<a id="a202d84f24c534368f98b0986be0eee1b" name="a202d84f24c534368f98b0986be0eee1b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a202d84f24c534368f98b0986be0eee1b">◆ </a></span>insert()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Node, typename Get_key, class Compare> </div>
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="structcxx_1_1Pair.html">Pair</a>< Node *, bool > <a class="el" href="classcxx_1_1Avl__tree.html">cxx::Avl_tree</a>< Node, Get_key, Compare >::insert </td>
|
|
<td>(</td>
|
|
<td class="paramtype">Node *</td> <td class="paramname"><span class="paramname"><em>new_node</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Insert a new node into this AVL tree. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">new_node</td><td>A pointer to the new node. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>A pair, with <em class="arg">second</em> set to <span class="tt">true</span> and <em class="arg">first</em> pointing to <em class="arg">new_node</em>, on success. If there is already a node with the same key then <em class="arg">first</em> points to this node and <em class="arg">second</em> is 'false'. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="avl__tree_source.html#l00220">220</a> of file <a class="el" href="avl__tree_source.html">avl_tree</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="bst_8h_source.html#l00111">cxx::Bits::Bst< Node, Get_key, Compare >::dir()</a>, <a class="el" href="bst_8h_source.html#l00132">cxx::Bits::Bst< Node, Get_key, Compare >::greater()</a>, and <a class="el" href="bst__base_8h_source.html#l00035">cxx::Bits::Direction::N</a>.</p>
|
|
<div id="dynsection-2" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
|
|
<div id="dynsection-2-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-2-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classcxx_1_1Avl__tree_a202d84f24c534368f98b0986be0eee1b_cgraph.svg" width="372" height="86"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a53bfe5700fa6fd227b0d46c0c4da4ade" name="a53bfe5700fa6fd227b0d46c0c4da4ade"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a53bfe5700fa6fd227b0d46c0c4da4ade">◆ </a></span>remove()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename Node, typename Get_key, class Compare> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Node * <a class="el" href="classcxx_1_1Avl__tree.html">cxx::Avl_tree</a>< Node, Get_key, Compare >::remove </td>
|
|
<td>(</td>
|
|
<td class="paramtype">Key_param_type</td> <td class="paramname"><span class="paramname"><em>key</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Remove the node with <em class="arg">key</em> from the tree. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">key</td><td>The key to the node to remove. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>The pointer to the removed node on success, or 0 if no node with the <em class="arg">key</em> exists. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="avl__tree_source.html#l00282">282</a> of file <a class="el" href="avl__tree_source.html">avl_tree</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="bst_8h_source.html#l00111">cxx::Bits::Bst< Node, Get_key, Compare >::dir()</a>, <a class="el" href="bst_8h_source.html#l00132">cxx::Bits::Bst< Node, Get_key, Compare >::greater()</a>, <a class="el" href="bst__base_8h_source.html#l00033">cxx::Bits::Direction::L</a>, and <a class="el" href="bst__base_8h_source.html#l00035">cxx::Bits::Direction::N</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="avl__tree_source.html#l00158">cxx::Avl_tree< Entry, Names_get_key >::erase()</a>.</p>
|
|
<div id="dynsection-3" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
|
|
<div id="dynsection-3-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-3-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classcxx_1_1Avl__tree_a53bfe5700fa6fd227b0d46c0c4da4ade_cgraph.svg" width="386" height="86"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div id="dynsection-4" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the caller graph for this function:</div>
|
|
<div id="dynsection-4-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-4-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classcxx_1_1Avl__tree_a53bfe5700fa6fd227b0d46c0c4da4ade_icgraph.svg" width="412" height="51"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following file:<ul>
|
|
<li>l4/cxx/<a class="el" href="avl__tree_source.html">avl_tree</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<div id="page-nav" class="page-nav-panel">
|
|
<div id="page-nav-resize-handle"></div>
|
|
<div id="page-nav-tree">
|
|
<div id="page-nav-contents">
|
|
</div><!-- page-nav-contents -->
|
|
</div><!-- page-nav-tree -->
|
|
</div><!-- page-nav -->
|
|
</div><!-- container -->
|
|
<!-- HTML footer for doxygen 1.9.1-->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a href="namespacecxx.html">cxx</a></li><li class="navelem"><a href="classcxx_1_1Avl__tree.html">Avl_tree</a></li>
|
|
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|