@nxtedition/rocksdb 15.1.5 → 15.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1705) hide show
  1. package/.claude/settings.local.json +5 -1
  2. package/binding.cc +84 -47
  3. package/binding.gyp +102 -2
  4. package/deps/abseil-cpp/BUILD.bazel +35 -0
  5. package/deps/abseil-cpp/CMake/AbseilDll.cmake +938 -0
  6. package/deps/abseil-cpp/CMake/AbseilHelpers.cmake +465 -0
  7. package/deps/abseil-cpp/CMake/Googletest/CMakeLists.txt.in +14 -0
  8. package/deps/abseil-cpp/CMake/Googletest/DownloadGTest.cmake +41 -0
  9. package/deps/abseil-cpp/CMake/abslConfig.cmake.in +8 -0
  10. package/deps/abseil-cpp/CMake/install_test_project/CMakeLists.txt +25 -0
  11. package/deps/abseil-cpp/CMake/install_test_project/simple.cc +32 -0
  12. package/deps/abseil-cpp/CMake/install_test_project/test.sh +113 -0
  13. package/deps/abseil-cpp/CMakeLists.txt +280 -0
  14. package/deps/abseil-cpp/LICENSE +203 -0
  15. package/deps/abseil-cpp/MODULE.bazel +43 -0
  16. package/deps/abseil-cpp/PrivacyInfo.xcprivacy +14 -0
  17. package/deps/abseil-cpp/absl/BUILD.bazel +62 -0
  18. package/deps/abseil-cpp/absl/CMakeLists.txt +45 -0
  19. package/deps/abseil-cpp/absl/abseil.podspec.gen.py +245 -0
  20. package/deps/abseil-cpp/absl/algorithm/BUILD.bazel +92 -0
  21. package/deps/abseil-cpp/absl/algorithm/CMakeLists.txt +72 -0
  22. package/deps/abseil-cpp/absl/algorithm/algorithm.h +64 -0
  23. package/deps/abseil-cpp/absl/algorithm/algorithm_test.cc +60 -0
  24. package/deps/abseil-cpp/absl/algorithm/container.h +1864 -0
  25. package/deps/abseil-cpp/absl/algorithm/container_test.cc +2232 -0
  26. package/deps/abseil-cpp/absl/base/BUILD.bazel +1036 -0
  27. package/deps/abseil-cpp/absl/base/CMakeLists.txt +881 -0
  28. package/deps/abseil-cpp/absl/base/attributes.h +1081 -0
  29. package/deps/abseil-cpp/absl/base/attributes_test.cc +43 -0
  30. package/deps/abseil-cpp/absl/base/bit_cast_test.cc +109 -0
  31. package/deps/abseil-cpp/absl/base/c_header_test.c +30 -0
  32. package/deps/abseil-cpp/absl/base/call_once.h +228 -0
  33. package/deps/abseil-cpp/absl/base/call_once_test.cc +107 -0
  34. package/deps/abseil-cpp/absl/base/casts.cc +61 -0
  35. package/deps/abseil-cpp/absl/base/casts.h +313 -0
  36. package/deps/abseil-cpp/absl/base/casts_test.cc +148 -0
  37. package/deps/abseil-cpp/absl/base/config.h +854 -0
  38. package/deps/abseil-cpp/absl/base/config_test.cc +60 -0
  39. package/deps/abseil-cpp/absl/base/const_init.h +76 -0
  40. package/deps/abseil-cpp/absl/base/dynamic_annotations.h +480 -0
  41. package/deps/abseil-cpp/absl/base/exception_safety_testing_test.cc +958 -0
  42. package/deps/abseil-cpp/absl/base/fast_type_id.h +73 -0
  43. package/deps/abseil-cpp/absl/base/fast_type_id_test.cc +130 -0
  44. package/deps/abseil-cpp/absl/base/internal/atomic_hook.h +200 -0
  45. package/deps/abseil-cpp/absl/base/internal/atomic_hook_test.cc +97 -0
  46. package/deps/abseil-cpp/absl/base/internal/atomic_hook_test_helper.cc +32 -0
  47. package/deps/abseil-cpp/absl/base/internal/atomic_hook_test_helper.h +34 -0
  48. package/deps/abseil-cpp/absl/base/internal/cmake_thread_test.cc +22 -0
  49. package/deps/abseil-cpp/absl/base/internal/cycleclock.cc +72 -0
  50. package/deps/abseil-cpp/absl/base/internal/cycleclock.h +144 -0
  51. package/deps/abseil-cpp/absl/base/internal/cycleclock_config.h +55 -0
  52. package/deps/abseil-cpp/absl/base/internal/direct_mmap.h +170 -0
  53. package/deps/abseil-cpp/absl/base/internal/dynamic_annotations.h +398 -0
  54. package/deps/abseil-cpp/absl/base/internal/endian.h +279 -0
  55. package/deps/abseil-cpp/absl/base/internal/endian_test.cc +263 -0
  56. package/deps/abseil-cpp/absl/base/internal/errno_saver.h +43 -0
  57. package/deps/abseil-cpp/absl/base/internal/errno_saver_test.cc +45 -0
  58. package/deps/abseil-cpp/absl/base/internal/exception_safety_testing.cc +79 -0
  59. package/deps/abseil-cpp/absl/base/internal/exception_safety_testing.h +1109 -0
  60. package/deps/abseil-cpp/absl/base/internal/exception_testing.h +42 -0
  61. package/deps/abseil-cpp/absl/base/internal/hide_ptr.h +51 -0
  62. package/deps/abseil-cpp/absl/base/internal/iterator_traits.h +75 -0
  63. package/deps/abseil-cpp/absl/base/internal/iterator_traits_test.cc +85 -0
  64. package/deps/abseil-cpp/absl/base/internal/iterator_traits_test_helper.h +97 -0
  65. package/deps/abseil-cpp/absl/base/internal/low_level_alloc.cc +661 -0
  66. package/deps/abseil-cpp/absl/base/internal/low_level_alloc.h +133 -0
  67. package/deps/abseil-cpp/absl/base/internal/low_level_alloc_test.cc +180 -0
  68. package/deps/abseil-cpp/absl/base/internal/low_level_scheduling.h +134 -0
  69. package/deps/abseil-cpp/absl/base/internal/nullability_traits.h +71 -0
  70. package/deps/abseil-cpp/absl/base/internal/nullability_traits_test.cc +98 -0
  71. package/deps/abseil-cpp/absl/base/internal/per_thread_tls.h +52 -0
  72. package/deps/abseil-cpp/absl/base/internal/poison.cc +85 -0
  73. package/deps/abseil-cpp/absl/base/internal/poison.h +59 -0
  74. package/deps/abseil-cpp/absl/base/internal/poison_test.cc +41 -0
  75. package/deps/abseil-cpp/absl/base/internal/pretty_function.h +33 -0
  76. package/deps/abseil-cpp/absl/base/internal/raw_logging.cc +279 -0
  77. package/deps/abseil-cpp/absl/base/internal/raw_logging.h +217 -0
  78. package/deps/abseil-cpp/absl/base/internal/scheduling_mode.h +58 -0
  79. package/deps/abseil-cpp/absl/base/internal/scoped_set_env.cc +81 -0
  80. package/deps/abseil-cpp/absl/base/internal/scoped_set_env.h +45 -0
  81. package/deps/abseil-cpp/absl/base/internal/scoped_set_env_test.cc +99 -0
  82. package/deps/abseil-cpp/absl/base/internal/spinlock.cc +225 -0
  83. package/deps/abseil-cpp/absl/base/internal/spinlock.h +310 -0
  84. package/deps/abseil-cpp/absl/base/internal/spinlock_akaros.inc +35 -0
  85. package/deps/abseil-cpp/absl/base/internal/spinlock_benchmark.cc +80 -0
  86. package/deps/abseil-cpp/absl/base/internal/spinlock_linux.inc +71 -0
  87. package/deps/abseil-cpp/absl/base/internal/spinlock_posix.inc +46 -0
  88. package/deps/abseil-cpp/absl/base/internal/spinlock_wait.cc +81 -0
  89. package/deps/abseil-cpp/absl/base/internal/spinlock_wait.h +95 -0
  90. package/deps/abseil-cpp/absl/base/internal/spinlock_win32.inc +40 -0
  91. package/deps/abseil-cpp/absl/base/internal/strerror.cc +88 -0
  92. package/deps/abseil-cpp/absl/base/internal/strerror.h +39 -0
  93. package/deps/abseil-cpp/absl/base/internal/strerror_benchmark.cc +29 -0
  94. package/deps/abseil-cpp/absl/base/internal/strerror_test.cc +89 -0
  95. package/deps/abseil-cpp/absl/base/internal/sysinfo.cc +494 -0
  96. package/deps/abseil-cpp/absl/base/internal/sysinfo.h +74 -0
  97. package/deps/abseil-cpp/absl/base/internal/sysinfo_test.cc +82 -0
  98. package/deps/abseil-cpp/absl/base/internal/thread_identity.cc +163 -0
  99. package/deps/abseil-cpp/absl/base/internal/thread_identity.h +273 -0
  100. package/deps/abseil-cpp/absl/base/internal/thread_identity_benchmark.cc +38 -0
  101. package/deps/abseil-cpp/absl/base/internal/thread_identity_test.cc +129 -0
  102. package/deps/abseil-cpp/absl/base/internal/throw_delegate.cc +203 -0
  103. package/deps/abseil-cpp/absl/base/internal/throw_delegate.h +75 -0
  104. package/deps/abseil-cpp/absl/base/internal/tracing.cc +39 -0
  105. package/deps/abseil-cpp/absl/base/internal/tracing.h +81 -0
  106. package/deps/abseil-cpp/absl/base/internal/tracing_strong_test.cc +117 -0
  107. package/deps/abseil-cpp/absl/base/internal/tracing_weak_test.cc +34 -0
  108. package/deps/abseil-cpp/absl/base/internal/tsan_mutex_interface.h +68 -0
  109. package/deps/abseil-cpp/absl/base/internal/unaligned_access.h +89 -0
  110. package/deps/abseil-cpp/absl/base/internal/unique_small_name_test.cc +77 -0
  111. package/deps/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +134 -0
  112. package/deps/abseil-cpp/absl/base/internal/unscaledcycleclock.h +113 -0
  113. package/deps/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +62 -0
  114. package/deps/abseil-cpp/absl/base/log_severity.cc +56 -0
  115. package/deps/abseil-cpp/absl/base/log_severity.h +185 -0
  116. package/deps/abseil-cpp/absl/base/log_severity_test.cc +251 -0
  117. package/deps/abseil-cpp/absl/base/macros.h +243 -0
  118. package/deps/abseil-cpp/absl/base/no_destructor.h +191 -0
  119. package/deps/abseil-cpp/absl/base/no_destructor_benchmark.cc +165 -0
  120. package/deps/abseil-cpp/absl/base/no_destructor_test.cc +205 -0
  121. package/deps/abseil-cpp/absl/base/nullability.h +317 -0
  122. package/deps/abseil-cpp/absl/base/nullability_default_nonnull_test.cc +44 -0
  123. package/deps/abseil-cpp/absl/base/nullability_test.cc +90 -0
  124. package/deps/abseil-cpp/absl/base/optimization.h +310 -0
  125. package/deps/abseil-cpp/absl/base/optimization_test.cc +141 -0
  126. package/deps/abseil-cpp/absl/base/options.h +158 -0
  127. package/deps/abseil-cpp/absl/base/policy_checks.h +115 -0
  128. package/deps/abseil-cpp/absl/base/port.h +25 -0
  129. package/deps/abseil-cpp/absl/base/prefetch.h +209 -0
  130. package/deps/abseil-cpp/absl/base/prefetch_test.cc +64 -0
  131. package/deps/abseil-cpp/absl/base/raw_logging_test.cc +98 -0
  132. package/deps/abseil-cpp/absl/base/spinlock_test_common.cc +302 -0
  133. package/deps/abseil-cpp/absl/base/thread_annotations.h +333 -0
  134. package/deps/abseil-cpp/absl/base/throw_delegate_test.cc +175 -0
  135. package/deps/abseil-cpp/absl/cleanup/BUILD.bazel +74 -0
  136. package/deps/abseil-cpp/absl/cleanup/CMakeLists.txt +55 -0
  137. package/deps/abseil-cpp/absl/cleanup/cleanup.h +142 -0
  138. package/deps/abseil-cpp/absl/cleanup/cleanup_test.cc +309 -0
  139. package/deps/abseil-cpp/absl/cleanup/internal/cleanup.h +99 -0
  140. package/deps/abseil-cpp/absl/container/BUILD.bazel +1394 -0
  141. package/deps/abseil-cpp/absl/container/CMakeLists.txt +1239 -0
  142. package/deps/abseil-cpp/absl/container/btree_benchmark.cc +806 -0
  143. package/deps/abseil-cpp/absl/container/btree_map.h +941 -0
  144. package/deps/abseil-cpp/absl/container/btree_set.h +872 -0
  145. package/deps/abseil-cpp/absl/container/btree_test.cc +3653 -0
  146. package/deps/abseil-cpp/absl/container/btree_test.h +166 -0
  147. package/deps/abseil-cpp/absl/container/chunked_queue.h +755 -0
  148. package/deps/abseil-cpp/absl/container/chunked_queue_benchmark.cc +386 -0
  149. package/deps/abseil-cpp/absl/container/chunked_queue_test.cc +768 -0
  150. package/deps/abseil-cpp/absl/container/fixed_array.h +547 -0
  151. package/deps/abseil-cpp/absl/container/fixed_array_benchmark.cc +67 -0
  152. package/deps/abseil-cpp/absl/container/fixed_array_exception_safety_test.cc +201 -0
  153. package/deps/abseil-cpp/absl/container/fixed_array_test.cc +874 -0
  154. package/deps/abseil-cpp/absl/container/flat_hash_map.h +702 -0
  155. package/deps/abseil-cpp/absl/container/flat_hash_map_test.cc +451 -0
  156. package/deps/abseil-cpp/absl/container/flat_hash_set.h +590 -0
  157. package/deps/abseil-cpp/absl/container/flat_hash_set_test.cc +401 -0
  158. package/deps/abseil-cpp/absl/container/hash_container_defaults.h +45 -0
  159. package/deps/abseil-cpp/absl/container/inlined_vector.h +1025 -0
  160. package/deps/abseil-cpp/absl/container/inlined_vector_benchmark.cc +829 -0
  161. package/deps/abseil-cpp/absl/container/inlined_vector_exception_safety_test.cc +508 -0
  162. package/deps/abseil-cpp/absl/container/inlined_vector_test.cc +2278 -0
  163. package/deps/abseil-cpp/absl/container/internal/btree.h +3149 -0
  164. package/deps/abseil-cpp/absl/container/internal/btree_container.h +876 -0
  165. package/deps/abseil-cpp/absl/container/internal/chunked_queue.h +173 -0
  166. package/deps/abseil-cpp/absl/container/internal/common.h +301 -0
  167. package/deps/abseil-cpp/absl/container/internal/common_policy_traits.h +151 -0
  168. package/deps/abseil-cpp/absl/container/internal/common_policy_traits_test.cc +157 -0
  169. package/deps/abseil-cpp/absl/container/internal/compressed_tuple.h +275 -0
  170. package/deps/abseil-cpp/absl/container/internal/compressed_tuple_test.cc +469 -0
  171. package/deps/abseil-cpp/absl/container/internal/container_memory.h +561 -0
  172. package/deps/abseil-cpp/absl/container/internal/container_memory_test.cc +359 -0
  173. package/deps/abseil-cpp/absl/container/internal/hash_function_defaults.h +281 -0
  174. package/deps/abseil-cpp/absl/container/internal/hash_function_defaults_test.cc +633 -0
  175. package/deps/abseil-cpp/absl/container/internal/hash_generator_testing.cc +54 -0
  176. package/deps/abseil-cpp/absl/container/internal/hash_generator_testing.h +172 -0
  177. package/deps/abseil-cpp/absl/container/internal/hash_policy_testing.h +173 -0
  178. package/deps/abseil-cpp/absl/container/internal/hash_policy_testing_test.cc +45 -0
  179. package/deps/abseil-cpp/absl/container/internal/hash_policy_traits.h +195 -0
  180. package/deps/abseil-cpp/absl/container/internal/hash_policy_traits_test.cc +149 -0
  181. package/deps/abseil-cpp/absl/container/internal/hashtable_control_bytes.h +527 -0
  182. package/deps/abseil-cpp/absl/container/internal/hashtable_control_bytes_test.cc +259 -0
  183. package/deps/abseil-cpp/absl/container/internal/hashtable_debug.h +102 -0
  184. package/deps/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h +85 -0
  185. package/deps/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +316 -0
  186. package/deps/abseil-cpp/absl/container/internal/hashtablez_sampler.h +311 -0
  187. package/deps/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +31 -0
  188. package/deps/abseil-cpp/absl/container/internal/hashtablez_sampler_test.cc +534 -0
  189. package/deps/abseil-cpp/absl/container/internal/heterogeneous_lookup_testing.h +80 -0
  190. package/deps/abseil-cpp/absl/container/internal/inlined_vector.h +1094 -0
  191. package/deps/abseil-cpp/absl/container/internal/layout.h +828 -0
  192. package/deps/abseil-cpp/absl/container/internal/layout_benchmark.cc +295 -0
  193. package/deps/abseil-cpp/absl/container/internal/layout_test.cc +2034 -0
  194. package/deps/abseil-cpp/absl/container/internal/node_slot_policy.h +95 -0
  195. package/deps/abseil-cpp/absl/container/internal/node_slot_policy_test.cc +71 -0
  196. package/deps/abseil-cpp/absl/container/internal/raw_hash_map.h +382 -0
  197. package/deps/abseil-cpp/absl/container/internal/raw_hash_set.cc +2090 -0
  198. package/deps/abseil-cpp/absl/container/internal/raw_hash_set.h +3763 -0
  199. package/deps/abseil-cpp/absl/container/internal/raw_hash_set_allocator_test.cc +525 -0
  200. package/deps/abseil-cpp/absl/container/internal/raw_hash_set_benchmark.cc +696 -0
  201. package/deps/abseil-cpp/absl/container/internal/raw_hash_set_probe_benchmark.cc +583 -0
  202. package/deps/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl.h +79 -0
  203. package/deps/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl_test.cc +66 -0
  204. package/deps/abseil-cpp/absl/container/internal/raw_hash_set_test.cc +4184 -0
  205. package/deps/abseil-cpp/absl/container/internal/test_allocator.h +387 -0
  206. package/deps/abseil-cpp/absl/container/internal/test_instance_tracker.cc +29 -0
  207. package/deps/abseil-cpp/absl/container/internal/test_instance_tracker.h +274 -0
  208. package/deps/abseil-cpp/absl/container/internal/test_instance_tracker_test.cc +184 -0
  209. package/deps/abseil-cpp/absl/container/internal/tracked.h +83 -0
  210. package/deps/abseil-cpp/absl/container/internal/unordered_map_constructor_test.h +435 -0
  211. package/deps/abseil-cpp/absl/container/internal/unordered_map_lookup_test.h +112 -0
  212. package/deps/abseil-cpp/absl/container/internal/unordered_map_members_test.h +87 -0
  213. package/deps/abseil-cpp/absl/container/internal/unordered_map_modifiers_test.h +336 -0
  214. package/deps/abseil-cpp/absl/container/internal/unordered_map_test.cc +50 -0
  215. package/deps/abseil-cpp/absl/container/internal/unordered_set_constructor_test.h +437 -0
  216. package/deps/abseil-cpp/absl/container/internal/unordered_set_lookup_test.h +88 -0
  217. package/deps/abseil-cpp/absl/container/internal/unordered_set_members_test.h +86 -0
  218. package/deps/abseil-cpp/absl/container/internal/unordered_set_modifiers_test.h +215 -0
  219. package/deps/abseil-cpp/absl/container/internal/unordered_set_test.cc +41 -0
  220. package/deps/abseil-cpp/absl/container/linked_hash_map.h +666 -0
  221. package/deps/abseil-cpp/absl/container/linked_hash_map_benchmark.cc +140 -0
  222. package/deps/abseil-cpp/absl/container/linked_hash_map_test.cc +987 -0
  223. package/deps/abseil-cpp/absl/container/linked_hash_set.h +527 -0
  224. package/deps/abseil-cpp/absl/container/linked_hash_set_benchmark.cc +84 -0
  225. package/deps/abseil-cpp/absl/container/linked_hash_set_test.cc +947 -0
  226. package/deps/abseil-cpp/absl/container/node_hash_map.h +698 -0
  227. package/deps/abseil-cpp/absl/container/node_hash_map_test.cc +348 -0
  228. package/deps/abseil-cpp/absl/container/node_hash_set.h +589 -0
  229. package/deps/abseil-cpp/absl/container/node_hash_set_test.cc +188 -0
  230. package/deps/abseil-cpp/absl/container/sample_element_size_test.cc +118 -0
  231. package/deps/abseil-cpp/absl/copts/AbseilConfigureCopts.cmake +106 -0
  232. package/deps/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake +303 -0
  233. package/deps/abseil-cpp/absl/copts/GENERATED_copts.bzl +304 -0
  234. package/deps/abseil-cpp/absl/copts/configure_copts.bzl +39 -0
  235. package/deps/abseil-cpp/absl/copts/copts.py +205 -0
  236. package/deps/abseil-cpp/absl/copts/generate_copts.py +109 -0
  237. package/deps/abseil-cpp/absl/crc/BUILD.bazel +228 -0
  238. package/deps/abseil-cpp/absl/crc/CMakeLists.txt +177 -0
  239. package/deps/abseil-cpp/absl/crc/crc32c.cc +95 -0
  240. package/deps/abseil-cpp/absl/crc/crc32c.h +192 -0
  241. package/deps/abseil-cpp/absl/crc/crc32c_benchmark.cc +196 -0
  242. package/deps/abseil-cpp/absl/crc/crc32c_test.cc +257 -0
  243. package/deps/abseil-cpp/absl/crc/internal/cpu_detect.cc +359 -0
  244. package/deps/abseil-cpp/absl/crc/internal/cpu_detect.h +69 -0
  245. package/deps/abseil-cpp/absl/crc/internal/crc.cc +435 -0
  246. package/deps/abseil-cpp/absl/crc/internal/crc.h +83 -0
  247. package/deps/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +278 -0
  248. package/deps/abseil-cpp/absl/crc/internal/crc32c.h +39 -0
  249. package/deps/abseil-cpp/absl/crc/internal/crc32c_inline.h +72 -0
  250. package/deps/abseil-cpp/absl/crc/internal/crc_cord_state.cc +131 -0
  251. package/deps/abseil-cpp/absl/crc/internal/crc_cord_state.h +159 -0
  252. package/deps/abseil-cpp/absl/crc/internal/crc_cord_state_test.cc +124 -0
  253. package/deps/abseil-cpp/absl/crc/internal/crc_internal.h +161 -0
  254. package/deps/abseil-cpp/absl/crc/internal/crc_memcpy.h +122 -0
  255. package/deps/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +78 -0
  256. package/deps/abseil-cpp/absl/crc/internal/crc_memcpy_test.cc +177 -0
  257. package/deps/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc +459 -0
  258. package/deps/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +93 -0
  259. package/deps/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +762 -0
  260. package/deps/abseil-cpp/absl/crc/internal/gen_crc32c_consts.py +90 -0
  261. package/deps/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +81 -0
  262. package/deps/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +195 -0
  263. package/deps/abseil-cpp/absl/crc/internal/non_temporal_memcpy_test.cc +90 -0
  264. package/deps/abseil-cpp/absl/debugging/BUILD.bazel +483 -0
  265. package/deps/abseil-cpp/absl/debugging/CMakeLists.txt +448 -0
  266. package/deps/abseil-cpp/absl/debugging/failure_signal_handler.cc +434 -0
  267. package/deps/abseil-cpp/absl/debugging/failure_signal_handler.h +121 -0
  268. package/deps/abseil-cpp/absl/debugging/failure_signal_handler_test.cc +166 -0
  269. package/deps/abseil-cpp/absl/debugging/internal/address_is_readable.cc +98 -0
  270. package/deps/abseil-cpp/absl/debugging/internal/address_is_readable.h +32 -0
  271. package/deps/abseil-cpp/absl/debugging/internal/addresses.h +57 -0
  272. package/deps/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer.cc +118 -0
  273. package/deps/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer.h +71 -0
  274. package/deps/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer_test.cc +97 -0
  275. package/deps/abseil-cpp/absl/debugging/internal/bounded_utf8_length_sequence.h +126 -0
  276. package/deps/abseil-cpp/absl/debugging/internal/bounded_utf8_length_sequence_test.cc +126 -0
  277. package/deps/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc +258 -0
  278. package/deps/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h +55 -0
  279. package/deps/abseil-cpp/absl/debugging/internal/decode_rust_punycode_test.cc +606 -0
  280. package/deps/abseil-cpp/absl/debugging/internal/demangle.cc +2958 -0
  281. package/deps/abseil-cpp/absl/debugging/internal/demangle.h +76 -0
  282. package/deps/abseil-cpp/absl/debugging/internal/demangle_rust.cc +925 -0
  283. package/deps/abseil-cpp/absl/debugging/internal/demangle_rust.h +42 -0
  284. package/deps/abseil-cpp/absl/debugging/internal/demangle_rust_test.cc +584 -0
  285. package/deps/abseil-cpp/absl/debugging/internal/demangle_test.cc +2050 -0
  286. package/deps/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +413 -0
  287. package/deps/abseil-cpp/absl/debugging/internal/elf_mem_image.h +141 -0
  288. package/deps/abseil-cpp/absl/debugging/internal/examine_stack.cc +334 -0
  289. package/deps/abseil-cpp/absl/debugging/internal/examine_stack.h +70 -0
  290. package/deps/abseil-cpp/absl/debugging/internal/stack_consumption.cc +206 -0
  291. package/deps/abseil-cpp/absl/debugging/internal/stack_consumption.h +50 -0
  292. package/deps/abseil-cpp/absl/debugging/internal/stack_consumption_test.cc +50 -0
  293. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +288 -0
  294. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +148 -0
  295. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_config.h +96 -0
  296. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +112 -0
  297. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +114 -0
  298. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +270 -0
  299. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +204 -0
  300. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +25 -0
  301. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +81 -0
  302. package/deps/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +410 -0
  303. package/deps/abseil-cpp/absl/debugging/internal/symbolize.h +153 -0
  304. package/deps/abseil-cpp/absl/debugging/internal/utf8_for_code_point.cc +70 -0
  305. package/deps/abseil-cpp/absl/debugging/internal/utf8_for_code_point.h +47 -0
  306. package/deps/abseil-cpp/absl/debugging/internal/utf8_for_code_point_test.cc +175 -0
  307. package/deps/abseil-cpp/absl/debugging/internal/vdso_support.cc +209 -0
  308. package/deps/abseil-cpp/absl/debugging/internal/vdso_support.h +158 -0
  309. package/deps/abseil-cpp/absl/debugging/leak_check.cc +73 -0
  310. package/deps/abseil-cpp/absl/debugging/leak_check.h +150 -0
  311. package/deps/abseil-cpp/absl/debugging/leak_check_fail_test.cc +41 -0
  312. package/deps/abseil-cpp/absl/debugging/leak_check_test.cc +41 -0
  313. package/deps/abseil-cpp/absl/debugging/stacktrace.cc +244 -0
  314. package/deps/abseil-cpp/absl/debugging/stacktrace.h +302 -0
  315. package/deps/abseil-cpp/absl/debugging/stacktrace_benchmark.cc +78 -0
  316. package/deps/abseil-cpp/absl/debugging/stacktrace_test.cc +505 -0
  317. package/deps/abseil-cpp/absl/debugging/symbolize.cc +44 -0
  318. package/deps/abseil-cpp/absl/debugging/symbolize.h +99 -0
  319. package/deps/abseil-cpp/absl/debugging/symbolize_darwin.inc +102 -0
  320. package/deps/abseil-cpp/absl/debugging/symbolize_elf.inc +1756 -0
  321. package/deps/abseil-cpp/absl/debugging/symbolize_emscripten.inc +63 -0
  322. package/deps/abseil-cpp/absl/debugging/symbolize_test.cc +619 -0
  323. package/deps/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +40 -0
  324. package/deps/abseil-cpp/absl/debugging/symbolize_win32.inc +99 -0
  325. package/deps/abseil-cpp/absl/extend/CMakeLists.txt +140 -0
  326. package/deps/abseil-cpp/absl/extend/internal/BUILD.bazel +127 -0
  327. package/deps/abseil-cpp/absl/extend/internal/aggregate.h +1687 -0
  328. package/deps/abseil-cpp/absl/extend/internal/aggregate_test.cc +867 -0
  329. package/deps/abseil-cpp/absl/extend/internal/dependencies.h +83 -0
  330. package/deps/abseil-cpp/absl/extend/internal/dependencies_test.cc +117 -0
  331. package/deps/abseil-cpp/absl/extend/internal/is_tuple_hashable.h +45 -0
  332. package/deps/abseil-cpp/absl/extend/internal/num_bases.h +87 -0
  333. package/deps/abseil-cpp/absl/extend/internal/num_bases_test.cc +91 -0
  334. package/deps/abseil-cpp/absl/extend/internal/num_initializers.h +113 -0
  335. package/deps/abseil-cpp/absl/extend/internal/num_initializers_test.cc +250 -0
  336. package/deps/abseil-cpp/absl/extend/internal/reflection.cc +112 -0
  337. package/deps/abseil-cpp/absl/extend/internal/reflection.h +75 -0
  338. package/deps/abseil-cpp/absl/extend/internal/tuple.h +51 -0
  339. package/deps/abseil-cpp/absl/flags/BUILD.bazel +618 -0
  340. package/deps/abseil-cpp/absl/flags/CMakeLists.txt +482 -0
  341. package/deps/abseil-cpp/absl/flags/commandlineflag.cc +35 -0
  342. package/deps/abseil-cpp/absl/flags/commandlineflag.h +219 -0
  343. package/deps/abseil-cpp/absl/flags/commandlineflag_test.cc +236 -0
  344. package/deps/abseil-cpp/absl/flags/config.h +68 -0
  345. package/deps/abseil-cpp/absl/flags/config_test.cc +61 -0
  346. package/deps/abseil-cpp/absl/flags/declare.h +77 -0
  347. package/deps/abseil-cpp/absl/flags/flag.h +307 -0
  348. package/deps/abseil-cpp/absl/flags/flag_benchmark.cc +251 -0
  349. package/deps/abseil-cpp/absl/flags/flag_benchmark.lds +13 -0
  350. package/deps/abseil-cpp/absl/flags/flag_test.cc +1381 -0
  351. package/deps/abseil-cpp/absl/flags/flag_test_defs.cc +24 -0
  352. package/deps/abseil-cpp/absl/flags/internal/commandlineflag.cc +26 -0
  353. package/deps/abseil-cpp/absl/flags/internal/commandlineflag.h +68 -0
  354. package/deps/abseil-cpp/absl/flags/internal/flag.cc +712 -0
  355. package/deps/abseil-cpp/absl/flags/internal/flag.h +969 -0
  356. package/deps/abseil-cpp/absl/flags/internal/parse.h +70 -0
  357. package/deps/abseil-cpp/absl/flags/internal/path_util.h +62 -0
  358. package/deps/abseil-cpp/absl/flags/internal/path_util_test.cc +46 -0
  359. package/deps/abseil-cpp/absl/flags/internal/private_handle_accessor.cc +69 -0
  360. package/deps/abseil-cpp/absl/flags/internal/private_handle_accessor.h +64 -0
  361. package/deps/abseil-cpp/absl/flags/internal/program_name.cc +61 -0
  362. package/deps/abseil-cpp/absl/flags/internal/program_name.h +50 -0
  363. package/deps/abseil-cpp/absl/flags/internal/program_name_test.cc +61 -0
  364. package/deps/abseil-cpp/absl/flags/internal/registry.h +98 -0
  365. package/deps/abseil-cpp/absl/flags/internal/sequence_lock.h +187 -0
  366. package/deps/abseil-cpp/absl/flags/internal/sequence_lock_test.cc +169 -0
  367. package/deps/abseil-cpp/absl/flags/internal/usage.cc +558 -0
  368. package/deps/abseil-cpp/absl/flags/internal/usage.h +106 -0
  369. package/deps/abseil-cpp/absl/flags/internal/usage_test.cc +550 -0
  370. package/deps/abseil-cpp/absl/flags/marshalling.cc +276 -0
  371. package/deps/abseil-cpp/absl/flags/marshalling.h +361 -0
  372. package/deps/abseil-cpp/absl/flags/marshalling_test.cc +1220 -0
  373. package/deps/abseil-cpp/absl/flags/parse.cc +952 -0
  374. package/deps/abseil-cpp/absl/flags/parse.h +130 -0
  375. package/deps/abseil-cpp/absl/flags/parse_test.cc +1094 -0
  376. package/deps/abseil-cpp/absl/flags/reflection.cc +368 -0
  377. package/deps/abseil-cpp/absl/flags/reflection.h +90 -0
  378. package/deps/abseil-cpp/absl/flags/reflection_test.cc +268 -0
  379. package/deps/abseil-cpp/absl/flags/usage.cc +66 -0
  380. package/deps/abseil-cpp/absl/flags/usage.h +43 -0
  381. package/deps/abseil-cpp/absl/flags/usage_config.cc +170 -0
  382. package/deps/abseil-cpp/absl/flags/usage_config.h +135 -0
  383. package/deps/abseil-cpp/absl/flags/usage_config_test.cc +205 -0
  384. package/deps/abseil-cpp/absl/functional/BUILD.bazel +173 -0
  385. package/deps/abseil-cpp/absl/functional/CMakeLists.txt +140 -0
  386. package/deps/abseil-cpp/absl/functional/any_invocable.h +336 -0
  387. package/deps/abseil-cpp/absl/functional/any_invocable_test.cc +1687 -0
  388. package/deps/abseil-cpp/absl/functional/bind_front.h +200 -0
  389. package/deps/abseil-cpp/absl/functional/bind_front_test.cc +227 -0
  390. package/deps/abseil-cpp/absl/functional/function_ref.h +249 -0
  391. package/deps/abseil-cpp/absl/functional/function_ref_test.cc +416 -0
  392. package/deps/abseil-cpp/absl/functional/function_type_benchmark.cc +176 -0
  393. package/deps/abseil-cpp/absl/functional/internal/any_invocable.h +787 -0
  394. package/deps/abseil-cpp/absl/functional/internal/front_binder.h +93 -0
  395. package/deps/abseil-cpp/absl/functional/internal/function_ref.h +151 -0
  396. package/deps/abseil-cpp/absl/functional/overload.h +72 -0
  397. package/deps/abseil-cpp/absl/functional/overload_test.cc +207 -0
  398. package/deps/abseil-cpp/absl/hash/BUILD.bazel +220 -0
  399. package/deps/abseil-cpp/absl/hash/CMakeLists.txt +179 -0
  400. package/deps/abseil-cpp/absl/hash/hash.h +466 -0
  401. package/deps/abseil-cpp/absl/hash/hash_benchmark.cc +398 -0
  402. package/deps/abseil-cpp/absl/hash/hash_instantiated_test.cc +224 -0
  403. package/deps/abseil-cpp/absl/hash/hash_test.cc +1320 -0
  404. package/deps/abseil-cpp/absl/hash/hash_testing.h +380 -0
  405. package/deps/abseil-cpp/absl/hash/internal/city.cc +337 -0
  406. package/deps/abseil-cpp/absl/hash/internal/city.h +78 -0
  407. package/deps/abseil-cpp/absl/hash/internal/city_test.cc +597 -0
  408. package/deps/abseil-cpp/absl/hash/internal/hash.cc +430 -0
  409. package/deps/abseil-cpp/absl/hash/internal/hash.h +1563 -0
  410. package/deps/abseil-cpp/absl/hash/internal/hash_test.h +87 -0
  411. package/deps/abseil-cpp/absl/hash/internal/low_level_hash_test.cc +509 -0
  412. package/deps/abseil-cpp/absl/hash/internal/print_hash_of.cc +23 -0
  413. package/deps/abseil-cpp/absl/hash/internal/spy_hash_state.h +286 -0
  414. package/deps/abseil-cpp/absl/hash/internal/weakly_mixed_integer.h +38 -0
  415. package/deps/abseil-cpp/absl/log/BUILD.bazel +686 -0
  416. package/deps/abseil-cpp/absl/log/CMakeLists.txt +1239 -0
  417. package/deps/abseil-cpp/absl/log/absl_check.h +117 -0
  418. package/deps/abseil-cpp/absl/log/absl_check_test.cc +58 -0
  419. package/deps/abseil-cpp/absl/log/absl_log.h +115 -0
  420. package/deps/abseil-cpp/absl/log/absl_log_basic_test.cc +22 -0
  421. package/deps/abseil-cpp/absl/log/absl_vlog_is_on.h +95 -0
  422. package/deps/abseil-cpp/absl/log/check.h +210 -0
  423. package/deps/abseil-cpp/absl/log/check_test.cc +58 -0
  424. package/deps/abseil-cpp/absl/log/check_test_impl.inc +1035 -0
  425. package/deps/abseil-cpp/absl/log/die_if_null.cc +34 -0
  426. package/deps/abseil-cpp/absl/log/die_if_null.h +97 -0
  427. package/deps/abseil-cpp/absl/log/die_if_null_test.cc +107 -0
  428. package/deps/abseil-cpp/absl/log/flags.cc +143 -0
  429. package/deps/abseil-cpp/absl/log/flags.h +43 -0
  430. package/deps/abseil-cpp/absl/log/flags_test.cc +195 -0
  431. package/deps/abseil-cpp/absl/log/globals.cc +178 -0
  432. package/deps/abseil-cpp/absl/log/globals.h +230 -0
  433. package/deps/abseil-cpp/absl/log/globals_test.cc +156 -0
  434. package/deps/abseil-cpp/absl/log/initialize.cc +38 -0
  435. package/deps/abseil-cpp/absl/log/initialize.h +45 -0
  436. package/deps/abseil-cpp/absl/log/internal/BUILD.bazel +581 -0
  437. package/deps/abseil-cpp/absl/log/internal/append_truncated.h +75 -0
  438. package/deps/abseil-cpp/absl/log/internal/check_impl.h +151 -0
  439. package/deps/abseil-cpp/absl/log/internal/check_op.cc +147 -0
  440. package/deps/abseil-cpp/absl/log/internal/check_op.h +565 -0
  441. package/deps/abseil-cpp/absl/log/internal/conditions.cc +85 -0
  442. package/deps/abseil-cpp/absl/log/internal/conditions.h +247 -0
  443. package/deps/abseil-cpp/absl/log/internal/config.h +45 -0
  444. package/deps/abseil-cpp/absl/log/internal/container.h +312 -0
  445. package/deps/abseil-cpp/absl/log/internal/container_test.cc +254 -0
  446. package/deps/abseil-cpp/absl/log/internal/flags.h +59 -0
  447. package/deps/abseil-cpp/absl/log/internal/fnmatch.cc +73 -0
  448. package/deps/abseil-cpp/absl/log/internal/fnmatch.h +35 -0
  449. package/deps/abseil-cpp/absl/log/internal/fnmatch_benchmark.cc +29 -0
  450. package/deps/abseil-cpp/absl/log/internal/fnmatch_test.cc +60 -0
  451. package/deps/abseil-cpp/absl/log/internal/globals.cc +145 -0
  452. package/deps/abseil-cpp/absl/log/internal/globals.h +101 -0
  453. package/deps/abseil-cpp/absl/log/internal/log_format.cc +205 -0
  454. package/deps/abseil-cpp/absl/log/internal/log_format.h +78 -0
  455. package/deps/abseil-cpp/absl/log/internal/log_impl.h +280 -0
  456. package/deps/abseil-cpp/absl/log/internal/log_message.cc +787 -0
  457. package/deps/abseil-cpp/absl/log/internal/log_message.h +455 -0
  458. package/deps/abseil-cpp/absl/log/internal/log_sink_set.cc +296 -0
  459. package/deps/abseil-cpp/absl/log/internal/log_sink_set.h +54 -0
  460. package/deps/abseil-cpp/absl/log/internal/nullguard.cc +35 -0
  461. package/deps/abseil-cpp/absl/log/internal/nullguard.h +88 -0
  462. package/deps/abseil-cpp/absl/log/internal/nullstream.h +128 -0
  463. package/deps/abseil-cpp/absl/log/internal/proto.cc +218 -0
  464. package/deps/abseil-cpp/absl/log/internal/proto.h +298 -0
  465. package/deps/abseil-cpp/absl/log/internal/stderr_log_sink_test.cc +105 -0
  466. package/deps/abseil-cpp/absl/log/internal/strip.h +99 -0
  467. package/deps/abseil-cpp/absl/log/internal/structured.h +160 -0
  468. package/deps/abseil-cpp/absl/log/internal/structured_proto.cc +115 -0
  469. package/deps/abseil-cpp/absl/log/internal/structured_proto.h +107 -0
  470. package/deps/abseil-cpp/absl/log/internal/structured_proto_test.cc +120 -0
  471. package/deps/abseil-cpp/absl/log/internal/test_actions.cc +75 -0
  472. package/deps/abseil-cpp/absl/log/internal/test_actions.h +90 -0
  473. package/deps/abseil-cpp/absl/log/internal/test_helpers.cc +82 -0
  474. package/deps/abseil-cpp/absl/log/internal/test_helpers.h +71 -0
  475. package/deps/abseil-cpp/absl/log/internal/test_matchers.cc +216 -0
  476. package/deps/abseil-cpp/absl/log/internal/test_matchers.h +94 -0
  477. package/deps/abseil-cpp/absl/log/internal/vlog_config.cc +347 -0
  478. package/deps/abseil-cpp/absl/log/internal/vlog_config.h +164 -0
  479. package/deps/abseil-cpp/absl/log/internal/vlog_config_benchmark.cc +187 -0
  480. package/deps/abseil-cpp/absl/log/internal/voidify.h +50 -0
  481. package/deps/abseil-cpp/absl/log/log.h +378 -0
  482. package/deps/abseil-cpp/absl/log/log_basic_test.cc +22 -0
  483. package/deps/abseil-cpp/absl/log/log_basic_test_impl.inc +654 -0
  484. package/deps/abseil-cpp/absl/log/log_benchmark.cc +164 -0
  485. package/deps/abseil-cpp/absl/log/log_entry.cc +263 -0
  486. package/deps/abseil-cpp/absl/log/log_entry.h +223 -0
  487. package/deps/abseil-cpp/absl/log/log_entry_test.cc +468 -0
  488. package/deps/abseil-cpp/absl/log/log_format_test.cc +2261 -0
  489. package/deps/abseil-cpp/absl/log/log_macro_hygiene_test.cc +187 -0
  490. package/deps/abseil-cpp/absl/log/log_modifier_methods_test.cc +244 -0
  491. package/deps/abseil-cpp/absl/log/log_sink.cc +23 -0
  492. package/deps/abseil-cpp/absl/log/log_sink.h +71 -0
  493. package/deps/abseil-cpp/absl/log/log_sink_registry.h +64 -0
  494. package/deps/abseil-cpp/absl/log/log_sink_test.cc +418 -0
  495. package/deps/abseil-cpp/absl/log/log_streamer.h +181 -0
  496. package/deps/abseil-cpp/absl/log/log_streamer_test.cc +451 -0
  497. package/deps/abseil-cpp/absl/log/scoped_mock_log.cc +86 -0
  498. package/deps/abseil-cpp/absl/log/scoped_mock_log.h +203 -0
  499. package/deps/abseil-cpp/absl/log/scoped_mock_log_test.cc +295 -0
  500. package/deps/abseil-cpp/absl/log/stripping_test.cc +502 -0
  501. package/deps/abseil-cpp/absl/log/structured.h +75 -0
  502. package/deps/abseil-cpp/absl/log/structured_test.cc +64 -0
  503. package/deps/abseil-cpp/absl/log/vlog_is_on.h +74 -0
  504. package/deps/abseil-cpp/absl/log/vlog_is_on_test.cc +233 -0
  505. package/deps/abseil-cpp/absl/memory/BUILD.bazel +62 -0
  506. package/deps/abseil-cpp/absl/memory/CMakeLists.txt +41 -0
  507. package/deps/abseil-cpp/absl/memory/memory.h +278 -0
  508. package/deps/abseil-cpp/absl/memory/memory_test.cc +222 -0
  509. package/deps/abseil-cpp/absl/meta/BUILD.bazel +112 -0
  510. package/deps/abseil-cpp/absl/meta/CMakeLists.txt +100 -0
  511. package/deps/abseil-cpp/absl/meta/internal/constexpr_testing.h +73 -0
  512. package/deps/abseil-cpp/absl/meta/internal/constexpr_testing_test.cc +40 -0
  513. package/deps/abseil-cpp/absl/meta/internal/requires.h +67 -0
  514. package/deps/abseil-cpp/absl/meta/internal/requires_test.cc +66 -0
  515. package/deps/abseil-cpp/absl/meta/type_traits.h +582 -0
  516. package/deps/abseil-cpp/absl/meta/type_traits_test.cc +378 -0
  517. package/deps/abseil-cpp/absl/numeric/BUILD.bazel +145 -0
  518. package/deps/abseil-cpp/absl/numeric/CMakeLists.txt +104 -0
  519. package/deps/abseil-cpp/absl/numeric/bits.h +262 -0
  520. package/deps/abseil-cpp/absl/numeric/bits_benchmark.cc +73 -0
  521. package/deps/abseil-cpp/absl/numeric/bits_test.cc +724 -0
  522. package/deps/abseil-cpp/absl/numeric/int128.cc +344 -0
  523. package/deps/abseil-cpp/absl/numeric/int128.h +1224 -0
  524. package/deps/abseil-cpp/absl/numeric/int128_benchmark.cc +281 -0
  525. package/deps/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +303 -0
  526. package/deps/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +347 -0
  527. package/deps/abseil-cpp/absl/numeric/int128_stream_test.cc +1400 -0
  528. package/deps/abseil-cpp/absl/numeric/int128_test.cc +1407 -0
  529. package/deps/abseil-cpp/absl/numeric/internal/bits.h +394 -0
  530. package/deps/abseil-cpp/absl/numeric/internal/representation.h +55 -0
  531. package/deps/abseil-cpp/absl/profiling/BUILD.bazel +188 -0
  532. package/deps/abseil-cpp/absl/profiling/CMakeLists.txt +132 -0
  533. package/deps/abseil-cpp/absl/profiling/hashtable.cc +135 -0
  534. package/deps/abseil-cpp/absl/profiling/hashtable.h +40 -0
  535. package/deps/abseil-cpp/absl/profiling/internal/exponential_biased.cc +93 -0
  536. package/deps/abseil-cpp/absl/profiling/internal/exponential_biased.h +130 -0
  537. package/deps/abseil-cpp/absl/profiling/internal/exponential_biased_test.cc +203 -0
  538. package/deps/abseil-cpp/absl/profiling/internal/periodic_sampler.cc +53 -0
  539. package/deps/abseil-cpp/absl/profiling/internal/periodic_sampler.h +211 -0
  540. package/deps/abseil-cpp/absl/profiling/internal/periodic_sampler_benchmark.cc +79 -0
  541. package/deps/abseil-cpp/absl/profiling/internal/periodic_sampler_test.cc +177 -0
  542. package/deps/abseil-cpp/absl/profiling/internal/profile_builder.cc +463 -0
  543. package/deps/abseil-cpp/absl/profiling/internal/profile_builder.h +161 -0
  544. package/deps/abseil-cpp/absl/profiling/internal/sample_recorder.h +253 -0
  545. package/deps/abseil-cpp/absl/profiling/internal/sample_recorder_test.cc +188 -0
  546. package/deps/abseil-cpp/absl/random/BUILD.bazel +550 -0
  547. package/deps/abseil-cpp/absl/random/CMakeLists.txt +1250 -0
  548. package/deps/abseil-cpp/absl/random/benchmarks.cc +376 -0
  549. package/deps/abseil-cpp/absl/random/bernoulli_distribution.h +202 -0
  550. package/deps/abseil-cpp/absl/random/bernoulli_distribution_test.cc +217 -0
  551. package/deps/abseil-cpp/absl/random/beta_distribution.h +429 -0
  552. package/deps/abseil-cpp/absl/random/beta_distribution_test.cc +615 -0
  553. package/deps/abseil-cpp/absl/random/bit_gen_ref.h +187 -0
  554. package/deps/abseil-cpp/absl/random/bit_gen_ref_test.cc +107 -0
  555. package/deps/abseil-cpp/absl/random/discrete_distribution.cc +108 -0
  556. package/deps/abseil-cpp/absl/random/discrete_distribution.h +249 -0
  557. package/deps/abseil-cpp/absl/random/discrete_distribution_test.cc +251 -0
  558. package/deps/abseil-cpp/absl/random/distributions.h +450 -0
  559. package/deps/abseil-cpp/absl/random/distributions_test.cc +516 -0
  560. package/deps/abseil-cpp/absl/random/examples_test.cc +98 -0
  561. package/deps/abseil-cpp/absl/random/exponential_distribution.h +166 -0
  562. package/deps/abseil-cpp/absl/random/exponential_distribution_test.cc +426 -0
  563. package/deps/abseil-cpp/absl/random/gaussian_distribution.cc +104 -0
  564. package/deps/abseil-cpp/absl/random/gaussian_distribution.h +276 -0
  565. package/deps/abseil-cpp/absl/random/gaussian_distribution_test.cc +561 -0
  566. package/deps/abseil-cpp/absl/random/generators_test.cc +185 -0
  567. package/deps/abseil-cpp/absl/random/internal/BUILD.bazel +863 -0
  568. package/deps/abseil-cpp/absl/random/internal/chi_square.cc +230 -0
  569. package/deps/abseil-cpp/absl/random/internal/chi_square.h +89 -0
  570. package/deps/abseil-cpp/absl/random/internal/chi_square_test.cc +364 -0
  571. package/deps/abseil-cpp/absl/random/internal/distribution_caller.h +96 -0
  572. package/deps/abseil-cpp/absl/random/internal/distribution_test_util.cc +418 -0
  573. package/deps/abseil-cpp/absl/random/internal/distribution_test_util.h +113 -0
  574. package/deps/abseil-cpp/absl/random/internal/distribution_test_util_test.cc +193 -0
  575. package/deps/abseil-cpp/absl/random/internal/entropy_pool.cc +185 -0
  576. package/deps/abseil-cpp/absl/random/internal/entropy_pool.h +35 -0
  577. package/deps/abseil-cpp/absl/random/internal/entropy_pool_test.cc +119 -0
  578. package/deps/abseil-cpp/absl/random/internal/explicit_seed_seq.h +92 -0
  579. package/deps/abseil-cpp/absl/random/internal/explicit_seed_seq_test.cc +241 -0
  580. package/deps/abseil-cpp/absl/random/internal/fast_uniform_bits.h +271 -0
  581. package/deps/abseil-cpp/absl/random/internal/fast_uniform_bits_test.cc +336 -0
  582. package/deps/abseil-cpp/absl/random/internal/fastmath.h +57 -0
  583. package/deps/abseil-cpp/absl/random/internal/fastmath_test.cc +95 -0
  584. package/deps/abseil-cpp/absl/random/internal/gaussian_distribution_gentables.cc +142 -0
  585. package/deps/abseil-cpp/absl/random/internal/generate_real.h +144 -0
  586. package/deps/abseil-cpp/absl/random/internal/generate_real_test.cc +496 -0
  587. package/deps/abseil-cpp/absl/random/internal/iostream_state_saver.h +248 -0
  588. package/deps/abseil-cpp/absl/random/internal/iostream_state_saver_test.cc +373 -0
  589. package/deps/abseil-cpp/absl/random/internal/mock_helpers.h +160 -0
  590. package/deps/abseil-cpp/absl/random/internal/mock_overload_set.h +122 -0
  591. package/deps/abseil-cpp/absl/random/internal/mock_validators.h +98 -0
  592. package/deps/abseil-cpp/absl/random/internal/nanobenchmark.cc +804 -0
  593. package/deps/abseil-cpp/absl/random/internal/nanobenchmark.h +172 -0
  594. package/deps/abseil-cpp/absl/random/internal/nanobenchmark_test.cc +79 -0
  595. package/deps/abseil-cpp/absl/random/internal/nonsecure_base.h +160 -0
  596. package/deps/abseil-cpp/absl/random/internal/nonsecure_base_test.cc +267 -0
  597. package/deps/abseil-cpp/absl/random/internal/pcg_engine.h +287 -0
  598. package/deps/abseil-cpp/absl/random/internal/pcg_engine_test.cc +638 -0
  599. package/deps/abseil-cpp/absl/random/internal/platform.h +158 -0
  600. package/deps/abseil-cpp/absl/random/internal/randen.cc +91 -0
  601. package/deps/abseil-cpp/absl/random/internal/randen.h +96 -0
  602. package/deps/abseil-cpp/absl/random/internal/randen_benchmarks.cc +177 -0
  603. package/deps/abseil-cpp/absl/random/internal/randen_detect.cc +280 -0
  604. package/deps/abseil-cpp/absl/random/internal/randen_detect.h +33 -0
  605. package/deps/abseil-cpp/absl/random/internal/randen_engine.h +265 -0
  606. package/deps/abseil-cpp/absl/random/internal/randen_engine_test.cc +654 -0
  607. package/deps/abseil-cpp/absl/random/internal/randen_hwaes.cc +526 -0
  608. package/deps/abseil-cpp/absl/random/internal/randen_hwaes.h +50 -0
  609. package/deps/abseil-cpp/absl/random/internal/randen_hwaes_test.cc +99 -0
  610. package/deps/abseil-cpp/absl/random/internal/randen_round_keys.cc +462 -0
  611. package/deps/abseil-cpp/absl/random/internal/randen_slow.cc +471 -0
  612. package/deps/abseil-cpp/absl/random/internal/randen_slow.h +40 -0
  613. package/deps/abseil-cpp/absl/random/internal/randen_slow_test.cc +61 -0
  614. package/deps/abseil-cpp/absl/random/internal/randen_test.cc +75 -0
  615. package/deps/abseil-cpp/absl/random/internal/randen_traits.h +88 -0
  616. package/deps/abseil-cpp/absl/random/internal/salted_seed_seq.h +165 -0
  617. package/deps/abseil-cpp/absl/random/internal/salted_seed_seq_test.cc +172 -0
  618. package/deps/abseil-cpp/absl/random/internal/seed_material.cc +249 -0
  619. package/deps/abseil-cpp/absl/random/internal/seed_material.h +104 -0
  620. package/deps/abseil-cpp/absl/random/internal/seed_material_test.cc +205 -0
  621. package/deps/abseil-cpp/absl/random/internal/sequence_urbg.h +60 -0
  622. package/deps/abseil-cpp/absl/random/internal/traits.h +149 -0
  623. package/deps/abseil-cpp/absl/random/internal/traits_test.cc +123 -0
  624. package/deps/abseil-cpp/absl/random/internal/uniform_helper.h +244 -0
  625. package/deps/abseil-cpp/absl/random/internal/uniform_helper_test.cc +279 -0
  626. package/deps/abseil-cpp/absl/random/internal/wide_multiply.h +95 -0
  627. package/deps/abseil-cpp/absl/random/internal/wide_multiply_test.cc +119 -0
  628. package/deps/abseil-cpp/absl/random/log_uniform_int_distribution.h +253 -0
  629. package/deps/abseil-cpp/absl/random/log_uniform_int_distribution_test.cc +277 -0
  630. package/deps/abseil-cpp/absl/random/mock_distributions.h +269 -0
  631. package/deps/abseil-cpp/absl/random/mock_distributions_test.cc +281 -0
  632. package/deps/abseil-cpp/absl/random/mocking_bit_gen.h +237 -0
  633. package/deps/abseil-cpp/absl/random/mocking_bit_gen_test.cc +403 -0
  634. package/deps/abseil-cpp/absl/random/poisson_distribution.h +262 -0
  635. package/deps/abseil-cpp/absl/random/poisson_distribution_test.cc +569 -0
  636. package/deps/abseil-cpp/absl/random/random.h +224 -0
  637. package/deps/abseil-cpp/absl/random/seed_gen_exception.cc +45 -0
  638. package/deps/abseil-cpp/absl/random/seed_gen_exception.h +55 -0
  639. package/deps/abseil-cpp/absl/random/seed_sequences.cc +33 -0
  640. package/deps/abseil-cpp/absl/random/seed_sequences.h +112 -0
  641. package/deps/abseil-cpp/absl/random/seed_sequences_test.cc +126 -0
  642. package/deps/abseil-cpp/absl/random/uniform_int_distribution.h +276 -0
  643. package/deps/abseil-cpp/absl/random/uniform_int_distribution_test.cc +259 -0
  644. package/deps/abseil-cpp/absl/random/uniform_real_distribution.h +204 -0
  645. package/deps/abseil-cpp/absl/random/uniform_real_distribution_test.cc +394 -0
  646. package/deps/abseil-cpp/absl/random/zipf_distribution.h +273 -0
  647. package/deps/abseil-cpp/absl/random/zipf_distribution_test.cc +423 -0
  648. package/deps/abseil-cpp/absl/status/BUILD.bazel +211 -0
  649. package/deps/abseil-cpp/absl/status/CMakeLists.txt +159 -0
  650. package/deps/abseil-cpp/absl/status/internal/status_internal.cc +251 -0
  651. package/deps/abseil-cpp/absl/status/internal/status_internal.h +133 -0
  652. package/deps/abseil-cpp/absl/status/internal/status_matchers.cc +69 -0
  653. package/deps/abseil-cpp/absl/status/internal/status_matchers.h +246 -0
  654. package/deps/abseil-cpp/absl/status/internal/statusor_internal.h +657 -0
  655. package/deps/abseil-cpp/absl/status/status.cc +421 -0
  656. package/deps/abseil-cpp/absl/status/status.h +948 -0
  657. package/deps/abseil-cpp/absl/status/status_benchmark.cc +37 -0
  658. package/deps/abseil-cpp/absl/status/status_matchers.h +166 -0
  659. package/deps/abseil-cpp/absl/status/status_matchers_test.cc +211 -0
  660. package/deps/abseil-cpp/absl/status/status_payload_printer.cc +36 -0
  661. package/deps/abseil-cpp/absl/status/status_payload_printer.h +52 -0
  662. package/deps/abseil-cpp/absl/status/status_test.cc +580 -0
  663. package/deps/abseil-cpp/absl/status/statusor.cc +106 -0
  664. package/deps/abseil-cpp/absl/status/statusor.h +743 -0
  665. package/deps/abseil-cpp/absl/status/statusor_benchmark.cc +480 -0
  666. package/deps/abseil-cpp/absl/status/statusor_test.cc +2124 -0
  667. package/deps/abseil-cpp/absl/strings/BUILD.bazel +1593 -0
  668. package/deps/abseil-cpp/absl/strings/CMakeLists.txt +1295 -0
  669. package/deps/abseil-cpp/absl/strings/ascii.cc +296 -0
  670. package/deps/abseil-cpp/absl/strings/ascii.h +289 -0
  671. package/deps/abseil-cpp/absl/strings/ascii_benchmark.cc +157 -0
  672. package/deps/abseil-cpp/absl/strings/ascii_test.cc +374 -0
  673. package/deps/abseil-cpp/absl/strings/atod_manual_test.cc +193 -0
  674. package/deps/abseil-cpp/absl/strings/char_formatting_test.cc +169 -0
  675. package/deps/abseil-cpp/absl/strings/charconv.cc +1442 -0
  676. package/deps/abseil-cpp/absl/strings/charconv.h +123 -0
  677. package/deps/abseil-cpp/absl/strings/charconv_benchmark.cc +203 -0
  678. package/deps/abseil-cpp/absl/strings/charconv_test.cc +787 -0
  679. package/deps/abseil-cpp/absl/strings/charset.h +163 -0
  680. package/deps/abseil-cpp/absl/strings/charset_benchmark.cc +57 -0
  681. package/deps/abseil-cpp/absl/strings/charset_test.cc +181 -0
  682. package/deps/abseil-cpp/absl/strings/cord.cc +1582 -0
  683. package/deps/abseil-cpp/absl/strings/cord.h +1763 -0
  684. package/deps/abseil-cpp/absl/strings/cord_analysis.cc +196 -0
  685. package/deps/abseil-cpp/absl/strings/cord_analysis.h +63 -0
  686. package/deps/abseil-cpp/absl/strings/cord_buffer.h +572 -0
  687. package/deps/abseil-cpp/absl/strings/cord_buffer_test.cc +322 -0
  688. package/deps/abseil-cpp/absl/strings/cord_test.cc +3421 -0
  689. package/deps/abseil-cpp/absl/strings/cord_test_helpers.h +122 -0
  690. package/deps/abseil-cpp/absl/strings/cordz_test.cc +468 -0
  691. package/deps/abseil-cpp/absl/strings/cordz_test_helpers.h +152 -0
  692. package/deps/abseil-cpp/absl/strings/escaping.cc +1035 -0
  693. package/deps/abseil-cpp/absl/strings/escaping.h +185 -0
  694. package/deps/abseil-cpp/absl/strings/escaping_benchmark.cc +124 -0
  695. package/deps/abseil-cpp/absl/strings/escaping_test.cc +760 -0
  696. package/deps/abseil-cpp/absl/strings/has_absl_stringify.h +64 -0
  697. package/deps/abseil-cpp/absl/strings/has_absl_stringify_test.cc +40 -0
  698. package/deps/abseil-cpp/absl/strings/has_ostream_operator.h +42 -0
  699. package/deps/abseil-cpp/absl/strings/has_ostream_operator_test.cc +41 -0
  700. package/deps/abseil-cpp/absl/strings/internal/append_and_overwrite.h +93 -0
  701. package/deps/abseil-cpp/absl/strings/internal/append_and_overwrite_test.cc +95 -0
  702. package/deps/abseil-cpp/absl/strings/internal/charconv_bigint.cc +357 -0
  703. package/deps/abseil-cpp/absl/strings/internal/charconv_bigint.h +433 -0
  704. package/deps/abseil-cpp/absl/strings/internal/charconv_bigint_test.cc +260 -0
  705. package/deps/abseil-cpp/absl/strings/internal/charconv_parse.cc +504 -0
  706. package/deps/abseil-cpp/absl/strings/internal/charconv_parse.h +99 -0
  707. package/deps/abseil-cpp/absl/strings/internal/charconv_parse_test.cc +357 -0
  708. package/deps/abseil-cpp/absl/strings/internal/cord_data_edge.h +63 -0
  709. package/deps/abseil-cpp/absl/strings/internal/cord_data_edge_test.cc +130 -0
  710. package/deps/abseil-cpp/absl/strings/internal/cord_internal.cc +70 -0
  711. package/deps/abseil-cpp/absl/strings/internal/cord_internal.h +942 -0
  712. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +1237 -0
  713. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree.h +944 -0
  714. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +187 -0
  715. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +267 -0
  716. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator_test.cc +346 -0
  717. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +69 -0
  718. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +212 -0
  719. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree_reader_test.cc +293 -0
  720. package/deps/abseil-cpp/absl/strings/internal/cord_rep_btree_test.cc +1568 -0
  721. package/deps/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +64 -0
  722. package/deps/abseil-cpp/absl/strings/internal/cord_rep_consume.h +47 -0
  723. package/deps/abseil-cpp/absl/strings/internal/cord_rep_crc.cc +56 -0
  724. package/deps/abseil-cpp/absl/strings/internal/cord_rep_crc.h +103 -0
  725. package/deps/abseil-cpp/absl/strings/internal/cord_rep_crc_test.cc +130 -0
  726. package/deps/abseil-cpp/absl/strings/internal/cord_rep_flat.h +195 -0
  727. package/deps/abseil-cpp/absl/strings/internal/cord_rep_test_util.h +205 -0
  728. package/deps/abseil-cpp/absl/strings/internal/cordz_functions.cc +102 -0
  729. package/deps/abseil-cpp/absl/strings/internal/cordz_functions.h +87 -0
  730. package/deps/abseil-cpp/absl/strings/internal/cordz_functions_test.cc +147 -0
  731. package/deps/abseil-cpp/absl/strings/internal/cordz_handle.cc +165 -0
  732. package/deps/abseil-cpp/absl/strings/internal/cordz_handle.h +98 -0
  733. package/deps/abseil-cpp/absl/strings/internal/cordz_handle_test.cc +265 -0
  734. package/deps/abseil-cpp/absl/strings/internal/cordz_info.cc +424 -0
  735. package/deps/abseil-cpp/absl/strings/internal/cordz_info.h +295 -0
  736. package/deps/abseil-cpp/absl/strings/internal/cordz_info_statistics_test.cc +510 -0
  737. package/deps/abseil-cpp/absl/strings/internal/cordz_info_test.cc +342 -0
  738. package/deps/abseil-cpp/absl/strings/internal/cordz_sample_token.cc +64 -0
  739. package/deps/abseil-cpp/absl/strings/internal/cordz_sample_token.h +97 -0
  740. package/deps/abseil-cpp/absl/strings/internal/cordz_sample_token_test.cc +208 -0
  741. package/deps/abseil-cpp/absl/strings/internal/cordz_statistics.h +88 -0
  742. package/deps/abseil-cpp/absl/strings/internal/cordz_update_scope.h +71 -0
  743. package/deps/abseil-cpp/absl/strings/internal/cordz_update_scope_test.cc +49 -0
  744. package/deps/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +123 -0
  745. package/deps/abseil-cpp/absl/strings/internal/cordz_update_tracker_test.cc +147 -0
  746. package/deps/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +99 -0
  747. package/deps/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +35 -0
  748. package/deps/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance_benchmark.cc +56 -0
  749. package/deps/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance_test.cc +99 -0
  750. package/deps/abseil-cpp/absl/strings/internal/escaping.cc +209 -0
  751. package/deps/abseil-cpp/absl/strings/internal/escaping.h +59 -0
  752. package/deps/abseil-cpp/absl/strings/internal/escaping_test_common.h +133 -0
  753. package/deps/abseil-cpp/absl/strings/internal/generic_printer.cc +107 -0
  754. package/deps/abseil-cpp/absl/strings/internal/generic_printer.h +115 -0
  755. package/deps/abseil-cpp/absl/strings/internal/generic_printer_internal.h +423 -0
  756. package/deps/abseil-cpp/absl/strings/internal/generic_printer_test.cc +685 -0
  757. package/deps/abseil-cpp/absl/strings/internal/memutil.cc +48 -0
  758. package/deps/abseil-cpp/absl/strings/internal/memutil.h +40 -0
  759. package/deps/abseil-cpp/absl/strings/internal/memutil_benchmark.cc +127 -0
  760. package/deps/abseil-cpp/absl/strings/internal/memutil_test.cc +41 -0
  761. package/deps/abseil-cpp/absl/strings/internal/numbers_test_common.h +184 -0
  762. package/deps/abseil-cpp/absl/strings/internal/ostringstream.cc +43 -0
  763. package/deps/abseil-cpp/absl/strings/internal/ostringstream.h +114 -0
  764. package/deps/abseil-cpp/absl/strings/internal/ostringstream_benchmark.cc +105 -0
  765. package/deps/abseil-cpp/absl/strings/internal/ostringstream_test.cc +131 -0
  766. package/deps/abseil-cpp/absl/strings/internal/pow10_helper.cc +122 -0
  767. package/deps/abseil-cpp/absl/strings/internal/pow10_helper.h +40 -0
  768. package/deps/abseil-cpp/absl/strings/internal/pow10_helper_test.cc +122 -0
  769. package/deps/abseil-cpp/absl/strings/internal/resize_uninitialized.h +119 -0
  770. package/deps/abseil-cpp/absl/strings/internal/resize_uninitialized_test.cc +108 -0
  771. package/deps/abseil-cpp/absl/strings/internal/stl_type_traits.h +248 -0
  772. package/deps/abseil-cpp/absl/strings/internal/str_format/arg.cc +615 -0
  773. package/deps/abseil-cpp/absl/strings/internal/str_format/arg.h +661 -0
  774. package/deps/abseil-cpp/absl/strings/internal/str_format/arg_test.cc +162 -0
  775. package/deps/abseil-cpp/absl/strings/internal/str_format/bind.cc +275 -0
  776. package/deps/abseil-cpp/absl/strings/internal/str_format/bind.h +237 -0
  777. package/deps/abseil-cpp/absl/strings/internal/str_format/bind_test.cc +157 -0
  778. package/deps/abseil-cpp/absl/strings/internal/str_format/checker.h +98 -0
  779. package/deps/abseil-cpp/absl/strings/internal/str_format/checker_test.cc +176 -0
  780. package/deps/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +357 -0
  781. package/deps/abseil-cpp/absl/strings/internal/str_format/convert_test.cc +1471 -0
  782. package/deps/abseil-cpp/absl/strings/internal/str_format/extension.cc +53 -0
  783. package/deps/abseil-cpp/absl/strings/internal/str_format/extension.h +456 -0
  784. package/deps/abseil-cpp/absl/strings/internal/str_format/extension_test.cc +110 -0
  785. package/deps/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +1945 -0
  786. package/deps/abseil-cpp/absl/strings/internal/str_format/float_conversion.h +37 -0
  787. package/deps/abseil-cpp/absl/strings/internal/str_format/output.cc +74 -0
  788. package/deps/abseil-cpp/absl/strings/internal/str_format/output.h +97 -0
  789. package/deps/abseil-cpp/absl/strings/internal/str_format/output_test.cc +79 -0
  790. package/deps/abseil-cpp/absl/strings/internal/str_format/parser.cc +140 -0
  791. package/deps/abseil-cpp/absl/strings/internal/str_format/parser.h +271 -0
  792. package/deps/abseil-cpp/absl/strings/internal/str_format/parser_test.cc +446 -0
  793. package/deps/abseil-cpp/absl/strings/internal/str_join_internal.h +341 -0
  794. package/deps/abseil-cpp/absl/strings/internal/str_split_internal.h +525 -0
  795. package/deps/abseil-cpp/absl/strings/internal/string_constant.h +67 -0
  796. package/deps/abseil-cpp/absl/strings/internal/string_constant_test.cc +60 -0
  797. package/deps/abseil-cpp/absl/strings/internal/stringify_sink.cc +28 -0
  798. package/deps/abseil-cpp/absl/strings/internal/stringify_sink.h +57 -0
  799. package/deps/abseil-cpp/absl/strings/internal/utf8.cc +148 -0
  800. package/deps/abseil-cpp/absl/strings/internal/utf8.h +64 -0
  801. package/deps/abseil-cpp/absl/strings/internal/utf8_test.cc +259 -0
  802. package/deps/abseil-cpp/absl/strings/match.cc +133 -0
  803. package/deps/abseil-cpp/absl/strings/match.h +129 -0
  804. package/deps/abseil-cpp/absl/strings/match_test.cc +291 -0
  805. package/deps/abseil-cpp/absl/strings/numbers.cc +1230 -0
  806. package/deps/abseil-cpp/absl/strings/numbers.h +359 -0
  807. package/deps/abseil-cpp/absl/strings/numbers_benchmark.cc +288 -0
  808. package/deps/abseil-cpp/absl/strings/numbers_test.cc +2324 -0
  809. package/deps/abseil-cpp/absl/strings/resize_and_overwrite.h +194 -0
  810. package/deps/abseil-cpp/absl/strings/resize_and_overwrite_test.cc +154 -0
  811. package/deps/abseil-cpp/absl/strings/str_cat.cc +247 -0
  812. package/deps/abseil-cpp/absl/strings/str_cat.h +633 -0
  813. package/deps/abseil-cpp/absl/strings/str_cat_benchmark.cc +288 -0
  814. package/deps/abseil-cpp/absl/strings/str_cat_test.cc +692 -0
  815. package/deps/abseil-cpp/absl/strings/str_format.h +887 -0
  816. package/deps/abseil-cpp/absl/strings/str_format_test.cc +1230 -0
  817. package/deps/abseil-cpp/absl/strings/str_join.h +301 -0
  818. package/deps/abseil-cpp/absl/strings/str_join_benchmark.cc +106 -0
  819. package/deps/abseil-cpp/absl/strings/str_join_test.cc +645 -0
  820. package/deps/abseil-cpp/absl/strings/str_replace.cc +91 -0
  821. package/deps/abseil-cpp/absl/strings/str_replace.h +222 -0
  822. package/deps/abseil-cpp/absl/strings/str_replace_benchmark.cc +121 -0
  823. package/deps/abseil-cpp/absl/strings/str_replace_test.cc +345 -0
  824. package/deps/abseil-cpp/absl/strings/str_split.cc +144 -0
  825. package/deps/abseil-cpp/absl/strings/str_split.h +582 -0
  826. package/deps/abseil-cpp/absl/strings/str_split_benchmark.cc +180 -0
  827. package/deps/abseil-cpp/absl/strings/str_split_test.cc +1069 -0
  828. package/deps/abseil-cpp/absl/strings/string_view.h +60 -0
  829. package/deps/abseil-cpp/absl/strings/string_view_test.cc +86 -0
  830. package/deps/abseil-cpp/absl/strings/strip.h +99 -0
  831. package/deps/abseil-cpp/absl/strings/strip_test.cc +198 -0
  832. package/deps/abseil-cpp/absl/strings/substitute.cc +187 -0
  833. package/deps/abseil-cpp/absl/strings/substitute.h +769 -0
  834. package/deps/abseil-cpp/absl/strings/substitute_benchmark.cc +158 -0
  835. package/deps/abseil-cpp/absl/strings/substitute_test.cc +288 -0
  836. package/deps/abseil-cpp/absl/synchronization/BUILD.bazel +410 -0
  837. package/deps/abseil-cpp/absl/synchronization/CMakeLists.txt +293 -0
  838. package/deps/abseil-cpp/absl/synchronization/barrier.cc +52 -0
  839. package/deps/abseil-cpp/absl/synchronization/barrier.h +79 -0
  840. package/deps/abseil-cpp/absl/synchronization/barrier_test.cc +75 -0
  841. package/deps/abseil-cpp/absl/synchronization/blocking_counter.cc +73 -0
  842. package/deps/abseil-cpp/absl/synchronization/blocking_counter.h +107 -0
  843. package/deps/abseil-cpp/absl/synchronization/blocking_counter_benchmark.cc +84 -0
  844. package/deps/abseil-cpp/absl/synchronization/blocking_counter_test.cc +146 -0
  845. package/deps/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +152 -0
  846. package/deps/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +56 -0
  847. package/deps/abseil-cpp/absl/synchronization/internal/futex.h +177 -0
  848. package/deps/abseil-cpp/absl/synchronization/internal/futex_waiter.cc +107 -0
  849. package/deps/abseil-cpp/absl/synchronization/internal/futex_waiter.h +63 -0
  850. package/deps/abseil-cpp/absl/synchronization/internal/graphcycles.cc +714 -0
  851. package/deps/abseil-cpp/absl/synchronization/internal/graphcycles.h +146 -0
  852. package/deps/abseil-cpp/absl/synchronization/internal/graphcycles_benchmark.cc +43 -0
  853. package/deps/abseil-cpp/absl/synchronization/internal/graphcycles_test.cc +483 -0
  854. package/deps/abseil-cpp/absl/synchronization/internal/kernel_timeout.cc +220 -0
  855. package/deps/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +178 -0
  856. package/deps/abseil-cpp/absl/synchronization/internal/kernel_timeout_test.cc +406 -0
  857. package/deps/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +106 -0
  858. package/deps/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +119 -0
  859. package/deps/abseil-cpp/absl/synchronization/internal/per_thread_sem_test.cc +194 -0
  860. package/deps/abseil-cpp/absl/synchronization/internal/pthread_waiter.cc +163 -0
  861. package/deps/abseil-cpp/absl/synchronization/internal/pthread_waiter.h +60 -0
  862. package/deps/abseil-cpp/absl/synchronization/internal/sem_waiter.cc +118 -0
  863. package/deps/abseil-cpp/absl/synchronization/internal/sem_waiter.h +65 -0
  864. package/deps/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.cc +87 -0
  865. package/deps/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.h +56 -0
  866. package/deps/abseil-cpp/absl/synchronization/internal/thread_pool.h +96 -0
  867. package/deps/abseil-cpp/absl/synchronization/internal/waiter.h +69 -0
  868. package/deps/abseil-cpp/absl/synchronization/internal/waiter_base.cc +38 -0
  869. package/deps/abseil-cpp/absl/synchronization/internal/waiter_base.h +90 -0
  870. package/deps/abseil-cpp/absl/synchronization/internal/waiter_test.cc +192 -0
  871. package/deps/abseil-cpp/absl/synchronization/internal/win32_waiter.cc +147 -0
  872. package/deps/abseil-cpp/absl/synchronization/internal/win32_waiter.h +72 -0
  873. package/deps/abseil-cpp/absl/synchronization/lifetime_test.cc +180 -0
  874. package/deps/abseil-cpp/absl/synchronization/mutex.cc +2820 -0
  875. package/deps/abseil-cpp/absl/synchronization/mutex.h +1352 -0
  876. package/deps/abseil-cpp/absl/synchronization/mutex_benchmark.cc +321 -0
  877. package/deps/abseil-cpp/absl/synchronization/mutex_method_pointer_test.cc +138 -0
  878. package/deps/abseil-cpp/absl/synchronization/mutex_test.cc +2065 -0
  879. package/deps/abseil-cpp/absl/synchronization/notification.cc +85 -0
  880. package/deps/abseil-cpp/absl/synchronization/notification.h +133 -0
  881. package/deps/abseil-cpp/absl/synchronization/notification_test.cc +230 -0
  882. package/deps/abseil-cpp/absl/time/BUILD.bazel +244 -0
  883. package/deps/abseil-cpp/absl/time/CMakeLists.txt +218 -0
  884. package/deps/abseil-cpp/absl/time/civil_time.cc +200 -0
  885. package/deps/abseil-cpp/absl/time/civil_time.h +589 -0
  886. package/deps/abseil-cpp/absl/time/civil_time_benchmark.cc +129 -0
  887. package/deps/abseil-cpp/absl/time/civil_time_test.cc +1351 -0
  888. package/deps/abseil-cpp/absl/time/clock.cc +603 -0
  889. package/deps/abseil-cpp/absl/time/clock.h +78 -0
  890. package/deps/abseil-cpp/absl/time/clock_benchmark.cc +74 -0
  891. package/deps/abseil-cpp/absl/time/clock_interface.cc +71 -0
  892. package/deps/abseil-cpp/absl/time/clock_interface.h +91 -0
  893. package/deps/abseil-cpp/absl/time/clock_interface_test.cc +128 -0
  894. package/deps/abseil-cpp/absl/time/clock_test.cc +122 -0
  895. package/deps/abseil-cpp/absl/time/duration.cc +918 -0
  896. package/deps/abseil-cpp/absl/time/duration_benchmark.cc +608 -0
  897. package/deps/abseil-cpp/absl/time/duration_test.cc +1901 -0
  898. package/deps/abseil-cpp/absl/time/flag_test.cc +147 -0
  899. package/deps/abseil-cpp/absl/time/format.cc +162 -0
  900. package/deps/abseil-cpp/absl/time/format_benchmark.cc +64 -0
  901. package/deps/abseil-cpp/absl/time/format_test.cc +441 -0
  902. package/deps/abseil-cpp/absl/time/internal/cctz/BUILD.bazel +195 -0
  903. package/deps/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time.h +332 -0
  904. package/deps/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +644 -0
  905. package/deps/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +460 -0
  906. package/deps/abseil-cpp/absl/time/internal/cctz/include/cctz/zone_info_source.h +102 -0
  907. package/deps/abseil-cpp/absl/time/internal/cctz/src/cctz_benchmark.cc +436 -0
  908. package/deps/abseil-cpp/absl/time/internal/cctz/src/civil_time_detail.cc +94 -0
  909. package/deps/abseil-cpp/absl/time/internal/cctz/src/civil_time_test.cc +1066 -0
  910. package/deps/abseil-cpp/absl/time/internal/cctz/src/test_time_zone_names.cc +515 -0
  911. package/deps/abseil-cpp/absl/time/internal/cctz/src/test_time_zone_names.h +33 -0
  912. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +140 -0
  913. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.h +52 -0
  914. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1068 -0
  915. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_format_test.cc +1773 -0
  916. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc +47 -0
  917. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +80 -0
  918. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +115 -0
  919. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +97 -0
  920. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +1070 -0
  921. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +128 -0
  922. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +333 -0
  923. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h +60 -0
  924. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +217 -0
  925. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup_test.cc +918 -0
  926. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.cc +186 -0
  927. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.h +37 -0
  928. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.cc +159 -0
  929. package/deps/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h +132 -0
  930. package/deps/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +120 -0
  931. package/deps/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +116 -0
  932. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/README.zoneinfo +38 -0
  933. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/version +1 -0
  934. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Abidjan +0 -0
  935. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Accra +0 -0
  936. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Addis_Ababa +0 -0
  937. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Algiers +0 -0
  938. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Asmara +0 -0
  939. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Asmera +0 -0
  940. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Bamako +0 -0
  941. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Bangui +0 -0
  942. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Banjul +0 -0
  943. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Bissau +0 -0
  944. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Blantyre +0 -0
  945. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Brazzaville +0 -0
  946. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Bujumbura +0 -0
  947. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Cairo +0 -0
  948. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Casablanca +0 -0
  949. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Ceuta +0 -0
  950. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Conakry +0 -0
  951. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Dakar +0 -0
  952. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Dar_es_Salaam +0 -0
  953. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Djibouti +0 -0
  954. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Douala +0 -0
  955. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/El_Aaiun +0 -0
  956. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Freetown +0 -0
  957. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Gaborone +0 -0
  958. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Harare +0 -0
  959. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Johannesburg +0 -0
  960. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Juba +0 -0
  961. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Kampala +0 -0
  962. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Khartoum +0 -0
  963. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Kigali +0 -0
  964. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Kinshasa +0 -0
  965. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Lagos +0 -0
  966. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Libreville +0 -0
  967. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Lome +0 -0
  968. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Luanda +0 -0
  969. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Lubumbashi +0 -0
  970. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Lusaka +0 -0
  971. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Malabo +0 -0
  972. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Maputo +0 -0
  973. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Maseru +0 -0
  974. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Mbabane +0 -0
  975. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Mogadishu +0 -0
  976. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Monrovia +0 -0
  977. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Nairobi +0 -0
  978. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Ndjamena +0 -0
  979. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Niamey +0 -0
  980. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Nouakchott +0 -0
  981. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Ouagadougou +0 -0
  982. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Porto-Novo +0 -0
  983. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Sao_Tome +0 -0
  984. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Timbuktu +0 -0
  985. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Tripoli +0 -0
  986. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Tunis +0 -0
  987. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Africa/Windhoek +0 -0
  988. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Adak +0 -0
  989. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Anchorage +0 -0
  990. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Anguilla +0 -0
  991. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Antigua +0 -0
  992. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Araguaina +0 -0
  993. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Buenos_Aires +0 -0
  994. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Catamarca +0 -0
  995. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/ComodRivadavia +0 -0
  996. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Cordoba +0 -0
  997. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Jujuy +0 -0
  998. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/La_Rioja +0 -0
  999. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Mendoza +0 -0
  1000. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Rio_Gallegos +0 -0
  1001. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Salta +0 -0
  1002. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/San_Juan +0 -0
  1003. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/San_Luis +0 -0
  1004. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Tucuman +0 -0
  1005. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Argentina/Ushuaia +0 -0
  1006. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Aruba +0 -0
  1007. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Asuncion +0 -0
  1008. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Atikokan +0 -0
  1009. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Atka +0 -0
  1010. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Bahia +0 -0
  1011. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Bahia_Banderas +0 -0
  1012. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Barbados +0 -0
  1013. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Belem +0 -0
  1014. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Belize +0 -0
  1015. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Blanc-Sablon +0 -0
  1016. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Boa_Vista +0 -0
  1017. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Bogota +0 -0
  1018. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Boise +0 -0
  1019. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Buenos_Aires +0 -0
  1020. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Cambridge_Bay +0 -0
  1021. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Campo_Grande +0 -0
  1022. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Cancun +0 -0
  1023. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Caracas +0 -0
  1024. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Catamarca +0 -0
  1025. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Cayenne +0 -0
  1026. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Cayman +0 -0
  1027. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Chicago +0 -0
  1028. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Chihuahua +0 -0
  1029. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Ciudad_Juarez +0 -0
  1030. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Coral_Harbour +0 -0
  1031. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Cordoba +0 -0
  1032. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Costa_Rica +0 -0
  1033. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Coyhaique +0 -0
  1034. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Creston +0 -0
  1035. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Cuiaba +0 -0
  1036. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Curacao +0 -0
  1037. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Danmarkshavn +0 -0
  1038. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Dawson +0 -0
  1039. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Dawson_Creek +0 -0
  1040. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Denver +0 -0
  1041. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Detroit +0 -0
  1042. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Dominica +0 -0
  1043. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Edmonton +0 -0
  1044. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Eirunepe +0 -0
  1045. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/El_Salvador +0 -0
  1046. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Ensenada +0 -0
  1047. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Fort_Nelson +0 -0
  1048. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Fort_Wayne +0 -0
  1049. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Fortaleza +0 -0
  1050. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Glace_Bay +0 -0
  1051. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Godthab +0 -0
  1052. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Goose_Bay +0 -0
  1053. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Grand_Turk +0 -0
  1054. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Grenada +0 -0
  1055. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Guadeloupe +0 -0
  1056. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Guatemala +0 -0
  1057. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Guayaquil +0 -0
  1058. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Guyana +0 -0
  1059. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Halifax +0 -0
  1060. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Havana +0 -0
  1061. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Hermosillo +0 -0
  1062. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Indianapolis +0 -0
  1063. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Knox +0 -0
  1064. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Marengo +0 -0
  1065. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Petersburg +0 -0
  1066. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Tell_City +0 -0
  1067. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Vevay +0 -0
  1068. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Vincennes +0 -0
  1069. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indiana/Winamac +0 -0
  1070. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Indianapolis +0 -0
  1071. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Inuvik +0 -0
  1072. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Iqaluit +0 -0
  1073. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Jamaica +0 -0
  1074. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Jujuy +0 -0
  1075. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Juneau +0 -0
  1076. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Kentucky/Louisville +0 -0
  1077. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Kentucky/Monticello +0 -0
  1078. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Knox_IN +0 -0
  1079. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Kralendijk +0 -0
  1080. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/La_Paz +0 -0
  1081. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Lima +0 -0
  1082. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Los_Angeles +0 -0
  1083. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Louisville +0 -0
  1084. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Lower_Princes +0 -0
  1085. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Maceio +0 -0
  1086. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Managua +0 -0
  1087. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Manaus +0 -0
  1088. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Marigot +0 -0
  1089. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Martinique +0 -0
  1090. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Matamoros +0 -0
  1091. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Mazatlan +0 -0
  1092. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Mendoza +0 -0
  1093. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Menominee +0 -0
  1094. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Merida +0 -0
  1095. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Metlakatla +0 -0
  1096. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Mexico_City +0 -0
  1097. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Miquelon +0 -0
  1098. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Moncton +0 -0
  1099. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Monterrey +0 -0
  1100. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Montevideo +0 -0
  1101. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Montreal +0 -0
  1102. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Montserrat +0 -0
  1103. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Nassau +0 -0
  1104. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/New_York +0 -0
  1105. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Nipigon +0 -0
  1106. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Nome +0 -0
  1107. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Noronha +0 -0
  1108. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/North_Dakota/Beulah +0 -0
  1109. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/North_Dakota/Center +0 -0
  1110. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/North_Dakota/New_Salem +0 -0
  1111. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Nuuk +0 -0
  1112. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Ojinaga +0 -0
  1113. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Panama +0 -0
  1114. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Pangnirtung +0 -0
  1115. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Paramaribo +0 -0
  1116. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Phoenix +0 -0
  1117. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Port-au-Prince +0 -0
  1118. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Port_of_Spain +0 -0
  1119. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Porto_Acre +0 -0
  1120. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Porto_Velho +0 -0
  1121. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Puerto_Rico +0 -0
  1122. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Punta_Arenas +0 -0
  1123. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Rainy_River +0 -0
  1124. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Rankin_Inlet +0 -0
  1125. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Recife +0 -0
  1126. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Regina +0 -0
  1127. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Resolute +0 -0
  1128. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Rio_Branco +0 -0
  1129. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Rosario +0 -0
  1130. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Santa_Isabel +0 -0
  1131. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Santarem +0 -0
  1132. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Santiago +0 -0
  1133. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Santo_Domingo +0 -0
  1134. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Sao_Paulo +0 -0
  1135. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Scoresbysund +0 -0
  1136. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Shiprock +0 -0
  1137. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Sitka +0 -0
  1138. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/St_Barthelemy +0 -0
  1139. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/St_Johns +0 -0
  1140. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/St_Kitts +0 -0
  1141. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/St_Lucia +0 -0
  1142. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/St_Thomas +0 -0
  1143. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/St_Vincent +0 -0
  1144. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Swift_Current +0 -0
  1145. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Tegucigalpa +0 -0
  1146. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Thule +0 -0
  1147. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Thunder_Bay +0 -0
  1148. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Tijuana +0 -0
  1149. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Toronto +0 -0
  1150. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Tortola +0 -0
  1151. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Vancouver +0 -0
  1152. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Virgin +0 -0
  1153. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Whitehorse +0 -0
  1154. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Winnipeg +0 -0
  1155. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Yakutat +0 -0
  1156. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Yellowknife +0 -0
  1157. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Casey +0 -0
  1158. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Davis +0 -0
  1159. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/DumontDUrville +0 -0
  1160. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Macquarie +0 -0
  1161. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Mawson +0 -0
  1162. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/McMurdo +0 -0
  1163. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Palmer +0 -0
  1164. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Rothera +0 -0
  1165. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/South_Pole +0 -0
  1166. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Syowa +0 -0
  1167. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Troll +0 -0
  1168. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Antarctica/Vostok +0 -0
  1169. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Arctic/Longyearbyen +0 -0
  1170. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Aden +0 -0
  1171. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Almaty +0 -0
  1172. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Amman +0 -0
  1173. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Anadyr +0 -0
  1174. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Aqtau +0 -0
  1175. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Aqtobe +0 -0
  1176. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ashgabat +0 -0
  1177. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ashkhabad +0 -0
  1178. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Atyrau +0 -0
  1179. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Baghdad +0 -0
  1180. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Bahrain +0 -0
  1181. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Baku +0 -0
  1182. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Bangkok +0 -0
  1183. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Barnaul +0 -0
  1184. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Beirut +0 -0
  1185. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Bishkek +0 -0
  1186. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Brunei +0 -0
  1187. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Calcutta +0 -0
  1188. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Chita +0 -0
  1189. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Choibalsan +0 -0
  1190. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Chongqing +0 -0
  1191. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Chungking +0 -0
  1192. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Colombo +0 -0
  1193. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Dacca +0 -0
  1194. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Damascus +0 -0
  1195. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Dhaka +0 -0
  1196. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Dili +0 -0
  1197. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Dubai +0 -0
  1198. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Dushanbe +0 -0
  1199. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Famagusta +0 -0
  1200. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Gaza +0 -0
  1201. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Harbin +0 -0
  1202. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Hebron +0 -0
  1203. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ho_Chi_Minh +0 -0
  1204. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Hong_Kong +0 -0
  1205. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Hovd +0 -0
  1206. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Irkutsk +0 -0
  1207. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Istanbul +0 -0
  1208. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Jakarta +0 -0
  1209. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Jayapura +0 -0
  1210. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Jerusalem +0 -0
  1211. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kabul +0 -0
  1212. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kamchatka +0 -0
  1213. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Karachi +0 -0
  1214. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kashgar +0 -0
  1215. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kathmandu +0 -0
  1216. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Katmandu +0 -0
  1217. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Khandyga +0 -0
  1218. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kolkata +0 -0
  1219. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Krasnoyarsk +0 -0
  1220. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kuala_Lumpur +0 -0
  1221. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kuching +0 -0
  1222. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Kuwait +0 -0
  1223. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Macao +0 -0
  1224. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Macau +0 -0
  1225. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Magadan +0 -0
  1226. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Makassar +0 -0
  1227. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Manila +0 -0
  1228. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Muscat +0 -0
  1229. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Nicosia +0 -0
  1230. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Novokuznetsk +0 -0
  1231. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Novosibirsk +0 -0
  1232. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Omsk +0 -0
  1233. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Oral +0 -0
  1234. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Phnom_Penh +0 -0
  1235. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Pontianak +0 -0
  1236. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Pyongyang +0 -0
  1237. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Qatar +0 -0
  1238. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Qostanay +0 -0
  1239. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Qyzylorda +0 -0
  1240. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Rangoon +0 -0
  1241. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Riyadh +0 -0
  1242. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Saigon +0 -0
  1243. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Sakhalin +0 -0
  1244. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Samarkand +0 -0
  1245. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Seoul +0 -0
  1246. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Shanghai +0 -0
  1247. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Singapore +0 -0
  1248. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Srednekolymsk +0 -0
  1249. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Taipei +0 -0
  1250. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tashkent +0 -0
  1251. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tbilisi +0 -0
  1252. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tehran +0 -0
  1253. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tel_Aviv +0 -0
  1254. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Thimbu +0 -0
  1255. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Thimphu +0 -0
  1256. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tokyo +0 -0
  1257. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tomsk +0 -0
  1258. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ujung_Pandang +0 -0
  1259. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ulaanbaatar +0 -0
  1260. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ulan_Bator +0 -0
  1261. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Urumqi +0 -0
  1262. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ust-Nera +0 -0
  1263. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Vientiane +0 -0
  1264. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Vladivostok +0 -0
  1265. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Yakutsk +0 -0
  1266. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Yangon +0 -0
  1267. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Yekaterinburg +0 -0
  1268. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Yerevan +0 -0
  1269. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Azores +0 -0
  1270. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Bermuda +0 -0
  1271. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Canary +0 -0
  1272. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Cape_Verde +0 -0
  1273. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Faeroe +0 -0
  1274. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Faroe +0 -0
  1275. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Jan_Mayen +0 -0
  1276. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Madeira +0 -0
  1277. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Reykjavik +0 -0
  1278. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/South_Georgia +0 -0
  1279. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/St_Helena +0 -0
  1280. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Atlantic/Stanley +0 -0
  1281. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/ACT +0 -0
  1282. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Adelaide +0 -0
  1283. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Brisbane +0 -0
  1284. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Broken_Hill +0 -0
  1285. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Canberra +0 -0
  1286. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Currie +0 -0
  1287. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Darwin +0 -0
  1288. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Eucla +0 -0
  1289. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Hobart +0 -0
  1290. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/LHI +0 -0
  1291. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Lindeman +0 -0
  1292. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Lord_Howe +0 -0
  1293. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Melbourne +0 -0
  1294. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/NSW +0 -0
  1295. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/North +0 -0
  1296. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Perth +0 -0
  1297. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Queensland +0 -0
  1298. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/South +0 -0
  1299. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Sydney +0 -0
  1300. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Tasmania +0 -0
  1301. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Victoria +0 -0
  1302. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/West +0 -0
  1303. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Australia/Yancowinna +0 -0
  1304. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Brazil/Acre +0 -0
  1305. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Brazil/DeNoronha +0 -0
  1306. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Brazil/East +0 -0
  1307. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Brazil/West +0 -0
  1308. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/CET +0 -0
  1309. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/CST6CDT +0 -0
  1310. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Atlantic +0 -0
  1311. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Central +0 -0
  1312. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Eastern +0 -0
  1313. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Mountain +0 -0
  1314. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Newfoundland +0 -0
  1315. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Pacific +0 -0
  1316. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Saskatchewan +0 -0
  1317. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Yukon +0 -0
  1318. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Chile/Continental +0 -0
  1319. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Chile/EasterIsland +0 -0
  1320. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Cuba +0 -0
  1321. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/EET +0 -0
  1322. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/EST +0 -0
  1323. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/EST5EDT +0 -0
  1324. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Egypt +0 -0
  1325. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Eire +0 -0
  1326. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT +0 -0
  1327. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+0 +0 -0
  1328. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+1 +0 -0
  1329. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+10 +0 -0
  1330. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+11 +0 -0
  1331. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+12 +0 -0
  1332. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+2 +0 -0
  1333. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+3 +0 -0
  1334. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+4 +0 -0
  1335. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+5 +0 -0
  1336. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+6 +0 -0
  1337. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+7 +0 -0
  1338. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+8 +0 -0
  1339. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT+9 +0 -0
  1340. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-0 +0 -0
  1341. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-1 +0 -0
  1342. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-10 +0 -0
  1343. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-11 +0 -0
  1344. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-12 +0 -0
  1345. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-13 +0 -0
  1346. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-14 +0 -0
  1347. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-2 +0 -0
  1348. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-3 +0 -0
  1349. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-4 +0 -0
  1350. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-5 +0 -0
  1351. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-6 +0 -0
  1352. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-7 +0 -0
  1353. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-8 +0 -0
  1354. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT-9 +0 -0
  1355. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/GMT0 +0 -0
  1356. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/Greenwich +0 -0
  1357. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/UCT +0 -0
  1358. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/UTC +0 -0
  1359. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/Universal +0 -0
  1360. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Etc/Zulu +0 -0
  1361. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Amsterdam +0 -0
  1362. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Andorra +0 -0
  1363. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Astrakhan +0 -0
  1364. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Athens +0 -0
  1365. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Belfast +0 -0
  1366. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Belgrade +0 -0
  1367. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Berlin +0 -0
  1368. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Bratislava +0 -0
  1369. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Brussels +0 -0
  1370. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Bucharest +0 -0
  1371. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Budapest +0 -0
  1372. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Busingen +0 -0
  1373. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Chisinau +0 -0
  1374. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Copenhagen +0 -0
  1375. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Dublin +0 -0
  1376. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Gibraltar +0 -0
  1377. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Guernsey +0 -0
  1378. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Helsinki +0 -0
  1379. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Isle_of_Man +0 -0
  1380. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Istanbul +0 -0
  1381. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Jersey +0 -0
  1382. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Kaliningrad +0 -0
  1383. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Kiev +0 -0
  1384. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Kirov +0 -0
  1385. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Kyiv +0 -0
  1386. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Lisbon +0 -0
  1387. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Ljubljana +0 -0
  1388. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/London +0 -0
  1389. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Luxembourg +0 -0
  1390. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Madrid +0 -0
  1391. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Malta +0 -0
  1392. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Mariehamn +0 -0
  1393. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Minsk +0 -0
  1394. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Monaco +0 -0
  1395. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Moscow +0 -0
  1396. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Nicosia +0 -0
  1397. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Oslo +0 -0
  1398. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Paris +0 -0
  1399. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Podgorica +0 -0
  1400. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Prague +0 -0
  1401. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Riga +0 -0
  1402. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Rome +0 -0
  1403. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Samara +0 -0
  1404. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/San_Marino +0 -0
  1405. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Sarajevo +0 -0
  1406. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Saratov +0 -0
  1407. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Simferopol +0 -0
  1408. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Skopje +0 -0
  1409. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Sofia +0 -0
  1410. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Stockholm +0 -0
  1411. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Tallinn +0 -0
  1412. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Tirane +0 -0
  1413. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Tiraspol +0 -0
  1414. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Ulyanovsk +0 -0
  1415. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Uzhgorod +0 -0
  1416. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Vaduz +0 -0
  1417. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Vatican +0 -0
  1418. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Vienna +0 -0
  1419. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Vilnius +0 -0
  1420. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Volgograd +0 -0
  1421. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Warsaw +0 -0
  1422. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Zagreb +0 -0
  1423. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Zaporozhye +0 -0
  1424. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Zurich +0 -0
  1425. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Factory +0 -0
  1426. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/GB +0 -0
  1427. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/GB-Eire +0 -0
  1428. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/GMT +0 -0
  1429. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/GMT+0 +0 -0
  1430. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/GMT-0 +0 -0
  1431. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/GMT0 +0 -0
  1432. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Greenwich +0 -0
  1433. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/HST +0 -0
  1434. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Hongkong +0 -0
  1435. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Iceland +0 -0
  1436. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Antananarivo +0 -0
  1437. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Chagos +0 -0
  1438. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Christmas +0 -0
  1439. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Cocos +0 -0
  1440. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Comoro +0 -0
  1441. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Kerguelen +0 -0
  1442. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Mahe +0 -0
  1443. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Maldives +0 -0
  1444. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Mauritius +0 -0
  1445. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Mayotte +0 -0
  1446. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Indian/Reunion +0 -0
  1447. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Iran +0 -0
  1448. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Israel +0 -0
  1449. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Jamaica +0 -0
  1450. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Japan +0 -0
  1451. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Kwajalein +0 -0
  1452. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Libya +0 -0
  1453. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/MET +0 -0
  1454. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/MST +0 -0
  1455. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/MST7MDT +0 -0
  1456. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Mexico/BajaNorte +0 -0
  1457. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Mexico/BajaSur +0 -0
  1458. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Mexico/General +0 -0
  1459. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/NZ +0 -0
  1460. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/NZ-CHAT +0 -0
  1461. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Navajo +0 -0
  1462. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/PRC +0 -0
  1463. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/PST8PDT +0 -0
  1464. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Apia +0 -0
  1465. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Auckland +0 -0
  1466. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Bougainville +0 -0
  1467. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Chatham +0 -0
  1468. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Chuuk +0 -0
  1469. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Easter +0 -0
  1470. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Efate +0 -0
  1471. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Enderbury +0 -0
  1472. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Fakaofo +0 -0
  1473. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Fiji +0 -0
  1474. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Funafuti +0 -0
  1475. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Galapagos +0 -0
  1476. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Gambier +0 -0
  1477. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Guadalcanal +0 -0
  1478. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Guam +0 -0
  1479. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Honolulu +0 -0
  1480. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Johnston +0 -0
  1481. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Kanton +0 -0
  1482. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Kiritimati +0 -0
  1483. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Kosrae +0 -0
  1484. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Kwajalein +0 -0
  1485. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Majuro +0 -0
  1486. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Marquesas +0 -0
  1487. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Midway +0 -0
  1488. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Nauru +0 -0
  1489. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Niue +0 -0
  1490. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Norfolk +0 -0
  1491. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Noumea +0 -0
  1492. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Pago_Pago +0 -0
  1493. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Palau +0 -0
  1494. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Pitcairn +0 -0
  1495. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Pohnpei +0 -0
  1496. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Ponape +0 -0
  1497. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Port_Moresby +0 -0
  1498. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Rarotonga +0 -0
  1499. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Saipan +0 -0
  1500. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Samoa +0 -0
  1501. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Tahiti +0 -0
  1502. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Tarawa +0 -0
  1503. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Tongatapu +0 -0
  1504. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Truk +0 -0
  1505. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Wake +0 -0
  1506. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Wallis +0 -0
  1507. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Pacific/Yap +0 -0
  1508. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Poland +0 -0
  1509. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Portugal +0 -0
  1510. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/ROC +0 -0
  1511. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/ROK +0 -0
  1512. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Singapore +0 -0
  1513. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Turkey +0 -0
  1514. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/UCT +0 -0
  1515. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Alaska +0 -0
  1516. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Aleutian +0 -0
  1517. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Arizona +0 -0
  1518. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Central +0 -0
  1519. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/East-Indiana +0 -0
  1520. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Eastern +0 -0
  1521. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Hawaii +0 -0
  1522. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Indiana-Starke +0 -0
  1523. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Michigan +0 -0
  1524. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Mountain +0 -0
  1525. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Pacific +0 -0
  1526. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/US/Samoa +0 -0
  1527. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/UTC +0 -0
  1528. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Universal +0 -0
  1529. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/W-SU +0 -0
  1530. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/WET +0 -0
  1531. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Zulu +0 -0
  1532. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/iso3166.tab +279 -0
  1533. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zone1970.tab +375 -0
  1534. package/deps/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zonenow.tab +296 -0
  1535. package/deps/abseil-cpp/absl/time/internal/get_current_time_chrono.inc +31 -0
  1536. package/deps/abseil-cpp/absl/time/internal/get_current_time_posix.inc +24 -0
  1537. package/deps/abseil-cpp/absl/time/internal/test_util.cc +32 -0
  1538. package/deps/abseil-cpp/absl/time/internal/test_util.h +33 -0
  1539. package/deps/abseil-cpp/absl/time/simulated_clock.cc +225 -0
  1540. package/deps/abseil-cpp/absl/time/simulated_clock.h +108 -0
  1541. package/deps/abseil-cpp/absl/time/simulated_clock_test.cc +614 -0
  1542. package/deps/abseil-cpp/absl/time/time.cc +507 -0
  1543. package/deps/abseil-cpp/absl/time/time.h +1926 -0
  1544. package/deps/abseil-cpp/absl/time/time_benchmark.cc +321 -0
  1545. package/deps/abseil-cpp/absl/time/time_test.cc +1365 -0
  1546. package/deps/abseil-cpp/absl/time/time_zone_test.cc +97 -0
  1547. package/deps/abseil-cpp/absl/types/BUILD.bazel +166 -0
  1548. package/deps/abseil-cpp/absl/types/CMakeLists.txt +179 -0
  1549. package/deps/abseil-cpp/absl/types/any.h +44 -0
  1550. package/deps/abseil-cpp/absl/types/compare.h +506 -0
  1551. package/deps/abseil-cpp/absl/types/compare_test.cc +300 -0
  1552. package/deps/abseil-cpp/absl/types/internal/span.h +141 -0
  1553. package/deps/abseil-cpp/absl/types/optional.h +41 -0
  1554. package/deps/abseil-cpp/absl/types/span.h +830 -0
  1555. package/deps/abseil-cpp/absl/types/span_test.cc +915 -0
  1556. package/deps/abseil-cpp/absl/types/variant.h +82 -0
  1557. package/deps/abseil-cpp/absl/types/variant_test.cc +164 -0
  1558. package/deps/abseil-cpp/absl/utility/BUILD.bazel +46 -0
  1559. package/deps/abseil-cpp/absl/utility/CMakeLists.txt +28 -0
  1560. package/deps/abseil-cpp/absl/utility/utility.h +68 -0
  1561. package/deps/abseil-cpp/ci/absl_alternate_options.h +28 -0
  1562. package/deps/abseil-cpp/ci/cmake_common.sh +19 -0
  1563. package/deps/abseil-cpp/ci/cmake_install_test.sh +64 -0
  1564. package/deps/abseil-cpp/ci/linux_arm_clang-latest_libcxx_bazel.sh +106 -0
  1565. package/deps/abseil-cpp/ci/linux_clang-latest_libcxx_asan_bazel.sh +114 -0
  1566. package/deps/abseil-cpp/ci/linux_clang-latest_libcxx_bazel.sh +107 -0
  1567. package/deps/abseil-cpp/ci/linux_clang-latest_libcxx_tsan_bazel.sh +106 -0
  1568. package/deps/abseil-cpp/ci/linux_clang-latest_libstdcxx_bazel.sh +104 -0
  1569. package/deps/abseil-cpp/ci/linux_docker_containers.sh +22 -0
  1570. package/deps/abseil-cpp/ci/linux_gcc-floor_libstdcxx_bazel.sh +100 -0
  1571. package/deps/abseil-cpp/ci/linux_gcc-latest_libstdcxx_bazel.sh +105 -0
  1572. package/deps/abseil-cpp/ci/linux_gcc-latest_libstdcxx_cmake.sh +85 -0
  1573. package/deps/abseil-cpp/ci/linux_gcc_alpine_cmake.sh +85 -0
  1574. package/deps/abseil-cpp/ci/macos_xcode_bazel.sh +70 -0
  1575. package/deps/abseil-cpp/ci/macos_xcode_cmake.sh +78 -0
  1576. package/deps/abseil-cpp/ci/windows_clangcl_bazel.bat +70 -0
  1577. package/deps/abseil-cpp/ci/windows_msvc_bazel.bat +61 -0
  1578. package/deps/abseil-cpp/ci/windows_msvc_cmake.bat +69 -0
  1579. package/deps/abseil-cpp/conanfile.py +51 -0
  1580. package/deps/abseil-cpp/create_lts.py +139 -0
  1581. package/deps/re2/.bazelrc +20 -0
  1582. package/deps/re2/.bcr/metadata.template.json +16 -0
  1583. package/deps/re2/.bcr/presubmit.yml +57 -0
  1584. package/deps/re2/.bcr/source.template.json +5 -0
  1585. package/deps/re2/BUILD.bazel +463 -0
  1586. package/deps/re2/CMakeLists.txt +283 -0
  1587. package/deps/re2/LICENSE +27 -0
  1588. package/deps/re2/MODULE.bazel +29 -0
  1589. package/deps/re2/Makefile +408 -0
  1590. package/deps/re2/WORKSPACE.bazel +7 -0
  1591. package/deps/re2/WORKSPACE.bzlmod +7 -0
  1592. package/deps/re2/app/BUILD.bazel +24 -0
  1593. package/deps/re2/app/_re2.cc +94 -0
  1594. package/deps/re2/app/_re2.d.ts +23 -0
  1595. package/deps/re2/app/app.ts +111 -0
  1596. package/deps/re2/app/build.sh +32 -0
  1597. package/deps/re2/app/index.html +5 -0
  1598. package/deps/re2/app/package.json +14 -0
  1599. package/deps/re2/app/rollup.config.js +28 -0
  1600. package/deps/re2/app/tsconfig.json +17 -0
  1601. package/deps/re2/benchlog/benchplot.py +98 -0
  1602. package/deps/re2/benchlog/mktable +155 -0
  1603. package/deps/re2/doc/mksyntaxgo +42 -0
  1604. package/deps/re2/doc/mksyntaxhtml +42 -0
  1605. package/deps/re2/doc/mksyntaxwiki +36 -0
  1606. package/deps/re2/doc/syntax.html +477 -0
  1607. package/deps/re2/doc/syntax.txt +463 -0
  1608. package/deps/re2/lib/git/commit-msg.hook +104 -0
  1609. package/deps/re2/libre2.symbols +16 -0
  1610. package/deps/re2/libre2.symbols.darwin +12 -0
  1611. package/deps/re2/python/BUILD.bazel +80 -0
  1612. package/deps/re2/python/_re2.cc +352 -0
  1613. package/deps/re2/python/re2.py +583 -0
  1614. package/deps/re2/python/re2_test.py +495 -0
  1615. package/deps/re2/python/setup.py +159 -0
  1616. package/deps/re2/python/toolchains/generate.py +100 -0
  1617. package/deps/re2/re2/bitmap256.cc +43 -0
  1618. package/deps/re2/re2/bitmap256.h +88 -0
  1619. package/deps/re2/re2/bitstate.cc +389 -0
  1620. package/deps/re2/re2/compile.cc +1265 -0
  1621. package/deps/re2/re2/dfa.cc +2135 -0
  1622. package/deps/re2/re2/filtered_re2.cc +138 -0
  1623. package/deps/re2/re2/filtered_re2.h +115 -0
  1624. package/deps/re2/re2/fuzzing/re2_fuzzer.cc +284 -0
  1625. package/deps/re2/re2/make_perl_groups.pl +116 -0
  1626. package/deps/re2/re2/make_unicode_casefold.py +151 -0
  1627. package/deps/re2/re2/make_unicode_groups.py +117 -0
  1628. package/deps/re2/re2/mimics_pcre.cc +196 -0
  1629. package/deps/re2/re2/nfa.cc +714 -0
  1630. package/deps/re2/re2/onepass.cc +623 -0
  1631. package/deps/re2/re2/parse.cc +2529 -0
  1632. package/deps/re2/re2/perl_groups.cc +119 -0
  1633. package/deps/re2/re2/pod_array.h +55 -0
  1634. package/deps/re2/re2/prefilter.cc +711 -0
  1635. package/deps/re2/re2/prefilter.h +168 -0
  1636. package/deps/re2/re2/prefilter_tree.cc +376 -0
  1637. package/deps/re2/re2/prefilter_tree.h +153 -0
  1638. package/deps/re2/re2/prog.cc +1181 -0
  1639. package/deps/re2/re2/prog.h +493 -0
  1640. package/deps/re2/re2/re2.cc +1355 -0
  1641. package/deps/re2/re2/re2.h +1074 -0
  1642. package/deps/re2/re2/regexp.cc +1004 -0
  1643. package/deps/re2/re2/regexp.h +693 -0
  1644. package/deps/re2/re2/set.cc +185 -0
  1645. package/deps/re2/re2/set.h +91 -0
  1646. package/deps/re2/re2/simplify.cc +689 -0
  1647. package/deps/re2/re2/sparse_array.h +394 -0
  1648. package/deps/re2/re2/sparse_set.h +266 -0
  1649. package/deps/re2/re2/stringpiece.h +18 -0
  1650. package/deps/re2/re2/testing/backtrack.cc +274 -0
  1651. package/deps/re2/re2/testing/charclass_test.cc +228 -0
  1652. package/deps/re2/re2/testing/compile_test.cc +431 -0
  1653. package/deps/re2/re2/testing/dfa_test.cc +376 -0
  1654. package/deps/re2/re2/testing/dump.cc +172 -0
  1655. package/deps/re2/re2/testing/exhaustive1_test.cc +40 -0
  1656. package/deps/re2/re2/testing/exhaustive2_test.cc +72 -0
  1657. package/deps/re2/re2/testing/exhaustive3_test.cc +100 -0
  1658. package/deps/re2/re2/testing/exhaustive_test.cc +35 -0
  1659. package/deps/re2/re2/testing/exhaustive_tester.cc +204 -0
  1660. package/deps/re2/re2/testing/exhaustive_tester.h +105 -0
  1661. package/deps/re2/re2/testing/filtered_re2_test.cc +343 -0
  1662. package/deps/re2/re2/testing/mimics_pcre_test.cc +79 -0
  1663. package/deps/re2/re2/testing/null_walker.cc +48 -0
  1664. package/deps/re2/re2/testing/parse_test.cc +586 -0
  1665. package/deps/re2/re2/testing/possible_match_test.cc +251 -0
  1666. package/deps/re2/re2/testing/random_test.cc +102 -0
  1667. package/deps/re2/re2/testing/re2_arg_test.cc +182 -0
  1668. package/deps/re2/re2/testing/re2_test.cc +1699 -0
  1669. package/deps/re2/re2/testing/regexp_benchmark.cc +1605 -0
  1670. package/deps/re2/re2/testing/regexp_generator.cc +284 -0
  1671. package/deps/re2/re2/testing/regexp_generator.h +77 -0
  1672. package/deps/re2/re2/testing/regexp_test.cc +87 -0
  1673. package/deps/re2/re2/testing/required_prefix_test.cc +201 -0
  1674. package/deps/re2/re2/testing/search_test.cc +338 -0
  1675. package/deps/re2/re2/testing/set_test.cc +235 -0
  1676. package/deps/re2/re2/testing/simplify_test.cc +289 -0
  1677. package/deps/re2/re2/testing/string_generator.cc +144 -0
  1678. package/deps/re2/re2/testing/string_generator.h +76 -0
  1679. package/deps/re2/re2/testing/string_generator_test.cc +114 -0
  1680. package/deps/re2/re2/testing/tester.cc +690 -0
  1681. package/deps/re2/re2/testing/tester.h +121 -0
  1682. package/deps/re2/re2/tostring.cc +351 -0
  1683. package/deps/re2/re2/unicode.py +284 -0
  1684. package/deps/re2/re2/unicode_casefold.cc +604 -0
  1685. package/deps/re2/re2/unicode_casefold.h +77 -0
  1686. package/deps/re2/re2/unicode_groups.cc +6517 -0
  1687. package/deps/re2/re2/unicode_groups.h +66 -0
  1688. package/deps/re2/re2/walker-inl.h +249 -0
  1689. package/deps/re2/re2.pc.in +9 -0
  1690. package/deps/re2/re2Config.cmake.in +26 -0
  1691. package/deps/re2/runtests +33 -0
  1692. package/deps/re2/testinstall.cc +27 -0
  1693. package/deps/re2/ucs2.diff +567 -0
  1694. package/deps/re2/util/malloc_counter.h +19 -0
  1695. package/deps/re2/util/pcre.cc +957 -0
  1696. package/deps/re2/util/pcre.h +671 -0
  1697. package/deps/re2/util/rune.cc +260 -0
  1698. package/deps/re2/util/strutil.cc +26 -0
  1699. package/deps/re2/util/strutil.h +16 -0
  1700. package/deps/re2/util/utf.h +44 -0
  1701. package/index.js +14 -5
  1702. package/package.json +1 -1
  1703. package/prebuilds/darwin-arm64/@nxtedition+rocksdb.node +0 -0
  1704. package/prebuilds/linux-x64/@nxtedition+rocksdb.node +0 -0
  1705. package/util.h +10 -16
