Commit Graph

758 Commits

Author SHA1 Message Date
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
Jan Niklas Hasse
bbbf5a5edf Allow compilation for Windows with GNU-like compilers (#566)
Besides MSVC (and compatible compilers like clang-cl) there's also GCC
(MinGW) and GNU-like Clang on Windows. Therefore setting command line
flags in CMake should check for MSVC instead of $<PLATFORM_ID:Windows>.
2020-10-17 18:26:50 +02:00
Michele Caini
820add87ea test: gtest is now working as expected (close #571) 2020-10-17 18:19:49 +02:00
Michele Caini
10da82a331 view_pack: ::each allows to remove the entity from the callback 2020-10-17 18:08:43 +02:00
Michele Caini
26c816e78c type_traits: is_applicable[_v] and is_applicable_r[_v] for tuples 2020-10-17 17:51:58 +02:00
Michele Caini
ff068e032b test: code coverage 2020-10-17 00:30:15 +02:00
Michele Caini
c55c1c0615 *: view_pack class and tests 2020-10-16 23:59:44 +02:00
Michele Caini
9983faef70 view/group: consistent ::get without template arguments (breaking changes) 2020-10-16 16:15:04 +02:00
Michele Caini
5a3e816544 view/groups: extended get (breaking changes) 2020-10-15 17:02:50 +02:00
Michele Caini
b2de76e8a0 test: temporary workaround for an upstream regression in googletest (see #571) 2020-10-15 15:27:40 +02:00
Michele Caini
86c1dd7f32 test: suppress some warnings here and there 2020-10-15 15:11:15 +02:00