Skip to content
Browse files

Updating doxygen documentation.

  • Loading branch information...
1 parent ffffe29 commit 8fb0f4537da5a2bbe451cea7769197fee975f01f @bingmann committed May 18, 2011
Showing with 25,399 additions and 4 deletions.
  1. +4 −4 README
  2. +124 −0 doxygen-html/a00001.html
  3. +3,529 −0 doxygen-html/a00002.html
  4. +204 −0 doxygen-html/a00003.html
  5. +204 −0 doxygen-html/a00004.html
  6. +2,263 −0 doxygen-html/a00005.html
  7. +2,232 −0 doxygen-html/a00006.html
  8. +2,121 −0 doxygen-html/a00007.html
  9. +169 −0 doxygen-html/a00008.html
  10. +169 −0 doxygen-html/a00009.html
  11. +2,122 −0 doxygen-html/a00010.html
  12. +810 −0 doxygen-html/a00011.html
  13. +810 −0 doxygen-html/a00012.html
  14. +354 −0 doxygen-html/a00013.html
  15. +107 −0 doxygen-html/a00014.html
  16. +108 −0 doxygen-html/a00015.html
  17. +294 −0 doxygen-html/a00016.html
  18. +822 −0 doxygen-html/a00017.html
  19. +343 −0 doxygen-html/a00018.html
  20. +220 −0 doxygen-html/a00019.html
  21. +281 −0 doxygen-html/a00020.html
  22. +801 −0 doxygen-html/a00021.html
  23. +314 −0 doxygen-html/a00022.html
  24. +234 −0 doxygen-html/a00023.html
  25. +98 −0 doxygen-html/a00024.html
  26. +110 −0 doxygen-html/a00024_source.html
  27. +94 −0 doxygen-html/a00025.html
  28. +254 −0 doxygen-html/a00026.html
  29. +3,372 −0 doxygen-html/a00026_source.html
  30. +98 −0 doxygen-html/a00027.html
  31. +110 −0 doxygen-html/a00027_source.html
  32. +110 −0 doxygen-html/a00028.html
  33. +523 −0 doxygen-html/a00028_source.html
  34. +98 −0 doxygen-html/a00029.html
  35. +110 −0 doxygen-html/a00029_source.html
  36. +110 −0 doxygen-html/a00030.html
  37. +517 −0 doxygen-html/a00030_source.html
  38. +98 −0 doxygen-html/a00031.html
  39. +110 −0 doxygen-html/a00031_source.html
  40. +112 −0 doxygen-html/a00032.html
  41. +516 −0 doxygen-html/a00032_source.html
  42. +98 −0 doxygen-html/a00033.html
  43. +110 −0 doxygen-html/a00033_source.html
  44. +112 −0 doxygen-html/a00034.html
