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>hash_exponential_size_policy Interface</title>
10 <meta http-equiv="Content-Type" content=
11 "text/html; charset=us-ascii" />
16 <h1><tt>hash_exponential_size_policy</tt> Interface</h1>
18 <p>A size policy whose sequence of sizes form an exponential
19 sequence (typically powers of 2)</p>
21 <p>Defined in: <a href=
22 "../../../../include/ext/pb_ds/hash_policy.hpp"><tt>hash_policy.hpp</tt></a></p>
24 <h2><a name="link1" id="link1">Template Parameters</a></h2>
26 <table class="c1" width="100%" border="1" summary=
27 "Template Parameters">
29 <td width="20%" align="left"><b>Parameter</b></td>
31 <td width="50%" align="left"><b>Description</b></td>
33 <td width="30%" align="left"><b>Default Value</b></td>
39 <a name="Size_Type42920436" id=
40 "Size_Type42920436"><b>typename</b> Size_Type </a>
52 <h2><a name="link2" id="link2">Public Types and
55 <h3><a name="link3" id="link3">General Definitions</a></h3>
57 <table class="c1" width="100%" border="1" summary="Types">
59 <td width="30%" align="left"><b>Type</b></td>
61 <td width="55%" align="left"><b>Definition</b></td>
63 <td width="15%" align="left"><b>Description</b></td>
69 <a name="size_type55424436" id="size_type55424436">size_type</a>
75 <a href="#Size_Type42920436"><tt>Size_Type</tt></a>
85 <h2><a name="link4" id="link4">Public Methods</a></h2>
87 <h3><a name="link5" id="link5">Constructors, Destructor, and
90 <table class="c1" width="100%" border="1" summary="Methods">
92 <td width="45%" align="left"><b>Method</b></td>
94 <td width="55%" align="left"><b>Description</b></td>
100 hash_exponential_size_policy
102 "#size_type55424436"><tt>size_type</tt></a> start_size = 8,
104 "#size_type55424436"><tt>size_type</tt></a> grow_factor = 2)
109 <p>Default constructor, or constructor taking a
110 <span class="c1"><tt>start_size</tt></span>, or
111 constructor taking a start size and <span class=
112 "c1"><tt>grow_factor</tt></span>. The policy will use the
113 sequence of sizes <span class=
114 "c1"><tt>start_size</tt></span>, <span class=
115 "c1"><tt>start_size</tt></span> * <span class=
116 "c1"><tt>grow_factor</tt></span>, <span class=
117 "c1"><tt>start_size</tt></span> * <span class=
118 "c1"><tt>grow_factor</tt></span>^2, ...</p>
128 "c2"><tt>hash_exponential_size_policy</tt></span> &other)
133 <p>Swaps content.</p>
138 <h2><a name="link6" id="link6">Protected Methods</a></h2>
140 <h3><a name="link7" id="link7">Size methods</a></h3>
142 <table class="c1" width="100%" border="1" summary="Methods">
144 <td width="45%" align="left"><b>Method</b></td>
146 <td width="55%" align="left"><b>Description</b></td>
152 <a href="#size_type55424436"><tt>size_type</tt></a>
153 get_nearest_larger_size
155 "#size_type55424436"><tt>size_type</tt></a> size) <b>const</b>
160 <p>Given a size <span class="c1"><tt>size</tt></span>,
161 returns a size that is larger.</p>
168 <a href="#size_type55424436"><tt>size_type</tt></a>
169 get_nearest_smaller_size
171 "#size_type55424436"><tt>size_type</tt></a> size) <b>const</b>
176 <p>Given a size <span class="c1"><tt>size</tt></span>,
177 returns a size that is smaller.</p>