blob: 710902de3f98dfc4e3da260cce3d50f855a002ee [file] [log] [blame]
<!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">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::AlignedAllocator&lt; T, Alignment &gt; Struct Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Crashpad
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="structcrashpad_1_1AlignedAllocator.html">AlignedAllocator</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="structcrashpad_1_1AlignedAllocator-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">crashpad::AlignedAllocator&lt; T, Alignment &gt; Struct Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>A standard allocator that aligns its allocations as requested, suitable for use as an allocator in standard containers.
<a href="structcrashpad_1_1AlignedAllocator.html#details">More...</a></p>
<p><code>#include &quot;util/stdlib/aligned_allocator.h&quot;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1AlignedAllocator_1_1rebind.html">rebind</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:acb045b65dc51268841b9d5c3af602be9"><td class="memItemLeft" align="right" valign="top"><a id="acb045b65dc51268841b9d5c3af602be9"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>value_type</b> = T</td></tr>
<tr class="separator:acb045b65dc51268841b9d5c3af602be9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45d92b0bf43b5e38b80d0bed7b7a2432"><td class="memItemLeft" align="right" valign="top"><a id="a45d92b0bf43b5e38b80d0bed7b7a2432"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>pointer</b> = T *</td></tr>
<tr class="separator:a45d92b0bf43b5e38b80d0bed7b7a2432"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ffd64d7dee92a8147239db3221b5e3d"><td class="memItemLeft" align="right" valign="top"><a id="a6ffd64d7dee92a8147239db3221b5e3d"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>const_pointer</b> = const T *</td></tr>
<tr class="separator:a6ffd64d7dee92a8147239db3221b5e3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af41e0ac9f721ee5a3cbb0829f1ee08a3"><td class="memItemLeft" align="right" valign="top"><a id="af41e0ac9f721ee5a3cbb0829f1ee08a3"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>reference</b> = T &amp;</td></tr>
<tr class="separator:af41e0ac9f721ee5a3cbb0829f1ee08a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1436efc28cdede081a47d59e083a5798"><td class="memItemLeft" align="right" valign="top"><a id="a1436efc28cdede081a47d59e083a5798"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>const_reference</b> = const T &amp;</td></tr>
<tr class="separator:a1436efc28cdede081a47d59e083a5798"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05c26b4c646d6792b01d0ecfe6b2537f"><td class="memItemLeft" align="right" valign="top"><a id="a05c26b4c646d6792b01d0ecfe6b2537f"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>size_type</b> = size_t</td></tr>
<tr class="separator:a05c26b4c646d6792b01d0ecfe6b2537f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ff5fcb0feb91b2536425d87a34ad83d"><td class="memItemLeft" align="right" valign="top"><a id="a6ff5fcb0feb91b2536425d87a34ad83d"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>difference_type</b> = ptrdiff_t</td></tr>
<tr class="separator:a6ff5fcb0feb91b2536425d87a34ad83d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af535736661e24384f2837890e982f8e2"><td class="memItemLeft" align="right" valign="top"><a id="af535736661e24384f2837890e982f8e2"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>AlignedAllocator</b> (const <a class="el" href="structcrashpad_1_1AlignedAllocator.html">AlignedAllocator</a> &amp;other) noexcept</td></tr>
<tr class="separator:af535736661e24384f2837890e982f8e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a227466fedfd3429b272b27a2d418a70d"><td class="memTemplParams" colspan="2"><a id="a227466fedfd3429b272b27a2d418a70d"></a>
template&lt;typename U &gt; </td></tr>
<tr class="memitem:a227466fedfd3429b272b27a2d418a70d"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><b>AlignedAllocator</b> (const <a class="el" href="structcrashpad_1_1AlignedAllocator.html">AlignedAllocator</a>&lt; U, Alignment &gt; &amp;other) noexcept</td></tr>
<tr class="separator:a227466fedfd3429b272b27a2d418a70d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaefda0568b35ee54bc6836cd1b279234"><td class="memItemLeft" align="right" valign="top"><a id="aaefda0568b35ee54bc6836cd1b279234"></a>
pointer&#160;</td><td class="memItemRight" valign="bottom"><b>address</b> (reference x) const noexcept</td></tr>
<tr class="separator:aaefda0568b35ee54bc6836cd1b279234"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af710cd195b167be64782cc8c6846fc7f"><td class="memItemLeft" align="right" valign="top"><a id="af710cd195b167be64782cc8c6846fc7f"></a>
const_pointer&#160;</td><td class="memItemRight" valign="bottom"><b>address</b> (const_reference x) const noexcept</td></tr>
<tr class="separator:af710cd195b167be64782cc8c6846fc7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cfac009a68ec41e193c84763f4bd524"><td class="memItemLeft" align="right" valign="top"><a id="a8cfac009a68ec41e193c84763f4bd524"></a>
pointer&#160;</td><td class="memItemRight" valign="bottom"><b>allocate</b> (size_type n, std::allocator&lt; void &gt;::const_pointer hint=0)</td></tr>
<tr class="separator:a8cfac009a68ec41e193c84763f4bd524"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad382de9c41ef6787dea0885204a55bed"><td class="memItemLeft" align="right" valign="top"><a id="ad382de9c41ef6787dea0885204a55bed"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>deallocate</b> (pointer p, size_type n)</td></tr>
<tr class="separator:ad382de9c41ef6787dea0885204a55bed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a85fa0ce76b44c6bca2795a394ceb85"><td class="memItemLeft" align="right" valign="top"><a id="a2a85fa0ce76b44c6bca2795a394ceb85"></a>
size_type&#160;</td><td class="memItemRight" valign="bottom"><b>max_size</b> () const noexcept</td></tr>
<tr class="separator:a2a85fa0ce76b44c6bca2795a394ceb85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45211e04c8ef0c06e44043f84abdab34"><td class="memTemplParams" colspan="2"><a id="a45211e04c8ef0c06e44043f84abdab34"></a>
template&lt;class U , class... Args&gt; </td></tr>
<tr class="memitem:a45211e04c8ef0c06e44043f84abdab34"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>construct</b> (U *p, Args &amp;&amp;... args)</td></tr>
<tr class="separator:a45211e04c8ef0c06e44043f84abdab34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44a2a2baccc145e914608c1bc7e47dc2"><td class="memTemplParams" colspan="2"><a id="a44a2a2baccc145e914608c1bc7e47dc2"></a>
template&lt;class U &gt; </td></tr>
<tr class="memitem:a44a2a2baccc145e914608c1bc7e47dc2"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>destroy</b> (U *p)</td></tr>
<tr class="separator:a44a2a2baccc145e914608c1bc7e47dc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class T, size_t Alignment = alignof(T)&gt;<br />
struct crashpad::AlignedAllocator&lt; T, Alignment &gt;</h3>
<p>A standard allocator that aligns its allocations as requested, suitable for use as an allocator in standard containers. </p>
<p>This is similar to <code>std::allocator&lt;T&gt;</code>, with the addition of an alignment guarantee. <em>Alignment</em> must be a power of 2. If <em>Alignment</em> is not specified, the default alignment for type <em>T</em> is used. </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li>util/stdlib/aligned_allocator.h</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>