summaryrefslogtreecommitdiff
path: root/libstdc++-v3/doc/html/ext/pb_ds/sample_update_policy.html
blob: 8a286c74c71cc17eb927539bc9c6e3bdc7d4c979 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <meta name="generator" content=
  "HTML Tidy for Linux/x86 (vers 12 April 2005), see www.w3.org" />

  <title>sample_update_policy Interface</title>
  <meta http-equiv="Content-Type" content=
  "text/html; charset=us-ascii" />
  </head>

<body>
  <div id="page">
    <h1><tt>sample_update_policy</tt> Interface</h1>

    <p>A sample list-update policy.</p>

    <p>This class serves to show the interface a list update
    functor needs to support.</p>

    <p>Defined in: <a href=
    "http://gcc.gnu.org/viewcvs/*checkout*/trunk/libstdc%2B%2B-v3/include/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp"><tt>sample_update_policy.hpp</tt></a></p>

    <h2><a name="link1" id="link1">Public Methods</a></h2>

    <h3><a name="link2" id="link2">Constructors, destructor, and
    related.</a></h3>

    <table class="c1" width="100%" border="1" summary="Methods">
      <tr>
        <td width="45%" align="left"><b>Method</b></td>

        <td width="55%" align="left"><b>Description</b></td>
      </tr>

      <tr>
        <td>
          <pre>
  sample_update_policy
  ()
</pre>
        </td>

        <td>
          <p>Default constructor.</p>

          <p>Must be default constructable.</p>
        </td>
      </tr>

      <tr>
        <td>
          <pre>
  sample_update_policy
  (<b>const</b> sample_update_policy &amp;other)
</pre>
        </td>

        <td>
          <p>Copy constructor.</p>

          <p>Must be copy constructable.</p>
        </td>
      </tr>

      <tr>
        <td>
          <pre>
<b>inline</b> <b>void</b>
  swap
  (sample_update_policy &amp;other)
</pre>
        </td>

        <td>
          <p>Swaps content.</p>

          <p>Must be swappable (if there is such a word).</p>
        </td>
      </tr>
    </table>

    <h2><a name="link3" id="link3">Protected Types and
    Constants</a></h2>

    <h3><a name="link4" id="link4">Metadata definitions.</a></h3>

    <table class="c1" width="100%" border="1" summary="Types">
      <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>

      <tr>
        <td>
          <pre>
<a name="metadata_type2849297114" id=
"metadata_type2849297114">metadata_type</a>
</pre>
        </td>

        <td>
          <pre>
Some metadata type.
</pre>
        </td>

        <td>
          <p>Metadata on which this functor operates.</p>

          <p>The <tt><b>class</b></tt> must declare the metadata
          type on which it operates; the list-update based
          containers will append to each node an object of this
          type.</p>
        </td>
      </tr>
    </table>

    <h2><a name="link5" id="link5">Protected Methods</a></h2>

    <h3><a name="link6" id="link6">Metadata operations.</a></h3>

    <table class="c1" width="100%" border="1" summary="Methods">
      <tr>
        <td width="45%" align="left"><b>Method</b></td>

        <td width="55%" align="left"><b>Description</b></td>
      </tr>

      <tr>
        <td>
          <pre>
<a href="#metadata_type2849297114"><tt>metadata_type</tt></a>
  <b>operator</b>()
  () <b>const</b>
</pre>
        </td>

        <td>
          <p>Creates a metadata object.</p>

          <p>A list-update based container object will call this
          method to create a metadata type when a node is
          created.</p>
        </td>
      </tr>

      <tr>
        <td>
          <pre>
<b>bool</b> 
  <b>operator</b>()
  (metadata_reference r_data) <b>const</b>
</pre>
        </td>

        <td>
          <p>Decides whether a metadata object should be moved to
          the front of the list. A list-update based containers
          object will call this method to decide whether to move a
          node to the front of the list. The method should return
          <tt><b>true</b></tt> if the node should be moved to the
          front of the list.</p>

          <p><tt>metadata_reference</tt> is a reference to a
          <a href=
          "#metadata_type2849297114"><tt>metadata_type</tt></a>.</p>
        </td>
      </tr>
    </table>
  </div>
</body>
</html>