@@ -0,0 +1,2261 @@
1
+ //
2
+ // Copyright 2022 The Abseil Authors.
3
+ //
4
+ // Licensed under the Apache License, Version 2.0 (the "License");
5
+ // you may not use this file except in compliance with the License.
6
+ // You may obtain a copy of the License at
7
+ //
8
+ // https://www.apache.org/licenses/LICENSE-2.0
9
+ //
10
+ // Unless required by applicable law or agreed to in writing, software
11
+ // distributed under the License is distributed on an "AS IS" BASIS,
12
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ // See the License for the specific language governing permissions and
14
+ // limitations under the License.
15
+
16
+ #include <math.h>
17
+
18
+ #include <cstring>
19
+ #include <iomanip>
20
+ #include <ios>
21
+ #include <limits>
22
+ #include <ostream>
23
+ #include <sstream>
24
+ #include <string>
25
+ #include <string_view>
26
+ #include <type_traits>
27
+
28
+ #ifdef __ANDROID__
29
+ #include <android/api-level.h>
30
+ #endif
31
+ #include "gmock/gmock.h"
32
+ #include "gtest/gtest.h"
33
+ #include "absl/base/config.h"
34
+ #include "absl/log/check.h"
35
+ #include "absl/log/internal/test_matchers.h"
36
+ #include "absl/log/log.h"
37
+ #include "absl/log/scoped_mock_log.h"
38
+ #include "absl/strings/match.h"
39
+ #include "absl/strings/str_cat.h"
40
+ #include "absl/strings/str_format.h"
41
+ #include "absl/strings/string_view.h"
42
+ #include "absl/types/optional.h"
43
+
44
+ namespace {
45
+ using ::absl::log_internal::AsString;
46
+ using ::absl::log_internal::MatchesOstream;
47
+ using ::absl::log_internal::RawEncodedMessage;
48
+ using ::absl::log_internal::TextMessage;
49
+ using ::absl::log_internal::TextPrefix;
50
+ using ::testing::_;
51
+ using ::testing::AllOf;
52
+ using ::testing::AnyOf;
53
+ using ::testing::Each;
54
+ using ::testing::EndsWith;
55
+ using ::testing::Eq;
56
+ using ::testing::Ge;
57
+ using ::testing::IsEmpty;
58
+ using ::testing::Le;
59
+ using ::testing::SizeIs;
60
+ using ::testing::Types;
61
+
62
+ // Some aspects of formatting streamed data (e.g. pointer handling) are
63
+ // implementation-defined. Others are buggy in supported implementations.
64
+ // These tests validate that the formatting matches that performed by a
65
+ // `std::ostream` and also that the result is one of a list of expected formats.
66
+
67
+ std::ostringstream ComparisonStream() {
68
+ std::ostringstream str;
69
+ str.setf(std::ios_base::showbase | std::ios_base::boolalpha |
70
+ std::ios_base::internal);
71
+ return str;
72
+ }
73
+
74
+ TEST(LogFormatTest, NoMessage) {
75
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
76
+ EXPECT_CALL(test_sink, Send).Times(0);
77
+
78
+ const int log_line = __LINE__ + 1;
79
+ auto do_log = [] { LOG(INFO); };
80
+
81
+ EXPECT_CALL(test_sink,
82
+ Send(AllOf(TextMessage(MatchesOstream(ComparisonStream())),
83
+ TextPrefix(AsString(EndsWith(absl::StrCat(
84
+ " log_format_test.cc:", log_line, "] ")))),
85
+ TextMessage(IsEmpty()),
86
+ ENCODED_MESSAGE(HasValues(IsEmpty())))));
87
+
88
+ test_sink.StartCapturingLogs();
89
+ do_log();
90
+ }
91
+
92
+ template <typename T>
93
+ class CharLogFormatTest : public testing::Test {};
94
+ using CharTypes = Types<char, signed char, unsigned char>;
95
+ TYPED_TEST_SUITE(CharLogFormatTest, CharTypes);
96
+
97
+ TYPED_TEST(CharLogFormatTest, Printable) {
98
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
99
+ EXPECT_CALL(test_sink, Send).Times(0);
100
+
101
+ const TypeParam value = 'x';
102
+ auto comparison_stream = ComparisonStream();
103
+ comparison_stream << value;
104
+
105
+ EXPECT_CALL(
106
+ test_sink,
107
+ Send(AllOf(
108
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("x")),
109
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("x"))))))));
110
+
111
+ test_sink.StartCapturingLogs();
112
+ LOG(INFO) << value;
113
+ }
114
+
115
+ TYPED_TEST(CharLogFormatTest, Unprintable) {
116
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
117
+ EXPECT_CALL(test_sink, Send).Times(0);
118
+
119
+ constexpr auto value = static_cast<TypeParam>(0xeeu);
120
+ auto comparison_stream = ComparisonStream();
121
+ comparison_stream << value;
122
+
123
+ EXPECT_CALL(
124
+ test_sink,
125
+ Send(AllOf(
126
+ TextMessage(MatchesOstream(comparison_stream)),
127
+ TextMessage(Eq("\xee")),
128
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("\xee"))))))));
129
+
130
+ test_sink.StartCapturingLogs();
131
+ LOG(INFO) << value;
132
+ }
133
+
134
+ TEST(WideCharLogFormatTest, Printable) {
135
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
136
+ EXPECT_CALL(test_sink, Send).Times(0);
137
+
138
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq("€")),
139
+ ENCODED_MESSAGE(HasValues(
140
+ ElementsAre(ValueWithStr(Eq("€"))))))));
141
+
142
+ test_sink.StartCapturingLogs();
143
+ const wchar_t value = L'\u20AC';
144
+ LOG(INFO) << value;
145
+ }
146
+
147
+ TEST(WideCharLogFormatTest, Unprintable) {
148
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
149
+ EXPECT_CALL(test_sink, Send).Times(0);
150
+
151
+ // Using NEL (Next Line) Unicode character (U+0085).
152
+ // It is encoded as "\xC2\x85" in UTF-8.
153
+ constexpr wchar_t wide_value = L'\u0085';
154
+ constexpr char value[] = "\xC2\x85";
155
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(value)),
156
+ ENCODED_MESSAGE(HasValues(ElementsAre(
157
+ ValueWithStr(Eq(value))))))));
158
+
159
+ test_sink.StartCapturingLogs();
160
+ LOG(INFO) << wide_value;
161
+ }
162
+
163
+ template <typename T>
164
+ class UnsignedIntLogFormatTest : public testing::Test {};
165
+ using UnsignedIntTypes = Types<unsigned short, unsigned int, // NOLINT
166
+ unsigned long, unsigned long long>; // NOLINT
167
+ TYPED_TEST_SUITE(UnsignedIntLogFormatTest, UnsignedIntTypes);
168
+
169
+ TYPED_TEST(UnsignedIntLogFormatTest, Positive) {
170
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
171
+ EXPECT_CALL(test_sink, Send).Times(0);
172
+
173
+ const TypeParam value = 224;
174
+ auto comparison_stream = ComparisonStream();
175
+ comparison_stream << value;
176
+
177
+ EXPECT_CALL(
178
+ test_sink,
179
+ Send(AllOf(
180
+ TextMessage(MatchesOstream(comparison_stream)),
181
+ TextMessage(Eq("224")),
182
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("224"))))))));
183
+
184
+ test_sink.StartCapturingLogs();
185
+ LOG(INFO) << value;
186
+ }
187
+
188
+ TYPED_TEST(UnsignedIntLogFormatTest, BitfieldPositive) {
189
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
190
+ EXPECT_CALL(test_sink, Send).Times(0);
191
+
192
+ const struct {
193
+ TypeParam bits : 6;
194
+ } value{42};
195
+ auto comparison_stream = ComparisonStream();
196
+ comparison_stream << value.bits;
197
+
198
+ EXPECT_CALL(
199
+ test_sink,
200
+ Send(AllOf(
201
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("42")),
202
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("42"))))))));
203
+
204
+ test_sink.StartCapturingLogs();
205
+ LOG(INFO) << value.bits;
206
+ }
207
+
208
+ template <typename T>
209
+ class SignedIntLogFormatTest : public testing::Test {};
210
+ using SignedIntTypes =
211
+ Types<signed short, signed int, signed long, signed long long>; // NOLINT
212
+ TYPED_TEST_SUITE(SignedIntLogFormatTest, SignedIntTypes);
213
+
214
+ TYPED_TEST(SignedIntLogFormatTest, Positive) {
215
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
216
+ EXPECT_CALL(test_sink, Send).Times(0);
217
+
218
+ const TypeParam value = 224;
219
+ auto comparison_stream = ComparisonStream();
220
+ comparison_stream << value;
221
+
222
+ EXPECT_CALL(
223
+ test_sink,
224
+ Send(AllOf(
225
+ TextMessage(MatchesOstream(comparison_stream)),
226
+ TextMessage(Eq("224")),
227
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("224"))))))));
228
+
229
+ test_sink.StartCapturingLogs();
230
+ LOG(INFO) << value;
231
+ }
232
+
233
+ TYPED_TEST(SignedIntLogFormatTest, Negative) {
234
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
235
+ EXPECT_CALL(test_sink, Send).Times(0);
236
+
237
+ const TypeParam value = -112;
238
+ auto comparison_stream = ComparisonStream();
239
+ comparison_stream << value;
240
+
241
+ EXPECT_CALL(
242
+ test_sink,
243
+ Send(AllOf(
244
+ TextMessage(MatchesOstream(comparison_stream)),
245
+ TextMessage(Eq("-112")),
246
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("-112"))))))));
247
+
248
+ test_sink.StartCapturingLogs();
249
+ LOG(INFO) << value;
250
+ }
251
+
252
+ TYPED_TEST(SignedIntLogFormatTest, BitfieldPositive) {
253
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
254
+ EXPECT_CALL(test_sink, Send).Times(0);
255
+
256
+ const struct {
257
+ TypeParam bits : 6;
258
+ } value{21};
259
+ auto comparison_stream = ComparisonStream();
260
+ comparison_stream << value.bits;
261
+
262
+ EXPECT_CALL(
263
+ test_sink,
264
+ Send(AllOf(
265
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("21")),
266
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("21"))))))));
267
+
268
+ test_sink.StartCapturingLogs();
269
+ LOG(INFO) << value.bits;
270
+ }
271
+
272
+ TYPED_TEST(SignedIntLogFormatTest, BitfieldNegative) {
273
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
274
+ EXPECT_CALL(test_sink, Send).Times(0);
275
+
276
+ const struct {
277
+ TypeParam bits : 6;
278
+ } value{-21};
279
+ auto comparison_stream = ComparisonStream();
280
+ comparison_stream << value.bits;
281
+
282
+ EXPECT_CALL(
283
+ test_sink,
284
+ Send(AllOf(
285
+ TextMessage(MatchesOstream(comparison_stream)),
286
+ TextMessage(Eq("-21")),
287
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("-21"))))))));
288
+
289
+ test_sink.StartCapturingLogs();
290
+ LOG(INFO) << value.bits;
291
+ }
292
+
293
+ // Ignore these test cases on GCC due to "is too small to hold all values ..."
294
+ // warning.
295
+ #if !defined(__GNUC__) || defined(__clang__)
296
+ // The implementation may choose a signed or unsigned integer type to represent
297
+ // this enum, so it may be tested by either `UnsignedEnumLogFormatTest` or
298
+ // `SignedEnumLogFormatTest`.
299
+ enum MyUnsignedEnum {
300
+ MyUnsignedEnum_ZERO = 0,
301
+ MyUnsignedEnum_FORTY_TWO = 42,
302
+ MyUnsignedEnum_TWO_HUNDRED_TWENTY_FOUR = 224,
303
+ };
304
+ enum MyUnsignedIntEnum : unsigned int {
305
+ MyUnsignedIntEnum_ZERO = 0,
306
+ MyUnsignedIntEnum_FORTY_TWO = 42,
307
+ MyUnsignedIntEnum_TWO_HUNDRED_TWENTY_FOUR = 224,
308
+ };
309
+
310
+ template <typename T>
311
+ class UnsignedEnumLogFormatTest : public testing::Test {};
312
+ using UnsignedEnumTypes = std::conditional<
313
+ std::is_signed<std::underlying_type<MyUnsignedEnum>::type>::value,
314
+ Types<MyUnsignedIntEnum>, Types<MyUnsignedEnum, MyUnsignedIntEnum>>::type;
315
+ TYPED_TEST_SUITE(UnsignedEnumLogFormatTest, UnsignedEnumTypes);
316
+
317
+ TYPED_TEST(UnsignedEnumLogFormatTest, Positive) {
318
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
319
+ EXPECT_CALL(test_sink, Send).Times(0);
320
+
321
+ const TypeParam value = static_cast<TypeParam>(224);
322
+ auto comparison_stream = ComparisonStream();
323
+ comparison_stream << value;
324
+
325
+ EXPECT_CALL(
326
+ test_sink,
327
+ Send(AllOf(
328
+ TextMessage(MatchesOstream(comparison_stream)),
329
+ TextMessage(Eq("224")),
330
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("224"))))))));
331
+
332
+ test_sink.StartCapturingLogs();
333
+ LOG(INFO) << value;
334
+ }
335
+
336
+ TYPED_TEST(UnsignedEnumLogFormatTest, BitfieldPositive) {
337
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
338
+ EXPECT_CALL(test_sink, Send).Times(0);
339
+
340
+ const struct {
341
+ TypeParam bits : 6;
342
+ } value{static_cast<TypeParam>(42)};
343
+ auto comparison_stream = ComparisonStream();
344
+ comparison_stream << value.bits;
345
+
346
+ EXPECT_CALL(
347
+ test_sink,
348
+ Send(AllOf(
349
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("42")),
350
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("42"))))))));
351
+
352
+ test_sink.StartCapturingLogs();
353
+ LOG(INFO) << value.bits;
354
+ }
355
+
356
+ enum MySignedEnum {
357
+ MySignedEnum_NEGATIVE_ONE_HUNDRED_TWELVE = -112,
358
+ MySignedEnum_NEGATIVE_TWENTY_ONE = -21,
359
+ MySignedEnum_ZERO = 0,
360
+ MySignedEnum_TWENTY_ONE = 21,
361
+ MySignedEnum_TWO_HUNDRED_TWENTY_FOUR = 224,
362
+ };
363
+ enum MySignedIntEnum : signed int {
364
+ MySignedIntEnum_NEGATIVE_ONE_HUNDRED_TWELVE = -112,
365
+ MySignedIntEnum_NEGATIVE_TWENTY_ONE = -21,
366
+ MySignedIntEnum_ZERO = 0,
367
+ MySignedIntEnum_TWENTY_ONE = 21,
368
+ MySignedIntEnum_TWO_HUNDRED_TWENTY_FOUR = 224,
369
+ };
370
+
371
+ template <typename T>
372
+ class SignedEnumLogFormatTest : public testing::Test {};
373
+ using SignedEnumTypes = std::conditional<
374
+ std::is_signed<std::underlying_type<MyUnsignedEnum>::type>::value,
375
+ Types<MyUnsignedEnum, MySignedEnum, MySignedIntEnum>,
376
+ Types<MySignedEnum, MySignedIntEnum>>::type;
377
+ TYPED_TEST_SUITE(SignedEnumLogFormatTest, SignedEnumTypes);
378
+
379
+ TYPED_TEST(SignedEnumLogFormatTest, Positive) {
380
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
381
+ EXPECT_CALL(test_sink, Send).Times(0);
382
+
383
+ const TypeParam value = static_cast<TypeParam>(224);
384
+ auto comparison_stream = ComparisonStream();
385
+ comparison_stream << value;
386
+
387
+ EXPECT_CALL(
388
+ test_sink,
389
+ Send(AllOf(
390
+ TextMessage(MatchesOstream(comparison_stream)),
391
+ TextMessage(Eq("224")),
392
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("224"))))))));
393
+
394
+ test_sink.StartCapturingLogs();
395
+ LOG(INFO) << value;
396
+ }
397
+
398
+ TYPED_TEST(SignedEnumLogFormatTest, Negative) {
399
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
400
+ EXPECT_CALL(test_sink, Send).Times(0);
401
+
402
+ const TypeParam value = static_cast<TypeParam>(-112);
403
+ auto comparison_stream = ComparisonStream();
404
+ comparison_stream << value;
405
+
406
+ EXPECT_CALL(
407
+ test_sink,
408
+ Send(AllOf(
409
+ TextMessage(MatchesOstream(comparison_stream)),
410
+ TextMessage(Eq("-112")),
411
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("-112"))))))));
412
+
413
+ test_sink.StartCapturingLogs();
414
+ LOG(INFO) << value;
415
+ }
416
+
417
+ TYPED_TEST(SignedEnumLogFormatTest, BitfieldPositive) {
418
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
419
+ EXPECT_CALL(test_sink, Send).Times(0);
420
+
421
+ const struct {
422
+ TypeParam bits : 6;
423
+ } value{static_cast<TypeParam>(21)};
424
+ auto comparison_stream = ComparisonStream();
425
+ comparison_stream << value.bits;
426
+
427
+ EXPECT_CALL(
428
+ test_sink,
429
+ Send(AllOf(
430
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("21")),
431
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("21"))))))));
432
+
433
+ test_sink.StartCapturingLogs();
434
+ LOG(INFO) << value.bits;
435
+ }
436
+
437
+ TYPED_TEST(SignedEnumLogFormatTest, BitfieldNegative) {
438
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
439
+ EXPECT_CALL(test_sink, Send).Times(0);
440
+
441
+ const struct {
442
+ TypeParam bits : 6;
443
+ } value{static_cast<TypeParam>(-21)};
444
+ auto comparison_stream = ComparisonStream();
445
+ comparison_stream << value.bits;
446
+
447
+ EXPECT_CALL(
448
+ test_sink,
449
+ Send(AllOf(
450
+ TextMessage(MatchesOstream(comparison_stream)),
451
+ TextMessage(Eq("-21")),
452
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("-21"))))))));
453
+
454
+ test_sink.StartCapturingLogs();
455
+ LOG(INFO) << value.bits;
456
+ }
457
+ #endif
458
+
459
+ TEST(FloatLogFormatTest, Positive) {
460
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
461
+ EXPECT_CALL(test_sink, Send).Times(0);
462
+
463
+ const float value = 6.02e23f;
464
+ auto comparison_stream = ComparisonStream();
465
+ comparison_stream << value;
466
+
467
+ EXPECT_CALL(test_sink,
468
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
469
+ TextMessage(Eq("6.02e+23")),
470
+ ENCODED_MESSAGE(HasValues(
471
+ ElementsAre(ValueWithStr(Eq("6.02e+23"))))))));
472
+
473
+ test_sink.StartCapturingLogs();
474
+ LOG(INFO) << value;
475
+ }
476
+
477
+ TEST(FloatLogFormatTest, Negative) {
478
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
479
+ EXPECT_CALL(test_sink, Send).Times(0);
480
+
481
+ const float value = -6.02e23f;
482
+ auto comparison_stream = ComparisonStream();
483
+ comparison_stream << value;
484
+
485
+ EXPECT_CALL(test_sink,
486
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
487
+ TextMessage(Eq("-6.02e+23")),
488
+ ENCODED_MESSAGE(HasValues(
489
+ ElementsAre(ValueWithStr(Eq("-6.02e+23"))))))));
490
+
491
+ test_sink.StartCapturingLogs();
492
+ LOG(INFO) << value;
493
+ }
494
+
495
+ TEST(FloatLogFormatTest, NegativeExponent) {
496
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
497
+ EXPECT_CALL(test_sink, Send).Times(0);
498
+
499
+ const float value = 6.02e-23f;
500
+ auto comparison_stream = ComparisonStream();
501
+ comparison_stream << value;
502
+
503
+ EXPECT_CALL(test_sink,
504
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
505
+ TextMessage(Eq("6.02e-23")),
506
+ ENCODED_MESSAGE(HasValues(
507
+ ElementsAre(ValueWithStr(Eq("6.02e-23"))))))));
508
+
509
+ test_sink.StartCapturingLogs();
510
+ LOG(INFO) << value;
511
+ }
512
+
513
+ TEST(DoubleLogFormatTest, Positive) {
514
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
515
+ EXPECT_CALL(test_sink, Send).Times(0);
516
+
517
+ const double value = 6.02e23;
518
+ auto comparison_stream = ComparisonStream();
519
+ comparison_stream << value;
520
+
521
+ EXPECT_CALL(test_sink,
522
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
523
+ TextMessage(Eq("6.02e+23")),
524
+ ENCODED_MESSAGE(HasValues(
525
+ ElementsAre(ValueWithStr(Eq("6.02e+23"))))))));
526
+
527
+ test_sink.StartCapturingLogs();
528
+ LOG(INFO) << value;
529
+ }
530
+
531
+ TEST(DoubleLogFormatTest, Negative) {
532
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
533
+ EXPECT_CALL(test_sink, Send).Times(0);
534
+
535
+ const double value = -6.02e23;
536
+ auto comparison_stream = ComparisonStream();
537
+ comparison_stream << value;
538
+
539
+ EXPECT_CALL(test_sink,
540
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
541
+ TextMessage(Eq("-6.02e+23")),
542
+ ENCODED_MESSAGE(HasValues(
543
+ ElementsAre(ValueWithStr(Eq("-6.02e+23"))))))));
544
+
545
+ test_sink.StartCapturingLogs();
546
+ LOG(INFO) << value;
547
+ }
548
+
549
+ TEST(DoubleLogFormatTest, NegativeExponent) {
550
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
551
+ EXPECT_CALL(test_sink, Send).Times(0);
552
+
553
+ const double value = 6.02e-23;
554
+ auto comparison_stream = ComparisonStream();
555
+ comparison_stream << value;
556
+
557
+ EXPECT_CALL(test_sink,
558
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
559
+ TextMessage(Eq("6.02e-23")),
560
+ ENCODED_MESSAGE(HasValues(
561
+ ElementsAre(ValueWithStr(Eq("6.02e-23"))))))));
562
+
563
+ test_sink.StartCapturingLogs();
564
+ LOG(INFO) << value;
565
+ }
566
+
567
+ template <typename T>
568
+ class FloatingPointLogFormatTest : public testing::Test {};
569
+ using FloatingPointTypes = Types<float, double>;
570
+ TYPED_TEST_SUITE(FloatingPointLogFormatTest, FloatingPointTypes);
571
+
572
+ TYPED_TEST(FloatingPointLogFormatTest, Zero) {
573
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
574
+ EXPECT_CALL(test_sink, Send).Times(0);
575
+
576
+ const TypeParam value = 0.0;
577
+ auto comparison_stream = ComparisonStream();
578
+ comparison_stream << value;
579
+
580
+ EXPECT_CALL(
581
+ test_sink,
582
+ Send(AllOf(
583
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("0")),
584
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("0"))))))));
585
+
586
+ test_sink.StartCapturingLogs();
587
+ LOG(INFO) << value;
588
+ }
589
+
590
+ TYPED_TEST(FloatingPointLogFormatTest, Integer) {
591
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
592
+ EXPECT_CALL(test_sink, Send).Times(0);
593
+
594
+ const TypeParam value = 1.0;
595
+ auto comparison_stream = ComparisonStream();
596
+ comparison_stream << value;
597
+
598
+ EXPECT_CALL(
599
+ test_sink,
600
+ Send(AllOf(
601
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("1")),
602
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("1"))))))));
603
+
604
+ test_sink.StartCapturingLogs();
605
+ LOG(INFO) << value;
606
+ }
607
+
608
+ TYPED_TEST(FloatingPointLogFormatTest, Infinity) {
609
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
610
+ EXPECT_CALL(test_sink, Send).Times(0);
611
+
612
+ const TypeParam value = std::numeric_limits<TypeParam>::infinity();
613
+ auto comparison_stream = ComparisonStream();
614
+ comparison_stream << value;
615
+
616
+ EXPECT_CALL(
617
+ test_sink,
618
+ Send(AllOf(
619
+ TextMessage(MatchesOstream(comparison_stream)),
620
+ TextMessage(AnyOf(Eq("inf"), Eq("Inf"))),
621
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("inf"))))))));
622
+
623
+ test_sink.StartCapturingLogs();
624
+ LOG(INFO) << value;
625
+ }
626
+
627
+ TYPED_TEST(FloatingPointLogFormatTest, NegativeInfinity) {
628
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
629
+ EXPECT_CALL(test_sink, Send).Times(0);
630
+
631
+ const TypeParam value = -std::numeric_limits<TypeParam>::infinity();
632
+ auto comparison_stream = ComparisonStream();
633
+ comparison_stream << value;
634
+
635
+ EXPECT_CALL(
636
+ test_sink,
637
+ Send(AllOf(
638
+ TextMessage(MatchesOstream(comparison_stream)),
639
+ TextMessage(AnyOf(Eq("-inf"), Eq("-Inf"))),
640
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("-inf"))))))));
641
+
642
+ test_sink.StartCapturingLogs();
643
+ LOG(INFO) << value;
644
+ }
645
+
646
+ TYPED_TEST(FloatingPointLogFormatTest, NaN) {
647
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
648
+ EXPECT_CALL(test_sink, Send).Times(0);
649
+
650
+ const TypeParam value = std::numeric_limits<TypeParam>::quiet_NaN();
651
+ auto comparison_stream = ComparisonStream();
652
+ comparison_stream << value;
653
+
654
+ EXPECT_CALL(
655
+ test_sink,
656
+ Send(AllOf(
657
+ TextMessage(MatchesOstream(comparison_stream)),
658
+ TextMessage(AnyOf(Eq("nan"), Eq("NaN"))),
659
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("nan"))))))));
660
+ test_sink.StartCapturingLogs();
661
+ LOG(INFO) << value;
662
+ }
663
+
664
+ TYPED_TEST(FloatingPointLogFormatTest, NegativeNaN) {
665
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
666
+ EXPECT_CALL(test_sink, Send).Times(0);
667
+
668
+ const TypeParam value =
669
+ std::copysign(std::numeric_limits<TypeParam>::quiet_NaN(), -1.0);
670
+ auto comparison_stream = ComparisonStream();
671
+ comparison_stream << value;
672
+
673
+ // On RISC-V, don't expect that formatting -NaN produces the same string as
674
+ // streaming it. #ifdefing out just the relevant line breaks the MSVC build,
675
+ // so duplicate the entire EXPECT_CALL.
676
+ #ifdef __riscv
677
+ EXPECT_CALL(test_sink,
678
+ Send(AllOf(TextMessage(AnyOf(Eq("-nan"), Eq("nan"), Eq("NaN"),
679
+ Eq("-nan(ind)"))),
680
+ ENCODED_MESSAGE(HasValues(ElementsAre(AnyOf(
681
+ ValueWithStr(Eq("-nan")), ValueWithStr(Eq("nan")),
682
+ ValueWithStr(Eq("-nan(ind)")))))))));
683
+ #else
684
+ EXPECT_CALL(test_sink,
685
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
686
+ TextMessage(AnyOf(Eq("-nan"), Eq("nan"), Eq("NaN"),
687
+ Eq("-nan(ind)"))),
688
+ ENCODED_MESSAGE(HasValues(ElementsAre(AnyOf(
689
+ ValueWithStr(Eq("-nan")), ValueWithStr(Eq("nan")),
690
+ ValueWithStr(Eq("-nan(ind)")))))))));
691
+ #endif
692
+ test_sink.StartCapturingLogs();
693
+ LOG(INFO) << value;
694
+ }
695
+
696
+ template <typename T>
697
+ class VoidPtrLogFormatTest : public testing::Test {};
698
+ using VoidPtrTypes = Types<void*, const void*>;
699
+ TYPED_TEST_SUITE(VoidPtrLogFormatTest, VoidPtrTypes);
700
+
701
+ TYPED_TEST(VoidPtrLogFormatTest, Null) {
702
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
703
+ EXPECT_CALL(test_sink, Send).Times(0);
704
+
705
+ const TypeParam value = nullptr;
706
+ auto comparison_stream = ComparisonStream();
707
+ comparison_stream << value;
708
+
709
+ EXPECT_CALL(
710
+ test_sink,
711
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
712
+ TextMessage(AnyOf(Eq("(nil)"), Eq("0"), Eq("0x0"),
713
+ Eq("00000000"), Eq("0000000000000000"))))));
714
+
715
+ test_sink.StartCapturingLogs();
716
+ LOG(INFO) << value;
717
+ }
718
+
719
+ TYPED_TEST(VoidPtrLogFormatTest, NonNull) {
720
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
721
+ EXPECT_CALL(test_sink, Send).Times(0);
722
+
723
+ const TypeParam value = reinterpret_cast<TypeParam>(0xdeadbeefULL);
724
+ auto comparison_stream = ComparisonStream();
725
+ comparison_stream << value;
726
+
727
+ EXPECT_CALL(test_sink,
728
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
729
+ TextMessage(AnyOf(Eq("0xdeadbeef"), Eq("DEADBEEF"),
730
+ Eq("00000000DEADBEEF"))),
731
+ ENCODED_MESSAGE(HasValues(ElementsAre(
732
+ AnyOf(ValueWithStr(Eq("0xdeadbeef")),
733
+ ValueWithStr(Eq("00000000DEADBEEF")))))))));
734
+
735
+ test_sink.StartCapturingLogs();
736
+ LOG(INFO) << value;
737
+ }
738
+
739
+ template <typename T>
740
+ class VolatilePtrLogFormatTest : public testing::Test {};
741
+ using VolatilePtrTypes = Types<
742
+ volatile void*, const volatile void*, volatile char*, const volatile char*,
743
+ volatile signed char*, const volatile signed char*, volatile unsigned char*,
744
+ const volatile unsigned char*, volatile wchar_t*, const volatile wchar_t*>;
745
+ TYPED_TEST_SUITE(VolatilePtrLogFormatTest, VolatilePtrTypes);
746
+
747
+ TYPED_TEST(VolatilePtrLogFormatTest, Null) {
748
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
749
+ EXPECT_CALL(test_sink, Send).Times(0);
750
+
751
+ const TypeParam value = nullptr;
752
+ auto comparison_stream = ComparisonStream();
753
+ comparison_stream << value;
754
+
755
+ // https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p1147r1.html
756
+ #if ABSL_INTERNAL_CPLUSPLUS_LANG >= 202302L
757
+ EXPECT_CALL(
758
+ test_sink,
759
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
760
+ TextMessage(AnyOf(Eq("(nil)"), Eq("0"), Eq("0x0"),
761
+ Eq("00000000"), Eq("0000000000000000"))))));
762
+ #else
763
+ EXPECT_CALL(
764
+ test_sink,
765
+ Send(AllOf(
766
+ TextMessage(MatchesOstream(comparison_stream)),
767
+ TextMessage(Eq("false")),
768
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("false"))))))));
769
+ #endif
770
+
771
+ test_sink.StartCapturingLogs();
772
+ LOG(INFO) << value;
773
+ }
774
+
775
+ TYPED_TEST(VolatilePtrLogFormatTest, NonNull) {
776
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
777
+ EXPECT_CALL(test_sink, Send).Times(0);
778
+
779
+ const TypeParam value = reinterpret_cast<TypeParam>(0xdeadbeefLL);
780
+ auto comparison_stream = ComparisonStream();
781
+ comparison_stream << value;
782
+
783
+ // https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p1147r1.html
784
+ #if ABSL_INTERNAL_CPLUSPLUS_LANG >= 202302L
785
+ EXPECT_CALL(test_sink,
786
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
787
+ TextMessage(AnyOf(Eq("0xdeadbeef"), Eq("DEADBEEF"),
788
+ Eq("00000000DEADBEEF"))),
789
+ ENCODED_MESSAGE(HasValues(ElementsAre(
790
+ AnyOf(ValueWithStr(Eq("0xdeadbeef")),
791
+ ValueWithStr(Eq("00000000DEADBEEF")))))))));
792
+ #else
793
+ EXPECT_CALL(
794
+ test_sink,
795
+ Send(AllOf(
796
+ TextMessage(MatchesOstream(comparison_stream)),
797
+ TextMessage(Eq("true")),
798
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("true"))))))));
799
+ #endif
800
+
801
+ test_sink.StartCapturingLogs();
802
+ LOG(INFO) << value;
803
+ }
804
+
805
+ template <typename T>
806
+ class CharPtrLogFormatTest : public testing::Test {};
807
+ using CharPtrTypes = Types<char, const char, signed char, const signed char,
808
+ unsigned char, const unsigned char>;
809
+ TYPED_TEST_SUITE(CharPtrLogFormatTest, CharPtrTypes);
810
+
811
+ TYPED_TEST(CharPtrLogFormatTest, Null) {
812
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
813
+ EXPECT_CALL(test_sink, Send).Times(0);
814
+
815
+ // Streaming `([cv] char *)nullptr` into a `std::ostream` is UB, and some C++
816
+ // standard library implementations choose to crash. We take measures to log
817
+ // something useful instead of crashing, even when that differs from the
818
+ // standard library in use (and thus the behavior of `std::ostream`).
819
+ TypeParam* const value = nullptr;
820
+
821
+ EXPECT_CALL(
822
+ test_sink,
823
+ Send(AllOf(
824
+ // `MatchesOstream` deliberately omitted since we deliberately differ.
825
+ TextMessage(Eq("(null)")), ENCODED_MESSAGE(HasValues(ElementsAre(
826
+ ValueWithStr(Eq("(null)"))))))));
827
+
828
+ test_sink.StartCapturingLogs();
829
+ LOG(INFO) << value;
830
+ }
831
+
832
+ TYPED_TEST(CharPtrLogFormatTest, NonNull) {
833
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
834
+ EXPECT_CALL(test_sink, Send).Times(0);
835
+
836
+ TypeParam data[] = {'v', 'a', 'l', 'u', 'e', '\0'};
837
+ TypeParam* const value = data;
838
+ auto comparison_stream = ComparisonStream();
839
+ comparison_stream << value;
840
+
841
+ EXPECT_CALL(
842
+ test_sink,
843
+ Send(AllOf(
844
+ TextMessage(MatchesOstream(comparison_stream)),
845
+ TextMessage(Eq("value")),
846
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("value"))))))));
847
+
848
+ test_sink.StartCapturingLogs();
849
+ LOG(INFO) << value;
850
+ }
851
+
852
+ template <typename T>
853
+ class WideCharPtrLogFormatTest : public testing::Test {};
854
+ using WideCharPtrTypes = Types<wchar_t, const wchar_t>;
855
+ TYPED_TEST_SUITE(WideCharPtrLogFormatTest, WideCharPtrTypes);
856
+
857
+ TYPED_TEST(WideCharPtrLogFormatTest, Null) {
858
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
859
+ EXPECT_CALL(test_sink, Send).Times(0);
860
+
861
+ TypeParam* const value = nullptr;
862
+
863
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq("(null)")),
864
+ ENCODED_MESSAGE(HasValues(ElementsAre(
865
+ ValueWithStr(Eq("(null)"))))))));
866
+
867
+ test_sink.StartCapturingLogs();
868
+ LOG(INFO) << value;
869
+ }
870
+
871
+ TYPED_TEST(WideCharPtrLogFormatTest, NonNull) {
872
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
873
+ EXPECT_CALL(test_sink, Send).Times(0);
874
+
875
+ TypeParam data[] = {'v', 'a', 'l', 'u', 'e', '\0'};
876
+ TypeParam* const value = data;
877
+
878
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq("value")),
879
+ ENCODED_MESSAGE(HasValues(ElementsAre(
880
+ ValueWithStr(Eq("value"))))))));
881
+
882
+ test_sink.StartCapturingLogs();
883
+ LOG(INFO) << value;
884
+ }
885
+
886
+ TEST(BoolLogFormatTest, True) {
887
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
888
+ EXPECT_CALL(test_sink, Send).Times(0);
889
+
890
+ const bool value = true;
891
+ auto comparison_stream = ComparisonStream();
892
+ comparison_stream << value;
893
+
894
+ EXPECT_CALL(
895
+ test_sink,
896
+ Send(AllOf(
897
+ TextMessage(MatchesOstream(comparison_stream)),
898
+ TextMessage(Eq("true")),
899
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("true"))))))));
900
+
901
+ test_sink.StartCapturingLogs();
902
+ LOG(INFO) << value;
903
+ }
904
+
905
+ TEST(BoolLogFormatTest, False) {
906
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
907
+ EXPECT_CALL(test_sink, Send).Times(0);
908
+
909
+ const bool value = false;
910
+ auto comparison_stream = ComparisonStream();
911
+ comparison_stream << value;
912
+
913
+ EXPECT_CALL(
914
+ test_sink,
915
+ Send(AllOf(
916
+ TextMessage(MatchesOstream(comparison_stream)),
917
+ TextMessage(Eq("false")),
918
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("false"))))))));
919
+
920
+ test_sink.StartCapturingLogs();
921
+ LOG(INFO) << value;
922
+ }
923
+
924
+ TEST(LogFormatTest, StringLiteral) {
925
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
926
+ EXPECT_CALL(test_sink, Send).Times(0);
927
+
928
+ auto comparison_stream = ComparisonStream();
929
+ comparison_stream << "value";
930
+
931
+ EXPECT_CALL(test_sink,
932
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
933
+ TextMessage(Eq("value")),
934
+ ENCODED_MESSAGE(HasValues(
935
+ ElementsAre(ValueWithLiteral(Eq("value"))))))));
936
+
937
+ test_sink.StartCapturingLogs();
938
+ LOG(INFO) << "value";
939
+ }
940
+
941
+ TEST(LogFormatTest, WideStringLiteral) {
942
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
943
+ EXPECT_CALL(test_sink, Send).Times(0);
944
+
945
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq("value")),
946
+ ENCODED_MESSAGE(HasValues(ElementsAre(
947
+ ValueWithLiteral(Eq("value"))))))));
948
+
949
+ test_sink.StartCapturingLogs();
950
+ LOG(INFO) << L"value";
951
+ }
952
+
953
+ TEST(LogFormatTest, CharArray) {
954
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
955
+ EXPECT_CALL(test_sink, Send).Times(0);
956
+
957
+ char value[] = "value";
958
+ auto comparison_stream = ComparisonStream();
959
+ comparison_stream << value;
960
+
961
+ EXPECT_CALL(
962
+ test_sink,
963
+ Send(AllOf(
964
+ TextMessage(MatchesOstream(comparison_stream)),
965
+ TextMessage(Eq("value")),
966
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("value"))))))));
967
+
968
+ test_sink.StartCapturingLogs();
969
+ LOG(INFO) << value;
970
+ }
971
+
972
+ TEST(LogFormatTest, WideCharArray) {
973
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
974
+ EXPECT_CALL(test_sink, Send).Times(0);
975
+
976
+ wchar_t value[] = L"value";
977
+
978
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq("value")),
979
+ ENCODED_MESSAGE(HasValues(ElementsAre(
980
+ ValueWithStr(Eq("value"))))))));
981
+
982
+ test_sink.StartCapturingLogs();
983
+ LOG(INFO) << value;
984
+ }
985
+
986
+ // Comprehensive test string for validating wchar_t to UTF-8 conversion.
987
+ // See details in absl/strings/internal/utf8_test.cc.
988
+ //
989
+ // clang-format off
990
+ #define ABSL_LOG_INTERNAL_WIDE_LITERAL L"Holá €1 你好 שָׁלוֹם 👍🏻🇺🇸👩‍❤️‍💋‍👨 中"
991
+ #define ABSL_LOG_INTERNAL_UTF8_LITERAL u8"Holá €1 你好 שָׁלוֹם 👍🏻🇺🇸👩‍❤️‍💋‍👨 中"
992
+ // clang-format on
993
+
994
+ absl::string_view GetUtf8TestString() {
995
+ // `u8""` forces UTF-8 encoding; MSVC will default to e.g. CP1252 (and warn)
996
+ // without it. However, the resulting character type differs between pre-C++20
997
+ // (`char`) and C++20 (`char8_t`). So we reinterpret_cast to `char*` and wrap
998
+ // it in a `string_view`.
999
+ static const absl::string_view kUtf8TestString(
1000
+ reinterpret_cast<const char*>(ABSL_LOG_INTERNAL_UTF8_LITERAL),
1001
+ sizeof(ABSL_LOG_INTERNAL_UTF8_LITERAL) - 1);
1002
+ return kUtf8TestString;
1003
+ }
1004
+
1005
+ template <typename T>
1006
+ class WideStringLogFormatTest : public testing::Test {};
1007
+ using StringTypes =
1008
+ Types<std::wstring, const std::wstring, wchar_t[], const wchar_t*>;
1009
+ TYPED_TEST_SUITE(WideStringLogFormatTest, StringTypes);
1010
+
1011
+ TYPED_TEST(WideStringLogFormatTest, NonLiterals) {
1012
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1013
+ EXPECT_CALL(test_sink, Send).Times(0);
1014
+
1015
+ TypeParam value = ABSL_LOG_INTERNAL_WIDE_LITERAL;
1016
+ absl::string_view utf8_value = GetUtf8TestString();
1017
+
1018
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1019
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1020
+ ValueWithStr(Eq(utf8_value))))))));
1021
+
1022
+ test_sink.StartCapturingLogs();
1023
+ LOG(INFO) << value;
1024
+ }
1025
+
1026
+ TEST(WideStringLogFormatTest, StringView) {
1027
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1028
+ EXPECT_CALL(test_sink, Send).Times(0);
1029
+
1030
+ std::wstring_view value = ABSL_LOG_INTERNAL_WIDE_LITERAL;
1031
+ absl::string_view utf8_value = GetUtf8TestString();
1032
+
1033
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1034
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1035
+ ValueWithStr(Eq(utf8_value))))))));
1036
+
1037
+ test_sink.StartCapturingLogs();
1038
+ LOG(INFO) << value;
1039
+ }
1040
+
1041
+ TEST(WideStringLogFormatTest, Literal) {
1042
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1043
+ EXPECT_CALL(test_sink, Send).Times(0);
1044
+
1045
+ absl::string_view utf8_value = GetUtf8TestString();
1046
+
1047
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1048
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1049
+ ValueWithLiteral(Eq(utf8_value))))))));
1050
+
1051
+ test_sink.StartCapturingLogs();
1052
+ LOG(INFO) << ABSL_LOG_INTERNAL_WIDE_LITERAL;
1053
+ }
1054
+
1055
+ #undef ABSL_LOG_INTERNAL_WIDE_LITERAL
1056
+ #undef ABSL_LOG_INTERNAL_UTF8_LITERAL
1057
+
1058
+ TYPED_TEST(WideStringLogFormatTest, IsolatedLowSurrogatesAreReplaced) {
1059
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1060
+ EXPECT_CALL(test_sink, Send).Times(0);
1061
+
1062
+ TypeParam value = L"AAA \xDC00 BBB";
1063
+ // NOLINTNEXTLINE(readability/utf8)
1064
+ absl::string_view utf8_value = "AAA � BBB";
1065
+
1066
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1067
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1068
+ ValueWithStr(Eq(utf8_value))))))));
1069
+
1070
+ test_sink.StartCapturingLogs();
1071
+ LOG(INFO) << value;
1072
+ }
1073
+
1074
+ TYPED_TEST(WideStringLogFormatTest,
1075
+ DISABLED_IsolatedHighSurrogatesAreReplaced) {
1076
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1077
+ EXPECT_CALL(test_sink, Send).Times(0);
1078
+
1079
+ TypeParam value = L"AAA \xD800 BBB";
1080
+ // NOLINTNEXTLINE(readability/utf8)
1081
+ absl::string_view utf8_value = "AAA � BBB";
1082
+ // Currently, this is "AAA \xF0\x90 BBB".
1083
+
1084
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1085
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1086
+ ValueWithStr(Eq(utf8_value))))))));
1087
+
1088
+ test_sink.StartCapturingLogs();
1089
+ LOG(INFO) << value;
1090
+ }
1091
+
1092
+ TYPED_TEST(WideStringLogFormatTest,
1093
+ DISABLED_ConsecutiveHighSurrogatesAreReplaced) {
1094
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1095
+ EXPECT_CALL(test_sink, Send).Times(0);
1096
+
1097
+ TypeParam value = L"AAA \xD800\xD800 BBB";
1098
+ // NOLINTNEXTLINE(readability/utf8)
1099
+ absl::string_view utf8_value = "AAA �� BBB";
1100
+ // Currently, this is "AAA \xF0\x90\xF0\x90 BBB".
1101
+
1102
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1103
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1104
+ ValueWithStr(Eq(utf8_value))))))));
1105
+
1106
+ test_sink.StartCapturingLogs();
1107
+ LOG(INFO) << value;
1108
+ }
1109
+
1110
+ TYPED_TEST(WideStringLogFormatTest,
1111
+ DISABLED_HighHighLowSurrogateSequencesAreReplaced) {
1112
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1113
+ EXPECT_CALL(test_sink, Send).Times(0);
1114
+
1115
+ TypeParam value = L"AAA \xD800\xD800\xDC00 BBB";
1116
+ // NOLINTNEXTLINE(readability/utf8)
1117
+ absl::string_view utf8_value = "AAA �𐀀 BBB";
1118
+ // Currently, this is "AAA \xF0\x90𐀀 BBB".
1119
+
1120
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1121
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1122
+ ValueWithStr(Eq(utf8_value))))))));
1123
+
1124
+ test_sink.StartCapturingLogs();
1125
+ LOG(INFO) << value;
1126
+ }
1127
+
1128
+ TYPED_TEST(WideStringLogFormatTest,
1129
+ DISABLED_TrailingHighSurrogatesAreReplaced) {
1130
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1131
+ EXPECT_CALL(test_sink, Send).Times(0);
1132
+
1133
+ TypeParam value = L"AAA \xD800";
1134
+ // NOLINTNEXTLINE(readability/utf8)
1135
+ absl::string_view utf8_value = "AAA �";
1136
+ // Currently, this is "AAA \xF0\x90".
1137
+
1138
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq(utf8_value)),
1139
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1140
+ ValueWithStr(Eq(utf8_value))))))));
1141
+
1142
+ test_sink.StartCapturingLogs();
1143
+ LOG(INFO) << value;
1144
+ }
1145
+
1146
+ TYPED_TEST(WideStringLogFormatTest, EmptyWideString) {
1147
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1148
+ EXPECT_CALL(test_sink, Send).Times(0);
1149
+
1150
+ TypeParam value = L"";
1151
+
1152
+ EXPECT_CALL(test_sink, Send(AllOf(TextMessage(Eq("")),
1153
+ ENCODED_MESSAGE(HasValues(
1154
+ ElementsAre(ValueWithStr(Eq(""))))))));
1155
+
1156
+ test_sink.StartCapturingLogs();
1157
+ LOG(INFO) << value;
1158
+ }
1159
+
1160
+ TEST(WideStringLogFormatTest, MixedNarrowAndWideStrings) {
1161
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1162
+
1163
+ EXPECT_CALL(test_sink, Log(_, _, "1234"));
1164
+
1165
+ test_sink.StartCapturingLogs();
1166
+ LOG(INFO) << "1" << L"2" << "3" << L"4";
1167
+ }
1168
+
1169
+ class CustomClass {};
1170
+ std::ostream& operator<<(std::ostream& os, const CustomClass&) {
1171
+ return os << "CustomClass{}";
1172
+ }
1173
+
1174
+ TEST(LogFormatTest, Custom) {
1175
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1176
+ EXPECT_CALL(test_sink, Send).Times(0);
1177
+
1178
+ CustomClass value;
1179
+ auto comparison_stream = ComparisonStream();
1180
+ comparison_stream << value;
1181
+
1182
+ EXPECT_CALL(test_sink,
1183
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1184
+ TextMessage(Eq("CustomClass{}")),
1185
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1186
+ ValueWithStr(Eq("CustomClass{}"))))))));
1187
+ test_sink.StartCapturingLogs();
1188
+ LOG(INFO) << value;
1189
+ }
1190
+
1191
+ class CustomClassNonCopyable {
1192
+ public:
1193
+ CustomClassNonCopyable() = default;
1194
+ CustomClassNonCopyable(const CustomClassNonCopyable&) = delete;
1195
+ CustomClassNonCopyable& operator=(const CustomClassNonCopyable&) = delete;
1196
+ };
1197
+ std::ostream& operator<<(std::ostream& os, const CustomClassNonCopyable&) {
1198
+ return os << "CustomClassNonCopyable{}";
1199
+ }
1200
+
1201
+ TEST(LogFormatTest, CustomNonCopyable) {
1202
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1203
+ EXPECT_CALL(test_sink, Send).Times(0);
1204
+
1205
+ CustomClassNonCopyable value;
1206
+ auto comparison_stream = ComparisonStream();
1207
+ comparison_stream << value;
1208
+
1209
+ EXPECT_CALL(test_sink,
1210
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1211
+ TextMessage(Eq("CustomClassNonCopyable{}")),
1212
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1213
+ ValueWithStr(Eq("CustomClassNonCopyable{}"))))))));
1214
+
1215
+ test_sink.StartCapturingLogs();
1216
+ LOG(INFO) << value;
1217
+ }
1218
+
1219
+ struct Point {
1220
+ template <typename Sink>
1221
+ friend void AbslStringify(Sink& sink, const Point& p) {
1222
+ absl::Format(&sink, "(%d, %d)", p.x, p.y);
1223
+ }
1224
+
1225
+ int x = 10;
1226
+ int y = 20;
1227
+ };
1228
+
1229
+ TEST(LogFormatTest, AbslStringifyExample) {
1230
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1231
+ EXPECT_CALL(test_sink, Send).Times(0);
1232
+
1233
+ Point p;
1234
+
1235
+ EXPECT_CALL(
1236
+ test_sink,
1237
+ Send(AllOf(TextMessage(Eq("(10, 20)")), TextMessage(Eq(absl::StrCat(p))),
1238
+ ENCODED_MESSAGE(
1239
+ HasValues(ElementsAre(ValueWithStr(Eq("(10, 20)"))))))));
1240
+
1241
+ test_sink.StartCapturingLogs();
1242
+ LOG(INFO) << p;
1243
+ }
1244
+
1245
+ struct PointWithAbslStringifiyAndOstream {
1246
+ template <typename Sink>
1247
+ friend void AbslStringify(Sink& sink,
1248
+ const PointWithAbslStringifiyAndOstream& p) {
1249
+ absl::Format(&sink, "(%d, %d)", p.x, p.y);
1250
+ }
1251
+
1252
+ int x = 10;
1253
+ int y = 20;
1254
+ };
1255
+
1256
+ ABSL_ATTRIBUTE_UNUSED std::ostream& operator<<(
1257
+ std::ostream& os, const PointWithAbslStringifiyAndOstream&) {
1258
+ return os << "Default to AbslStringify()";
1259
+ }
1260
+
1261
+ TEST(LogFormatTest, CustomWithAbslStringifyAndOstream) {
1262
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1263
+ EXPECT_CALL(test_sink, Send).Times(0);
1264
+
1265
+ PointWithAbslStringifiyAndOstream p;
1266
+
1267
+ EXPECT_CALL(
1268
+ test_sink,
1269
+ Send(AllOf(TextMessage(Eq("(10, 20)")), TextMessage(Eq(absl::StrCat(p))),
1270
+ ENCODED_MESSAGE(
1271
+ HasValues(ElementsAre(ValueWithStr(Eq("(10, 20)"))))))));
1272
+
1273
+ test_sink.StartCapturingLogs();
1274
+ LOG(INFO) << p;
1275
+ }
1276
+
1277
+ struct PointStreamsNothing {
1278
+ template <typename Sink>
1279
+ friend void AbslStringify(Sink&, const PointStreamsNothing&) {}
1280
+
1281
+ int x = 10;
1282
+ int y = 20;
1283
+ };
1284
+
1285
+ TEST(LogFormatTest, AbslStringifyStreamsNothing) {
1286
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1287
+ EXPECT_CALL(test_sink, Send).Times(0);
1288
+
1289
+ PointStreamsNothing p;
1290
+
1291
+ EXPECT_CALL(
1292
+ test_sink,
1293
+ Send(AllOf(
1294
+ TextMessage(Eq("77")), TextMessage(Eq(absl::StrCat(p, 77))),
1295
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("77"))))))));
1296
+
1297
+ test_sink.StartCapturingLogs();
1298
+ LOG(INFO) << p << 77;
1299
+ }
1300
+
1301
+ struct PointMultipleAppend {
1302
+ template <typename Sink>
1303
+ friend void AbslStringify(Sink& sink, const PointMultipleAppend& p) {
1304
+ sink.Append("(");
1305
+ sink.Append(absl::StrCat(p.x, ", ", p.y, ")"));
1306
+ }
1307
+
1308
+ int x = 10;
1309
+ int y = 20;
1310
+ };
1311
+
1312
+ TEST(LogFormatTest, AbslStringifyMultipleAppend) {
1313
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1314
+ EXPECT_CALL(test_sink, Send).Times(0);
1315
+
1316
+ PointMultipleAppend p;
1317
+
1318
+ EXPECT_CALL(
1319
+ test_sink,
1320
+ Send(AllOf(TextMessage(Eq("(10, 20)")), TextMessage(Eq(absl::StrCat(p))),
1321
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1322
+ ValueWithStr(Eq("(")), ValueWithStr(Eq("10, 20)"))))))));
1323
+
1324
+ test_sink.StartCapturingLogs();
1325
+ LOG(INFO) << p;
1326
+ }
1327
+
1328
+ TEST(ManipulatorLogFormatTest, BoolAlphaTrue) {
1329
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1330
+ EXPECT_CALL(test_sink, Send).Times(0);
1331
+
1332
+ const bool value = true;
1333
+ auto comparison_stream = ComparisonStream();
1334
+ comparison_stream << std::noboolalpha << value << " " //
1335
+ << std::boolalpha << value << " " //
1336
+ << std::noboolalpha << value;
1337
+
1338
+ EXPECT_CALL(
1339
+ test_sink,
1340
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1341
+ TextMessage(Eq("1 true 1")),
1342
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1343
+ ValueWithStr(Eq("1")), ValueWithLiteral(Eq(" ")),
1344
+ ValueWithStr(Eq("true")), ValueWithLiteral(Eq(" ")),
1345
+ ValueWithStr(Eq("1"))))))));
1346
+
1347
+ test_sink.StartCapturingLogs();
1348
+ LOG(INFO) << std::noboolalpha << value << " " //
1349
+ << std::boolalpha << value << " " //
1350
+ << std::noboolalpha << value;
1351
+ }
1352
+
1353
+ TEST(ManipulatorLogFormatTest, BoolAlphaFalse) {
1354
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1355
+ EXPECT_CALL(test_sink, Send).Times(0);
1356
+
1357
+ const bool value = false;
1358
+ auto comparison_stream = ComparisonStream();
1359
+ comparison_stream << std::noboolalpha << value << " " //
1360
+ << std::boolalpha << value << " " //
1361
+ << std::noboolalpha << value;
1362
+
1363
+ EXPECT_CALL(
1364
+ test_sink,
1365
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1366
+ TextMessage(Eq("0 false 0")),
1367
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1368
+ ValueWithStr(Eq("0")), ValueWithLiteral(Eq(" ")),
1369
+ ValueWithStr(Eq("false")), ValueWithLiteral(Eq(" ")),
1370
+ ValueWithStr(Eq("0"))))))));
1371
+
1372
+ test_sink.StartCapturingLogs();
1373
+ LOG(INFO) << std::noboolalpha << value << " " //
1374
+ << std::boolalpha << value << " " //
1375
+ << std::noboolalpha << value;
1376
+ }
1377
+
1378
+ TEST(ManipulatorLogFormatTest, ShowPoint) {
1379
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1380
+ EXPECT_CALL(test_sink, Send).Times(0);
1381
+
1382
+ const double value = 77.0;
1383
+ auto comparison_stream = ComparisonStream();
1384
+ comparison_stream << std::noshowpoint << value << " " //
1385
+ << std::showpoint << value << " " //
1386
+ << std::noshowpoint << value;
1387
+
1388
+ EXPECT_CALL(
1389
+ test_sink,
1390
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1391
+ TextMessage(Eq("77 77.0000 77")),
1392
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1393
+ ValueWithStr(Eq("77")), ValueWithLiteral(Eq(" ")),
1394
+ ValueWithStr(Eq("77.0000")), ValueWithLiteral(Eq(" ")),
1395
+ ValueWithStr(Eq("77"))))))));
1396
+
1397
+ test_sink.StartCapturingLogs();
1398
+ LOG(INFO) << std::noshowpoint << value << " " //
1399
+ << std::showpoint << value << " " //
1400
+ << std::noshowpoint << value;
1401
+ }
1402
+
1403
+ TEST(ManipulatorLogFormatTest, ShowPos) {
1404
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1405
+ EXPECT_CALL(test_sink, Send).Times(0);
1406
+
1407
+ const int value = 77;
1408
+ auto comparison_stream = ComparisonStream();
1409
+ comparison_stream << std::noshowpos << value << " " //
1410
+ << std::showpos << value << " " //
1411
+ << std::noshowpos << value;
1412
+
1413
+ EXPECT_CALL(test_sink,
1414
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1415
+ TextMessage(Eq("77 +77 77")),
1416
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1417
+ ValueWithStr(Eq("77")), ValueWithLiteral(Eq(" ")),
1418
+ ValueWithStr(Eq("+77")), ValueWithLiteral(Eq(" ")),
1419
+ ValueWithStr(Eq("77"))))))));
1420
+
1421
+ test_sink.StartCapturingLogs();
1422
+ LOG(INFO) << std::noshowpos << value << " " //
1423
+ << std::showpos << value << " " //
1424
+ << std::noshowpos << value;
1425
+ }
1426
+
1427
+ TEST(ManipulatorLogFormatTest, UppercaseFloat) {
1428
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1429
+ EXPECT_CALL(test_sink, Send).Times(0);
1430
+
1431
+ const double value = 7.7e7;
1432
+ auto comparison_stream = ComparisonStream();
1433
+ comparison_stream << std::nouppercase << value << " " //
1434
+ << std::uppercase << value << " " //
1435
+ << std::nouppercase << value;
1436
+
1437
+ EXPECT_CALL(
1438
+ test_sink,
1439
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1440
+ TextMessage(Eq("7.7e+07 7.7E+07 7.7e+07")),
1441
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1442
+ ValueWithStr(Eq("7.7e+07")), ValueWithLiteral(Eq(" ")),
1443
+ ValueWithStr(Eq("7.7E+07")), ValueWithLiteral(Eq(" ")),
1444
+ ValueWithStr(Eq("7.7e+07"))))))));
1445
+
1446
+ test_sink.StartCapturingLogs();
1447
+ LOG(INFO) << std::nouppercase << value << " " //
1448
+ << std::uppercase << value << " " //
1449
+ << std::nouppercase << value;
1450
+ }
1451
+
1452
+ TEST(ManipulatorLogFormatTest, Hex) {
1453
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1454
+ EXPECT_CALL(test_sink, Send).Times(0);
1455
+
1456
+ const int value = 0x77;
1457
+ auto comparison_stream = ComparisonStream();
1458
+ comparison_stream << std::hex << value;
1459
+
1460
+ EXPECT_CALL(
1461
+ test_sink,
1462
+ Send(AllOf(
1463
+ TextMessage(MatchesOstream(comparison_stream)),
1464
+ TextMessage(Eq("0x77")),
1465
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("0x77"))))))));
1466
+ test_sink.StartCapturingLogs();
1467
+ LOG(INFO) << std::hex << value;
1468
+ }
1469
+
1470
+ TEST(ManipulatorLogFormatTest, Oct) {
1471
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1472
+ EXPECT_CALL(test_sink, Send).Times(0);
1473
+
1474
+ const int value = 077;
1475
+ auto comparison_stream = ComparisonStream();
1476
+ comparison_stream << std::oct << value;
1477
+
1478
+ EXPECT_CALL(
1479
+ test_sink,
1480
+ Send(AllOf(
1481
+ TextMessage(MatchesOstream(comparison_stream)),
1482
+ TextMessage(Eq("077")),
1483
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("077"))))))));
1484
+
1485
+ test_sink.StartCapturingLogs();
1486
+ LOG(INFO) << std::oct << value;
1487
+ }
1488
+
1489
+ TEST(ManipulatorLogFormatTest, Dec) {
1490
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1491
+ EXPECT_CALL(test_sink, Send).Times(0);
1492
+
1493
+ const int value = 77;
1494
+ auto comparison_stream = ComparisonStream();
1495
+ comparison_stream << std::hex << std::dec << value;
1496
+
1497
+ EXPECT_CALL(
1498
+ test_sink,
1499
+ Send(AllOf(
1500
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("77")),
1501
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("77"))))))));
1502
+
1503
+ test_sink.StartCapturingLogs();
1504
+ LOG(INFO) << std::hex << std::dec << value;
1505
+ }
1506
+
1507
+ TEST(ManipulatorLogFormatTest, ShowbaseHex) {
1508
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1509
+ EXPECT_CALL(test_sink, Send).Times(0);
1510
+
1511
+ const int value = 0x77;
1512
+ auto comparison_stream = ComparisonStream();
1513
+ comparison_stream << std::hex //
1514
+ << std::noshowbase << value << " " //
1515
+ << std::showbase << value << " " //
1516
+ << std::noshowbase << value;
1517
+
1518
+ EXPECT_CALL(
1519
+ test_sink,
1520
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1521
+ TextMessage(Eq("77 0x77 77")),
1522
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1523
+ ValueWithStr(Eq("77")), ValueWithLiteral(Eq(" ")),
1524
+ ValueWithStr(Eq("0x77")), ValueWithLiteral(Eq(" ")),
1525
+ ValueWithStr(Eq("77"))))))));
1526
+
1527
+ test_sink.StartCapturingLogs();
1528
+ LOG(INFO) << std::hex //
1529
+ << std::noshowbase << value << " " //
1530
+ << std::showbase << value << " " //
1531
+ << std::noshowbase << value;
1532
+ }
1533
+
1534
+ TEST(ManipulatorLogFormatTest, ShowbaseOct) {
1535
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1536
+ EXPECT_CALL(test_sink, Send).Times(0);
1537
+
1538
+ const int value = 077;
1539
+ auto comparison_stream = ComparisonStream();
1540
+ comparison_stream << std::oct //
1541
+ << std::noshowbase << value << " " //
1542
+ << std::showbase << value << " " //
1543
+ << std::noshowbase << value;
1544
+
1545
+ EXPECT_CALL(test_sink,
1546
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1547
+ TextMessage(Eq("77 077 77")),
1548
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1549
+ ValueWithStr(Eq("77")), ValueWithLiteral(Eq(" ")),
1550
+ ValueWithStr(Eq("077")), ValueWithLiteral(Eq(" ")),
1551
+ ValueWithStr(Eq("77"))))))));
1552
+
1553
+ test_sink.StartCapturingLogs();
1554
+ LOG(INFO) << std::oct //
1555
+ << std::noshowbase << value << " " //
1556
+ << std::showbase << value << " " //
1557
+ << std::noshowbase << value;
1558
+ }
1559
+
1560
+ TEST(ManipulatorLogFormatTest, UppercaseHex) {
1561
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1562
+ EXPECT_CALL(test_sink, Send).Times(0);
1563
+
1564
+ const int value = 0xbeef;
1565
+ auto comparison_stream = ComparisonStream();
1566
+ comparison_stream //
1567
+ << std::hex //
1568
+ << std::nouppercase << value << " " //
1569
+ << std::uppercase << value << " " //
1570
+ << std::nouppercase << value;
1571
+
1572
+ EXPECT_CALL(
1573
+ test_sink,
1574
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1575
+ TextMessage(Eq("0xbeef 0XBEEF 0xbeef")),
1576
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1577
+ ValueWithStr(Eq("0xbeef")), ValueWithLiteral(Eq(" ")),
1578
+ ValueWithStr(Eq("0XBEEF")), ValueWithLiteral(Eq(" ")),
1579
+ ValueWithStr(Eq("0xbeef"))))))));
1580
+
1581
+ test_sink.StartCapturingLogs();
1582
+ LOG(INFO) << std::hex //
1583
+ << std::nouppercase << value << " " //
1584
+ << std::uppercase << value << " " //
1585
+ << std::nouppercase << value;
1586
+ }
1587
+
1588
+ TEST(ManipulatorLogFormatTest, FixedFloat) {
1589
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1590
+ EXPECT_CALL(test_sink, Send).Times(0);
1591
+
1592
+ const double value = 7.7e7;
1593
+ auto comparison_stream = ComparisonStream();
1594
+ comparison_stream << std::fixed << value;
1595
+
1596
+ EXPECT_CALL(test_sink,
1597
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1598
+ TextMessage(Eq("77000000.000000")),
1599
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1600
+ ValueWithStr(Eq("77000000.000000"))))))));
1601
+
1602
+ test_sink.StartCapturingLogs();
1603
+ LOG(INFO) << std::fixed << value;
1604
+ }
1605
+
1606
+ TEST(ManipulatorLogFormatTest, ScientificFloat) {
1607
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1608
+ EXPECT_CALL(test_sink, Send).Times(0);
1609
+
1610
+ const double value = 7.7e7;
1611
+ auto comparison_stream = ComparisonStream();
1612
+ comparison_stream << std::scientific << value;
1613
+
1614
+ EXPECT_CALL(test_sink,
1615
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1616
+ TextMessage(Eq("7.700000e+07")),
1617
+ ENCODED_MESSAGE(HasValues(
1618
+ ElementsAre(ValueWithStr(Eq("7.700000e+07"))))))));
1619
+
1620
+ test_sink.StartCapturingLogs();
1621
+ LOG(INFO) << std::scientific << value;
1622
+ }
1623
+
1624
+ #if defined(__BIONIC__) && (!defined(__ANDROID_API__) || __ANDROID_API__ < 22)
1625
+ // Bionic doesn't support `%a` until API 22, so this prints 'a' even if the
1626
+ // C++ standard library implements it correctly (by forwarding to printf).
1627
+ #elif defined(__GLIBCXX__) && __cplusplus < 201402L
1628
+ // libstdc++ shipped C++11 support without `std::hexfloat`.
1629
+ #else
1630
+ TEST(ManipulatorLogFormatTest, FixedAndScientificFloat) {
1631
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1632
+ EXPECT_CALL(test_sink, Send).Times(0);
1633
+
1634
+ const double value = 7.7e7;
1635
+ auto comparison_stream = ComparisonStream();
1636
+ comparison_stream << std::setiosflags(std::ios_base::scientific |
1637
+ std::ios_base::fixed)
1638
+ << value;
1639
+
1640
+ EXPECT_CALL(
1641
+ test_sink,
1642
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1643
+ TextMessage(AnyOf(Eq("0x1.25bb50p+26"), Eq("0x1.25bb5p+26"),
1644
+ Eq("0x1.25bb500000000p+26"))),
1645
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1646
+ AnyOf(ValueWithStr(Eq("0x1.25bb5p+26")),
1647
+ ValueWithStr(Eq("0x1.25bb500000000p+26")))))))));
1648
+
1649
+ test_sink.StartCapturingLogs();
1650
+
1651
+ // This combination should mean the same thing as `std::hexfloat`.
1652
+ LOG(INFO) << std::setiosflags(std::ios_base::scientific |
1653
+ std::ios_base::fixed)
1654
+ << value;
1655
+ }
1656
+ #endif
1657
+
1658
+ #if defined(__BIONIC__) && (!defined(__ANDROID_API__) || __ANDROID_API__ < 22)
1659
+ // Bionic doesn't support `%a` until API 22, so this prints 'a' even if the C++
1660
+ // standard library supports `std::hexfloat` (by forwarding to printf).
1661
+ #elif defined(__GLIBCXX__) && __cplusplus < 201402L
1662
+ // libstdc++ shipped C++11 support without `std::hexfloat`.
1663
+ #else
1664
+ TEST(ManipulatorLogFormatTest, HexfloatFloat) {
1665
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1666
+ EXPECT_CALL(test_sink, Send).Times(0);
1667
+
1668
+ const double value = 7.7e7;
1669
+ auto comparison_stream = ComparisonStream();
1670
+ comparison_stream << std::hexfloat << value;
1671
+
1672
+ EXPECT_CALL(
1673
+ test_sink,
1674
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1675
+ TextMessage(AnyOf(Eq("0x1.25bb50p+26"), Eq("0x1.25bb5p+26"),
1676
+ Eq("0x1.25bb500000000p+26"))),
1677
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1678
+ AnyOf(ValueWithStr(Eq("0x1.25bb5p+26")),
1679
+ ValueWithStr(Eq("0x1.25bb500000000p+26")))))))));
1680
+
1681
+ test_sink.StartCapturingLogs();
1682
+ LOG(INFO) << std::hexfloat << value;
1683
+ }
1684
+ #endif
1685
+
1686
+ TEST(ManipulatorLogFormatTest, DefaultFloatFloat) {
1687
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1688
+ EXPECT_CALL(test_sink, Send).Times(0);
1689
+
1690
+ const double value = 7.7e7;
1691
+ auto comparison_stream = ComparisonStream();
1692
+ comparison_stream << std::hexfloat << std::defaultfloat << value;
1693
+
1694
+ EXPECT_CALL(test_sink,
1695
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1696
+ TextMessage(Eq("7.7e+07")),
1697
+ ENCODED_MESSAGE(HasValues(
1698
+ ElementsAre(ValueWithStr(Eq("7.7e+07"))))))));
1699
+
1700
+ test_sink.StartCapturingLogs();
1701
+ LOG(INFO) << std::hexfloat << std::defaultfloat << value;
1702
+ }
1703
+
1704
+ TEST(ManipulatorLogFormatTest, Ends) {
1705
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1706
+ EXPECT_CALL(test_sink, Send).Times(0);
1707
+
1708
+ auto comparison_stream = ComparisonStream();
1709
+ comparison_stream << std::ends;
1710
+
1711
+ EXPECT_CALL(test_sink,
1712
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1713
+ TextMessage(Eq(absl::string_view("\0", 1))),
1714
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1715
+ ValueWithStr(Eq(absl::string_view("\0", 1)))))))));
1716
+
1717
+ test_sink.StartCapturingLogs();
1718
+ LOG(INFO) << std::ends;
1719
+ }
1720
+
1721
+ TEST(ManipulatorLogFormatTest, Endl) {
1722
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1723
+ EXPECT_CALL(test_sink, Send).Times(0);
1724
+
1725
+ auto comparison_stream = ComparisonStream();
1726
+ comparison_stream << std::endl;
1727
+
1728
+ EXPECT_CALL(
1729
+ test_sink,
1730
+ Send(AllOf(
1731
+ TextMessage(MatchesOstream(comparison_stream)),
1732
+ TextMessage(Eq("\n")),
1733
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("\n"))))))));
1734
+
1735
+ test_sink.StartCapturingLogs();
1736
+ LOG(INFO) << std::endl;
1737
+ }
1738
+
1739
+ TEST(ManipulatorLogFormatTest, SetIosFlags) {
1740
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1741
+ EXPECT_CALL(test_sink, Send).Times(0);
1742
+
1743
+ const int value = 0x77;
1744
+ auto comparison_stream = ComparisonStream();
1745
+ comparison_stream << std::resetiosflags(std::ios_base::basefield)
1746
+ << std::setiosflags(std::ios_base::hex) << value << " " //
1747
+ << std::resetiosflags(std::ios_base::basefield)
1748
+ << std::setiosflags(std::ios_base::dec) << value;
1749
+
1750
+ EXPECT_CALL(
1751
+ test_sink,
1752
+ Send(AllOf(
1753
+ TextMessage(MatchesOstream(comparison_stream)),
1754
+ TextMessage(Eq("0x77 119")),
1755
+ // `std::setiosflags` and `std::resetiosflags` aren't manipulators.
1756
+ // We're unable to distinguish their return type(s) from arbitrary
1757
+ // user-defined types and thus don't suppress the empty str value.
1758
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("0x77")),
1759
+ ValueWithLiteral(Eq(" ")),
1760
+ ValueWithStr(Eq("119"))))))));
1761
+
1762
+ test_sink.StartCapturingLogs();
1763
+ LOG(INFO) << std::resetiosflags(std::ios_base::basefield)
1764
+ << std::setiosflags(std::ios_base::hex) << value << " " //
1765
+ << std::resetiosflags(std::ios_base::basefield)
1766
+ << std::setiosflags(std::ios_base::dec) << value;
1767
+ }
1768
+
1769
+ TEST(ManipulatorLogFormatTest, SetBase) {
1770
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1771
+ EXPECT_CALL(test_sink, Send).Times(0);
1772
+
1773
+ const int value = 0x77;
1774
+ auto comparison_stream = ComparisonStream();
1775
+ comparison_stream << std::setbase(16) << value << " " //
1776
+ << std::setbase(0) << value;
1777
+
1778
+ EXPECT_CALL(
1779
+ test_sink,
1780
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1781
+ TextMessage(Eq("0x77 119")),
1782
+ // `std::setbase` isn't a manipulator. We're unable to
1783
+ // distinguish its return type from arbitrary user-defined
1784
+ // types and thus don't suppress the empty str value.
1785
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1786
+ ValueWithStr(Eq("0x77")), ValueWithLiteral(Eq(" ")),
1787
+ ValueWithStr(Eq("119"))))))));
1788
+
1789
+ test_sink.StartCapturingLogs();
1790
+ LOG(INFO) << std::setbase(16) << value << " " //
1791
+ << std::setbase(0) << value;
1792
+ }
1793
+
1794
+ TEST(ManipulatorLogFormatTest, SetPrecision) {
1795
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1796
+ EXPECT_CALL(test_sink, Send).Times(0);
1797
+
1798
+ const double value = 6.022140857e23;
1799
+ auto comparison_stream = ComparisonStream();
1800
+ comparison_stream << std::setprecision(4) << value;
1801
+
1802
+ EXPECT_CALL(
1803
+ test_sink,
1804
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1805
+ TextMessage(Eq("6.022e+23")),
1806
+ // `std::setprecision` isn't a manipulator. We're unable to
1807
+ // distinguish its return type from arbitrary user-defined
1808
+ // types and thus don't suppress the empty str value.
1809
+ ENCODED_MESSAGE(
1810
+ HasValues(ElementsAre(ValueWithStr(Eq("6.022e+23"))))))));
1811
+
1812
+ test_sink.StartCapturingLogs();
1813
+ LOG(INFO) << std::setprecision(4) << value;
1814
+ }
1815
+
1816
+ TEST(ManipulatorLogFormatTest, SetPrecisionOverflow) {
1817
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1818
+ EXPECT_CALL(test_sink, Send).Times(0);
1819
+
1820
+ const double value = 6.022140857e23;
1821
+ auto comparison_stream = ComparisonStream();
1822
+ comparison_stream << std::setprecision(200) << value;
1823
+
1824
+ EXPECT_CALL(test_sink,
1825
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1826
+ TextMessage(Eq("602214085700000015187968")),
1827
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1828
+ ValueWithStr(Eq("602214085700000015187968"))))))));
1829
+
1830
+ test_sink.StartCapturingLogs();
1831
+ LOG(INFO) << std::setprecision(200) << value;
1832
+ }
1833
+
1834
+ TEST(ManipulatorLogFormatTest, SetW) {
1835
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1836
+ EXPECT_CALL(test_sink, Send).Times(0);
1837
+
1838
+ const int value = 77;
1839
+ auto comparison_stream = ComparisonStream();
1840
+ comparison_stream << std::setw(8) << value;
1841
+
1842
+ EXPECT_CALL(
1843
+ test_sink,
1844
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1845
+ TextMessage(Eq(" 77")),
1846
+ // `std::setw` isn't a manipulator. We're unable to
1847
+ // distinguish its return type from arbitrary user-defined
1848
+ // types and thus don't suppress the empty str value.
1849
+ ENCODED_MESSAGE(
1850
+ HasValues(ElementsAre(ValueWithStr(Eq(" 77"))))))));
1851
+
1852
+ test_sink.StartCapturingLogs();
1853
+ LOG(INFO) << std::setw(8) << value;
1854
+ }
1855
+
1856
+ TEST(ManipulatorLogFormatTest, Left) {
1857
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1858
+ EXPECT_CALL(test_sink, Send).Times(0);
1859
+
1860
+ const int value = -77;
1861
+ auto comparison_stream = ComparisonStream();
1862
+ comparison_stream << std::left << std::setw(8) << value;
1863
+
1864
+ EXPECT_CALL(test_sink,
1865
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1866
+ TextMessage(Eq("-77 ")),
1867
+ ENCODED_MESSAGE(HasValues(
1868
+ ElementsAre(ValueWithStr(Eq("-77 "))))))));
1869
+
1870
+ test_sink.StartCapturingLogs();
1871
+ LOG(INFO) << std::left << std::setw(8) << value;
1872
+ }
1873
+
1874
+ TEST(ManipulatorLogFormatTest, Right) {
1875
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1876
+ EXPECT_CALL(test_sink, Send).Times(0);
1877
+
1878
+ const int value = -77;
1879
+ auto comparison_stream = ComparisonStream();
1880
+ comparison_stream << std::right << std::setw(8) << value;
1881
+
1882
+ EXPECT_CALL(test_sink,
1883
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1884
+ TextMessage(Eq(" -77")),
1885
+ ENCODED_MESSAGE(HasValues(
1886
+ ElementsAre(ValueWithStr(Eq(" -77"))))))));
1887
+
1888
+ test_sink.StartCapturingLogs();
1889
+ LOG(INFO) << std::right << std::setw(8) << value;
1890
+ }
1891
+
1892
+ TEST(ManipulatorLogFormatTest, Internal) {
1893
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1894
+ EXPECT_CALL(test_sink, Send).Times(0);
1895
+
1896
+ const int value = -77;
1897
+ auto comparison_stream = ComparisonStream();
1898
+ comparison_stream << std::internal << std::setw(8) << value;
1899
+
1900
+ EXPECT_CALL(test_sink,
1901
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1902
+ TextMessage(Eq("- 77")),
1903
+ ENCODED_MESSAGE(HasValues(
1904
+ ElementsAre(ValueWithStr(Eq("- 77"))))))));
1905
+
1906
+ test_sink.StartCapturingLogs();
1907
+ LOG(INFO) << std::internal << std::setw(8) << value;
1908
+ }
1909
+
1910
+ TEST(ManipulatorLogFormatTest, SetFill) {
1911
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1912
+ EXPECT_CALL(test_sink, Send).Times(0);
1913
+
1914
+ const int value = 77;
1915
+ auto comparison_stream = ComparisonStream();
1916
+ comparison_stream << std::setfill('0') << std::setw(8) << value;
1917
+
1918
+ EXPECT_CALL(test_sink,
1919
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1920
+ TextMessage(Eq("00000077")),
1921
+ // `std::setfill` isn't a manipulator. We're
1922
+ // unable to distinguish its return
1923
+ // type from arbitrary user-defined types and
1924
+ // thus don't suppress the empty str value.
1925
+ ENCODED_MESSAGE(HasValues(
1926
+ ElementsAre(ValueWithStr(Eq("00000077"))))))));
1927
+
1928
+ test_sink.StartCapturingLogs();
1929
+ LOG(INFO) << std::setfill('0') << std::setw(8) << value;
1930
+ }
1931
+
1932
+ class FromCustomClass {};
1933
+ std::ostream& operator<<(std::ostream& os, const FromCustomClass&) {
1934
+ return os << "FromCustomClass{}" << std::hex;
1935
+ }
1936
+
1937
+ TEST(ManipulatorLogFormatTest, FromCustom) {
1938
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1939
+ EXPECT_CALL(test_sink, Send).Times(0);
1940
+
1941
+ FromCustomClass value;
1942
+ auto comparison_stream = ComparisonStream();
1943
+ comparison_stream << value << " " << 0x77;
1944
+
1945
+ EXPECT_CALL(
1946
+ test_sink,
1947
+ Send(AllOf(TextMessage(MatchesOstream(comparison_stream)),
1948
+ TextMessage(Eq("FromCustomClass{} 0x77")),
1949
+ ENCODED_MESSAGE(HasValues(ElementsAre(
1950
+ ValueWithStr(Eq("FromCustomClass{}")),
1951
+ ValueWithLiteral(Eq(" ")), ValueWithStr(Eq("0x77"))))))));
1952
+
1953
+ test_sink.StartCapturingLogs();
1954
+ LOG(INFO) << value << " " << 0x77;
1955
+ }
1956
+
1957
+ class StreamsNothing {};
1958
+ std::ostream& operator<<(std::ostream& os, const StreamsNothing&) { return os; }
1959
+
1960
+ TEST(ManipulatorLogFormatTest, CustomClassStreamsNothing) {
1961
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1962
+ EXPECT_CALL(test_sink, Send).Times(0);
1963
+
1964
+ StreamsNothing value;
1965
+ auto comparison_stream = ComparisonStream();
1966
+ comparison_stream << value << 77;
1967
+
1968
+ EXPECT_CALL(
1969
+ test_sink,
1970
+ Send(AllOf(
1971
+ TextMessage(MatchesOstream(comparison_stream)), TextMessage(Eq("77")),
1972
+ ENCODED_MESSAGE(HasValues(ElementsAre(ValueWithStr(Eq("77"))))))));
1973
+
1974
+ test_sink.StartCapturingLogs();
1975
+ LOG(INFO) << value << 77;
1976
+ }
1977
+
1978
+ struct PointPercentV {
1979
+ template <typename Sink>
1980
+ friend void AbslStringify(Sink& sink, const PointPercentV& p) {
1981
+ absl::Format(&sink, "(%v, %v)", p.x, p.y);
1982
+ }
1983
+
1984
+ int x = 10;
1985
+ int y = 20;
1986
+ };
1987
+
1988
+ TEST(ManipulatorLogFormatTest, IOManipsDoNotAffectAbslStringify) {
1989
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
1990
+ EXPECT_CALL(test_sink, Send).Times(0);
1991
+
1992
+ PointPercentV p;
1993
+
1994
+ EXPECT_CALL(
1995
+ test_sink,
1996
+ Send(AllOf(TextMessage(Eq("(10, 20)")), TextMessage(Eq(absl::StrCat(p))),
1997
+ ENCODED_MESSAGE(
1998
+ HasValues(ElementsAre(ValueWithStr(Eq("(10, 20)"))))))));
1999
+
2000
+ test_sink.StartCapturingLogs();
2001
+ LOG(INFO) << std::hex << p;
2002
+ }
2003
+
2004
+ TEST(StructuredLoggingOverflowTest, TruncatesStrings) {
2005
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2006
+ EXPECT_CALL(test_sink, Send).Times(0);
2007
+
2008
+ // This message is too long and should be truncated to some unspecified size
2009
+ // no greater than the buffer size but not too much less either. It should be
2010
+ // truncated rather than discarded.
2011
+ EXPECT_CALL(
2012
+ test_sink,
2013
+ Send(AllOf(
2014
+ TextMessage(AllOf(
2015
+ SizeIs(AllOf(Ge(absl::log_internal::kLogMessageBufferSize - 256),
2016
+ Le(absl::log_internal::kLogMessageBufferSize))),
2017
+ Each(Eq('x')))),
2018
+ ENCODED_MESSAGE(HasOneStrThat(AllOf(
2019
+ SizeIs(AllOf(Ge(absl::log_internal::kLogMessageBufferSize - 256),
2020
+ Le(absl::log_internal::kLogMessageBufferSize))),
2021
+ Each(Eq('x'))))))));
2022
+
2023
+ test_sink.StartCapturingLogs();
2024
+ LOG(INFO) << std::string(2 * absl::log_internal::kLogMessageBufferSize, 'x');
2025
+ }
2026
+
2027
+ TEST(StructuredLoggingOverflowTest, TruncatesWideStrings) {
2028
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2029
+ EXPECT_CALL(test_sink, Send).Times(0);
2030
+
2031
+ // This message is too long and should be truncated to some unspecified size
2032
+ // no greater than the buffer size but not too much less either. It should be
2033
+ // truncated rather than discarded.
2034
+ EXPECT_CALL(
2035
+ test_sink,
2036
+ Send(AllOf(
2037
+ TextMessage(AllOf(
2038
+ SizeIs(AllOf(Ge(absl::log_internal::kLogMessageBufferSize - 256),
2039
+ Le(absl::log_internal::kLogMessageBufferSize))),
2040
+ Each(Eq('x')))),
2041
+ ENCODED_MESSAGE(HasOneStrThat(AllOf(
2042
+ SizeIs(AllOf(Ge(absl::log_internal::kLogMessageBufferSize - 256),
2043
+ Le(absl::log_internal::kLogMessageBufferSize))),
2044
+ Each(Eq('x'))))))));
2045
+
2046
+ test_sink.StartCapturingLogs();
2047
+ LOG(INFO) << std::wstring(2 * absl::log_internal::kLogMessageBufferSize,
2048
+ L'x');
2049
+ }
2050
+
2051
+ struct StringLike {
2052
+ absl::string_view data;
2053
+ };
2054
+ std::ostream& operator<<(std::ostream& os, StringLike str) {
2055
+ return os << str.data;
2056
+ }
2057
+
2058
+ TEST(StructuredLoggingOverflowTest, TruncatesInsertionOperators) {
2059
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2060
+ EXPECT_CALL(test_sink, Send).Times(0);
2061
+
2062
+ // This message is too long and should be truncated to some unspecified size
2063
+ // no greater than the buffer size but not too much less either. It should be
2064
+ // truncated rather than discarded.
2065
+ EXPECT_CALL(
2066
+ test_sink,
2067
+ Send(AllOf(
2068
+ TextMessage(AllOf(
2069
+ SizeIs(AllOf(Ge(absl::log_internal::kLogMessageBufferSize - 256),
2070
+ Le(absl::log_internal::kLogMessageBufferSize))),
2071
+ Each(Eq('x')))),
2072
+ ENCODED_MESSAGE(HasOneStrThat(AllOf(
2073
+ SizeIs(AllOf(Ge(absl::log_internal::kLogMessageBufferSize - 256),
2074
+ Le(absl::log_internal::kLogMessageBufferSize))),
2075
+ Each(Eq('x'))))))));
2076
+
2077
+ test_sink.StartCapturingLogs();
2078
+ LOG(INFO) << StringLike{
2079
+ std::string(2 * absl::log_internal::kLogMessageBufferSize, 'x')};
2080
+ }
2081
+
2082
+ // Returns the size of the largest string that will fit in a `LOG` message
2083
+ // buffer with no prefix.
2084
+ size_t MaxLogFieldLengthNoPrefix() {
2085
+ class StringLengthExtractorSink : public absl::LogSink {
2086
+ public:
2087
+ void Send(const absl::LogEntry& entry) override {
2088
+ CHECK(!size_.has_value());
2089
+ CHECK_EQ(entry.text_message().find_first_not_of('x'),
2090
+ absl::string_view::npos);
2091
+ size_.emplace(entry.text_message().size());
2092
+ }
2093
+ size_t size() const {
2094
+ CHECK(size_.has_value());
2095
+ return *size_;
2096
+ }
2097
+
2098
+ private:
2099
+ absl::optional<size_t> size_;
2100
+ } extractor_sink;
2101
+ LOG(INFO).NoPrefix().ToSinkOnly(&extractor_sink)
2102
+ << std::string(2 * absl::log_internal::kLogMessageBufferSize, 'x');
2103
+ return extractor_sink.size();
2104
+ }
2105
+
2106
+ TEST(StructuredLoggingOverflowTest, TruncatesStringsCleanly) {
2107
+ const size_t longest_fit = MaxLogFieldLengthNoPrefix();
2108
+ // To log a second value field, we need four bytes: two tag/type bytes and two
2109
+ // sizes. To put any data in the field we need a fifth byte.
2110
+ {
2111
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2112
+ EXPECT_CALL(test_sink, Send).Times(0);
2113
+ EXPECT_CALL(test_sink,
2114
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2115
+ AllOf(SizeIs(longest_fit), Each(Eq('x'))))),
2116
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2117
+ test_sink.StartCapturingLogs();
2118
+ // x fits exactly, no part of y fits.
2119
+ LOG(INFO).NoPrefix() << std::string(longest_fit, 'x') << "y";
2120
+ }
2121
+ {
2122
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2123
+ EXPECT_CALL(test_sink, Send).Times(0);
2124
+ EXPECT_CALL(test_sink,
2125
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2126
+ AllOf(SizeIs(longest_fit - 1), Each(Eq('x'))))),
2127
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2128
+ test_sink.StartCapturingLogs();
2129
+ // x fits, one byte from y's header fits but shouldn't be visible.
2130
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 1, 'x') << "y";
2131
+ }
2132
+ {
2133
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2134
+ EXPECT_CALL(test_sink, Send).Times(0);
2135
+ EXPECT_CALL(test_sink,
2136
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2137
+ AllOf(SizeIs(longest_fit - 2), Each(Eq('x'))))),
2138
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2139
+ test_sink.StartCapturingLogs();
2140
+ // x fits, two bytes from y's header fit but shouldn't be visible.
2141
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 2, 'x') << "y";
2142
+ }
2143
+ {
2144
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2145
+ EXPECT_CALL(test_sink, Send).Times(0);
2146
+ EXPECT_CALL(test_sink,
2147
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2148
+ AllOf(SizeIs(longest_fit - 3), Each(Eq('x'))))),
2149
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2150
+ test_sink.StartCapturingLogs();
2151
+ // x fits, three bytes from y's header fit but shouldn't be visible.
2152
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 3, 'x') << "y";
2153
+ }
2154
+ {
2155
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2156
+ EXPECT_CALL(test_sink, Send).Times(0);
2157
+ EXPECT_CALL(test_sink,
2158
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrAndOneLiteralThat(
2159
+ AllOf(SizeIs(longest_fit - 4), Each(Eq('x'))),
2160
+ IsEmpty())),
2161
+ RawEncodedMessage(Not(AsString(EndsWith("x")))))));
2162
+ test_sink.StartCapturingLogs();
2163
+ // x fits, all four bytes from y's header fit but no data bytes do, so we
2164
+ // encode an empty string.
2165
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 4, 'x') << "y";
2166
+ }
2167
+ {
2168
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2169
+ EXPECT_CALL(test_sink, Send).Times(0);
2170
+ EXPECT_CALL(
2171
+ test_sink,
2172
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrAndOneLiteralThat(
2173
+ AllOf(SizeIs(longest_fit - 5), Each(Eq('x'))), Eq("y"))),
2174
+ RawEncodedMessage(AsString(EndsWith("y"))))));
2175
+ test_sink.StartCapturingLogs();
2176
+ // x fits, y fits exactly.
2177
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 5, 'x') << "y";
2178
+ }
2179
+ }
2180
+
2181
+ TEST(StructuredLoggingOverflowTest, TruncatesInsertionOperatorsCleanly) {
2182
+ const size_t longest_fit = MaxLogFieldLengthNoPrefix();
2183
+ // To log a second value field, we need four bytes: two tag/type bytes and two
2184
+ // sizes. To put any data in the field we need a fifth byte.
2185
+ {
2186
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2187
+ EXPECT_CALL(test_sink, Send).Times(0);
2188
+ EXPECT_CALL(test_sink,
2189
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2190
+ AllOf(SizeIs(longest_fit), Each(Eq('x'))))),
2191
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2192
+ test_sink.StartCapturingLogs();
2193
+ // x fits exactly, no part of y fits.
2194
+ LOG(INFO).NoPrefix() << std::string(longest_fit, 'x') << StringLike{"y"};
2195
+ }
2196
+ {
2197
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2198
+ EXPECT_CALL(test_sink, Send).Times(0);
2199
+ EXPECT_CALL(test_sink,
2200
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2201
+ AllOf(SizeIs(longest_fit - 1), Each(Eq('x'))))),
2202
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2203
+ test_sink.StartCapturingLogs();
2204
+ // x fits, one byte from y's header fits but shouldn't be visible.
2205
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 1, 'x')
2206
+ << StringLike{"y"};
2207
+ }
2208
+ {
2209
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2210
+ EXPECT_CALL(test_sink, Send).Times(0);
2211
+ EXPECT_CALL(test_sink,
2212
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2213
+ AllOf(SizeIs(longest_fit - 2), Each(Eq('x'))))),
2214
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2215
+ test_sink.StartCapturingLogs();
2216
+ // x fits, two bytes from y's header fit but shouldn't be visible.
2217
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 2, 'x')
2218
+ << StringLike{"y"};
2219
+ }
2220
+ {
2221
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2222
+ EXPECT_CALL(test_sink, Send).Times(0);
2223
+ EXPECT_CALL(test_sink,
2224
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2225
+ AllOf(SizeIs(longest_fit - 3), Each(Eq('x'))))),
2226
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2227
+ test_sink.StartCapturingLogs();
2228
+ // x fits, three bytes from y's header fit but shouldn't be visible.
2229
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 3, 'x')
2230
+ << StringLike{"y"};
2231
+ }
2232
+ {
2233
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2234
+ EXPECT_CALL(test_sink, Send).Times(0);
2235
+ EXPECT_CALL(test_sink,
2236
+ Send(AllOf(ENCODED_MESSAGE(HasOneStrThat(
2237
+ AllOf(SizeIs(longest_fit - 4), Each(Eq('x'))))),
2238
+ RawEncodedMessage(AsString(EndsWith("x"))))));
2239
+ test_sink.StartCapturingLogs();
2240
+ // x fits, all four bytes from y's header fit but no data bytes do. We
2241
+ // don't encode an empty string here because every I/O manipulator hits this
2242
+ // codepath and those shouldn't leave empty strings behind.
2243
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 4, 'x')
2244
+ << StringLike{"y"};
2245
+ }
2246
+ {
2247
+ absl::ScopedMockLog test_sink(absl::MockLogDefault::kDisallowUnexpected);
2248
+ EXPECT_CALL(test_sink, Send).Times(0);
2249
+ EXPECT_CALL(
2250
+ test_sink,
2251
+ Send(AllOf(ENCODED_MESSAGE(HasTwoStrsThat(
2252
+ AllOf(SizeIs(longest_fit - 5), Each(Eq('x'))), Eq("y"))),
2253
+ RawEncodedMessage(AsString(EndsWith("y"))))));
2254
+ test_sink.StartCapturingLogs();
2255
+ // x fits, y fits exactly.
2256
+ LOG(INFO).NoPrefix() << std::string(longest_fit - 5, 'x')
2257
+ << StringLike{"y"};
2258
+ }
2259
+ }
2260
+
2261
+ } // namespace