Dead
[official-gcc.git] / gomp-20050608-branch / libstdc++-v3 / docs / html / ext / pb_assoc / interface.html
blob11bf5d152276d0b4b15f4cf6c0eef9fe803f304a
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <HTML>
3 <HEAD>
4 <TITLE>Interface</TITLE>
5 <META NAME="Generator" content="Microsoft Visual Studio .NET 7.1">
6 </HEAD>
7 <BODY>
9 <H1>Interface</H1>
10 <p>
11 Following is the library's interface:
12 </p>
13 <ol>
14 <li> <a href = "tutorial.html">Short Tutorial</a> is a short tutorial. </li>
15 <li> <a href="#containers">Containers</a> describes the containers of
16 the library.
17 </li>
18 <li>
19 <a href="#ds_pol">Data-Type Policies</a> describes data-type policies.
20 </li>
21 <li>
22 <a href="#ds_tag">Data-Structure Tags and Traits</a> describes
23 tags and traits identifying the underlying data-structure and its behaviour.
24 </li>
25 <li>
26 <a href="#ms_tag">Mapping-Semantics Tags and Traits</a> describes
27 tags and traits identifying the mapping-semantics.
28 </li>
29 <li>
30 <a href = "#ds_policy_classes">Data-Structure Policy Classes</a> describes
31 policies for configuring underlying data-structures.
32 </li>
33 <li>
34 <a href="#exceptions">Exceptions</a> Subsection desribes exception classes.
35 </li>
36 </ol>
39 <hr>
43 <h2><a name = "containers">Containers</a></h2>
45 <p>
46 <a href = "overview.html">Overview</a> and
47 <a href = "ds_gen.html">Data-Structure Genericity</a> discuss relevant design
48 points.
49 </p>
51 <h6 align = "center">
52 <a name = "cd">
53 <img src = "cd.jpg" width = "70%" alt = "no image">
54 </h6>
55 </a>
56 <h6 align = "center">
57 class hierarchy.
58 </h6>
60 <ol>
61 <li>
62 Basic Associative-Containers:
63 <ol>
64 <li><a href = "basic_assoc_cntnr.html"><tt>basic_assoc_cntnr</tt></a> - basic associative-container for the &quot;map&quot; case</li>
65 <li><a href = "basic_assoc_cntnr_no_data.html"><tt>basic_assoc_cntnr</tt></a> - basic associative-container for the &quot;set&quot; case</li>
66 <li><a href = "basic_assoc_cntnr_compound_data.html"><tt>basic_assoc_cntnr</tt></a> - basic associative-container for the &quot;multimap&quot; case</li>
67 </ol>
68 </li>
69 <li>
70 Hash-Based Associative-Containers:
71 <ol>
72 <li><a href = "basic_hash_assoc_cntnr.html"><tt>basic_hash_assoc_cntnr</tt></a> - basic hash-based associative-container </li>
73 <li><a href = "cc_hash_assoc_cntnr.html"><tt>cc_hash_assoc_cntnr</tt></a> - collision-chaining hash-based associative-container </li>
74 <li><a href = "gp_hash_assoc_cntnr.html"><tt>gp_hash_assoc_cntnr</tt></a> - (general) probing hash-based associative-container </li>
75 </ol>
76 </li>
77 <li>
78 Tree-Based Associative-Containers:
79 <ol>
80 <li><a href = "basic_tree_assoc_cntnr.html"><tt>basic_tree_assoc_cntnr</tt></a> - basic tree-based associative-container </li>
81 <li><a href = "basic_tree_assoc_cntnr_rev.html"><tt>basic_tree_assoc_cntnr</tt></a> - basic tree-based associative-container with reverse iteration </li>
82 <li><a href = "tree_assoc_cntnr.html"><tt>tree_assoc_cntnr</tt></a> - tree-based associative-container </li>
83 </ol>
84 </li>
85 <li>
86 List-Based Associative-Contaiers:
87 <ol>
88 <li><a href = "lu_assoc_cntnr.html"><tt>lu_assoc_cntnr</tt></a> - list-based update-policy associative container</li>
89 </ol>
90 </li>
91 </ol>
94 <hr>
97 <h2><a name = "ds_pol">Data-Type Policies</a></h2>
99 <p>
100 <a href = "overview.html">Overview</a> and
101 <a href = "ms_gen.html">Mapping-Semantic Genericity</a> discuss relevant design
102 points.
103 </p>
105 <ol>
106 <li><a href = "null_data_type.html"><tt>null_data_type</tt></a>
107 </li>
108 <li><a href = "compound_data_type.html"><tt>compound_data_type</tt></a>
109 </li>
110 </ol>
112 <hr>
117 <h2><a name = "ds_tag">Data-Structure Tags and Traits</a></h2>
121 </p>
123 <h3>Data-Structure Tags</h3>
125 <h6 align = "center">
126 <a name = "cd">
127 <img src = "ds_tag_cd.jpg" width = "70%" alt = "no image">
128 </h6>
129 </a>
130 <h6 align = "center">
131 Data-Structure Tag class hierarchy.
132 </h6>
134 <ol>
135 <li> <a href = "basic_ds_tag.html"><tt>basic_ds_tag</tt></a></li>
136 <li> <a href = "basic_hash_ds_tag.html"><tt>basic_hash_ds_tag</tt></a></li>
137 <li> <a href = "cc_hash_ds_tag.html"><tt>cc_hash_ds_tag</tt></a></li>
138 <li> <a href = "gp_hash_ds_tag.html"><tt>gp_hash_ds_tag</tt></a></li>
139 <li> <a href = "basic_tree_ds_tag.html"><tt>basic_tree_ds_tag</tt></a></li>
140 <li> <a href = "rb_tree_ds_tag.html"><tt>rb_tree_ds_tag</tt></a></li>
141 <li> <a href = "splay_tree_ds_tag.html"><tt>splay_tree_ds_tag</tt></a></li>
142 <li> <a href = "ov_tree_ds_tag.html"><tt>ov_tree_ds_tag</tt></a></li>
143 <li> <a href = "lu_ds_tag.html"><tt>lu_ds_tag</tt></a></li>
144 <li> <a href = "compound_ds_tag.html"><tt>compound_ds_tag</tt></a></li>
145 </ol>
148 <h3>Invalidation-Guarantee Tags</h3>
150 <h6 align = "center">
151 <a name = "cd">
152 <img src = "invalidation_guarantee_cd.jpg" width = "70%" alt = "no image">
153 </h6>
154 </a>
155 <h6 align = "center">
156 Invalidation guarantees class hierarchy.
157 </h6>
159 <ol>
160 <li> <a href = "basic_invalidation_guarantee.html"><tt>basic_invalidation_guarantee</tt></a></li>
161 <li> <a href = "find_invalidation_guarantee.html"><tt>find_invalidation_guarantee</tt></a></li>
162 <li> <a href = "range_invalidation_guarantee.html"><tt>range_invalidation_guarantee</tt></a></li>
163 </ol>
165 <h3>Data-Structure Traits</h3>
167 <ol>
168 <li> <a href = "ds_traits.html"><tt>ds_traits</tt></a></li>
169 </ol>
172 <hr>
175 <h2><a name = "ms_tag">Mapping-Semantics Tags and Traits</a></h2>
179 </p>
181 <h3>Mapping-Semantics Tags</h3>
183 <h6 align = "center">
184 <a name = "cd">
185 <img src = "ms_tag_cd.jpg" width = "70%" alt = "no image">
186 </h6>
187 </a>
188 <h6 align = "center">
189 Mapping-Semantics Tag class hierarchy.
190 </h6>
192 <ol>
193 <li> <a href = "basic_ms_tag.html"><tt>basic_ms_tag</tt></a></li>
194 <li> <a href = "data_enabled_ms_tag.html"><tt>data_enabled_ms_tag</tt></a></li>
195 <li> <a href = "compound_data_enabled_ms_tag.html"><tt>compound_data_enabled_ms_tag</tt></a></li>
196 </ol>
199 <h3>Mapping-Semantics Traits</h3>
201 <ol>
202 <li> <a href = "ms_traits.html"><tt>ms_traits</tt></a></li>
203 </ol>
206 <hr>
209 <h2><a name="ds_policy_classes">Data-Structure Policy Classes</a></h2>
212 <h3>Hash-Related Policies</h3>
215 </p><a href = "hash_based_containers.html">Hash-Based Containers</a> describes
216 relevant design points.
217 </p>
219 <h4>Hash and Probe Policies</h4>
220 <ol>
221 <li> Hash Functions:
222 <ol>
223 <li> <a href="null_hash_fn.html"><tt>null_hash_fn</tt></a></li>
224 </ol>
225 </li>
226 <li> Range-Hashing Functions:
227 <ol>
228 <li><a href="sample_range_hashing.html">Interface of a Range-Hashing Function</a></li>
229 <li> <a href="direct_mask_range_hashing.html"><tt>direct_mask_range_hashing</tt></a></li>
230 <li> <a href="direct_mod_range_hashing.html"><tt>direct_mod_range_hashing</tt></a></li>
231 </ol>
232 </li>
233 <li> Probe Functions:
234 <ol>
235 <li> <a href="sample_probe_fn.html">Interface of a Probe Function</a></li>
236 <li> <a href="linear_probe_fn.html"><tt>linear_probe_fn</tt></a></li>
237 <li> <a href="quadratic_probe_fn.html"><tt>quadratic_probe_fn</tt></a></li>
238 <li> <a href="null_probe_fn.html"><tt>null_probe_fn</tt></a></li>
239 </ol>
240 </li>
241 <li> Ranged-Hash Functions:
242 <ol>
243 <li><a href="ranged_hash_fn.html">Interface of a Ranged-Hash Function</a></li>
244 </ol>
245 </li>
246 <li> Ranged-Probe Functions:
247 <ol>
248 <li> <a href="ranged_probe_fn.html">Interface of a Ranged-Probe function</a></li>
249 </ol>
250 </li>
251 </ol>
255 <h4>Resize Policies</h4>
257 <h6 align = "center">
258 <a name = "resize_policy_cd">
259 <img src = "resize_policy_cd.jpg" width = "70%" alt = "no image">
260 </a>
261 </h6>
262 <h6 align = "center">
263 Resize policy class diagram.
264 </h6>
266 <ol>
267 <li> Resize Policies:
268 <ol>
269 <li> <a href="sample_resize_policy.html">Interface of a Resize Policy</a>
270 <li> <a href="ht_standard_resize_policy.html"><tt>ht_standard_resize_policy</tt></a></li>
271 </ol>
272 </li>
273 <li> Size Policies:
274 <ol>
275 <li> <a href="sample_size_policy.html">Interface of a Size Policy</a></li>
276 <li> <a href="ht_exponential_size_policy.html"><tt>ht_exponential_size_policy</tt></a></li>
277 <li> <a href="ht_prime_size_policy.html"><tt>ht_prime_size_policy</tt></a></li>
278 </ol>
279 </li>
280 <li> Trigger Policies:
281 <ol>
282 <li><a href="sample_resize_trigger.html">Interface of a Trigger Policy</a></li>
283 <li> <a href="ht_load_check_resize_trigger.html"><tt>ht_load_check_resize_trigger</tt></a></li>
284 <li> <a href="ht_max_collision_check_grow_resize_trigger.html"><tt>ht_max_collision_check_grow_resize_trigger</tt></a></li>
285 </ol>
286 </li>
287 </ol>
291 <h3>Tree Node-Update Policies</h3>
292 <ol>
293 <li> <a href = "node_invariants.html">Design of Node Update Policies</a></li>
294 <li> <a href="sample_node_updator.html">Interface of a Node Updator Policy</a></li>
295 <li> Order-Statistics (Finding Entries by Key Order):
296 <ol>
297 <li> <a href="order_statistics_key.html"><tt>order_statistics_key</tt></a></li>
298 <li> <a href="order_statistics_key_cmp.html"><tt>order_statistics_key_cmp</tt></a></li>
299 <li> <a href="order_statistics_node_updator.html"><tt>order_statistics_node_updator</tt></a></li>
300 <li> <a href="find_by_order.html"><tt>find_by_order</tt></a></li>
301 <li> <a href="order_by_key.html"><tt>order_by_key</tt></a></li>
302 </ol>
303 </li>
304 <li> <a href="null_node_updator.html"><tt>null_node_updator</tt></a></li>
305 </ol>
308 <h3>List Update Policies</h3>
309 <ol>
310 <li> <a href = "list_updates.html">Design of List Update Policies</a> </li>
311 <li> <a href = "sample_update_policy.html">Interface of a List Update Policy</a> </li>
312 <li> Move-to-Front:
313 <ol>
314 <li> <a href="move_to_front_update_metadata.html"><tt>move_to_front_update_metadata</tt></a></li>
315 <li> <a href="move_to_front_update_policy.html"><tt>move_to_front_update_policy</tt></a></li>
316 </ol>
317 </li>
318 <li> Counter:
319 <ol>
320 <li> <a href="counter_update_metadata.html"><tt>counter_update_metadata</tt></a></li>
321 <li> <a href="counter_update_policy.html"><tt>counter_update_policy</tt></a></li>
322 </ol>
323 </li>
324 </ol>
327 <hr>
332 <h2><a name="exceptions">Exceptions</a></h2>
333 <ol>
334 <li> <a href="pb_assoc_ex.html"><tt>pb_assoc_ex</tt></a></li>
335 <li> <a href="cannot_insert.html"><tt>cannot_insert</tt></a></li>
336 <li> <a href="cannot_join.html"><tt>cannot_join</tt></a></li>
337 <li> <a href="cannot_resize.html"><tt>cannot_resize</tt></a></li>
338 </ol>
341 </BODY>
342 </HTML>