OSDN Git Service

2008-09-22 Benjamin Kosnik <bkoz@redhat.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / doc / html / ext / pb_ds / tree_order_statistics_node_update.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5 <head>
6   <meta name="generator" content=
7   "HTML Tidy for Linux/x86 (vers 12 April 2005), see www.w3.org" />
8
9   <title>tree_order_statistics_node_update Interface</title>
10   <meta http-equiv="Content-Type" content=
11   "text/html; charset=us-ascii" />
12   </head>
13
14 <body>
15   <div id="page">
16     <h1><tt>tree_order_statistics_node_update</tt> Interface</h1>
17
18     <p>Functor updating ranks of entrees.</p>
19
20     <p>Defined in: <a href=
21     "http://gcc.gnu.org/viewcvs/*checkout*/trunk/libstdc%2B%2B-v3/include/ext/pb_ds/tree_policy.hpp"><tt>tree_policy.hpp</tt></a></p>
22
23     <h2><a name="link1" id="link1">Template Parameters</a></h2>
24
25     <table class="c1" width="100%" border="1" summary=
26     "Template Parameters">
27       <tr>
28         <td width="20%" align="left"><b>Parameter</b></td>
29
30         <td width="50%" align="left"><b>Description</b></td>
31
32         <td width="30%" align="left"><b>Default Value</b></td>
33       </tr>
34
35       <tr>
36         <td>
37           <pre>
38 <a name="Const_Node_Iterator1933878761" id=
39 "Const_Node_Iterator1933878761"><b>class</b> Const_Node_Iterator</a>
40 </pre>
41         </td>
42
43         <td>
44           <p>Const node iterator type.</p>
45         </td>
46
47         <td>-</td>
48       </tr>
49
50       <tr>
51         <td>
52           <pre>
53 <a name="Node_Iterator4206909839" id=
54 "Node_Iterator4206909839"><b>class</b> Node_Iterator</a>
55 </pre>
56         </td>
57
58         <td>
59           <p>Node iterator type.</p>
60         </td>
61
62         <td>-</td>
63       </tr>
64
65       <tr>
66         <td>
67           <pre>
68 <a name="Cmp_Fn294335" id="Cmp_Fn294335"><b>class</b> Cmp_Fn</a>
69 </pre>
70         </td>
71
72         <td>
73           <p>Comparison functor.</p>
74         </td>
75
76         <td>-</td>
77       </tr>
78
79       <tr>
80         <td>
81           <pre>
82 <a name="Allocator35940069" id=
83 "Allocator35940069"><b>class</b> Allocator</a>
84 </pre>
85         </td>
86
87         <td>
88           <p>Allocator type.</p>
89         </td>
90
91         <td>-</td>
92       </tr>
93     </table>
94
95     <h2><a name="link2" id="link2">Public Types and
96     Constants</a></h2>
97
98     <h3><a name="link3" id="link3">Policy Definitions</a></h3>
99
100     <table class="c1" width="100%" border="1" summary="Types">
101       <tr>
102         <td width="30%" align="left"><b>Type</b></td>
103
104         <td width="55%" align="left"><b>Definition</b></td>
105
106         <td width="15%" align="left"><b>Description</b></td>
107       </tr>
108
109       <tr>
110         <td>
111           <pre>
112 <a name="cmp_fn394495" id="cmp_fn394495">cmp_fn</a>
113 </pre>
114         </td>
115
116         <td>
117           <pre>
118 <a href="#Cmp_Fn294335"><tt>Cmp_Fn</tt></a>
119 </pre>
120         </td>
121
122         <td>
123           <p><a href="#Allocator35940069"><tt>Allocator</tt></a>
124           type.</p>
125         </td>
126       </tr>
127
128       <tr>
129         <td>
130           <pre>
131 <a name="allocator48440069" id="allocator48440069">allocator</a>
132 </pre>
133         </td>
134
135         <td>
136           <pre>
137 <a href="#Allocator35940069"><tt>Allocator</tt></a>
138 </pre>
139         </td>
140
141         <td>
142           <p><a href="#Allocator35940069"><tt>Allocator</tt></a>
143           type.</p>
144         </td>
145       </tr>
146     </table>
147
148     <h3><a name="link4" id="link4">General Definitions</a></h3>
149
150     <table class="c1" width="100%" border="1" summary="Types">
151       <tr>
152         <td width="30%" align="left"><b>Type</b></td>
153
154         <td width="55%" align="left"><b>Definition</b></td>
155
156         <td width="15%" align="left"><b>Description</b></td>
157       </tr>
158
159       <tr>
160         <td>
161           <pre>
162 <a name="size_type55424436" id="size_type55424436">size_type</a>
163 </pre>
164         </td>
165
166         <td>
167           <pre>
168 <b>typename</b> <a href=
169 "#allocator48440069"><tt>allocator</tt></a>::size_type
170 </pre>
171         </td>
172
173         <td>
174           <p>Size type.</p>
175         </td>
176       </tr>
177     </table>
178
179     <h3><a name="link5" id="link5">Key-type Definitions</a></h3>
180
181     <table class="c1" width="100%" border="1" summary="Types">
182       <tr>
183         <td width="30%" align="left"><b>Type</b></td>
184
185         <td width="55%" align="left"><b>Definition</b></td>
186
187         <td width="15%" align="left"><b>Description</b></td>
188       </tr>
189
190       <tr>
191         <td>
192           <pre>
193 <a name="key_type10393186" id="key_type10393186">key_type</a>
194 </pre>
195         </td>
196
197         <td>
198           <pre>
199 The instantiating container's key type.
200 </pre>
201         </td>
202
203         <td>
204           <p>Key type.</p>
205         </td>
206       </tr>
207
208       <tr>
209         <td>
210           <pre>
211 <a name="const_key_reference3185471705" id=
212 "const_key_reference3185471705">const_key_reference</a>
213 </pre>
214         </td>
215
216         <td>
217           <pre>
218 The instantiating container's const key reference type.
219 </pre>
220         </td>
221
222         <td>
223           <p>Const key reference.</p>
224         </td>
225       </tr>
226     </table>
227
228     <h3><a name="link6" id="link6">Metadata-Type
229     Definitions</a></h3>
230
231     <table class="c1" width="100%" border="1" summary="Types">
232       <tr>
233         <td width="30%" align="left"><b>Type</b></td>
234
235         <td width="55%" align="left"><b>Definition</b></td>
236
237         <td width="15%" align="left"><b>Description</b></td>
238       </tr>
239
240       <tr>
241         <td>
242           <pre>
243 <a name="metadata_type2849297114" id=
244 "metadata_type2849297114">metadata_type</a>
245 </pre>
246         </td>
247
248         <td>
249           <pre>
250 <a href="#size_type55424436"><tt>size_type</tt></a>
251 </pre>
252         </td>
253
254         <td>
255           <p>Metadata type.</p>
256         </td>
257       </tr>
258     </table>
259
260     <h3><a name="link7" id="link7">Iterator Definitions</a></h3>
261
262     <table class="c1" width="100%" border="1" summary="Types">
263       <tr>
264         <td width="30%" align="left"><b>Type</b></td>
265
266         <td width="55%" align="left"><b>Definition</b></td>
267
268         <td width="15%" align="left"><b>Description</b></td>
269       </tr>
270
271       <tr>
272         <td>
273           <pre>
274 <a name="const_node_iterator4205924553" id=
275 "const_node_iterator4205924553">const_node_iterator</a>
276 </pre>
277         </td>
278
279         <td>
280           <pre>
281 <a href=
282 "#Const_Node_Iterator1933878761"><tt>Const_Node_Iterator</tt></a>
283 </pre>
284         </td>
285
286         <td>
287           <p>Const node iterator type.</p>
288         </td>
289       </tr>
290
291       <tr>
292         <td>
293           <pre>
294 <a name="node_iterator3431975247" id=
295 "node_iterator3431975247">node_iterator</a>
296 </pre>
297         </td>
298
299         <td>
300           <pre>
301 <a href="#Node_Iterator4206909839"><tt>Node_Iterator</tt></a>
302 </pre>
303         </td>
304
305         <td>
306           <p>Node iterator type.</p>
307         </td>
308       </tr>
309
310       <tr>
311         <td>
312           <pre>
313 <a name="const_iterator98626788" id=
314 "const_iterator98626788">const_iterator</a>
315 </pre>
316         </td>
317
318         <td>
319           <pre>
320 <b>typename</b> <a href=
321 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>::value_type
322 </pre>
323         </td>
324
325         <td>
326           <p>Const iterator type.</p>
327         </td>
328       </tr>
329
330       <tr>
331         <td>
332           <pre>
333 <a name="iterator10418194" id="iterator10418194">iterator</a>
334 </pre>
335         </td>
336
337         <td>
338           <pre>
339 <b>typename</b> <a href=
340 "#node_iterator3431975247"><tt>node_iterator</tt></a>::value_type
341 </pre>
342         </td>
343
344         <td>
345           <p>Iterator type.</p>
346         </td>
347       </tr>
348     </table>
349
350     <h2><a name="link8" id="link8">Public Methods</a></h2>
351
352     <h3><a name="link9" id="link9">Find-Type Methods</a></h3>
353
354     <table class="c1" width="100%" border="1" summary="Methods">
355       <tr>
356         <td width="45%" align="left"><b>Method</b></td>
357
358         <td width="55%" align="left"><b>Description</b></td>
359       </tr>
360
361       <tr>
362         <td>
363           <pre>
364 <b>inline</b> <a href=
365 "#const_iterator98626788"><tt>const_iterator</tt></a>
366   find_by_order
367   (<a href=
368 "#size_type55424436"><tt>size_type</tt></a> order) <b>const</b>
369 </pre>
370         </td>
371
372         <td>
373           <p>Finds an entry by order. Returns a <a href=
374           "#const_iterator98626788"><tt>const_iterator</tt></a> to
375           the entry with the order <span class=
376           "c1"><tt>order</tt></span>, or a <a href=
377           "#const_iterator98626788"><tt>const_iterator</tt></a> to
378           the container object's end if <span class=
379           "c1"><tt>order</tt></span> is at least the size of the
380           container object.</p>
381         </td>
382       </tr>
383
384       <tr>
385         <td>
386           <pre>
387 <b>inline</b> <a href="#iterator10418194"><tt>iterator</tt></a>
388   find_by_order
389   (<a href="#size_type55424436"><tt>size_type</tt></a> order)
390 </pre>
391         </td>
392
393         <td>
394           <p>Finds an entry by order. Returns an <a href=
395           "#iterator10418194"><tt>iterator</tt></a> to the entry
396           with the order <span class="c1"><tt>order</tt></span>, or
397           an <a href="#iterator10418194"><tt>iterator</tt></a> to
398           the container object's end if <span class=
399           "c1"><tt>order</tt></span> is at least the size of the
400           container object.</p>
401         </td>
402       </tr>
403
404       <tr>
405         <td>
406           <pre>
407 <b>inline</b> <a href="#size_type55424436"><tt>size_type</tt></a>
408   order_of_key
409   (<a href=
410 "#const_key_reference3185471705"><tt>const_key_reference</tt></a> r_key) <b>const</b>
411 </pre>
412         </td>
413
414         <td>
415           <p>Returns the order of a key within a sequence. For
416           example, if <span class="c1"><tt>r_key</tt></span> is the
417           smallest key, this method will return 0; if <span class=
418           "c1"><tt>r_key</tt></span> is a key between the smallest
419           and next key, this method will return 1; if <span class=
420           "c1"><tt>r_key</tt></span> is a key larger than the
421           largest key, this method will return the size of r_c.</p>
422         </td>
423       </tr>
424     </table>
425
426     <h2><a name="link10" id="link10">Protected Types and
427     Constants</a></h2>
428
429     <h3><a name="link11" id="link11">Value-type
430     Definitions</a></h3>
431
432     <table class="c1" width="100%" border="1" summary="Types">
433       <tr>
434         <td width="30%" align="left"><b>Type</b></td>
435
436         <td width="55%" align="left"><b>Definition</b></td>
437
438         <td width="15%" align="left"><b>Description</b></td>
439       </tr>
440
441       <tr>
442         <td>
443           <pre>
444 <a name="const_reference495461441" id=
445 "const_reference495461441">const_reference</a>
446 </pre>
447         </td>
448
449         <td>
450           <pre>
451 The instantiating container's const reference  type.
452 </pre>
453         </td>
454
455         <td>
456           <p>Const reference to the container's value-type.</p>
457         </td>
458       </tr>
459
460       <tr>
461         <td>
462           <pre>
463 <a name="const_pointer878814947" id=
464 "const_pointer878814947">const_pointer</a>
465 </pre>
466         </td>
467
468         <td>
469           <pre>
470 The instantiating container's const pointer  type.
471 </pre>
472         </td>
473
474         <td>
475           <p>Const pointer to the container's value-type.</p>
476         </td>
477       </tr>
478
479       <tr>
480         <td>
481           <pre>
482 <a name="const_metadata_reference1108857465" id=
483 "const_metadata_reference1108857465">const_metadata_reference</a>
484 </pre>
485         </td>
486
487         <td>
488           <pre>
489 <b>typename</b> <a href=
490 "#Allocator35940069"><tt>Allocator</tt></a>::<b>template</b> rebind&lt;
491     <a href=
492 "#metadata_type2849297114"><tt>metadata_type</tt></a>&gt;::other::<a href="#const_reference495461441"><tt>const_reference</tt></a>
493 </pre>
494         </td>
495
496         <td>
497           <p>Const metadata reference.</p>
498         </td>
499       </tr>
500
501       <tr>
502         <td>
503           <pre>
504 <a name="metadata_reference583863863" id=
505 "metadata_reference583863863">metadata_reference</a>
506 </pre>
507         </td>
508
509         <td>
510           <pre>
511 <b>typename</b> <a href=
512 "#Allocator35940069"><tt>Allocator</tt></a>::<b>template</b> rebind&lt;
513     <a href=
514 "#metadata_type2849297114"><tt>metadata_type</tt></a>&gt;::other::reference
515 </pre>
516         </td>
517
518         <td>
519           <p>Metadata reference.</p>
520         </td>
521       </tr>
522     </table>
523
524     <h2><a name="link12" id="link12">Protected Methods</a></h2>
525
526     <h3><a name="link13" id="link13">Operators</a></h3>
527
528     <table class="c1" width="100%" border="1" summary="Methods">
529       <tr>
530         <td width="45%" align="left"><b>Method</b></td>
531
532         <td width="55%" align="left"><b>Description</b></td>
533       </tr>
534
535       <tr>
536         <td>
537           <pre>
538 <b>inline</b> <b>void</b>
539   <b>operator</b>()
540   (<a href=
541 "#node_iterator3431975247"><tt>node_iterator</tt></a> node_it,
542     <a href=
543 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a> end_nd_it) <b>const</b>
544 </pre>
545         </td>
546
547         <td>
548           <p>Updates the rank of a node through a <a href=
549           "#node_iterator3431975247"><tt>node_iterator</tt></a>
550           <span class="c1"><tt>node_it</tt></span>; <span class=
551           "c1"><tt>end_nd_it</tt></span> is the end node <a href=
552           "#iterator10418194"><tt>iterator</tt></a>.</p>
553         </td>
554       </tr>
555     </table>
556
557     <h3><a name="link14" id="link14">Constructors, destructor, and
558     related</a></h3>
559
560     <table class="c1" width="100%" border="1" summary="Methods">
561       <tr>
562         <td width="45%" align="left"><b>Method</b></td>
563
564         <td width="55%" align="left"><b>Description</b></td>
565       </tr>
566
567       <tr>
568         <td>
569           <pre>
570 <b>virtual</b> 
571   ~tree_order_statistics_node_update
572   ()
573 </pre>
574         </td>
575
576         <td>
577           <p>Destructor.</p>
578         </td>
579       </tr>
580     </table>
581
582     <h2><a name="link15" id="link15">Private Methods</a></h2>
583
584     <h3><a name="link16" id="link16">Overrides</a></h3>
585
586     <table class="c1" width="100%" border="1" summary="Methods">
587       <tr>
588         <td width="45%" align="left"><b>Method</b></td>
589
590         <td width="55%" align="left"><b>Description</b></td>
591       </tr>
592
593       <tr>
594         <td>
595           <pre>
596 <b>virtual</b> <a href=
597 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
598   node_begin
599   () <b>const</b> = 0
600 </pre>
601         </td>
602
603         <td>
604           <p>Returns the <a href=
605           "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
606           associated with the tree's root node.</p>
607         </td>
608       </tr>
609
610       <tr>
611         <td>
612           <pre>
613 <b>virtual</b> <a href=
614 "#node_iterator3431975247"><tt>node_iterator</tt></a>
615   node_begin
616   () = 0
617 </pre>
618         </td>
619
620         <td>
621           <p>Returns the <a href=
622           "#node_iterator3431975247"><tt>node_iterator</tt></a>
623           associated with the tree's root node.</p>
624         </td>
625       </tr>
626
627       <tr>
628         <td>
629           <pre>
630 <b>virtual</b> <a href=
631 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
632   node_end
633   () <b>const</b> = 0
634 </pre>
635         </td>
636
637         <td>
638           <p>Returns the <a href=
639           "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
640           associated with a just-after leaf node.</p>
641         </td>
642       </tr>
643
644       <tr>
645         <td>
646           <pre>
647 <b>virtual</b> <a href=
648 "#node_iterator3431975247"><tt>node_iterator</tt></a>
649   node_end
650   () = 0
651 </pre>
652         </td>
653
654         <td>
655           <p>Returns the <a href=
656           "#node_iterator3431975247"><tt>node_iterator</tt></a>
657           associated with a just-after leaf node.</p>
658         </td>
659       </tr>
660
661       <tr>
662         <td>
663           <pre>
664 <b>virtual</b> <a href="#cmp_fn394495"><tt>cmp_fn</tt></a> &amp;
665   get_cmp_fn
666   () = 0
667 </pre>
668         </td>
669
670         <td>
671           <p>Access to the <a href=
672           "#cmp_fn394495"><tt>cmp_fn</tt></a> object.</p>
673         </td>
674       </tr>
675     </table>
676   </div>
677 </body>
678 </html>