Commit Graph

795 Commits

Author SHA1 Message Date
Michele Caini
3eb00382e7 meta: removed meta_base, meta_base_node is used internally when needed 2021-01-11 10:46:51 +01:00
Michele Caini
98b5f7a26a meta: removed meta_conv, meta_conv_node is used internally when needed 2021-01-11 10:34:30 +01:00
Michele Caini
8cb61da9c2 *: minor changes 2021-01-08 11:43:26 +01:00
Michele Caini
a7a2c96382 registry: added ::reserve_pools 2021-01-05 09:35:41 +01:00
Michele Caini
18ffbd0027 registry: group -> group_if_exists (close #626) 2021-01-04 08:34:56 +01:00
Michele Caini
29c1766714 registry: const poly storage function 2020-12-24 16:48:07 +01:00
Michele Caini
2e5a9f117c *: cleanup 2020-12-23 19:09:31 +01:00
Michele Caini
2abcbcd30f meta: support for pointer-like types with a custom dereference operator other than operator* 2020-12-23 19:00:05 +01:00
Michele Caini
5d472a1f2e test: suppress warnings 2020-12-23 09:42:40 +01:00
Michele Caini
aa979b2046 any/meta:
* added alias constructor to any
* added alias constructor to meta_any
* added alias constructor to poly
* added support for const containers, const deref operator and const views to meta_any
2020-12-23 09:42:36 +01:00
Michele Caini
2daaf899d3 any: comparison functions (==, !=) 2020-12-23 09:42:33 +01:00
Michele Caini
fa4c6bccbc meta_any: make ref to pointer-like types work in all cases 2020-12-23 09:42:31 +01:00
Michele Caini
bc415242f2 test:
* support for pointer-like to const
* internal meta_range coverage
* fully tested meta_handle
* references as arguments for meta_ctor
* invoke const function on const reference for meta_func
* references as arguments for meta_func
* as_cref_t return type for meta_func
* setter and getter on const reference for meta_data
* as_cref_t getter for meta_data
* set by const and non-const reference for meta_data
* const invoke for meta_any
* const get for meta_any
* aob
2020-12-23 09:42:26 +01:00
Michele Caini
2eeb7552d6 test:
* more on any const and non-const reference support
* poly support for const and non-const references
* poly as_ref overloads
2020-12-23 09:42:24 +01:00
Michele Caini
f55004d1e4 test: any::as_ref for const references 2020-12-23 09:42:19 +01:00
Michele Caini
c32f947c18 meta:
* support for pointers to const types
* use std::reference_wrapper instead of std::ref to let pass constness
2020-12-23 09:42:09 +01:00
Michele Caini
c52f16f5b8 meta:
* meta_any: convert -> allow_cast
* support for const references
* as_cref_t policy
2020-12-23 09:42:04 +01:00
Michele Caini
bc089bc4c1 any_cast: review any_cast for better support to const references 2020-12-23 09:41:58 +01:00
Michele Caini
1075ded4dc test: minor changes 2020-12-23 09:41:55 +01:00
Michele Caini
5578ea2f30 meta_any: added support for const references, reviewed meta_any::cast (T vs T &) 2020-12-23 09:41:52 +01:00
Michele Caini
ade3e58829 any: added support to const references 2020-12-23 09:41:49 +01:00
Michele Caini
9950b2ea34 type_traits: added type_list_element[_t] and value_list_element[_v] 2020-12-17 10:13:02 +01:00
Michele Caini
002f92fe1e organizer: fixed an issue for free functions with payload (close #613) 2020-12-14 11:17:10 +01:00
Michele Caini
a974235d10 core/entity/meta/poly:
* updated poly (static vtable, design review)
* .ref -> as_ref (any, meta_any, poly)
* poly storage
2020-12-12 15:09:29 +01:00
Michele Caini
be88d5dfb8 type_info: minor changes 2020-12-12 14:51:41 +01:00
Michele Caini
6f36723097 runtime_view: public constructor (close #597) 2020-12-06 15:37:51 +01:00
Michele Caini
35bce924f8 handle: added support for destroy (close #598) 2020-12-03 12:17:49 +01:00
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