Michele Caini
b86ffc2370
view: drop conceptually broken reverse iterators
2021-12-12 01:11:20 +01:00
Michele Caini
672c542f99
group: removed ::data, use ::handle<T>().data() and ::storage<T>().data() instead
2021-12-10 09:30:16 +01:00
Michele Caini
f741fe48a1
group: added ::handle to non-owning groups
2021-12-10 08:25:46 +01:00
Michele Caini
8e6439c3d1
group: removed ::raw, use ::storage().raw() instead
2021-12-09 17:49:18 +01:00
Michele Caini
b54d358feb
view: removed ::data for single type views, use ::storage().data() instead
2021-12-09 09:37:17 +01:00
Michele Caini
78baa7b12d
view: removed ::raw for single type views, use ::storage().raw() instead
2021-12-09 09:21:37 +01:00
Michele Caini
52de43e329
registry: removed ::empty<T>(), use ::view<T>().empty() or ::storage<T>().empty() instead
2021-12-09 08:20:34 +01:00
Michele Caini
49ddacaac0
registry: removed ::size<T>(), use ::view<T>().size() or ::storage<T>().size() instead
2021-12-08 15:17:35 +01:00
Michele Caini
f30ea02794
registry:
...
* removed registry::reserve<Component> (use registry.storage<Component>.reserve(v) instead)
* removed registry::capacity<Component> (use registry.storage<Component>.capacity() instead)
* removed registry::shrink_to_fit<Component> (use registry.storage<Component>.shrink_to_fit() instead)
2021-12-05 16:20:14 +01:00
Michele Caini
36a9456e0d
test: minor changes to make all major compilers agree at least on something :)
2021-12-04 15:32:38 +01:00
Michele Caini
113893dcea
meta: added meta_any::owner
2021-12-04 15:28:52 +01:00
Michele Caini
1abbe9c7b2
test: minor changes (code coverage)
2021-12-04 15:21:49 +01:00
Michele Caini
3335b81ad4
meta:
...
* dtor support to member functions
* review to introduce strict checks on policies
2021-12-03 17:56:09 +01:00
Michele Caini
d9c9438f3c
test: minor changes
2021-12-03 14:39:50 +01:00
Michele Caini
37250843e1
sigh: allocator support
2021-12-02 11:30:54 +01:00
Michele Caini
5ff429f656
view:
...
* added single type view overloads for ::storage to make it compatible with the multi-type view version
* removed the useless tuple from single type views
* updated operator|
2021-11-30 09:46:14 +01:00
Michele Caini
92f27299e1
group: added the ::storage method (with tests)
2021-11-30 09:46:14 +01:00
Michele Caini
f9013375f8
view: added the ::storage method (with tests)
2021-11-30 09:46:14 +01:00
Michele Caini
3fcccae241
component traits:
...
* added page_size to tune the page size on a per-type basis
* turned in_place_delete into a boolean value
* turned ignore_if_empty into a boolean value
* removed in_place_delete_v (no longer required)
2021-11-30 09:45:37 +01:00
Michele Caini
95931b67e1
registry: turn storage_type in a public member type
2021-11-30 09:43:48 +01:00
Michele Caini
a00b44a5fd
example: stamp is back
2021-11-30 09:43:48 +01:00
Michele Caini
5b8dcff2a4
helper: make to_entity also work for stable types ( close #768 )
2021-11-30 09:43:48 +01:00
Michele Caini
e4d36e4982
registry: decouple ::storage/::assure
2021-11-30 09:43:48 +01:00
Michele Caini
adfdbf138d
registry:
...
* public and runtime pools
* removed basic_registry<...>::prepare
2021-11-30 09:43:48 +01:00
Michele Caini
23ddb12529
registry: removed pdata container, pools are standalone objects and thus ready to go public
2021-11-30 09:43:47 +01:00
Michele Caini
dfb5fe1e04
sparse_set/storage: opaque get from base
2021-11-30 09:43:47 +01:00
Michele Caini
46e5d96ced
sparse_set/storage: value type from base, if any
2021-11-30 09:43:47 +01:00
Michele Caini
cd6c60fd46
sparse_set/storage: emplace-from-below with value
2021-11-30 09:43:47 +01:00
Michele Caini
f7be386d5a
sparse_set: rename context to bind
2021-11-30 09:43:47 +01:00
Michele Caini
e5d1ca2e3c
registry:
...
* const thread safe implementation
* views created from const registires can refer placeholder pools (that is, they don't refresh)
2021-11-30 09:43:47 +01:00
Michele Caini
00e7ab1db8
entity: fully remove the poly storage support
2021-11-30 09:43:47 +01:00
Michele Caini
e376a53b09
entity:
...
* custom move ctor/op for the registry class
* no registry argument from storage emplace, remove, ...
* added sparse set context to forward variables to mixins
* removed sparse set user data
2021-11-30 09:43:47 +01:00
Michele Caini
b147f9d58c
registry: make it run smoothly across boundaries ( close #719 , close #729 )
2021-11-30 09:43:47 +01:00
Michele Caini
8e2a6470ac
emitter: make it run smoothly across boundaries
2021-11-30 09:43:47 +01:00
Michele Caini
19230f7672
dispatcher: make it run smoothly across boundaries
2021-11-30 09:43:47 +01:00
Michele Caini
0ec7631310
view: make all unoptimized single type views check for tombstones
2021-11-30 08:58:51 +01:00
Michele Caini
0b39ece990
meta: fix an issue with meta_factory<T>::prop when using tuple of properties
2021-11-18 15:44:12 +01:00
Michele Caini
97500dff57
meta: fixed an issue with meta_factory::conv when used with member functions + code coverage
2021-11-18 14:53:17 +01:00
Michele Caini
0302fdaaba
build system: update gtest upstream branch name
2021-11-16 09:33:32 +01:00
Michele Caini
25977cc569
test: use deduction guides :)
2021-11-05 14:17:33 +01:00
Michele Caini
0be7064493
view:
...
* support for multiple components of the same type
* removed view.each<T>(F), use view.use<T>().each(F) instead
* removed view.each<T>(), use view.use<T>().each() instead
* added use<integral value>() to set leading pool by index
* added get<integral value...>() to get components by index
2021-11-05 11:02:15 +01:00
Michele Caini
a069764af1
type traits:
...
* unpack_as_t -> unpack_as_type
* unpack_as_v -> unpack_as_value
2021-11-04 14:17:21 +01:00
Michele Caini
9f0b380024
container:
...
* review dense_hash_map_iterator::operator[]
* review dense_hash_set_iterator::operator[]
* code coverage
2021-11-02 09:29:10 +01:00
Michele Caini
193b102013
entity:
...
* review sparse_set_iterator::operator[]
* review storage_iterator::operator[]
* code coverage
2021-11-02 09:19:57 +01:00
Michele Caini
16e3cfc589
container: added dense_hash_set
2021-10-30 13:45:02 +02:00
Michele Caini
ed2012a36c
dense_hash_map: minor changes + test coverage
2021-10-30 13:44:00 +02:00
Michele Caini
4e72291588
meta: define meta_associative_container_traits for dense_hash_map
2021-10-28 08:22:20 +02:00
Michele Caini
b63c9fc67b
dense_hash_map: always guarantee that load factor is less than max load factor
2021-10-26 11:04:19 +02:00
Michele Caini
f519b55a47
natvis: compressed_pair
2021-10-26 11:04:19 +02:00
Michele Caini
b13713ce98
meta: support transparently base members when attached to meta types for derived classes
2021-10-26 11:03:29 +02:00