Commit Graph

361 Commits

Author SHA1 Message Date
2de1068ad8 fix(templates): fix Ref() call ambiguity 2024-12-22 17:27:32 +08:00
aa572542e2 fix(algorithms): fix requires for Algorithms::Distance() 2024-12-22 15:21:09 +08:00
db855d27a1 style(ranges): clarify the semantic requirements of CRange and CSizedRange 2024-12-22 11:11:56 +08:00
04bb4be901 feat(algorithms): add more iterator algorithm and the corresponding testing 2024-12-21 21:35:59 +08:00
a68a6d16b6 refactor(numerics): refactor the numerics implementation folder to plural form 2024-12-21 21:21:59 +08:00
a92422e8b2 refactor(*): refactor the tool library's namespace to plural form 2024-12-20 18:09:27 +08:00
343007ffd6 feat(algorithms): add basic iterator algorithm and the corresponding testing 2024-12-20 17:35:31 +08:00
8c228fbf52 refactor(*): refactor the tool library's parent folder to plural form 2024-12-20 17:31:52 +08:00
a14fbd90db test(range): add test for range library 2024-12-20 15:35:44 +08:00
1e6beb83f2 refactor(testing): refactor test code and file to reduce the name collisions 2024-12-19 22:02:13 +08:00
7fb116c577 fix(*): fix ambiguity in NAMESPACE_PRIVATE when expanding macros 2024-12-19 21:53:04 +08:00
566052c8c2 fix(iterator): fix some iterator adapter implementation bugs 2024-12-19 20:48:21 +08:00
a0250ebaf8 test(iterator): add test for iterator library 2024-12-19 20:47:44 +08:00
f88cf7ef3e feat(range): add TTakeWhileView adapter 2024-12-19 14:35:45 +08:00
e6d525f2c3 feat(range): add simple view concept and refactor related requires 2024-12-19 12:04:22 +08:00
dd3a366c14 fix(*): fix some iterator adapter implementation bugs 2024-12-19 11:49:13 +08:00
85199119b3 fix(range): fix GetBase() of sentinel adapters such as TFilterView's 2024-12-18 21:45:25 +08:00
78d4955e03 fix(iterator): fix TCountedIterator not initializing Length 2024-12-18 21:42:10 +08:00
8f36410346 feat(range): add TTakeView adapter 2024-12-18 21:29:44 +08:00
87e48e5ca1 style(*): fix some comments and static_assert errors 2024-12-18 21:21:10 +08:00
93b3a17f06 fix(range): fix implementation of IBasicViewInterface 2024-12-18 21:20:11 +08:00
6ea768781d style(range): fix comment noun error 2024-12-18 17:38:05 +08:00
dff6050a3b feat(range): add TMoveView adapter 2024-12-18 17:13:11 +08:00
ae964ebd0a refactor(*): refactor files that depend on iterator and range with minimal #include 2024-12-18 16:58:43 +08:00
8be89d0bbc refactor(containers): refactor TArray's constructors and member functions 2024-12-18 12:14:59 +08:00
80238de712 refactor(containers): disable container element types with cv-qualifiers 2024-12-18 11:31:44 +08:00
f54386d102 fix(templates): fix recursive #include due to native array swap function 2024-12-17 22:14:00 +08:00
6a37e91639 refactor(*): replace the old with the new iterator and range library 2024-12-17 21:49:37 +08:00
0a37460f24 fix(range): fix range adapter closure behavior 2024-12-17 16:58:23 +08:00
aa8cd7ed33 feat(range): add range conversion function 2024-12-17 16:05:59 +08:00
4845520225 fix(range): fix missing explicit namespace qualification of Range::All() 2024-12-17 15:53:14 +08:00
68f0d19cac fix(*): fix the implementation of iterator functions such as operator++(int) 2024-12-17 15:51:35 +08:00
50b1d2bb29 fix(*): fix missing constexpr in some if constexpr 2024-12-17 15:49:46 +08:00
00be872d5c fix(range): fix DeclVal() usage in range library 2024-12-17 14:46:03 +08:00
312cfe4097 refactor(*): make type alias identifiers conform to the style for general type identifiers 2024-12-16 19:34:47 +08:00
d2b6e0c669 feat(range): add range pipe operator support 2024-12-16 15:09:57 +08:00
d88eb4be5e refactor(range): split the remaining range library into multiple files 2024-12-15 22:04:47 +08:00
dca4eaa6eb fix(range): fix related tool identifiers for common range 2024-12-15 16:20:04 +08:00
8eab5e6538 fix(iterator): fix requires on some iterator adapter member functions 2024-12-15 16:19:45 +08:00
589347118b refactor(range): split range factories part of the range library into multiple files 2024-12-15 11:55:02 +08:00
a3e0aa01cf refactor(range): split basic view part of the range library into multiple files 2024-12-15 11:24:30 +08:00
a3509295ff refactor(range): add range example class and split part of the range library into multiple files 2024-12-14 20:12:53 +08:00
cd7adbfd46 refactor(iterator): split iterator library into multiple files 2024-12-14 16:20:26 +08:00
a55f03fea0 fix(iterator): fix behavior when TIteratorElement or TIteratorPointer is invalid 2024-12-14 16:09:35 +08:00
c73fc7620d fix(iterator): fix CReferenceable being mistakenly written as CReference 2024-12-14 14:12:07 +08:00
5cfde63dd4 style(iterator): organize comments to make them more human readable 2024-12-14 14:02:26 +08:00
24dd4347d1 refactor(iterator): add iterator example class and split iterator library into multiple files 2024-12-13 19:08:05 +08:00
ea625bb916 feat(miscellaneous): add TRangeView, TRefView, TOwningView, TFilterView and TTransformView 2024-12-10 20:55:29 +08:00
28367fe633 fix(miscellaneous): fix some iterator concepts and requires 2024-12-10 20:53:35 +08:00
d9f05d4241 feat(miscellaneous): add basic range factories 2024-12-09 19:20:10 +08:00