Commit Graph

325 Commits

Author SHA1 Message Date
levlam
5c9d306208 Optimize get_unicode_simple_category with jump table. 2022-08-19 17:56:47 +03:00
levlam
96cca84a60 Remove source from next_utf8_unsafe. 2022-08-19 16:37:44 +03:00
levlam
9e4ae8997b Fix WaitFreeHashMap::get_pointer. 2022-08-04 22:40:22 +03:00
levlam
6f46b50b4b Add WaitFreeHashMap::foreach. 2022-08-04 15:08:18 +03:00
levlam
08dbc7d9f2 Add operator[] to WaitFreeHashMap. 2022-08-04 00:38:13 +03:00
levlam
2d705004a3 Add WaitFreeVector. 2022-08-02 14:27:18 +03:00
levlam
36a57c3584 Remove unneeded FlatHashTable copy constructors. 2022-07-23 11:13:17 +03:00
levlam
ac8af37872 Add size() and empty() to WaitFreeHashMap. 2022-07-20 13:35:32 +03:00
levlam
0bdd15fe9f Fix warning. 2022-07-15 00:06:41 +03:00
levlam
abc9ed2cd9 Minor fixes. 2022-07-14 18:38:48 +03:00
Arseny Smirnov
f4c97b25ec add Mutex wrapper around std::mutex and use it instead of SpinLock 2022-07-14 16:27:06 +04:00
levlam
33d1dfec0e Add LargeFiles test. 2022-05-11 19:03:03 +03:00
levlam
5fda16c89e Add WaitFreeHashMap. 2022-05-19 19:22:33 +03:00
levlam
e4bff687cf Add td::remove_emoji_selectors test. 2022-05-12 19:18:14 +03:00
levlam
805e4d4a25 Add get_fitzpatrick_modifier test. 2022-05-12 19:11:17 +03:00
levlam
e6738efa3f Add test for remove_emoji_modifiers. 2022-05-12 19:04:37 +03:00
levlam
6377a15d02 Move is_emoji test to separate file. 2022-05-12 18:45:25 +03:00
levlam
bb0908504b Fix clean_filename test. 2022-05-12 13:10:19 +03:00
levlam
2ae689f54f Add another pq_factorize test. 2022-03-21 20:43:28 +03:00
levlam
6e86faaa0f Improve factorization tests. 2022-03-20 00:01:07 +03:00
levlam
eb89f8b35f Minor include fixes. 2022-03-12 00:50:04 +03:00
levlam
acf30d3700 Fix HashTable::operator->. 2022-03-11 13:34:36 +03:00
levlam
2413b3fd37 Add unordered_map<string, ...> benchmark. 2022-03-09 23:23:44 +03:00
levlam
7f7344c363 Add separate FlatHashSet.h. 2022-03-09 23:01:10 +03:00
levlam
07bb129653 Move FlatHashTable implementation to FlatHashTable.h. 2022-03-09 18:03:56 +03:00
levlam
8b897c7c5f Move MapNode and SetNode to separate classes. 2022-03-09 16:29:47 +03:00
levlam
f993bebc2f Disable FlatHashTable for release. 2022-03-01 15:16:57 +03:00
levlam
a657cf6458 Use random begin() in HashTable. 2022-02-25 00:04:32 +03:00
levlam
ecb14f1bdd Minore fixes. 2022-02-24 21:38:57 +03:00
levlam
fe06a1d4fc Fix GCC warnings. 2022-02-23 22:46:32 +03:00
levlam
b3a784f4ba Properly clear other hashmap after move. 2022-02-23 15:58:12 +03:00
levlam
f0a2ccd0fb Remove value_type from SetNode. 2022-02-21 02:22:01 +03:00
levlam
9e8b2489bd Keep the first value from initializer_list. 2022-02-21 00:33:19 +03:00
levlam
77ccc13181 Add Map/SetNode::copy_from. 2022-02-20 23:03:34 +03:00
levlam
983cc2c45c Various hash table improvements. 2022-02-19 11:34:43 +03:00
levlam
94289c0c9e Fix SCOPE_EXIT redefinition. 2022-02-18 23:25:23 +03:00
levlam
ae3854d97c Various fixes. 2022-02-18 23:04:25 +03:00
Arseny Smirnov
952ac3ed7c FlatHashMap: add MaskSse2 to benchmark 2022-02-18 00:48:33 +01:00
Arseny Smirnov
a356cc7e3d FlatHashMap: optimizations 2022-02-18 00:30:14 +01:00
Arseny Smirnov
5ff92065bf FlatHashMap: fixes for portability 2022-02-17 20:22:46 +01:00
Arseny Smirnov
34a69e3133 FlatHashMap: add implementation with chunks 2022-02-17 19:40:18 +01:00
levlam
512c0cd3c2 Fix formatting. 2022-02-12 00:48:35 +03:00
Arseny Smirnov
ecceb51881 FlatHashSet 2022-02-11 17:41:40 +01:00
levlam
15f27455c5 Move other big classes inside FlatHashMap to unique_ptr. 2022-02-11 19:27:32 +03:00
levlam
5b4bea1fef Add HashMap build time benchmark. 2022-02-11 14:46:30 +03:00
levlam
6ae2096d68 Fix HashSet benchmark. 2022-02-11 11:26:58 +03:00
Arseny Smirnov
500c20f7ea FlatHashMap: more benchmarks 2022-02-10 22:34:01 +01:00
levlam
b71e330396 Fix tests. 2022-02-11 00:11:02 +03:00
Arseny Smirnov
987e875520 FlatHashMap: support mem_stat->rss in memory benchmark; move memory benchmark in other folder, fix build. 2022-02-10 18:33:23 +01:00
Arseny Smirnov
6bb365567b FlatHashMap: improve memory benchmark 2022-02-10 18:29:52 +01:00
levlam
1a28bbd00c Remove redundant checks from calc_bucket. 2022-02-10 18:30:03 +03:00
Arseny Smirnov
10c59db842 FlatHashMap: simple benchmark for memory usage 2022-02-10 14:37:19 +01:00
Arseny Smirnov
f4b3a09646 FlatHashMap: shrink table if too sparse 2022-02-10 14:37:19 +01:00
levlam
9e6d106585 Minor improvements. 2022-02-10 11:55:32 +03:00
Arseny Smirnov
129d12566d FlatHashMap: add tests 2022-02-09 22:22:51 +01:00
Arseny Smirnov
8d8896d7f0 FlatHashMap: remove_if; generic td::table_remove_if 2022-02-09 22:22:51 +01:00
levlam
4eacaa3ebd FlatHashMap improvements. 2022-02-09 03:08:18 +03:00
Arseny Smirnov
d5e163cd9d FlatHashMap: support initializer_list 2022-02-08 20:47:10 +01:00
Arseny Smirnov
d5db554b70 FlatHashMap: benchmark 2022-02-08 19:38:09 +01:00
levlam
b62ced6d95 Minor improvements. 2022-02-08 00:42:53 +03:00
levlam
bcc2adeb47 Fix includes and formatting. 2022-02-08 00:04:34 +03:00
Arseny Smirnov
86bceb2972 td: replace most of std::unordered_map usages to td::FlatHashMap 2022-02-07 21:21:31 +01:00
Arseny Smirnov
088ce02832 tdutils: FlatHashMap 2022-02-07 21:21:31 +01:00
levlam
0b33522821 Improve ChainScheduler. 2022-02-03 22:01:09 +03:00
levlam
950876b496 Minor improvements. 2022-02-01 18:25:02 +03:00
Arseny Smirnov
24766fdad8 ChainScheduler: pass new test 2022-02-01 16:04:58 +03:00
Arseny Smirnov
b4396f18c6 ChainScheduler: tests and optimizations 2022-02-01 16:02:35 +03:00
levlam
b1b945e239 Minor fixes. 2022-01-31 15:56:44 +03:00
levlam
e7406475ff Fix compilation errors. 2022-01-28 19:12:20 +03:00
Arseny Smirnov
355c2950ad ChainScheduler - new implementation of SequenceDispatcher 2022-01-28 15:50:59 +03:00
levlam
b007cc7a2c Use compressed base64-encoded list of emoji instead of emoji themselves to reduce binary size and stack usage. 2022-01-13 23:43:22 +03:00
levlam
8085779cdc Update copyright year. 2022-01-01 03:35:39 +03:00
levlam
5f965a1ea4 Don't try to use "fr-FR" locale, because check for its existence is
broken with musl: https://www.openwall.com/lists/musl/2017/11/08/1.
2021-12-24 15:12:14 +03:00
levlam
ff6615e734 Fix some misprints. 2021-12-23 14:18:32 +03:00
levlam
a28b5f2fbb Remove explicit verbosity level changes in tests. 2021-11-21 21:41:11 +03:00
levlam
bd733c1c6e Fix CheckExitGuard test. 2021-11-18 17:01:05 +03:00
levlam
42ca2dcef5 Add serialize test. 2021-11-18 16:32:12 +03:00
levlam
bf9c78e982 Fix is_emoji. 2021-11-18 14:37:31 +03:00
levlam
b731414d42 Init some fields just in case. 2021-11-11 17:39:09 +03:00
levlam
5a02af8c72 Use const reference if range-based for if appropriate. 2021-11-10 20:39:35 +03:00
levlam
51cf4baee6 Fix tests compilation without threads. 2021-10-25 10:37:38 +03:00
levlam
c5a2f1570d Remove superflous endif comments. 2021-10-25 10:05:15 +03:00
levlam
f7d073baa4 Fix building with TD_EVENTFD_UNSUPPORTED. 2021-10-25 01:46:39 +03:00
levlam
9f44816a62 Minor improvements. 2021-10-21 12:51:16 +03:00
levlam
1e49f6dc13 Use auto as variable type if it is initialized with a cast. 2021-10-20 01:27:02 +03:00
levlam
e78a5fbecf Explicitly specify namespace td in tdutils tests. 2021-10-14 15:08:35 +03:00
levlam
f5fe132722 Remove unneeded logging in tests. 2021-10-07 16:56:45 +03:00
levlam
3af0059b94 Add is_emoji method. 2021-09-20 22:30:23 +03:00
levlam
84ad2e5b19 Remove redundant semicolons. 2021-08-30 23:27:32 +03:00
levlam
40c5d47717 Make inherited classes final if possible. 2021-07-04 05:58:54 +03:00
levlam
edfa5d1d98 Use final instead of override. 2021-07-03 23:51:36 +03:00
levlam
90e253d90c Remove REGISTER_TESTS define. 2021-05-26 00:41:15 +03:00
levlam
5f0b24926f Split path in HttpUrlQuery. 2021-05-25 04:39:41 +03:00
levlam
200da2c684 Add parse_url_query. 2021-05-24 23:47:18 +03:00
levlam
4cc60bbc25 Move HttpUrl test to separate header. 2021-05-24 23:09:41 +03:00
levlam
7edffa1bc7 Move TsLog out of logging.h. 2021-05-18 17:41:33 +03:00
levlam
674a112bfa Add NullLog.h. 2021-05-18 17:13:26 +03:00
levlam
8231c58335 Rename LogInterface::rotate to after_rotation. 2021-05-17 17:58:33 +03:00
levlam
135f9de4a9 Add CombinedLog.h. 2021-05-17 16:53:35 +03:00
levlam
13a21b4fe2 Make LogInterface::append non-virtual. 2021-05-17 16:18:19 +03:00