|
c316b8f190
|
refactor(typetraits): replaces template class type traits with concepts for TypeTraits/TypeProperties.h
|
2022-05-22 22:35:27 +08:00 |
|
|
22fe906eda
|
refactor(typetraits): replaces template class type traits with concepts for TypeTraits/CompositeType.h
|
2022-05-22 22:35:11 +08:00 |
|
|
1dcd3dc3b3
|
refactor(typetraits): replaces template class type traits with concepts for TypeTraits/PrimaryType.h
|
2022-05-22 22:34:43 +08:00 |
|
|
5d1f622af8
|
refactor(typetraits): TIsDestructible use Cpp17Destructible requirements instead of std::is_destructible
|
2022-05-22 22:33:45 +08:00 |
|
|
13e3b49118
|
refactor(templates): TFunction replaces using type aliases with derived classes
|
2022-05-14 22:52:21 +08:00 |
|
|
eeef55e9b4
|
refactor(*): remove FTypeInfo and replace it with the native std::type_info
|
2022-05-12 23:36:32 +08:00 |
|
|
db5ed179c6
|
refactor(templates): add template class specialization TOptional<TReferenceWrapper<T>>
|
2022-05-03 22:20:08 +08:00 |
|
|
522c71f2b6
|
refactor(templates): optimize the implementation of TOptional and TVariant
|
2022-05-03 18:22:41 +08:00 |
|
|
a737eea487
|
refactor(templates): disable TFunctionRef to bind r-valued callable
|
2022-05-01 18:02:26 +08:00 |
|
|
eb814e37d3
|
refactor(templates): optimize TAny implementation, increase inline storage size
|
2022-04-30 23:38:09 +08:00 |
|
|
7aadebba70
|
refactor(miscellaneous): replace TSynthThreeWay with the function version
|
2022-04-30 19:27:25 +08:00 |
|
|
d634fc3cf8
|
fix(templates): fix TOptional constraints and implementation
|
2022-04-27 23:22:52 +08:00 |
|
|
494928aa6b
|
refactor(*): add check and constraint diagnostics for illegal alignment
|
2022-04-27 22:50:56 +08:00 |
|
|
897ee4f283
|
fix(miscellaneous): fix misbehavior of assertions under some build types
|
2022-04-26 23:04:50 +08:00 |
|
|
099cba38f4
|
refactor(templates): simplify TTuple implementation
|
2022-04-25 23:04:19 +08:00 |
|
|
0ce3d9055b
|
refactor(templates): block direct access to element 16 of TTuple
|
2022-04-24 23:11:00 +08:00 |
|
|
ff59698fdc
|
feat(templates): add Ref helper function for TReferenceWrapper
|
2022-04-24 23:08:00 +08:00 |
|
|
f72d6a53d8
|
refactor(templates): remove the predefined functors, Lambda is a better choice
|
2022-04-24 22:54:08 +08:00 |
|
|
c2eca8df1e
|
refactor(templates): remove the GetData function from the non-container class
|
2022-04-24 22:42:40 +08:00 |
|
|
6b63436d41
|
refactor(templates): remove TAtomic::IsLockFree function
|
2022-04-22 22:33:23 +08:00 |
|
|
04d713cd93
|
refactor(templates): refactor GetTypeHash into a member function
|
2022-04-22 22:28:44 +08:00 |
|
|
ecbf6480ac
|
refactor(templates): fix the return value derivation of GetData and GetNum
|
2022-04-19 22:53:23 +08:00 |
|
|
018d3afb73
|
refactor(templates): refactor Swap into a member function
|
2022-04-14 22:41:22 +08:00 |
|
|
5c82ab1e0d
|
refactor(templates): refining TOptional's constraints
|
2022-04-13 22:35:30 +08:00 |
|
|
4f769a9207
|
feat(templates): add TAtomic and the corresponding testing
|
2022-04-12 08:33:19 +08:00 |
|
|
a80860f107
|
feat(templates): add common functors outside STD and the corresponding testing
|
2022-04-10 10:25:42 +08:00 |
|
|
a086f90f25
|
refactor(templates): fix the behavior of the TFunction::Target function
|
2022-04-08 16:52:17 +08:00 |
|
|
ceccf9d722
|
feat(templates): add common functors and the corresponding testing
|
2022-04-08 11:44:36 +08:00 |
|
|
92523a13b2
|
feat(templates): add TFunction and the corresponding testing
|
2022-04-07 15:57:02 +08:00 |
|
|
988e0335a0
|
fix(templates): fix Invoke selects the wrong operation when the function has specifiers
|
2022-04-07 14:52:41 +08:00 |
|
|
a539f70535
|
refactor(templates): make FTypeInfo behave more like std::type_info and optimize TAny
|
2022-04-05 17:00:33 +08:00 |
|
|
2a3a5aec35
|
refactor(templates): make TAny use the construct when the operator= is delete
|
2022-04-05 13:20:00 +08:00 |
|
|
943c7c5991
|
refactor(templates): add constraints to reduce duplicate code on TAny etc
|
2022-04-03 22:55:17 +08:00 |
|
|
5f4b0d8c22
|
feat(templates): add type traits to determine if it is TAny etc
|
2022-03-31 17:36:48 +08:00 |
|
|
54ab72224f
|
feat(templates): add type hash support and the corresponding testing
|
2022-03-31 16:40:31 +08:00 |
|
|
c4c205e35b
|
refactor(templates): optimize TOptional and TVariant, add necessary constraints
|
2022-03-31 12:07:15 +08:00 |
|
|
d8a4908a88
|
feat(templates): add TTuple and the corresponding testing
|
2022-03-31 09:39:30 +08:00 |
|
|
782f5f5cb2
|
fix(templates): fix the initialization problem of TVariant members with cv-qualifiers
|
2022-03-30 12:06:05 +08:00 |
|
|
91755d2196
|
feat(templates): add TUnwrapReference and the corresponding testing
|
2022-03-26 19:33:28 +08:00 |
|
|
e1871de73b
|
perf(templates): fix the redefinition of Swap function in private namespaces
|
2022-03-26 19:31:45 +08:00 |
|
|
3150e07f6b
|
feat(templates): add TIntegerSequence and the corresponding testing
|
2022-03-23 17:50:55 +08:00 |
|
|
0c6bf06a56
|
refactor(templates): optimize visit functions for TOptional, TVariant and TAny, add necessary constraints
|
2022-03-23 17:49:30 +08:00 |
|
|
2f55c84c32
|
feat(templates): add TOptional and TVariant to compare the equivalence of Invalid
|
2022-03-22 11:12:05 +08:00 |
|
|
be1d91591c
|
feat(templates): add TAny and the corresponding testing
|
2022-03-22 11:10:12 +08:00 |
|
|
e0aab7e0b9
|
perf(templates): add requires on the content of TOptional and TVariant
|
2022-03-21 18:40:30 +08:00 |
|
|
1bff879a0b
|
style(*): move some constants and placeholders to CoreMiscDefines.h
|
2022-03-17 09:22:48 +08:00 |
|
|
1b8b449ed4
|
style(miscellaneous): move Compare.h from Templates to Miscellaneous
|
2022-03-16 10:47:17 +08:00 |
|
|
2448653fa0
|
style(miscellaneous): move Placeholders.h from Templates to Miscellaneous
|
2022-03-16 09:58:23 +08:00 |
|
|
d8ae39b980
|
feat(templates): add TVariant and the corresponding testing
|
2022-03-15 19:26:31 +08:00 |
|
|
f7b611febc
|
fix(templates): fix TOptional's operator!= returned an wrong value for invalid value
|
2022-03-15 11:52:46 +08:00 |
|
|
0b4cb1a9e0
|
style(templates): redefine placeholders such as ForceInit, InPlace, etc.
|
2022-03-14 18:03:57 +08:00 |
|
|
8a3b089648
|
feat(templates): add TOptional and the corresponding testing
|
2022-03-13 23:18:07 +08:00 |
|
|
c2aecef3dd
|
feat(templates): add three-way comparison operator support
|
2022-03-09 23:35:05 +08:00 |
|
|
f94621e7e0
|
fix(templates): fix TReferenceWrapper compilation error on GCC
|
2022-03-04 22:53:24 +08:00 |
|
|
2fa4bcea13
|
feat(templates): add TReferenceWrapper and the corresponding testing
|
2022-02-09 21:46:39 +08:00 |
|
|
2bc852b63c
|
feat(templates): add AddressOf function and the corresponding testing
|
2022-02-09 17:07:47 +08:00 |
|
|
63fdd34789
|
feat(templates): add Invoke function and corresponding peripheral tools
|
2022-02-04 21:11:05 +08:00 |
|
|
b0c170f803
|
feat(templates): improve Swap functions and peripheral tools
|
2022-02-04 16:34:41 +08:00 |
|
|
3724188602
|
fix(templates): fix the problem that FNoncopyable etc. cannot be constructed
|
2022-02-03 22:25:02 +08:00 |
|
|
172a92edfe
|
feat(templates): add basic tools such as Templates/Templates.h
|
2022-02-03 16:45:34 +08:00 |
|