Myles Busig
72a6bbe584
Remove istring::append with template
2024-03-07 21:49:55 -07:00
Myles Busig
63284206a2
Remove istring::push_back / istring::pop_back
2024-03-07 21:41:15 -07:00
Myles Busig
cf90307a1f
Implement istring comparison operators
...
Not thoroughly tested.
2024-03-07 21:29:44 -07:00
Myles Busig
b6746d7ac0
Remove iterators from string and string_view
...
Iterators could probably be implemented efficiently, but it is not a
priority at the moment. They are removed for the time being.
2024-03-07 19:38:00 -07:00
Myles Busig
ca8aae6c66
Change istring to use string_view for the majority of its operations
...
The istring and string_view operators have identical implementations. By
changing the istring operators to cast to string_view and use that
implementation instead, the number of redundant implementations is
reduced. This does incurr a small performance penalty, around 15 cycles
when tested on the MGBA Gameboy Advance emulator (uses an armv7tdmi).
When compared to the time operations take, the performance difference is
negligible. Ex. An insertion with two 8 character strings takes around
450 cycles.
2024-03-07 16:28:18 -07:00
Myles Busig
8d8ceb0456
Document istring::insert
2024-03-07 16:09:32 -07:00
Myles Busig
cb4f9d2861
Implement string::copy and string_view::copy
2024-03-07 15:57:29 -07:00
Myles Busig
674371a66d
Change string_view to use char_traits instead of custom strlen
2024-03-07 15:55:00 -07:00
Myles Busig
fefdce4e41
Fix incorrect memcpy
2024-03-07 14:44:17 -07:00
Myles Busig
7bfc38d978
Change strings to use string_view instead of const char*
...
Because the length of a string_view is computed at compile time, it is
faster for simple copies.
2024-03-07 14:25:39 -07:00
Myles Busig
99bb7d4b6e
Add initial string_view implementation
2024-03-07 14:24:10 -07:00
Myles Busig
f0dfd29692
Fix incorrect function name in fixed.hpp
2024-03-06 23:49:40 -07:00
Myles Busig
6f74f94aee
Add initial fixed point number implementation
2024-03-06 23:42:48 -07:00
Myles Busig
1d42c106e0
Add initial finite state machine implementation
2024-03-06 23:02:00 -07:00
Myles Busig
29aa5bdc5b
Add cmake files and initial memcpy/string implementation
2024-03-04 20:44:58 -07:00