2 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
7 <title>basic_tree_assoc_cntnr Interface
14 <tt>basic_tree_assoc_cntnr
22 <p>A basic tree-based associative container specialized for underlying data-structure which do not support reverse iteration.
27 <a href =
"../../../../include/ext/pb_assoc/assoc_cntnr.hpp"><tt>assoc_cntnr.hpp
</tt>
33 <a href =
"#link1">Template parameters.
39 <a href =
"#link2">Base classes.
45 Public Types and Constants:
50 <a href =
"#link3">General container definitions.
56 <a href =
"#link4">Key-type definitions.
62 <a href =
"#link5">Policy definitions.
68 <a href =
"#link6">Iterator definitions.
83 <a href =
"#link7">Constructors, destructor, and related.
89 <a href =
"#link8">Policy access methods.
95 <a href =
"#link9">Erase methods.
101 <a href =
"#link10">Node-Iteration methods.
107 <a href =
"#link11">Split and join methods.
120 <a name =
"link1">Template parameters.
125 <table WIDTH =
"100%" BORDER =
"1">
126 <TR><TD Width =
"20%" ALIGN =
"left"><b>Parameter
</b></TD><TD Width =
"50%" ALIGN =
"left"><b>Description
</b></TD><TD Width =
"30%" ALIGN =
"left"><b>Default Value
</b></TD></TR>
131 <pre><a name =
"Key3735928856">Key
</a></pre>
152 <pre><a name =
"Data3735928937">Data
</a></pre>
173 <pre><a name =
"Cmp_Fn3735929122">Cmp_Fn
</a></pre>
179 <p>Comparison functor.
</p>
194 <pre><a name =
"Node_Updator3735929779">Node_Updator
</a></pre>
200 <p>Node updator type.
</p>
203 <p><a href =
"concepts.html#concepts_node_invariants">Node Invariants
</a> explains this concept.
</p>
218 <pre><a name =
"Allocator3735929488">Allocator
</a></pre>
224 <p>Allocator type.
</p>
240 <a name =
"link2">Base classes.
245 <table WIDTH =
"100%" BORDER =
"1">
246 <TR><TD Width =
"80%" ALIGN =
"left"><b>Class
</b></TD><TD Width =
"20%" ALIGN =
"left"><b>Derivation Type
</b></TD></TR>
251 <pre><a href =
"#Node_Updator3735929779">Node_Updator
</a></pre>
267 <a name =
"link3">General container definitions.
272 <table WIDTH =
"100%" BORDER =
"1">
273 <TR><TD Width =
"30%" ALIGN =
"left"><b>Type
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Definition
</b></TD><TD Width =
"15%" ALIGN =
"left"><b>Description
</b></TD></TR>
278 <pre><a name =
"size_type3735929547">size_type
</a></pre>
284 <pre><b>typename
</b> <a href =
"#Allocator3735929488">Allocator
</a>::size_type
</pre>
300 <a name =
"link4">Key-type definitions.
305 <table WIDTH =
"100%" BORDER =
"1">
306 <TR><TD Width =
"30%" ALIGN =
"left"><b>Type
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Definition
</b></TD><TD Width =
"15%" ALIGN =
"left"><b>Description
</b></TD></TR>
311 <pre><a name =
"const_key_reference3735929552">const_key_reference
</a></pre>
317 <pre><b>typename
</b> <a href =
"#Allocator3735929488">Allocator
</a>::
<b>template
</b> rebind
<
318 <a href =
"#Key3735928856">Key
</a>>::other::const_reference
</pre>
324 <p>Const key reference type.
</p>
334 <a name =
"link5">Policy definitions.
339 <table WIDTH =
"100%" BORDER =
"1">
340 <TR><TD Width =
"30%" ALIGN =
"left"><b>Type
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Definition
</b></TD><TD Width =
"15%" ALIGN =
"left"><b>Description
</b></TD></TR>
345 <pre><a name =
"cmp_fn3735929186">cmp_fn
</a></pre>
351 <pre><a href =
"#Cmp_Fn3735929122">Cmp_Fn
</a></pre>
357 <p>Comparison functor type.
</p>
366 <pre><a name =
"node_updator3735929843">node_updator
</a></pre>
372 <pre><a href =
"#Node_Updator3735929779">Node_Updator
</a></pre>
378 <p>Node updator type.
</p>
388 <a name =
"link6">Iterator definitions.
393 <table WIDTH =
"100%" BORDER =
"1">
394 <TR><TD Width =
"30%" ALIGN =
"left"><b>Type
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Definition
</b></TD><TD Width =
"15%" ALIGN =
"left"><b>Description
</b></TD></TR>
399 <pre><a name =
"const_iterator3735930079">const_iterator
</a></pre>
405 <pre>Underlying data-structure's const range-type iterator.
</pre>
411 <p>Const range-type iterator.
</p>
420 <pre><a name =
"iterator3735929433">iterator
</a></pre>
426 <pre>Underlying data-structure's range-type iterator.
</pre>
432 <p>Range-type iterator.
</p>
441 <pre><a name =
"const_node_iterator3735929535">const_node_iterator
</a></pre>
447 <pre><a href =
"basic_tree_assoc_cntnr_const_node_iterator.html"><tt><font color =
"olive">basic_tree_assoc_cntnr
</font>::const_node_iterator
</tt></a></pre>
453 <p>Const node iterator.
</p>
462 <pre><a name =
"node_iterator3735929950">node_iterator
</a></pre>
468 <pre><a href =
"basic_tree_assoc_cntnr_node_iterator.html"><tt><font color =
"olive">basic_tree_assoc_cntnr
</font>::node_iterator
</tt></a></pre>
474 <p>Node iterator.
</p>
484 <a name =
"link7">Constructors, destructor, and related.
489 <table WIDTH =
"100%" BORDER =
"1">
490 <TR><TD Width =
"45%" ALIGN =
"left"><b>Method
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Description
</b></TD></TR>
496 ~basic_tree_assoc_cntnr
513 <a name =
"link8">Policy access methods.
518 <table WIDTH =
"100%" BORDER =
"1">
519 <TR><TD Width =
"45%" ALIGN =
"left"><b>Method
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Description
</b></TD></TR>
524 <pre><a href =
"#cmp_fn3735929186">cmp_fn
</a> &
532 <p>Access to the
<a href =
"#cmp_fn3735929186"><tt>cmp_fn
</tt></a> object.
</p>
541 <pre><b>const
</b> <a href =
"#cmp_fn3735929186">cmp_fn
</a> &
543 ()
<b>const
</b></pre>
549 <p>Const access to the
<a href =
"#cmp_fn3735929186"><tt>cmp_fn
</tt></a> object.
</p>
558 <pre><a href =
"#node_updator3735929843">node_updator
</a> &
566 <p>Access to the
<a href =
"#node_updator3735929843"><tt>node_updator
</tt></a> object.
</p>
575 <pre><b>const
</b> <a href =
"#node_updator3735929843">node_updator
</a> &
577 ()
<b>const
</b></pre>
583 <p>Const access to the
<a href =
"#node_updator3735929843"><tt>node_updator
</tt></a> object.
</p>
593 <a name =
"link9">Erase methods.
598 <table WIDTH =
"100%" BORDER =
"1">
599 <TR><TD Width =
"45%" ALIGN =
"left"><b>Method
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Description
</b></TD></TR>
604 <pre><b>inline
</b> <a href =
"#size_type3735929547">size_type
</a>
606 (
<a href =
"#const_key_reference3735929552">const_key_reference
</a> r_key)
</pre>
612 <p>Erases the value_type associated with
<font color =
"#666666"><tt>r_key
</tt></font>; returns the number of value_types erased (
0 or
1).
</p>
621 <pre><b>inline
</b> <a href =
"#iterator3735929433">iterator
</a>
623 (
<a href =
"#iterator3735929433">iterator
</a> it)
</pre>
629 <p>Erases the value_type corresponding to the
<a href =
"#iterator3735929433"><tt>iterator
</tt></a> <font color =
"#666666"><tt>it
</tt></font>. Returns the
<a href =
"#iterator3735929433"><tt>iterator
</tt></a> corresponding to the next value_type.
</p>
639 <a name =
"link10">Node-Iteration methods.
644 <table WIDTH =
"100%" BORDER =
"1">
645 <TR><TD Width =
"45%" ALIGN =
"left"><b>Method
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Description
</b></TD></TR>
650 <pre><b>inline
</b> <a href =
"#node_iterator3735929950">node_iterator
</a>
658 <p>Returns a
<a href =
"#node_iterator3735929950"><tt>node_iterator
</tt></a> corresponding to the value_type at the root of the tree.
</p>
667 <pre><b>inline
</b> <a href =
"#const_node_iterator3735929535">const_node_iterator
</a>
669 ()
<b>const
</b></pre>
675 <p>Returns a
<a href =
"#const_node_iterator3735929535"><tt>const_node_iterator
</tt></a> corresponding to the value_type at the root of the tree.
</p>
684 <pre><b>inline
</b> <a href =
"#node_iterator3735929950">node_iterator
</a>
692 <p>Returns a
<a href =
"#node_iterator3735929950"><tt>node_iterator
</tt></a> corresponding to a value_type just after a leaf of the tree.
</p>
701 <pre><b>inline
</b> <a href =
"#const_node_iterator3735929535">const_node_iterator
</a>
703 ()
<b>const
</b></pre>
709 <p>Returns a
<a href =
"#const_node_iterator3735929535"><tt>const_node_iterator
</tt></a> corresponding to a value_type just after a leaf of the tree.
</p>
719 <a name =
"link11">Split and join methods.
724 <table WIDTH =
"100%" BORDER =
"1">
725 <TR><TD Width =
"45%" ALIGN =
"left"><b>Method
</b></TD><TD Width =
"55%" ALIGN =
"left"><b>Description
</b></TD></TR>
732 (
<font color =
"olive">basic_tree_assoc_cntnr
</font> &r_other)
</pre>
738 <p>Joins two trees. When this function returns,
<font color =
"#666666"><tt>r_other
</tt></font> will be empty.
</p>
747 <pre><b>inline
</b> <b>void
</b>
749 (
<a href =
"#const_key_reference3735929552">const_key_reference
</a> r_key,
750 <font color =
"olive">basic_tree_assoc_cntnr
</font> &r_other)
</pre>
756 <p>Joins two trees. When this function returns,
<font color =
"#666666"><tt>r_other
</tt></font> will be empty.
</p>