1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6 <meta name="generator" content=
7 "HTML Tidy for Linux/x86 (vers 12 April 2005), see www.w3.org" />
9 <title>trie Interface</title>
10 <meta http-equiv="Content-Type" content=
11 "text/html; charset=us-ascii" />
16 <h1><tt>trie</tt> Interface</h1>
18 <p>A concrete basic trie-based associative container.</p>
20 <p>Defined in: <a href=
21 "http://gcc.gnu.org/viewcvs/*checkout*/trunk/libstdc%2B%2B-v3/include/ext/pb_ds/assoc_container.hpp"><tt>assoc_container.hpp</tt></a></p>
23 <h2><a name="link1" id="link1">Template Parameters</a></h2>
25 <table class="c1" width="100%" border="1" summary=
26 "Template Parameters">
28 <td width="20%" align="left"><b>Parameter</b></td>
30 <td width="50%" align="left"><b>Description</b></td>
32 <td width="30%" align="left"><b>Default Value</b></td>
38 <a name="Key2501" id="Key2501"><b>typename</b> Key</a>
52 <a name="Mapped318655" id="Mapped318655"><b>typename</b> Mapped</a>
66 <a name="E_Access_Traits686553840" id=
67 "E_Access_Traits686553840"><b>class</b> E_Access_Traits </a>
72 <p>Element-access traits.</p>
81 <a name="Tag278938" id="Tag278938"><b>class</b> Tag </a>
86 <p>Data-structure tag.</p>
89 <td><a href="pat_trie_tag.html"><span class=
90 "c2"><tt>pat_trie_tag</tt></span></a></td>
96 <a name="Node_Update841554648" id=
97 "Node_Update841554648"><b>template</b><
98 <b>typename</b> Const_Node_Iterator,
99 <b>typename</b> Node_Iterator,
100 <b>class</b> E_Access_Traits_,
101 <b>typename</b> Allocator_>
102 <b>class</b> Node_Update </a>
107 <p>Node updater type.</p>
110 "tree_based_containers.html#invariants">Design::Tree-Based
111 Containers::Node Invariants</a> explains this
115 <td><a href="null_trie_node_update.html"><span class=
116 "c2"><tt>null_trie_node_update</tt></span></a></td>
122 <a name="Allocator35940069" id=
123 "Allocator35940069"><b>class</b> Allocator </a>
128 <p>Allocator type.</p>
133 std::allocator<<b>char</b>>
139 <h2><a name="link2" id="link2">Public Types and
142 <h3><a name="link3" id="link3">Policy Definitions</a></h3>
144 <table class="c1" width="100%" border="1" summary="Types">
146 <td width="30%" align="left"><b>Type</b></td>
148 <td width="55%" align="left"><b>Definition</b></td>
150 <td width="15%" align="left"><b>Description</b></td>
156 <a name="e_access_traits1948190928" id=
157 "e_access_traits1948190928">e_access_traits</a>
163 <a href="#E_Access_Traits686553840"><tt>E_Access_Traits</tt></a>
168 <p>Element access traits type.</p>
173 <h3><a name="link4" id="link4">Iterator Definitions</a></h3>
175 <table class="c1" width="100%" border="1" summary="Types">
177 <td width="30%" align="left"><b>Type</b></td>
179 <td width="55%" align="left"><b>Definition</b></td>
181 <td width="15%" align="left"><b>Description</b></td>
187 <a name="const_node_iterator4205924553" id=
188 "const_node_iterator4205924553">const_node_iterator</a>
195 "trie_const_node_iterator.html"><span class=
196 "c2"><tt>const_node_iterator</tt></span></a>
201 <p>Const node iterator.</p>
208 <a name="node_iterator3431975247" id=
209 "node_iterator3431975247">node_iterator</a>
215 <a href="trie_node_iterator.html"><span class=
216 "c2"><tt>node_iterator</tt></span></a>
221 <p>Node iterator.</p>
226 <h2><a name="link5" id="link5">Public Methods</a></h2>
228 <h3><a name="link6" id="link6">Constructors, Destructor, and
231 <table class="c1" width="100%" border="1" summary="Methods">
233 <td width="45%" align="left"><b>Method</b></td>
235 <td width="55%" align="left"><b>Description</b></td>
247 <p>Default constructor.</p>
255 (<b>const</b> <a href=
256 "#E_Access_Traits686553840"><tt>E_Access_Traits</tt></a> &r_e_access_traits)
261 <p>Constructor taking some policy objects. <span class=
262 "c1"><tt>r_e_access_traits</tt></span> will be copied by
264 "#E_Access_Traits686553840"><tt>E_Access_Traits</tt></a>
265 object of the container object.</p>
281 <p>Constructor taking iterators to a range of
282 value_types. The value_types between <span class=
283 "c1"><tt>first_it</tt></span> and <span class=
284 "c1"><tt>last_it</tt></span> will be inserted into the
285 container object.</p>
297 <b>const</b> <a href=
298 "#E_Access_Traits686553840"><tt>E_Access_Traits</tt></a> &r_e_access_traits)
303 <p>Constructor taking iterators to a range of value_types
304 and some policy objects. The value_types between
305 <span class="c1"><tt>first_it</tt></span> and
306 <span class="c1"><tt>last_it</tt></span> will be inserted
307 into the container object.</p>
315 (<b>const</b> <span class=
316 "c2"><tt>trie</tt></span> &other)
321 <p>Copy constructor.</p>
342 <span class="c2"><tt>trie</tt></span> &
344 (<b>const</b> <span class=
345 "c2"><tt>trie</tt></span> &other)
350 <p>Assignment operator.</p>
360 "c2"><tt>trie</tt></span> &other)
365 <p>Swaps content.</p>
370 <h3><a name="link7" id="link7">Policy Access Methods</a></h3>
372 <table class="c1" width="100%" border="1" summary="Methods">
374 <td width="45%" align="left"><b>Method</b></td>
376 <td width="55%" align="left"><b>Description</b></td>
383 "#e_access_traits1948190928"><tt>e_access_traits</tt></a> &
390 <p>Access to the comb_hash_fn object.</p>
398 "#e_access_traits1948190928"><tt>e_access_traits</tt></a> &
405 <p>Const access to the comb_hash_fn object.</p>
410 <h3><a name="link8" id="link8">Node-Iteration Methods</a></h3>
412 <table class="c1" width="100%" border="1" summary="Methods">
414 <td width="45%" align="left"><b>Method</b></td>
416 <td width="55%" align="left"><b>Description</b></td>
422 <a href="#node_iterator3431975247"><tt>node_iterator</tt></a>
429 <p>Returns a <a href=
430 "#node_iterator3431975247"><tt>node_iterator</tt></a>
431 corresponding to the node at the root of the trie.</p>
439 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
446 <p>Returns a <a href=
447 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
448 corresponding to the node at the root of the trie.</p>
455 <a href="#node_iterator3431975247"><tt>node_iterator</tt></a>
462 <p>Returns a <a href=
463 "#node_iterator3431975247"><tt>node_iterator</tt></a>
464 corresponding to a node just after a leaf of the
473 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
480 <p>Returns a <a href=
481 "#const_node_iterator4205924553"><tt>const_node_iterator</tt></a>
482 corresponding to a node just after a leaf of the