Commit Graph

28 Commits

Author SHA1 Message Date
1a5f3c9c54 refactor(templates): modify the TReferenceWrapper to be like std 2023-01-06 19:17:41 +08:00
e4d59b9832 refactor(templates): add final specifier for template class 2022-12-30 19:11:01 +08:00
9368a49806 style(*): add comments and attribute specifiers 2022-12-29 21:55:02 +08:00
b75cb30f4f refactor(templates): refactor GetTypeHash and Swap to friend 2022-12-19 18:00:52 +08:00
de059cb980 fix(templates): disable TReferenceWrapper swap and enable it into FAny 2022-12-18 19:28:33 +08:00
b6c76ceadc refactor(templates): remove TOptional<TReferenceWrapper<T>> specialization 2022-12-16 22:04:35 +08:00
441df3791c fix(templates): fix requirements for FAny and TAtomic 2022-12-16 19:30:55 +08:00
ca67769796 refactor(templates): do not allow TReferenceWrapper to rebind a new object 2022-12-13 23:13:14 +08:00
ac9e0d38a6 refactor(templates): add FORCEINLINE to the constexpr function 2022-12-13 22:02:39 +08:00
058f07fedc refactor(templates): allow some template classes to derive and replace some using with inheritance 2022-11-21 23:28:19 +08:00
f96c000b9e refactor(*): make the template class concept indistinguishable from cv-qualified 2022-11-17 20:57:54 +08:00
3f56a2beca style(*): enclose the requires expression in parentheses as required by GCC 2022-11-16 22:03:54 +08:00
d37eee0d23 style(*): replaces Types... in the template parameters with Ts... 2022-11-16 19:13:37 +08:00
f347132725 fix(templates): fix compile error in TReferenceWrapper constructor 2022-11-15 22:15:10 +08:00
af07b1a134 refactor(templates): enhance encapsulation by changing part of the struct to a class 2022-11-15 19:28:43 +08:00
f1d4d99ecf refactor(*): replaces template class type traits with C++20 at all 2022-06-16 23:37:29 +08:00
2ce259e7cc refactor(typetraits): replaces template class type traits with alias template for TypeTraits/Miscellaneous.h 2022-05-22 22:52:47 +08:00
ee46d84897 refactor(typetraits): replaces template class type traits with concepts at all 2022-05-22 22:36:30 +08:00
6a5a101af4 refactor(typetraits): replaces template class type traits with concepts for TypeTraits/Miscellaneous.h 2022-05-22 22:36:15 +08:00
413762a90a refactor(typetraits): replaces template class type traits with concepts for TypeTraits/SupportedOperations.h 2022-05-22 22:36:04 +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
db5ed179c6 refactor(templates): add template class specialization TOptional<TReferenceWrapper<T>> 2022-05-03 22:20:08 +08:00
ff59698fdc feat(templates): add Ref helper function for TReferenceWrapper 2022-04-24 23:08:00 +08:00
5f4b0d8c22 feat(templates): add type traits to determine if it is TAny etc 2022-03-31 17:36:48 +08:00
91755d2196 feat(templates): add TUnwrapReference and the corresponding testing 2022-03-26 19:33:28 +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