Commit Graph

344 Commits

Author SHA1 Message Date
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
5131fd6eae fix(miscellaneous): fix requires for FUnreachableSentinel::operator== 2024-12-09 19:16:28 +08:00
ba9d35c1ff feat(miscellaneous): add TViewInterface with basic view and other range tools 2024-12-08 20:44:48 +08:00
8113d3b39b feat(miscellaneous): add IndirectlySwap family functions for iterators 2024-12-08 20:40:52 +08:00
89dc5b715e fix(miscellaneous): fix iterator for only movable base object 2024-12-08 20:38:33 +08:00
e3e127752e feat(miscellaneous): add basic range concepts and helper functions 2024-12-05 21:21:15 +08:00
8d02b0e0a9 refactor(miscellaneous): fix iterator concepts and helper function return value types 2024-12-05 21:19:55 +08:00
7525c9a5dd refactor(*): move container and iterator tools to miscellaneous 2024-12-05 16:38:49 +08:00
9d901df68a feat(numeric): add basic random number generator function 2024-12-04 22:05:50 +08:00
2d06667c40 fix(numeric): fix missing header file in Numeric/Bit.h 2024-12-04 21:55:02 +08:00
fa29c4a063 fix(numeric): add disambiguation macro for Math::DivAndRound family functions 2024-12-04 17:49:01 +08:00
66cfbfa3b3 fix(maiscellaneous): fix the definition of the uint_fast family 2024-12-04 16:05:44 +08:00
d0287dd5e8 style(numeric): add and correct some comments 2024-12-04 15:54:35 +08:00
123800bbbd test(string): using self numeric instead of standard library functions 2024-12-04 11:50:46 +08:00
3dc20f25cf fix(numeric): fix floating point classification function return value type 2024-12-04 11:41:32 +08:00
c96995ea92 feat(numeric): add remaining standard math functions and the corresponding testing 2024-12-03 21:24:34 +08:00
bd68754903 feat(numeric): add basic, exponential, power and nearest integer math functions 2024-12-02 19:22:31 +08:00
f5c47fe677 feat(numeric): add basic and floating point manipulation functions and the corresponding testing 2024-11-27 19:03:54 +08:00
84a41387ae feat(numeric): add fixed-width literals, bit math functions and the corresponding testing 2024-11-27 16:58:39 +08:00
edc6c1924a fix(miscellaneous): fix unreachable indicator function will return 2024-11-27 16:55:37 +08:00
5a5d34e908 refactor(numeric): rename numeric tool library 2024-11-26 12:04:53 +08:00
f60bd0e3e4 feat(numerics): add the mathematical constant tool 2024-11-24 22:39:45 +08:00
987299f9b5 feat(numerics): add TNumericLimits tool 2024-11-24 21:48:09 +08:00
bcc39fdf55 refactor(miscellaneous): clarify which fundamental types are used where 2024-11-24 20:09:31 +08:00
54c795b9a2 feat(miscellaneous): add static assumptions about integral types 2024-11-24 13:14:51 +08:00
1c01ce5bb6 refactor(miscellaneous): refactor platform arithmetic type support 2024-11-21 22:02:39 +08:00
a952c31546 chore(*): add PLATFORM_COMPILER_* macros and other tools 2024-11-21 10:23:17 +08:00
7107fc6b8a feat(miscellaneous): add int128, int_least family, int_fast family and intmax type 2024-11-20 18:08:33 +08:00