141 Commits

Author SHA1 Message Date
fb19bdec67 Macro to check for c++20 support instead of long form writing 2022-06-26 11:55:56 -07:00
7f47a4cbf8 Make allocator and string_base compat easier to read and remove unneccessary concepts subdirectory 2022-06-26 11:55:35 -07:00
5a6d7023ac Separate versioning compat in traits 2022-06-25 09:06:13 -07:00
329a79c3ea Fix c++17 build failure 2022-06-24 23:02:27 -07:00
5ce29908df Change size_t to std::size_t 2022-06-23 15:54:09 -07:00
61987d937b Add rsearch to basic_string to find last match in buffer 2022-06-23 15:39:35 -07:00
cdd51a6e3a Remove deprecated string functions. Add replace functions to basic_string. 2022-06-23 15:03:40 -07:00
2a69be29a6 Some minor cleanup to macros and future standard stuff 2022-06-22 18:18:38 -07:00
37e02ca871 Fix C++17 build 2022-06-22 16:43:34 -07:00
3d17d3ec8c Add rexy::format and rexy::print functions 2022-06-22 13:42:53 -07:00
1bc234cbca Change API macro names to be more consistent. 2022-06-22 13:42:07 -07:00
24ef556ab7 Improve basic_string type to include more functionality of std::string. Also add option to disable SSO if so desired 2022-06-22 13:30:00 -07:00
1799c1640b Add insertion functions to basic_string. Add size function to basic_string. 2022-06-21 19:31:07 -07:00
00355a64c6 Update cx::string to be more level with string_view 2022-06-19 18:46:02 -07:00
e5d8c0f567 Move string_view literal operators to str_literals namespace 2022-06-19 11:39:54 -07:00
d5a0f1927d Add iterators to cx/string and fix including null terminator in length when created from an array 2022-06-19 11:27:57 -07:00
588835d80a Fix strcmp not using 'if constexpr' and add strncmp 2022-06-19 11:27:26 -07:00
da5eb13d94 Fix not using constexpr-able version of strlen in strings 2022-06-18 10:38:08 -07:00
6937f1a885 Fix GCC >= 10 -Wstringop-overflow warning when build with -O3 2022-06-18 10:33:23 -07:00
a2ba8b9eb6 Separate debug defines from debug_print to allow using them in other stuff 2022-06-17 13:43:30 -07:00
56d680e036 Add substring function to string_view 2022-06-17 13:41:10 -07:00
a7474d5939 Update cx::string to have better c++20 support 2022-06-17 13:40:48 -07:00
6f07577bf0 Fix abs placement in utility 2022-06-11 08:49:04 -07:00
35b64db13c Merge remote-tracking branch 'refs/remotes/origin/master' 2022-06-11 08:47:50 -07:00
feca03e9c9 Change utility functions to use more efficient runtime versions when invoked at runtime 2022-06-11 08:47:47 -07:00
1acce4c588 Add is_nothrow_allocator type trait 2022-06-08 19:21:49 -07:00
e96899ceba Fixed abs just not doing anything 2022-06-08 16:06:24 -07:00
8ab328fcfe Make string_view trivially copy-able and trivially move-able. Add wstring alias for basic_string<wchar_t>. Add constexpr version of 'abs' function. 2022-06-08 12:09:52 -07:00
fd22069562 Add some iterator manipulation to string_view. Add a push_back function to strings so that they can be used in standard library stuff more 2022-05-28 16:06:08 -07:00
058ebe026e Fix string hashing header includes 2022-05-25 12:30:35 -07:00
99b0ac2ed3 Fix storage_for and revert one changed macro to correct constexpr behavior 2022-05-24 17:35:14 -07:00
2578895b40 More general cleanup of conditional C++20 support. Add Allocator concept and apply it to strings. 2022-05-24 17:24:55 -07:00
9a55d8594b General code cleanup and allow for more C++20 2022-05-24 14:37:41 -07:00
8b6b421c52 Merge branch 'master' of ssh://rexy712.chickenkiller.com:1995/rexy712/rexylib 2022-05-23 18:26:26 -07:00
5e49ed5f9a Enable header only build 2022-05-23 18:25:44 -07:00
075a0b0af2 fix buffer append v0.2.1 2022-05-22 19:35:13 -07:00
3fc89111ea Remove deprecated class binary and string_view operators. Move string_view into its own files. Update version to 0.2.0. v0.2.0 2022-05-22 15:14:34 -07:00
e5cf445f19 Fix c++17 string compat 2022-05-21 23:21:31 -07:00
d9f44cfeda Fix missing string comparisons 2022-05-21 22:42:21 -07:00
1ece6dccca Separated string_view from string_base. Add c++20 string concepts and created a new subfolder for c++17 compatability. 2022-05-21 12:38:33 -07:00
e576229d90 Separated string_view from string_base. Add c++20 string concepts and created a new subfolder for c++17 compatability. 2022-05-21 12:38:23 -07:00
30bad78580 Add ostream integration to strings 2022-05-21 09:25:08 -07:00
53378eb6c3 Change hashmap is_valid to contains, separate implementation to separate file. Add iterator constructors to string_view 2022-05-21 09:12:35 -07:00
54c8e24fab Fix cyclical header inclusion 2022-04-20 15:56:06 -07:00
7f9a1195fa Make rexy::hash work on c++ standard containers 2022-04-20 15:38:30 -07:00
11ea9db137 Enable some c++20 constexpr features for strings 2022-03-20 18:33:01 -07:00
adc52a3659 Rename static_string to string_view 2022-03-20 14:16:18 -07:00
a838f1a25a Add storage_for class to take the place of std::aligned_storage but with nice constructors and assignment operators and accessors added 2022-03-06 19:20:07 -08:00
f537cb8bdf Make rexy::buffer capable of holding non trivially destructible types 2022-03-06 11:12:14 -08:00
2e7d214660 Fix debug_print for clang 2022-02-24 16:47:28 -08:00