Files
entt/classentt_1_1basic__storage.html
T
2021-07-21 14:02:37 +02:00

1731 lines
136 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_storage&lt; Entity, Type, Allocator, typename &gt; Class 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" />
</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">EnTT
&#160;<span id="projectnumber">3.8.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<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','.html');
/* @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="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__storage.html">basic_storage</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="#pro-methods">Protected Member Functions</a> &#124;
<a href="classentt_1_1basic__storage-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">entt::basic_storage&lt; Entity, Type, Allocator, typename &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Basic storage implementation.
<a href="classentt_1_1basic__storage.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="storage_8hpp_source.html">storage.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for entt::basic_storage&lt; Entity, Type, Allocator, typename &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__storage__inherit__graph.png" border="0" usemap="#aentt_1_1basic__storage_3_01Entity_00_01Type_00_01Allocator_00_01typename_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="aentt_1_1basic__storage_3_01Entity_00_01Type_00_01Allocator_00_01typename_01_4_inherit__map" id="aentt_1_1basic__storage_3_01Entity_00_01Type_00_01Allocator_00_01typename_01_4_inherit__map">
<area shape="rect" title="Basic storage implementation." alt="" coords="244,13,411,69"/>
<area shape="rect" href="classentt_1_1basic__sparse__set.html" title=" " alt="" coords="5,5,196,76"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for entt::basic_storage&lt; Entity, Type, Allocator, typename &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__storage__coll__graph.png" border="0" usemap="#aentt_1_1basic__storage_3_01Entity_00_01Type_00_01Allocator_00_01typename_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="aentt_1_1basic__storage_3_01Entity_00_01Type_00_01Allocator_00_01typename_01_4_coll__map" id="aentt_1_1basic__storage_3_01Entity_00_01Type_00_01Allocator_00_01typename_01_4_coll__map">
<area shape="rect" title="Basic storage implementation." alt="" coords="244,13,411,69"/>
<area shape="rect" href="classentt_1_1basic__sparse__set.html" title=" " alt="" coords="5,5,196,76"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<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:a4f22ee5d5194c33316dfb785815a39c7"><td class="memItemLeft" align="right" valign="top"><a id="a4f22ee5d5194c33316dfb785815a39c7"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a4f22ee5d5194c33316dfb785815a39c7">base_type</a> = <a class="el" href="classentt_1_1basic__sparse__set.html">basic_sparse_set</a>&lt; Entity, typename allocator_traits::template rebind_alloc&lt; Entity &gt; &gt;</td></tr>
<tr class="memdesc:a4f22ee5d5194c33316dfb785815a39c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base type. <br /></td></tr>
<tr class="separator:a4f22ee5d5194c33316dfb785815a39c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2daf8e64dd510609d8063fe7f3c011f3"><td class="memItemLeft" align="right" valign="top"><a id="a2daf8e64dd510609d8063fe7f3c011f3"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a2daf8e64dd510609d8063fe7f3c011f3">allocator_type</a> = Allocator</td></tr>
<tr class="memdesc:a2daf8e64dd510609d8063fe7f3c011f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator type. <br /></td></tr>
<tr class="separator:a2daf8e64dd510609d8063fe7f3c011f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afad8274fbdff981737a962b375bd0d99"><td class="memItemLeft" align="right" valign="top"><a id="afad8274fbdff981737a962b375bd0d99"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> = Type</td></tr>
<tr class="memdesc:afad8274fbdff981737a962b375bd0d99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of the objects assigned to entities. <br /></td></tr>
<tr class="separator:afad8274fbdff981737a962b375bd0d99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb0956e379c629ba413b4856baf5dc88"><td class="memItemLeft" align="right" valign="top"><a id="abb0956e379c629ba413b4856baf5dc88"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a> = Entity</td></tr>
<tr class="memdesc:abb0956e379c629ba413b4856baf5dc88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:abb0956e379c629ba413b4856baf5dc88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83"><td class="memItemLeft" align="right" valign="top"><a id="aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83">size_type</a> = std::size_t</td></tr>
<tr class="memdesc:aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf58c7df1fc9135bbfac2516df0b42ff"><td class="memItemLeft" align="right" valign="top"><a id="aaf58c7df1fc9135bbfac2516df0b42ff"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aaf58c7df1fc9135bbfac2516df0b42ff">pointer</a> = alloc_ptr_pointer</td></tr>
<tr class="memdesc:aaf58c7df1fc9135bbfac2516df0b42ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer type to contained elements. <br /></td></tr>
<tr class="separator:aaf58c7df1fc9135bbfac2516df0b42ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24406caa8c4edbe459fe522151f0d1c2"><td class="memItemLeft" align="right" valign="top"><a id="a24406caa8c4edbe459fe522151f0d1c2"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a24406caa8c4edbe459fe522151f0d1c2">const_pointer</a> = alloc_ptr_const_pointer</td></tr>
<tr class="memdesc:a24406caa8c4edbe459fe522151f0d1c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant pointer type to contained elements. <br /></td></tr>
<tr class="separator:a24406caa8c4edbe459fe522151f0d1c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8901ef6b3dffb8b16b884ca30750f7b"><td class="memItemLeft" align="right" valign="top"><a id="ae8901ef6b3dffb8b16b884ca30750f7b"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ae8901ef6b3dffb8b16b884ca30750f7b">iterator</a> = storage_iterator&lt; <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &gt;</td></tr>
<tr class="memdesc:ae8901ef6b3dffb8b16b884ca30750f7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Random access iterator type. <br /></td></tr>
<tr class="separator:ae8901ef6b3dffb8b16b884ca30750f7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a7af18dfe585c8a399590da05a2ff6e"><td class="memItemLeft" align="right" valign="top"><a id="a7a7af18dfe585c8a399590da05a2ff6e"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a> = storage_iterator&lt; const <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &gt;</td></tr>
<tr class="memdesc:a7a7af18dfe585c8a399590da05a2ff6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant random access iterator type. <br /></td></tr>
<tr class="separator:a7a7af18dfe585c8a399590da05a2ff6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2947b5cf419bfd039cf5fca0c56cbb74"><td class="memItemLeft" align="right" valign="top"><a id="a2947b5cf419bfd039cf5fca0c56cbb74"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a2947b5cf419bfd039cf5fca0c56cbb74">reverse_iterator</a> = std::reverse_iterator&lt; <a class="el" href="classentt_1_1basic__storage.html#ae8901ef6b3dffb8b16b884ca30750f7b">iterator</a> &gt;</td></tr>
<tr class="memdesc:a2947b5cf419bfd039cf5fca0c56cbb74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reverse iterator type. <br /></td></tr>
<tr class="separator:a2947b5cf419bfd039cf5fca0c56cbb74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa37c4581b7b9fed29fb4530db6541ab8"><td class="memItemLeft" align="right" valign="top"><a id="aa37c4581b7b9fed29fb4530db6541ab8"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a> = std::reverse_iterator&lt; <a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a> &gt;</td></tr>
<tr class="memdesc:aa37c4581b7b9fed29fb4530db6541ab8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant reverse iterator type. <br /></td></tr>
<tr class="separator:aa37c4581b7b9fed29fb4530db6541ab8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classentt_1_1basic__sparse__set"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classentt_1_1basic__sparse__set')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classentt_1_1basic__sparse__set.html">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a></td></tr>
<tr class="memitem:af6faaccfb0c465afb6173b0fb8a37069 inherit pub_types_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="af6faaccfb0c465afb6173b0fb8a37069"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#af6faaccfb0c465afb6173b0fb8a37069">allocator_type</a> = std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt;</td></tr>
<tr class="memdesc:af6faaccfb0c465afb6173b0fb8a37069 inherit pub_types_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator type. <br /></td></tr>
<tr class="separator:af6faaccfb0c465afb6173b0fb8a37069 inherit pub_types_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91c6508fa13b0b3e27679c3c814e6148 inherit pub_types_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a91c6508fa13b0b3e27679c3c814e6148"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> = Entity</td></tr>
<tr class="memdesc:a91c6508fa13b0b3e27679c3c814e6148 inherit pub_types_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:a91c6508fa13b0b3e27679c3c814e6148 inherit pub_types_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ec9530d8aa9ac94d421b27eb6998edb inherit pub_types_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a2ec9530d8aa9ac94d421b27eb6998edb"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a> = std::size_t</td></tr>
<tr class="memdesc:a2ec9530d8aa9ac94d421b27eb6998edb inherit pub_types_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:a2ec9530d8aa9ac94d421b27eb6998edb inherit pub_types_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32e28c975fd3fe863b0c4367bd83646d inherit pub_types_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a32e28c975fd3fe863b0c4367bd83646d"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a32e28c975fd3fe863b0c4367bd83646d">pointer</a> = alloc_const_pointer</td></tr>
<tr class="memdesc:a32e28c975fd3fe863b0c4367bd83646d inherit pub_types_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer type to contained entities. <br /></td></tr>
<tr class="separator:a32e28c975fd3fe863b0c4367bd83646d inherit pub_types_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06d4952c840039abce101f46df065c62 inherit pub_types_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="a06d4952c840039abce101f46df065c62"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a06d4952c840039abce101f46df065c62">iterator</a> = sparse_set_iterator</td></tr>
<tr class="memdesc:a06d4952c840039abce101f46df065c62 inherit pub_types_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Random access iterator type. <br /></td></tr>
<tr class="separator:a06d4952c840039abce101f46df065c62 inherit pub_types_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe62c143e816cf5e12078a607966c003 inherit pub_types_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="afe62c143e816cf5e12078a607966c003"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#afe62c143e816cf5e12078a607966c003">reverse_iterator</a> = std::reverse_iterator&lt; <a class="el" href="classentt_1_1basic__sparse__set.html#a06d4952c840039abce101f46df065c62">iterator</a> &gt;</td></tr>
<tr class="memdesc:afe62c143e816cf5e12078a607966c003 inherit pub_types_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reverse iterator type. <br /></td></tr>
<tr class="separator:afe62c143e816cf5e12078a607966c003 inherit pub_types_classentt_1_1basic__sparse__set"><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:ac46b0df21902a582df328c1b80c75cb3"><td class="memItemLeft" align="right" valign="top"><a id="ac46b0df21902a582df328c1b80c75cb3"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ac46b0df21902a582df328c1b80c75cb3">basic_storage</a> ()</td></tr>
<tr class="memdesc:ac46b0df21902a582df328c1b80c75cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:ac46b0df21902a582df328c1b80c75cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa785dc52f39f9133e42a854b6e7c20c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aaa785dc52f39f9133e42a854b6e7c20c">basic_storage</a> (const <a class="el" href="classentt_1_1basic__storage.html#a2daf8e64dd510609d8063fe7f3c011f3">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:aaa785dc52f39f9133e42a854b6e7c20c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an empty storage with a given allocator. <a href="classentt_1_1basic__storage.html#aaa785dc52f39f9133e42a854b6e7c20c">More...</a><br /></td></tr>
<tr class="separator:aaa785dc52f39f9133e42a854b6e7c20c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8723ddbf200fe151baf6dfcb613c7e31"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a8723ddbf200fe151baf6dfcb613c7e31">basic_storage</a> (<a class="el" href="classentt_1_1basic__storage.html">basic_storage</a> &amp;&amp;other)</td></tr>
<tr class="memdesc:a8723ddbf200fe151baf6dfcb613c7e31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move constructor. <a href="classentt_1_1basic__storage.html#a8723ddbf200fe151baf6dfcb613c7e31">More...</a><br /></td></tr>
<tr class="separator:a8723ddbf200fe151baf6dfcb613c7e31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefce30bb9922e977dcf76577ea739f3a"><td class="memItemLeft" align="right" valign="top"><a id="aefce30bb9922e977dcf76577ea739f3a"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aefce30bb9922e977dcf76577ea739f3a">~basic_storage</a> () override</td></tr>
<tr class="memdesc:aefce30bb9922e977dcf76577ea739f3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor. <br /></td></tr>
<tr class="separator:aefce30bb9922e977dcf76577ea739f3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7672e87c11c51f4edf70ae68def122c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html">basic_storage</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a7672e87c11c51f4edf70ae68def122c8">operator=</a> (<a class="el" href="classentt_1_1basic__storage.html">basic_storage</a> &amp;&amp;other)</td></tr>
<tr class="memdesc:a7672e87c11c51f4edf70ae68def122c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move assignment operator. <a href="classentt_1_1basic__storage.html#a7672e87c11c51f4edf70ae68def122c8">More...</a><br /></td></tr>
<tr class="separator:a7672e87c11c51f4edf70ae68def122c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac59504fc3055e5543c555989e295c4ba"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="classentt_1_1basic__storage.html#a2daf8e64dd510609d8063fe7f3c011f3">allocator_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ac59504fc3055e5543c555989e295c4ba">get_allocator</a> () const</td></tr>
<tr class="memdesc:ac59504fc3055e5543c555989e295c4ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the associated allocator. <a href="classentt_1_1basic__storage.html#ac59504fc3055e5543c555989e295c4ba">More...</a><br /></td></tr>
<tr class="separator:ac59504fc3055e5543c555989e295c4ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9006cd644effed8a5290283d05352ce7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a9006cd644effed8a5290283d05352ce7">reserve</a> (const <a class="el" href="classentt_1_1basic__storage.html#aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83">size_type</a> cap) override</td></tr>
<tr class="memdesc:a9006cd644effed8a5290283d05352ce7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increases the capacity of a storage. <a href="classentt_1_1basic__storage.html#a9006cd644effed8a5290283d05352ce7">More...</a><br /></td></tr>
<tr class="separator:a9006cd644effed8a5290283d05352ce7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff2228c8f45265417bf83694a3a47ce6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aff2228c8f45265417bf83694a3a47ce6">capacity</a> () const override</td></tr>
<tr class="memdesc:aff2228c8f45265417bf83694a3a47ce6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of elements that a storage has currently allocated space for. <a href="classentt_1_1basic__storage.html#aff2228c8f45265417bf83694a3a47ce6">More...</a><br /></td></tr>
<tr class="separator:aff2228c8f45265417bf83694a3a47ce6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d791d4bb0c1e9c0c97bd7f9cfd33af9"><td class="memItemLeft" align="right" valign="top"><a id="a0d791d4bb0c1e9c0c97bd7f9cfd33af9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a0d791d4bb0c1e9c0c97bd7f9cfd33af9">shrink_to_fit</a> () override</td></tr>
<tr class="memdesc:a0d791d4bb0c1e9c0c97bd7f9cfd33af9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Requests the removal of unused capacity. <br /></td></tr>
<tr class="separator:a0d791d4bb0c1e9c0c97bd7f9cfd33af9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a842d101561221a5b6823ecb68297d0c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#a24406caa8c4edbe459fe522151f0d1c2">const_pointer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a842d101561221a5b6823ecb68297d0c7">raw</a> () const</td></tr>
<tr class="memdesc:a842d101561221a5b6823ecb68297d0c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Direct access to the array of objects. <a href="classentt_1_1basic__storage.html#a842d101561221a5b6823ecb68297d0c7">More...</a><br /></td></tr>
<tr class="separator:a842d101561221a5b6823ecb68297d0c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8dc30f83d69d4fcaae062dc2a6334c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aaf58c7df1fc9135bbfac2516df0b42ff">pointer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ab8dc30f83d69d4fcaae062dc2a6334c4">raw</a> ()</td></tr>
<tr class="memdesc:ab8dc30f83d69d4fcaae062dc2a6334c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Direct access to the array of objects. <a href="classentt_1_1basic__storage.html#ab8dc30f83d69d4fcaae062dc2a6334c4">More...</a><br /></td></tr>
<tr class="separator:ab8dc30f83d69d4fcaae062dc2a6334c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2160a4b2a4c05fcab3fb14a8933953a5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a2160a4b2a4c05fcab3fb14a8933953a5">cbegin</a> () const</td></tr>
<tr class="memdesc:a2160a4b2a4c05fcab3fb14a8933953a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the beginning. <a href="classentt_1_1basic__storage.html#a2160a4b2a4c05fcab3fb14a8933953a5">More...</a><br /></td></tr>
<tr class="separator:a2160a4b2a4c05fcab3fb14a8933953a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a777bce46cd8db4bbdfbc21353ab062ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a777bce46cd8db4bbdfbc21353ab062ce">begin</a> () const</td></tr>
<tr class="memdesc:a777bce46cd8db4bbdfbc21353ab062ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the beginning. <a href="classentt_1_1basic__storage.html#a777bce46cd8db4bbdfbc21353ab062ce">More...</a><br /></td></tr>
<tr class="separator:a777bce46cd8db4bbdfbc21353ab062ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac411762f98f026482ce332c6b1e4229a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#ae8901ef6b3dffb8b16b884ca30750f7b">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ac411762f98f026482ce332c6b1e4229a">begin</a> ()</td></tr>
<tr class="memdesc:ac411762f98f026482ce332c6b1e4229a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the beginning. <a href="classentt_1_1basic__storage.html#ac411762f98f026482ce332c6b1e4229a">More...</a><br /></td></tr>
<tr class="separator:ac411762f98f026482ce332c6b1e4229a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a253c6d2bd4677fa8a70bf12aab88d154"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a253c6d2bd4677fa8a70bf12aab88d154">cend</a> () const</td></tr>
<tr class="memdesc:a253c6d2bd4677fa8a70bf12aab88d154"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the end. <a href="classentt_1_1basic__storage.html#a253c6d2bd4677fa8a70bf12aab88d154">More...</a><br /></td></tr>
<tr class="separator:a253c6d2bd4677fa8a70bf12aab88d154"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf44df9657be2a7975caf69cf92a4d3b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aaf44df9657be2a7975caf69cf92a4d3b">end</a> () const</td></tr>
<tr class="memdesc:aaf44df9657be2a7975caf69cf92a4d3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the end. <a href="classentt_1_1basic__storage.html#aaf44df9657be2a7975caf69cf92a4d3b">More...</a><br /></td></tr>
<tr class="separator:aaf44df9657be2a7975caf69cf92a4d3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19fe48ae234f9725c80948b19e705889"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#ae8901ef6b3dffb8b16b884ca30750f7b">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a19fe48ae234f9725c80948b19e705889">end</a> ()</td></tr>
<tr class="memdesc:a19fe48ae234f9725c80948b19e705889"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the end. <a href="classentt_1_1basic__storage.html#a19fe48ae234f9725c80948b19e705889">More...</a><br /></td></tr>
<tr class="separator:a19fe48ae234f9725c80948b19e705889"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa86ed935b31675eb3f6938755d671d2b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aa86ed935b31675eb3f6938755d671d2b">crbegin</a> () const</td></tr>
<tr class="memdesc:aa86ed935b31675eb3f6938755d671d2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the beginning. <a href="classentt_1_1basic__storage.html#aa86ed935b31675eb3f6938755d671d2b">More...</a><br /></td></tr>
<tr class="separator:aa86ed935b31675eb3f6938755d671d2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a294e9330b74e232a905b9f78a6524917"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a294e9330b74e232a905b9f78a6524917">rbegin</a> () const</td></tr>
<tr class="memdesc:a294e9330b74e232a905b9f78a6524917"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the beginning. <a href="classentt_1_1basic__storage.html#a294e9330b74e232a905b9f78a6524917">More...</a><br /></td></tr>
<tr class="separator:a294e9330b74e232a905b9f78a6524917"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f86841bc48d579993a8f3c0f8e080c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#a2947b5cf419bfd039cf5fca0c56cbb74">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a7f86841bc48d579993a8f3c0f8e080c3">rbegin</a> ()</td></tr>
<tr class="memdesc:a7f86841bc48d579993a8f3c0f8e080c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the beginning. <a href="classentt_1_1basic__storage.html#a7f86841bc48d579993a8f3c0f8e080c3">More...</a><br /></td></tr>
<tr class="separator:a7f86841bc48d579993a8f3c0f8e080c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a4ae307c3423d97b779fe427b22feb6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a0a4ae307c3423d97b779fe427b22feb6">crend</a> () const</td></tr>
<tr class="memdesc:a0a4ae307c3423d97b779fe427b22feb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the end. <a href="classentt_1_1basic__storage.html#a0a4ae307c3423d97b779fe427b22feb6">More...</a><br /></td></tr>
<tr class="separator:a0a4ae307c3423d97b779fe427b22feb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f85346282d5ea0f578607e02b37f1dd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a9f85346282d5ea0f578607e02b37f1dd">rend</a> () const</td></tr>
<tr class="memdesc:a9f85346282d5ea0f578607e02b37f1dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the end. <a href="classentt_1_1basic__storage.html#a9f85346282d5ea0f578607e02b37f1dd">More...</a><br /></td></tr>
<tr class="separator:a9f85346282d5ea0f578607e02b37f1dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72789cfb1fec3eae4fb1197965eadae2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#a2947b5cf419bfd039cf5fca0c56cbb74">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a72789cfb1fec3eae4fb1197965eadae2">rend</a> ()</td></tr>
<tr class="memdesc:a72789cfb1fec3eae4fb1197965eadae2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the end. <a href="classentt_1_1basic__storage.html#a72789cfb1fec3eae4fb1197965eadae2">More...</a><br /></td></tr>
<tr class="separator:a72789cfb1fec3eae4fb1197965eadae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdb98de467567bf81772382ba2970413"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#afdb98de467567bf81772382ba2970413">get</a> (const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a> entt) const</td></tr>
<tr class="memdesc:afdb98de467567bf81772382ba2970413"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object assigned to an entity. <a href="classentt_1_1basic__storage.html#afdb98de467567bf81772382ba2970413">More...</a><br /></td></tr>
<tr class="separator:afdb98de467567bf81772382ba2970413"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05808e1a5b2f90d23fb01fb15a1effba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a05808e1a5b2f90d23fb01fb15a1effba">get</a> (const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a> entt)</td></tr>
<tr class="memdesc:a05808e1a5b2f90d23fb01fb15a1effba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object assigned to an entity. <a href="classentt_1_1basic__storage.html#a05808e1a5b2f90d23fb01fb15a1effba">More...</a><br /></td></tr>
<tr class="separator:a05808e1a5b2f90d23fb01fb15a1effba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcf228fe6c79886e49ce98274a80dcc3"><td class="memItemLeft" align="right" valign="top">std::tuple&lt; const <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#afcf228fe6c79886e49ce98274a80dcc3">get_as_tuple</a> (const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a> entt) const</td></tr>
<tr class="memdesc:afcf228fe6c79886e49ce98274a80dcc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object assigned to an entity as a tuple. <a href="classentt_1_1basic__storage.html#afcf228fe6c79886e49ce98274a80dcc3">More...</a><br /></td></tr>
<tr class="separator:afcf228fe6c79886e49ce98274a80dcc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fef4784b0834dd36644746dde9f4f84"><td class="memItemLeft" align="right" valign="top">std::tuple&lt; <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a4fef4784b0834dd36644746dde9f4f84">get_as_tuple</a> (const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a> entt)</td></tr>
<tr class="memdesc:a4fef4784b0834dd36644746dde9f4f84"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object assigned to an entity as a tuple. <a href="classentt_1_1basic__storage.html#a4fef4784b0834dd36644746dde9f4f84">More...</a><br /></td></tr>
<tr class="separator:a4fef4784b0834dd36644746dde9f4f84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6351347f09a2eab06c69c81caea2d99"><td class="memTemplParams" colspan="2">template&lt;typename... Args&gt; </td></tr>
<tr class="memitem:ae6351347f09a2eab06c69c81caea2d99"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ae6351347f09a2eab06c69c81caea2d99">emplace</a> (const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a> entt, Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:ae6351347f09a2eab06c69c81caea2d99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns an entity to a storage and constructs its object. <a href="classentt_1_1basic__storage.html#ae6351347f09a2eab06c69c81caea2d99">More...</a><br /></td></tr>
<tr class="separator:ae6351347f09a2eab06c69c81caea2d99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a210d872aa9752f42c9b9e1ed6641eb44"><td class="memTemplParams" colspan="2">template&lt;typename... Func&gt; </td></tr>
<tr class="memitem:a210d872aa9752f42c9b9e1ed6641eb44"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a210d872aa9752f42c9b9e1ed6641eb44">patch</a> (const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a> entt, Func &amp;&amp;... func)</td></tr>
<tr class="memdesc:a210d872aa9752f42c9b9e1ed6641eb44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the instance assigned to a given entity in-place. <a href="classentt_1_1basic__storage.html#a210d872aa9752f42c9b9e1ed6641eb44">More...</a><br /></td></tr>
<tr class="separator:a210d872aa9752f42c9b9e1ed6641eb44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc4d7d3a84ecc5fc8e878772074ce35f"><td class="memTemplParams" colspan="2">template&lt;typename It &gt; </td></tr>
<tr class="memitem:abc4d7d3a84ecc5fc8e878772074ce35f"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#abc4d7d3a84ecc5fc8e878772074ce35f">insert</a> (It first, It last, const <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;value={})</td></tr>
<tr class="memdesc:abc4d7d3a84ecc5fc8e878772074ce35f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns one or more entities to a storage and constructs their objects from a given instance. <a href="classentt_1_1basic__storage.html#abc4d7d3a84ecc5fc8e878772074ce35f">More...</a><br /></td></tr>
<tr class="separator:abc4d7d3a84ecc5fc8e878772074ce35f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9670a9916dc77f24403e4a41fdaed96"><td class="memTemplParams" colspan="2">template&lt;typename EIt , typename CIt , typename = std::enable_if_t&lt;std::is_same_v&lt;std::decay_t&lt;typename std::iterator_traits&lt;CIt&gt;::value_type&gt;, value_type&gt;&gt;&gt; </td></tr>
<tr class="memitem:ac9670a9916dc77f24403e4a41fdaed96"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#ac9670a9916dc77f24403e4a41fdaed96">insert</a> (EIt first, EIt last, CIt from)</td></tr>
<tr class="memdesc:ac9670a9916dc77f24403e4a41fdaed96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns one or more entities to a storage and constructs their objects from a given range. <a href="classentt_1_1basic__storage.html#ac9670a9916dc77f24403e4a41fdaed96">More...</a><br /></td></tr>
<tr class="separator:ac9670a9916dc77f24403e4a41fdaed96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classentt_1_1basic__sparse__set"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classentt_1_1basic__sparse__set')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classentt_1_1basic__sparse__set.html">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a></td></tr>
<tr class="memitem:afc504894fc2c20ea25b7fc2864bd22e3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="afc504894fc2c20ea25b7fc2864bd22e3"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#afc504894fc2c20ea25b7fc2864bd22e3">basic_sparse_set</a> ()</td></tr>
<tr class="memdesc:afc504894fc2c20ea25b7fc2864bd22e3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:afc504894fc2c20ea25b7fc2864bd22e3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b636566df9e6f3f36ff62d2bdde8d10 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a1b636566df9e6f3f36ff62d2bdde8d10">basic_sparse_set</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#af6faaccfb0c465afb6173b0fb8a37069">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:a1b636566df9e6f3f36ff62d2bdde8d10 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an empty container with a given allocator. <a href="classentt_1_1basic__sparse__set.html#a1b636566df9e6f3f36ff62d2bdde8d10">More...</a><br /></td></tr>
<tr class="separator:a1b636566df9e6f3f36ff62d2bdde8d10 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e264ab5a7e2d97a204004d25b14238b inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a8e264ab5a7e2d97a204004d25b14238b">basic_sparse_set</a> (<a class="el" href="namespaceentt.html#abc4d0fa77fae26e7c01793990996c581">deletion_policy</a> pol, const <a class="el" href="classentt_1_1basic__sparse__set.html#af6faaccfb0c465afb6173b0fb8a37069">allocator_type</a> &amp;allocator={})</td></tr>
<tr class="memdesc:a8e264ab5a7e2d97a204004d25b14238b inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an empty container with the given policy and allocator. <a href="classentt_1_1basic__sparse__set.html#a8e264ab5a7e2d97a204004d25b14238b">More...</a><br /></td></tr>
<tr class="separator:a8e264ab5a7e2d97a204004d25b14238b inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba22aad9557f355b657798a1e2fd9aad inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#aba22aad9557f355b657798a1e2fd9aad">basic_sparse_set</a> (<a class="el" href="classentt_1_1basic__sparse__set.html">basic_sparse_set</a> &amp;&amp;other)</td></tr>
<tr class="memdesc:aba22aad9557f355b657798a1e2fd9aad inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move constructor. <a href="classentt_1_1basic__sparse__set.html#aba22aad9557f355b657798a1e2fd9aad">More...</a><br /></td></tr>
<tr class="separator:aba22aad9557f355b657798a1e2fd9aad inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac56f048f614c38f14b19ba9cb27faa94 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="ac56f048f614c38f14b19ba9cb27faa94"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#ac56f048f614c38f14b19ba9cb27faa94">~basic_sparse_set</a> ()</td></tr>
<tr class="memdesc:ac56f048f614c38f14b19ba9cb27faa94 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor. <br /></td></tr>
<tr class="separator:ac56f048f614c38f14b19ba9cb27faa94 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd87d086a1b895ac6253c311eb90affb inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html">basic_sparse_set</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#afd87d086a1b895ac6253c311eb90affb">operator=</a> (<a class="el" href="classentt_1_1basic__sparse__set.html">basic_sparse_set</a> &amp;&amp;other)</td></tr>
<tr class="memdesc:afd87d086a1b895ac6253c311eb90affb inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move assignment operator. <a href="classentt_1_1basic__sparse__set.html#afd87d086a1b895ac6253c311eb90affb">More...</a><br /></td></tr>
<tr class="separator:afd87d086a1b895ac6253c311eb90affb inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade252400c95d50a4a2dcc97cd1c12de3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="classentt_1_1basic__sparse__set.html#af6faaccfb0c465afb6173b0fb8a37069">allocator_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#ade252400c95d50a4a2dcc97cd1c12de3">get_allocator</a> () const</td></tr>
<tr class="memdesc:ade252400c95d50a4a2dcc97cd1c12de3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the associated allocator. <a href="classentt_1_1basic__sparse__set.html#ade252400c95d50a4a2dcc97cd1c12de3">More...</a><br /></td></tr>
<tr class="separator:ade252400c95d50a4a2dcc97cd1c12de3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02c273b23bb87b33e04dc598409eeede inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceentt.html#abc4d0fa77fae26e7c01793990996c581">deletion_policy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a02c273b23bb87b33e04dc598409eeede">policy</a> () const</td></tr>
<tr class="memdesc:a02c273b23bb87b33e04dc598409eeede inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the deletion policy of a sparse set. <a href="classentt_1_1basic__sparse__set.html#a02c273b23bb87b33e04dc598409eeede">More...</a><br /></td></tr>
<tr class="separator:a02c273b23bb87b33e04dc598409eeede inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cfe17211583fcac905a462dbe2d1c09 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a3cfe17211583fcac905a462dbe2d1c09">slot</a> () const</td></tr>
<tr class="memdesc:a3cfe17211583fcac905a462dbe2d1c09 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the next slot available for insertion. <a href="classentt_1_1basic__sparse__set.html#a3cfe17211583fcac905a462dbe2d1c09">More...</a><br /></td></tr>
<tr class="separator:a3cfe17211583fcac905a462dbe2d1c09 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9df44971fcaba319e05955a2943baa14 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a9df44971fcaba319e05955a2943baa14">extent</a> () const</td></tr>
<tr class="memdesc:a9df44971fcaba319e05955a2943baa14 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the extent of a sparse set. <a href="classentt_1_1basic__sparse__set.html#a9df44971fcaba319e05955a2943baa14">More...</a><br /></td></tr>
<tr class="separator:a9df44971fcaba319e05955a2943baa14 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a781b6cee81c02b5dd601d0c808cf97a8 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a781b6cee81c02b5dd601d0c808cf97a8">size</a> () const</td></tr>
<tr class="memdesc:a781b6cee81c02b5dd601d0c808cf97a8 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of elements in a sparse set. <a href="classentt_1_1basic__sparse__set.html#a781b6cee81c02b5dd601d0c808cf97a8">More...</a><br /></td></tr>
<tr class="separator:a781b6cee81c02b5dd601d0c808cf97a8 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3617c860500230b880f07215f21cb496 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a3617c860500230b880f07215f21cb496">empty</a> () const</td></tr>
<tr class="memdesc:a3617c860500230b880f07215f21cb496 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks whether a sparse set is empty. <a href="classentt_1_1basic__sparse__set.html#a3617c860500230b880f07215f21cb496">More...</a><br /></td></tr>
<tr class="separator:a3617c860500230b880f07215f21cb496 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adaa8a3f16cdaa2d85316683d008bf8c5 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a32e28c975fd3fe863b0c4367bd83646d">pointer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#adaa8a3f16cdaa2d85316683d008bf8c5">data</a> () const</td></tr>
<tr class="memdesc:adaa8a3f16cdaa2d85316683d008bf8c5 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Direct access to the internal packed array. <a href="classentt_1_1basic__sparse__set.html#adaa8a3f16cdaa2d85316683d008bf8c5">More...</a><br /></td></tr>
<tr class="separator:adaa8a3f16cdaa2d85316683d008bf8c5 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1465b127e3c50e654f04c6da4965f147 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a06d4952c840039abce101f46df065c62">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a1465b127e3c50e654f04c6da4965f147">begin</a> () const</td></tr>
<tr class="memdesc:a1465b127e3c50e654f04c6da4965f147 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the beginning. <a href="classentt_1_1basic__sparse__set.html#a1465b127e3c50e654f04c6da4965f147">More...</a><br /></td></tr>
<tr class="separator:a1465b127e3c50e654f04c6da4965f147 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34c40a25499f47f87e13591aa378a0fb inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a06d4952c840039abce101f46df065c62">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a34c40a25499f47f87e13591aa378a0fb">end</a> () const</td></tr>
<tr class="memdesc:a34c40a25499f47f87e13591aa378a0fb inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the end. <a href="classentt_1_1basic__sparse__set.html#a34c40a25499f47f87e13591aa378a0fb">More...</a><br /></td></tr>
<tr class="separator:a34c40a25499f47f87e13591aa378a0fb inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c990b5d9720d9a3b29466756aaa42e1 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#afe62c143e816cf5e12078a607966c003">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a7c990b5d9720d9a3b29466756aaa42e1">rbegin</a> () const</td></tr>
<tr class="memdesc:a7c990b5d9720d9a3b29466756aaa42e1 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the beginning. <a href="classentt_1_1basic__sparse__set.html#a7c990b5d9720d9a3b29466756aaa42e1">More...</a><br /></td></tr>
<tr class="separator:a7c990b5d9720d9a3b29466756aaa42e1 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bc1fee7c920941ac936ed7df9207343 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#afe62c143e816cf5e12078a607966c003">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a1bc1fee7c920941ac936ed7df9207343">rend</a> () const</td></tr>
<tr class="memdesc:a1bc1fee7c920941ac936ed7df9207343 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reverse iterator to the end. <a href="classentt_1_1basic__sparse__set.html#a1bc1fee7c920941ac936ed7df9207343">More...</a><br /></td></tr>
<tr class="separator:a1bc1fee7c920941ac936ed7df9207343 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82ea72545db86b1c25a790772d015c3d inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a06d4952c840039abce101f46df065c62">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a82ea72545db86b1c25a790772d015c3d">find</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> entt) const</td></tr>
<tr class="memdesc:a82ea72545db86b1c25a790772d015c3d inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds an entity. <a href="classentt_1_1basic__sparse__set.html#a82ea72545db86b1c25a790772d015c3d">More...</a><br /></td></tr>
<tr class="separator:a82ea72545db86b1c25a790772d015c3d inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2c7f1ac19e1040c2c2d2245f521f291 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#ad2c7f1ac19e1040c2c2d2245f521f291">contains</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> entt) const</td></tr>
<tr class="memdesc:ad2c7f1ac19e1040c2c2d2245f521f291 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a sparse set contains an entity. <a href="classentt_1_1basic__sparse__set.html#ad2c7f1ac19e1040c2c2d2245f521f291">More...</a><br /></td></tr>
<tr class="separator:ad2c7f1ac19e1040c2c2d2245f521f291 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1af775539f37a31b1da7254491a53b1f inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a1af775539f37a31b1da7254491a53b1f">index</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> entt) const</td></tr>
<tr class="memdesc:a1af775539f37a31b1da7254491a53b1f inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the position of an entity in a sparse set. <a href="classentt_1_1basic__sparse__set.html#a1af775539f37a31b1da7254491a53b1f">More...</a><br /></td></tr>
<tr class="separator:a1af775539f37a31b1da7254491a53b1f inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0d4efaf22f43c1a8573e50c7460299a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#aa0d4efaf22f43c1a8573e50c7460299a">at</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a> pos) const</td></tr>
<tr class="memdesc:aa0d4efaf22f43c1a8573e50c7460299a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the entity at specified location, with bounds checking. <a href="classentt_1_1basic__sparse__set.html#aa0d4efaf22f43c1a8573e50c7460299a">More...</a><br /></td></tr>
<tr class="separator:aa0d4efaf22f43c1a8573e50c7460299a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f88e4df5066e55ebfba192a85050553 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a3f88e4df5066e55ebfba192a85050553">operator[]</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a> pos) const</td></tr>
<tr class="memdesc:a3f88e4df5066e55ebfba192a85050553 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the entity at specified location, without bounds checking. <a href="classentt_1_1basic__sparse__set.html#a3f88e4df5066e55ebfba192a85050553">More...</a><br /></td></tr>
<tr class="separator:a3f88e4df5066e55ebfba192a85050553 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc550073edf12594bc9a6a6528b7adcd inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#abc550073edf12594bc9a6a6528b7adcd">emplace_back</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> entt)</td></tr>
<tr class="memdesc:abc550073edf12594bc9a6a6528b7adcd inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Appends an entity to a sparse set. <a href="classentt_1_1basic__sparse__set.html#abc550073edf12594bc9a6a6528b7adcd">More...</a><br /></td></tr>
<tr class="separator:abc550073edf12594bc9a6a6528b7adcd inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bcb8298dba48d35d2d432edafd601de inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a2bcb8298dba48d35d2d432edafd601de">emplace</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> entt)</td></tr>
<tr class="memdesc:a2bcb8298dba48d35d2d432edafd601de inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns an entity to a sparse set. <a href="classentt_1_1basic__sparse__set.html#a2bcb8298dba48d35d2d432edafd601de">More...</a><br /></td></tr>
<tr class="separator:a2bcb8298dba48d35d2d432edafd601de inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a3903daddc7ec0a8260d8828b009402 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a1a3903daddc7ec0a8260d8828b009402">insert</a> (It first, It last)</td></tr>
<tr class="memdesc:a1a3903daddc7ec0a8260d8828b009402 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assigns one or more entities to a sparse set. <a href="classentt_1_1basic__sparse__set.html#a1a3903daddc7ec0a8260d8828b009402">More...</a><br /></td></tr>
<tr class="separator:a1a3903daddc7ec0a8260d8828b009402 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af65d65a79a310182de30de7e2650451a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#af65d65a79a310182de30de7e2650451a">erase</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> entt, void *ud=nullptr)</td></tr>
<tr class="memdesc:af65d65a79a310182de30de7e2650451a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Erases an entity from a sparse set. <a href="classentt_1_1basic__sparse__set.html#af65d65a79a310182de30de7e2650451a">More...</a><br /></td></tr>
<tr class="separator:af65d65a79a310182de30de7e2650451a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4c565519a89dbc5c30bc98bf5e3b7be inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#ac4c565519a89dbc5c30bc98bf5e3b7be">erase</a> (It first, It last, void *ud=nullptr)</td></tr>
<tr class="memdesc:ac4c565519a89dbc5c30bc98bf5e3b7be inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Erases entities from a set. <a href="classentt_1_1basic__sparse__set.html#ac4c565519a89dbc5c30bc98bf5e3b7be">More...</a><br /></td></tr>
<tr class="separator:ac4c565519a89dbc5c30bc98bf5e3b7be inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9863afe50a42c7c3ff820b16ce5b517d inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a9863afe50a42c7c3ff820b16ce5b517d">remove</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> entt, void *ud=nullptr)</td></tr>
<tr class="memdesc:a9863afe50a42c7c3ff820b16ce5b517d inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes an entity from a sparse set if it exists. <a href="classentt_1_1basic__sparse__set.html#a9863afe50a42c7c3ff820b16ce5b517d">More...</a><br /></td></tr>
<tr class="separator:a9863afe50a42c7c3ff820b16ce5b517d inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0232f804145aa29d256bbce5944354f3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a0232f804145aa29d256bbce5944354f3">remove</a> (It first, It last, void *ud=nullptr)</td></tr>
<tr class="memdesc:a0232f804145aa29d256bbce5944354f3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes entities from a sparse set if they exist. <a href="classentt_1_1basic__sparse__set.html#a0232f804145aa29d256bbce5944354f3">More...</a><br /></td></tr>
<tr class="separator:a0232f804145aa29d256bbce5944354f3 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4979ce48546cfcc705c4d23654faef2 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top"><a id="af4979ce48546cfcc705c4d23654faef2"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#af4979ce48546cfcc705c4d23654faef2">compact</a> ()</td></tr>
<tr class="memdesc:af4979ce48546cfcc705c4d23654faef2 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes all tombstones from the packed array of a sparse set. <br /></td></tr>
<tr class="separator:af4979ce48546cfcc705c4d23654faef2 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f188dbfbf2dc3d85df9776578d6e14b inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a8f188dbfbf2dc3d85df9776578d6e14b">swap</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> lhs, const <a class="el" href="classentt_1_1basic__sparse__set.html#a91c6508fa13b0b3e27679c3c814e6148">entity_type</a> rhs)</td></tr>
<tr class="memdesc:a8f188dbfbf2dc3d85df9776578d6e14b inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Swaps two entities in the internal packed array. <a href="classentt_1_1basic__sparse__set.html#a8f188dbfbf2dc3d85df9776578d6e14b">More...</a><br /></td></tr>
<tr class="separator:a8f188dbfbf2dc3d85df9776578d6e14b inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69b7b5e9f1da7e1b887125c6f88b4b9a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a69b7b5e9f1da7e1b887125c6f88b4b9a">sort_n</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html#a2ec9530d8aa9ac94d421b27eb6998edb">size_type</a> length, Compare compare, Sort algo=Sort{}, Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:a69b7b5e9f1da7e1b887125c6f88b4b9a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sort the first count elements according to the given comparison function. <a href="classentt_1_1basic__sparse__set.html#a69b7b5e9f1da7e1b887125c6f88b4b9a">More...</a><br /></td></tr>
<tr class="separator:a69b7b5e9f1da7e1b887125c6f88b4b9a inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abeb106e820264d3632c676cc9b6c2fff inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#abeb106e820264d3632c676cc9b6c2fff">sort</a> (Compare compare, Sort algo=Sort{}, Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:abeb106e820264d3632c676cc9b6c2fff inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sort all elements according to the given comparison function. <a href="classentt_1_1basic__sparse__set.html#abeb106e820264d3632c676cc9b6c2fff">More...</a><br /></td></tr>
<tr class="separator:abeb106e820264d3632c676cc9b6c2fff inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6b9f10f5212846bfea6e4fd0ba7a1e4 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#ad6b9f10f5212846bfea6e4fd0ba7a1e4">respect</a> (const <a class="el" href="classentt_1_1basic__sparse__set.html">basic_sparse_set</a> &amp;other)</td></tr>
<tr class="memdesc:ad6b9f10f5212846bfea6e4fd0ba7a1e4 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sort entities according to their order in another sparse set. <a href="classentt_1_1basic__sparse__set.html#ad6b9f10f5212846bfea6e4fd0ba7a1e4">More...</a><br /></td></tr>
<tr class="separator:ad6b9f10f5212846bfea6e4fd0ba7a1e4 inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19320f0dea455f067afd834781cbffbd inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__sparse__set.html#a19320f0dea455f067afd834781cbffbd">clear</a> (void *ud=nullptr)</td></tr>
<tr class="memdesc:a19320f0dea455f067afd834781cbffbd inherit pub_methods_classentt_1_1basic__sparse__set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears a sparse set. <a href="classentt_1_1basic__sparse__set.html#a19320f0dea455f067afd834781cbffbd">More...</a><br /></td></tr>
<tr class="separator:a19320f0dea455f067afd834781cbffbd inherit pub_methods_classentt_1_1basic__sparse__set"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a4d761b7d0e922003761366ff46f01cec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a4d761b7d0e922003761366ff46f01cec">swap_at</a> (const std::size_t lhs, const std::size_t rhs) final</td></tr>
<tr class="memdesc:a4d761b7d0e922003761366ff46f01cec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Swaps two entities in the internal packed array. <a href="classentt_1_1basic__storage.html#a4d761b7d0e922003761366ff46f01cec">More...</a><br /></td></tr>
<tr class="separator:a4d761b7d0e922003761366ff46f01cec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5da3f4cfbda0add7a0fbcee565d842d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#aa5da3f4cfbda0add7a0fbcee565d842d">move_and_pop</a> (const std::size_t from, const std::size_t to) final</td></tr>
<tr class="memdesc:aa5da3f4cfbda0add7a0fbcee565d842d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves an entity in the internal packed array. <a href="classentt_1_1basic__storage.html#aa5da3f4cfbda0add7a0fbcee565d842d">More...</a><br /></td></tr>
<tr class="separator:aa5da3f4cfbda0add7a0fbcee565d842d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49f8fd7aea3471acee8c9c7aec874a65"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#a49f8fd7aea3471acee8c9c7aec874a65">swap_and_pop</a> (const Entity entt, void *ud) override</td></tr>
<tr class="memdesc:a49f8fd7aea3471acee8c9c7aec874a65"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempts to erase an entity from the internal packed array. <a href="classentt_1_1basic__storage.html#a49f8fd7aea3471acee8c9c7aec874a65">More...</a><br /></td></tr>
<tr class="separator:a49f8fd7aea3471acee8c9c7aec874a65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc0cc7a4c7ebfe6d7b7af6b7b37ff405"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classentt_1_1basic__storage.html#abc0cc7a4c7ebfe6d7b7af6b7b37ff405">in_place_pop</a> (const Entity entt, void *ud) override</td></tr>
<tr class="memdesc:abc0cc7a4c7ebfe6d7b7af6b7b37ff405"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempts to erase an entity from the internal packed array. <a href="classentt_1_1basic__storage.html#abc0cc7a4c7ebfe6d7b7af6b7b37ff405">More...</a><br /></td></tr>
<tr class="separator:abc0cc7a4c7ebfe6d7b7af6b7b37ff405"><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;typename Entity, typename Type, typename Allocator, typename&gt;<br />
class entt::basic_storage&lt; Entity, Type, Allocator, typename &gt;</h3>
<p>Basic storage implementation. </p>
<p>This class is a refinement of a sparse set that associates an object to an entity. The main purpose of this class is to extend sparse sets to store components in a registry. It guarantees fast access both to the elements and to the entities.</p>
<dl class="section note"><dt>Note</dt><dd>Entities and objects have the same order.</dd>
<dd>
Internal data structures arrange elements to maximize performance. There are no guarantees that objects are returned in the insertion order when iterate a storage. Do not make assumption on the order in any case.</dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>Empty types aren't explicitly instantiated. Therefore, many of the functions normally available for non-empty types will not be available for empty ones.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="namespaceentt.html#ac27c0013e504d544508cdacc01170b68" title="Alias declaration for the most common use case.">sparse_set&lt;Entity&gt;</a></dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Entity</td><td>A valid entity type (see <a class="el" href="classentt_1_1entt__traits.html" title="Entity traits.">entt_traits</a> for more details). </td></tr>
<tr><td class="paramname">Type</td><td>Type of objects assigned to the entities. </td></tr>
<tr><td class="paramname">Allocator</td><td>Type of allocator used to manage memory and elements. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00053">53</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="aaa785dc52f39f9133e42a854b6e7c20c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa785dc52f39f9133e42a854b6e7c20c">&#9670;&nbsp;</a></span>basic_storage() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::<a class="el" href="classentt_1_1basic__storage.html">basic_storage</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#a2daf8e64dd510609d8063fe7f3c011f3">allocator_type</a> &amp;&#160;</td>
<td class="paramname"><em>allocator</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an empty storage with a given allocator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">allocator</td><td>the allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00353">353</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a8723ddbf200fe151baf6dfcb613c7e31"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8723ddbf200fe151baf6dfcb613c7e31">&#9670;&nbsp;</a></span>basic_storage() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::<a class="el" href="classentt_1_1basic__storage.html">basic_storage</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__storage.html">basic_storage</a>&lt; Entity, Type, Allocator, typename &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00363">363</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ac411762f98f026482ce332c6b1e4229a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac411762f98f026482ce332c6b1e4229a">&#9670;&nbsp;</a></span>begin() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#ae8901ef6b3dffb8b16b884ca30750f7b">iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::begin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the beginning. </p>
<p>The returned iterator points to the first instance of the internal array. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a19fe48ae234f9725c80948b19e705889" title="Returns an iterator to the end.">end()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00461">461</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a777bce46cd8db4bbdfbc21353ab062ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a777bce46cd8db4bbdfbc21353ab062ce">&#9670;&nbsp;</a></span>begin() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::begin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the beginning. </p>
<p>The returned iterator points to the first instance of the internal array. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a19fe48ae234f9725c80948b19e705889" title="Returns an iterator to the end.">end()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00456">456</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="aff2228c8f45265417bf83694a3a47ce6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff2228c8f45265417bf83694a3a47ce6">&#9670;&nbsp;</a></span>capacity()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83">size_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::capacity </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the number of elements that a storage has currently allocated space for. </p>
<dl class="section return"><dt>Returns</dt><dd>Capacity of the storage. </dd></dl>
<p>Reimplemented from <a class="el" href="classentt_1_1basic__sparse__set.html#ac563edfd09c8b37256d49b05bde4f872">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a>.</p>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00419">419</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a2160a4b2a4c05fcab3fb14a8933953a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2160a4b2a4c05fcab3fb14a8933953a5">&#9670;&nbsp;</a></span>cbegin()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::cbegin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the beginning. </p>
<p>The returned iterator points to the first instance of the internal array. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a19fe48ae234f9725c80948b19e705889" title="Returns an iterator to the end.">end()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00450">450</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a253c6d2bd4677fa8a70bf12aab88d154"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a253c6d2bd4677fa8a70bf12aab88d154">&#9670;&nbsp;</a></span>cend()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::cend </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the end. </p>
<p>The returned iterator points to the element following the last instance of the internal array. Attempting to dereference the returned iterator results in undefined behavior.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00476">476</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="aa86ed935b31675eb3f6938755d671d2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa86ed935b31675eb3f6938755d671d2b">&#9670;&nbsp;</a></span>crbegin()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::crbegin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a reverse iterator to the beginning. </p>
<p>The returned iterator points to the first instance of the reversed internal array. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a72789cfb1fec3eae4fb1197965eadae2" title="Returns a reverse iterator to the end.">rend()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the reversed internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00499">499</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a0a4ae307c3423d97b779fe427b22feb6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a4ae307c3423d97b779fe427b22feb6">&#9670;&nbsp;</a></span>crend()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::crend </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a reverse iterator to the end. </p>
<p>The returned iterator points to the element following the last instance of the reversed internal array. Attempting to dereference the returned iterator results in undefined behavior.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the reversed internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00523">523</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="ae6351347f09a2eab06c69c81caea2d99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6351347f09a2eab06c69c81caea2d99">&#9670;&nbsp;</a></span>emplace()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<div class="memtemplate">
template&lt;typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a>&amp; <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::emplace </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a>&#160;</td>
<td class="paramname"><em>entt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Args &amp;&amp;...&#160;</td>
<td class="paramname"><em>args</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Assigns an entity to a storage and constructs its object. </p>
<p>This version accept both types that can be constructed in place directly and types like aggregates that do not work well with a placement new as performed usually under the hood during an <em>emplace back</em>.</p>
<dl class="section warning"><dt>Warning</dt><dd>Attempting to use an entity that already belongs to the storage results in undefined behavior.</dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Args</td><td>Types of arguments to use to construct the object. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
<tr><td class="paramname">args</td><td>Parameters to use to construct an object for the entity. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the newly created object. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00591">591</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a19fe48ae234f9725c80948b19e705889"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19fe48ae234f9725c80948b19e705889">&#9670;&nbsp;</a></span>end() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#ae8901ef6b3dffb8b16b884ca30750f7b">iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::end </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the end. </p>
<p>The returned iterator points to the element following the last instance of the internal array. Attempting to dereference the returned iterator results in undefined behavior.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00486">486</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="aaf44df9657be2a7975caf69cf92a4d3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaf44df9657be2a7975caf69cf92a4d3b">&#9670;&nbsp;</a></span>end() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#a7a7af18dfe585c8a399590da05a2ff6e">const_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::end </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the end. </p>
<p>The returned iterator points to the element following the last instance of the internal array. Attempting to dereference the returned iterator results in undefined behavior.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00481">481</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a05808e1a5b2f90d23fb01fb15a1effba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05808e1a5b2f90d23fb01fb15a1effba">&#9670;&nbsp;</a></span>get() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a>&amp; <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::get </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a>&#160;</td>
<td class="paramname"><em>entt</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object assigned to an entity. </p>
<dl class="section warning"><dt>Warning</dt><dd>Attempting to use an entity that doesn't belong to the storage results in undefined behavior.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The object assigned to the entity. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00553">553</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="afdb98de467567bf81772382ba2970413"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afdb98de467567bf81772382ba2970413">&#9670;&nbsp;</a></span>get() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a>&amp; <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::get </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a>&#160;</td>
<td class="paramname"><em>entt</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object assigned to an entity. </p>
<dl class="section warning"><dt>Warning</dt><dd>Attempting to use an entity that doesn't belong to the storage results in undefined behavior.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The object assigned to the entity. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00547">547</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="ac59504fc3055e5543c555989e295c4ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac59504fc3055e5543c555989e295c4ba">&#9670;&nbsp;</a></span>get_allocator()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">constexpr <a class="el" href="classentt_1_1basic__storage.html#a2daf8e64dd510609d8063fe7f3c011f3">allocator_type</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::get_allocator </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the associated allocator. </p>
<dl class="section return"><dt>Returns</dt><dd>The associated allocator. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00394">394</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a4fef4784b0834dd36644746dde9f4f84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4fef4784b0834dd36644746dde9f4f84">&#9670;&nbsp;</a></span>get_as_tuple() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::tuple&lt;<a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;&gt; <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::get_as_tuple </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a>&#160;</td>
<td class="paramname"><em>entt</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object assigned to an entity as a tuple. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classentt_1_1basic__storage.html#afdb98de467567bf81772382ba2970413" title="Returns the object assigned to an entity.">get</a></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The object assigned to the entity as a tuple. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00570">570</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="afcf228fe6c79886e49ce98274a80dcc3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afcf228fe6c79886e49ce98274a80dcc3">&#9670;&nbsp;</a></span>get_as_tuple() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::tuple&lt;const <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;&gt; <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::get_as_tuple </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a>&#160;</td>
<td class="paramname"><em>entt</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object assigned to an entity as a tuple. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classentt_1_1basic__storage.html#afdb98de467567bf81772382ba2970413" title="Returns the object assigned to an entity.">get</a></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The object assigned to the entity as a tuple. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00565">565</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="abc0cc7a4c7ebfe6d7b7af6b7b37ff405"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc0cc7a4c7ebfe6d7b7af6b7b37ff405">&#9670;&nbsp;</a></span>in_place_pop()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::in_place_pop </td>
<td>(</td>
<td class="paramtype">const Entity&#160;</td>
<td class="paramname"><em>entt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>ud</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Attempts to erase an entity from the internal packed array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
<tr><td class="paramname">ud</td><td>Optional user data that are forwarded as-is to derived classes. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classentt_1_1basic__sparse__set.html#a2fc57394e1feff1b1e3e7b602f5802fd">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a>.</p>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00313">313</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="ac9670a9916dc77f24403e4a41fdaed96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9670a9916dc77f24403e4a41fdaed96">&#9670;&nbsp;</a></span>insert() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<div class="memtemplate">
template&lt;typename EIt , typename CIt , typename = std::enable_if_t&lt;std::is_same_v&lt;std::decay_t&lt;typename std::iterator_traits&lt;CIt&gt;::value_type&gt;, value_type&gt;&gt;&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::insert </td>
<td>(</td>
<td class="paramtype">EIt&#160;</td>
<td class="paramname"><em>first</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">EIt&#160;</td>
<td class="paramname"><em>last</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">CIt&#160;</td>
<td class="paramname"><em>from</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Assigns one or more entities to a storage and constructs their objects from a given range. </p>
<dl class="section see"><dt>See also</dt><dd>construct</dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">EIt</td><td>Type of input iterator. </td></tr>
<tr><td class="paramname">CIt</td><td>Type of input iterator. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">first</td><td>An iterator to the first element of the range of entities. </td></tr>
<tr><td class="paramname">last</td><td>An iterator past the last element of the range of entities. </td></tr>
<tr><td class="paramname">from</td><td>An iterator to the first element of the range of objects. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00665">665</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="abc4d7d3a84ecc5fc8e878772074ce35f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc4d7d3a84ecc5fc8e878772074ce35f">&#9670;&nbsp;</a></span>insert() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<div class="memtemplate">
template&lt;typename It &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::insert </td>
<td>(</td>
<td class="paramtype">It&#160;</td>
<td class="paramname"><em>first</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">It&#160;</td>
<td class="paramname"><em>last</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a> &amp;&#160;</td>
<td class="paramname"><em>value</em> = <code>{}</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Assigns one or more entities to a storage and constructs their objects from a given instance. </p>
<dl class="section warning"><dt>Warning</dt><dd>Attempting to assign an entity that already belongs to the storage results in undefined behavior.</dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">It</td><td>Type of input iterator. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">first</td><td>An iterator to the first element of the range of entities. </td></tr>
<tr><td class="paramname">last</td><td>An iterator past the last element of the range of entities. </td></tr>
<tr><td class="paramname">value</td><td>An instance of the object to construct. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00637">637</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="aa5da3f4cfbda0add7a0fbcee565d842d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5da3f4cfbda0add7a0fbcee565d842d">&#9670;&nbsp;</a></span>move_and_pop()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::move_and_pop </td>
<td>(</td>
<td class="paramtype">const std::size_t&#160;</td>
<td class="paramname"><em>from</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::size_t&#160;</td>
<td class="paramname"><em>to</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">final</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Moves an entity in the internal packed array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">from</td><td>A valid position of an entity within storage. </td></tr>
<tr><td class="paramname">to</td><td>A valid position of an entity within storage. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classentt_1_1basic__sparse__set.html#abe61ba2bc567ec90efd60b619ba76d57">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a>.</p>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00285">285</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a7672e87c11c51f4edf70ae68def122c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7672e87c11c51f4edf70ae68def122c8">&#9670;&nbsp;</a></span>operator=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html">basic_storage</a>&amp; <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__storage.html">basic_storage</a>&lt; Entity, Type, Allocator, typename &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move assignment operator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This sparse set. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00379">379</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a210d872aa9752f42c9b9e1ed6641eb44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a210d872aa9752f42c9b9e1ed6641eb44">&#9670;&nbsp;</a></span>patch()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<div class="memtemplate">
template&lt;typename... Func&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#afad8274fbdff981737a962b375bd0d99">value_type</a>&amp; <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::patch </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#abb0956e379c629ba413b4856baf5dc88">entity_type</a>&#160;</td>
<td class="paramname"><em>entt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Func &amp;&amp;...&#160;</td>
<td class="paramname"><em>func</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Updates the instance assigned to a given entity in-place. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Func</td><td>Types of the function objects to invoke. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
<tr><td class="paramname">func</td><td>Valid function objects. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A reference to the updated instance. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00616">616</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="ab8dc30f83d69d4fcaae062dc2a6334c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8dc30f83d69d4fcaae062dc2a6334c4">&#9670;&nbsp;</a></span>raw() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aaf58c7df1fc9135bbfac2516df0b42ff">pointer</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::raw </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Direct access to the array of objects. </p>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the array of objects. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00438">438</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a842d101561221a5b6823ecb68297d0c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a842d101561221a5b6823ecb68297d0c7">&#9670;&nbsp;</a></span>raw() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#a24406caa8c4edbe459fe522151f0d1c2">const_pointer</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::raw </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Direct access to the array of objects. </p>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the array of objects. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00433">433</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a7f86841bc48d579993a8f3c0f8e080c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f86841bc48d579993a8f3c0f8e080c3">&#9670;&nbsp;</a></span>rbegin() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#a2947b5cf419bfd039cf5fca0c56cbb74">reverse_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::rbegin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a reverse iterator to the beginning. </p>
<p>The returned iterator points to the first instance of the reversed internal array. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a72789cfb1fec3eae4fb1197965eadae2" title="Returns a reverse iterator to the end.">rend()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the reversed internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00509">509</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a294e9330b74e232a905b9f78a6524917"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a294e9330b74e232a905b9f78a6524917">&#9670;&nbsp;</a></span>rbegin() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::rbegin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a reverse iterator to the beginning. </p>
<p>The returned iterator points to the first instance of the reversed internal array. If the storage is empty, the returned iterator will be equal to <code><a class="el" href="classentt_1_1basic__storage.html#a72789cfb1fec3eae4fb1197965eadae2" title="Returns a reverse iterator to the end.">rend()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first instance of the reversed internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00504">504</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a72789cfb1fec3eae4fb1197965eadae2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72789cfb1fec3eae4fb1197965eadae2">&#9670;&nbsp;</a></span>rend() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#a2947b5cf419bfd039cf5fca0c56cbb74">reverse_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::rend </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a reverse iterator to the end. </p>
<p>The returned iterator points to the element following the last instance of the reversed internal array. Attempting to dereference the returned iterator results in undefined behavior.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the reversed internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00533">533</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a9f85346282d5ea0f578607e02b37f1dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f85346282d5ea0f578607e02b37f1dd">&#9670;&nbsp;</a></span>rend() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__storage.html#aa37c4581b7b9fed29fb4530db6541ab8">const_reverse_iterator</a> <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::rend </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a reverse iterator to the end. </p>
<p>The returned iterator points to the element following the last instance of the reversed internal array. Attempting to dereference the returned iterator results in undefined behavior.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the element following the last instance of the reversed internal array. </dd></dl>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00528">528</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a9006cd644effed8a5290283d05352ce7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9006cd644effed8a5290283d05352ce7">&#9670;&nbsp;</a></span>reserve()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::reserve </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__storage.html#aa0e2c748f5a9f0a1a3fb7eb9d5fa8d83">size_type</a>&#160;</td>
<td class="paramname"><em>cap</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Increases the capacity of a storage. </p>
<p>If the new capacity is greater than the current capacity, new storage is allocated, otherwise the method does nothing.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cap</td><td>Desired capacity. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classentt_1_1basic__sparse__set.html#a58d49df52ee3133a1347dc01131a4f1a">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a>.</p>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00406">406</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a49f8fd7aea3471acee8c9c7aec874a65"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a49f8fd7aea3471acee8c9c7aec874a65">&#9670;&nbsp;</a></span>swap_and_pop()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::swap_and_pop </td>
<td>(</td>
<td class="paramtype">const Entity&#160;</td>
<td class="paramname"><em>entt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>ud</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Attempts to erase an entity from the internal packed array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid entity identifier. </td></tr>
<tr><td class="paramname">ud</td><td>Optional user data that are forwarded as-is to derived classes. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classentt_1_1basic__sparse__set.html#af5a62bddad236131a89a3c7d4798c998">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a>.</p>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00295">295</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<a id="a4d761b7d0e922003761366ff46f01cec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d761b7d0e922003761366ff46f01cec">&#9670;&nbsp;</a></span>swap_at()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Entity , typename Type , typename Allocator , typename &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__storage.html">entt::basic_storage</a>&lt; Entity, Type, Allocator, typename &gt;::swap_at </td>
<td>(</td>
<td class="paramtype">const std::size_t&#160;</td>
<td class="paramname"><em>lhs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::size_t&#160;</td>
<td class="paramname"><em>rhs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">final</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Swaps two entities in the internal packed array. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lhs</td><td>A valid position of an entity within storage. </td></tr>
<tr><td class="paramname">rhs</td><td>A valid position of an entity within storage. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classentt_1_1basic__sparse__set.html#a7839ecd024cf400c2d5e8d22c8cff05f">entt::basic_sparse_set&lt; Entity, std::allocator_traits&lt; Allocator &gt;::template rebind_alloc&lt; Entity &gt; &gt;</a>.</p>
<p class="definition">Definition at line <a class="el" href="storage_8hpp_source.html#l00276">276</a> of file <a class="el" href="storage_8hpp_source.html">storage.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/entity/<a class="el" href="entity_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/entity/<a class="el" href="storage_8hpp_source.html">storage.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>