Sorry, we could not display the entire diff because too many files (303) changed.
View
8 README
@@ -105,7 +105,7 @@ folding the key and data arrays.
--- Test Suite ---
The B+ tree distribution contains an extensive test suite using
-cppunit. According to gcov 91.9% of the btree.h implementation is covered.
+cppunit. According to gcov 90.9% of the btree.h implementation is covered.
--- STL Incompatibilities ---
@@ -124,14 +124,14 @@ iter.data() which returns a writable reference to the data value in the tree.
- Erase Functions -
-The B+ tree supports only two erase functions:
+The B+ tree supports three erase functions:
size_type erase(const key_type &key); // erase all data pairs matching key
bool erase_one(const key_type &key); // erase one data pair matching key
+void erase(iterator iter); // erase pair referenced by iter
-The following STL-required functions are not supported:
+The following STL-required function is not supported:
-void erase(iterator iter);
void erase(iterator first, iterator last);
--- Extensions ---
View
124 doxygen-html/a00001.html
@@ -0,0 +1,124 @@
+<!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"/>
+<title>STX B+ Tree Template Classes: Speed Test Results</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.7.3 -->
+<script type="text/javascript"><!--
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+--></script>
+<div id="top">
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">STX B+ Tree Template Classes&#160;<span id="projectnumber">0.8.6</span></div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li id="searchli">
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+</div>
+<div class="header">
+ <div class="headertitle">
+<h1>Speed Test Results </h1> </div>
+</div>
+<div class="contents">
+<div class="textblock"><h2><a class="anchor" id="sec11"></a>
+Speed Test Experiments</h2>
+<p>The B+ tree source package contains a speedtest program which compares the libstdc++ STL red-black tree with the implemented B+ tree with many different parameters. The newer STL hash table container from the __gnu_cxx namespace is also tested against the two trees. To keep focus on the algorithms and reduce data copying the multiset specializations were chosen. Note that the comparison between hash table and trees is somewhat unfair, because the hash table does not keep the keys sorted, and thus cannot be used for all applications.</p>
+<p>Three set of test procedures are used: the first only inserts <em>n</em> random integers into the tree / hash table. The second test first inserts <em>n</em> random integers, then performs <em>n</em> lookups for those integers and finally erases all <em>n</em> integers. The last test only performs <em>n</em> lookups on a tree pre-filled with <em>n</em> integers. All lookups are successful.</p>
+<p>These three test sequences are preformed for <em>n</em> from 125 to 4,096,000 or 32,768,000 where <em>n</em> is doubled after each test run. For each <em>n</em> the test procedure is repeated until at least one second execution time elapses during the repeated cycle. This way the measured speed for small <em>n</em> is averaged over up to 65,536 repetitions.</p>
+<p>Lastly, it is purpose of the test to determine a good node size for the B+ tree. Therefore the test runs are performed on different slot sizes; both inner and leaf nodes hold the same number of items. The number of slots tested ranges from 4 to 256 slots and therefore yields node sizes from about 50 to 2,048 bytes. This requires that the B+ tree template is instantiated for each of the probed node sizes! In the 2011 test, only every other slot size is actually tested.</p>
+<p>Two test results are included in the package: one done in <a class="el" href="a00001.html#sec12">2007 with version 0.7</a> and another done in <a class="el" href="a00001.html#sec13">2011 with version 0.8.6</a>.</p>
+<h2><a class="anchor" id="sec12"></a>
+Results 2007</h2>
+<p>The speed test source code was compiled with g++ 4.1.2 -O3 -fomit-frame-pointer</p>
+<dl class="attention"><dt><b>Attention:</b></dt><dd>Compilation of the speed test with -O3 takes very long and requires much RAM. It is not automatically built when running "make all".</dd></dl>
+<p>Some non-exhaustive tests with the Intel C++ Compiler showed drastically different results. It optimized the B+ tree algorithms much better than gcc. More work is needed to get g++ to optimize as well as icc.</p>
+<p>The results are be displayed below using gnuplot. All tests were run on a Pentium4 3.2 GHz with 2 GB RAM. A high-resolution PDF plot of the following images can be found in the package at speedtest/results-2007/speedtest.pdf</p>
+<div align="center">
+<img src="speedtest-2007-01.png" alt="speedtest-2007-01.png"/>
+</div>
+ <div align="center">
+<img src="speedtest-2007-02.png" alt="speedtest-2007-02.png"/>
+</div>
+<p>The first two plots above show the absolute time measured for inserting <em>n</em> items into seven different tree variants. For small <em>n</em> (the first plot) the speed of red-black tree and B+ tree are very similar. For large <em>n</em> the red-black tree slows down, and for <em>n</em> &gt; 1,024,000 items the red-black tree requires almost twice as much time as a B+ tree with 32 slots. The STL hash table performs better than the STL map but not as good as the B+ tree implementations with higher slot counts.</p>
+<p>The next plot shows the insertion time per item, which is calculated by dividing the absolute time by the number of inserted items. Notice that insertion time is now in microseconds. The plot shows that the red-black tree reaches some limitation at about <em>n</em> = 16,000 items. Beyond this item count the B+ tree (with 32 slots) performs much better than the STL multiset. The STL hash table resizes itself in defined intervals, which leads to non-linearly increasing insert times.</p>
+<div align="center">
+<img src="speedtest-2007-03.png" alt="speedtest-2007-03.png"/>
+</div>
+<div align="center">
+<img src="speedtest-2007-04.png" alt="speedtest-2007-04.png"/>
+</div>
+<p>The last plots goal is to find the best node size for the B+ tree. It displays the total measured time of the insertion test depending on the number of slots in inner and leaf nodes. Only runs with more than 1 million inserted items are plotted. One can see that the minimum is around 65 slots for each of the curves. However to reduce unused memory in the nodes the most practical slot size is around 35. This amounts to total node sizes of about 280 bytes. Thus in the implementation a target size of 256 bytes was chosen.</p>
+<p>The following two plots show the same aspects as above, except that not only insertion time was measured. Instead in the first plot a whole insert/find/delete cycle was performed and measured. The second plot is restricted to the lookup / find part.</p>
+<div align="center">
+<img src="speedtest-2007-07.png" alt="speedtest-2007-07.png"/>
+</div>
+<div align="center">
+<img src="speedtest-2007-11.png" alt="speedtest-2007-11.png"/>
+</div>
+<p>The results for the trees are in general accordance to those of only insertion. However the hash table implementation performs much faster in both tests. This is expected, because hash table lookup (and deletion) requires fewer memory accesses than tree traversal. Thus a hash table implementation will always be faster than trees. But of course hash tables do not store items in sorted order. Interestingly the hash table's performance is not linear in the number of items: it's peak performance is not with small number of items, but with around 10,000 items. And for item counts larger than 100,000 the hash table slows down: lookup time more than doubles. However, after doubling, the lookup time does not change much: lookup on tables with 1 million items takes approximately the same time as with 4 million items.</p>
+<h2><a class="anchor" id="sec13"></a>
+Results 2011</h2>
+<p>In 2011, after some smaller patches and fixes to the main code, I decided to rerun the old speed test on my new hardware and with up-to-date compilers.</p>
+<p>The speedtest source code was compiled on a x86_64 architecture using gcc 4.4.5 with flags -O3 -fomit-frame-pointer. It was run in an Intel Core i7 950 clocked at 3,07 GHz. According to cpuinfo, this processor contains 8 MB L2 cache.</p>
+<p>The full results of the newly run tests are found in the package at speedtest/results-2011/speedtest.pdf</p>
+<div align="center">
+<img src="speedtest-2011-03.png" alt="speedtest-2011-03.png"/>
+</div>
+<p>This plot is maybe the most interesting, especially compared with the old run from 2007. Again the B+ tree multiset implementation is faster than the red-black tree for large number of items in the tree. However, due to the faster hardware and larger cache sizes, the average insertion speed plots diverge notable at around 100,000 items instead of at 16,000 items for the older Pentium 4 CPU. Nevertheless, the graphs diverge for larger <em>n</em> in approximately the same fashion as in the older plots.</p>
+<p>This lets one assume that the basic cache hierarchy architecture has not changed and the B+ tree implementation still works much better for larger item counts than the red-black tree. </p>
+</div></div>
+<!--- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<hr class="footer"/><address class="footer"><small>Generated on Wed May 18 2011 10:12:04 for STX B+ Tree Template Classes by&#160;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
+</body>
+</html>
View
3,529 doxygen-html/a00002.html
3,529 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
204 doxygen-html/a00003.html
@@ -0,0 +1,204 @@
+<!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"/>
+<title>STX B+ Tree Template Classes: stx::btree_default_map_traits&lt; _Key, _Data &gt; Struct Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.7.3 -->
+<script type="text/javascript"><!--
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+--></script>
+<div id="top">
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">STX B+ Tree Template Classes&#160;<span id="projectnumber">0.8.6</span></div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li id="searchli">
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="nav-path" class="navpath">
+ <ul>
+ <li class="navelem"><a class="el" href="a00036.html">stx</a> </li>
+ <li class="navelem"><a class="el" href="a00003.html">btree_default_map_traits</a> </li>
+ </ul>
+ </div>
+</div>
+<div class="header">
+ <div class="summary">
+<a href="#pub-static-attribs">Static Public Attributes</a> </div>
+ <div class="headertitle">
+<h1>stx::btree_default_map_traits&lt; _Key, _Data &gt; Struct Template Reference</h1> </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="stx::btree_default_map_traits" -->
+<p>Generates default traits for a B+ tree used as a map.
+<a href="#_details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="a00026_source.html">btree.h</a>&gt;</code></p>
+
+<p><a href="a00040.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
+Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a496dd5b655f8504d804b1751c3b346d4">selfverify</a> = false</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">If true, the tree will self verify it's invariants after each insert() or erase(). <a href="#a496dd5b655f8504d804b1751c3b346d4"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a89d1e06fd542409800e8b370f9c529dc">debug</a> = false</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">If true, the tree will print out debug information and a tree dump during insert() or erase() operation. <a href="#a89d1e06fd542409800e8b370f9c529dc"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a19d18c5e35448829cc2a62f458d65a4f">leafslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key) + sizeof(_Data)) )</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of slots in each leaf of the tree. <a href="#a19d18c5e35448829cc2a62f458d65a4f"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a8fb65e8200dda28ef52fa765e14301ff">innerslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key) + sizeof(void*)) )</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of slots in each inner node of the tree. <a href="#a8fb65e8200dda28ef52fa765e14301ff"></a><br/></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename _Key, typename _Data&gt;<br/>
+ struct stx::btree_default_map_traits&lt; _Key, _Data &gt;</h3>
+
+<p>Generates default traits for a B+ tree used as a map. </p>
+<p>It estimates leaf and inner node sizes by assuming a cache line size of 256 bytes. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00100">100</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+</div><hr/><h2>Member Data Documentation</h2>
+<a class="anchor" id="a89d1e06fd542409800e8b370f9c529dc"></a><!-- doxytag: member="stx::btree_default_map_traits::debug" ref="a89d1e06fd542409800e8b370f9c529dc" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key , typename _Data &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const bool <a class="el" href="a00003.html">stx::btree_default_map_traits</a>&lt; _Key, _Data &gt;::<a class="el" href="a00003.html#a89d1e06fd542409800e8b370f9c529dc">debug</a> = false<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>If true, the tree will print out debug information and a tree dump during insert() or erase() operation. </p>
+<p>The header must have been compiled with BTREE_DEBUG defined and key_type must be std::ostream printable. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00110">110</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a8fb65e8200dda28ef52fa765e14301ff"></a><!-- doxytag: member="stx::btree_default_map_traits::innerslots" ref="a8fb65e8200dda28ef52fa765e14301ff" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key , typename _Data &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const int <a class="el" href="a00003.html">stx::btree_default_map_traits</a>&lt; _Key, _Data &gt;::<a class="el" href="a00003.html#a8fb65e8200dda28ef52fa765e14301ff">innerslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key) + sizeof(void*)) )<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Number of slots in each inner node of the tree. </p>
+<p>Estimated so that each node has a size of about 256 bytes. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00118">118</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a19d18c5e35448829cc2a62f458d65a4f"></a><!-- doxytag: member="stx::btree_default_map_traits::leafslots" ref="a19d18c5e35448829cc2a62f458d65a4f" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key , typename _Data &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const int <a class="el" href="a00003.html">stx::btree_default_map_traits</a>&lt; _Key, _Data &gt;::<a class="el" href="a00003.html#a19d18c5e35448829cc2a62f458d65a4f">leafslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key) + sizeof(_Data)) )<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Number of slots in each leaf of the tree. </p>
+<p>Estimated so that each node has a size of about 256 bytes. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00114">114</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a496dd5b655f8504d804b1751c3b346d4"></a><!-- doxytag: member="stx::btree_default_map_traits::selfverify" ref="a496dd5b655f8504d804b1751c3b346d4" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key , typename _Data &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const bool <a class="el" href="a00003.html">stx::btree_default_map_traits</a>&lt; _Key, _Data &gt;::<a class="el" href="a00003.html#a496dd5b655f8504d804b1751c3b346d4">selfverify</a> = false<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>If true, the tree will self verify it's invariants after each insert() or erase(). </p>
+<p>The header must have been compiled with BTREE_DEBUG defined. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00104">104</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>stx/<a class="el" href="a00026_source.html">btree.h</a></li>
+</ul>
+</div>
+<!--- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<hr class="footer"/><address class="footer"><small>Generated on Wed May 18 2011 10:12:05 for STX B+ Tree Template Classes by&#160;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
+</body>
+</html>
View
204 doxygen-html/a00004.html
@@ -0,0 +1,204 @@
+<!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"/>
+<title>STX B+ Tree Template Classes: stx::btree_default_set_traits&lt; _Key &gt; Struct Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.7.3 -->
+<script type="text/javascript"><!--
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+--></script>
+<div id="top">
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">STX B+ Tree Template Classes&#160;<span id="projectnumber">0.8.6</span></div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li id="searchli">
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="nav-path" class="navpath">
+ <ul>
+ <li class="navelem"><a class="el" href="a00036.html">stx</a> </li>
+ <li class="navelem"><a class="el" href="a00004.html">btree_default_set_traits</a> </li>
+ </ul>
+ </div>
+</div>
+<div class="header">
+ <div class="summary">
+<a href="#pub-static-attribs">Static Public Attributes</a> </div>
+ <div class="headertitle">
+<h1>stx::btree_default_set_traits&lt; _Key &gt; Struct Template Reference</h1> </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="stx::btree_default_set_traits" -->
+<p>Generates default traits for a B+ tree used as a set.
+<a href="#_details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="a00026_source.html">btree.h</a>&gt;</code></p>
+
+<p><a href="a00039.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
+Static Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00004.html#abbb0859c6f7a2b887863011026e28ab1">selfverify</a> = false</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">If true, the tree will self verify it's invariants after each insert() or erase(). <a href="#abbb0859c6f7a2b887863011026e28ab1"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00004.html#ab06ff26a50cb57614ddaf1096b2871bb">debug</a> = false</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">If true, the tree will print out debug information and a tree dump during insert() or erase() operation. <a href="#ab06ff26a50cb57614ddaf1096b2871bb"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00004.html#ab0bbc6a8fdfa17275dab38f5a9c80efc">leafslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key)) )</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of slots in each leaf of the tree. <a href="#ab0bbc6a8fdfa17275dab38f5a9c80efc"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00004.html#a1a1e1c183cffd510e3fc7e71076bad2b">innerslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key) + sizeof(void*)) )</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of slots in each inner node of the tree. <a href="#a1a1e1c183cffd510e3fc7e71076bad2b"></a><br/></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename _Key&gt;<br/>
+ struct stx::btree_default_set_traits&lt; _Key &gt;</h3>
+
+<p>Generates default traits for a B+ tree used as a set. </p>
+<p>It estimates leaf and inner node sizes by assuming a cache line size of 256 bytes. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00076">76</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+</div><hr/><h2>Member Data Documentation</h2>
+<a class="anchor" id="ab06ff26a50cb57614ddaf1096b2871bb"></a><!-- doxytag: member="stx::btree_default_set_traits::debug" ref="ab06ff26a50cb57614ddaf1096b2871bb" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const bool <a class="el" href="a00004.html">stx::btree_default_set_traits</a>&lt; _Key &gt;::<a class="el" href="a00004.html#ab06ff26a50cb57614ddaf1096b2871bb">debug</a> = false<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>If true, the tree will print out debug information and a tree dump during insert() or erase() operation. </p>
+<p>The header must have been compiled with BTREE_DEBUG defined and key_type must be std::ostream printable. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00086">86</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a1a1e1c183cffd510e3fc7e71076bad2b"></a><!-- doxytag: member="stx::btree_default_set_traits::innerslots" ref="a1a1e1c183cffd510e3fc7e71076bad2b" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const int <a class="el" href="a00004.html">stx::btree_default_set_traits</a>&lt; _Key &gt;::<a class="el" href="a00004.html#a1a1e1c183cffd510e3fc7e71076bad2b">innerslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key) + sizeof(void*)) )<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Number of slots in each inner node of the tree. </p>
+<p>Estimated so that each node has a size of about 256 bytes. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00094">94</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ab0bbc6a8fdfa17275dab38f5a9c80efc"></a><!-- doxytag: member="stx::btree_default_set_traits::leafslots" ref="ab0bbc6a8fdfa17275dab38f5a9c80efc" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const int <a class="el" href="a00004.html">stx::btree_default_set_traits</a>&lt; _Key &gt;::<a class="el" href="a00004.html#ab0bbc6a8fdfa17275dab38f5a9c80efc">leafslots</a> = BTREE_MAX( 8, 256 / (sizeof(_Key)) )<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Number of slots in each leaf of the tree. </p>
+<p>Estimated so that each node has a size of about 256 bytes. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00090">90</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="abbb0859c6f7a2b887863011026e28ab1"></a><!-- doxytag: member="stx::btree_default_set_traits::selfverify" ref="abbb0859c6f7a2b887863011026e28ab1" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const bool <a class="el" href="a00004.html">stx::btree_default_set_traits</a>&lt; _Key &gt;::<a class="el" href="a00004.html#abbb0859c6f7a2b887863011026e28ab1">selfverify</a> = false<code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>If true, the tree will self verify it's invariants after each insert() or erase(). </p>
+<p>The header must have been compiled with BTREE_DEBUG defined. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00080">80</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>stx/<a class="el" href="a00026_source.html">btree.h</a></li>
+</ul>
+</div>
+<!--- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<hr class="footer"/><address class="footer"><small>Generated on Wed May 18 2011 10:12:05 for STX B+ Tree Template Classes by&#160;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
+</body>
+</html>
View
2,263 doxygen-html/a00005.html
2,263 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
2,232 doxygen-html/a00006.html
2,232 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
2,121 doxygen-html/a00007.html
2,121 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
169 doxygen-html/a00008.html
@@ -0,0 +1,169 @@
+<!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"/>
+<title>STX B+ Tree Template Classes: stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::btree_pair_to_value&lt; value_type, pair_type &gt; Struct Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.7.3 -->
+<script type="text/javascript"><!--
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+--></script>
+<div id="top">
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">STX B+ Tree Template Classes&#160;<span id="projectnumber">0.8.6</span></div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li id="searchli">
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="nav-path" class="navpath">
+ <ul>
+ <li class="navelem"><a class="el" href="a00036.html">stx</a> </li>
+ <li class="navelem"><a class="el" href="a00002.html">btree</a> </li>
+ <li class="navelem"><a class="el" href="a00008.html">btree_pair_to_value</a> </li>
+ </ul>
+ </div>
+</div>
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<h1>stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::btree_pair_to_value&lt; value_type, pair_type &gt; Struct Template Reference</h1> </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="stx::btree::btree_pair_to_value" -->
+<p>For sets the second pair_type is an empty struct, so the value_type should only be the first.
+<a href="#_details">More...</a></p>
+
+<p><a href="a00042.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00008.html#a679c479f7e8f8f2eb038d488b4c0b21d">operator()</a> (<a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;p) const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a fake pair type to just the first component. <a href="#a679c479f7e8f8f2eb038d488b4c0b21d"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00008.html#afe4c1c7f8f81eff9abe5f0c44c279fb5">operator()</a> (const <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;p) const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a fake pair type to just the first component. <a href="#afe4c1c7f8f81eff9abe5f0c44c279fb5"></a><br/></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt;<br/>
+template&lt;typename value_type, typename pair_type&gt;<br/>
+ struct stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::btree_pair_to_value&lt; value_type, pair_type &gt;</h3>
+
+<p>For sets the second pair_type is an empty struct, so the value_type should only be the first. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00338">338</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+</div><hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a679c479f7e8f8f2eb038d488b4c0b21d"></a><!-- doxytag: member="stx::btree::btree_pair_to_value::operator()" ref="a679c479f7e8f8f2eb038d488b4c0b21d" args="(pair_type &amp;p) const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+<div class="memtemplate">
+template&lt;typename value_type , typename pair_type &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00008.html">btree_pair_to_value</a>&lt; <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>, <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &gt;::operator() </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Convert a fake pair type to just the first component. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00341">341</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="afe4c1c7f8f81eff9abe5f0c44c279fb5"></a><!-- doxytag: member="stx::btree::btree_pair_to_value::operator()" ref="afe4c1c7f8f81eff9abe5f0c44c279fb5" args="(const pair_type &amp;p) const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+<div class="memtemplate">
+template&lt;typename value_type , typename pair_type &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00008.html">btree_pair_to_value</a>&lt; <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>, <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &gt;::operator() </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Convert a fake pair type to just the first component. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00345">345</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>stx/<a class="el" href="a00026_source.html">btree.h</a></li>
+</ul>
+</div>
+<!--- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<hr class="footer"/><address class="footer"><small>Generated on Wed May 18 2011 10:12:05 for STX B+ Tree Template Classes by&#160;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
+</body>
+</html>
View
169 doxygen-html/a00009.html
@@ -0,0 +1,169 @@
+<!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"/>
+<title>STX B+ Tree Template Classes: stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::btree_pair_to_value&lt; value_type, value_type &gt; Struct Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.7.3 -->
+<script type="text/javascript"><!--
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+--></script>
+<div id="top">
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">STX B+ Tree Template Classes&#160;<span id="projectnumber">0.8.6</span></div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li id="searchli">
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="nav-path" class="navpath">
+ <ul>
+ <li class="navelem"><a class="el" href="a00036.html">stx</a> </li>
+ <li class="navelem"><a class="el" href="a00002.html">btree</a> </li>
+ <li class="navelem"><a class="el" href="a00009.html">btree_pair_to_value&lt; value_type, value_type &gt;</a> </li>
+ </ul>
+ </div>
+</div>
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<h1>stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::btree_pair_to_value&lt; value_type, value_type &gt; Struct Template Reference</h1> </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="stx::btree::btree_pair_to_value&lt; value_type, value_type &gt;" -->
+<p>For maps value_type is the same as the pair_type.
+<a href="#_details">More...</a></p>
+
+<p><a href="a00043.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a604b5f25e368a8c80b637d823ab8af86">operator()</a> (<a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;p) const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Identity "convert" a real pair type to just the first component. <a href="#a604b5f25e368a8c80b637d823ab8af86"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#af40979b0af4ba99ce92c373116d017f5">operator()</a> (const <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;p) const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Identity "convert" a real pair type to just the first component. <a href="#af40979b0af4ba99ce92c373116d017f5"></a><br/></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt;<br/>
+template&lt;typename value_type&gt;<br/>
+ struct stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::btree_pair_to_value&lt; value_type, value_type &gt;</h3>
+
+<p>For maps value_type is the same as the pair_type. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00352">352</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+</div><hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a604b5f25e368a8c80b637d823ab8af86"></a><!-- doxytag: member="stx::btree::btree_pair_to_value&lt; value_type, value_type &gt;::operator()" ref="a604b5f25e368a8c80b637d823ab8af86" args="(pair_type &amp;p) const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+<div class="memtemplate">
+template&lt;typename value_type &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00008.html">btree_pair_to_value</a>&lt; <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>, <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a> &gt;::operator() </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Identity "convert" a real pair type to just the first component. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00355">355</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="af40979b0af4ba99ce92c373116d017f5"></a><!-- doxytag: member="stx::btree::btree_pair_to_value&lt; value_type, value_type &gt;::operator()" ref="af40979b0af4ba99ce92c373116d017f5" args="(const pair_type &amp;p) const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+<div class="memtemplate">
+template&lt;typename value_type &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00008.html">btree_pair_to_value</a>&lt; <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a>, <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">value_type</a> &gt;::operator() </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">pair_type</a> &amp;&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Identity "convert" a real pair type to just the first component. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00359">359</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>stx/<a class="el" href="a00026_source.html">btree.h</a></li>
+</ul>
+</div>
+<!--- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<hr class="footer"/><address class="footer"><small>Generated on Wed May 18 2011 10:12:05 for STX B+ Tree Template Classes by&#160;
+<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
+</body>
+</html>
View
2,122 doxygen-html/a00010.html
2,122 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
View
810 doxygen-html/a00011.html
@@ -0,0 +1,810 @@
+<!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"/>
+<title>STX B+ Tree Template Classes: stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head>
+<body onload='searchBox.OnSelectItem(0);'>
+<!-- Generated by Doxygen 1.7.3 -->
+<script type="text/javascript"><!--
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+--></script>
+<div id="top">
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">STX B+ Tree Template Classes&#160;<span id="projectnumber">0.8.6</span></div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li id="searchli">
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="nav-path" class="navpath">
+ <ul>
+ <li class="navelem"><a class="el" href="a00036.html">stx</a> </li>
+ <li class="navelem"><a class="el" href="a00002.html">btree</a> </li>
+ <li class="navelem"><a class="el" href="a00011.html">const_iterator</a> </li>
+ </ul>
+ </div>
+</div>
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pri-attribs">Private Attributes</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<h1>stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator Class Reference</h1> </div>
+</div>
+<div class="contents">
+<!-- doxytag: class="stx::btree::const_iterator" -->
+<p>STL-like read-only iterator object for B+ tree items.
+<a href="#_details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="a00026_source.html">btree.h</a>&gt;</code></p>
+
+<p><a href="a00044.html">List of all members.</a></p>
+<table class="memberdecls">
+<tr><td colspan="2"><h2><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00002.html#af810ea957b4247a5f10e036f9037a1f5">btree::key_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#ad33dab85a33e60b91cbbde77109766e1">key_type</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The key type of the btree. Returned by <a class="el" href="a00011.html#ab9edb4839d20e7cb874f4368f4f777c9" title="Key of the current slot.">key()</a>. <a href="#ad33dab85a33e60b91cbbde77109766e1"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00002.html#a6ddb01dade0834e6083b6924cb843382">btree::data_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a99d3189f8b00a1b1a126087b0d79588c">data_type</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The data type of the btree. Returned by <a class="el" href="a00011.html#a619e974986b3b6488996cc37810e308c" title="Read-only reference to the current data object.">data()</a>. <a href="#a99d3189f8b00a1b1a126087b0d79588c"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">btree::value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#afacf3471ed5a854f00e7bb9e01408cb6">value_type</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The value type of the btree. Returned by <a class="el" href="a00011.html#a82c0a088976e594a18ee5c7e8229e3a3" title="Dereference the iterator.">operator*()</a>. <a href="#afacf3471ed5a854f00e7bb9e01408cb6"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">btree::pair_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#ae3789351e2c99bb0eaec39392eaace8e">pair_type</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The pair type of the btree. <a href="#ae3789351e2c99bb0eaec39392eaace8e"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef const <a class="el" href="a00011.html#afacf3471ed5a854f00e7bb9e01408cb6">value_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#aa13de60a3a1976daec49bf48f4f96ae9">reference</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reference to the value_type. STL required. <a href="#aa13de60a3a1976daec49bf48f4f96ae9"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef const <a class="el" href="a00011.html#afacf3471ed5a854f00e7bb9e01408cb6">value_type</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a19a8835863d42cc3bcfe4b12690b7f94">pointer</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to the value_type. STL required. <a href="#a19a8835863d42cc3bcfe4b12690b7f94"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+std::bidirectional_iterator_tag&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#ab89c34e654f20e1d827abfee59f5c876">iterator_category</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">STL-magic iterator category. <a href="#ab89c34e654f20e1d827abfee59f5c876"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef ptrdiff_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a0529195b40a6e4f28a1a64dafe7797bc">difference_type</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">STL-magic. <a href="#a0529195b40a6e4f28a1a64dafe7797bc"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00011.html">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a5a84e39db60a609e4fab844150509933">self</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Our own type. <a href="#a5a84e39db60a609e4fab844150509933"></a><br/></td></tr>
+<tr><td colspan="2"><h2><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#af5a23ec9286559e9c78dd180c25721d9">const_iterator</a> ()</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default-Constructor of a const iterator. <a href="#af5a23ec9286559e9c78dd180c25721d9"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#adf051fafd23b3eed9e115c52dcb46dd9">const_iterator</a> (const typename <a class="el" href="a00018.html">btree::leaf_node</a> *l, unsigned short s)</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializing-Constructor of a const iterator. <a href="#adf051fafd23b3eed9e115c52dcb46dd9"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a920943ad5428755d3930109b579c608c">const_iterator</a> (const <a class="el" href="a00017.html">iterator</a> &amp;it)</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy-constructor from a mutable iterator. <a href="#a920943ad5428755d3930109b579c608c"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#ab07bd25d606f784aaaadbb77fc5a1660">const_iterator</a> (const <a class="el" href="a00021.html">reverse_iterator</a> &amp;it)</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy-constructor from a mutable reverse iterator. <a href="#ab07bd25d606f784aaaadbb77fc5a1660"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a3e88b3882f0c32a7e6cc1473a29ab53c">const_iterator</a> (const <a class="el" href="a00012.html">const_reverse_iterator</a> &amp;it)</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy-constructor from a const reverse iterator. <a href="#a3e88b3882f0c32a7e6cc1473a29ab53c"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00011.html#aa13de60a3a1976daec49bf48f4f96ae9">reference</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a82c0a088976e594a18ee5c7e8229e3a3">operator*</a> () const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Dereference the iterator. <a href="#a82c0a088976e594a18ee5c7e8229e3a3"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00011.html#a19a8835863d42cc3bcfe4b12690b7f94">pointer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a81863fae52f64ce2fa4b5ee6ef85de66">operator-&gt;</a> () const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Dereference the iterator. <a href="#a81863fae52f64ce2fa4b5ee6ef85de66"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00011.html#ad33dab85a33e60b91cbbde77109766e1">key_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#ab9edb4839d20e7cb874f4368f4f777c9">key</a> () const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Key of the current slot. <a href="#ab9edb4839d20e7cb874f4368f4f777c9"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00011.html#a99d3189f8b00a1b1a126087b0d79588c">data_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a619e974986b3b6488996cc37810e308c">data</a> () const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read-only reference to the current data object. <a href="#a619e974986b3b6488996cc37810e308c"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00011.html">self</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a473c255850df1253140b75a618995a45">operator++</a> ()</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Prefix++ advance the iterator to the next slot. <a href="#a473c255850df1253140b75a618995a45"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00011.html">self</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#ad775a785190a4bcbd6e44c53dd6646d9">operator++</a> (int)</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Postfix++ advance the iterator to the next slot. <a href="#ad775a785190a4bcbd6e44c53dd6646d9"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00011.html">self</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a62e16bc8d7ddfa04a57f40b2c9eaf12c">operator--</a> ()</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Prefix-- backstep the iterator to the last slot. <a href="#a62e16bc8d7ddfa04a57f40b2c9eaf12c"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00011.html">self</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#aa38935fb48618617d99e6a54005e3485">operator--</a> (int)</td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Postfix-- backstep the iterator to the last slot. <a href="#aa38935fb48618617d99e6a54005e3485"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#af93c0a1ad56e732b9d2b0e849e5f2914">operator==</a> (const <a class="el" href="a00011.html">self</a> &amp;x) const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Equality of iterators. <a href="#af93c0a1ad56e732b9d2b0e849e5f2914"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a62fa33f9761fdf48f88c4f83329fa25e">operator!=</a> (const <a class="el" href="a00011.html">self</a> &amp;x) const </td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Inequality of iterators. <a href="#a62fa33f9761fdf48f88c4f83329fa25e"></a><br/></td></tr>
+<tr><td colspan="2"><h2><a name="pri-attribs"></a>
+Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00018.html">btree::leaf_node</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a69cea8493a694f060edd6938ef59074a">currnode</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The currently referenced leaf node of the tree. <a href="#a69cea8493a694f060edd6938ef59074a"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a5e639c91edeacb0f5a1b82cbff959d41">currslot</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Current key/data slot referenced. <a href="#a5e639c91edeacb0f5a1b82cbff959d41"></a><br/></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00011.html#afacf3471ed5a854f00e7bb9e01408cb6">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a1874cbef06ca1e169c4336e0ca9cd67d">temp_value</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Evil! A temporary value_type to STL-correctly deliver operator* and operator-&gt; <a href="#a1874cbef06ca1e169c4336e0ca9cd67d"></a><br/></td></tr>
+<tr><td colspan="2"><h2><a name="friends"></a>
+Friends</h2></td></tr>
+<tr><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00011.html#a776e261b45ef26d713a4d105a8d7c240">const_reverse_iterator</a></td></tr>
+<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Friendly to the reverse_const_iterator, so it may access the two data items directly. <a href="#a776e261b45ef26d713a4d105a8d7c240"></a><br/></td></tr>
+</table>
+<hr/><a name="_details"></a><h2>Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt;<br/>
+ class stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator</h3>
+
+<p>STL-like read-only iterator object for B+ tree items. </p>
+<p>The iterator points to a specific slot number in a leaf. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00581">581</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+</div><hr/><h2>Member Typedef Documentation</h2>
+<a class="anchor" id="a99d3189f8b00a1b1a126087b0d79588c"></a><!-- doxytag: member="stx::btree::const_iterator::data_type" ref="a99d3189f8b00a1b1a126087b0d79588c" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="a00002.html#a6ddb01dade0834e6083b6924cb843382">btree::data_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#a99d3189f8b00a1b1a126087b0d79588c">const_iterator::data_type</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>The data type of the btree. Returned by <a class="el" href="a00011.html#a619e974986b3b6488996cc37810e308c" title="Read-only reference to the current data object.">data()</a>. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00590">590</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a0529195b40a6e4f28a1a64dafe7797bc"></a><!-- doxytag: member="stx::btree::const_iterator::difference_type" ref="a0529195b40a6e4f28a1a64dafe7797bc" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef ptrdiff_t <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#a0529195b40a6e4f28a1a64dafe7797bc">const_iterator::difference_type</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>STL-magic. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00608">608</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ab89c34e654f20e1d827abfee59f5c876"></a><!-- doxytag: member="stx::btree::const_iterator::iterator_category" ref="ab89c34e654f20e1d827abfee59f5c876" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef std::bidirectional_iterator_tag <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#ab89c34e654f20e1d827abfee59f5c876">const_iterator::iterator_category</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>STL-magic iterator category. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00605">605</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad33dab85a33e60b91cbbde77109766e1"></a><!-- doxytag: member="stx::btree::const_iterator::key_type" ref="ad33dab85a33e60b91cbbde77109766e1" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="a00002.html#af810ea957b4247a5f10e036f9037a1f5">btree::key_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#ad33dab85a33e60b91cbbde77109766e1">const_iterator::key_type</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>The key type of the btree. Returned by <a class="el" href="a00011.html#ab9edb4839d20e7cb874f4368f4f777c9" title="Key of the current slot.">key()</a>. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00587">587</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ae3789351e2c99bb0eaec39392eaace8e"></a><!-- doxytag: member="stx::btree::const_iterator::pair_type" ref="ae3789351e2c99bb0eaec39392eaace8e" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="a00002.html#a659c879d43d515dc16f0ba33ab37d655">btree::pair_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#ae3789351e2c99bb0eaec39392eaace8e">const_iterator::pair_type</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>The pair type of the btree. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00596">596</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a19a8835863d42cc3bcfe4b12690b7f94"></a><!-- doxytag: member="stx::btree::const_iterator::pointer" ref="a19a8835863d42cc3bcfe4b12690b7f94" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef const <a class="el" href="a00011.html#afacf3471ed5a854f00e7bb9e01408cb6">value_type</a>* <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#a19a8835863d42cc3bcfe4b12690b7f94">const_iterator::pointer</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Pointer to the value_type. STL required. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00602">602</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aa13de60a3a1976daec49bf48f4f96ae9"></a><!-- doxytag: member="stx::btree::const_iterator::reference" ref="aa13de60a3a1976daec49bf48f4f96ae9" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef const <a class="el" href="a00011.html#afacf3471ed5a854f00e7bb9e01408cb6">value_type</a>&amp; <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#aa13de60a3a1976daec49bf48f4f96ae9">const_iterator::reference</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Reference to the value_type. STL required. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00599">599</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5a84e39db60a609e4fab844150509933"></a><!-- doxytag: member="stx::btree::const_iterator::self" ref="a5a84e39db60a609e4fab844150509933" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="a00011.html">const_iterator</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html">const_iterator::self</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Our own type. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00611">611</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="afacf3471ed5a854f00e7bb9e01408cb6"></a><!-- doxytag: member="stx::btree::const_iterator::value_type" ref="afacf3471ed5a854f00e7bb9e01408cb6" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="a00002.html#ae4f2da0c8b8ae6bf399a83746b6c037a">btree::value_type</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::<a class="el" href="a00011.html#afacf3471ed5a854f00e7bb9e01408cb6">const_iterator::value_type</a></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>The value type of the btree. Returned by <a class="el" href="a00011.html#a82c0a088976e594a18ee5c7e8229e3a3" title="Dereference the iterator.">operator*()</a>. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00593">593</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<hr/><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af5a23ec9286559e9c78dd180c25721d9"></a><!-- doxytag: member="stx::btree::const_iterator::const_iterator" ref="af5a23ec9286559e9c78dd180c25721d9" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::const_iterator </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Default-Constructor of a const iterator. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00638">638</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="adf051fafd23b3eed9e115c52dcb46dd9"></a><!-- doxytag: member="stx::btree::const_iterator::const_iterator" ref="adf051fafd23b3eed9e115c52dcb46dd9" args="(const typename btree::leaf_node *l, unsigned short s)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::const_iterator </td>
+ <td>(</td>
+ <td class="paramtype">const typename <a class="el" href="a00018.html">btree::leaf_node</a> *&#160;</td>
+ <td class="paramname"><em>l</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned short&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Initializing-Constructor of a const iterator. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00643">643</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a920943ad5428755d3930109b579c608c"></a><!-- doxytag: member="stx::btree::const_iterator::const_iterator" ref="a920943ad5428755d3930109b579c608c" args="(const iterator &amp;it)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::const_iterator </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="a00017.html">iterator</a> &amp;&#160;</td>
+ <td class="paramname"><em>it</em></td><td>)</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Copy-constructor from a mutable iterator. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00648">648</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ab07bd25d606f784aaaadbb77fc5a1660"></a><!-- doxytag: member="stx::btree::const_iterator::const_iterator" ref="ab07bd25d606f784aaaadbb77fc5a1660" args="(const reverse_iterator &amp;it)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::const_iterator </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="a00021.html">reverse_iterator</a> &amp;&#160;</td>
+ <td class="paramname"><em>it</em></td><td>)</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Copy-constructor from a mutable reverse iterator. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00653">653</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a3e88b3882f0c32a7e6cc1473a29ab53c"></a><!-- doxytag: member="stx::btree::const_iterator::const_iterator" ref="a3e88b3882f0c32a7e6cc1473a29ab53c" args="(const const_reverse_iterator &amp;it)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::const_iterator </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="a00012.html">const_reverse_iterator</a> &amp;&#160;</td>
+ <td class="paramname"><em>it</em></td><td>)</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Copy-constructor from a const reverse iterator. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00658">658</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+</div>
+</div>
+<hr/><h2>Member Function Documentation</h2>
+<a class="anchor" id="a619e974986b3b6488996cc37810e308c"></a><!-- doxytag: member="stx::btree::const_iterator::data" ref="a619e974986b3b6488996cc37810e308c" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="a00011.html#a99d3189f8b00a1b1a126087b0d79588c">data_type</a>&amp; <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::data </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Read-only reference to the current data object. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00689">689</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+<p>References <a class="el" href="a00026_source.html#l00617">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currnode</a>, <a class="el" href="a00026_source.html#l00620">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currslot</a>, and <a class="el" href="a00026_source.html#l00304">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::leaf_node::slotdata</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ab9edb4839d20e7cb874f4368f4f777c9"></a><!-- doxytag: member="stx::btree::const_iterator::key" ref="ab9edb4839d20e7cb874f4368f4f777c9" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="a00011.html#ad33dab85a33e60b91cbbde77109766e1">key_type</a>&amp; <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::key </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Key of the current slot. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00683">683</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+<p>References <a class="el" href="a00026_source.html#l00617">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currnode</a>, <a class="el" href="a00026_source.html#l00620">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currslot</a>, and <a class="el" href="a00026_source.html#l00301">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::leaf_node::slotkey</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a62fa33f9761fdf48f88c4f83329fa25e"></a><!-- doxytag: member="stx::btree::const_iterator::operator!=" ref="a62fa33f9761fdf48f88c4f83329fa25e" args="(const self &amp;x) const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::operator!= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="a00011.html">self</a> &amp;&#160;</td>
+ <td class="paramname"><em>x</em></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Inequality of iterators. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00777">777</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+<p>References <a class="el" href="a00026_source.html#l00617">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currnode</a>, and <a class="el" href="a00026_source.html#l00620">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currslot</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a82c0a088976e594a18ee5c7e8229e3a3"></a><!-- doxytag: member="stx::btree::const_iterator::operator*" ref="a82c0a088976e594a18ee5c7e8229e3a3" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00011.html#aa13de60a3a1976daec49bf48f4f96ae9">reference</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::operator* </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Dereference the iterator. </p>
+<p>Do not use this if possible, use <a class="el" href="a00011.html#ab9edb4839d20e7cb874f4368f4f777c9" title="Key of the current slot.">key()</a> and <a class="el" href="a00011.html#a619e974986b3b6488996cc37810e308c" title="Read-only reference to the current data object.">data()</a> instead. The B+ tree does not stored key and data together. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00665">665</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+<p>References <a class="el" href="a00026_source.html#l00617">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currnode</a>, <a class="el" href="a00026_source.html#l00620">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currslot</a>, <a class="el" href="a00026_source.html#l00304">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::leaf_node::slotdata</a>, <a class="el" href="a00026_source.html#l00301">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::leaf_node::slotkey</a>, and <a class="el" href="a00026_source.html#l00627">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::temp_value</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a473c255850df1253140b75a618995a45"></a><!-- doxytag: member="stx::btree::const_iterator::operator++" ref="a473c255850df1253140b75a618995a45" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00011.html">self</a>&amp; <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::operator++ </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Prefix++ advance the iterator to the next slot. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00695">695</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+<p>References <a class="el" href="a00026_source.html#l00617">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currnode</a>, <a class="el" href="a00026_source.html#l00620">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currslot</a>, <a class="el" href="a00026_source.html#l00298">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::leaf_node::nextleaf</a>, and <a class="el" href="a00026_source.html#l00232">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::node::slotuse</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad775a785190a4bcbd6e44c53dd6646d9"></a><!-- doxytag: member="stx::btree::const_iterator::operator++" ref="ad775a785190a4bcbd6e44c53dd6646d9" args="(int)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00011.html">self</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::operator++ </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Postfix++ advance the iterator to the next slot. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00713">713</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+<p>References <a class="el" href="a00026_source.html#l00617">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currnode</a>, <a class="el" href="a00026_source.html#l00620">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currslot</a>, <a class="el" href="a00026_source.html#l00298">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::leaf_node::nextleaf</a>, and <a class="el" href="a00026_source.html#l00232">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::node::slotuse</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a62e16bc8d7ddfa04a57f40b2c9eaf12c"></a><!-- doxytag: member="stx::btree::const_iterator::operator&#45;&#45;" ref="a62e16bc8d7ddfa04a57f40b2c9eaf12c" args="()" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00011.html">self</a>&amp; <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::operator-- </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>Prefix-- backstep the iterator to the last slot. </p>
+
+<p>Definition at line <a class="el" href="a00026_source.html#l00733">733</a> of file <a class="el" href="a00026_source.html">btree.h</a>.</p>
+
+<p>References <a class="el" href="a00026_source.html#l00617">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currnode</a>, <a class="el" href="a00026_source.html#l00620">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::currslot</a>, <a class="el" href="a00026_source.html#l00295">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::leaf_node::prevleaf</a>, and <a class="el" href="a00026_source.html#l00232">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::node::slotuse</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aa38935fb48618617d99e6a54005e3485"></a><!-- doxytag: member="stx::btree::const_iterator::operator&#45;&#45;" ref="aa38935fb48618617d99e6a54005e3485" args="(int)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename _Key, typename _Data, typename _Value = std::pair&lt;_Key, _Data&gt;, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_map_traits&lt;_Key, _Data&gt;, bool _Duplicates = false, typename _Alloc = std::allocator&lt;_Value&gt;&gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="a00011.html">self</a> <a class="el" href="a00002.html">stx::btree</a>&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc &gt;::const_iterator::operator-- </td>
+ <td>(</td>