Commit Graph

1277 Commits

Author SHA1 Message Date
levlam
572455ea54 Simplify and optimize character printing in format.h. 2023-08-08 17:18:21 +03:00
levlam
7532774bf0 Use append_utf8_character_unsafe in json_string_decode. 2023-08-08 16:33:37 +03:00
levlam
7887bbdb35 Optimize json_string_skip. 2023-08-08 16:26:28 +03:00
levlam
2bc8ec27df Optimize json_string_decode by 30-400%. 2023-08-08 16:14:04 +03:00
levlam
23267aff5d Add one more JSON string decode benchmark. 2023-08-08 16:11:38 +03:00
levlam
b5fbac9643 Add test for json_string_decode. 2023-08-08 16:02:49 +03:00
levlam
c8aa729905 Add json_string_decode benchmark. 2023-08-08 03:13:43 +03:00
levlam
28961b7d0e Add more common.h includes. 2023-08-05 16:09:36 +03:00
levlam
830da27abf Minor improvements. 2023-08-05 15:31:42 +03:00
levlam
b8859da77d Disallow JsonObject copying. 2023-07-31 20:01:02 +03:00
levlam
dd68528ae4 Add JsonObject constructor. 2023-07-31 19:47:55 +03:00
levlam
a7b6f55d7a Add and use JsonObject::foreach. 2023-07-31 19:38:53 +03:00
levlam
a5a408290e Add field getters to JsonObject class. 2023-07-31 16:30:39 +03:00
levlam
44d4fcfa07 Add test for get_json_object_*_field. 2023-07-31 15:54:36 +03:00
levlam
6d05e8af6e Make object const in get_json_object_*_field. 2023-07-31 15:37:54 +03:00
levlam
43941c1e69 Add JsonObject::field_count. 2023-07-31 13:33:35 +03:00
levlam
59044294a8 Make JsonObject class. 2023-07-31 13:31:48 +03:00
levlam
86ecb3db18 Fix compilation error. 2023-07-29 17:55:05 +03:00
levlam
75b0f28d45 Fix GCC compilation error. 2023-07-29 02:41:29 +03:00
levlam
070399c89a Add combine_hashes function. 2023-07-27 19:05:15 +03:00
levlam
b914b28bf0 Use FlatHashMap instead of unordered_map in ChainScheduler. 2023-07-27 14:18:39 +03:00
levlam
d8116aa796 Use FlatHashMap for limited_tasks_ in ChainScheduler. 2023-07-27 14:03:39 +03:00
levlam
aa59e4cbd7 Avoid big memory consumption in ConcurrentHashMap benchmark with n = 1 << 27 when the benchmark ends very fast. 2023-07-26 20:45:52 +03:00
levlam
cfe47b6cc2 Disable MpmcSleepyWaiter_stress_one_one test. 2023-07-26 19:45:10 +03:00
levlam
65710fcec6 Inline zero_encode implementation to speed up it 25% more. 2023-07-26 15:07:15 +03:00
levlam
c50afa3820 Optimize zero_encode. 2023-07-26 14:58:08 +03:00
levlam
69c2315c10 Add zero_encode benchamrk. 2023-07-26 14:40:36 +03:00
levlam
4c2859b85c Add test for zero_encode. 2023-07-26 14:21:27 +03:00
levlam
44c58ee242 Move logging of OS freezes to WARNING. 2023-07-22 14:06:57 +03:00
levlam
2bf47d0809 Minor fixes. 2023-07-01 16:22:01 +03:00
levlam
e3256e7b4c Use td::append if possible. 2023-06-10 23:14:03 +03:00
levlam
328cf83c4d Allow all ZWJ sequence as valid emoji. 2023-05-29 17:15:48 +03:00
levlam
348a209ab7 Fix includes. 2023-05-18 14:33:00 +03:00
levlam
46b6ba578f Add FlatHashSet initialization test. 2023-05-18 13:51:27 +03:00
levlam
bd480941a1 Fix AsyncFileLog test. 2023-05-18 13:09:59 +03:00
levlam
3d06cdd94e Add --offset parameter to TestRunner. 2023-05-18 12:52:30 +03:00
levlam
f3a1407f8f Simplify constant FlatHashSet initialization. 2023-05-18 02:03:39 +03:00
levlam
7bea39b6fa Improve is_emoji. 2023-05-17 20:04:12 +03:00
levlam
f900fc2480 Remove unused Status::Error(). 2023-05-17 13:50:36 +03:00
levlam
d93c06fceb Remove unsafe Status::operator==. 2023-05-17 13:45:26 +03:00
levlam
6f94c363f7 Add Enumerator benchmark. 2023-05-10 14:35:21 +03:00
levlam
018f8022f7 More consistently delete or default move/copy constructor/assignment. 2023-05-05 14:31:55 +03:00
levlam
dbcf3e5eec Use more empty names for unused parameters. 2023-05-05 14:18:46 +03:00
levlam
c0911577f7 Use empty name for unused move constructor/assignment parameter. 2023-05-05 13:51:19 +03:00
levlam
14eda7a97c Fix MpscPollableQueue:is_empty. 2023-04-30 16:54:55 +03:00
levlam
7e60c440ff Delete temporary files after test finish. 2023-04-23 02:01:51 +03:00
levlam
4b7c1aee03 Add and use Random::shuffle. 2023-04-19 10:02:34 +03:00
levlam
af54239018 Workaround MSVC 2015 compilation error. 2023-04-19 01:40:12 +03:00
levlam
d1c25f2135 Fix compilation error. 2023-04-04 16:39:20 +03:00
levlam
fd217d1b3e Add more BufferedFd logging. 2023-04-04 15:31:40 +03:00
levlam
4ee61aae2b Improve error messages and documentation. 2023-03-31 15:01:38 +03:00
levlam
511689877c Improve some log messages. 2023-03-22 19:29:33 +03:00
levlam
b5fe088574 Avoid the use of low-numbered file descriptors for sockets. 2023-03-21 13:54:43 +03:00
levlam
28362c1879 Avoid duplicate is_error() check in TRY_STATUS/TRY_RESULT. 2023-03-21 13:30:42 +03:00
levlam
489e5dbc62 Add debug logging. 2023-03-14 22:43:28 +03:00
levlam
7e4f349da8 Move EFAULT to the list of expected errors for ::read. 2023-03-09 00:05:44 +03:00
levlam
a8d0459827 Remove duplicated fields from log message. 2023-03-08 17:23:27 +03:00
levlam
e7242b1188 Fix includes. 2023-03-06 20:36:56 +03:00
levlam
d4646d4cd9 Minor improvements. 2023-03-06 16:59:18 +03:00
levlam
2c86bc719b Improve test assertion messages. 2023-03-02 17:35:57 +03:00
levlam
1c43f3844b Disallow to_string for bool. 2023-02-22 14:53:48 +03:00
levlam
22fdc0258b Use "receive"/"have"/"loaded" instead of "got" and other log message improvements. 2023-02-26 14:22:31 +03:00
levlam
ffcc1719ef Improve log message spelling. 2023-02-26 13:41:49 +03:00
levlam
ee4ecbc0be Avoid the use of low-numbered file descriptors. 2023-02-13 14:40:36 +03:00
levlam
852a1640b0 Fix FileFd::sync_barrier. 2023-02-10 15:17:07 +03:00
Arseny Smirnov
a0dd1e1a07 FileFd::sync_barrier uses F_BARRIERFSYNC on darwin 2023-02-10 12:17:56 +01:00
levlam
7eee3f469a Update clang-format to 16.0.0. 2023-02-08 15:28:36 +03:00
levlam
a08b1f9107 Use __is_trivially_copyable if possible. 2023-02-07 13:13:56 +03:00
levlam
5ed796cd57 Improve CRC spelling. 2023-02-03 08:27:26 +03:00
levlam
0adcac246a Use explicit as_mutable_slice to get MutableSlice. 2023-02-02 17:40:47 +03:00
levlam
4d70d1e920 Minor improvements. 2023-01-31 13:33:30 +03:00
levlam
9555bfc16c Add test for parse_url. 2023-01-30 15:29:01 +03:00
levlam
e2d079860d Add userinfo characters check. 2023-01-30 13:40:09 +03:00
levlam
587a882270 Don't remove emoji selectors in search_stickers. 2023-01-23 22:10:23 +03:00
levlam
345709f1ff Store StickerPhotoSize in unique_ptr to optimize Photo size. 2023-01-23 00:57:40 +03:00
levlam
201af22ef2 Add unique_value_ptr. 2023-01-22 23:36:30 +03:00
levlam
5b451f7e11 Allow redundant 0xFE0F after emoji. 2023-01-18 18:22:41 +03:00
levlam
1588f0d687 Return after call to on_error. 2023-01-18 17:10:08 +03:00
levlam
ad8f0c4146 Improve some spelling. 2023-01-16 12:59:43 +03:00
levlam
8d8f72a17a Fix some lower-case spelling. 2023-01-15 12:00:26 +03:00
levlam
052d5e120b Improve some mixed-case spelling. 2023-01-15 11:25:54 +03:00
levlam
e87e18c8be Use busy-waiting instead of short Sleep on Windows. 2023-01-11 13:52:46 +03:00
levlam
853030e999 Don't use FILE_FLAG_OPEN_REPARSE_POINT with UWP. 2023-01-10 22:56:11 +03:00
levlam
137fd3beb9 Replace text in-place in parse_html. 2023-01-09 15:12:14 +03:00
levlam
0fb64f97a4 Use StringBuilder to create new string in parse_html. 2023-01-09 12:43:15 +03:00
levlam
d12ca158c4 Add constant methods to td::Container. 2023-01-06 14:54:54 +03:00
levlam
651f49fc90 Delete symbolic links in rmrf. 2023-01-05 16:46:39 +03:00
levlam
3573990d52 Support symbolic links in walk_path. 2023-01-04 17:25:30 +03:00
levlam
8df67f0c3a Add Stat.is_symbolic_link_. 2023-01-04 16:39:33 +03:00
levlam
903d994799 Improve punctuation. 2023-01-02 15:38:04 +03:00
levlam
8b763bedaf Move random_shuffle to tests.h. 2023-01-02 14:29:03 +03:00
levlam
cf1984844b Update copyright year. 2023-01-01 00:28:08 +03:00
levlam
d2060a2eb3 Improve log messages with time. 2022-12-11 01:32:46 +03:00
levlam
b11a5b8ad4 Fix log size after rotation. 2022-11-29 17:39:46 +03:00
levlam
ed1457b69b Use std:🧵:native_handle() only for MSVC, because it is unsafe to assume native_handle_type otherwise. 2022-11-26 02:48:43 +03:00
Eric Kotato
b281a719fa
Fix MinGW threading compilation error (#2210) 2022-11-26 00:36:48 +03:00
levlam
3ec53c8d78 Fix compilation error. 2022-11-24 15:25:15 +03:00
levlam
276b654f27 Return back randomize_hash to WaitFreeHashMap. 2022-11-24 02:09:04 +03:00
levlam
af05db3f15 Add td::Hash and use it everywhere instead of unusable std::hash. 2022-11-23 19:37:32 +03:00
levlam
b1ddf9d3a7 Minor fixes. 2022-11-23 16:32:09 +03:00