48 Commits

Author SHA1 Message Date
1acce4c588 Add is_nothrow_allocator type trait 2022-06-08 19:21:49 -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
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
5e49ed5f9a Enable header only build 2022-05-23 18:25:44 -07:00
3fc89111ea Remove deprecated class binary and string_view operators. Move string_view into its own files. Update version to 0.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
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
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
01e78a1a01 Add thin buffer wrapping class 2021-06-23 12:51:20 -07:00
aa63f840f8 Add version directive 2021-04-11 19:13:08 -07:00
0695bfb72c Change LICENSE for AGPLv3 to GPLv3 2021-04-11 14:56:24 -07:00
d135b54f1c Fix incorrect preprocessor include check 2021-04-06 11:16:31 -07:00
rexy712
28c8caae0a Add string searching with default option of two-way algorithm or user specified algorithm. Rearrange file structure to hopefully make things not seem arbitrarily placed in the cx subfolder 2020-09-19 09:44:05 -07:00
rexy712
2ea8c617f0 Add string substring operation 2020-09-17 07:23:06 -07:00
rexy712
f930dde989 Fix missing type aliases in basic_string 2020-08-13 15:42:35 -07:00
rexy712
dc68d52dd4 Add iterators to rexy::string_base 2020-08-11 14:05:19 -07:00
rexy712
d90be8e1a8 Merge branch 'master' of ssh://rexy712-server:1995/var/git/repos/rexy712/rexylib 2020-08-11 13:34:43 -07:00
rexy712
a3b1d2baa7 Fix string operators taking const char* instead of relevant const_pointer. Add deduction guides to static_string. Add compare function to string_base 2020-08-11 13:34:36 -07:00
rexy712
ea8c15b27e Rename m__data to m_data in string_base. Forgot to fix the temp name much earlier. Other basic readability improvements 2020-08-06 15:32:04 -07:00
rexy712
05e2fa2406 Add compare() member to string_base 2020-08-06 15:27:56 -07:00
rexy712
0f6866e982 Add allocator to public facing api 2020-08-04 10:36:11 -07:00
rexy712
ab52132fe1 Imperfect, but still functional and fully c++17 standard compliant Small String Optimization 2020-08-03 17:38:52 -07:00
rexy712
d98c40dac8 Add explicit template instantiation strings for different char types. add operator _ss overloads for different char types 2020-08-03 13:28:11 -07:00
rexy712
f7b0822dd2 Generisize string types 2020-08-01 01:28:29 -07:00
rexy712
55c908686f Fix inheritance access modifier for allocator derived types 2020-07-28 09:31:36 -07:00
rexy712
a10c12c1cf Change allocator to conform to c++ standard library allocators 2020-07-28 09:07:42 -07:00
rexy712
f4aa7f8564 Change naming convention for template impl of standard class 2020-07-28 06:22:33 -07:00
rexy712
c83d2ce686 Explicit template instantiation for rexy::string and rexy::binary 2020-07-28 06:18:20 -07:00
rexy712
7d659cd05e Explicit string_intermediary constructor 2020-07-17 22:45:15 -07:00
rexy712
8c783c48fa Add c_str function to strings. Mainly just an aesthetic change for me 2020-07-17 14:39:06 -07:00
rexy712
4f65c38507 Fix circular dependencies on string hashing 2020-05-14 19:00:25 -07:00
rexy712
0d33ec9444 Generalize expression templates and bring binary_data up to par with string_intermediary 2020-05-08 22:40:03 -07:00
rexy712
31a177fc86 Simplify same string details and fix a couple foreseeable bugs 2020-05-07 11:55:40 -07:00
rexy712
daac14dddf Add noexcept specs to all the things 2020-05-06 15:23:58 -07:00
rexy712
c622eb7323 Cleanup constexpr namespace and some metaprogramming junk 2020-05-02 14:04:08 -07:00
rexy712
c99abad226 Add compile time vector, array, and hashmap 2020-05-01 23:49:25 -07:00
rexy712
4cad6f794d Improve readability and constexpr-ness 2020-04-24 12:52:47 -07:00
rexy712
de681d3cd7 Improve constexpr-ness of strings 2020-04-23 14:40:51 -07:00
rexy712
a280642cac Improve string constexpr-ness and cleanup addition operators 2020-04-21 19:03:12 -07:00
rexy712
72f8c0d592 Fix static_string not allowing move construction 2020-04-18 09:47:10 -07:00
rexy712
afd2f02032 Add rexy::steal to disambiguate constructors of strings and binarys 2020-04-09 12:59:24 -07:00
rexy712
7351e3be10 Reorganize file structure again. Fix confusing issue dealing with null terminators with static_string using an array for initialization 2020-04-06 16:51:38 -07:00