@@ -207,7 +205,7 @@ class entt::basic_group< Entity, exclude_t< Exclude... >, get_t< Get
-Definition at line 603 of file group.hpp .
+Definition at line 533 of file group.hpp .
◆ back()
@@ -237,7 +235,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns the last entity of the group, if any.
Returns The last entity of the group if one exists, the null entity otherwise.
-Definition at line 939 of file group.hpp .
+Definition at line 783 of file group.hpp .
@@ -253,7 +251,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
- iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::begin
+ iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::begin
(
)
const
@@ -268,10 +266,9 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns an iterator to the first entity of the group.
The returned iterator points to the first entity of the group. If the group is empty, the returned iterator will be equal to end() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the group.
-Definition at line 867 of file group.hpp .
+Definition at line 723 of file group.hpp .
@@ -310,55 +307,12 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns True if the group contains the given entity, false otherwise.
-Definition at line 969 of file group.hpp .
-
-
-
-
-◆ data() [1/2]
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Get, typename... Owned>
-
-template<typename Component >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Direct access to the list of entities of a given pool.
-
The returned pointer is such that range [data<Component>(), data<Component>() + size<Component>()] is always a valid range, even if the container is empty.
- Moreover, in case the group owns the given component, the range [data<Component>(), data<Component>() + size() ] is such that it contains the entities that are part of the group itself.
-
Note Entities are in the reverse order as returned by the begin/end iterators.
-
Template Parameters
-
- Component Type of component in which one is interested.
-
-
-
-
Returns A pointer to the array of entities.
-
-
Definition at line 835 of file group.hpp .
+
Definition at line 821 of file group.hpp .
-◆ data() [2/2]
+◆ data()
@@ -383,16 +337,49 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Direct access to the list of entities.
-
The returned pointer is such that range [data() , data() + size() ] is always a valid range, even if the container is empty.
-
Note Entities are in the reverse order as returned by the begin/end iterators.
+
The returned pointer is such that range [data() , data() + size() ) is always a valid range, even if the container is empty.
Returns A pointer to the array of entities.
-
Definition at line 851 of file group.hpp .
+
Definition at line 711 of file group.hpp .
+
+
+
+
+◆ each() [1/2]
+
+
+
+
+template<typename Entity , typename... Exclude, typename... Get, typename... Owned>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterable object to use to visit the group.
+
The iterable object returns tuples that contain the current entity and a set of references to its non-empty components. The constness of the components is as requested.
+
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
+
Returns An iterable object to use to visit the group.
+
+
Definition at line 899 of file group.hpp .
-◆ each()
+◆ each() [2/2]
@@ -438,19 +425,17 @@ template<typename Func >
-
Definition at line 1024 of file group.hpp .
+
Definition at line 876 of file group.hpp .
-
-◆ empty()
+
+◆ empty()
template<typename Entity , typename... Exclude, typename... Get, typename... Owned>
-
-template<typename... Component>
@@ -469,16 +454,10 @@ template<typename... Component>
-
Checks whether a group or some pools are empty.
-
Template Parameters
-
- Component Types of components in which one is interested.
-
-
-
-
Returns True if the group or the pools are empty, false otherwise.
+
Checks whether a group is empty.
+
Returns True if the group is empty, false otherwise.
-
Definition at line 787 of file group.hpp .
+
Definition at line 679 of file group.hpp .
@@ -494,7 +473,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
- iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::end
+ iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::end
(
)
const
@@ -509,10 +488,9 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns an iterator that is past the last entity of the group.
The returned iterator points to the entity following the last entity of the group. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the group.
-Definition at line 885 of file group.hpp .
+Definition at line 737 of file group.hpp .
@@ -528,7 +506,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
- iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::find
+ iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::find
(
const entity_type
entt )
@@ -551,7 +529,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns An iterator to the given entity if it's found, past the end iterator otherwise.
-Definition at line 950 of file group.hpp .
+Definition at line 794 of file group.hpp .
@@ -583,12 +561,12 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns the first entity of the group, if any.
Returns The first entity of the group if one exists, the null entity otherwise.
-Definition at line 929 of file group.hpp .
+Definition at line 773 of file group.hpp .
-
-◆ get()
+
+◆ get()
@@ -603,7 +581,7 @@ template<typename... Component>
decltype(auto) entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::get
(
- [[maybe_unused] ] const entity_type
+ const entity_type
entt )
const
@@ -617,8 +595,7 @@ template<typename... Component>
Returns the components assigned to the given entity.
Prefer this function instead of registry::get during iterations. It has far better performance than its counterpart.
-Warning Attempting to use an invalid component type results in a compilation error. Attempting to use an entity that doesn't belong to the group results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the group doesn't contain the given entity.
+Warning Attempting to use an invalid component type results in a compilation error. Attempting to use an entity that doesn't belong to the group results in undefined behavior.
Template Parameters
Component Types of components to get.
@@ -633,7 +610,39 @@ template<typename... Component>
Returns The components assigned to the entity.
-Definition at line 991 of file group.hpp .
+Definition at line 841 of file group.hpp .
+
+
+
+
+◆ operator bool()
+
+
+
+
+template<typename Entity , typename... Exclude, typename... Get, typename... Owned>
+
+
+
+
+
+
+inline explicit noexcept
+
+
+
+
+
Checks if a group is properly initialized.
+
Returns True if the group is properly initialized, false otherwise.
+
+
Definition at line 812 of file group.hpp .
@@ -672,41 +681,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns The identifier that occupies the given position.
-Definition at line 960 of file group.hpp .
-
-
-
-
-◆ proxy()
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Get, typename... Owned>
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Returns an iterable object to use to visit the group.
-
The iterable object returns tuples that contain the current entity and a set of references to its non-empty components. The constness of the components is as requested.
-
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
-
Returns An iterable object to use to visit the group.
-
-
Definition at line 1043 of file group.hpp .
+
Definition at line 804 of file group.hpp .
@@ -738,9 +713,9 @@ template<typename Component >
Direct access to the list of components of a given pool.
-
The returned pointer is such that range [raw<Component>(), raw<Component>() + size<Component>()] is always a valid range, even if the container is empty.
- Moreover, in case the group owns the given component, the range [raw<Component>(), raw<Component>() + size() ] is such that it contains the instances that are part of the group itself.
-
Note Components are in the reverse order as returned by the begin/end iterators.
+
The returned pointer is such that range [raw<Component>(), raw<Component>() + size() ) is always a valid range, even if the container is empty.
+
+
Warning This function is only available for owned types.
Template Parameters
Component Type of component in which one is interested.
@@ -749,7 +724,7 @@ template<typename Component >
Returns A pointer to the array of components.
-Definition at line 813 of file group.hpp .
+Definition at line 697 of file group.hpp .
@@ -765,7 +740,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
- reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::rbegin
+ reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::rbegin
(
)
const
@@ -780,10 +755,9 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns an iterator to the first entity of the reversed group.
The returned iterator points to the first entity of the reversed group. If the group is empty, the returned iterator will be equal to rend() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the reversed group.
-Definition at line 901 of file group.hpp .
+Definition at line 749 of file group.hpp .
@@ -799,7 +773,7 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
- reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::rend
+ reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... >::rend
(
)
const
@@ -814,55 +788,14 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns an iterator that is past the last entity of the reversed group.
The returned iterator points to the entity following the last entity of the reversed group. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the reversed group.
-Definition at line 920 of file group.hpp .
-
-
-
-
-◆ size() [1/2]
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Get, typename... Owned>
-
-template<typename Component >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Returns the number of existing components of the given type.
-
Template Parameters
-
- Component Type of component of which to return the size.
-
-
-
-
Returns Number of existing components of the given type.
-
-
Definition at line 769 of file group.hpp .
+
Definition at line 764 of file group.hpp .
-◆ size() [2/2]
+◆ size()
@@ -889,12 +822,12 @@ template<typename Entity , typename... Exclude, typename... Get, typename...
Returns the number of entities that have the given components.
Returns Number of entities that have the given components.
-
Definition at line 777 of file group.hpp .
+
Definition at line 671 of file group.hpp .
-
-◆ sort()
+
+◆ sort()
@@ -927,7 +860,7 @@ template<typename... Component, typename Compare , typename Sort = std_sort,
)
-
+ const
@@ -969,7 +902,7 @@ template<typename... Component, typename Compare , typename Sort = std_sort,
-Definition at line 1085 of file group.hpp .
+Definition at line 941 of file group.hpp .
@@ -977,7 +910,7 @@ template<typename... Component, typename Compare , typename Sort = std_sort,
src/entt/entity/group.hpp
-Entity entity_type
Underlying entity identifier.
+Entity entity_type
Underlying entity identifier.
Unsigned integer type.
-
-using iterator = typename sparse_set < Entity >::iterator
- Random access iterator type.
-
-
-using reverse_iterator = typename sparse_set < Entity >::reverse_iterator
- Reversed iterator type.
-
+
+using iterator = typename basic_sparse_set < Entity >::iterator
+ Random access iterator type.
+
+
+using reverse_iterator = typename basic_sparse_set < Entity >::reverse_iterator
+ Reversed iterator type.
+
-template<typename Component >
-size_type size () const noexcept
- Returns the number of existing components of the given type. More...
-
+
+ basic_group () noexcept
+ Default constructor to use to create empty, invalid groups.
+
size_type size () const noexcept
Returns the number of entities that have the given components. More...
@@ -117,31 +117,22 @@ Public Member Functions
void shrink_to_fit ()
Requests the removal of unused capacity.
-template<typename... Component>
-bool empty () const noexcept
- Checks whether a group or some pools are empty. More...
-
-template<typename Component >
-Component * raw () const noexcept
- Direct access to the list of components of a given pool. More...
-
-template<typename Component >
-const entity_type * data () const noexcept
- Direct access to the list of entities of a given pool. More...
-
+bool empty () const noexcept
+ Checks whether a group is empty. More...
+
const entity_type * data () const noexcept
Direct access to the list of entities. More...
-iterator begin () const noexcept
+iterator begin () const noexcept
Returns an iterator to the first entity of the group. More...
-iterator end () const noexcept
+iterator end () const noexcept
Returns an iterator that is past the last entity of the group. More...
-reverse_iterator rbegin () const noexcept
+reverse_iterator rbegin () const noexcept
Returns an iterator to the first entity of the reversed group. More...
-reverse_iterator rend () const noexcept
+reverse_iterator rend () const noexcept
Returns an iterator that is past the last entity of the reversed group. More...
entity_type front () const
@@ -150,26 +141,29 @@ void entity_type back () const
Returns the last entity of the group, if any. More...
-iterator find (const entity_type entt) const
+iterator find (const entity_type entt) const
Finds an entity. More...
entity_type operator[] (const size_type pos) const
Returns the identifier that occupies the given position. More...
+ operator bool () const noexcept
+ Checks if a group is properly initialized. More...
+
bool contains (const entity_type entt) const
Checks if a group contains an entity. More...
-template<typename... Component>
-decltype(auto) get ([[maybe_unused]] const entity_type entt) const
- Returns the components assigned to the given entity. More...
-
+template<typename... Component>
+decltype(auto) get (const entity_type entt) const
+ Returns the components assigned to the given entity. More...
+
template<typename Func >
void each (Func func) const
Iterates entities and components and applies the given function object to them. More...
-auto proxy () const noexcept
- Returns an iterable object to use to visit the group. More...
-
+iterable_group each () const noexcept
+ Returns an iterable object to use to visit the group. More...
+
template<typename... Component, typename Compare , typename Sort = std_sort, typename... Args>
void sort (Compare compare, Sort algo=Sort{}, Args &&... args)
Sort a group according to the given comparison function. More...
@@ -242,7 +236,7 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns the last entity of the group, if any.
Returns The last entity of the group if one exists, the null entity otherwise.
-Definition at line 370 of file group.hpp .
+Definition at line 283 of file group.hpp .
@@ -258,7 +252,7 @@ template<typename Entity , typename... Exclude, typename... Get>
- iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::begin
+ iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::begin
(
)
const
@@ -273,10 +267,9 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns an iterator to the first entity of the group.
The returned iterator points to the first entity of the group. If the group is empty, the returned iterator will be equal to end() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the group.
-Definition at line 298 of file group.hpp .
+Definition at line 223 of file group.hpp .
@@ -308,7 +301,7 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns the number of elements that a group has currently allocated space for.
Returns Capacity of the group.
-Definition at line 209 of file group.hpp .
+Definition at line 184 of file group.hpp .
@@ -347,54 +340,12 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns True if the group contains the given entity, false otherwise.
-Definition at line 400 of file group.hpp .
-
-
-
-
-◆ data() [1/2]
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Get>
-
-template<typename Component >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Direct access to the list of entities of a given pool.
-
The returned pointer is such that range [data<Component>(), data<Component>() + size<Component>()] is always a valid range, even if the container is empty.
-
Note Entities are in the reverse order as returned by the begin/end iterators.
-
Template Parameters
-
- Component Type of component in which one is interested.
-
-
-
-
Returns A pointer to the array of entities.
-
-
Definition at line 266 of file group.hpp .
+
Definition at line 321 of file group.hpp .
-◆ data() [2/2]
+◆ data()
@@ -419,16 +370,49 @@ template<typename Entity , typename... Exclude, typename... Get>
Direct access to the list of entities.
-
The returned pointer is such that range [data() , data() + size() ] is always a valid range, even if the container is empty.
-
Note Entities are in the reverse order as returned by the begin/end iterators.
+
The returned pointer is such that range [data() , data() + size() ) is always a valid range, even if the container is empty.
Returns A pointer to the array of entities.
-
Definition at line 282 of file group.hpp .
+
Definition at line 211 of file group.hpp .
+
+
+
+
+◆ each() [1/2]
+
+
+
+
+template<typename Entity , typename... Exclude, typename... Get>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterable object to use to visit the group.
+
The iterable object returns tuples that contain the current entity and a set of references to its non-empty components. The constness of the components is as requested.
+
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
+
Returns An iterable object to use to visit the group.
+
+
Definition at line 399 of file group.hpp .
-◆ each()
+◆ each() [2/2]
@@ -474,19 +458,17 @@ template<typename Func >
-
Definition at line 455 of file group.hpp .
+
Definition at line 376 of file group.hpp .
-
-◆ empty()
+
+◆ empty()
template<typename Entity , typename... Exclude, typename... Get>
-
-template<typename... Component>
@@ -505,16 +487,10 @@ template<typename... Component>
-
Checks whether a group or some pools are empty.
-
Template Parameters
-
- Component Types of components in which one is interested.
-
-
-
-
Returns True if the group or the pools are empty, false otherwise.
+
Checks whether a group is empty.
+
Returns True if the group is empty, false otherwise.
-
Definition at line 224 of file group.hpp .
+
Definition at line 199 of file group.hpp .
@@ -530,7 +506,7 @@ template<typename Entity , typename... Exclude, typename... Get>
- iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::end
+ iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::end
(
)
const
@@ -545,10 +521,9 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns an iterator that is past the last entity of the group.
The returned iterator points to the entity following the last entity of the group. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the group.
-Definition at line 316 of file group.hpp .
+Definition at line 237 of file group.hpp .
@@ -564,7 +539,7 @@ template<typename Entity , typename... Exclude, typename... Get>
- iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::find
+ iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::find
(
const entity_type
entt )
@@ -587,7 +562,7 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns An iterator to the given entity if it's found, past the end iterator otherwise.
-Definition at line 381 of file group.hpp .
+Definition at line 294 of file group.hpp .
@@ -619,12 +594,12 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns the first entity of the group, if any.
Returns The first entity of the group if one exists, the null entity otherwise.
-Definition at line 360 of file group.hpp .
+Definition at line 273 of file group.hpp .
-
-◆ get()
+
+◆ get()
@@ -639,7 +614,7 @@ template<typename... Component>
decltype(auto) entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::get
(
- [[maybe_unused] ] const entity_type
+ const entity_type
entt )
const
@@ -653,8 +628,7 @@ template<typename... Component>
Returns the components assigned to the given entity.
Prefer this function instead of registry::get during iterations. It has far better performance than its counterpart.
-Warning Attempting to use an invalid component type results in a compilation error. Attempting to use an entity that doesn't belong to the group results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the group doesn't contain the given entity.
+Warning Attempting to use an invalid component type results in a compilation error. Attempting to use an entity that doesn't belong to the group results in undefined behavior.
Template Parameters
Component Types of components to get.
@@ -669,7 +643,39 @@ template<typename... Component>
Returns The components assigned to the entity.
-Definition at line 422 of file group.hpp .
+Definition at line 341 of file group.hpp .
+
+
+
+
+◆ operator bool()
+
+
+
+
+template<typename Entity , typename... Exclude, typename... Get>
+
+
+
+
+
+
+inline explicit noexcept
+
+
+
+
+
Checks if a group is properly initialized.
+
Returns True if the group is properly initialized, false otherwise.
+
+
Definition at line 312 of file group.hpp .
@@ -708,83 +714,7 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns The identifier that occupies the given position.
-Definition at line 391 of file group.hpp .
-
-
-
-
-◆ proxy()
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Get>
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Returns an iterable object to use to visit the group.
-
The iterable object returns tuples that contain the current entity and a set of references to its non-empty components. The constness of the components is as requested.
-
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
-
Returns An iterable object to use to visit the group.
-
-
Definition at line 473 of file group.hpp .
-
-
-
-
-◆ raw()
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Get>
-
-template<typename Component >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Direct access to the list of components of a given pool.
-
The returned pointer is such that range [raw<Component>(), raw<Component>() + size<Component>()] is always a valid range, even if the container is empty.
-
Note Components are in the reverse order as returned by the begin/end iterators.
-
Template Parameters
-
- Component Type of component in which one is interested.
-
-
-
-
Returns A pointer to the array of components.
-
-
Definition at line 247 of file group.hpp .
+
Definition at line 304 of file group.hpp .
@@ -800,7 +730,7 @@ template<typename Entity , typename... Exclude, typename... Get>
- reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::rbegin
+ reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::rbegin
(
)
const
@@ -815,10 +745,9 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns an iterator to the first entity of the reversed group.
The returned iterator points to the first entity of the reversed group. If the group is empty, the returned iterator will be equal to rend() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the reversed group.
-Definition at line 332 of file group.hpp .
+Definition at line 249 of file group.hpp .
@@ -834,7 +763,7 @@ template<typename Entity , typename... Exclude, typename... Get>
- reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::rend
+ reverse_iterator entt::basic_group < Entity, exclude_t < Exclude... >, get_t < Get... > >::rend
(
)
const
@@ -849,55 +778,14 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns an iterator that is past the last entity of the reversed group.
The returned iterator points to the entity following the last entity of the reversed group. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the reversed group.
-Definition at line 351 of file group.hpp .
-
-
-
-
-◆ size() [1/2]
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Get>
-
-template<typename Component >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Returns the number of existing components of the given type.
-
Template Parameters
-
- Component Type of component of which to return the size.
-
-
-
-
Returns Number of existing components of the given type.
-
-
Definition at line 192 of file group.hpp .
+
Definition at line 264 of file group.hpp .
-◆ size() [2/2]
+◆ size()
@@ -924,7 +812,7 @@ template<typename Entity , typename... Exclude, typename... Get>
Returns the number of entities that have the given components.
Returns Number of entities that have the given components.
-
Definition at line 200 of file group.hpp .
+
Definition at line 175 of file group.hpp .
@@ -965,7 +853,7 @@ template<typename Component >
-Definition at line 546 of file group.hpp .
+Definition at line 474 of file group.hpp .
@@ -1045,7 +933,7 @@ template<typename... Component, typename Compare , typename Sort = std_sort,
-Definition at line 514 of file group.hpp .
+Definition at line 440 of file group.hpp .
@@ -1053,7 +941,7 @@ template<typename... Component, typename Compare , typename Sort = std_sort,
src/entt/entity/group.hpp
-Entity entity_type
Underlying entity identifier.
+Entity entity_type
Underlying entity identifier.
diff --git a/classentt_1_1basic__hashed__string.html b/classentt_1_1basic__hashed__string.html
index de3d099fb..fbf088859 100644
--- a/classentt_1_1basic__hashed__string.html
+++ b/classentt_1_1basic__hashed__string.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -124,6 +124,9 @@ constexpr
+static constexpr hash_type value (const value_type *str, std::size_t size) noexcept
+ Returns directly the numeric representation of a string view. More...
+
template<std::size_t N>
static constexpr hash_type value (const value_type (&str)[N]) noexcept
Returns directly the numeric representation of a string. More...
@@ -131,9 +134,6 @@ Static Public Member Functions
static hash_type value (const_wrapper wrapper) noexcept
Returns directly the numeric representation of a string. More...
-static hash_type value (const value_type *str, std::size_t size) noexcept
- Returns directly the numeric representation of a string view. More...
-
template<typename Char>
@@ -405,8 +405,8 @@ template<typename Char >
-
-◆ value() [2/4]
+
+◆ value() [2/4]
@@ -417,7 +417,7 @@ template<typename Char >
-inline static noexcept
+
inline static constexpr noexcept
@@ -451,7 +451,7 @@ template<typename Char >
Returns The numeric representation of the string.
-Definition at line 125 of file hashed_string.hpp .
+Definition at line 96 of file hashed_string.hpp .
@@ -500,7 +500,7 @@ template<std::size_t N>
Returns The numeric representation of the string.
-Definition at line 106 of file hashed_string.hpp .
+Definition at line 118 of file hashed_string.hpp .
@@ -539,7 +539,7 @@ template<typename Char >
Returns The numeric representation of the string.
-Definition at line 115 of file hashed_string.hpp .
+Definition at line 127 of file hashed_string.hpp .
diff --git a/classentt_1_1basic__observer-members.html b/classentt_1_1basic__observer-members.html
index 461d97565..ff8ae32cf 100644
--- a/classentt_1_1basic__observer-members.html
+++ b/classentt_1_1basic__observer-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -87,7 +87,7 @@ $(function() {
empty () const noexceptentt::basic_observer< Entity > inline
end () const noexceptentt::basic_observer< Entity > inline
entity_type typedefentt::basic_observer< Entity >
- iterator typedefentt::basic_observer< Entity >
+ iterator typedefentt::basic_observer< Entity >
operator= (const basic_observer &)=deleteentt::basic_observer< Entity >
operator= (basic_observer &&)=deleteentt::basic_observer< Entity >
size () const noexceptentt::basic_observer< Entity > inline
diff --git a/classentt_1_1basic__observer.html b/classentt_1_1basic__observer.html
index e190abdd5..04d77f4fa 100644
--- a/classentt_1_1basic__observer.html
+++ b/classentt_1_1basic__observer.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -91,10 +91,10 @@ using size_type = std::size_t
Unsigned integer type.
-
-using iterator = typename sparse_set < Entity >::iterator
- Random access iterator type.
-
+
+using iterator = typename basic_sparse_set < Entity >::iterator
+ Random access iterator type.
+
@@ -141,10 +141,10 @@ void const entity_type * data () const noexcept
Direct access to the list of entities of the observer. More...
-iterator begin () const noexcept
+iterator begin () const noexcept
Returns an iterator to the first entity of the observer. More...
-iterator end () const noexcept
+iterator end () const noexcept
Returns an iterator that is past the last entity of the observer. More...
@@ -191,7 +191,7 @@ class entt::basic_observer< Entity >
-Definition at line 171 of file observer.hpp .
+Definition at line 172 of file observer.hpp .
◆ basic_observer()
@@ -245,7 +245,7 @@ template<typename... Matcher>
-Definition at line 296 of file observer.hpp .
+Definition at line 298 of file observer.hpp .
@@ -262,7 +262,7 @@ template<typename Entity >
- iterator entt::basic_observer < Entity >::begin
+ iterator entt::basic_observer < Entity >::begin
(
)
const
@@ -279,7 +279,7 @@ template<typename Entity >
The returned iterator points to the first entity of the observer. If the container is empty, the returned iterator will be equal to end() .
Returns An iterator to the first entity of the observer.
-Definition at line 380 of file observer.hpp .
+Definition at line 379 of file observer.hpp .
@@ -365,11 +365,11 @@ template<typename Entity >
Direct access to the list of entities of the observer.
-
The returned pointer is such that range [data() , data() + size() ] is always a valid range, even if the container is empty.
+
The returned pointer is such that range [data() , data() + size() ) is always a valid range, even if the container is empty.
Note Entities are in the reverse order as returned by the begin/end iterators.
Returns A pointer to the array of entities.
-
Definition at line 368 of file observer.hpp .
+
Definition at line 367 of file observer.hpp .
@@ -416,7 +416,7 @@ template<typename Func >
-Definition at line 433 of file observer.hpp .
+Definition at line 432 of file observer.hpp .
@@ -465,7 +465,7 @@ template<typename Func >
-Definition at line 417 of file observer.hpp .
+Definition at line 416 of file observer.hpp .
@@ -497,7 +497,7 @@ template<typename Entity >
Checks whether an observer is empty.
Returns True if the observer is empty, false otherwise.
-Definition at line 352 of file observer.hpp .
+Definition at line 351 of file observer.hpp .
@@ -513,7 +513,7 @@ template<typename Entity >
- iterator entt::basic_observer < Entity >::end
+ iterator entt::basic_observer < Entity >::end
(
)
const
@@ -530,7 +530,7 @@ template<typename Entity >
The returned iterator points to the entity following the last entity of the observer. Attempting to dereference the returned iterator results in undefined behavior.
Returns An iterator to the entity following the last entity of the observer.
-Definition at line 394 of file observer.hpp .
+Definition at line 393 of file observer.hpp .
@@ -624,7 +624,7 @@ template<typename Entity >
Returns the number of elements in an observer.
Returns Number of elements.
-Definition at line 344 of file observer.hpp .
+Definition at line 343 of file observer.hpp .
@@ -633,7 +633,7 @@ template<typename Entity >
src/entt/entity/observer.hpp
-Entity entity_type
Underlying entity identifier.
+Entity entity_type
Underlying entity identifier.
Unsigned integer type.
+
+using poly_storage = typename poly_storage_traits < Entity >::storage_type
+ Poly storage type.
+
@@ -114,6 +118,12 @@ Public Member Functions
void prepare ()
Prepares a pool for the given type if required. More...
+poly_storage storage (const type_info info)
+ Returns a poly storage for a given type. More...
+
+poly_storage storage (const type_info info) const
+ Returns a poly storage for a given type. More...
+
template<typename Component >
size_type size () const
Returns the number of existing components of the given type. More...
@@ -128,6 +138,9 @@ Public Member Functions
void reserve (const size_type cap)
Increases the capacity of the registry or of the pools for the given components. More...
+void reserve_pools (const size_t count)
+ Reserves enough space to store count pools. More...
+
template<typename Component >
size_type capacity () const
Returns the capacity of the pool for the given component. More...
@@ -158,6 +171,9 @@ Public Member Functions
const entity_type * data () const noexcept
Direct access to the list of entities of a registry. More...
+entity_type destroyed () const noexcept
+ Returns the head of the list of destroyed entities. More...
+
bool valid (const entity_type entity ) const
Checks if an entity identifier refers to a valid entity. More...
@@ -174,10 +190,10 @@ Public Member Functions
void create (It first, It last)
Assigns each element in a range an entity. More...
-template<typename It >
-void assign (It first, It last)
- Assigns entities to an empty registry. More...
-
+template<typename It >
+void assign (It first, It last, const entity_type destroyed )
+ Assigns entities to an empty registry. More...
+
void destroy (const entity_type entity )
Destroys an entity. More...
@@ -298,18 +314,18 @@ Public Member Functions
basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... > group (get_t < Get... >, exclude_t < Exclude... >={})
Returns a group for the given components. More...
-template<typename... Owned, typename... Get, typename... Exclude>
-basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... > group (get_t < Get... >, exclude_t < Exclude... >={}) const
- Returns a group for the given components. More...
-
+template<typename... Owned, typename... Get, typename... Exclude>
+basic_group < Entity, exclude_t < Exclude... >, get_t < Get... >, Owned... > group_if_exists (get_t < Get... >, exclude_t < Exclude... >={}) const
+ Returns a group for the given components. More...
+
template<typename... Owned, typename... Exclude>
basic_group < Entity, exclude_t < Exclude... >, get_t <>, Owned... > group (exclude_t < Exclude... >={})
Returns a group for the given components. More...
-template<typename... Owned, typename... Exclude>
-basic_group < Entity, exclude_t < Exclude... >, get_t <>, Owned... > group (exclude_t < Exclude... >={}) const
- Returns a group for the given components. More...
-
+template<typename... Owned, typename... Exclude>
+basic_group < Entity, exclude_t < Exclude... >, get_t <>, Owned... > group_if_exists (exclude_t < Exclude... >={}) const
+ Returns a group for the given components. More...
+
template<typename... Component>
bool sortable () const
Checks whether the given components belong to any group. More...
@@ -328,11 +344,11 @@ Public Member Functions
template<typename Func >
void visit (entity_type entity , Func func) const
- Visits an entity and returns the types for its components. More...
+ Visits an entity and returns the type info for its components. More...
template<typename Func >
void visit (Func func) const
- Visits a registry and returns the types for its components. More...
+ Visits a registry and returns the type info for its components. More...
template<typename Type , typename... Args>
Type & set (Args &&... args)
@@ -364,7 +380,7 @@ Public Member Functions
template<typename Func >
void ctx (Func func) const
- Visits a registry and returns the types for its context variables. More...
+ Visits a registry and returns the type info for its context variables. More...
Definition at line 43 of file registry.hpp .
+Definition at line 44 of file registry.hpp .
◆ alive()
@@ -420,7 +436,7 @@ template<typename Entity >
Returns the number of entities still in use.
Returns Number of entities still in use.
-Definition at line 272 of file registry.hpp .
+Definition at line 221 of file registry.hpp .
@@ -438,7 +454,7 @@ template<typename... Component>
- bool entt::basic_registry < Entity >::any
+ bool entt::basic_registry < Entity >::any
(
const entity_type
entity )
@@ -453,8 +469,7 @@ template<typename... Component>
Checks if an entity has at least one of the given components.
-
Warning Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+
Warning Attempting to use an invalid entity results in undefined behavior.
Template Parameters
Component Components for which to perform the check.
@@ -469,12 +484,12 @@ template<typename... Component>
Returns True if the entity has at least one of the given components, false otherwise.
-Definition at line 892 of file registry.hpp .
+Definition at line 828 of file registry.hpp .
-
-◆ assign()
+
+◆ assign()
@@ -496,7 +511,13 @@ template<typename It >
It
-
last
+
last ,
+
+
+
+
+ const entity_type
+ destroyed
@@ -512,9 +533,9 @@ template<typename It >
Assigns entities to an empty registry.
-
This function is intended for use in conjunction with raw.
- Don't try to inject ranges of randomly generated entities. There is no guarantee that a registry will continue to work properly in this case.
-
Warning An assertion will abort the execution at runtime in debug mode if all pools aren't empty.
+
This function is intended for use in conjunction with raw and assign.
+ Don't try to inject ranges of randomly generated entities nor the wrong head for the list of destroyed entities. There is no guarantee that a registry will continue to work properly in this case.
+
Warning All pools must be empty for this to work properly.
Template Parameters
It Type of input iterator.
@@ -525,11 +546,12 @@ template<typename It >
first An iterator to the first element of the range of entities.
last An iterator past the last element of the range of entities.
+ destroyed The head of the list of destroyed entities.
-Definition at line 556 of file registry.hpp .
+Definition at line 520 of file registry.hpp .
@@ -569,7 +591,7 @@ template<typename Component >
Returns Capacity of the pool of the given component.
-Definition at line 311 of file registry.hpp .
+Definition at line 268 of file registry.hpp .
@@ -601,7 +623,7 @@ template<typename Entity >
Returns the number of entities that a registry has currently allocated space for.
Returns Capacity of the registry.
-Definition at line 320 of file registry.hpp .
+Definition at line 278 of file registry.hpp .
@@ -640,7 +662,7 @@ template<typename... Component>
-Definition at line 1005 of file registry.hpp .
+Definition at line 939 of file registry.hpp .
@@ -677,7 +699,7 @@ template<typename Entity >
Returns A valid entity identifier.
-Definition at line 473 of file registry.hpp .
+Definition at line 443 of file registry.hpp .
@@ -718,7 +740,7 @@ template<typename Entity >
Returns A valid entity identifier.
-Definition at line 501 of file registry.hpp .
+Definition at line 458 of file registry.hpp .
@@ -776,7 +798,7 @@ template<typename It >
-Definition at line 536 of file registry.hpp .
+Definition at line 492 of file registry.hpp .
@@ -808,8 +830,7 @@ template<typename Type >
Returns a reference to an object in the context of the registry.
-
Warning Attempting to get a context variable that doesn't exist results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid requests.
+
Warning Attempting to get a context variable that doesn't exist results in undefined behavior.
Template Parameters
Type Type of object to get.
@@ -818,7 +839,7 @@ template<typename Type >
Returns A valid reference to the object in the context of the registry.
-Definition at line 1674 of file registry.hpp .
+Definition at line 1612 of file registry.hpp .
@@ -850,8 +871,7 @@ template<typename Type >
Returns a reference to an object in the context of the registry.
-
Warning Attempting to get a context variable that doesn't exist results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid requests.
+
Warning Attempting to get a context variable that doesn't exist results in undefined behavior.
Template Parameters
Type Type of object to get.
@@ -860,7 +880,7 @@ template<typename Type >
Returns A valid reference to the object in the context of the registry.
-Definition at line 1666 of file registry.hpp .
+Definition at line 1604 of file registry.hpp .
@@ -892,11 +912,11 @@ template<typename Func >
-
Visits a registry and returns the types for its context variables.
+
Visits a registry and returns the type info for its context variables.
The signature of the function should be equivalent to the following:
-
+
Returned identifiers are those of the context variables currently set.
-
See also type_info
+
See also type_info
Warning It's not specified whether a context variable created during the visit is returned or not to the caller.
Template Parameters
@@ -911,7 +931,7 @@ template<typename Func >
-Definition at line 1699 of file registry.hpp .
+Definition at line 1638 of file registry.hpp .
@@ -960,7 +980,7 @@ template<typename Type , typename... Args>
Returns A reference to the object in the context of the registry.
-Definition at line 1630 of file registry.hpp .
+Definition at line 1570 of file registry.hpp .
@@ -991,8 +1011,7 @@ template<typename Entity >
Returns the actual version for an entity identifier.
-
Warning Attempting to use an entity that doesn't belong to the registry results in undefined behavior. An entity belongs to the registry even if it has been previously destroyed and/or recycled.
- An assertion will abort the execution at runtime in debug mode if the registry doesn't own the given entity.
+
Warning Attempting to use an entity that doesn't belong to the registry results in undefined behavior. An entity belongs to the registry even if it has been previously destroyed and/or recycled.
Parameters
entity A valid entity identifier.
@@ -1001,7 +1020,7 @@ template<typename Entity >
Returns Actual version for the given entity identifier.
-Definition at line 457 of file registry.hpp .
+Definition at line 427 of file registry.hpp .
@@ -1033,7 +1052,7 @@ template<typename Component >
Direct access to the list of entities of a given pool.
-
The returned pointer is such that range [data<Component>(), data<Component>() + size<Component>()] is always a valid range, even if the container is empty.
+
The returned pointer is such that range [data<Component>(), data<Component>() + size<Component>()) is always a valid range, even if the container is empty.
Entities are in the reverse order as imposed by the sorting functionalities.
Template Parameters
@@ -1043,7 +1062,7 @@ template<typename Component >
Returns A pointer to the array of entities.
-Definition at line 396 of file registry.hpp .
+Definition at line 355 of file registry.hpp .
@@ -1073,11 +1092,11 @@ template<typename Entity >
Direct access to the list of entities of a registry.
-
The returned pointer is such that range [data() , data() + size() ] is always a valid range, even if the container is empty.
+
The returned pointer is such that range [data() , data() + size() ) is always a valid range, even if the container is empty.
Warning This list contains both valid and destroyed entities and isn't suitable for direct use.
Returns A pointer to the array of entities.
-
Definition at line 412 of file registry.hpp .
+
Definition at line 372 of file registry.hpp .
@@ -1117,7 +1136,7 @@ template<typename Entity >
-Definition at line 580 of file registry.hpp .
+Definition at line 536 of file registry.hpp .
@@ -1168,7 +1187,7 @@ template<typename Entity >
-Definition at line 595 of file registry.hpp .
+Definition at line 551 of file registry.hpp .
@@ -1226,7 +1245,41 @@ template<typename It >
-Definition at line 613 of file registry.hpp .
+Definition at line 566 of file registry.hpp .
+
+
+
+
+◆ destroyed()
+
+
+
+
+template<typename Entity >
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns the head of the list of destroyed entities.
+
This function is intended for use in conjunction with assign.
+ The returned entity has an invalid identifier in all cases.
+
Returns The head of the list of destroyed entities.
+
+
Definition at line 384 of file registry.hpp .
@@ -1276,7 +1329,7 @@ template<typename Func >
-Definition at line 1034 of file registry.hpp .
+Definition at line 977 of file registry.hpp .
@@ -1320,8 +1373,7 @@ template<typename Component , typename... Args>
Assigns the given component to an entity.
A new instance of the given component is created and initialized with the arguments provided (the component must have a proper constructor or be of aggregate type). Then the component is assigned to the given entity.
-Warning Attempting to use an invalid entity or to assign a component to an entity that already owns it results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity or if the entity already owns an instance of the given component.
+Warning Attempting to use an invalid entity or to assign a component to an entity that already owns it results in undefined behavior.
Template Parameters
Component Type of component to create.
@@ -1338,7 +1390,7 @@ template<typename Component , typename... Args>
Returns A reference to the newly created component.
-Definition at line 638 of file registry.hpp .
+Definition at line 590 of file registry.hpp .
@@ -1384,8 +1436,7 @@ template<typename Component , typename... Args>
Equivalent to the following snippet (pseudocode):
Prefer this function anyway because it has slightly better performance.
-Warning Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+Warning Attempting to use an invalid entity results in undefined behavior.
Template Parameters
Component Type of component to assign or replace.
@@ -1402,7 +1453,7 @@ template<typename Component , typename... Args>
Returns A reference to the newly created component.
-Definition at line 703 of file registry.hpp .
+Definition at line 653 of file registry.hpp .
@@ -1443,7 +1494,7 @@ template<typename... Component>
Returns True if the registry or the pools of the given components are empty, false otherwise.
-Definition at line 346 of file registry.hpp .
+Definition at line 304 of file registry.hpp .
@@ -1482,7 +1533,7 @@ template<typename Entity >
Returns The entity identifier without the version.
-Definition at line 431 of file registry.hpp .
+Definition at line 403 of file registry.hpp .
@@ -1515,8 +1566,7 @@ template<typename... Component>
Returns references to the given components for an entity.
-
Warning Attempting to use an invalid entity or to get a component from an entity that doesn't own it results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity or if the entity doesn't own an instance of the given component.
+
Warning Attempting to use an invalid entity or to get a component from an entity that doesn't own it results in undefined behavior.
Template Parameters
Component Types of components to get.
@@ -1531,7 +1581,7 @@ template<typename... Component>
Returns References to the components owned by the entity.
-Definition at line 924 of file registry.hpp .
+Definition at line 857 of file registry.hpp .
@@ -1564,8 +1614,7 @@ template<typename... Component>
Returns references to the given components for an entity.
-
Warning Attempting to use an invalid entity or to get a component from an entity that doesn't own it results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity or if the entity doesn't own an instance of the given component.
+
Warning Attempting to use an invalid entity or to get a component from an entity that doesn't own it results in undefined behavior.
Template Parameters
Component Types of components to get.
@@ -1580,7 +1629,7 @@ template<typename... Component>
Returns References to the components owned by the entity.
-Definition at line 912 of file registry.hpp .
+Definition at line 845 of file registry.hpp .
@@ -1627,8 +1676,7 @@ template<typename Component , typename... Args>
Equivalent to the following snippet (pseudocode):
Prefer this function anyway because it has slightly better performance.
-Warning Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+Warning Attempting to use an invalid entity results in undefined behavior.
Template Parameters
Component Type of component to get.
@@ -1645,12 +1693,12 @@ template<typename Component , typename... Args>
Returns Reference to the component owned by the entity.
-Definition at line 959 of file registry.hpp .
+Definition at line 890 of file registry.hpp .
-◆ group() [1/4]
+◆ group() [1/2]
@@ -1663,7 +1711,7 @@ template<typename... Owned, typename... Exclude>
- basic_group <Entity, exclude_t <Exclude...>, get_t <>, Owned...> entt::basic_registry < Entity >::group
+ basic_group <Entity, exclude_t <Exclude...>, get_t <>, Owned...> entt::basic_registry < Entity >::group
(
exclude_t < Exclude... >
= {} )
@@ -1688,55 +1736,12 @@ template<typename... Owned, typename... Exclude>
Returns A newly created group.
-Definition at line 1390 of file registry.hpp .
-
-
-
-
-◆ group() [2/4]
-
-
-
-
-template<typename Entity >
-
-template<typename... Owned, typename... Exclude>
-
-
-
-
Returns a group for the given components.
-
See also group
-
Template Parameters
-
- Owned Types of components owned by the group.
- Exclude Types of components used to filter the group.
-
-
-
-
Returns A newly created group.
-
-
Definition at line 1404 of file registry.hpp .
+
Definition at line 1336 of file registry.hpp .
-◆ group() [3/4]
+◆ group() [2/2]
@@ -1749,7 +1754,7 @@ template<typename... Owned, typename... Get, typename... Exclude>
- basic_group <Entity, exclude_t <Exclude...>, get_t <Get...>, Owned...> entt::basic_registry < Entity >::group
+ basic_group <Entity, exclude_t <Exclude...>, get_t <Get...>, Owned...> entt::basic_registry < Entity >::group
(
get_t < Get... >
,
@@ -1790,12 +1795,55 @@ template<typename... Owned, typename... Get, typename... Exclude>
Returns A newly created group.
-Definition at line 1281 of file registry.hpp .
+Definition at line 1219 of file registry.hpp .
-
-◆ group() [4/4]
+
+◆ group_if_exists() [1/2]
+
+
+
+
+template<typename Entity >
+
+template<typename... Owned, typename... Exclude>
+
+
+
+
Returns a group for the given components.
+
See also group_if_exists
+
Template Parameters
+
+ Owned Types of components owned by the group.
+ Exclude Types of components used to filter the group.
+
+
+
+
Returns A newly created group.
+
+
Definition at line 1350 of file registry.hpp .
+
+
+
+
+◆ group_if_exists() [2/2]
@@ -1808,7 +1856,7 @@ template<typename... Owned, typename... Get, typename... Exclude>
- basic_group <Entity, exclude_t <Exclude...>, get_t <Get...>, Owned...> entt::basic_registry < Entity >::group
+ basic_group <Entity, exclude_t <Exclude...>, get_t <Get...>, Owned...> entt::basic_registry < Entity >::group_if_exists
(
get_t < Get... >
,
@@ -1844,7 +1892,7 @@ template<typename... Owned, typename... Get, typename... Exclude>
Returns A newly created group.
-Definition at line 1375 of file registry.hpp .
+Definition at line 1309 of file registry.hpp .
@@ -1877,8 +1925,7 @@ template<typename... Component>
Checks if an entity has all the given components.
-
Warning Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+
Warning Attempting to use an invalid entity results in undefined behavior.
Template Parameters
Component Components for which to perform the check.
@@ -1893,7 +1940,7 @@ template<typename... Component>
Returns True if the entity has all the components, false otherwise.
-Definition at line 873 of file registry.hpp .
+Definition at line 811 of file registry.hpp .
@@ -1967,7 +2014,7 @@ template<typename Component , typename EIt , typename CIt >
-Definition at line 674 of file registry.hpp .
+Definition at line 626 of file registry.hpp .
@@ -2033,7 +2080,7 @@ template<typename Component , typename It >
-Definition at line 655 of file registry.hpp .
+Definition at line 607 of file registry.hpp .
@@ -2065,10 +2112,9 @@ template<typename Component >
Returns a sink object for the given component.
-
A sink is an opaque object used to connect listeners to components.
- The sink returned by this function can be used to receive notifications whenever a new instance of the given component is created and assigned to an entity.
-
The function type for a listener is equivalent to:
-
void(registry<Entity> &, Entity);
+
The sink returned by this function can be used to receive notifications whenever a new instance of the given component is created and assigned to an entity.
+ The function type for a listener is equivalent to:
+
void(basic_registry<Entity> &, Entity);
Listeners are invoked after the component has been assigned to the entity.
See also sink
Template Parameters
@@ -2079,7 +2125,7 @@ template<typename Component >
Returns A temporary sink object.
-
Definition at line 1106 of file registry.hpp .
+
Definition at line 1047 of file registry.hpp .
@@ -2111,10 +2157,9 @@ template<typename Component >
Returns a sink object for the given component.
-
A sink is an opaque object used to connect listeners to components.
- The sink returned by this function can be used to receive notifications whenever an instance of the given component is removed from an entity and thus destroyed.
-
The function type for a listener is equivalent to:
-
void(registry<Entity> &, Entity);
+
The sink returned by this function can be used to receive notifications whenever an instance of the given component is removed from an entity and thus destroyed.
+ The function type for a listener is equivalent to:
+
void(basic_registry<Entity> &, Entity);
Listeners are invoked before the component has been removed from the entity.
See also sink
Template Parameters
@@ -2125,7 +2170,7 @@ template<typename Component >
Returns A temporary sink object.
-
Definition at line 1158 of file registry.hpp .
+
Definition at line 1095 of file registry.hpp .
@@ -2157,10 +2202,9 @@ template<typename Component >
Returns a sink object for the given component.
-
A sink is an opaque object used to connect listeners to components.
- The sink returned by this function can be used to receive notifications whenever an instance of the given component is explicitly updated.
-
The function type for a listener is equivalent to:
-
void(registry<Entity> &, Entity);
+
The sink returned by this function can be used to receive notifications whenever an instance of the given component is explicitly updated.
+ The function type for a listener is equivalent to:
+
void(basic_registry<Entity> &, Entity);
Listeners are invoked after the component has been updated.
See also sink
Template Parameters
@@ -2171,7 +2215,7 @@ template<typename Component >
Returns A temporary sink object.
-
Definition at line 1131 of file registry.hpp .
+
Definition at line 1070 of file registry.hpp .
@@ -2241,7 +2285,7 @@ template<typename Entity >
Returns True if the entity has no components assigned, false otherwise.
-Definition at line 1053 of file registry.hpp .
+Definition at line 996 of file registry.hpp .
@@ -2291,7 +2335,7 @@ template<typename Func >
-Definition at line 1075 of file registry.hpp .
+Definition at line 1018 of file registry.hpp .
@@ -2337,8 +2381,7 @@ template<typename Component , typename... Func>
The signature of the functions should be equivalent to the following:
Note Empty types aren't explicitly instantiated and therefore they are never returned. However, this function can be used to trigger an update signal for them.
-Warning Attempting to use an invalid entity or to patch a component of an entity that doesn't own it results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity or if the entity doesn't own an instance of the given component.
+Warning Attempting to use an invalid entity or to patch a component of an entity that doesn't own it results in undefined behavior.
Template Parameters
Component Type of component to patch.
@@ -2355,7 +2398,7 @@ template<typename Component , typename... Func>
Returns A reference to the patched component.
-Definition at line 740 of file registry.hpp .
+Definition at line 687 of file registry.hpp .
@@ -2394,7 +2437,7 @@ template<typename Component >
-Definition at line 245 of file registry.hpp .
+Definition at line 177 of file registry.hpp .
@@ -2426,7 +2469,7 @@ template<typename Component >
Direct access to the list of components of a given pool.
-
The returned pointer is such that range [raw<Component>(), raw<Component>() + size<Component>()] is always a valid range, even if the container is empty.
+
The returned pointer is such that range [raw<Component>(), raw<Component>() + size<Component>()) is always a valid range, even if the container is empty.
Components are in the reverse order as imposed by the sorting functionalities.
Note Empty components aren't explicitly instantiated. Therefore, this function isn't available for them. A compilation error will occur if invoked.
Template Parameters
@@ -2437,7 +2480,7 @@ template<typename Component >
Returns A pointer to the array of components of the given type.
-Definition at line 378 of file registry.hpp .
+Definition at line 337 of file registry.hpp .
@@ -2469,7 +2512,7 @@ template<typename Component >
Direct access to the list of components of a given pool.
-
The returned pointer is such that range [raw<Component>(), raw<Component>() + size<Component>()] is always a valid range, even if the container is empty.
+
The returned pointer is such that range [raw<Component>(), raw<Component>() + size<Component>()) is always a valid range, even if the container is empty.
Components are in the reverse order as imposed by the sorting functionalities.
Note Empty components aren't explicitly instantiated. Therefore, this function isn't available for them. A compilation error will occur if invoked.
Template Parameters
@@ -2480,7 +2523,7 @@ template<typename Component >
Returns A pointer to the array of components of the given type.
-Definition at line 372 of file registry.hpp .
+Definition at line 330 of file registry.hpp .
@@ -2513,8 +2556,7 @@ template<typename... Component>
Removes the given components from an entity.
-
Warning Attempting to use an invalid entity or to remove a component from an entity that doesn't own it results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity or if the entity doesn't own an instance of the given component.
+
Warning Attempting to use an invalid entity or to remove a component from an entity that doesn't own it results in undefined behavior.
Template Parameters
Component Types of components to remove.
@@ -2528,7 +2570,7 @@ template<typename... Component>
-Definition at line 784 of file registry.hpp .
+Definition at line 725 of file registry.hpp .
@@ -2587,7 +2629,7 @@ template<typename... Component, typename It >
-Definition at line 800 of file registry.hpp .
+Definition at line 742 of file registry.hpp .
@@ -2620,8 +2662,7 @@ template<typename Entity >
Removes all the components from an entity and makes it orphaned.
Warning In case there are listeners that observe the destruction of components and assign other components to the entity in their bodies, the result of invoking this function may not be as expected. In the worst case, it could lead to undefined behavior.
-Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+Attempting to use an invalid entity results in undefined behavior.
Parameters
entity A valid entity identifier.
@@ -2629,7 +2670,7 @@ Attempting to use an invalid entity results in undefined behavior.
-Definition at line 850 of file registry.hpp .
+Definition at line 789 of file registry.hpp .
@@ -2665,8 +2706,7 @@ template<typename... Component>
Equivalent to the following snippet (pseudocode):
Prefer this function anyway because it has slightly better performance.
-Warning Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+Warning Attempting to use an invalid entity results in undefined behavior.
Template Parameters
Component Types of components to remove.
@@ -2681,7 +2721,7 @@ template<typename... Component>
Returns The number of components actually removed.
-Definition at line 826 of file registry.hpp .
+Definition at line 767 of file registry.hpp .
@@ -2725,8 +2765,7 @@ template<typename Component , typename... Args>
Replaces the given component for an entity.
A new instance of the given component is created and initialized with the arguments provided (the component must have a proper constructor or be of aggregate type). Then the component is assigned to the given entity.
-Warning Attempting to use an invalid entity or to replace a component of an entity that doesn't own it results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity or if the entity doesn't own an instance of the given component.
+Warning Attempting to use an invalid entity or to replace a component of an entity that doesn't own it results in undefined behavior.
Template Parameters
Component Type of component to replace.
@@ -2743,7 +2782,7 @@ template<typename Component , typename... Args>
Returns A reference to the component being replaced.
-Definition at line 766 of file registry.hpp .
+Definition at line 710 of file registry.hpp .
@@ -2791,7 +2830,45 @@ template<typename... Component>
-Definition at line 297 of file registry.hpp .
+Definition at line 246 of file registry.hpp .
+
+
+
+
+◆ reserve_pools()
+
+
+
+
+template<typename Entity >
+
+
+
+
Reserves enough space to store count pools.
+
Parameters
+
+ count Number of pools to reserve space for.
+
+
+
+
+
Definition at line 258 of file registry.hpp .
@@ -2868,7 +2945,7 @@ template<typename ItComp , typename ItExcl = id_type *>
Returns A newly created runtime view.
-Definition at line 1236 of file registry.hpp .
+Definition at line 1174 of file registry.hpp .
@@ -2917,7 +2994,7 @@ template<typename Type , typename... Args>
Returns A reference to the newly created object.
-Definition at line 1601 of file registry.hpp .
+Definition at line 1541 of file registry.hpp .
@@ -2956,7 +3033,7 @@ template<typename... Component>
-Definition at line 330 of file registry.hpp .
+Definition at line 288 of file registry.hpp .
@@ -2996,7 +3073,7 @@ template<typename Component >
Returns Number of existing components of the given type.
-Definition at line 256 of file registry.hpp .
+Definition at line 204 of file registry.hpp .
@@ -3028,7 +3105,7 @@ template<typename Entity >
Returns the number of entities created so far.
Returns Number of entities created so far.
-Definition at line 264 of file registry.hpp .
+Definition at line 213 of file registry.hpp .
@@ -3069,8 +3146,7 @@ template<typename To , typename From >
All the entities in A that are not in B are returned in no particular order after all the other entities.
Any subsequent change to B won't affect the order in A.
-Warning Pools of components owned by a group cannot be sorted.
- An assertion will abort the execution at runtime in debug mode in case the pool is owned by a group.
+Warning Pools of components owned by a group cannot be sorted.
Template Parameters
To Type of components to sort.
@@ -3079,7 +3155,7 @@ template<typename To , typename From >
-Definition at line 1525 of file registry.hpp .
+Definition at line 1465 of file registry.hpp .
@@ -3141,8 +3217,7 @@ template<typename Component , typename Compare , typename Sort = std_sort, t
A comparison function to use to compare the elements.
The comparison funtion object received by the sort function object hasn't necessarily the type of the one passed along with the other parameters to this member function.
-Warning Pools of components owned by a group cannot be sorted.
- An assertion will abort the execution at runtime in debug mode in case the pool is owned by a group.
+Warning Pools of components owned by a group cannot be sorted.
Template Parameters
Component Type of components to sort.
@@ -3161,7 +3236,7 @@ template<typename Component , typename Compare , typename Sort = std_sort, t
-Definition at line 1483 of file registry.hpp .
+Definition at line 1426 of file registry.hpp .
@@ -3201,7 +3276,7 @@ template<typename... Component>
Returns True if the pools of the given components are sortable, false otherwise.
-Definition at line 1416 of file registry.hpp .
+Definition at line 1361 of file registry.hpp .
@@ -3244,7 +3319,85 @@ template<typename... Owned, typename... Get, typename... Exclude>
Returns True if the group can be sorted, false otherwise.
-Definition at line 1428 of file registry.hpp .
+Definition at line 1373 of file registry.hpp .
+
+
+
+
+◆ storage() [1/2]
+
+
+
+
+template<typename Entity >
+
+
+
+
Returns a poly storage for a given type.
+
Parameters
+
+ info The type for which to return a poly storage.
+
+
+
+
Returns A valid poly storage if a pool for the given type exists, an empty and thus invalid element otherwise.
+
+
Definition at line 188 of file registry.hpp .
+
+
+
+
+◆ storage() [2/2]
+
+
+
+
+template<typename Entity >
+
+
+
+
Returns a poly storage for a given type.
+
Parameters
+
+ info The type for which to return a poly storage.
+
+
+
+
Returns A valid poly storage if a pool for the given type exists, an empty and thus invalid element otherwise.
+
+
Definition at line 193 of file registry.hpp .
@@ -3284,7 +3437,7 @@ template<typename Type >
Returns A pointer to the object if it exists in the context of the registry, a null pointer otherwise.
-Definition at line 1649 of file registry.hpp .
+Definition at line 1589 of file registry.hpp .
@@ -3324,7 +3477,7 @@ template<typename Type >
Returns A pointer to the object if it exists in the context of the registry, a null pointer otherwise.
-Definition at line 1642 of file registry.hpp .
+Definition at line 1582 of file registry.hpp .
@@ -3357,8 +3510,8 @@ template<typename... Component>
Returns pointers to the given components for an entity.
-
Warning Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+
Warning Attempting to use an invalid entity results in undefined behavior.
+
Note The registry retains ownership of the pointed-to components.
Template Parameters
Component Types of components to get.
@@ -3373,7 +3526,7 @@ template<typename... Component>
Returns Pointers to the components owned by the entity.
-Definition at line 990 of file registry.hpp .
+Definition at line 923 of file registry.hpp .
@@ -3406,8 +3559,8 @@ template<typename... Component>
Returns pointers to the given components for an entity.
-
Warning Attempting to use an invalid entity results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case of invalid entity.
+
Warning Attempting to use an invalid entity results in undefined behavior.
+
Note The registry retains ownership of the pointed-to components.
Template Parameters
Component Types of components to get.
@@ -3422,7 +3575,7 @@ template<typename... Component>
Returns Pointers to the components owned by the entity.
-Definition at line 978 of file registry.hpp .
+Definition at line 910 of file registry.hpp .
@@ -3461,7 +3614,7 @@ template<typename Type >
-Definition at line 1612 of file registry.hpp .
+Definition at line 1552 of file registry.hpp .
@@ -3500,7 +3653,7 @@ template<typename Entity >
Returns True if the identifier is valid, false otherwise.
-Definition at line 421 of file registry.hpp .
+Definition at line 393 of file registry.hpp .
@@ -3539,7 +3692,7 @@ template<typename Entity >
Returns The version stored along with the given entity identifier.
-Definition at line 440 of file registry.hpp .
+Definition at line 412 of file registry.hpp .
@@ -3557,7 +3710,7 @@ template<typename... Component, typename... Exclude>
- basic_view <Entity, exclude_t <Exclude...>, Component...> entt::basic_registry < Entity >::view
+ basic_view <Entity, exclude_t <Exclude...>, Component...> entt::basic_registry < Entity >::view
(
exclude_t < Exclude... >
= {} )
@@ -3592,7 +3745,7 @@ template<typename... Component, typename... Exclude>
Returns A newly created view.
-Definition at line 1202 of file registry.hpp .
+Definition at line 1140 of file registry.hpp .
@@ -3610,7 +3763,7 @@ template<typename... Component, typename... Exclude>
-
Visits an entity and returns the types for its components.
+
Visits an entity and returns the type info for its components.
The signature of the function should be equivalent to the following:
-
+
Returned identifiers are those of the components owned by the entity.
-
See also type_info
+
See also type_info
Warning It's not specified whether a component attached to or removed from the given entity during the visit is returned or not to the caller.
Template Parameters
@@ -3707,7 +3860,7 @@ template<typename Func >
-Definition at line 1552 of file registry.hpp .
+Definition at line 1492 of file registry.hpp .
@@ -3739,11 +3892,11 @@ template<typename Func >
-
Visits a registry and returns the types for its components.
+
Visits a registry and returns the type info for its components.
The signature of the function should be equivalent to the following:
-
+
Returned identifiers are those of the components managed by the registry.
-
See also type_info
+
See also type_info
Warning It's not specified whether a component for which a pool is created during the visit is returned or not to the caller.
Template Parameters
@@ -3758,7 +3911,7 @@ template<typename Func >
-Definition at line 1581 of file registry.hpp .
+Definition at line 1521 of file registry.hpp .
@@ -3767,9 +3920,8 @@ template<typename Func >
src/entt/entity/registry.hpp
-static entity_type entity(const entity_type entity) noexcept
Returns the entity identifier without the version.
-basic_registry< entity > registry
Alias declaration for the most common use case.
-std::uint32_t id_type
Alias declaration for type identifiers.
+static entity_type entity(const entity_type entity) noexcept
Returns the entity identifier without the version.
+basic_registry< entity > registry
Alias declaration for the most common use case.
template<typename Entity>
@@ -132,7 +128,7 @@ class entt::basic_runtime_view< Entity >
Runtime view.
Runtime views iterate over those entities that have at least all the given components in their bags. During initialization, a runtime view looks at the number of entities available for each component and picks up a reference to the smallest set of candidate entities in order to get a performance boost when iterate.
- Order of elements during iterations are highly dependent on the order of the underlying data structures. See sparse_set and its specializations for more details.
+ Order of elements during iterations are highly dependent on the order of the underlying data structures. See sparse_set and its specializations for more details.
Important
Iterators aren't invalidated if:
+
+
+
◆ basic_runtime_view()
+
+
+
+
+template<typename Entity >
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Constructs a runtime view from a set of storage classes.
+
Parameters
+
+ cpools The storage for the types to iterate.
+ epools The storage for the types used to filter the view.
+
+
+
+
+
Definition at line 152 of file runtime_view.hpp .
+
+
+
+
◆ begin()
@@ -179,10 +225,9 @@ template<typename Entity >
Returns an iterator to the first entity that has the given components.
The returned iterator points to the first entity that has the given components. If the view is empty, the returned iterator will be equal to end() .
-
Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity that has the given components.
-
Definition at line 186 of file runtime_view.hpp .
+
Definition at line 182 of file runtime_view.hpp .
@@ -221,7 +266,7 @@ template<typename Entity >
Returns True if the view contains the given entity, false otherwise.
-Definition at line 214 of file runtime_view.hpp .
+Definition at line 206 of file runtime_view.hpp .
@@ -270,39 +315,7 @@ template<typename Func >
-Definition at line 235 of file runtime_view.hpp .
-
-
-
-
-◆ empty()
-
-
-
-
-template<typename Entity >
-
-
-
-
Checks if the view is definitely empty.
-
Returns True if the view is definitely empty, false otherwise.
-
-
Definition at line 168 of file runtime_view.hpp .
+
Definition at line 227 of file runtime_view.hpp .
@@ -333,15 +346,14 @@ template<typename Entity >
Returns an iterator that is past the last entity that has the given components.
The returned iterator points to the entity following the last entity that has the given components. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity that has the given components.
-Definition at line 205 of file runtime_view.hpp .
+Definition at line 197 of file runtime_view.hpp .
-
-◆ size()
+
+◆ size_hint()
@@ -352,7 +364,7 @@ template<typename Entity >
-
Estimates the number of entities that have the given components.
-
Returns Estimated number of entities that have the given components.
+
Estimates the number of entities iterated by the view.
+
Returns Estimated number of entities iterated by the view.
-
Definition at line 160 of file runtime_view.hpp .
+
Definition at line 168 of file runtime_view.hpp .
@@ -377,7 +389,7 @@ template<typename Entity >
src/entt/entity/runtime_view.hpp
-Entity entity_type
Underlying entity identifier.
+Entity entity_type
Underlying entity identifier.
const basic_snapshot & component (Archive &archive, It first, It last) const
Puts aside the given components for the entities in a range. More...
-
template<typename Entity>
@@ -134,7 +126,7 @@ class entt::basic_snapshot< Entity >
-
Definition at line 31 of file snapshot.hpp .
+
Definition at line 34 of file snapshot.hpp .
◆ basic_snapshot()
@@ -170,7 +162,7 @@ template<typename Entity >
-Definition at line 75 of file snapshot.hpp .
+Definition at line 72 of file snapshot.hpp .
@@ -220,7 +212,7 @@ template<typename... Component, typename Archive >
Returns An object of this type to continue creating the snapshot.
-Definition at line 122 of file snapshot.hpp .
+Definition at line 119 of file snapshot.hpp .
@@ -288,7 +280,7 @@ template<typename... Component, typename Archive , typename It >
Returns An object of this type to continue creating the snapshot.
-Definition at line 142 of file snapshot.hpp .
+Definition at line 139 of file snapshot.hpp .
@@ -336,7 +328,7 @@ template<typename Archive >
Returns An object of this type to continue creating the snapshot.
-Definition at line 96 of file snapshot.hpp .
+Definition at line 93 of file snapshot.hpp .
diff --git a/classentt_1_1basic__snapshot__loader-members.html b/classentt_1_1basic__snapshot__loader-members.html
index c061b56d4..f581277ae 100644
--- a/classentt_1_1basic__snapshot__loader-members.html
+++ b/classentt_1_1basic__snapshot__loader-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -73,14 +73,13 @@ $(function() {
This is the complete list of members for entt::basic_snapshot_loader< Entity > , including all inherited members.
template<typename Entity>
@@ -133,7 +125,7 @@ class entt::basic_snapshot_loader< Entity >
-
Definition at line 163 of file snapshot.hpp .
+
Definition at line 160 of file snapshot.hpp .
◆ basic_snapshot_loader()
@@ -169,7 +161,7 @@ template<typename Entity >
-Definition at line 203 of file snapshot.hpp .
+Definition at line 197 of file snapshot.hpp .
@@ -219,7 +211,7 @@ template<typename... Component, typename Archive >
Returns A valid loader to continue restoring data.
-Definition at line 256 of file snapshot.hpp .
+Definition at line 253 of file snapshot.hpp .
@@ -267,7 +259,7 @@ template<typename Archive >
Returns A valid loader to continue restoring data.
-Definition at line 227 of file snapshot.hpp .
+Definition at line 221 of file snapshot.hpp .
@@ -332,7 +324,7 @@ template<typename Entity >
This functions helps to identify and destroy those entities.
Returns A valid loader to continue restoring data.
-Definition at line 271 of file snapshot.hpp .
+Definition at line 268 of file snapshot.hpp .
diff --git a/classentt_1_1basic__sparse__set-members.html b/classentt_1_1basic__sparse__set-members.html
new file mode 100644
index 000000000..3d6576451
--- /dev/null
+++ b/classentt_1_1basic__sparse__set-members.html
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+EnTT: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EnTT
+ 3.6.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for entt::basic_sparse_set< Entity > , including all inherited members.
+
+
+
+
+
diff --git a/classentt_1_1sparse__set.html b/classentt_1_1basic__sparse__set.html
similarity index 55%
rename from classentt_1_1sparse__set.html
rename to classentt_1_1basic__sparse__set.html
index a4b8674c8..46cdbc9f4 100644
--- a/classentt_1_1sparse__set.html
+++ b/classentt_1_1basic__sparse__set.html
@@ -5,7 +5,7 @@
-EnTT: entt::sparse_set< Entity > Class Template Reference
+EnTT: entt::basic_sparse_set< Entity > Class Template Reference
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -62,7 +62,7 @@ $(function() {
+List of all members
+entt::basic_sparse_set< Entity > Class Template Reference
Basic sparse set implementation.
- More...
+
More...
#include <sparse_set.hpp >
+Inheritance diagram for entt::basic_sparse_set< Entity >:
-
-
-
-
-
-
+
+
+
+
[legend ]
-
- sparse_set ()=default
- Default constructor.
-
-
- sparse_set (sparse_set &&)=default
- Default move constructor.
-
-
-virtual ~sparse_set ()=default
- Default destructor.
-
-sparse_set & operator= (sparse_set &&)=default
- Default move assignment operator. More...
-
-void reserve (const size_type cap)
- Increases the capacity of a sparse set. More...
-
-size_type capacity () const noexcept
- Returns the number of elements that a sparse set has currently allocated space for. More...
-
-
-void shrink_to_fit ()
- Requests the removal of unused capacity.
-
-size_type extent () const noexcept
- Returns the extent of a sparse set. More...
-
-size_type size () const noexcept
- Returns the number of elements in a sparse set. More...
-
-bool empty () const noexcept
- Checks whether a sparse set is empty. More...
-
-const entity_type * data () const noexcept
- Direct access to the internal packed array. More...
-
-iterator begin () const noexcept
- Returns an iterator to the beginning. More...
-
-iterator end () const noexcept
- Returns an iterator to the end. More...
-
-reverse_iterator rbegin () const noexcept
- Returns a reverse iterator to the beginning. More...
-
-reverse_iterator rend () const noexcept
- Returns a reverse iterator to the end. More...
-
-iterator find (const entity_type entt) const
- Finds an entity. More...
-
-bool contains (const entity_type entt) const
- Checks if a sparse set contains an entity. More...
-
-size_type index (const entity_type entt) const
- Returns the position of an entity in a sparse set. More...
-
-void emplace (const entity_type entt)
- Assigns an entity to a sparse set. More...
-
-template<typename It >
-void insert (It first, It last)
- Assigns one or more entities to a sparse set. More...
-
-void erase (const entity_type entt)
- Removes an entity from a sparse set. More...
-
-virtual void swap (const entity_type lhs, const entity_type rhs)
- Swaps two entities in the internal packed array. More...
-
-template<typename Compare , typename Sort = std_sort, typename... Args>
-void sort (iterator first, iterator last, Compare compare, Sort algo=Sort{}, Args &&... args)
- Sort elements according to the given comparison function. More...
-
-template<typename Apply , typename Compare , typename Sort = std_sort, typename... Args>
-void arrange (iterator first, iterator last, Apply apply, Compare compare, Sort algo=Sort{}, Args &&... args)
- Sort elements according to the given comparison function. More...
-
-void respect (const sparse_set &other)
- Sort entities according to their order in another sparse set. More...
-
-
-void clear () noexcept
- Clears a sparse set.
-
+
+ basic_sparse_set ()=default
+ Default constructor.
+
+
+ basic_sparse_set (basic_sparse_set &&)=default
+ Default move constructor.
+
+
+virtual ~basic_sparse_set ()=default
+ Default destructor.
+
+basic_sparse_set & operator= (basic_sparse_set &&)=default
+ Default move assignment operator. More...
+
+void reserve (const size_type cap)
+ Increases the capacity of a sparse set. More...
+
+size_type capacity () const noexcept
+ Returns the number of elements that a sparse set has currently allocated space for. More...
+
+
+void shrink_to_fit ()
+ Requests the removal of unused capacity.
+
+size_type extent () const noexcept
+ Returns the extent of a sparse set. More...
+
+size_type size () const noexcept
+ Returns the number of elements in a sparse set. More...
+
+bool empty () const noexcept
+ Checks whether a sparse set is empty. More...
+
+const entity_type * data () const noexcept
+ Direct access to the internal packed array. More...
+
+iterator begin () const noexcept
+ Returns an iterator to the beginning. More...
+
+iterator end () const noexcept
+ Returns an iterator to the end. More...
+
+reverse_iterator rbegin () const noexcept
+ Returns a reverse iterator to the beginning. More...
+
+reverse_iterator rend () const noexcept
+ Returns a reverse iterator to the end. More...
+
+iterator find (const entity_type entt) const
+ Finds an entity. More...
+
+bool contains (const entity_type entt) const
+ Checks if a sparse set contains an entity. More...
+
+size_type index (const entity_type entt) const
+ Returns the position of an entity in a sparse set. More...
+
+void emplace (const entity_type entt)
+ Assigns an entity to a sparse set. More...
+
+template<typename It >
+void insert (It first, It last)
+ Assigns one or more entities to a sparse set. More...
+
+void remove (const entity_type entt)
+ Removes an entity from a sparse set. More...
+
+template<typename It >
+void remove (It first, It last)
+ Removes multiple entities from a pool. More...
+
+void swap (const entity_type lhs, const entity_type rhs)
+ Swaps two entities in the internal packed array. More...
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+void sort_n (const size_type count, Compare compare, Sort algo=Sort{}, Args &&... args)
+ Sort the first count elements according to the given comparison function. More...
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+void sort (Compare compare, Sort algo=Sort{}, Args &&... args)
+ Sort all elements according to the given comparison function. More...
+
+void respect (const basic_sparse_set &other)
+ Sort entities according to their order in another sparse set. More...
+
+
+void clear () noexcept
+ Clears a sparse set.
+
template<typename Entity>
-class entt::sparse_set< Entity >
+class entt::basic_sparse_set< Entity >
Basic sparse set implementation.
Sparse set or packed array or whatever is the name users give it.
@@ -219,101 +221,8 @@ class entt::sparse_set< Entity >
Definition at line 43 of file sparse_set.hpp .
-
-◆ arrange()
-
-
-
-
-template<typename Entity >
-
-template<typename Apply , typename Compare , typename Sort = std_sort, typename... Args>
-
-
-
-
-
- void entt::sparse_set < Entity >::arrange
- (
- iterator
- first ,
-
-
-
-
- iterator
- last ,
-
-
-
-
- Apply
- apply ,
-
-
-
-
- Compare
- compare ,
-
-
-
-
- Sort
- algo = Sort{},
-
-
-
-
- Args &&...
- args
-
-
-
- )
-
-
-
-
-
-inline
-
-
-
-
-
Sort elements according to the given comparison function.
-
See also sort
-
This function is a slightly slower version of sort that invokes the caller to indicate which entities are swapped.
- It's recommended when the caller wants to sort its own data structures to align them with the order induced in the sparse set.
-
The signature of the callback should be equivalent to the following:
-
bool(const Entity, const Entity);
-
Template Parameters
-
- Apply Type of function object to invoke to notify the caller.
- Compare Type of comparison function object.
- Sort Type of sort function object.
- Args Types of arguments to forward to the sort function object.
-
-
-
-
Parameters
-
- first An iterator to the first element of the range to sort.
- last An iterator past the last element of the range to sort.
- apply A valid function object to use as a callback.
- compare A valid comparison function object.
- algo A valid sort function object.
- args Arguments to forward to the sort function object, if any.
-
-
-
-
-
Definition at line 540 of file sparse_set.hpp .
-
-
-
-
-◆ begin()
+
+◆ begin()
@@ -324,7 +233,7 @@ template<typename Entity >
- iterator entt::sparse_set < Entity >::begin
+ iterator entt::basic_sparse_set < Entity >::begin
(
)
const
@@ -338,15 +247,15 @@ template<typename Entity >
Returns an iterator to the beginning.
-
The returned iterator points to the first entity of the internal packed array. If the sparse set is empty, the returned iterator will be equal to end() .
+
The returned iterator points to the first entity of the internal packed array. If the sparse set is empty, the returned iterator will be equal to end() .
Returns An iterator to the first entity of the internal packed array.
-
Definition at line 291 of file sparse_set.hpp .
+
Definition at line 295 of file sparse_set.hpp .
-
-◆ capacity()
+
+◆ capacity()
@@ -357,7 +266,7 @@ template<typename Entity >
- size_type entt::sparse_set < Entity >::capacity
+ size_type entt::basic_sparse_set < Entity >::capacity
(
)
const
@@ -373,12 +282,12 @@ template<typename Entity >
Returns the number of elements that a sparse set has currently allocated space for.
Returns Capacity of the sparse set.
-Definition at line 215 of file sparse_set.hpp .
+Definition at line 219 of file sparse_set.hpp .
-
-◆ contains()
+
+◆ contains()
@@ -389,9 +298,9 @@ template<typename Entity >
- bool entt::sparse_set < Entity >::contains
+ bool entt::basic_sparse_set < Entity >::contains
(
- const entity_type
+ const entity_type
entt )
const
@@ -412,12 +321,12 @@ template<typename Entity >
Returns True if the sparse set contains the entity, false otherwise.
-Definition at line 353 of file sparse_set.hpp .
+Definition at line 357 of file sparse_set.hpp .
-
-◆ data()
+
+◆ data()
@@ -428,7 +337,7 @@ template<typename Entity >
- const entity_type * entt::sparse_set < Entity >::data
+ const entity_type * entt::basic_sparse_set < Entity >::data
(
)
const
@@ -442,16 +351,16 @@ template<typename Entity >
Direct access to the internal packed array.
-
The returned pointer is such that range [data() , data() + size() ] is always a valid range, even if the container is empty.
+
The returned pointer is such that range [data() , data() + size() ) is always a valid range, even if the container is empty.
Note Entities are in the reverse order as returned by the begin/end iterators.
Returns A pointer to the internal packed array.
-
Definition at line 278 of file sparse_set.hpp .
+
Definition at line 282 of file sparse_set.hpp .
-
-◆ emplace()
+
+◆ emplace()
@@ -462,9 +371,9 @@ template<typename Entity >
- void entt::sparse_set < Entity >::emplace
+ void entt::basic_sparse_set < Entity >::emplace
(
- const entity_type
+ const entity_type
entt )
@@ -477,8 +386,7 @@ template<typename Entity >
Assigns an entity to a sparse set.
-
Warning Attempting to assign an entity that already belongs to the sparse set results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the sparse set already contains the given entity.
+
Warning Attempting to assign an entity that already belongs to the sparse set results in undefined behavior.
Parameters
entt A valid entity identifier.
@@ -490,8 +398,8 @@ template<typename Entity >
-
-◆ empty()
+
+◆ empty()
@@ -502,7 +410,7 @@ template<typename Entity >
- bool entt::sparse_set < Entity >::empty
+ bool entt::basic_sparse_set < Entity >::empty
(
)
const
@@ -518,12 +426,12 @@ template<typename Entity >
Checks whether a sparse set is empty.
Returns True if the sparse set is empty, false otherwise.
-Definition at line 262 of file sparse_set.hpp .
+Definition at line 266 of file sparse_set.hpp .
-
-◆ end()
+
+◆ end()
@@ -534,7 +442,7 @@ template<typename Entity >
- iterator entt::sparse_set < Entity >::end
+ iterator entt::basic_sparse_set < Entity >::end
(
)
const
@@ -551,12 +459,12 @@ template<typename Entity >
The returned iterator points to the element following the last entity in the internal packed array. Attempting to dereference the returned iterator results in undefined behavior.
Returns An iterator to the element following the last entity of the internal packed array.
-Definition at line 306 of file sparse_set.hpp .
+Definition at line 310 of file sparse_set.hpp .
-
-◆ erase()
+
+◆ extent()
@@ -567,47 +475,7 @@ template<typename Entity >
-
-
-inline
-
-
-
-
-
Removes an entity from a sparse set.
-
Warning Attempting to remove an entity that doesn't belong to the sparse set results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the sparse set doesn't contain the given entity.
-
Parameters
-
- entt A valid entity identifier.
-
-
-
-
-
Definition at line 429 of file sparse_set.hpp .
-
-
-
-
-◆ extent()
-
-
-
-
-template<typename Entity >
-
-
-
-
-
- size_type entt::sparse_set < Entity >::extent
+ size_type entt::basic_sparse_set < Entity >::extent
(
)
const
@@ -624,12 +492,12 @@ template<typename Entity >
The extent of a sparse set is also the size of the internal sparse array. There is no guarantee that the internal packed array has the same size. Usually the size of the internal sparse array is equal or greater than the one of the internal packed array.
Returns Extent of the sparse set.
-Definition at line 240 of file sparse_set.hpp .
+Definition at line 244 of file sparse_set.hpp .
-
-◆ find()
+
+◆ find()
@@ -640,9 +508,9 @@ template<typename Entity >
- iterator entt::sparse_set < Entity >::find
+ iterator entt::basic_sparse_set < Entity >::find
(
- const entity_type
+ const entity_type
entt )
const
@@ -663,12 +531,12 @@ template<typename Entity >
Returns An iterator to the given entity if it's found, past the end iterator otherwise.
-Definition at line 344 of file sparse_set.hpp .
+Definition at line 348 of file sparse_set.hpp .
-
-◆ index()
+
+◆ index()
@@ -679,9 +547,9 @@ template<typename Entity >
- size_type entt::sparse_set < Entity >::index
+ size_type entt::basic_sparse_set < Entity >::index
(
- const entity_type
+ const entity_type
entt )
const
@@ -694,8 +562,7 @@ template<typename Entity >
Returns the position of an entity in a sparse set.
-
Warning Attempting to get the position of an entity that doesn't belong to the sparse set results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the sparse set doesn't contain the given entity.
+
Warning Attempting to get the position of an entity that doesn't belong to the sparse set results in undefined behavior.
Parameters
entt A valid entity identifier.
@@ -704,12 +571,12 @@ template<typename Entity >
Returns The position of the entity in the sparse set.
-Definition at line 371 of file sparse_set.hpp .
+Definition at line 373 of file sparse_set.hpp .
-
-◆ insert()
+
+◆ insert()
@@ -722,7 +589,7 @@ template<typename It >
- void entt::sparse_set < Entity >::insert
+ void entt::basic_sparse_set < Entity >::insert
(
It
first ,
@@ -747,8 +614,7 @@ template<typename It >
Assigns one or more entities to a sparse set.
-
Warning Attempting to assign an entity that already belongs to the sparse set results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the sparse set already contains the given entity.
+
Warning Attempting to assign an entity that already belongs to the sparse set results in undefined behavior.
Template Parameters
It Type of input iterator.
@@ -763,12 +629,12 @@ template<typename It >
-Definition at line 407 of file sparse_set.hpp .
+Definition at line 405 of file sparse_set.hpp .
-
-◆ operator=()
+
+◆ operator=()
@@ -779,9 +645,9 @@ template<typename Entity >
- sparse_set & entt::sparse_set < Entity >::operator=
+ basic_sparse_set & entt::basic_sparse_set < Entity >::operator=
(
- sparse_set < Entity > &&
+ basic_sparse_set < Entity > &&
)
@@ -798,8 +664,8 @@ template<typename Entity >
-
-◆ rbegin()
+
+◆ rbegin()
@@ -810,7 +676,7 @@ template<typename Entity >
- reverse_iterator entt::sparse_set < Entity >::rbegin
+ reverse_iterator entt::basic_sparse_set < Entity >::rbegin
(
)
const
@@ -824,15 +690,15 @@ template<typename Entity >
Returns a reverse iterator to the beginning.
-
The returned iterator points to the first entity of the reversed internal packed array. If the sparse set is empty, the returned iterator will be equal to rend() .
+
The returned iterator points to the first entity of the reversed internal packed array. If the sparse set is empty, the returned iterator will be equal to rend() .
Returns An iterator to the first entity of the reversed internal packed array.
-
Definition at line 320 of file sparse_set.hpp .
+
Definition at line 324 of file sparse_set.hpp .
-
-◆ rend()
+
+◆ remove() [1/2]
@@ -843,7 +709,103 @@ template<typename Entity >
+
+
+inline
+
+
+
+
+
Removes an entity from a sparse set.
+
Warning Attempting to remove an entity that doesn't belong to the sparse set results in undefined behavior.
+
Parameters
+
+ entt A valid entity identifier.
+
+
+
+
+
Definition at line 424 of file sparse_set.hpp .
+
+
+
+
+◆ remove() [2/2]
+
+
+
+
+template<typename Entity >
+
+template<typename It >
+
+
+
+
Removes multiple entities from a pool.
+
Template Parameters
+
+ It Type of input iterator.
+
+
+
+
Parameters
+
+ first An iterator to the first element of the range of entities.
+ last An iterator past the last element of the range of entities.
+
+
+
+
+
Definition at line 445 of file sparse_set.hpp .
+
+
+
+
+◆ rend()
+
+
+
+
+template<typename Entity >
+
+
+
+
+
+ reverse_iterator entt::basic_sparse_set < Entity >::rend
(
)
const
@@ -860,12 +822,12 @@ template<typename Entity >
The returned iterator points to the element following the last entity in the reversed internal packed array. Attempting to dereference the returned iterator results in undefined behavior.
Returns An iterator to the element following the last entity of the reversed internal packed array.
-Definition at line 334 of file sparse_set.hpp .
+Definition at line 338 of file sparse_set.hpp .
-
-◆ reserve()
+
+◆ reserve()
@@ -876,9 +838,9 @@ template<typename Entity >
- void entt::sparse_set < Entity >::reserve
+ void entt::basic_sparse_set < Entity >::reserve
(
- const size_type
+ const size_type
cap )
@@ -899,12 +861,12 @@ template<typename Entity >
-Definition at line 206 of file sparse_set.hpp .
+Definition at line 210 of file sparse_set.hpp .
-
-◆ respect()
+
+◆ respect()
@@ -915,9 +877,9 @@ template<typename Entity >
- void entt::sparse_set < Entity >::respect
+ void entt::basic_sparse_set < Entity >::respect
(
- const sparse_set < Entity > &
+ const basic_sparse_set < Entity > &
other )
@@ -940,12 +902,12 @@ template<typename Entity >
-Definition at line 580 of file sparse_set.hpp .
+Definition at line 559 of file sparse_set.hpp .
-
-◆ size()
+
+◆ size()
@@ -956,7 +918,7 @@ template<typename Entity >
- size_type entt::sparse_set < Entity >::size
+ size_type entt::basic_sparse_set < Entity >::size
(
)
const
@@ -973,12 +935,12 @@ template<typename Entity >
The number of elements is also the size of the internal packed array. There is no guarantee that the internal sparse array has the same size. Usually the size of the internal sparse array is equal or greater than the one of the internal packed array.
Returns Number of elements.
-Definition at line 254 of file sparse_set.hpp .
+Definition at line 258 of file sparse_set.hpp .
-
-◆ sort()
+
+◆ sort()
@@ -991,16 +953,77 @@ template<typename Compare , typename Sort = std_sort, typename... Args> <
+
+
+inline
+
+
+
+
+
Sort all elements according to the given comparison function.
+
See also sort_n
+
Template Parameters
+
+ Compare Type of comparison function object.
+ Sort Type of sort function object.
+ Args Types of arguments to forward to the sort function object.
+
+
+
+
Parameters
+
+ compare A valid comparison function object.
+ algo A valid sort function object.
+ args Arguments to forward to the sort function object, if any.
+
+
+
+
+
Definition at line 540 of file sparse_set.hpp .
+
+
+
+
+◆ sort_n()
+
+
+
+
+template<typename Entity >
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+
+
+
+
+
+ void entt::basic_sparse_set < Entity >::sort_n
+ (
+ const size_type
+ count ,
@@ -1033,12 +1056,11 @@ template<typename Compare , typename Sort = std_sort, typename... Args> <
-
Sort elements according to the given comparison function.
-
Sort the elements so that iterating the range with a couple of iterators returns them in the expected order. See begin and end for more details.
+
Sort the first count elements according to the given comparison function.
The comparison function object must return true if the first element is less than the second one, false otherwise. The signature of the comparison function should be equivalent to the following:
bool(const Entity, const Entity);
Moreover, the comparison function object shall induce a strict weak ordering on the values.
-
The sort function oject must offer a member function template operator() that accepts three arguments:
+
The sort function object must offer a member function template operator() that accepts three arguments:
An iterator to the first element of the range to sort.
An iterator past the last element of the range to sort.
@@ -1054,8 +1076,7 @@ template<typename Compare , typename Sort = std_sort, typename... Args> <
Parameters
- first An iterator to the first element of the range to sort.
- last An iterator past the last element of the range to sort.
+ count Number of elements to sort.
compare A valid comparison function object.
algo A valid sort function object.
args Arguments to forward to the sort function object, if any.
@@ -1063,12 +1084,12 @@ template<typename Compare , typename Sort = std_sort, typename... Args> <
-Definition at line 496 of file sparse_set.hpp .
+Definition at line 508 of file sparse_set.hpp .
-
-◆ swap()
+
+◆ swap()
@@ -1079,15 +1100,15 @@ template<typename Entity >
-inline virtual
+
inline
Swaps two entities in the internal packed array.
For what it's worth, this function affects both the internal sparse array and the internal packed array. Users should not care of that anyway.
-
Warning Attempting to swap entities that don't belong to the sparse set results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the sparse set doesn't contain the given entities.
+
Warning Attempting to swap entities that don't belong to the sparse set results in undefined behavior.
Parameters
lhs A valid entity identifier.
@@ -1115,13 +1135,12 @@ template<typename Entity >
-Reimplemented in entt::storage< Entity, Type, typename > , entt::storage< Entity, Component > , and entt::storage< entity_type, payload_type > .
-
-Definition at line 454 of file sparse_set.hpp .
+Definition at line 469 of file sparse_set.hpp .
- The documentation for this class was generated from the following file:
+ The documentation for this class was generated from the following files:
diff --git a/classentt_1_1basic__sparse__set__inherit__graph.map b/classentt_1_1basic__sparse__set__inherit__graph.map
new file mode 100644
index 000000000..41d0817bf
--- /dev/null
+++ b/classentt_1_1basic__sparse__set__inherit__graph.map
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/classentt_1_1basic__sparse__set__inherit__graph.md5 b/classentt_1_1basic__sparse__set__inherit__graph.md5
new file mode 100644
index 000000000..c9650537a
--- /dev/null
+++ b/classentt_1_1basic__sparse__set__inherit__graph.md5
@@ -0,0 +1 @@
+912695cf23c393ebe47a75006096aa3d
\ No newline at end of file
diff --git a/classentt_1_1basic__sparse__set__inherit__graph.png b/classentt_1_1basic__sparse__set__inherit__graph.png
new file mode 100644
index 000000000..884f4db11
Binary files /dev/null and b/classentt_1_1basic__sparse__set__inherit__graph.png differ
diff --git a/classentt_1_1basic__storage-members.html b/classentt_1_1basic__storage-members.html
new file mode 100644
index 000000000..5a142a23b
--- /dev/null
+++ b/classentt_1_1basic__storage-members.html
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+EnTT: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EnTT
+ 3.6.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for entt::basic_storage< Entity, Type, typename > , including all inherited members.
+
+ begin () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ begin () noexceptentt::basic_storage< Entity, Type, typename > inline
+ cbegin () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ cend () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ const_iterator typedefentt::basic_storage< Entity, Type, typename >
+ const_reverse_iterator typedefentt::basic_storage< Entity, Type, typename >
+ crbegin () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ crend () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ emplace (const entity_type entt, Args &&... args)entt::basic_storage< Entity, Type, typename > inline
+ end () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ end () noexceptentt::basic_storage< Entity, Type, typename > inline
+ entity_type typedefentt::basic_storage< Entity, Type, typename >
+ get (const entity_type entt) constentt::basic_storage< Entity, Type, typename > inline
+ get (const entity_type entt)entt::basic_storage< Entity, Type, typename > inline
+ insert (It first, It last, const value_type &value={})entt::basic_storage< Entity, Type, typename > inline
+ insert (EIt first, EIt last, CIt from, CIt to)entt::basic_storage< Entity, Type, typename > inline
+ iterator typedefentt::basic_storage< Entity, Type, typename >
+ raw () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ raw () noexceptentt::basic_storage< Entity, Type, typename > inline
+ rbegin () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ rbegin () noexceptentt::basic_storage< Entity, Type, typename > inline
+ rend () const noexceptentt::basic_storage< Entity, Type, typename > inline
+ rend () noexceptentt::basic_storage< Entity, Type, typename > inline
+ reserve (const size_type cap)entt::basic_storage< Entity, Type, typename > inline
+ reverse_iterator typedefentt::basic_storage< Entity, Type, typename >
+ shrink_to_fit ()entt::basic_storage< Entity, Type, typename > inline
+ size_type typedefentt::basic_storage< Entity, Type, typename >
+ sort (Compare compare, Sort algo=Sort{}, Args &&... args)entt::basic_storage< Entity, Type, typename > inline
+ sort_n (const size_type count, Compare compare, Sort algo=Sort{}, Args &&... args)entt::basic_storage< Entity, Type, typename > inline
+ storage_category typedefentt::basic_storage< Entity, Type, typename >
+ value_type typedefentt::basic_storage< Entity, Type, typename >
+
+
+
+
+
diff --git a/classentt_1_1basic__storage.html b/classentt_1_1basic__storage.html
new file mode 100644
index 000000000..eb5973270
--- /dev/null
+++ b/classentt_1_1basic__storage.html
@@ -0,0 +1,1160 @@
+
+
+
+
+
+
+
+EnTT: entt::basic_storage< Entity, Type, typename > Class Template Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EnTT
+ 3.6.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Basic storage implementation.
+ More...
+
+
#include <storage.hpp >
+
+
+void reserve (const size_type cap)
+ Increases the capacity of a storage. More...
+
+
+void shrink_to_fit ()
+ Requests the removal of unused capacity.
+
+const value_type * raw () const noexcept
+ Direct access to the array of objects. More...
+
+value_type * raw () noexcept
+ Direct access to the array of objects. More...
+
+const_iterator cbegin () const noexcept
+ Returns an iterator to the beginning. More...
+
+const_iterator begin () const noexcept
+ Returns an iterator to the beginning. More...
+
+iterator begin () noexcept
+ Returns an iterator to the beginning. More...
+
+const_iterator cend () const noexcept
+ Returns an iterator to the end. More...
+
+const_iterator end () const noexcept
+ Returns an iterator to the end. More...
+
+iterator end () noexcept
+ Returns an iterator to the end. More...
+
+const_reverse_iterator crbegin () const noexcept
+ Returns a reverse iterator to the beginning. More...
+
+const_reverse_iterator rbegin () const noexcept
+ Returns a reverse iterator to the beginning. More...
+
+reverse_iterator rbegin () noexcept
+ Returns a reverse iterator to the beginning. More...
+
+const_reverse_iterator crend () const noexcept
+ Returns a reverse iterator to the end. More...
+
+const_reverse_iterator rend () const noexcept
+ Returns a reverse iterator to the end. More...
+
+reverse_iterator rend () noexcept
+ Returns a reverse iterator to the end. More...
+
+const value_type & get (const entity_type entt) const
+ Returns the object associated with an entity. More...
+
+value_type & get (const entity_type entt)
+ Returns the object associated with an entity. More...
+
+template<typename... Args>
+value_type & emplace (const entity_type entt, Args &&... args)
+ Assigns an entity to a storage and constructs its object. More...
+
+template<typename It >
+void insert (It first, It last, const value_type &value={})
+ Assigns one or more entities to a storage and constructs their objects from a given instance. More...
+
+template<typename EIt , typename CIt >
+void insert (EIt first, EIt last, CIt from, CIt to)
+ Assigns one or more entities to a storage and constructs their objects from a given range. More...
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+void sort_n (const size_type count, Compare compare, Sort algo=Sort{}, Args &&... args)
+ Sort elements according to the given comparison function. More...
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+void sort (Compare compare, Sort algo=Sort{}, Args &&... args)
+ Sort all elements according to the given comparison function. More...
+
+
+
+
template<typename Entity, typename Type, typename = void>
+class entt::basic_storage< Entity, Type, typename >
+
+
Basic storage implementation.
+
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.
+
Note Entities and objects have the same order. It's guaranteed both in case of raw access (either to entities or objects) and when using random or input access iterators.
+
+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.
+
Warning Empty types aren't explicitly instantiated. Therefore, many of the functions normally available for non-empty types will not be available for empty ones.
+
See also sparse_set<Entity>
+
Template Parameters
+
+ Entity A valid entity type (see entt_traits for more details).
+ Type Type of objects assigned to the entities.
+
+
+
+
+
Definition at line 58 of file storage.hpp .
+
+
+
◆ begin() [1/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterator to the beginning.
+
The returned iterator points to the first instance of the internal array. If the storage is empty, the returned iterator will be equal to end() .
+
Returns An iterator to the first instance of the internal array.
+
+
Definition at line 253 of file storage.hpp .
+
+
+
+
+
◆ begin() [2/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterator to the beginning.
+
The returned iterator points to the first instance of the internal array. If the storage is empty, the returned iterator will be equal to end() .
+
Returns An iterator to the first instance of the internal array.
+
+
Definition at line 258 of file storage.hpp .
+
+
+
+
+
◆ cbegin()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterator to the beginning.
+
The returned iterator points to the first instance of the internal array. If the storage is empty, the returned iterator will be equal to end() .
+
Returns An iterator to the first instance of the internal array.
+
+
Definition at line 247 of file storage.hpp .
+
+
+
+
+
◆ cend()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterator to the end.
+
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.
+
Returns An iterator to the element following the last instance of the internal array.
+
+
Definition at line 273 of file storage.hpp .
+
+
+
+
+
◆ crbegin()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns a reverse iterator to the beginning.
+
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 rend() .
+
Returns An iterator to the first instance of the reversed internal array.
+
+
Definition at line 296 of file storage.hpp .
+
+
+
+
+
◆ crend()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns a reverse iterator to the end.
+
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.
+
Returns An iterator to the element following the last instance of the reversed internal array.
+
+
Definition at line 320 of file storage.hpp .
+
+
+
+
+
◆ emplace()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+template<typename... Args>
+
+
+
+
Assigns an entity to a storage and constructs its object.
+
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 emplace back .
+
Warning Attempting to use an entity that already belongs to the storage results in undefined behavior.
+
Template Parameters
+
+ Args Types of arguments to use to construct the object.
+
+
+
+
Parameters
+
+ entt A valid entity identifier.
+ args Parameters to use to construct an object for the entity.
+
+
+
+
Returns A reference to the newly created object.
+
+
Definition at line 370 of file storage.hpp .
+
+
+
+
+
◆ end() [1/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterator to the end.
+
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.
+
Returns An iterator to the element following the last instance of the internal array.
+
+
Definition at line 278 of file storage.hpp .
+
+
+
+
+
◆ end() [2/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterator to the end.
+
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.
+
Returns An iterator to the element following the last instance of the internal array.
+
+
Definition at line 283 of file storage.hpp .
+
+
+
+
+
◆ get() [1/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
Returns the object associated with an entity.
+
Warning Attempting to use an entity that doesn't belong to the storage results in undefined behavior.
+
Parameters
+
+ entt A valid entity identifier.
+
+
+
+
Returns The object associated with the entity.
+
+
Definition at line 349 of file storage.hpp .
+
+
+
+
+
◆ get() [2/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
Returns the object associated with an entity.
+
Warning Attempting to use an entity that doesn't belong to the storage results in undefined behavior.
+
Parameters
+
+ entt A valid entity identifier.
+
+
+
+
Returns The object associated with the entity.
+
+
Definition at line 344 of file storage.hpp .
+
+
+
+
+
◆ insert() [1/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+template<typename EIt , typename CIt >
+
+
+
+
+
+ void entt::basic_storage < Entity, Type, typename >::insert
+ (
+ EIt
+ first ,
+
+
+
+
+ EIt
+ last ,
+
+
+
+
+ CIt
+ from ,
+
+
+
+
+ CIt
+ to
+
+
+
+ )
+
+
+
+
+
+inline
+
+
+
+
+
Assigns one or more entities to a storage and constructs their objects from a given range.
+
See also construct
+
Template Parameters
+
+ EIt Type of input iterator.
+ CIt Type of input iterator.
+
+
+
+
Parameters
+
+ first An iterator to the first element of the range of entities.
+ last An iterator past the last element of the range of entities.
+ from An iterator to the first element of the range of objects.
+ to An iterator past the last element of the range of objects.
+
+
+
+
+
Definition at line 416 of file storage.hpp .
+
+
+
+
+
◆ insert() [2/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+template<typename It >
+
+
+
+
+
+ void entt::basic_storage < Entity, Type, typename >::insert
+ (
+ It
+ first ,
+
+
+
+
+ It
+ last ,
+
+
+
+
+ const value_type &
+ value = {}
+
+
+
+ )
+
+
+
+
+
+inline
+
+
+
+
+
Assigns one or more entities to a storage and constructs their objects from a given instance.
+
Warning Attempting to assign an entity that already belongs to the storage results in undefined behavior.
+
Template Parameters
+
+ It Type of input iterator.
+
+
+
+
Parameters
+
+ first An iterator to the first element of the range of entities.
+ last An iterator past the last element of the range of entities.
+ value An instance of the object to construct.
+
+
+
+
+
Definition at line 396 of file storage.hpp .
+
+
+
+
+
◆ raw() [1/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Direct access to the array of objects.
+
The returned pointer is such that range [raw() , raw() + size()) is always a valid range, even if the container is empty.
+
Note Objects are in the reverse order as returned by the begin/end iterators.
+
Returns A pointer to the array of objects.
+
+
Definition at line 230 of file storage.hpp .
+
+
+
+
+
◆ raw() [2/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Direct access to the array of objects.
+
The returned pointer is such that range [raw() , raw() + size()) is always a valid range, even if the container is empty.
+
Note Objects are in the reverse order as returned by the begin/end iterators.
+
Returns A pointer to the array of objects.
+
+
Definition at line 235 of file storage.hpp .
+
+
+
+
+
◆ rbegin() [1/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns a reverse iterator to the beginning.
+
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 rend() .
+
Returns An iterator to the first instance of the reversed internal array.
+
+
Definition at line 301 of file storage.hpp .
+
+
+
+
+
◆ rbegin() [2/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns a reverse iterator to the beginning.
+
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 rend() .
+
Returns An iterator to the first instance of the reversed internal array.
+
+
Definition at line 306 of file storage.hpp .
+
+
+
+
+
◆ rend() [1/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns a reverse iterator to the end.
+
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.
+
Returns An iterator to the element following the last instance of the reversed internal array.
+
+
Definition at line 325 of file storage.hpp .
+
+
+
+
+
◆ rend() [2/2]
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns a reverse iterator to the end.
+
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.
+
Returns An iterator to the element following the last instance of the reversed internal array.
+
+
Definition at line 330 of file storage.hpp .
+
+
+
+
+
◆ reserve()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+
+
+
Increases the capacity of a storage.
+
If the new capacity is greater than the current capacity, new storage is allocated, otherwise the method does nothing.
+
Parameters
+
+
+
+
+
Definition at line 207 of file storage.hpp .
+
+
+
+
+
◆ sort()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+
+
+
+
+
+ void entt::basic_storage < Entity, Type, typename >::sort
+ (
+ Compare
+ compare ,
+
+
+
+
+ Sort
+ algo = Sort{},
+
+
+
+
+ Args &&...
+ args
+
+
+
+ )
+
+
+
+
+
+inline
+
+
+
+
+
Sort all elements according to the given comparison function.
+
See also sort_n
+
Template Parameters
+
+ Compare Type of comparison function object.
+ Sort Type of sort function object.
+ Args Types of arguments to forward to the sort function object.
+
+
+
+
Parameters
+
+ compare A valid comparison function object.
+ algo A valid sort function object.
+ args Arguments to forward to the sort function object, if any.
+
+
+
+
+
Definition at line 481 of file storage.hpp .
+
+
+
+
+
◆ sort_n()
+
+
+
+
+template<typename Entity , typename Type , typename = void>
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+
+
+
+
+
+ void entt::basic_storage < Entity, Type, typename >::sort_n
+ (
+ const size_type
+ count ,
+
+
+
+
+ Compare
+ compare ,
+
+
+
+
+ Sort
+ algo = Sort{},
+
+
+
+
+ Args &&...
+ args
+
+
+
+ )
+
+
+
+
+
+inline
+
+
+
+
+
Sort elements according to the given comparison function.
+
The comparison function object must return true if the first element is less than the second one, false otherwise. The signature of the comparison function should be equivalent to one of the following:
+
bool(const Entity, const Entity);
+
bool(const Type &, const Type &);
+
Moreover, the comparison function object shall induce a strict weak ordering on the values.
+
The sort function oject must offer a member function template operator() that accepts three arguments:
+
+An iterator to the first element of the range to sort.
+An iterator past the last element of the range to sort.
+A comparison function to use to compare the elements.
+
+
Warning Empty types are never instantiated. Therefore, only comparison function objects that require to return entities rather than components are accepted.
+
Template Parameters
+
+ Compare Type of comparison function object.
+ Sort Type of sort function object.
+ Args Types of arguments to forward to the sort function object.
+
+
+
+
Parameters
+
+ count Number of elements to sort.
+ compare A valid comparison function object.
+ algo A valid sort function object.
+ args Arguments to forward to the sort function object, if any.
+
+
+
+
+
Definition at line 458 of file storage.hpp .
+
+
+
+
The documentation for this class was generated from the following files:
+
+
+
+
+
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.map b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.map
new file mode 100644
index 000000000..86e653a8b
--- /dev/null
+++ b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.map
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.md5 b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.md5
new file mode 100644
index 000000000..ae192cd9d
--- /dev/null
+++ b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.md5
@@ -0,0 +1 @@
+b67778f396d954eb246b2c9a278d924a
\ No newline at end of file
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.png b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.png
new file mode 100644
index 000000000..e452de0b0
Binary files /dev/null and b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_010277fbc190173a2c5ead5ca25e1b65ed.png differ
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.map b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.map
new file mode 100644
index 000000000..86e653a8b
--- /dev/null
+++ b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.map
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.md5 b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.md5
new file mode 100644
index 000000000..ae192cd9d
--- /dev/null
+++ b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.md5
@@ -0,0 +1 @@
+b67778f396d954eb246b2c9a278d924a
\ No newline at end of file
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.png b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.png
new file mode 100644
index 000000000..e452de0b0
Binary files /dev/null and b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_016669ad83cbd2b452869e05410d99a48b.png differ
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_01Type_01_4_01_4_01_4-members.html b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_01Type_01_4_01_4_01_4-members.html
new file mode 100644
index 000000000..d28705f73
--- /dev/null
+++ b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_01Type_01_4_01_4_01_4-members.html
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+EnTT: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EnTT
+ 3.6.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for entt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > > , including all inherited members.
+
+ basic_sparse_set ()=defaultentt::basic_sparse_set< Entity >
+ basic_sparse_set (basic_sparse_set &&)=defaultentt::basic_sparse_set< Entity >
+ begin () const noexceptentt::basic_sparse_set< Entity > inline
+ capacity () const noexceptentt::basic_sparse_set< Entity > inline
+ clear () noexceptentt::basic_sparse_set< Entity > inline
+ contains (const entity_type entt) constentt::basic_sparse_set< Entity > inline
+ data () const noexceptentt::basic_sparse_set< Entity > inline
+ emplace (const entity_type entt, Args &&... args)entt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > > inline
+ entt::basic_sparse_set::emplace (const entity_type entt)entt::basic_sparse_set< Entity > inline
+ empty () const noexceptentt::basic_sparse_set< Entity > inline
+ end () const noexceptentt::basic_sparse_set< Entity > inline
+ entity_type typedefentt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > >
+ extent () const noexceptentt::basic_sparse_set< Entity > inline
+ find (const entity_type entt) constentt::basic_sparse_set< Entity > inline
+ index (const entity_type entt) constentt::basic_sparse_set< Entity > inline
+ insert (It first, It last, const value_type &={})entt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > > inline
+ entt::basic_sparse_set::insert (It first, It last)entt::basic_sparse_set< Entity > inline
+ iterator typedefentt::basic_sparse_set< Entity >
+ operator= (basic_sparse_set &&)=defaultentt::basic_sparse_set< Entity >
+ rbegin () const noexceptentt::basic_sparse_set< Entity > inline
+ remove (const entity_type entt)entt::basic_sparse_set< Entity > inline
+ remove (It first, It last)entt::basic_sparse_set< Entity > inline
+ rend () const noexceptentt::basic_sparse_set< Entity > inline
+ reserve (const size_type cap)entt::basic_sparse_set< Entity > inline
+ respect (const basic_sparse_set &other)entt::basic_sparse_set< Entity > inline
+ reverse_iterator typedefentt::basic_sparse_set< Entity >
+ shrink_to_fit ()entt::basic_sparse_set< Entity > inline
+ size () const noexceptentt::basic_sparse_set< Entity > inline
+ size_type typedefentt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > >
+ sort (Compare compare, Sort algo=Sort{}, Args &&... args)entt::basic_sparse_set< Entity > inline
+ sort_n (const size_type count, Compare compare, Sort algo=Sort{}, Args &&... args)entt::basic_sparse_set< Entity > inline
+ storage_category typedefentt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > >
+ swap (const entity_type lhs, const entity_type rhs)entt::basic_sparse_set< Entity > inline
+ value_type typedefentt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > >
+ ~basic_sparse_set ()=defaultentt::basic_sparse_set< Entity > virtual
+
+
+
+
+
diff --git a/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_01Type_01_4_01_4_01_4.html b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_01Type_01_4_01_4_01_4.html
new file mode 100644
index 000000000..bf44253e2
--- /dev/null
+++ b/classentt_1_1basic__storage_3_01Entity_00_01Type_00_01std_1_1enable__if__t_3_01is__empty__v_3_01Type_01_4_01_4_01_4.html
@@ -0,0 +1,391 @@
+
+
+
+
+
+
+
+EnTT: entt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > > Class Template Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ EnTT
+ 3.6.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Basic storage implementation.
+ More...
+
+
#include <storage.hpp >
+
+
+
+
+
+
+template<typename... Args>
+void emplace (const entity_type entt, Args &&... args)
+ Assigns an entity to a storage and constructs its object. More...
+
+template<typename It >
+void insert (It first, It last, const value_type &={})
+ Assigns one or more entities to a storage. More...
+
+
+
+ basic_sparse_set ()=default
+ Default constructor.
+
+
+ basic_sparse_set (basic_sparse_set &&)=default
+ Default move constructor.
+
+
+virtual ~basic_sparse_set ()=default
+ Default destructor.
+
+basic_sparse_set & operator= (basic_sparse_set &&)=default
+ Default move assignment operator. More...
+
+void reserve (const size_type cap)
+ Increases the capacity of a sparse set. More...
+
+size_type capacity () const noexcept
+ Returns the number of elements that a sparse set has currently allocated space for. More...
+
+
+void shrink_to_fit ()
+ Requests the removal of unused capacity.
+
+size_type extent () const noexcept
+ Returns the extent of a sparse set. More...
+
+size_type size () const noexcept
+ Returns the number of elements in a sparse set. More...
+
+bool empty () const noexcept
+ Checks whether a sparse set is empty. More...
+
+const entity_type * data () const noexcept
+ Direct access to the internal packed array. More...
+
+iterator begin () const noexcept
+ Returns an iterator to the beginning. More...
+
+iterator end () const noexcept
+ Returns an iterator to the end. More...
+
+reverse_iterator rbegin () const noexcept
+ Returns a reverse iterator to the beginning. More...
+
+reverse_iterator rend () const noexcept
+ Returns a reverse iterator to the end. More...
+
+iterator find (const entity_type entt) const
+ Finds an entity. More...
+
+bool contains (const entity_type entt) const
+ Checks if a sparse set contains an entity. More...
+
+size_type index (const entity_type entt) const
+ Returns the position of an entity in a sparse set. More...
+
+void emplace (const entity_type entt)
+ Assigns an entity to a sparse set. More...
+
+template<typename It >
+void insert (It first, It last)
+ Assigns one or more entities to a sparse set. More...
+
+void remove (const entity_type entt)
+ Removes an entity from a sparse set. More...
+
+template<typename It >
+void remove (It first, It last)
+ Removes multiple entities from a pool. More...
+
+void swap (const entity_type lhs, const entity_type rhs)
+ Swaps two entities in the internal packed array. More...
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+void sort_n (const size_type count, Compare compare, Sort algo=Sort{}, Args &&... args)
+ Sort the first count elements according to the given comparison function. More...
+
+template<typename Compare , typename Sort = std_sort, typename... Args>
+void sort (Compare compare, Sort algo=Sort{}, Args &&... args)
+ Sort all elements according to the given comparison function. More...
+
+void respect (const basic_sparse_set &other)
+ Sort entities according to their order in another sparse set. More...
+
+
+void clear () noexcept
+ Clears a sparse set.
+
+
+
+
template<typename Entity, typename Type>
+class entt::basic_storage< Entity, Type, std::enable_if_t< is_empty_v< Type > > >
+
+
Basic storage implementation.
+
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.
+
Note Entities and objects have the same order. It's guaranteed both in case of raw access (either to entities or objects) and when using random or input access iterators.
+
+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.
+
Warning Empty types aren't explicitly instantiated. Therefore, many of the functions normally available for non-empty types will not be available for empty ones.
+
See also sparse_set<Entity>
+
Template Parameters
+
+ Entity A valid entity type (see entt_traits for more details).
+ Type Type of objects assigned to the entities.
+
+
+
+
+
Definition at line 492 of file storage.hpp .
+
+
+
◆ emplace()
+
+
+
+
+template<typename Entity , typename Type >
+
+template<typename... Args>
+
+
+
+
Assigns an entity to a storage and constructs its object.
+
Warning Attempting to use an entity that already belongs to the storage results in undefined behavior.
+
Template Parameters
+
+ Args Types of arguments to use to construct the object.
+
+
+
+
Parameters
+
+ entt A valid entity identifier.
+ args Parameters to use to construct an object for the entity.
+
+
+
+
+
Definition at line 517 of file storage.hpp .
+
+
+
+
+
◆ insert()
+
+
+
+
+template<typename Entity , typename Type >
+
+template<typename It >
+
+
+
+
Assigns one or more entities to a storage.
+
Warning Attempting to assign an entity that already belongs to the storage results in undefined behavior.
+
Template Parameters
+
+ It Type of input iterator.
+
+
+
+
Parameters
+
+ first An iterator to the first element of the range of entities.
+ last An iterator past the last element of the range of entities.
+
+
+
+
+
Definition at line 534 of file storage.hpp .
+
+
+
+
The documentation for this class was generated from the following file:
+
+
+
+
+
diff --git a/classentt_1_1basic__view.html b/classentt_1_1basic__view.html
index 6af08796a..06ce13dd1 100644
--- a/classentt_1_1basic__view.html
+++ b/classentt_1_1basic__view.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -80,7 +80,7 @@ class entt::basic_view<... >
View.
Primary template isn't defined on purpose. All the specializations give a compile-time error, but for a few reasonable cases.
-Definition at line 16 of file fwd.hpp .
+Definition at line 24 of file fwd.hpp .
The documentation for this class was generated from the following file:
diff --git a/classentt_1_1basic__view_3_01Entity_00_01exclude__t_3_01Exclude_8_8_8_01_4_00_01Component_8_8_8_01_4-members.html b/classentt_1_1basic__view_3_01Entity_00_01exclude__t_3_01Exclude_8_8_8_01_4_00_01Component_8_8_8_01_4-members.html
index 2d99feae2..41673eebd 100644
--- a/classentt_1_1basic__view_3_01Entity_00_01exclude__t_3_01Exclude_8_8_8_01_4_00_01Component_8_8_8_01_4-members.html
+++ b/classentt_1_1basic__view_3_01Entity_00_01exclude__t_3_01Exclude_8_8_8_01_4_00_01Component_8_8_8_01_4-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -74,29 +74,27 @@ $(function() {
This is the complete list of members for entt::basic_view< Entity, exclude_t< Exclude... >, Component... > , including all inherited members.
back () constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- basic_registry< Entity > classentt::basic_view< Entity, exclude_t< Exclude... >, Component... > friend
- begin () constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- chunked (Func func) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ basic_view () noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ basic_view (storage_type< Component > &... component, const storage_type< Exclude > &... epool) noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ begin () constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
contains (const entity_type entt) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- data () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- each (Func func) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- each (Func func) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- empty () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ each (Func func) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ each (Func func) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ each () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ each () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
end () constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
entity_type typedefentt::basic_view< Entity, exclude_t< Exclude... >, Component... >
find (const entity_type entt) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
front () constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
get ([[maybe_unused]] const entity_type entt) constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- iterator typedefentt::basic_view< Entity, exclude_t< Exclude... >, Component... >
- proxy () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- proxy () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- raw () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ iterator typedefentt::basic_view< Entity, exclude_t< Exclude... >, Component... >
+ operator bool () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline explicit
rbegin () constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
rend () constentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- reverse_iterator typedefentt::basic_view< Entity, exclude_t< Exclude... >, Component... >
- size () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- size () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
- size_type typedefentt::basic_view< Entity, exclude_t< Exclude... >, Component... >
+ reverse_iterator typedefentt::basic_view< Entity, exclude_t< Exclude... >, Component... >
+ size_hint () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
+ size_type typedefentt::basic_view< Entity, exclude_t< Exclude... >, Component... >
+ use () const noexceptentt::basic_view< Entity, exclude_t< Exclude... >, Component... > inline
-template<typename Comp >
-size_type size () const noexcept
- Returns the number of existing components of the given type. More...
-
-size_type size () const noexcept
- Estimates the number of entities iterated by the view. More...
-
-template<typename... Comp>
-bool empty () const noexcept
- Checks whether a view or some pools are empty. More...
-
-template<typename Comp >
-Comp * raw () const noexcept
- Direct access to the list of components of a given pool. More...
-
-template<typename Comp >
-const entity_type * data () const noexcept
- Direct access to the list of entities of a given pool. More...
-
-iterator begin () const
+
+ basic_view () noexcept
+ Default constructor to use to create empty, invalid views.
+
+ basic_view (storage_type< Component > &... component, const storage_type< Exclude > &... epool) noexcept
+ Constructs a multi-type view from a set of storage classes. More...
+
+template<typename Comp >
+void use () const noexcept
+ Forces the type to use to drive iterations. More...
+
+size_type size_hint () const noexcept
+ Estimates the number of entities iterated by the view. More...
+
+iterator begin () const
Returns an iterator to the first entity of the view. More...
-iterator end () const
+iterator end () const
Returns an iterator that is past the last entity of the view. More...
-reverse_iterator rbegin () const
+reverse_iterator rbegin () const
Returns an iterator to the first entity of the reversed view. More...
-reverse_iterator rend () const
+reverse_iterator rend () const
Returns an iterator that is past the last entity of the reversed view. More...
entity_type front () const
@@ -140,9 +134,12 @@ Public Member Functions
entity_type back () const
Returns the last entity of the view, if any. More...
-iterator find (const entity_type entt) const
+iterator find (const entity_type entt) const
Finds an entity. More...
+ operator bool () const noexcept
+ Checks if a view is properly initialized. More...
+
bool contains (const entity_type entt) const
Checks if a view contains an entity. More...
@@ -158,24 +155,13 @@ Public Member Functions
void each (Func func) const
Iterates entities and components and applies the given function object to them. More...
-auto proxy () const noexcept
- Returns an iterable object to use to visit the view. More...
-
-template<typename Comp >
-auto proxy () const noexcept
- Returns an iterable object to use to visit the view. More...
-
-template<typename Func >
-void chunked (Func func) const
- Chunked iteration for entities and components. More...
-
-
-
-
-class basic_registry< Entity >
- A registry is allowed to create views.
-
+iterable_view each () const noexcept
+ Returns an iterable object to use to visit the view. More...
+
+template<typename Comp >
+iterable_view each () const noexcept
+ Returns an iterable object to use to visit the view. More...
+
template<typename Entity, typename... Exclude, typename... Component>
@@ -203,7 +189,57 @@ class entt::basic_view< Entity, exclude_t< Exclude... >, Component... &
Definition at line 67 of file view.hpp .
-
+
+
+◆ basic_view()
+
+
+
+
+template<typename Entity , typename... Exclude, typename... Component>
+
+
+
+
+
+ entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::basic_view
+ (
+ storage_type< Component > &...
+ component ,
+
+
+
+
+ const storage_type< Exclude > &...
+ epool
+
+
+
+ )
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Constructs a multi-type view from a set of storage classes.
+
Parameters
+
+ component The storage for the types to iterate.
+ epool The storage for the types used to filter the view.
+
+
+
+
+
Definition at line 301 of file view.hpp .
+
+
+
+
◆ back()
@@ -232,7 +268,7 @@ template<typename Entity , typename... Exclude, typename... Component> Returns the last entity of the view, if any.
Returns The last entity of the view if one exists, the null entity otherwise.
-Definition at line 501 of file view.hpp .
+Definition at line 391 of file view.hpp .
@@ -248,7 +284,7 @@ template<typename Entity , typename... Exclude, typename... Component>
- iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::begin
+ iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::begin
(
)
const
@@ -263,68 +299,9 @@ template<typename Entity , typename... Exclude, typename... Component> Returns an iterator to the first entity of the view.
The returned iterator points to the first entity of the view. If the view is empty, the returned iterator will be equal to end() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the view.
-Definition at line 430 of file view.hpp .
-
-
-
-
-◆ chunked()
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Component>
-
-template<typename Func >
-
-
-
-
Chunked iteration for entities and components.
-
Chunked iteration tries to spot chunks in the sets of entities and components and return them one at a time along with their sizes.
- This type of iteration is intended where it's known a priori that the creation of entities and components takes place in chunk, which is actually quite common. In this case, various optimizations can be applied downstream to obtain even better performances from the views.
-
The signature of the function must be equivalent to the following:
-
The arguments are as follows:
-
-A pointer to the entities belonging to the chunk.
-Pointers to the components associated with the returned entities.
-The length of the chunk.
-
-
Note that the callback can be invoked 0 or more times and no guarantee is given on the order of the elements.
-
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
-
Template Parameters
-
- Func Type of the function object to invoke.
-
-
-
-
Parameters
-
- func A valid function object.
-
-
-
-
-
Definition at line 681 of file view.hpp .
+
Definition at line 332 of file view.hpp .
@@ -363,25 +340,23 @@ template<typename Entity , typename... Exclude, typename... Component>
Returns True if the view contains the given entity, false otherwise.
-Definition at line 522 of file view.hpp .
+Definition at line 420 of file view.hpp .
-
-◆ data()
+
+◆ each() [1/4]
template<typename Entity , typename... Exclude, typename... Component>
-
-template<typename Comp >
-
Direct access to the list of entities of a given pool.
-
The returned pointer is such that range [data<Comp>(), data<Comp>() + size<Comp>()] is always a valid range, even if the container is empty.
-
Note Entities are in the reverse order as returned by the begin/end iterators.
+
Returns an iterable object to use to visit the view.
+
The iterable object returns tuples that contain the current entity and a set of references to its non-empty components. The constness of the components is as requested.
+
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
+
Returns An iterable object to use to visit the view.
+
+
Definition at line 513 of file view.hpp .
+
+
+
+
+◆ each() [2/4]
+
+
+
+
+template<typename Entity , typename... Exclude, typename... Component>
+
+template<typename Comp >
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterable object to use to visit the view.
+
The pool of the suggested component is used to lead the iterations. The returned elements will therefore respect the order of the pool associated with that type.
+ It is no longer guaranteed that the performance is the best possible, but there will be greater control over the order of iteration.
+
See also each
Template Parameters
- Comp Type of component in which one is interested.
+ Comp Type of component to use to drive the iteration.
-
Returns A pointer to the array of entities.
+
Returns An iterable object to use to visit the view.
-
Definition at line 414 of file view.hpp .
+
Definition at line 532 of file view.hpp .
-◆ each() [1/2]
+◆ each() [3/4]
@@ -456,12 +468,12 @@ template<typename Func >
-
Definition at line 581 of file view.hpp .
+
Definition at line 474 of file view.hpp .
-◆ each() [2/2]
+◆ each() [4/4]
@@ -494,7 +506,7 @@ template<typename Comp , typename Func >
See also each
Template Parameters
- Comp Type of component to use to enforce the iteration order.
+ Comp Type of component to use to drive the iteration.
Func Type of the function object to invoke.
@@ -506,48 +518,7 @@ template<typename Comp , typename Func >
-Definition at line 603 of file view.hpp .
-
-
-
-
-◆ empty()
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Component>
-
-template<typename... Comp>
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Checks whether a view or some pools are empty.
-
The view is definitely empty if one of the pools it uses is empty. In all other cases, the view may be empty and not return entities even if this function returns false.
-
Template Parameters
-
- Comp Types of components in which one is interested.
-
-
-
-
Returns True if the view or the pools are empty, false otherwise.
-
-
Definition at line 372 of file view.hpp .
+
Definition at line 495 of file view.hpp .
@@ -563,7 +534,7 @@ template<typename Entity , typename... Exclude, typename... Component>
- iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::end
+ iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::end
(
)
const
@@ -578,10 +549,9 @@ template<typename Entity , typename... Exclude, typename... Component> Returns an iterator that is past the last entity of the view.
The returned iterator points to the entity following the last entity of the view. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the view.
-Definition at line 447 of file view.hpp .
+Definition at line 345 of file view.hpp .
@@ -597,7 +567,7 @@ template<typename Entity , typename... Exclude, typename... Component>
- iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::find
+ iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::find
(
const entity_type
entt )
@@ -620,7 +590,7 @@ template<typename Entity , typename... Exclude, typename... Component>
Returns An iterator to the given entity if it's found, past the end iterator otherwise.
-Definition at line 512 of file view.hpp .
+Definition at line 402 of file view.hpp .
@@ -652,7 +622,7 @@ template<typename Entity , typename... Exclude, typename... Component> Returns the first entity of the view, if any.
Returns The first entity of the view if one exists, the null entity otherwise.
-Definition at line 491 of file view.hpp .
+Definition at line 381 of file view.hpp .
@@ -686,8 +656,7 @@ template<typename... Comp>
Returns the components assigned to the given entity.
Prefer this function instead of registry::get during iterations. It has far better performance than its counterpart.
-Warning Attempting to use an invalid component type results in a compilation error. Attempting to use an entity that doesn't belong to the view results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the view doesn't contain the given entity.
+Warning Attempting to use an invalid component type results in a compilation error. Attempting to use an entity that doesn't belong to the view results in undefined behavior.
Template Parameters
Comp Types of components to get.
@@ -702,12 +671,12 @@ template<typename... Comp>
Returns The components assigned to the entity.
-Definition at line 545 of file view.hpp .
+Definition at line 440 of file view.hpp .
-
-◆ proxy() [1/2]
+
+◆ operator bool()
@@ -718,7 +687,7 @@ template<typename Entity , typename... Exclude, typename... Component>
- auto entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::proxy
+ entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::operator bool
(
)
const
@@ -726,102 +695,15 @@ template<typename Entity , typename... Exclude, typename... Component>
-inline noexcept
+inline explicit noexcept
-
Returns an iterable object to use to visit the view.
-
The iterable object returns tuples that contain the current entity and a set of references to its non-empty components. The constness of the components is as requested.
-
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
-
Returns An iterable object to use to visit the view.
+
Checks if a view is properly initialized.
+
Returns True if the view is properly initialized, false otherwise.
-
Definition at line 621 of file view.hpp .
-
-
-
-
-◆ proxy() [2/2]
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Component>
-
-template<typename Comp >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Returns an iterable object to use to visit the view.
-
The pool of the suggested component is used to lead the iterations. The returned elements will therefore respect the order of the pool associated with that type.
- It is no longer guaranteed that the performance is the best possible, but there will be greater control over the order of iteration.
-
See also each
-
Template Parameters
-
- Comp Type of component to use to enforce the iteration order.
-
-
-
-
Returns An iterable object to use to visit the view.
-
-
Definition at line 641 of file view.hpp .
-
-
-
-
-◆ raw()
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Component>
-
-template<typename Comp >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Direct access to the list of components of a given pool.
-
The returned pointer is such that range [raw<Comp>(), raw<Comp>() + size<Comp>()] is always a valid range, even if the container is empty.
-
Note Components are in the reverse order as returned by the begin/end iterators.
-
Template Parameters
-
- Comp Type of component in which one is interested.
-
-
-
-
Returns A pointer to the array of components.
-
-
Definition at line 395 of file view.hpp .
+
Definition at line 411 of file view.hpp .
@@ -837,7 +719,7 @@ template<typename Entity , typename... Exclude, typename... Component>
- reverse_iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::rbegin
+ reverse_iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::rbegin
(
)
const
@@ -852,10 +734,9 @@ template<typename Entity , typename... Exclude, typename... Component> Returns an iterator to the first entity of the reversed view.
The returned iterator points to the first entity of the reversed view. If the view is empty, the returned iterator will be equal to rend() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the reversed view.
-Definition at line 463 of file view.hpp .
+Definition at line 357 of file view.hpp .
@@ -871,7 +752,7 @@ template<typename Entity , typename... Exclude, typename... Component>
- reverse_iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::rend
+ reverse_iterator entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::rend
(
)
const
@@ -886,56 +767,14 @@ template<typename Entity , typename... Exclude, typename... Component> Returns an iterator that is past the last entity of the reversed view.
The returned iterator points to the entity following the last entity of the reversed view. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the reversed view.
-Definition at line 482 of file view.hpp .
+Definition at line 372 of file view.hpp .
-
-◆ size() [1/2]
-
-
-
-
-template<typename Entity , typename... Exclude, typename... Component>
-
-template<typename Comp >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Returns the number of existing components of the given type.
-
This isn't the number of entities iterated by the view.
-
Template Parameters
-
- Comp Type of component of which to return the size.
-
-
-
-
Returns Number of existing components of the given type.
-
-
Definition at line 349 of file view.hpp .
-
-
-
-
-◆ size() [2/2]
+
+◆ size_hint()
@@ -946,7 +785,7 @@ template<typename Entity , typename... Exclude, typename... Component>
- size_type entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::size
+ size_type entt::basic_view < Entity, exclude_t < Exclude... >, Component... >::size_hint
(
)
const
@@ -962,7 +801,46 @@ template<typename Entity , typename... Exclude, typename... Component> Estimates the number of entities iterated by the view.
Returns Estimated number of entities iterated by the view.
-Definition at line 357 of file view.hpp .
+Definition at line 320 of file view.hpp .
+
+
+
+
+◆ use()
+
+
+
+
+template<typename Entity , typename... Exclude, typename... Component>
+
+template<typename Comp >
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Forces the type to use to drive iterations.
+
Template Parameters
+
+ Comp Type of component to use to drive the iteration.
+
+
+
+
+
Definition at line 312 of file view.hpp .
@@ -970,8 +848,7 @@ template<typename Entity , typename... Exclude, typename... Component> src/entt/entity/view.hpp
-std::size_t size_type
Unsigned integer type.
-Entity entity_type
Underlying entity identifier.
+Entity entity_type
Underlying entity identifier.
Unsigned integer type.
-
-using iterator = typename sparse_set < Entity >::iterator
- Random access iterator type.
-
-
-using reverse_iterator = typename sparse_set < Entity >::reverse_iterator
- Reversed iterator type.
-
+
+using iterator = typename basic_sparse_set < Entity >::iterator
+ Random access iterator type.
+
+
+using reverse_iterator = typename basic_sparse_set < Entity >::reverse_iterator
+ Reversed iterator type.
+
-
-
-class basic_registry< Entity >
- A registry is allowed to create views.
-
+iterable_view each () const noexcept
+ Returns an iterable object to use to visit the view. More...
+
template<typename Entity, typename Component>
@@ -189,8 +191,47 @@ class entt::basic_view< Entity, exclude_t<>, Component >
-
Definition at line 726 of file view.hpp .
-
+
Definition at line 576 of file view.hpp .
+
+
+
◆ basic_view()
+
+
+
+
+template<typename Entity , typename Component >
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Constructs a single-type view from a storage class.
+
Parameters
+
+ ref The storage for the type to iterate.
+
+
+
+
+
Definition at line 684 of file view.hpp .
+
+
+
+
◆ back()
@@ -219,7 +260,7 @@ template<typename Entity , typename Component >
Returns the last entity of the view, if any.
Returns The last entity of the view if one exists, the null entity otherwise.
-Definition at line 954 of file view.hpp .
+Definition at line 795 of file view.hpp .
@@ -235,7 +276,7 @@ template<typename Entity , typename Component >
- iterator entt::basic_view < Entity, exclude_t <>, Component >::begin
+ iterator entt::basic_view < Entity, exclude_t <>, Component >::begin
(
)
const
@@ -250,10 +291,9 @@ template<typename Entity , typename Component >
Returns an iterator to the first entity of the view.
The returned iterator points to the first entity of the view. If the view is empty, the returned iterator will be equal to end() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the view.
-Definition at line 883 of file view.hpp .
+Definition at line 736 of file view.hpp .
@@ -292,7 +332,7 @@ template<typename Entity , typename Component >
Returns True if the view contains the given entity, false otherwise.
-Definition at line 984 of file view.hpp .
+Definition at line 833 of file view.hpp .
@@ -322,16 +362,49 @@ template<typename Entity , typename Component >
Direct access to the list of entities.
-
The returned pointer is such that range [data() , data() + size() ] is always a valid range, even if the container is empty.
-
Note Entities are in the reverse order as returned by the begin/end iterators.
+
The returned pointer is such that range [data() , data() + size() ) is always a valid range, even if the container is empty.
Returns A pointer to the array of entities.
-
Definition at line 867 of file view.hpp .
+
Definition at line 724 of file view.hpp .
+
+
+
+
+◆ each() [1/2]
+
+
+
+
+template<typename Entity , typename Component >
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an iterable object to use to visit the view.
+
The iterable object returns tuples that contain the current entity and a reference to its component if it's a non-empty one. The constness of the component is as requested.
+
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
+
Returns An iterable object to use to visit the view.
+
+
Definition at line 930 of file view.hpp .
-◆ each()
+◆ each() [2/2]
@@ -377,7 +450,7 @@ template<typename Func >
-
Definition at line 1033 of file view.hpp .
+
Definition at line 891 of file view.hpp .
@@ -409,7 +482,7 @@ template<typename Entity , typename Component >
Checks whether a view is empty.
Returns True if the view is empty, false otherwise.
-Definition at line 835 of file view.hpp .
+Definition at line 700 of file view.hpp .
@@ -425,7 +498,7 @@ template<typename Entity , typename Component >
- iterator entt::basic_view < Entity, exclude_t <>, Component >::end
+ iterator entt::basic_view < Entity, exclude_t <>, Component >::end
(
)
const
@@ -440,10 +513,9 @@ template<typename Entity , typename Component >
Returns an iterator that is past the last entity of the view.
The returned iterator points to the entity following the last entity of the view. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the view.
-Definition at line 900 of file view.hpp .
+Definition at line 749 of file view.hpp .
@@ -459,7 +531,7 @@ template<typename Entity , typename Component >
- iterator entt::basic_view < Entity, exclude_t <>, Component >::find
+ iterator entt::basic_view < Entity, exclude_t <>, Component >::find
(
const entity_type
entt )
@@ -482,7 +554,7 @@ template<typename Entity , typename Component >
Returns An iterator to the given entity if it's found, past the end iterator otherwise.
-Definition at line 965 of file view.hpp .
+Definition at line 806 of file view.hpp .
@@ -514,7 +586,7 @@ template<typename Entity , typename Component >
Returns the first entity of the view, if any.
Returns The first entity of the view if one exists, the null entity otherwise.
-Definition at line 944 of file view.hpp .
+Definition at line 785 of file view.hpp .
@@ -526,7 +598,7 @@ template<typename Entity , typename Component >
template<typename Entity , typename Component >
-template<typename Comp = Component>
+template<typename... Comp>
@@ -548,8 +620,13 @@ template<typename Comp = Component>
Returns the component assigned to the given entity.
Prefer this function instead of registry::get during iterations. It has far better performance than its counterpart.
-Warning Attempting to use an entity that doesn't belong to the view results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the view doesn't contain the given entity.
+Warning Attempting to use an invalid component type results in a compilation error. Attempting to use an entity that doesn't belong to the view results in undefined behavior.
+Template Parameters
+
+ Comp Types of components to get.
+
+
+
Parameters
entt A valid entity identifier.
@@ -558,7 +635,39 @@ template<typename Comp = Component>
Returns The component assigned to the entity.
-Definition at line 1004 of file view.hpp .
+Definition at line 853 of file view.hpp .
+
+
+
+
+◆ operator bool()
+
+
+
+
+template<typename Entity , typename Component >
+
+
+
+
+
+
+inline explicit noexcept
+
+
+
+
+
Checks if a view is properly initialized.
+
Returns True if the view is properly initialized, false otherwise.
+
+
Definition at line 824 of file view.hpp .
@@ -597,41 +706,7 @@ template<typename Entity , typename Component >
Returns The identifier that occupies the given position.
-Definition at line 975 of file view.hpp .
-
-
-
-
-◆ proxy()
-
-
-
-
-template<typename Entity , typename Component >
-
-
-
-
-
-
-inline noexcept
-
-
-
-
-
Returns an iterable object to use to visit the view.
-
The iterable object returns tuples that contain the current entity and a reference to its component if it's a non-empty one. The constness of the component is as requested.
-
Note Empty types aren't explicitly instantiated and therefore they are never returned during iterations.
-
Returns An iterable object to use to visit the view.
-
-
Definition at line 1072 of file view.hpp .
+
Definition at line 816 of file view.hpp .
@@ -661,11 +736,10 @@ template<typename Entity , typename Component >
Direct access to the list of components.
-
The returned pointer is such that range [raw() , raw() + size() ] is always a valid range, even if the container is empty.
-
Note Components are in the reverse order as returned by the begin/end iterators.
+
The returned pointer is such that range [raw() , raw() + size() ) is always a valid range, even if the container is empty.
Returns A pointer to the array of components.
-
Definition at line 851 of file view.hpp .
+
Definition at line 712 of file view.hpp .
@@ -681,7 +755,7 @@ template<typename Entity , typename Component >
- reverse_iterator entt::basic_view < Entity, exclude_t <>, Component >::rbegin
+ reverse_iterator entt::basic_view < Entity, exclude_t <>, Component >::rbegin
(
)
const
@@ -696,10 +770,9 @@ template<typename Entity , typename Component >
Returns an iterator to the first entity of the reversed view.
The returned iterator points to the first entity of the reversed view. If the view is empty, the returned iterator will be equal to rend() .
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the first entity of the reversed view.
-Definition at line 916 of file view.hpp .
+Definition at line 761 of file view.hpp .
@@ -715,7 +788,7 @@ template<typename Entity , typename Component >
- reverse_iterator entt::basic_view < Entity, exclude_t <>, Component >::rend
+ reverse_iterator entt::basic_view < Entity, exclude_t <>, Component >::rend
(
)
const
@@ -730,10 +803,9 @@ template<typename Entity , typename Component >
Returns an iterator that is past the last entity of the reversed view.
The returned iterator points to the entity following the last entity of the reversed view. Attempting to dereference the returned iterator results in undefined behavior.
-Note Iterators stay true to the order imposed to the underlying data structures.
Returns An iterator to the entity following the last entity of the reversed view.
-Definition at line 935 of file view.hpp .
+Definition at line 776 of file view.hpp .
@@ -765,7 +837,7 @@ template<typename Entity , typename Component >
Returns the number of entities that have the given component.
Returns Number of entities that have the given component.
-Definition at line 827 of file view.hpp .
+Definition at line 692 of file view.hpp .
@@ -773,7 +845,7 @@ template<typename Entity , typename Component >
src/entt/entity/view.hpp
-Entity entity_type
Underlying entity identifier.
+Entity entity_type
Underlying entity identifier.
diff --git a/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4-members.html b/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4-members.html
index e6a91658e..7ce3f4fc1 100644
--- a/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4-members.html
+++ b/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4.html b/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4.html
index 37c1a677b..d67b48640 100644
--- a/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4.html
+++ b/classentt_1_1delegate_3_01Ret_07Args_8_8_8_08_4.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -158,7 +158,7 @@ class entt::delegate< Ret(Args...)>
-Definition at line 97 of file delegate.hpp .
+Definition at line 98 of file delegate.hpp .
◆ delegate() [1/3]
@@ -196,7 +196,7 @@ template<auto Candidate>
-Definition at line 143 of file delegate.hpp .
+Definition at line 144 of file delegate.hpp .
@@ -253,7 +253,7 @@ template<auto Candidate, typename Type >
-Definition at line 155 of file delegate.hpp .
+Definition at line 156 of file delegate.hpp .
@@ -302,7 +302,7 @@ template<typename Ret , typename... Args>
-Definition at line 165 of file delegate.hpp .
+Definition at line 166 of file delegate.hpp .
@@ -342,7 +342,7 @@ template<auto Candidate>
-Definition at line 174 of file delegate.hpp .
+Definition at line 175 of file delegate.hpp .
@@ -393,7 +393,7 @@ template<typename Ret , typename... Args>
-Definition at line 254 of file delegate.hpp .
+Definition at line 255 of file delegate.hpp .
@@ -442,7 +442,7 @@ template<auto Candidate, typename Type >
-Definition at line 204 of file delegate.hpp .
+Definition at line 205 of file delegate.hpp .
@@ -490,7 +490,7 @@ template<auto Candidate, typename Type >
-Definition at line 228 of file delegate.hpp .
+Definition at line 229 of file delegate.hpp .
@@ -522,7 +522,7 @@ template<typename Ret , typename... Args>
Returns the instance or the payload linked to a delegate, if any.
Returns An opaque pointer to the underlying data.
-Definition at line 273 of file delegate.hpp .
+Definition at line 274 of file delegate.hpp .
@@ -554,7 +554,7 @@ template<typename Ret , typename... Args>
Checks whether a delegate actually stores a listener.
Returns False if the delegate is empty, true otherwise.
-Definition at line 300 of file delegate.hpp .
+Definition at line 299 of file delegate.hpp .
@@ -586,8 +586,7 @@ template<typename Ret , typename... Args>
Triggers a delegate.
The delegate invokes the underlying function and returns the result.
-Warning Attempting to trigger an invalid delegate results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode if the delegate has not yet been set.
+Warning Attempting to trigger an invalid delegate results in undefined behavior.
Parameters
args Arguments to use to invoke the underlying function.
@@ -596,7 +595,7 @@ template<typename Ret , typename... Args>
Returns The value returned by the underlying function.
-Definition at line 291 of file delegate.hpp .
+Definition at line 290 of file delegate.hpp .
@@ -635,7 +634,7 @@ template<typename Ret , typename... Args>
Returns False if the two contents differ, true otherwise.
-Definition at line 310 of file delegate.hpp .
+Definition at line 309 of file delegate.hpp .
@@ -667,7 +666,7 @@ template<typename Ret , typename... Args>
Resets a delegate.
After a reset, a delegate cannot be invoked anymore.
-Definition at line 264 of file delegate.hpp .
+Definition at line 265 of file delegate.hpp .
diff --git a/classentt_1_1dispatcher-members.html b/classentt_1_1dispatcher-members.html
index 71d242e85..e34f66eba 100644
--- a/classentt_1_1dispatcher-members.html
+++ b/classentt_1_1dispatcher-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1dispatcher.html b/classentt_1_1dispatcher.html
index 2a8bf9631..512d4edad 100644
--- a/classentt_1_1dispatcher.html
+++ b/classentt_1_1dispatcher.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -164,7 +164,7 @@ template<typename... Event>
-Definition at line 229 of file dispatcher.hpp .
+Definition at line 219 of file dispatcher.hpp .
@@ -208,7 +208,7 @@ template<typename Type >
-Definition at line 201 of file dispatcher.hpp .
+Definition at line 191 of file dispatcher.hpp .
@@ -252,7 +252,7 @@ template<typename Type >
-Definition at line 212 of file dispatcher.hpp .
+Definition at line 202 of file dispatcher.hpp .
@@ -298,7 +298,7 @@ template<typename Event , typename... Args>
-Definition at line 176 of file dispatcher.hpp .
+Definition at line 166 of file dispatcher.hpp .
@@ -343,7 +343,7 @@ template<typename Event >
-Definition at line 190 of file dispatcher.hpp .
+Definition at line 180 of file dispatcher.hpp .
@@ -385,7 +385,7 @@ template<typename Event >
Returns A temporary sink object.
-Definition at line 132 of file dispatcher.hpp .
+Definition at line 122 of file dispatcher.hpp .
@@ -431,7 +431,7 @@ template<typename Event , typename... Args>
-Definition at line 147 of file dispatcher.hpp .
+Definition at line 137 of file dispatcher.hpp .
@@ -476,7 +476,7 @@ template<typename Event >
-Definition at line 161 of file dispatcher.hpp .
+Definition at line 151 of file dispatcher.hpp .
@@ -514,7 +514,7 @@ template<typename Event >
-Definition at line 251 of file dispatcher.hpp .
+Definition at line 241 of file dispatcher.hpp .
@@ -544,7 +544,7 @@ template<typename Event >
Delivers all the pending events.
This method is blocking and it doesn't return until all the events are delivered to the registered listeners. It's responsibility of the users to reduce at a minimum the time spent in the bodies of the listeners.
-Definition at line 262 of file dispatcher.hpp .
+Definition at line 252 of file dispatcher.hpp .
diff --git a/classentt_1_1emitter-members.html b/classentt_1_1emitter-members.html
index b22d67007..1f5cb3289 100644
--- a/classentt_1_1emitter-members.html
+++ b/classentt_1_1emitter-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1emitter.html b/classentt_1_1emitter.html
index 80974028f..7cf74d81f 100644
--- a/classentt_1_1emitter.html
+++ b/classentt_1_1emitter.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -199,7 +199,7 @@ template<typename Event >
-Definition at line 289 of file emitter.hpp .
+Definition at line 280 of file emitter.hpp .
@@ -231,7 +231,7 @@ template<typename Derived >
Disconnects all the listeners.
All the connections previously returned are invalidated. Using them results in undefined behavior.
-Definition at line 299 of file emitter.hpp .
+Definition at line 290 of file emitter.hpp .
@@ -271,7 +271,7 @@ template<typename Event >
Returns True if there are no listeners registered, false otherwise.
-Definition at line 313 of file emitter.hpp .
+Definition at line 304 of file emitter.hpp .
@@ -303,7 +303,7 @@ template<typename Derived >
Checks if there are listeners registered with the event emitter.
Returns True if there are no listeners registered, false otherwise.
-Definition at line 321 of file emitter.hpp .
+Definition at line 313 of file emitter.hpp .
@@ -350,7 +350,7 @@ template<typename Event >
-Definition at line 276 of file emitter.hpp .
+Definition at line 267 of file emitter.hpp .
@@ -401,7 +401,7 @@ template<typename Event >
Returns Connection object that can be used to disconnect the listener.
-Definition at line 237 of file emitter.hpp .
+Definition at line 228 of file emitter.hpp .
@@ -452,7 +452,7 @@ template<typename Event >
Returns Connection object that can be used to disconnect the listener.
-Definition at line 262 of file emitter.hpp .
+Definition at line 253 of file emitter.hpp .
@@ -531,7 +531,7 @@ template<typename Event , typename... Args>
-Definition at line 211 of file emitter.hpp .
+Definition at line 202 of file emitter.hpp .
diff --git a/classentt_1_1family-members.html b/classentt_1_1family-members.html
index 142e5d090..67763587c 100644
--- a/classentt_1_1family-members.html
+++ b/classentt_1_1family-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1family.html b/classentt_1_1family.html
index 8481e8429..a708b6bfd 100644
--- a/classentt_1_1family.html
+++ b/classentt_1_1family.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1identifier-members.html b/classentt_1_1identifier-members.html
index fbf473ef7..723074e65 100644
--- a/classentt_1_1identifier-members.html
+++ b/classentt_1_1identifier-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1identifier.html b/classentt_1_1identifier.html
index 964513a90..0d910c517 100644
--- a/classentt_1_1identifier.html
+++ b/classentt_1_1identifier.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1member__class-members.html b/classentt_1_1member__class-members.html
index da23675b0..a76861277 100644
--- a/classentt_1_1member__class-members.html
+++ b/classentt_1_1member__class-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
diff --git a/classentt_1_1member__class.html b/classentt_1_1member__class.html
index d687740ac..bf9654771 100644
--- a/classentt_1_1member__class.html
+++ b/classentt_1_1member__class.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -98,7 +98,7 @@ class entt::member_class< Member >
-Definition at line 233 of file type_traits.hpp .
+Definition at line 557 of file type_traits.hpp .
The documentation for this class was generated from the following file:
diff --git a/classentt_1_1meta__any-members.html b/classentt_1_1meta__any-members.html
index fabe0a88b..fb8cf68e2 100644
--- a/classentt_1_1meta__any-members.html
+++ b/classentt_1_1meta__any-members.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -73,29 +73,35 @@ $(function() {
This is the complete list of members for entt::meta_any , including all inherited members.
+ allow_cast () constentt::meta_any inline
+ allow_cast ()entt::meta_any inline
as_associative_container () noexceptentt::meta_any inline
- as_sequence_container () noexceptentt::meta_any inline
- cast () constentt::meta_any inline
- cast ()entt::meta_any inline
- convert () constentt::meta_any inline
- convert ()entt::meta_any inline
+ as_associative_container () const noexceptentt::meta_any inline
+ as_ref (meta_any &other) noexceptentt::meta_any friend
+ as_ref (const meta_any &other) noexceptentt::meta_any friend
+ as_sequence_container () noexceptentt::meta_any inline
+ as_sequence_container () const noexceptentt::meta_any inline
+ cast () constentt::meta_any inline
+ cast ()entt::meta_any inline
data () const noexceptentt::meta_any inline
data () noexceptentt::meta_any inline
emplace (Args &&... args)entt::meta_any inline
get (const id_type id) constentt::meta_any inline
- invoke (const id_type id, Args &&... args) constentt::meta_any
+ get (const id_type id)entt::meta_any inline
+ invoke (const id_type id, Args &&... args) constentt::meta_any
+ invoke (const id_type id, Args &&... args)entt::meta_any
meta_any () noexceptentt::meta_any inline
- meta_any (std::in_place_type_t< Type >, [[maybe_unused]] Args &&... args)entt::meta_any inline explicit
+ meta_any (std::in_place_type_t< Type >, Args &&... args)entt::meta_any inline explicit
meta_any (std::reference_wrapper< Type > value)entt::meta_any inline
meta_any (Type &&value)entt::meta_any inline
meta_any (const meta_any &other)=defaultentt::meta_any
- meta_any (meta_any &&other)entt::meta_any inline
+ meta_any (meta_any &&other) noexceptentt::meta_any inline
operator bool () const noexceptentt::meta_any inline explicit
operator* () noexceptentt::meta_any inline
- operator= (meta_any other)entt::meta_any inline
- operator== (const meta_any &other) constentt::meta_any inline
- ref () const noexceptentt::meta_any inline
- set (const id_type id, Type &&value) constentt::meta_any
+ operator* () const noexceptentt::meta_any inline
+ operator= (meta_any other)entt::meta_any inline
+ operator== (const meta_any &other) constentt::meta_any inline
+ set (const id_type id, Type &&value)entt::meta_any
swap (meta_any &lhs, meta_any &rhs)entt::meta_any friend
try_cast () constentt::meta_any inline
try_cast ()entt::meta_any inline
diff --git a/classentt_1_1meta__any.html b/classentt_1_1meta__any.html
index 822abb72e..94bf54f53 100644
--- a/classentt_1_1meta__any.html
+++ b/classentt_1_1meta__any.html
@@ -22,7 +22,7 @@
EnTT
- 3.5.2
+ 3.6.0
@@ -86,10 +86,10 @@ Public Member Functions
meta_any () noexcept
Default constructor.
-template<typename Type , typename... Args>
- meta_any (std::in_place_type_t< Type >, [[maybe_unused]] Args &&... args)
- Constructs a meta any by directly initializing the new object. More...
-
+template<typename Type , typename... Args>
+ meta_any (std::in_place_type_t< Type >, Args &&... args)
+ Constructs a meta any by directly initializing the new object. More...
+
template<typename Type >
meta_any (std::reference_wrapper< Type > value)
Constructs a meta any that holds an unmanaged object. More...
@@ -101,9 +101,9 @@ Public Member Functions
meta_any (const meta_any &other)=default
Copy constructor. More...
- meta_any (meta_any &&other)
- Move constructor. More...
-
+ meta_any (meta_any &&other) noexcept
+ Move constructor. More...
+
~meta_any ()
Frees the internal storage, whatever it means.
@@ -124,13 +124,20 @@ Public Member Functions
meta_any invoke (const id_type id, Args &&... args) const
Invokes the underlying function, if possible. More...
-template<typename Type >
-bool set (const id_type id, Type &&value) const
- Sets the value of a given variable. More...
-
+template<typename... Args>
+meta_any invoke (const id_type id, Args &&... args)
+ Invokes the underlying function, if possible. More...
+
+template<typename Type >
+bool set (const id_type id, Type &&value)
+ Sets the value of a given variable. More...
+
meta_any get (const id_type id) const
Gets the value of a given variable. More...
+meta_any get (const id_type id)
+ Gets the value of a given variable. More...
+
template<typename Type >
const Type * try_cast () const
Tries to cast an instance to a given type. More...
@@ -139,40 +146,46 @@ Public Member Functions
Type * try_cast ()
Tries to cast an instance to a given type. More...
-template<typename Type >
-const Type & cast () const
- Tries to cast an instance to a given type. More...
-
-template<typename Type >
-Type & cast ()
- Tries to cast an instance to a given type. More...
-
-template<typename Type >
-meta_any convert () const
- Tries to convert an instance to a given type and returns it. More...
-
-template<typename Type >
-bool convert ()
- Tries to convert an instance to a given type. More...
-
+template<typename Type >
+Type cast () const
+ Tries to cast an instance to a given type. More...
+
+template<typename Type >
+Type cast ()
+ Tries to cast an instance to a given type. More...
+
+template<typename Type >
+meta_any allow_cast () const
+ Tries to make an instance castable to a certain type. More...
+
+template<typename Type >
+bool allow_cast ()
+ Tries to make an instance castable to a certain type. More...
+
template<typename Type , typename... Args>
void emplace (Args &&... args)
Replaces the contained object by creating a new instance directly. More...
-meta_any ref () const noexcept
- Aliasing constructor. More...
-
meta_sequence_container as_sequence_container () noexcept
Returns a sequence container proxy. More...
+meta_sequence_container as_sequence_container () const noexcept
+ Returns a sequence container proxy. More...
+
meta_associative_container as_associative_container () noexcept
Returns an associative container proxy. More...
+meta_associative_container as_associative_container () const noexcept
+ Returns an associative container proxy. More...
+
meta_any operator* () noexcept
Indirection operator for dereferencing opaque objects. More...
+meta_any operator* () const noexcept
+ Indirection operator for dereferencing opaque objects. More...
+
operator bool () const noexcept
- Returns false if a wrapper is empty, true otherwise. More...
+ Returns false if a wrapper is invalid, true otherwise. More...
bool operator== (const meta_any &other) const
Checks if two wrappers differ in their content. More...
@@ -183,15 +196,20 @@ Friends
void swap (meta_any &lhs, meta_any &rhs)
Swaps two meta any objects. More...
+meta_any as_ref (meta_any &other) noexcept
+ Aliasing constructor. More...
+
+meta_any as_ref (const meta_any &other) noexcept
+ Aliasing constructor. More...
+
Opaque wrapper for values of any type.
-
This class uses a technique called small buffer optimization (SBO) to get rid of memory allocations if possible. This should improve overall performance.
-
Definition at line 164 of file meta.hpp .
+
Definition at line 158 of file meta.hpp .
-
-◆ meta_any() [1/5]
+
+◆ meta_any() [1/5]
@@ -210,7 +228,7 @@ template<typename Type , typename... Args>
- [[maybe_unused] ] Args &&...
+ Args &&...
args
@@ -241,7 +259,7 @@ template<typename Type , typename... Args>
-Definition at line 219 of file meta.hpp .
+Definition at line 214 of file meta.hpp .
@@ -285,7 +303,7 @@ template<typename Type >
-Definition at line 233 of file meta.hpp .
+Definition at line 226 of file meta.hpp .
@@ -329,7 +347,7 @@ template<typename Type , typename = std::enable_if_t<!std::is_same_v<s
-Definition at line 247 of file meta.hpp .
+Definition at line 236 of file meta.hpp .
@@ -367,8 +385,8 @@ template<typename Type , typename = std::enable_if_t<!std::is_same_v<s
-
-◆ meta_any() [5/5]
+
+◆ meta_any() [5/5]
@@ -386,7 +404,7 @@ template<typename Type , typename = std::enable_if_t<!std::is_same_v<s
-inline
+inline noexcept
@@ -399,13 +417,119 @@ template<typename Type , typename = std::enable_if_t<!std::is_same_v<s
-
Definition at line 261 of file meta.hpp .
+
Definition at line 250 of file meta.hpp .
+
+◆ allow_cast() [1/2]
+
+
+
+
+template<typename Type >
+
+
+
+
+
+ bool entt::meta_any::allow_cast
+ (
+ )
+
+
+
+
+
+inline
+
+
+
+
+
Tries to make an instance castable to a certain type.
+
Template Parameters
+
+ Type Type to which the cast is requested.
+
+
+
+
Returns True if there exists a a viable conversion that makes the cast possible, false otherwise.
+
+
Definition at line 421 of file meta.hpp .
+
+
+
+
+◆ allow_cast() [2/2]
+
+
+
+
+template<typename Type >
+
+
+
+
+
+ meta_any entt::meta_any::allow_cast
+ (
+ )
+ const
+
+
+
+
+inline
+
+
+
+
+
Tries to make an instance castable to a certain type.
+
Template Parameters
+
+ Type Type to which the cast is requested.
+
+
+
+
Returns A valid meta any object if there exists a a viable conversion that makes the cast possible, an invalid object otherwise.
+
+
Definition at line 400 of file meta.hpp .
+
+
+
+
+◆ as_associative_container() [1/2]
+
+
+
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns an associative container proxy.
+
Returns An associative container proxy for the underlying object.
+
+
Definition at line 476 of file meta.hpp .
+
+
+
-◆ as_associative_container()
+◆ as_associative_container() [2/2]
@@ -430,12 +554,42 @@ template<typename Type , typename = std::enable_if_t<!std::is_same_v<s
Returns an associative container proxy.
Returns An associative container proxy for the underlying object.
-
Definition at line 463 of file meta.hpp .
+
Definition at line 469 of file meta.hpp .
+
+
+
+
+◆ as_sequence_container() [1/2]
+
+
+
+
+
+
+
+
+
+inline noexcept
+
+
+
+
+
Returns a sequence container proxy.
+
Returns A sequence container proxy for the underlying object.
+
+
Definition at line 459 of file meta.hpp .
-◆ as_sequence_container()
+◆ as_sequence_container() [2/2]
@@ -460,12 +614,12 @@ template<typename Type , typename = std::enable_if_t<!std::is_same_v<s
Returns a sequence container proxy.
Returns A sequence container proxy for the underlying object.
-
Definition at line 455 of file meta.hpp .
+
Definition at line 452 of file meta.hpp .
-
-◆ cast() [1/2]
+
+◆ cast() [1/2]
@@ -476,7 +630,7 @@ template<typename Type >
- Type& entt::meta_any::cast
+ Type entt::meta_any::cast
(
)
@@ -491,8 +645,7 @@ template<typename Type >
Tries to cast an instance to a given type.
The type of the instance must be such that the cast is possible.
-Warning Attempting to perform a cast that isn't viable results in undefined behavior.
- An assertion will abort the execution at runtime in debug mode in case the cast is not feasible.
+Warning Attempting to perform a cast that isn't viable results in undefined behavior.
Template Parameters
Type Type to which to cast the instance.
@@ -501,12 +654,12 @@ template<typename Type >
Returns A reference to the contained instance.
-Definition at line 384 of file meta.hpp .
+Definition at line 386 of file meta.hpp .
-
-◆ cast() [2/2]
+
+◆ cast() [2/2]
@@ -517,7 +670,7 @@ template<typename Type >
- const Type& entt::meta_any::cast
+ Type entt::meta_any::cast
(
)
const
@@ -532,8 +685,7 @@ template<typename Type >
Tries to cast an instance to a given type.
The type of the instance must be such that the cast is possible.
-