| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-08-12 | Move debug utils to debug.hh/debug.cc | Maxime Coste | |
| Lots of code includes buffer_utils.hh just for write_to_debug_buffer which pulls many unnecessary dependencies. Reorganise to reduce compile times. | |||
| 2024-02-28 | Templatize StringData::create | Maxime Coste | |
| This improves performance by letting the compiler optimize most use cases where string count and length are known are compile time. | |||
| 2024-02-28 | improve :debug shared-strings | Maxime Coste | |
| 2023-11-17 | Improve WordDB performance by precomputing hashes | Maxime Coste | |
| Avoid multiple computation of string hashes by making it possible to pre-compute and pass hashes to interned strings and hash maps. | |||
| 2022-08-21 | Avoid calling memcpy from empty string views | Maxime Coste | |
| ubsan is unhappy when passing a nullptr as the source pointer to memcpy even if the length is 0. Fixes #4720 | |||
| 2018-07-26 | Fix shared string registry ref count stats | Maxime Coste | |
| 2017-10-10 | Move all non-core string code to string_utils.{hh,cc} | Maxime Coste | |
| 2017-06-07 | Use range based accumulate wrapper instead of std::accumulate | Maxime Coste | |
| 2017-03-07 | Replace uses of UnorderedMap with HashMap | Maxime Coste | |
| 2017-02-23 | Refactor StringData and StringRegistry to remove need for purging | Maxime Coste | |
| Purging unused strings could get pretty expensive with a lot of interned strings as it requiered iterating on all of them. Use a flag on the refcount of the StringData to see if the string is interned, and notify the StringRegistry in this case. This should improve the speed of editing big files with many words, such as the one described in #1195 | |||
| 2016-02-05 | dont intern SharedStrings but StringDataPtr | Maxime Coste | |
| 2015-06-06 | Move write_debug to buffer utils as write_to_debug_buffer | Maxime Coste | |
| 2015-04-16 | Use an UnorderedSet for string registry | Maxime Coste | |
| 2015-03-30 | Replace various adhoc operator+ based formatting with format func | Maxime Coste | |
| 2015-01-19 | rename SharedString::Storage to StringStorage and use directly in Buffer | Maxime Coste | |
| 2015-01-19 | Use a single allocation for SharedString::Storage | Maxime Coste | |
| 2015-01-18 | Replace std::shared_ptr with homemade, intrusive, ref_ptr | Maxime Coste | |
| That saves a lot of memory as sizeof(SharedString) is now one pointer less. | |||
| 2015-01-15 | Replace InternedStrings with SharedString, shared_ptr based | Maxime Coste | |
