Commit Graph

75 Commits

Author SHA1 Message Date
BlackMATov
abe42e1edc replace state's sets to vectors for order 2023-03-12 01:11:31 +07:00
BlackMATov
debecad420 disable different states comparing 2023-03-11 22:52:23 +07:00
BlackMATov
2866b71e87 type_id is just a data pointer now 2023-03-11 22:32:26 +07:00
BlackMATov
7954964ed3 universal resolve_poly_type for all types 2023-03-11 05:30:41 +07:00
BlackMATov
02f344197d fix type_registry::get_type_by_id 2023-03-11 04:44:45 +07:00
BlackMATov
6be7c9239c remove rtti types from type registry 2023-03-10 20:06:50 +07:00
BlackMATov
29a823aa2f fix tests without rtti 2023-03-10 18:08:58 +07:00
BlackMATov
d05de90e36 first version of ucast 2023-03-10 07:52:21 +07:00
BlackMATov
ae0d402fa2 fix internal class vs const class types resolving 2023-03-10 04:32:04 +07:00
BlackMATov
139f075d77 add recursively flag to get_xxx class type functions 2023-03-07 23:11:37 +07:00
BlackMATov
424b6f6736 optimize ambiguous cast checks 2023-03-06 21:29:19 +07:00
BlackMATov
de7e853360 fix ambiguous casts issues 2023-03-06 05:18:21 +07:00
BlackMATov
956293a9ae add free-standing try_invoke 2023-03-03 23:55:16 +07:00
BlackMATov
78c6773ced add is_direct_base_of and is_direct_derived_from 2023-03-03 22:36:06 +07:00
BlackMATov
3465e961f2 add is_virtual_base_of trait 2023-03-03 21:22:21 +07:00
BlackMATov
8e34cfdda1 add ambiguous conversions issue 2023-03-03 01:03:19 +07:00
BlackMATov
0c606a1c20 new non-recursive upcast system 2023-03-02 18:50:55 +07:00
BlackMATov
db163298e1 add an ambiguous conversion test 2023-02-25 16:52:17 +07:00
BlackMATov
bace3a2d88 using uresult as uvalue for invoke 2023-02-19 03:32:40 +07:00
BlackMATov
704aef878d rewrite global is_invocable_with to dynamic version 2023-02-19 02:59:52 +07:00
BlackMATov
cda2035321 uvalue's casts refactoring 2023-02-19 01:14:35 +07:00
BlackMATov
1d9248462d add uvalue::is 2023-02-18 21:30:27 +07:00
BlackMATov
793ca9f17d fast error_code access from uerror 2023-02-18 19:48:47 +07:00
BlackMATov
46ff71ea79 operator* and operator-> for uresult 2023-02-18 02:51:12 +07:00
BlackMATov
d6ba3d8ce4 fix try_ member and ctor calls 2023-02-18 01:57:54 +07:00
BlackMATov
e3b82ca382 rename "uvalue::get_as" to "uvalue::as" 2023-02-18 01:29:47 +07:00
BlackMATov
8730e11d3c remove all get_as<T>, try_invoke with uresult instead optional 2023-02-18 00:33:25 +07:00
BlackMATov
cbbf8dbe1f return is_valid instead is_empty 2023-02-17 23:27:02 +07:00
BlackMATov
36e76ccd93 use uerror in is_invokable_with functions 2023-02-17 23:11:47 +07:00
BlackMATov
2f3a6740b7 rewrite all "is_valid" methods to "is_empty" 2023-02-17 03:26:59 +07:00
BlackMATov
c222a3a6a3 rename uvalue::is_valid to has_value 2023-02-17 03:05:58 +07:00
BlackMATov
58c7a31af5 new uresult class for safe api 2023-02-17 03:03:17 +07:00
BlackMATov
c0c81c80ac little uvalue fixes 2023-02-16 17:06:26 +07:00
BlackMATov
8ba7a71e6b insert_or_assign exception workarounds 2023-02-15 18:15:47 +07:00
BlackMATov
7a56ba97ad reduce the number of ::instance() calls 2023-02-14 00:18:16 +07:00
BlackMATov
4bfde4b1fb safe_invoke, safe_get_as, safe_create 2023-02-12 02:15:27 +07:00
BlackMATov
deeaebd6a6 new uvalue safe api 2023-02-10 23:09:52 +07:00
BlackMATov
6c4d4cdf73 add google benchmark for the future 2023-02-09 23:29:24 +07:00
BlackMATov
81c829d5a2 new META_HPP_THROW_IF macro 2023-02-09 02:43:01 +07:00
BlackMATov
c452ff532a clean up indices 2023-02-08 17:26:43 +07:00
BlackMATov
178a4486cf return an empty type for empty uvalues 2023-02-08 06:22:45 +07:00
BlackMATov
fa68b6fb01 template is/as for any_type 2023-02-07 02:11:19 +07:00
BlackMATov
23599f8104 constructor/destructor_type change get_owner_type return type 2023-02-07 01:46:58 +07:00
BlackMATov
914eab46f1 CONFIGURE_DEPENDS for cmake sources 2023-02-03 15:27:09 +07:00
BlackMATov
dd16e71ac4 type_id tests 2023-02-03 15:21:30 +07:00
BlackMATov
2c9dc25e9d compare ops hashed_string with string_view 2023-02-03 03:38:17 +07:00
BlackMATov
0a4ba7b128 use spaceship operator 2023-02-03 01:09:05 +07:00
BlackMATov
0fd9509556 move fnv1a_hash to the personal header 2023-02-02 14:40:02 +07:00
BlackMATov
2d90247546 fix CI tests 2023-02-01 04:47:54 +07:00
BlackMATov
e9204d4b33 cleanup intrusive_ptr 2023-01-31 19:52:09 +07:00