<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>STX B+ Tree Template Classes: stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>Related 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>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class List</span></a></li>
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class Members</span></a></li>
</ul>
</div>
<div class="navpath"><a class="el" href="namespacestx.html">stx</a>::<a class="el" href="classstx_1_1btree.html">btree</a>::<a class="el" href="classstx_1_1btree_1_1iterator.html">iterator</a>
</div>
</div>
<div class="contents">
<h1>stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator Class Reference</h1><!-- doxytag: class="stx::btree::iterator" -->STL-like <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> object for B+ tree items.
<a href="#_details">More...</a>
<p>
<code>#include <<a class="el" href="btree_8h-source.html">btree.h</a>></code>
<p>
<p>
<a href="classstx_1_1btree_1_1iterator-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classstx_1_1btree.html#2054714c400894aa8822f0f52bc120cf">btree::key_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#ea4332aed2cd6388e084487074b72ee6">key_type</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">The key type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>. Returned by <a class="el" href="classstx_1_1btree_1_1iterator.html#aa01645799a11caaf3dfbe8a8b1e3bb4" title="Key of the current slot.">key()</a>. <a href="#ea4332aed2cd6388e084487074b72ee6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classstx_1_1btree.html#ca29ad902418d86eeb9b9379a38e5fcd">btree::data_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#ffb9c60049bf66fd6224db6ae804da7f">data_type</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">The data type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>. Returned by <a class="el" href="classstx_1_1btree_1_1iterator.html#611b8e53a3678e53c78d198b25e05a2f" title="Writable reference to the current data object.">data()</a>. <a href="#ffb9c60049bf66fd6224db6ae804da7f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classstx_1_1btree.html#84c95e7319c922fe297b4acdf2e0910c">btree::value_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">value_type</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">The value type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>. Returned by <a class="el" href="classstx_1_1btree_1_1iterator.html#8a2c919b492844a98f80e5d75d5c3f03" title="Dereference the iterator, this is not a value_type& because key and value are...">operator*()</a>. <a href="#9f1974cd1b9a1c0e93da0daf82c5d14f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classstx_1_1btree.html#f7a75a733f8547491913b0e5b8d11a4e">btree::pair_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#80f0ddae6043be8f297243b5e7c658f3">pair_type</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">The pair type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>. <a href="#80f0ddae6043be8f297243b5e7c658f3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">value_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#ea2f3525718cf2cbaa4fe7ace1a70edd">reference</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Reference to the value_type. STL required. <a href="#ea2f3525718cf2cbaa4fe7ace1a70edd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">value_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#295e5913f8a3bb5bb8782a654fe8f854">pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the value_type. STL required. <a href="#295e5913f8a3bb5bb8782a654fe8f854"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <br>
std::bidirectional_iterator_tag </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#2a36a0292fe6ad42814e7ef9a0a742d4">iterator_category</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">STL-magic <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> category. <a href="#2a36a0292fe6ad42814e7ef9a0a742d4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ptrdiff_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#bc26d3f78cf71e37337ea54be0ca9ed0">difference_type</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">STL-magic. <a href="#bc26d3f78cf71e37337ea54be0ca9ed0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classstx_1_1btree_1_1iterator.html">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#10514bcd8d55875eb4b5cede7123896c">self</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Our own type. <a href="#10514bcd8d55875eb4b5cede7123896c"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#a54c4b8e7ac48539e9f79d18c0a57dfc">iterator</a> ()</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Default-Constructor of a mutable <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>. <a href="#a54c4b8e7ac48539e9f79d18c0a57dfc"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#42bebd3ed2930455eba60817d7cba44d">iterator</a> (typename <a class="el" href="structstx_1_1btree_1_1leaf__node.html">btree::leaf_node</a> *l, unsigned short s)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Initializing-Constructor of a mutable <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>. <a href="#42bebd3ed2930455eba60817d7cba44d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#a0e0334af63cde950cf8384f497285b5">iterator</a> (const <a class="el" href="classstx_1_1btree_1_1reverse__iterator.html">reverse_iterator</a> &it)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Copy-constructor from a reverse <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>. <a href="#a0e0334af63cde950cf8384f497285b5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html#ea2f3525718cf2cbaa4fe7ace1a70edd">reference</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#8a2c919b492844a98f80e5d75d5c3f03">operator*</a> () const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Dereference the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>, this is not a value_type& because key and value are not stored together. <a href="#8a2c919b492844a98f80e5d75d5c3f03"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html#295e5913f8a3bb5bb8782a654fe8f854">pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#25de2fc3c4d5524f51e618024fbf4123">operator-></a> () const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Dereference the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>. <a href="#25de2fc3c4d5524f51e618024fbf4123"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classstx_1_1btree_1_1iterator.html#ea4332aed2cd6388e084487074b72ee6">key_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#aa01645799a11caaf3dfbe8a8b1e3bb4">key</a> () const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Key of the current slot. <a href="#aa01645799a11caaf3dfbe8a8b1e3bb4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html#ffb9c60049bf66fd6224db6ae804da7f">data_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#611b8e53a3678e53c78d198b25e05a2f">data</a> () const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Writable reference to the current data object. <a href="#611b8e53a3678e53c78d198b25e05a2f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#99673c0a8e2c0a8731255606cf3c12bf">operator++</a> ()</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Prefix++ advance the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the next slot. <a href="#99673c0a8e2c0a8731255606cf3c12bf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#ede8f3d3cb92d9df6537902015d81bb1">operator++</a> (int)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Postfix++ advance the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the next slot. <a href="#ede8f3d3cb92d9df6537902015d81bb1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#f37b51ac54b7fdbb775c0c24ec738475">operator--</a> ()</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Prefix-- backstep the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the last slot. <a href="#f37b51ac54b7fdbb775c0c24ec738475"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#527ec894a57424168ffcf4c9664b08b3">operator--</a> (int)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Postfix-- backstep the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the last slot. <a href="#527ec894a57424168ffcf4c9664b08b3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#c13d2f2abdc84c671427f51ad738b16e">operator==</a> (const <a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> &x) const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Equality of iterators. <a href="#c13d2f2abdc84c671427f51ad738b16e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#d59538428cb3502d73692b0b369bdcac">operator!=</a> (const <a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> &x) const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Inequality of iterators. <a href="#d59538428cb3502d73692b0b369bdcac"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structstx_1_1btree_1_1leaf__node.html">btree::leaf_node</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#3a0cb493e82780e1ba23595c7335ded4">currnode</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">The currently referenced leaf <a class="el" href="structstx_1_1btree_1_1node.html" title="The header structure of each node in-memory.">node</a> of the tree. <a href="#3a0cb493e82780e1ba23595c7335ded4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned short </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#6b81fb282b0576275e588bc70f71fbd7">currslot</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Current key/data slot referenced. <a href="#6b81fb282b0576275e588bc70f71fbd7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">value_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#19d75ddf417487f53d0eaecdfc5b8d91">temp_value</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Evil! A temporary value_type to STL-correctly deliver operator* and operator->. <a href="#19d75ddf417487f53d0eaecdfc5b8d91"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#c220ce1c155db1ac44146c12d178056f">const_iterator</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Friendly to the <a class="el" href="classstx_1_1btree_1_1const__iterator.html" title="STL-like read-only iterator object for B+ tree items.">const_iterator</a>, so it may access the two data items directly. <a href="#c220ce1c155db1ac44146c12d178056f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#f0a70641f2216cc31420487a62dd3b0d">reverse_iterator</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Also friendly to the <a class="el" href="classstx_1_1btree_1_1reverse__iterator.html" title="STL-like mutable reverse iterator object for B+ tree items.">reverse_iterator</a>, so it may access the two data items directly. <a href="#f0a70641f2216cc31420487a62dd3b0d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classstx_1_1btree_1_1iterator.html#776e261b45ef26d713a4d105a8d7c240">const_reverse_iterator</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Also friendly to the <a class="el" href="classstx_1_1btree_1_1const__reverse__iterator.html" title="STL-like read-only reverse iterator object for B+ tree items.">const_reverse_iterator</a>, so it may access the two data items directly. <a href="#776e261b45ef26d713a4d105a8d7c240"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false><br>
class stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator</h3>
STL-like <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> object for B+ tree items.
<p>
The <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> points to a specific slot number in a leaf.
<p>Definition at line <a class="el" href="btree_8h-source.html#l00366">366</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="ea4332aed2cd6388e084487074b72ee6"></a><!-- doxytag: member="stx::btree::iterator::key_type" ref="ea4332aed2cd6388e084487074b72ee6" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classstx_1_1btree.html#2054714c400894aa8822f0f52bc120cf">btree::key_type</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#ea4332aed2cd6388e084487074b72ee6">iterator::key_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
The key type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>. Returned by <a class="el" href="classstx_1_1btree_1_1iterator.html#aa01645799a11caaf3dfbe8a8b1e3bb4" title="Key of the current slot.">key()</a>.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00372">372</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="ffb9c60049bf66fd6224db6ae804da7f"></a><!-- doxytag: member="stx::btree::iterator::data_type" ref="ffb9c60049bf66fd6224db6ae804da7f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classstx_1_1btree.html#ca29ad902418d86eeb9b9379a38e5fcd">btree::data_type</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#ffb9c60049bf66fd6224db6ae804da7f">iterator::data_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
The data type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>. Returned by <a class="el" href="classstx_1_1btree_1_1iterator.html#611b8e53a3678e53c78d198b25e05a2f" title="Writable reference to the current data object.">data()</a>.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00375">375</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="9f1974cd1b9a1c0e93da0daf82c5d14f"></a><!-- doxytag: member="stx::btree::iterator::value_type" ref="9f1974cd1b9a1c0e93da0daf82c5d14f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classstx_1_1btree.html#84c95e7319c922fe297b4acdf2e0910c">btree::value_type</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">iterator::value_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
The value type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>. Returned by <a class="el" href="classstx_1_1btree_1_1iterator.html#8a2c919b492844a98f80e5d75d5c3f03" title="Dereference the iterator, this is not a value_type& because key and value are...">operator*()</a>.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00378">378</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="80f0ddae6043be8f297243b5e7c658f3"></a><!-- doxytag: member="stx::btree::iterator::pair_type" ref="80f0ddae6043be8f297243b5e7c658f3" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classstx_1_1btree.html#f7a75a733f8547491913b0e5b8d11a4e">btree::pair_type</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#80f0ddae6043be8f297243b5e7c658f3">iterator::pair_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
The pair type of the <a class="el" href="classstx_1_1btree.html" title="Basic class implementing a base B+ tree data structure in memory.">btree</a>.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00381">381</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="ea2f3525718cf2cbaa4fe7ace1a70edd"></a><!-- doxytag: member="stx::btree::iterator::reference" ref="ea2f3525718cf2cbaa4fe7ace1a70edd" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">value_type</a>& <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#ea2f3525718cf2cbaa4fe7ace1a70edd">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="btree_8h-source.html#l00384">384</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="295e5913f8a3bb5bb8782a654fe8f854"></a><!-- doxytag: member="stx::btree::iterator::pointer" ref="295e5913f8a3bb5bb8782a654fe8f854" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">value_type</a>* <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#295e5913f8a3bb5bb8782a654fe8f854">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="btree_8h-source.html#l00387">387</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="2a36a0292fe6ad42814e7ef9a0a742d4"></a><!-- doxytag: member="stx::btree::iterator::iterator_category" ref="2a36a0292fe6ad42814e7ef9a0a742d4" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef std::bidirectional_iterator_tag <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#2a36a0292fe6ad42814e7ef9a0a742d4">iterator::iterator_category</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
STL-magic <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> category.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00390">390</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="bc26d3f78cf71e37337ea54be0ca9ed0"></a><!-- doxytag: member="stx::btree::iterator::difference_type" ref="bc26d3f78cf71e37337ea54be0ca9ed0" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef ptrdiff_t <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#bc26d3f78cf71e37337ea54be0ca9ed0">iterator::difference_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
STL-magic.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00393">393</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="10514bcd8d55875eb4b5cede7123896c"></a><!-- doxytag: member="stx::btree::iterator::self" ref="10514bcd8d55875eb4b5cede7123896c" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classstx_1_1btree_1_1iterator.html">iterator</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html">iterator::self</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Our own type.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00396">396</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="a54c4b8e7ac48539e9f79d18c0a57dfc"></a><!-- doxytag: member="stx::btree::iterator::iterator" ref="a54c4b8e7ac48539e9f79d18c0a57dfc" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::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 mutable <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00429">429</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="42bebd3ed2930455eba60817d7cba44d"></a><!-- doxytag: member="stx::btree::iterator::iterator" ref="42bebd3ed2930455eba60817d7cba44d" args="(typename btree::leaf_node *l, unsigned short s)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::iterator </td>
<td>(</td>
<td class="paramtype">typename <a class="el" href="structstx_1_1btree_1_1leaf__node.html">btree::leaf_node</a> * </td>
<td class="paramname"> <em>l</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned short </td>
<td class="paramname"> <em>s</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Initializing-Constructor of a mutable <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00434">434</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="a0e0334af63cde950cf8384f497285b5"></a><!-- doxytag: member="stx::btree::iterator::iterator" ref="a0e0334af63cde950cf8384f497285b5" args="(const reverse_iterator &it)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::iterator </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classstx_1_1btree_1_1reverse__iterator.html">reverse_iterator</a> & </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 reverse <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00439">439</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="8a2c919b492844a98f80e5d75d5c3f03"></a><!-- doxytag: member="stx::btree::iterator::operator*" ref="8a2c919b492844a98f80e5d75d5c3f03" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html#ea2f3525718cf2cbaa4fe7ace1a70edd">reference</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::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 <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>, this is not a value_type& because key and value are not stored together.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00445">445</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, <a class="el" href="btree_8h-source.html#l00292">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::slotdata</a>, <a class="el" href="btree_8h-source.html#l00289">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::slotkey</a>, and <a class="el" href="btree_8h-source.html#l00418">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::temp_value</a>.</p>
</div>
</div><p>
<a class="anchor" name="25de2fc3c4d5524f51e618024fbf4123"></a><!-- doxytag: member="stx::btree::iterator::operator->" ref="25de2fc3c4d5524f51e618024fbf4123" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html#295e5913f8a3bb5bb8782a654fe8f854">pointer</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::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 <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a>.
<p>
Do not use this if possible, use <a class="el" href="classstx_1_1btree_1_1iterator.html#aa01645799a11caaf3dfbe8a8b1e3bb4" title="Key of the current slot.">key()</a> and <a class="el" href="classstx_1_1btree_1_1iterator.html#611b8e53a3678e53c78d198b25e05a2f" title="Writable reference to the current data object.">data()</a> instead. The B+ tree does not stored key and data together.
<p>Definition at line <a class="el" href="btree_8h-source.html#l00455">455</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, <a class="el" href="btree_8h-source.html#l00292">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::slotdata</a>, <a class="el" href="btree_8h-source.html#l00289">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::slotkey</a>, and <a class="el" href="btree_8h-source.html#l00418">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::temp_value</a>.</p>
</div>
</div><p>
<a class="anchor" name="aa01645799a11caaf3dfbe8a8b1e3bb4"></a><!-- doxytag: member="stx::btree::iterator::key" ref="aa01645799a11caaf3dfbe8a8b1e3bb4" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classstx_1_1btree_1_1iterator.html#ea4332aed2cd6388e084487074b72ee6">key_type</a>& <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::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="btree_8h-source.html#l00463">463</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, and <a class="el" href="btree_8h-source.html#l00289">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::slotkey</a>.</p>
</div>
</div><p>
<a class="anchor" name="611b8e53a3678e53c78d198b25e05a2f"></a><!-- doxytag: member="stx::btree::iterator::data" ref="611b8e53a3678e53c78d198b25e05a2f" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html#ffb9c60049bf66fd6224db6ae804da7f">data_type</a>& <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::data </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td> const<code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Writable reference to the current data object.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00469">469</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, and <a class="el" href="btree_8h-source.html#l00292">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::slotdata</a>.</p>
<p>Referenced by <a class="el" href="btree__map_8h-source.html#l00483">stx::btree_map< _Key, _Data, _Compare, _Traits >::operator[]()</a>.</p>
</div>
</div><p>
<a class="anchor" name="99673c0a8e2c0a8731255606cf3c12bf"></a><!-- doxytag: member="stx::btree::iterator::operator++" ref="99673c0a8e2c0a8731255606cf3c12bf" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a>& <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::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 <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the next slot.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00475">475</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, <a class="el" href="btree_8h-source.html#l00286">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::nextleaf</a>, and <a class="el" href="btree_8h-source.html#l00226">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::node::slotuse</a>.</p>
</div>
</div><p>
<a class="anchor" name="ede8f3d3cb92d9df6537902015d81bb1"></a><!-- doxytag: member="stx::btree::iterator::operator++" ref="ede8f3d3cb92d9df6537902015d81bb1" args="(int)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator++ </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"> </td>
<td> ) </td>
<td><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Postfix++ advance the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the next slot.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00493">493</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, <a class="el" href="btree_8h-source.html#l00286">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::nextleaf</a>, and <a class="el" href="btree_8h-source.html#l00226">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::node::slotuse</a>.</p>
</div>
</div><p>
<a class="anchor" name="f37b51ac54b7fdbb775c0c24ec738475"></a><!-- doxytag: member="stx::btree::iterator::operator--" ref="f37b51ac54b7fdbb775c0c24ec738475" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a>& <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::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 <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the last slot.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00513">513</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, <a class="el" href="btree_8h-source.html#l00283">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::prevleaf</a>, and <a class="el" href="btree_8h-source.html#l00226">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::node::slotuse</a>.</p>
</div>
</div><p>
<a class="anchor" name="527ec894a57424168ffcf4c9664b08b3"></a><!-- doxytag: member="stx::btree::iterator::operator--" ref="527ec894a57424168ffcf4c9664b08b3" args="(int)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator-- </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"> </td>
<td> ) </td>
<td><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Postfix-- backstep the <a class="el" href="classstx_1_1btree_1_1iterator.html" title="STL-like iterator object for B+ tree items.">iterator</a> to the last slot.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00531">531</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>, <a class="el" href="btree_8h-source.html#l00283">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::leaf_node::prevleaf</a>, and <a class="el" href="btree_8h-source.html#l00226">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::node::slotuse</a>.</p>
</div>
</div><p>
<a class="anchor" name="c13d2f2abdc84c671427f51ad738b16e"></a><!-- doxytag: member="stx::btree::iterator::operator==" ref="c13d2f2abdc84c671427f51ad738b16e" args="(const self &x) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator== </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> & </td>
<td class="paramname"> <em>x</em> </td>
<td> ) </td>
<td> const<code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Equality of iterators.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00551">551</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, and <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>.</p>
</div>
</div><p>
<a class="anchor" name="d59538428cb3502d73692b0b369bdcac"></a><!-- doxytag: member="stx::btree::iterator::operator!=" ref="d59538428cb3502d73692b0b369bdcac" args="(const self &x) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator!= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classstx_1_1btree_1_1iterator.html">self</a> & </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="btree_8h-source.html#l00557">557</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>References <a class="el" href="btree_8h-source.html#l00402">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currnode</a>, and <a class="el" href="btree_8h-source.html#l00405">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::currslot</a>.</p>
</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="c220ce1c155db1ac44146c12d178056f"></a><!-- doxytag: member="stx::btree::iterator::const_iterator" ref="c220ce1c155db1ac44146c12d178056f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">friend class <a class="el" href="classstx_1_1btree_1_1const__iterator.html">const_iterator</a><code> [friend]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Friendly to the <a class="el" href="classstx_1_1btree_1_1const__iterator.html" title="STL-like read-only iterator object for B+ tree items.">const_iterator</a>, so it may access the two data items directly.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00408">408</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="f0a70641f2216cc31420487a62dd3b0d"></a><!-- doxytag: member="stx::btree::iterator::reverse_iterator" ref="f0a70641f2216cc31420487a62dd3b0d" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">friend class <a class="el" href="classstx_1_1btree_1_1reverse__iterator.html">reverse_iterator</a><code> [friend]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Also friendly to the <a class="el" href="classstx_1_1btree_1_1reverse__iterator.html" title="STL-like mutable reverse iterator object for B+ tree items.">reverse_iterator</a>, so it may access the two data items directly.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00411">411</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="776e261b45ef26d713a4d105a8d7c240"></a><!-- doxytag: member="stx::btree::iterator::const_reverse_iterator" ref="776e261b45ef26d713a4d105a8d7c240" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">friend class <a class="el" href="classstx_1_1btree_1_1const__reverse__iterator.html">const_reverse_iterator</a><code> [friend]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Also friendly to the <a class="el" href="classstx_1_1btree_1_1const__reverse__iterator.html" title="STL-like read-only reverse iterator object for B+ tree items.">const_reverse_iterator</a>, so it may access the two data items directly.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00414">414</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="3a0cb493e82780e1ba23595c7335ded4"></a><!-- doxytag: member="stx::btree::iterator::currnode" ref="3a0cb493e82780e1ba23595c7335ded4" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structstx_1_1btree_1_1leaf__node.html">btree::leaf_node</a>* <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#3a0cb493e82780e1ba23595c7335ded4">iterator::currnode</a><code> [private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
The currently referenced leaf <a class="el" href="structstx_1_1btree_1_1node.html" title="The header structure of each node in-memory.">node</a> of the tree.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00402">402</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>Referenced by <a class="el" href="btree_8h-source.html#l00469">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::data()</a>, <a class="el" href="btree_8h-source.html#l00463">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::key()</a>, <a class="el" href="btree_8h-source.html#l00557">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator!=()</a>, <a class="el" href="btree_8h-source.html#l00445">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator*()</a>, <a class="el" href="btree_8h-source.html#l00475">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator++()</a>, <a class="el" href="btree_8h-source.html#l00513">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator--()</a>, <a class="el" href="btree_8h-source.html#l00455">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator->()</a>, and <a class="el" href="btree_8h-source.html#l00551">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator==()</a>.</p>
</div>
</div><p>
<a class="anchor" name="6b81fb282b0576275e588bc70f71fbd7"></a><!-- doxytag: member="stx::btree::iterator::currslot" ref="6b81fb282b0576275e588bc70f71fbd7" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname">unsigned short <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#6b81fb282b0576275e588bc70f71fbd7">iterator::currslot</a><code> [private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Current key/data slot referenced.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00405">405</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>Referenced by <a class="el" href="btree_8h-source.html#l00469">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::data()</a>, <a class="el" href="btree_8h-source.html#l00463">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::key()</a>, <a class="el" href="btree_8h-source.html#l00557">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator!=()</a>, <a class="el" href="btree_8h-source.html#l00445">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator*()</a>, <a class="el" href="btree_8h-source.html#l00475">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator++()</a>, <a class="el" href="btree_8h-source.html#l00513">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator--()</a>, <a class="el" href="btree_8h-source.html#l00455">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator->()</a>, and <a class="el" href="btree_8h-source.html#l00551">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator==()</a>.</p>
</div>
</div><p>
<a class="anchor" name="19d75ddf417487f53d0eaecdfc5b8d91"></a><!-- doxytag: member="stx::btree::iterator::temp_value" ref="19d75ddf417487f53d0eaecdfc5b8d91" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<typename _Key, typename _Data, typename _Value = std::pair<_Key, _Data>, typename _Compare = std::less<_Key>, typename _Traits = btree_default_map_traits<_Key, _Data>, bool _Duplicates = false> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classstx_1_1btree_1_1iterator.html#9f1974cd1b9a1c0e93da0daf82c5d14f">value_type</a> <a class="el" href="classstx_1_1btree.html">stx::btree</a>< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::<a class="el" href="classstx_1_1btree_1_1iterator.html#19d75ddf417487f53d0eaecdfc5b8d91">iterator::temp_value</a><code> [mutable, private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Evil! A temporary value_type to STL-correctly deliver operator* and operator->.
<p>
<p>Definition at line <a class="el" href="btree_8h-source.html#l00418">418</a> of file <a class="el" href="btree_8h-source.html">btree.h</a>.</p>
<p>Referenced by <a class="el" href="btree_8h-source.html#l00445">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator*()</a>, and <a class="el" href="btree_8h-source.html#l00455">stx::btree< _Key, _Data, _Value, _Compare, _Traits, _Duplicates >::iterator::operator->()</a>.</p>
</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>stx/<a class="el" href="btree_8h-source.html">btree.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Sep 7 17:32:39 2008 for STX B+ Tree Template Classes by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>