Michele Caini
0b19c9be0b
storage: add override specifier
2021-06-29 15:10:41 +02:00
Michele Caini
ac655902a0
storage:
...
* internal review for memory management
* added support for nosy destructors to ::in_place_pop
* optimized ::emplace/::insert
2021-06-29 15:05:03 +02:00
Michele Caini
e4fb293b55
sparse_set: added ::emplace_back
2021-06-29 12:37:39 +02:00
Michele Caini
d3df64ef4b
sparse_set: emplace returns the slot used for insertion
2021-06-28 18:51:28 +02:00
Michele Caini
93e3d14f34
sparse_set: added ::slot to return the next slot available for insertion
2021-06-28 18:46:02 +02:00
Michele Caini
bc687d412d
test: suppress some warnings due to [[nodiscard]]
2021-06-28 18:02:43 +02:00
Michele Caini
71e85b44b0
sparse_set: make ::policy [[nodiscard]]
2021-06-28 18:00:40 +02:00
Michele Caini
d4b59aff97
sparse_set: tombstone/null debug check in ::contains
2021-06-28 16:51:24 +02:00
Michele Caini
e3c21e1f3d
sparse_set/storage ( close #707 ):
...
* improved perf on erase/remove (and therefore also registry::destroy)
* allow to inhibit a pop from derived classes
* removed about_to_pop (virtual) function
2021-06-28 15:53:59 +02:00
Michele Caini
e012250e0a
type_traits: minor changes
2021-06-28 11:43:27 +02:00
Michele Caini
c6bf82664c
doc: added a note about optimized range-destroy
2021-06-28 11:20:40 +02:00
Michele Caini
c61e98009f
registry/benchmark: rollback optimized remove/erase (benchmarks have shown that they are not worth it)
2021-06-28 10:19:27 +02:00
Michele Caini
44bccaaad6
basic_registry:
...
* added fast path to destroy
* added fast path to remove
* added fast path to erase
* minor changes
2021-06-28 09:24:12 +02:00
Michele Caini
aebca14dea
view: added member type iterator_type to internal class view_iterator
2021-06-28 09:10:52 +02:00
Michele Caini
4576f27f6e
sparse_set: minor changes
2021-06-28 09:10:12 +02:00
Michele Caini
0c213fca40
type_traits:
...
* added entt::is_iterator[_v]
* added entt::is_iterator_type[_v]
2021-06-28 09:09:55 +02:00
Michele Caini
891f596191
view: minor changes
2021-06-25 17:26:22 +02:00
Michele Caini
eb2b724902
benchmark: tombstone policy runs
2021-06-24 14:04:35 +02:00
Michele Caini
1f8c896181
registry:
...
* deprecated ::destroyed (use ::released instead)
* added ::release overloads (aka force-destroy)
2021-06-24 10:51:03 +02:00
Michele Caini
12b39e1fbe
doc: added missing tokens
2021-06-23 16:35:00 +02:00
Michele Caini
206d31f27a
registry: const ::view/::group also support non-const types ( close #715 )
2021-06-23 15:37:46 +02:00
Michele Caini
6709331182
resource_handle: conversion functions ( close #706 )
2021-06-22 18:54:27 +02:00
Michele Caini
9460e04ea5
entt_traits: review/cleanup
2021-06-22 15:39:15 +02:00
Michele Caini
462bfea733
entt_traits: review to reduce the risk of ambiguous calls
2021-06-22 13:03:32 +02:00
Michele Caini
a2d61dfaeb
runtime_view: suppress warning for shadow parameter
2021-06-22 09:58:19 +02:00
Michele Caini
538425e35c
doc: in-place delete and pointer stability
2021-06-22 09:53:56 +02:00
Michele Caini
2e86c1f1a2
component: add basic_component_traits aside component_traits
2021-06-22 09:52:43 +02:00
Michele Caini
8aa4d46ce0
runtime_view: support for storage policy (tombstones)
2021-06-21 15:18:13 +02:00
Michele Caini
cdf67a1421
sparse_set: public ::policy method for opaque runtime detection
2021-06-21 14:44:09 +02:00
Michele Caini
93d905d93d
updated TODO
2021-06-21 13:04:46 +02:00
Michele Caini
2c35203647
view:
...
* split view iterator from multi-type view
* stable/packed storage policy support
2021-06-21 13:04:37 +02:00
Michele Caini
216871fe56
runtime_view: minor changes
2021-06-21 12:59:44 +02:00
Michele Caini
03511f39b1
registry:
...
* prevent groups from being used with tombstones
* support to compact one, several or all pools
2021-06-21 12:59:26 +02:00
Michele Caini
5ad0832b22
group: minor changes
2021-06-21 12:57:35 +02:00
Michele Caini
d49e7ba4b2
sparse_set/storage:
...
* added component traits (component.hpp)
* support for in-place delete (tombstones)
2021-06-21 12:56:33 +02:00
Michele Caini
a621b36389
type_traits: removed internal is_empty[_v]
2021-06-21 12:44:50 +02:00
Michele Caini
d093df02ac
test: minor changes
2021-06-21 12:39:18 +02:00
Michele Caini
2e1529e78d
entity:
...
* Updated doc
* No const-ref for basic types
2021-06-21 12:32:30 +02:00
Michele Caini
90be1db402
entity:
...
* extended entt_traits<T>::to_type support
* added null_t::operator|
* added tombstone_t::operator|
2021-06-04 11:01:26 +02:00
Michele Caini
29265e4181
doc: updated doxy.in file
2021-06-03 10:44:13 +02:00
Michele Caini
2689a7ef13
registry: minor changes
2021-06-03 09:06:38 +02:00
Michele Caini
88b58cf23d
doc: added a note about tombstones
2021-06-03 09:06:36 +02:00
Michele Caini
e2e433480b
entity/registry:
...
* added entt_traits<T>::reserved()
* added tombstone_t type and tombstone constant
* create-with-hint also accepts null entities (discarded)
* registry skips over tombstone versions and rejects them
2021-06-03 09:06:34 +02:00
Michele Caini
b8bc3e4e94
test: exception safety for sparse set and storage
2021-06-03 08:44:48 +02:00
Michele Caini
c28f52b816
sparse_set/storage: exception safety (kind of)
2021-06-03 08:44:43 +02:00
Michele Caini
ca34309f75
config: removed ENTT_NOEXCEPT, added ENTT_NOEXCEPTION
2021-06-03 08:44:30 +02:00
Michele Caini
ea614a0f3f
entity: review of entt_traits<T>::to_type
2021-05-28 08:59:50 +02:00
Michele Caini
3e7dc7af29
entity:
...
* review of entt_traits design
* added static constexpr member function entt_traits::to_integral
* added static constexpr member function entt_traits::to_entity
* added static constexpr member function entt_traits::to_version
* added static constexpr member function entt_traits::to_type
* custom class identifiers must expose member type entity_field
* it's no longer required to specialize entt_traits (breaking change)
2021-05-28 08:59:50 +02:00
Michele Caini
0b3e3fd19a
doc: updated links ( close #709 ) and TODO file
2021-05-28 08:58:36 +02:00
Michele Caini
d3372dc05c
organizer: wrap std::min to trick windows.h ( close #710 )
2021-05-28 08:54:41 +02:00