Michele Caini
2f52bef882
poly: first implementation
2020-12-02 15:49:40 +01:00
Michele Caini
b1369582e1
type_traits: added value_list
2020-12-02 15:49:05 +01:00
Michele Caini
83322664f1
any: doc + more tests
2020-12-02 11:10:04 +01:00
Michele Caini
c95041d7c3
core: standalone any class
2020-12-02 11:10:04 +01:00
Michele Caini
909415d167
organizer: bug fixing/tests (thanks to @Green-Sky)
2020-12-02 11:09:52 +01:00
Michele Caini
337bc6d97a
view_pack: support for multiple views of the same type
2020-12-02 11:09:51 +01:00
Michele Caini
315b1f5913
type traits: added is_complete[_v]
2020-12-02 11:09:51 +01:00
Michele Caini
fc1292b1d1
test: get around the best bug ever of msvc, toolset v141
2020-12-02 11:09:51 +01:00
Michele Caini
0507680cc1
view/group: try to get around an issue of gcc v7.5 + suppress some warnings here and there
2020-12-02 11:09:51 +01:00
Michele Caini
60475d3354
view/group: safe invalid views/groups ( close #470 )
2020-12-02 11:09:51 +01:00
Michele Caini
cd98ecff88
view: default constructible views
2020-12-02 11:09:51 +01:00
Michele Caini
f8ec4027ee
group: default constructible groups
2020-12-02 11:09:51 +01:00
Gnik
085e1ae157
build system: prefix cmake variables with ENTT_. ( #585 )
2020-11-20 16:30:22 +01:00
Michele Caini
90606bd410
hashed_string: literals are now enclosed within entt::literals, ENTT_HS_SUFFIX and ENTT_HWS_SUFFIX no longer exist ( close #590 )
2020-11-20 09:43:28 +01:00
Michele Caini
c386a9d140
runtime_view: removed ::empty, misleading information (breaking change)
2020-11-11 17:03:48 +01:00
Michele Caini
12847593c2
runtime_view: size -> size_hint, misleading name (breaking change)
2020-11-11 17:03:44 +01:00
Michele Caini
4b43d99660
group: removed/reduced scope for ::raw, misleading information (breaking change)
2020-11-11 13:15:44 +01:00
Michele Caini
c1bfc29e7f
group: removed ::data<T>, misleading information (breaking change)
2020-11-11 13:15:42 +01:00
Michele Caini
7e91e27f14
group: removed ::empty<T...>, misleading information (breaking change)
2020-11-11 13:15:39 +01:00
Michele Caini
f8015036a9
group: removed ::size<T>, misleading information (breaking change)
2020-11-11 13:15:37 +01:00
Michele Caini
b7ef1607dc
view: public constructors and deduction guides
2020-11-09 10:31:51 +01:00
Michele Caini
b93a31dd5b
helper: removed Const template parameter, used the same model of the handle class (const/non-const entity)
2020-11-08 23:34:32 +01:00
Michele Caini
58dbaf4a51
type_traits: added constness_as[_t]
2020-11-08 00:36:41 +01:00
Michele Caini
8b895eff7a
*: minor changes to get around some nasty bugs of compilers
2020-11-06 17:29:48 +01:00
Michele Caini
54aa98a752
entity/*: remove the requirement for get_as_tuple from storage classes
2020-11-06 14:49:39 +01:00
Michele Caini
503791d3c0
view: removed chunked iteration, no real benefits so far and there is no way to make it consistent across all views in future
2020-11-05 15:10:23 +01:00
Michele Caini
902dc49de2
storage: added .get_as_tuple(entity)
2020-11-05 14:29:45 +01:00
Michele Caini
2d299f31e5
storage: removed the requirement to expose try_get
2020-11-05 12:55:34 +01:00
Michele Caini
ca97f1c4a3
test: oops, re-enable all bench
2020-11-05 11:10:33 +01:00
Michele Caini
7b501aa89b
sparse_set/storage: virtual sort
2020-11-04 23:52:48 +01:00
Michele Caini
3142e430e7
hashed_string: constexpr ::value suitable for uses with string views
2020-11-04 10:48:40 +01:00
Michele Caini
8cd1ce97f7
handle: it's now possible to convert a handle to a handle view and a handle view to a more restricted one (see #583 )
2020-11-03 00:36:11 +01:00
Michele Caini
22596e0f5b
entity: added handle_view ( close #583 )
2020-11-02 13:05:38 +01:00
Michele Caini
e7031794df
registry: suppress some warnings ( close #582 )
2020-11-01 21:49:09 +01:00
Michele Caini
09da190e93
entity/*: rollback erase -> remove (no longer a breaking change :)
2020-10-28 16:24:44 +01:00
Michele Caini
797dd56bb7
test: removed temporary multi storage example, added a note to the todo list for a refined example
2020-10-28 16:16:52 +01:00
Michele Caini
2820f2658b
entity/: differentiate between remove and erase to avoid name clashing on the custom path (breaking changes)
2020-10-28 12:21:35 +01:00
Michele Caini
2d4b00ec24
registry: added ::destroyed, made ::assign much faster (breaking changes, close #522 )
2020-10-27 23:01:28 +01:00
Michele Caini
82946e2372
pool: storage_adapter -> storage_adapter_mixin
2020-10-27 00:09:32 +01:00
Michele Caini
662cfc9fdc
*: cleanup
2020-10-26 15:41:54 +01:00
Michele Caini
dbbb131424
view_pack: added more functionalities
2020-10-26 12:38:45 +01:00
Michele Caini
fc7ec35242
doc/test: minor changes
2020-10-26 12:29:45 +01:00
Michele Caini
d255889c5c
group: added reverse iterators, rbegin and rend to iterable groups
2020-10-26 08:55:17 +01:00
Michele Caini
7662da22fc
view: added reverse iterators, rbegin and rend to iterable views
2020-10-25 23:19:56 +01:00
Michele Caini
64cc200df0
test: code coverage
2020-10-25 15:13:13 +01:00
Michele Caini
92f79c99f7
meta: review overloaded meta functions
2020-10-25 15:13:13 +01:00
Innokentiy Alaytsev
24f937fe4f
[meta] Meta-function overload support ( #538 )
...
Now meta-functions can be overloaded. When a function with a duplicate
identifier is registered, it's added into the meta-type function list after the
first meta-function with the same id. During the invocation, the meta-functions
with the requested id are iterated, and the best matching one is chosen. The
overload that doesn't require any type conversions or the minimal number of
those is considered the best match. If none of the overloads matches the given
arguments or if there are multiple matching overloads requiring the same number
of type casts then the invocation will fail the same way it happens in C++.
Signed-off-by: Innokentiy Alaytsev <alaitsev@gmail.com >
2020-10-25 15:13:13 +01:00
Michele Caini
eb8e96f413
example: multi instance storage
2020-10-21 08:40:03 +02:00
Michele Caini
3923c4cfd2
test: more tests, suppress warnings
2020-10-19 22:46:37 +02:00
Michele Caini
6ad884080c
meta_func/meta_ctor: support for registering external member functions
2020-10-19 22:38:08 +02:00