@nxtedition/rocksdb 15.1.5 → 15.2.0

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 +83 -43
  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,1582 @@
1
+ // Copyright 2020 The Abseil Authors.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // https://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ #include "absl/strings/cord.h"
16
+
17
+ #include <algorithm>
18
+ #include <cassert>
19
+ #include <cstddef>
20
+ #include <cstdint>
21
+ #include <cstdio>
22
+ #include <cstdlib>
23
+ #include <cstring>
24
+ #include <iomanip>
25
+ #include <ios>
26
+ #include <iostream>
27
+ #include <limits>
28
+ #include <memory>
29
+ #include <ostream>
30
+ #include <sstream>
31
+ #include <string>
32
+ #include <utility>
33
+
34
+ #include "absl/base/attributes.h"
35
+ #include "absl/base/config.h"
36
+ #include "absl/base/internal/endian.h"
37
+ #include "absl/base/internal/raw_logging.h"
38
+ #include "absl/base/macros.h"
39
+ #include "absl/base/optimization.h"
40
+ #include "absl/base/nullability.h"
41
+ #include "absl/container/inlined_vector.h"
42
+ #include "absl/crc/crc32c.h"
43
+ #include "absl/crc/internal/crc_cord_state.h"
44
+ #include "absl/functional/function_ref.h"
45
+ #include "absl/strings/cord_buffer.h"
46
+ #include "absl/strings/escaping.h"
47
+ #include "absl/strings/internal/append_and_overwrite.h"
48
+ #include "absl/strings/internal/cord_data_edge.h"
49
+ #include "absl/strings/internal/cord_internal.h"
50
+ #include "absl/strings/internal/cord_rep_btree.h"
51
+ #include "absl/strings/internal/cord_rep_crc.h"
52
+ #include "absl/strings/internal/cord_rep_flat.h"
53
+ #include "absl/strings/internal/cordz_update_tracker.h"
54
+ #include "absl/strings/match.h"
55
+ #include "absl/strings/resize_and_overwrite.h"
56
+ #include "absl/strings/str_cat.h"
57
+ #include "absl/strings/string_view.h"
58
+ #include "absl/strings/strip.h"
59
+ #include "absl/types/optional.h"
60
+ #include "absl/types/span.h"
61
+
62
+ namespace absl {
63
+ ABSL_NAMESPACE_BEGIN
64
+
65
+ using ::absl::cord_internal::CordRep;
66
+ using ::absl::cord_internal::CordRepBtree;
67
+ using ::absl::cord_internal::CordRepCrc;
68
+ using ::absl::cord_internal::CordRepExternal;
69
+ using ::absl::cord_internal::CordRepFlat;
70
+ using ::absl::cord_internal::CordRepSubstring;
71
+ using ::absl::cord_internal::CordzUpdateTracker;
72
+ using ::absl::cord_internal::InlineData;
73
+ using ::absl::cord_internal::kMaxFlatLength;
74
+ using ::absl::cord_internal::kMinFlatLength;
75
+
76
+ using ::absl::cord_internal::kInlinedVectorSize;
77
+ using ::absl::cord_internal::kMaxBytesToCopy;
78
+
79
+ static void DumpNode(CordRep* absl_nonnull nonnull_rep, bool include_data,
80
+ std::ostream* absl_nonnull os, int indent = 0);
81
+ static bool VerifyNode(CordRep* absl_nonnull root,
82
+ CordRep* absl_nonnull start_node);
83
+
84
+ static inline CordRep* absl_nullable VerifyTree(CordRep* absl_nullable node) {
85
+ assert(node == nullptr || VerifyNode(node, node));
86
+ static_cast<void>(&VerifyNode);
87
+ return node;
88
+ }
89
+
90
+ static CordRepFlat* absl_nonnull CreateFlat(const char* absl_nonnull data,
91
+ size_t length, size_t alloc_hint) {
92
+ CordRepFlat* flat = CordRepFlat::New(length + alloc_hint);
93
+ flat->length = length;
94
+ memcpy(flat->Data(), data, length);
95
+ return flat;
96
+ }
97
+
98
+ // Creates a new flat or Btree out of the specified array.
99
+ // The returned node has a refcount of 1.
100
+ static CordRep* absl_nonnull NewBtree(const char* absl_nonnull data,
101
+ size_t length, size_t alloc_hint) {
102
+ if (length <= kMaxFlatLength) {
103
+ return CreateFlat(data, length, alloc_hint);
104
+ }
105
+ CordRepFlat* flat = CreateFlat(data, kMaxFlatLength, 0);
106
+ data += kMaxFlatLength;
107
+ length -= kMaxFlatLength;
108
+ auto* root = CordRepBtree::Create(flat);
109
+ return CordRepBtree::Append(root, {data, length}, alloc_hint);
110
+ }
111
+
112
+ // Create a new tree out of the specified array.
113
+ // The returned node has a refcount of 1.
114
+ static CordRep* absl_nullable NewTree(const char* absl_nullable data,
115
+ size_t length, size_t alloc_hint) {
116
+ if (length == 0) return nullptr;
117
+ return NewBtree(data, length, alloc_hint);
118
+ }
119
+
120
+ namespace cord_internal {
121
+
122
+ void InitializeCordRepExternal(absl::string_view data,
123
+ CordRepExternal* absl_nonnull rep) {
124
+ assert(!data.empty());
125
+ rep->length = data.size();
126
+ rep->tag = EXTERNAL;
127
+ rep->base = data.data();
128
+ VerifyTree(rep);
129
+ }
130
+
131
+ } // namespace cord_internal
132
+
133
+ // Creates a CordRep from the provided string. If the string is large enough,
134
+ // and not wasteful, we move the string into an external cord rep, preserving
135
+ // the already allocated string contents.
136
+ // Requires the provided string length to be larger than `kMaxInline`.
137
+ static CordRep* absl_nonnull CordRepFromString(std::string&& src) {
138
+ assert(src.length() > cord_internal::kMaxInline);
139
+ if (
140
+ // String is short: copy data to avoid external block overhead.
141
+ src.size() <= kMaxBytesToCopy ||
142
+ // String is wasteful: copy data to avoid pinning too much unused memory.
143
+ src.size() < src.capacity() / 2
144
+ ) {
145
+ return NewTree(src.data(), src.size(), 0);
146
+ }
147
+
148
+ struct StringReleaser {
149
+ void operator()(absl::string_view /* data */) {}
150
+ std::string data;
151
+ };
152
+ const absl::string_view original_data = src;
153
+ auto* rep =
154
+ static_cast<::absl::cord_internal::CordRepExternalImpl<StringReleaser>*>(
155
+ absl::cord_internal::NewExternalRep(original_data,
156
+ StringReleaser{std::move(src)}));
157
+ // Moving src may have invalidated its data pointer, so adjust it.
158
+ rep->base = rep->template get<0>().data.data();
159
+ return rep;
160
+ }
161
+
162
+ // --------------------------------------------------------------------
163
+ // Cord::InlineRep functions
164
+
165
+ inline void Cord::InlineRep::set_data(const char* absl_nullable data,
166
+ size_t n) {
167
+ static_assert(kMaxInline == 15, "set_data is hard-coded for a length of 15");
168
+ assert(data != nullptr || n == 0);
169
+ data_.set_inline_data(data, n);
170
+ }
171
+
172
+ inline char* absl_nonnull Cord::InlineRep::set_data(size_t n) {
173
+ assert(n <= kMaxInline);
174
+ ResetToEmpty();
175
+ set_inline_size(n);
176
+ return data_.as_chars();
177
+ }
178
+
179
+ inline void Cord::InlineRep::reduce_size(size_t n) {
180
+ size_t tag = inline_size();
181
+ assert(tag <= kMaxInline);
182
+ assert(tag >= n);
183
+ tag -= n;
184
+ memset(data_.as_chars() + tag, 0, n);
185
+ set_inline_size(tag);
186
+ }
187
+
188
+ inline void Cord::InlineRep::remove_prefix(size_t n) {
189
+ cord_internal::SmallMemmove(data_.as_chars(), data_.as_chars() + n,
190
+ inline_size() - n);
191
+ reduce_size(n);
192
+ }
193
+
194
+ // Returns `rep` converted into a CordRepBtree.
195
+ // Directly returns `rep` if `rep` is already a CordRepBtree.
196
+ static CordRepBtree* absl_nonnull ForceBtree(CordRep* rep) {
197
+ return rep->IsBtree()
198
+ ? rep->btree()
199
+ : CordRepBtree::Create(cord_internal::RemoveCrcNode(rep));
200
+ }
201
+
202
+ void Cord::InlineRep::AppendTreeToInlined(CordRep* absl_nonnull tree,
203
+ MethodIdentifier method) {
204
+ assert(!is_tree());
205
+ if (!data_.is_empty()) {
206
+ CordRepFlat* flat = MakeFlatWithExtraCapacity(0);
207
+ tree = CordRepBtree::Append(CordRepBtree::Create(flat), tree);
208
+ }
209
+ EmplaceTree(tree, method);
210
+ }
211
+
212
+ void Cord::InlineRep::AppendTreeToTree(CordRep* absl_nonnull tree,
213
+ MethodIdentifier method) {
214
+ assert(is_tree());
215
+ const CordzUpdateScope scope(data_.cordz_info(), method);
216
+ tree = CordRepBtree::Append(ForceBtree(data_.as_tree()), tree);
217
+ SetTree(tree, scope);
218
+ }
219
+
220
+ void Cord::InlineRep::AppendTree(CordRep* absl_nonnull tree,
221
+ MethodIdentifier method) {
222
+ assert(tree != nullptr);
223
+ assert(tree->length != 0);
224
+ assert(!tree->IsCrc());
225
+ if (data_.is_tree()) {
226
+ AppendTreeToTree(tree, method);
227
+ } else {
228
+ AppendTreeToInlined(tree, method);
229
+ }
230
+ }
231
+
232
+ void Cord::InlineRep::PrependTreeToInlined(CordRep* absl_nonnull tree,
233
+ MethodIdentifier method) {
234
+ assert(!is_tree());
235
+ if (!data_.is_empty()) {
236
+ CordRepFlat* flat = MakeFlatWithExtraCapacity(0);
237
+ tree = CordRepBtree::Prepend(CordRepBtree::Create(flat), tree);
238
+ }
239
+ EmplaceTree(tree, method);
240
+ }
241
+
242
+ void Cord::InlineRep::PrependTreeToTree(CordRep* absl_nonnull tree,
243
+ MethodIdentifier method) {
244
+ assert(is_tree());
245
+ const CordzUpdateScope scope(data_.cordz_info(), method);
246
+ tree = CordRepBtree::Prepend(ForceBtree(data_.as_tree()), tree);
247
+ SetTree(tree, scope);
248
+ }
249
+
250
+ void Cord::InlineRep::PrependTree(CordRep* absl_nonnull tree,
251
+ MethodIdentifier method) {
252
+ assert(tree != nullptr);
253
+ assert(tree->length != 0);
254
+ assert(!tree->IsCrc());
255
+ if (data_.is_tree()) {
256
+ PrependTreeToTree(tree, method);
257
+ } else {
258
+ PrependTreeToInlined(tree, method);
259
+ }
260
+ }
261
+
262
+ // Searches for a non-full flat node at the rightmost leaf of the tree. If a
263
+ // suitable leaf is found, the function will update the length field for all
264
+ // nodes to account for the size increase. The append region address will be
265
+ // written to region and the actual size increase will be written to size.
266
+ static inline bool PrepareAppendRegion(CordRep* absl_nonnull root,
267
+ char* absl_nullable* absl_nonnull region,
268
+ size_t* absl_nonnull size,
269
+ size_t max_length) {
270
+ if (root->IsBtree() && root->refcount.IsOne()) {
271
+ Span<char> span = root->btree()->GetAppendBuffer(max_length);
272
+ if (!span.empty()) {
273
+ *region = span.data();
274
+ *size = span.size();
275
+ return true;
276
+ }
277
+ }
278
+
279
+ CordRep* dst = root;
280
+ if (!dst->IsFlat() || !dst->refcount.IsOne()) {
281
+ *region = nullptr;
282
+ *size = 0;
283
+ return false;
284
+ }
285
+
286
+ const size_t in_use = dst->length;
287
+ const size_t capacity = dst->flat()->Capacity();
288
+ if (in_use == capacity) {
289
+ *region = nullptr;
290
+ *size = 0;
291
+ return false;
292
+ }
293
+
294
+ const size_t size_increase = std::min(capacity - in_use, max_length);
295
+ dst->length += size_increase;
296
+
297
+ *region = dst->flat()->Data() + in_use;
298
+ *size = size_increase;
299
+ return true;
300
+ }
301
+
302
+ void Cord::InlineRep::AssignSlow(const Cord::InlineRep& src) {
303
+ assert(&src != this);
304
+ assert(is_tree() || src.is_tree());
305
+ auto constexpr method = CordzUpdateTracker::kAssignCord;
306
+ if (ABSL_PREDICT_TRUE(!is_tree())) {
307
+ EmplaceTree(CordRep::Ref(src.as_tree()), src.data_, method);
308
+ return;
309
+ }
310
+
311
+ CordRep* tree = as_tree();
312
+ if (CordRep* src_tree = src.tree()) {
313
+ // Leave any existing `cordz_info` in place, and let MaybeTrackCord()
314
+ // decide if this cord should be (or remains to be) sampled or not.
315
+ data_.set_tree(CordRep::Ref(src_tree));
316
+ CordzInfo::MaybeTrackCord(data_, src.data_, method);
317
+ } else {
318
+ CordzInfo::MaybeUntrackCord(data_.cordz_info());
319
+ data_ = src.data_;
320
+ }
321
+ CordRep::Unref(tree);
322
+ }
323
+
324
+ void Cord::InlineRep::UnrefTree() {
325
+ if (is_tree()) {
326
+ CordzInfo::MaybeUntrackCord(data_.cordz_info());
327
+ CordRep::Unref(tree());
328
+ }
329
+ }
330
+
331
+ // --------------------------------------------------------------------
332
+ // Constructors and destructors
333
+
334
+ Cord::Cord(absl::string_view src, MethodIdentifier method)
335
+ : contents_(InlineData::kDefaultInit) {
336
+ const size_t n = src.size();
337
+ if (n <= InlineRep::kMaxInline) {
338
+ contents_.set_data(src.data(), n);
339
+ } else {
340
+ CordRep* rep = NewTree(src.data(), n, 0);
341
+ contents_.EmplaceTree(rep, method);
342
+ }
343
+ }
344
+
345
+ template <typename T, Cord::EnableIfString<T>>
346
+ Cord::Cord(T&& src) : contents_(InlineData::kDefaultInit) {
347
+ if (src.size() <= InlineRep::kMaxInline) {
348
+ contents_.set_data(src.data(), src.size());
349
+ } else {
350
+ CordRep* rep = CordRepFromString(std::forward<T>(src));
351
+ contents_.EmplaceTree(rep, CordzUpdateTracker::kConstructorString);
352
+ }
353
+ }
354
+
355
+ template Cord::Cord(std::string&& src);
356
+
357
+ // The destruction code is separate so that the compiler can determine
358
+ // that it does not need to call the destructor on a moved-from Cord.
359
+ void Cord::DestroyCordSlow() {
360
+ assert(contents_.is_tree());
361
+ CordzInfo::MaybeUntrackCord(contents_.cordz_info());
362
+ CordRep::Unref(VerifyTree(contents_.as_tree()));
363
+ }
364
+
365
+ // --------------------------------------------------------------------
366
+ // Mutators
367
+
368
+ void Cord::Clear() {
369
+ if (CordRep* tree = contents_.clear()) {
370
+ CordRep::Unref(tree);
371
+ }
372
+ }
373
+
374
+ Cord& Cord::AssignLargeString(std::string&& src) {
375
+ auto constexpr method = CordzUpdateTracker::kAssignString;
376
+ assert(src.size() > kMaxBytesToCopy);
377
+ CordRep* rep = CordRepFromString(std::move(src));
378
+ if (CordRep* tree = contents_.tree()) {
379
+ CordzUpdateScope scope(contents_.cordz_info(), method);
380
+ contents_.SetTree(rep, scope);
381
+ CordRep::Unref(tree);
382
+ } else {
383
+ contents_.EmplaceTree(rep, method);
384
+ }
385
+ return *this;
386
+ }
387
+
388
+ Cord& Cord::operator=(absl::string_view src) {
389
+ auto constexpr method = CordzUpdateTracker::kAssignString;
390
+ const char* data = src.data();
391
+ size_t length = src.size();
392
+ CordRep* tree = contents_.tree();
393
+ if (length <= InlineRep::kMaxInline) {
394
+ // Embed into this->contents_, which is somewhat subtle:
395
+ // - MaybeUntrackCord must be called before Unref(tree).
396
+ // - MaybeUntrackCord must be called before set_data() clobbers cordz_info.
397
+ // - set_data() must be called before Unref(tree) as it may reference tree.
398
+ if (tree != nullptr) CordzInfo::MaybeUntrackCord(contents_.cordz_info());
399
+ contents_.set_data(data, length);
400
+ if (tree != nullptr) CordRep::Unref(tree);
401
+ return *this;
402
+ }
403
+ if (tree != nullptr) {
404
+ CordzUpdateScope scope(contents_.cordz_info(), method);
405
+ if (tree->IsFlat() && tree->flat()->Capacity() >= length &&
406
+ tree->refcount.IsOne()) {
407
+ // Copy in place if the existing FLAT node is reusable.
408
+ memmove(tree->flat()->Data(), data, length);
409
+ tree->length = length;
410
+ VerifyTree(tree);
411
+ return *this;
412
+ }
413
+ contents_.SetTree(NewTree(data, length, 0), scope);
414
+ CordRep::Unref(tree);
415
+ } else {
416
+ contents_.EmplaceTree(NewTree(data, length, 0), method);
417
+ }
418
+ return *this;
419
+ }
420
+
421
+ // TODO(sanjay): Move to Cord::InlineRep section of file. For now,
422
+ // we keep it here to make diffs easier.
423
+ void Cord::InlineRep::AppendArray(absl::string_view src,
424
+ MethodIdentifier method) {
425
+ if (src.empty()) return; // memcpy(_, nullptr, 0) is undefined.
426
+ MaybeRemoveEmptyCrcNode();
427
+
428
+ size_t appended = 0;
429
+ CordRep* rep = tree();
430
+ const CordRep* const root = rep;
431
+ CordzUpdateScope scope(root ? cordz_info() : nullptr, method);
432
+ if (root != nullptr) {
433
+ rep = cord_internal::RemoveCrcNode(rep);
434
+ char* region;
435
+ if (PrepareAppendRegion(rep, &region, &appended, src.size())) {
436
+ memcpy(region, src.data(), appended);
437
+ }
438
+ } else {
439
+ // Try to fit in the inline buffer if possible.
440
+ size_t inline_length = inline_size();
441
+ if (src.size() <= kMaxInline - inline_length) {
442
+ // Append new data to embedded array
443
+ set_inline_size(inline_length + src.size());
444
+ memcpy(data_.as_chars() + inline_length, src.data(), src.size());
445
+ return;
446
+ }
447
+
448
+ // Allocate flat to be a perfect fit on first append exceeding inlined size.
449
+ // Subsequent growth will use amortized growth until we reach maximum flat
450
+ // size.
451
+ rep = CordRepFlat::New(inline_length + src.size());
452
+ appended = std::min(src.size(), rep->flat()->Capacity() - inline_length);
453
+ memcpy(rep->flat()->Data(), data_.as_chars(), inline_length);
454
+ memcpy(rep->flat()->Data() + inline_length, src.data(), appended);
455
+ rep->length = inline_length + appended;
456
+ }
457
+
458
+ src.remove_prefix(appended);
459
+ if (src.empty()) {
460
+ CommitTree(root, rep, scope, method);
461
+ return;
462
+ }
463
+
464
+ // TODO(b/192061034): keep legacy 10% growth rate: consider other rates.
465
+ rep = ForceBtree(rep);
466
+ const size_t min_growth = std::max<size_t>(rep->length / 10, src.size());
467
+ rep = CordRepBtree::Append(rep->btree(), src, min_growth - src.size());
468
+
469
+ CommitTree(root, rep, scope, method);
470
+ }
471
+
472
+ inline CordRep* absl_nonnull Cord::TakeRep() const& {
473
+ return CordRep::Ref(contents_.tree());
474
+ }
475
+
476
+ inline CordRep* absl_nonnull Cord::TakeRep() && {
477
+ CordRep* rep = contents_.tree();
478
+ contents_.clear();
479
+ return rep;
480
+ }
481
+
482
+ template <typename C>
483
+ inline void Cord::AppendImpl(C&& src) {
484
+ auto constexpr method = CordzUpdateTracker::kAppendCord;
485
+
486
+ contents_.MaybeRemoveEmptyCrcNode();
487
+ if (src.empty()) return;
488
+
489
+ if (empty()) {
490
+ // Since destination is empty, we can avoid allocating a node,
491
+ if (src.contents_.is_tree()) {
492
+ // by taking the tree directly
493
+ CordRep* rep =
494
+ cord_internal::RemoveCrcNode(std::forward<C>(src).TakeRep());
495
+ contents_.EmplaceTree(rep, method);
496
+ } else {
497
+ // or copying over inline data
498
+ contents_.data_ = src.contents_.data_;
499
+ }
500
+ return;
501
+ }
502
+
503
+ // For short cords, it is faster to copy data if there is room in dst.
504
+ const size_t src_size = src.contents_.size();
505
+ if (src_size <= kMaxBytesToCopy) {
506
+ CordRep* src_tree = src.contents_.tree();
507
+ if (src_tree == nullptr) {
508
+ // src has embedded data.
509
+ contents_.AppendArray({src.contents_.data(), src_size}, method);
510
+ return;
511
+ }
512
+ if (src_tree->IsFlat()) {
513
+ // src tree just has one flat node.
514
+ contents_.AppendArray({src_tree->flat()->Data(), src_size}, method);
515
+ return;
516
+ }
517
+ if (&src == this) {
518
+ // ChunkIterator below assumes that src is not modified during traversal.
519
+ Append(Cord(src));
520
+ return;
521
+ }
522
+ // TODO(mec): Should we only do this if "dst" has space?
523
+ for (absl::string_view chunk : src.Chunks()) {
524
+ Append(chunk);
525
+ }
526
+ return;
527
+ }
528
+
529
+ // Guaranteed to be a tree (kMaxBytesToCopy > kInlinedSize)
530
+ CordRep* rep = cord_internal::RemoveCrcNode(std::forward<C>(src).TakeRep());
531
+ contents_.AppendTree(rep, CordzUpdateTracker::kAppendCord);
532
+ }
533
+
534
+ static CordRep::ExtractResult ExtractAppendBuffer(CordRep* absl_nonnull rep,
535
+ size_t min_capacity) {
536
+ switch (rep->tag) {
537
+ case cord_internal::BTREE:
538
+ return CordRepBtree::ExtractAppendBuffer(rep->btree(), min_capacity);
539
+ default:
540
+ if (rep->IsFlat() && rep->refcount.IsOne() &&
541
+ rep->flat()->Capacity() - rep->length >= min_capacity) {
542
+ return {nullptr, rep};
543
+ }
544
+ return {rep, nullptr};
545
+ }
546
+ }
547
+
548
+ static CordBuffer CreateAppendBuffer(InlineData& data, size_t block_size,
549
+ size_t capacity) {
550
+ // Watch out for overflow, people can ask for size_t::max().
551
+ const size_t size = data.inline_size();
552
+ const size_t max_capacity = std::numeric_limits<size_t>::max() - size;
553
+ capacity = (std::min)(max_capacity, capacity) + size;
554
+ CordBuffer buffer =
555
+ block_size ? CordBuffer::CreateWithCustomLimit(block_size, capacity)
556
+ : CordBuffer::CreateWithDefaultLimit(capacity);
557
+ cord_internal::SmallMemmove(buffer.data(), data.as_chars(), size);
558
+ buffer.SetLength(size);
559
+ data = {};
560
+ return buffer;
561
+ }
562
+
563
+ CordBuffer Cord::GetAppendBufferSlowPath(size_t block_size, size_t capacity,
564
+ size_t min_capacity) {
565
+ auto constexpr method = CordzUpdateTracker::kGetAppendBuffer;
566
+ CordRep* tree = contents_.tree();
567
+ if (tree != nullptr) {
568
+ CordzUpdateScope scope(contents_.cordz_info(), method);
569
+ CordRep::ExtractResult result = ExtractAppendBuffer(tree, min_capacity);
570
+ if (result.extracted != nullptr) {
571
+ contents_.SetTreeOrEmpty(result.tree, scope);
572
+ return CordBuffer(result.extracted->flat());
573
+ }
574
+ return block_size ? CordBuffer::CreateWithCustomLimit(block_size, capacity)
575
+ : CordBuffer::CreateWithDefaultLimit(capacity);
576
+ }
577
+ return CreateAppendBuffer(contents_.data_, block_size, capacity);
578
+ }
579
+
580
+ void Cord::Append(const Cord& src) { AppendImpl(src); }
581
+
582
+ void Cord::Append(Cord&& src) { AppendImpl(std::move(src)); }
583
+
584
+ template <typename T, Cord::EnableIfString<T>>
585
+ void Cord::Append(T&& src) {
586
+ if (src.size() <= kMaxBytesToCopy) {
587
+ Append(absl::string_view(src));
588
+ } else {
589
+ CordRep* rep = CordRepFromString(std::forward<T>(src));
590
+ contents_.AppendTree(rep, CordzUpdateTracker::kAppendString);
591
+ }
592
+ }
593
+
594
+ template void Cord::Append(std::string&& src);
595
+
596
+ void Cord::Prepend(const Cord& src) {
597
+ contents_.MaybeRemoveEmptyCrcNode();
598
+ if (src.empty()) return;
599
+
600
+ CordRep* src_tree = src.contents_.tree();
601
+ if (src_tree != nullptr) {
602
+ CordRep::Ref(src_tree);
603
+ contents_.PrependTree(cord_internal::RemoveCrcNode(src_tree),
604
+ CordzUpdateTracker::kPrependCord);
605
+ return;
606
+ }
607
+
608
+ // `src` cord is inlined.
609
+ absl::string_view src_contents(src.contents_.data(), src.contents_.size());
610
+ return Prepend(src_contents);
611
+ }
612
+
613
+ void Cord::PrependArray(absl::string_view src, MethodIdentifier method) {
614
+ contents_.MaybeRemoveEmptyCrcNode();
615
+ if (src.empty()) return; // memcpy(_, nullptr, 0) is undefined.
616
+
617
+ if (!contents_.is_tree()) {
618
+ size_t cur_size = contents_.inline_size();
619
+ if (cur_size + src.size() <= InlineRep::kMaxInline) {
620
+ // Use embedded storage.
621
+ InlineData data;
622
+ data.set_inline_size(cur_size + src.size());
623
+ memcpy(data.as_chars(), src.data(), src.size());
624
+ memcpy(data.as_chars() + src.size(), contents_.data(), cur_size);
625
+ contents_.data_ = data;
626
+ return;
627
+ }
628
+ }
629
+ CordRep* rep = NewTree(src.data(), src.size(), 0);
630
+ contents_.PrependTree(rep, method);
631
+ }
632
+
633
+ void Cord::AppendPrecise(absl::string_view src, MethodIdentifier method) {
634
+ assert(!src.empty());
635
+ assert(src.size() <= cord_internal::kMaxFlatLength);
636
+ if (contents_.remaining_inline_capacity() >= src.size()) {
637
+ const size_t inline_length = contents_.inline_size();
638
+ contents_.set_inline_size(inline_length + src.size());
639
+ memcpy(contents_.data_.as_chars() + inline_length, src.data(), src.size());
640
+ } else {
641
+ contents_.AppendTree(CordRepFlat::Create(src), method);
642
+ }
643
+ }
644
+
645
+ void Cord::PrependPrecise(absl::string_view src, MethodIdentifier method) {
646
+ assert(!src.empty());
647
+ assert(src.size() <= cord_internal::kMaxFlatLength);
648
+ if (contents_.remaining_inline_capacity() >= src.size()) {
649
+ const size_t cur_size = contents_.inline_size();
650
+ InlineData data;
651
+ data.set_inline_size(cur_size + src.size());
652
+ memcpy(data.as_chars(), src.data(), src.size());
653
+ memcpy(data.as_chars() + src.size(), contents_.data(), cur_size);
654
+ contents_.data_ = data;
655
+ } else {
656
+ contents_.PrependTree(CordRepFlat::Create(src), method);
657
+ }
658
+ }
659
+
660
+ template <typename T, Cord::EnableIfString<T>>
661
+ inline void Cord::Prepend(T&& src) {
662
+ if (src.size() <= kMaxBytesToCopy) {
663
+ Prepend(absl::string_view(src));
664
+ } else {
665
+ CordRep* rep = CordRepFromString(std::forward<T>(src));
666
+ contents_.PrependTree(rep, CordzUpdateTracker::kPrependString);
667
+ }
668
+ }
669
+
670
+ template void Cord::Prepend(std::string&& src);
671
+
672
+ void Cord::RemovePrefix(size_t n) {
673
+ ABSL_INTERNAL_CHECK(n <= size(),
674
+ absl::StrCat("Requested prefix size ", n,
675
+ " exceeds Cord's size ", size()));
676
+ contents_.MaybeRemoveEmptyCrcNode();
677
+ CordRep* tree = contents_.tree();
678
+ if (tree == nullptr) {
679
+ contents_.remove_prefix(n);
680
+ } else {
681
+ auto constexpr method = CordzUpdateTracker::kRemovePrefix;
682
+ CordzUpdateScope scope(contents_.cordz_info(), method);
683
+ tree = cord_internal::RemoveCrcNode(tree);
684
+ if (n >= tree->length) {
685
+ CordRep::Unref(tree);
686
+ tree = nullptr;
687
+ } else if (tree->IsBtree()) {
688
+ CordRep* old = tree;
689
+ tree = tree->btree()->SubTree(n, tree->length - n);
690
+ CordRep::Unref(old);
691
+ } else if (tree->IsSubstring() && tree->refcount.IsOne()) {
692
+ tree->substring()->start += n;
693
+ tree->length -= n;
694
+ } else {
695
+ CordRep* rep = CordRepSubstring::Substring(tree, n, tree->length - n);
696
+ CordRep::Unref(tree);
697
+ tree = rep;
698
+ }
699
+ contents_.SetTreeOrEmpty(tree, scope);
700
+ }
701
+ }
702
+
703
+ void Cord::RemoveSuffix(size_t n) {
704
+ ABSL_INTERNAL_CHECK(n <= size(),
705
+ absl::StrCat("Requested suffix size ", n,
706
+ " exceeds Cord's size ", size()));
707
+ contents_.MaybeRemoveEmptyCrcNode();
708
+ CordRep* tree = contents_.tree();
709
+ if (tree == nullptr) {
710
+ contents_.reduce_size(n);
711
+ } else {
712
+ auto constexpr method = CordzUpdateTracker::kRemoveSuffix;
713
+ CordzUpdateScope scope(contents_.cordz_info(), method);
714
+ tree = cord_internal::RemoveCrcNode(tree);
715
+ if (n >= tree->length) {
716
+ CordRep::Unref(tree);
717
+ tree = nullptr;
718
+ } else if (tree->IsBtree()) {
719
+ tree = CordRepBtree::RemoveSuffix(tree->btree(), n);
720
+ } else if (!tree->IsExternal() && tree->refcount.IsOne()) {
721
+ assert(tree->IsFlat() || tree->IsSubstring());
722
+ tree->length -= n;
723
+ } else {
724
+ CordRep* rep = CordRepSubstring::Substring(tree, 0, tree->length - n);
725
+ CordRep::Unref(tree);
726
+ tree = rep;
727
+ }
728
+ contents_.SetTreeOrEmpty(tree, scope);
729
+ }
730
+ }
731
+
732
+ Cord Cord::Subcord(size_t pos, size_t new_size) const {
733
+ Cord sub_cord;
734
+ size_t length = size();
735
+ if (pos > length) pos = length;
736
+ if (new_size > length - pos) new_size = length - pos;
737
+ if (new_size == 0) return sub_cord;
738
+
739
+ CordRep* tree = contents_.tree();
740
+ if (tree == nullptr) {
741
+ sub_cord.contents_.set_data(contents_.data() + pos, new_size);
742
+ return sub_cord;
743
+ }
744
+
745
+ if (new_size <= InlineRep::kMaxInline) {
746
+ sub_cord.contents_.set_inline_size(new_size);
747
+ char* dest = sub_cord.contents_.data_.as_chars();
748
+ Cord::ChunkIterator it = chunk_begin();
749
+ it.AdvanceBytes(pos);
750
+ size_t remaining_size = new_size;
751
+ while (remaining_size > it->size()) {
752
+ cord_internal::SmallMemmove(dest, it->data(), it->size());
753
+ remaining_size -= it->size();
754
+ dest += it->size();
755
+ ++it;
756
+ }
757
+ cord_internal::SmallMemmove(dest, it->data(), remaining_size);
758
+ return sub_cord;
759
+ }
760
+
761
+ tree = cord_internal::SkipCrcNode(tree);
762
+ if (tree->IsBtree()) {
763
+ tree = tree->btree()->SubTree(pos, new_size);
764
+ } else {
765
+ tree = CordRepSubstring::Substring(tree, pos, new_size);
766
+ }
767
+ sub_cord.contents_.EmplaceTree(tree, contents_.data_,
768
+ CordzUpdateTracker::kSubCord);
769
+ return sub_cord;
770
+ }
771
+
772
+ // --------------------------------------------------------------------
773
+ // Comparators
774
+
775
+ namespace {
776
+
777
+ int ClampResult(int memcmp_res) {
778
+ return static_cast<int>(memcmp_res > 0) - static_cast<int>(memcmp_res < 0);
779
+ }
780
+
781
+ int CompareChunks(absl::string_view* absl_nonnull lhs,
782
+ absl::string_view* absl_nonnull rhs,
783
+ size_t* absl_nonnull size_to_compare) {
784
+ size_t compared_size = std::min(lhs->size(), rhs->size());
785
+ assert(*size_to_compare >= compared_size);
786
+ *size_to_compare -= compared_size;
787
+
788
+ int memcmp_res = ::memcmp(lhs->data(), rhs->data(), compared_size);
789
+ if (memcmp_res != 0) return memcmp_res;
790
+
791
+ lhs->remove_prefix(compared_size);
792
+ rhs->remove_prefix(compared_size);
793
+
794
+ return 0;
795
+ }
796
+
797
+ // This overload set computes comparison results from memcmp result. This
798
+ // interface is used inside GenericCompare below. Different implementations
799
+ // are specialized for int and bool. For int we clamp result to {-1, 0, 1}
800
+ // set. For bool we just interested in "value == 0".
801
+ template <typename ResultType>
802
+ ResultType ComputeCompareResult(int memcmp_res) {
803
+ return ClampResult(memcmp_res);
804
+ }
805
+ template <>
806
+ bool ComputeCompareResult<bool>(int memcmp_res) {
807
+ return memcmp_res == 0;
808
+ }
809
+
810
+ } // namespace
811
+
812
+ // Helper routine. Locates the first flat or external chunk of the Cord without
813
+ // initializing the iterator, and returns a string_view referencing the data.
814
+ inline absl::string_view Cord::InlineRep::FindFlatStartPiece() const {
815
+ if (!is_tree()) {
816
+ return absl::string_view(data_.as_chars(), data_.inline_size());
817
+ }
818
+
819
+ CordRep* node = cord_internal::SkipCrcNode(tree());
820
+ if (node->IsFlat()) {
821
+ return absl::string_view(node->flat()->Data(), node->length);
822
+ }
823
+
824
+ if (node->IsExternal()) {
825
+ return absl::string_view(node->external()->base, node->length);
826
+ }
827
+
828
+ if (node->IsBtree()) {
829
+ CordRepBtree* tree = node->btree();
830
+ int height = tree->height();
831
+ while (--height >= 0) {
832
+ tree = tree->Edge(CordRepBtree::kFront)->btree();
833
+ }
834
+ return tree->Data(tree->begin());
835
+ }
836
+
837
+ // Get the child node if we encounter a SUBSTRING.
838
+ size_t offset = 0;
839
+ size_t length = node->length;
840
+ assert(length != 0);
841
+
842
+ if (node->IsSubstring()) {
843
+ offset = node->substring()->start;
844
+ node = node->substring()->child;
845
+ }
846
+
847
+ if (node->IsFlat()) {
848
+ return absl::string_view(node->flat()->Data() + offset, length);
849
+ }
850
+
851
+ assert(node->IsExternal() && "Expect FLAT or EXTERNAL node here");
852
+
853
+ return absl::string_view(node->external()->base + offset, length);
854
+ }
855
+
856
+ void Cord::SetCrcCordState(crc_internal::CrcCordState state) {
857
+ auto constexpr method = CordzUpdateTracker::kSetExpectedChecksum;
858
+ if (empty()) {
859
+ contents_.MaybeRemoveEmptyCrcNode();
860
+ CordRep* rep = CordRepCrc::New(nullptr, std::move(state));
861
+ contents_.EmplaceTree(rep, method);
862
+ } else if (!contents_.is_tree()) {
863
+ CordRep* rep = contents_.MakeFlatWithExtraCapacity(0);
864
+ rep = CordRepCrc::New(rep, std::move(state));
865
+ contents_.EmplaceTree(rep, method);
866
+ } else {
867
+ const CordzUpdateScope scope(contents_.data_.cordz_info(), method);
868
+ CordRep* rep = CordRepCrc::New(contents_.data_.as_tree(), std::move(state));
869
+ contents_.SetTree(rep, scope);
870
+ }
871
+ }
872
+
873
+ void Cord::SetExpectedChecksum(uint32_t crc) {
874
+ // Construct a CrcCordState with a single chunk.
875
+ crc_internal::CrcCordState state;
876
+ state.mutable_rep()->prefix_crc.push_back(
877
+ crc_internal::CrcCordState::PrefixCrc(size(), absl::crc32c_t{crc}));
878
+ SetCrcCordState(std::move(state));
879
+ }
880
+
881
+ const crc_internal::CrcCordState* absl_nullable Cord::MaybeGetCrcCordState()
882
+ const {
883
+ if (!contents_.is_tree() || !contents_.tree()->IsCrc()) {
884
+ return nullptr;
885
+ }
886
+ return &contents_.tree()->crc()->crc_cord_state;
887
+ }
888
+
889
+ absl::optional<uint32_t> Cord::ExpectedChecksum() const {
890
+ if (!contents_.is_tree() || !contents_.tree()->IsCrc()) {
891
+ return absl::nullopt;
892
+ }
893
+ return static_cast<uint32_t>(
894
+ contents_.tree()->crc()->crc_cord_state.Checksum());
895
+ }
896
+
897
+ inline int Cord::CompareSlowPath(absl::string_view rhs, size_t compared_size,
898
+ size_t size_to_compare) const {
899
+ auto advance = [](Cord::ChunkIterator* absl_nonnull it,
900
+ absl::string_view* absl_nonnull chunk) {
901
+ if (!chunk->empty()) return true;
902
+ ++*it;
903
+ if (it->bytes_remaining_ == 0) return false;
904
+ *chunk = **it;
905
+ return true;
906
+ };
907
+
908
+ Cord::ChunkIterator lhs_it = chunk_begin();
909
+
910
+ // compared_size is inside first chunk.
911
+ absl::string_view lhs_chunk =
912
+ (lhs_it.bytes_remaining_ != 0) ? *lhs_it : absl::string_view();
913
+ assert(compared_size <= lhs_chunk.size());
914
+ assert(compared_size <= rhs.size());
915
+ lhs_chunk.remove_prefix(compared_size);
916
+ rhs.remove_prefix(compared_size);
917
+ size_to_compare -= compared_size; // skip already compared size.
918
+
919
+ while (advance(&lhs_it, &lhs_chunk) && !rhs.empty()) {
920
+ int comparison_result = CompareChunks(&lhs_chunk, &rhs, &size_to_compare);
921
+ if (comparison_result != 0) return comparison_result;
922
+ if (size_to_compare == 0) return 0;
923
+ }
924
+
925
+ return static_cast<int>(rhs.empty()) - static_cast<int>(lhs_chunk.empty());
926
+ }
927
+
928
+ inline int Cord::CompareSlowPath(const Cord& rhs, size_t compared_size,
929
+ size_t size_to_compare) const {
930
+ auto advance = [](Cord::ChunkIterator* absl_nonnull it,
931
+ absl::string_view* absl_nonnull chunk) {
932
+ if (!chunk->empty()) return true;
933
+ ++*it;
934
+ if (it->bytes_remaining_ == 0) return false;
935
+ *chunk = **it;
936
+ return true;
937
+ };
938
+
939
+ Cord::ChunkIterator lhs_it = chunk_begin();
940
+ Cord::ChunkIterator rhs_it = rhs.chunk_begin();
941
+
942
+ // compared_size is inside both first chunks.
943
+ absl::string_view lhs_chunk =
944
+ (lhs_it.bytes_remaining_ != 0) ? *lhs_it : absl::string_view();
945
+ absl::string_view rhs_chunk =
946
+ (rhs_it.bytes_remaining_ != 0) ? *rhs_it : absl::string_view();
947
+ assert(compared_size <= lhs_chunk.size());
948
+ assert(compared_size <= rhs_chunk.size());
949
+ lhs_chunk.remove_prefix(compared_size);
950
+ rhs_chunk.remove_prefix(compared_size);
951
+ size_to_compare -= compared_size; // skip already compared size.
952
+
953
+ while (advance(&lhs_it, &lhs_chunk) && advance(&rhs_it, &rhs_chunk)) {
954
+ int memcmp_res = CompareChunks(&lhs_chunk, &rhs_chunk, &size_to_compare);
955
+ if (memcmp_res != 0) return memcmp_res;
956
+ if (size_to_compare == 0) return 0;
957
+ }
958
+
959
+ return static_cast<int>(rhs_chunk.empty()) -
960
+ static_cast<int>(lhs_chunk.empty());
961
+ }
962
+
963
+ inline absl::string_view Cord::GetFirstChunk(const Cord& c) {
964
+ if (c.empty()) return {};
965
+ return c.contents_.FindFlatStartPiece();
966
+ }
967
+ inline absl::string_view Cord::GetFirstChunk(absl::string_view sv) {
968
+ return sv;
969
+ }
970
+
971
+ // Compares up to 'size_to_compare' bytes of 'lhs' with 'rhs'. It is assumed
972
+ // that 'size_to_compare' is greater that size of smallest of first chunks.
973
+ template <typename ResultType, typename RHS>
974
+ ResultType GenericCompare(const Cord& lhs, const RHS& rhs,
975
+ size_t size_to_compare) {
976
+ absl::string_view lhs_chunk = Cord::GetFirstChunk(lhs);
977
+ absl::string_view rhs_chunk = Cord::GetFirstChunk(rhs);
978
+
979
+ size_t compared_size = std::min(lhs_chunk.size(), rhs_chunk.size());
980
+ assert(size_to_compare >= compared_size);
981
+ int memcmp_res = compared_size > 0 ? ::memcmp(lhs_chunk.data(),
982
+ rhs_chunk.data(), compared_size)
983
+ : 0;
984
+ if (compared_size == size_to_compare || memcmp_res != 0) {
985
+ return ComputeCompareResult<ResultType>(memcmp_res);
986
+ }
987
+
988
+ return ComputeCompareResult<ResultType>(
989
+ lhs.CompareSlowPath(rhs, compared_size, size_to_compare));
990
+ }
991
+
992
+ bool Cord::EqualsImpl(absl::string_view rhs, size_t size_to_compare) const {
993
+ return GenericCompare<bool>(*this, rhs, size_to_compare);
994
+ }
995
+
996
+ bool Cord::EqualsImpl(const Cord& rhs, size_t size_to_compare) const {
997
+ return GenericCompare<bool>(*this, rhs, size_to_compare);
998
+ }
999
+
1000
+ template <typename RHS>
1001
+ inline int SharedCompareImpl(const Cord& lhs, const RHS& rhs) {
1002
+ size_t lhs_size = lhs.size();
1003
+ size_t rhs_size = rhs.size();
1004
+ if (lhs_size == rhs_size) {
1005
+ return GenericCompare<int>(lhs, rhs, lhs_size);
1006
+ }
1007
+ if (lhs_size < rhs_size) {
1008
+ auto data_comp_res = GenericCompare<int>(lhs, rhs, lhs_size);
1009
+ return data_comp_res == 0 ? -1 : data_comp_res;
1010
+ }
1011
+
1012
+ auto data_comp_res = GenericCompare<int>(lhs, rhs, rhs_size);
1013
+ return data_comp_res == 0 ? +1 : data_comp_res;
1014
+ }
1015
+
1016
+ int Cord::Compare(absl::string_view rhs) const {
1017
+ return SharedCompareImpl(*this, rhs);
1018
+ }
1019
+
1020
+ int Cord::CompareImpl(const Cord& rhs) const {
1021
+ return SharedCompareImpl(*this, rhs);
1022
+ }
1023
+
1024
+ bool Cord::EndsWith(absl::string_view rhs) const {
1025
+ size_t my_size = size();
1026
+ size_t rhs_size = rhs.size();
1027
+
1028
+ if (my_size < rhs_size) return false;
1029
+
1030
+ Cord tmp(*this);
1031
+ tmp.RemovePrefix(my_size - rhs_size);
1032
+ return tmp.EqualsImpl(rhs, rhs_size);
1033
+ }
1034
+
1035
+ bool Cord::EndsWith(const Cord& rhs) const {
1036
+ size_t my_size = size();
1037
+ size_t rhs_size = rhs.size();
1038
+
1039
+ if (my_size < rhs_size) return false;
1040
+
1041
+ Cord tmp(*this);
1042
+ tmp.RemovePrefix(my_size - rhs_size);
1043
+ return tmp.EqualsImpl(rhs, rhs_size);
1044
+ }
1045
+
1046
+ // --------------------------------------------------------------------
1047
+ // Misc.
1048
+
1049
+ Cord::operator std::string() const {
1050
+ std::string s;
1051
+ absl::CopyCordToString(*this, &s);
1052
+ return s;
1053
+ }
1054
+
1055
+ void CopyCordToString(const Cord& src, std::string* absl_nonnull dst) {
1056
+ if (!src.contents_.is_tree()) {
1057
+ src.contents_.CopyTo(dst);
1058
+ } else {
1059
+ StringResizeAndOverwrite(*dst, src.size(),
1060
+ [&src](char* buf, size_t buf_size) {
1061
+ src.CopyToArraySlowPath(buf);
1062
+ return buf_size;
1063
+ });
1064
+ }
1065
+ }
1066
+
1067
+ void AppendCordToString(const Cord& src, std::string* absl_nonnull dst) {
1068
+ strings_internal::StringAppendAndOverwrite(
1069
+ *dst, src.size(), [&src](char* buf, size_t buf_size) {
1070
+ src.CopyToArrayImpl(buf);
1071
+ return buf_size;
1072
+ });
1073
+ }
1074
+
1075
+ void Cord::CopyToArraySlowPath(char* absl_nonnull dst) const {
1076
+ assert(contents_.is_tree());
1077
+ absl::string_view fragment;
1078
+ if (GetFlatAux(contents_.tree(), &fragment) && !fragment.empty()) {
1079
+ memcpy(dst, fragment.data(), fragment.size());
1080
+ return;
1081
+ }
1082
+ for (absl::string_view chunk : Chunks()) {
1083
+ memcpy(dst, chunk.data(), chunk.size());
1084
+ dst += chunk.size();
1085
+ }
1086
+ }
1087
+
1088
+ Cord Cord::ChunkIterator::AdvanceAndReadBytes(size_t n) {
1089
+ ABSL_HARDENING_ASSERT(bytes_remaining_ >= n &&
1090
+ "Attempted to iterate past `end()`");
1091
+ Cord subcord;
1092
+ auto constexpr method = CordzUpdateTracker::kCordReader;
1093
+
1094
+ if (n <= InlineRep::kMaxInline) {
1095
+ // Range to read fits in inline data. Flatten it.
1096
+ char* data = subcord.contents_.set_data(n);
1097
+ while (n > current_chunk_.size()) {
1098
+ memcpy(data, current_chunk_.data(), current_chunk_.size());
1099
+ data += current_chunk_.size();
1100
+ n -= current_chunk_.size();
1101
+ ++*this;
1102
+ }
1103
+ memcpy(data, current_chunk_.data(), n);
1104
+ if (n < current_chunk_.size()) {
1105
+ RemoveChunkPrefix(n);
1106
+ } else if (n > 0) {
1107
+ ++*this;
1108
+ }
1109
+ return subcord;
1110
+ }
1111
+
1112
+ if (btree_reader_) {
1113
+ size_t chunk_size = current_chunk_.size();
1114
+ if (n <= chunk_size && n <= kMaxBytesToCopy) {
1115
+ subcord = Cord(current_chunk_.substr(0, n), method);
1116
+ if (n < chunk_size) {
1117
+ current_chunk_.remove_prefix(n);
1118
+ } else {
1119
+ current_chunk_ = btree_reader_.Next();
1120
+ }
1121
+ } else {
1122
+ CordRep* rep;
1123
+ current_chunk_ = btree_reader_.Read(n, chunk_size, rep);
1124
+ subcord.contents_.EmplaceTree(rep, method);
1125
+ }
1126
+ bytes_remaining_ -= n;
1127
+ return subcord;
1128
+ }
1129
+
1130
+ // Short circuit if reading the entire data edge.
1131
+ assert(current_leaf_ != nullptr);
1132
+ if (n == current_leaf_->length) {
1133
+ bytes_remaining_ = 0;
1134
+ current_chunk_ = {};
1135
+ CordRep* tree = CordRep::Ref(current_leaf_);
1136
+ subcord.contents_.EmplaceTree(VerifyTree(tree), method);
1137
+ return subcord;
1138
+ }
1139
+
1140
+ // From this point on, we need a partial substring node.
1141
+ // Get pointer to the underlying flat or external data payload and
1142
+ // compute data pointer and offset into current flat or external.
1143
+ CordRep* payload = current_leaf_->IsSubstring()
1144
+ ? current_leaf_->substring()->child
1145
+ : current_leaf_;
1146
+ const char* data = payload->IsExternal() ? payload->external()->base
1147
+ : payload->flat()->Data();
1148
+ const size_t offset = static_cast<size_t>(current_chunk_.data() - data);
1149
+
1150
+ auto* tree = CordRepSubstring::Substring(payload, offset, n);
1151
+ subcord.contents_.EmplaceTree(VerifyTree(tree), method);
1152
+ bytes_remaining_ -= n;
1153
+ current_chunk_.remove_prefix(n);
1154
+ return subcord;
1155
+ }
1156
+
1157
+ char Cord::operator[](size_t i) const {
1158
+ ABSL_HARDENING_ASSERT(i < size());
1159
+ size_t offset = i;
1160
+ const CordRep* rep = contents_.tree();
1161
+ if (rep == nullptr) {
1162
+ return contents_.data()[i];
1163
+ }
1164
+ rep = cord_internal::SkipCrcNode(rep);
1165
+ while (true) {
1166
+ assert(rep != nullptr);
1167
+ assert(offset < rep->length);
1168
+ if (rep->IsFlat()) {
1169
+ // Get the "i"th character directly from the flat array.
1170
+ return rep->flat()->Data()[offset];
1171
+ } else if (rep->IsBtree()) {
1172
+ return rep->btree()->GetCharacter(offset);
1173
+ } else if (rep->IsExternal()) {
1174
+ // Get the "i"th character from the external array.
1175
+ return rep->external()->base[offset];
1176
+ } else {
1177
+ // This must be a substring a node, so bypass it to get to the child.
1178
+ assert(rep->IsSubstring());
1179
+ offset += rep->substring()->start;
1180
+ rep = rep->substring()->child;
1181
+ }
1182
+ }
1183
+ }
1184
+
1185
+ namespace {
1186
+
1187
+ // Tests whether the sequence of chunks beginning at `position` starts with
1188
+ // `needle`.
1189
+ //
1190
+ // REQUIRES: remaining `absl::Cord` starting at `position` is greater than or
1191
+ // equal to `needle.size()`.
1192
+ bool IsSubstringInCordAt(absl::Cord::CharIterator position,
1193
+ absl::string_view needle) {
1194
+ auto haystack_chunk = absl::Cord::ChunkRemaining(position);
1195
+ while (true) {
1196
+ // Precondition is that `absl::Cord::ChunkRemaining(position)` is not
1197
+ // empty. This assert will trigger if that is not true.
1198
+ assert(!haystack_chunk.empty());
1199
+ auto min_length = std::min(haystack_chunk.size(), needle.size());
1200
+ if (!absl::ConsumePrefix(&needle, haystack_chunk.substr(0, min_length))) {
1201
+ return false;
1202
+ }
1203
+ if (needle.empty()) {
1204
+ return true;
1205
+ }
1206
+ absl::Cord::Advance(&position, min_length);
1207
+ haystack_chunk = absl::Cord::ChunkRemaining(position);
1208
+ }
1209
+ }
1210
+
1211
+ } // namespace
1212
+
1213
+ // A few options how this could be implemented:
1214
+ // (a) Flatten the Cord and find, i.e.
1215
+ // haystack.Flatten().find(needle)
1216
+ // For large 'haystack' (where Cord makes sense to be used), this copies
1217
+ // the whole 'haystack' and can be slow.
1218
+ // (b) Use std::search, i.e.
1219
+ // std::search(haystack.char_begin(), haystack.char_end(),
1220
+ // needle.begin(), needle.end())
1221
+ // This avoids the copy, but compares one byte at a time, and branches a
1222
+ // lot every time it has to advance. It is also not possible to use
1223
+ // std::search as is, because CharIterator is only an input iterator, not a
1224
+ // forward iterator.
1225
+ // (c) Use string_view::find in each fragment, and specifically handle fragment
1226
+ // boundaries.
1227
+ //
1228
+ // This currently implements option (b).
1229
+ absl::Cord::CharIterator absl::Cord::FindImpl(CharIterator it,
1230
+ absl::string_view needle) const {
1231
+ // Ensure preconditions are met by callers first.
1232
+
1233
+ // Needle must not be empty.
1234
+ assert(!needle.empty());
1235
+ // Haystack must be at least as large as needle.
1236
+ assert(it.chunk_iterator_.bytes_remaining_ >= needle.size());
1237
+
1238
+ // Cord is a sequence of chunks. To find `needle` we go chunk by chunk looking
1239
+ // for the first char of needle, up until we have advanced `N` defined as
1240
+ // `haystack.size() - needle.size()`. If we find the first char of needle at
1241
+ // `P` and `P` is less than `N`, we then call `IsSubstringInCordAt` to
1242
+ // see if this is the needle. If not, we advance to `P + 1` and try again.
1243
+ while (it.chunk_iterator_.bytes_remaining_ >= needle.size()) {
1244
+ auto haystack_chunk = Cord::ChunkRemaining(it);
1245
+ assert(!haystack_chunk.empty());
1246
+ // Look for the first char of `needle` in the current chunk.
1247
+ auto idx = haystack_chunk.find(needle.front());
1248
+ if (idx == absl::string_view::npos) {
1249
+ // No potential match in this chunk, advance past it.
1250
+ Cord::Advance(&it, haystack_chunk.size());
1251
+ continue;
1252
+ }
1253
+ // We found the start of a potential match in the chunk. Advance the
1254
+ // iterator and haystack chunk to the match the position.
1255
+ Cord::Advance(&it, idx);
1256
+ // Check if there is enough haystack remaining to actually have a match.
1257
+ if (it.chunk_iterator_.bytes_remaining_ < needle.size()) {
1258
+ break;
1259
+ }
1260
+ // Check if this is `needle`.
1261
+ if (IsSubstringInCordAt(it, needle)) {
1262
+ return it;
1263
+ }
1264
+ // No match, increment the iterator for the next attempt.
1265
+ Cord::Advance(&it, 1);
1266
+ }
1267
+ // If we got here, we did not find `needle`.
1268
+ return char_end();
1269
+ }
1270
+
1271
+ absl::Cord::CharIterator absl::Cord::Find(absl::string_view needle) const {
1272
+ if (needle.empty()) {
1273
+ return char_begin();
1274
+ }
1275
+ if (needle.size() > size()) {
1276
+ return char_end();
1277
+ }
1278
+ if (needle.size() == size()) {
1279
+ return *this == needle ? char_begin() : char_end();
1280
+ }
1281
+ return FindImpl(char_begin(), needle);
1282
+ }
1283
+
1284
+ namespace {
1285
+
1286
+ // Tests whether the sequence of chunks beginning at `haystack` starts with the
1287
+ // sequence of chunks beginning at `needle_begin` and extending to `needle_end`.
1288
+ //
1289
+ // REQUIRES: remaining `absl::Cord` starting at `position` is greater than or
1290
+ // equal to `needle_end - needle_begin` and `advance`.
1291
+ bool IsSubcordInCordAt(absl::Cord::CharIterator haystack,
1292
+ absl::Cord::CharIterator needle_begin,
1293
+ absl::Cord::CharIterator needle_end) {
1294
+ while (needle_begin != needle_end) {
1295
+ auto haystack_chunk = absl::Cord::ChunkRemaining(haystack);
1296
+ assert(!haystack_chunk.empty());
1297
+ auto needle_chunk = absl::Cord::ChunkRemaining(needle_begin);
1298
+ auto min_length = std::min(haystack_chunk.size(), needle_chunk.size());
1299
+ if (haystack_chunk.substr(0, min_length) !=
1300
+ needle_chunk.substr(0, min_length)) {
1301
+ return false;
1302
+ }
1303
+ absl::Cord::Advance(&haystack, min_length);
1304
+ absl::Cord::Advance(&needle_begin, min_length);
1305
+ }
1306
+ return true;
1307
+ }
1308
+
1309
+ // Tests whether the sequence of chunks beginning at `position` starts with the
1310
+ // cord `needle`.
1311
+ //
1312
+ // REQUIRES: remaining `absl::Cord` starting at `position` is greater than or
1313
+ // equal to `needle.size()`.
1314
+ bool IsSubcordInCordAt(absl::Cord::CharIterator position,
1315
+ const absl::Cord& needle) {
1316
+ return IsSubcordInCordAt(position, needle.char_begin(), needle.char_end());
1317
+ }
1318
+
1319
+ } // namespace
1320
+
1321
+ absl::Cord::CharIterator absl::Cord::Find(const absl::Cord& needle) const {
1322
+ if (needle.empty()) {
1323
+ return char_begin();
1324
+ }
1325
+ const auto needle_size = needle.size();
1326
+ if (needle_size > size()) {
1327
+ return char_end();
1328
+ }
1329
+ if (needle_size == size()) {
1330
+ return *this == needle ? char_begin() : char_end();
1331
+ }
1332
+ const auto needle_chunk = Cord::ChunkRemaining(needle.char_begin());
1333
+ auto haystack_it = char_begin();
1334
+ while (true) {
1335
+ haystack_it = FindImpl(haystack_it, needle_chunk);
1336
+ if (haystack_it == char_end() ||
1337
+ haystack_it.chunk_iterator_.bytes_remaining_ < needle_size) {
1338
+ break;
1339
+ }
1340
+ // We found the first chunk of `needle` at `haystack_it` but not the entire
1341
+ // subcord. Advance past the first chunk and check for the remainder.
1342
+ auto haystack_advanced_it = haystack_it;
1343
+ auto needle_it = needle.char_begin();
1344
+ Cord::Advance(&haystack_advanced_it, needle_chunk.size());
1345
+ Cord::Advance(&needle_it, needle_chunk.size());
1346
+ if (IsSubcordInCordAt(haystack_advanced_it, needle_it, needle.char_end())) {
1347
+ return haystack_it;
1348
+ }
1349
+ Cord::Advance(&haystack_it, 1);
1350
+ if (haystack_it.chunk_iterator_.bytes_remaining_ < needle_size) {
1351
+ break;
1352
+ }
1353
+ if (haystack_it.chunk_iterator_.bytes_remaining_ == needle_size) {
1354
+ // Special case, if there is exactly `needle_size` bytes remaining, the
1355
+ // subcord is either at `haystack_it` or not at all.
1356
+ if (IsSubcordInCordAt(haystack_it, needle)) {
1357
+ return haystack_it;
1358
+ }
1359
+ break;
1360
+ }
1361
+ }
1362
+ return char_end();
1363
+ }
1364
+
1365
+ bool Cord::Contains(absl::string_view rhs) const {
1366
+ return rhs.empty() || Find(rhs) != char_end();
1367
+ }
1368
+
1369
+ bool Cord::Contains(const absl::Cord& rhs) const {
1370
+ return rhs.empty() || Find(rhs) != char_end();
1371
+ }
1372
+
1373
+ absl::string_view Cord::FlattenSlowPath() {
1374
+ assert(contents_.is_tree());
1375
+ size_t total_size = size();
1376
+ CordRep* new_rep;
1377
+ char* new_buffer;
1378
+
1379
+ // Try to put the contents into a new flat rep. If they won't fit in the
1380
+ // biggest possible flat node, use an external rep instead.
1381
+ if (total_size <= kMaxFlatLength) {
1382
+ new_rep = CordRepFlat::New(total_size);
1383
+ new_rep->length = total_size;
1384
+ new_buffer = new_rep->flat()->Data();
1385
+ CopyToArraySlowPath(new_buffer);
1386
+ } else {
1387
+ new_buffer = std::allocator<char>().allocate(total_size);
1388
+ CopyToArraySlowPath(new_buffer);
1389
+ new_rep = absl::cord_internal::NewExternalRep(
1390
+ absl::string_view(new_buffer, total_size), [](absl::string_view s) {
1391
+ std::allocator<char>().deallocate(const_cast<char*>(s.data()),
1392
+ s.size());
1393
+ });
1394
+ }
1395
+ CordzUpdateScope scope(contents_.cordz_info(), CordzUpdateTracker::kFlatten);
1396
+ CordRep::Unref(contents_.as_tree());
1397
+ contents_.SetTree(new_rep, scope);
1398
+ return absl::string_view(new_buffer, total_size);
1399
+ }
1400
+
1401
+ /* static */ bool Cord::GetFlatAux(CordRep* absl_nonnull rep,
1402
+ absl::string_view* absl_nonnull fragment) {
1403
+ assert(rep != nullptr);
1404
+ if (rep->length == 0) {
1405
+ *fragment = absl::string_view();
1406
+ return true;
1407
+ }
1408
+ rep = cord_internal::SkipCrcNode(rep);
1409
+ if (rep->IsFlat()) {
1410
+ *fragment = absl::string_view(rep->flat()->Data(), rep->length);
1411
+ return true;
1412
+ } else if (rep->IsExternal()) {
1413
+ *fragment = absl::string_view(rep->external()->base, rep->length);
1414
+ return true;
1415
+ } else if (rep->IsBtree()) {
1416
+ return rep->btree()->IsFlat(fragment);
1417
+ } else if (rep->IsSubstring()) {
1418
+ CordRep* child = rep->substring()->child;
1419
+ if (child->IsFlat()) {
1420
+ *fragment = absl::string_view(
1421
+ child->flat()->Data() + rep->substring()->start, rep->length);
1422
+ return true;
1423
+ } else if (child->IsExternal()) {
1424
+ *fragment = absl::string_view(
1425
+ child->external()->base + rep->substring()->start, rep->length);
1426
+ return true;
1427
+ } else if (child->IsBtree()) {
1428
+ return child->btree()->IsFlat(rep->substring()->start, rep->length,
1429
+ fragment);
1430
+ }
1431
+ }
1432
+ return false;
1433
+ }
1434
+
1435
+ /* static */ void Cord::ForEachChunkAux(
1436
+ absl::cord_internal::CordRep* absl_nonnull rep,
1437
+ absl::FunctionRef<void(absl::string_view)> callback) {
1438
+ assert(rep != nullptr);
1439
+ if (rep->length == 0) return;
1440
+ rep = cord_internal::SkipCrcNode(rep);
1441
+
1442
+ if (rep->IsBtree()) {
1443
+ ChunkIterator it(rep), end;
1444
+ while (it != end) {
1445
+ callback(*it);
1446
+ ++it;
1447
+ }
1448
+ return;
1449
+ }
1450
+
1451
+ // This is a leaf node, so invoke our callback.
1452
+ absl::cord_internal::CordRep* current_node = cord_internal::SkipCrcNode(rep);
1453
+ absl::string_view chunk;
1454
+ bool success = GetFlatAux(current_node, &chunk);
1455
+ assert(success);
1456
+ if (success) {
1457
+ callback(chunk);
1458
+ }
1459
+ }
1460
+
1461
+ static void DumpNode(CordRep* absl_nonnull nonnull_rep, bool include_data,
1462
+ std::ostream* absl_nonnull os, int indent) {
1463
+ CordRep* rep = nonnull_rep;
1464
+ const int kIndentStep = 1;
1465
+ for (;;) {
1466
+ *os << std::setw(3) << (rep == nullptr ? 0 : rep->refcount.Get());
1467
+ *os << " " << std::setw(7) << (rep == nullptr ? 0 : rep->length);
1468
+ *os << " [";
1469
+ if (include_data) *os << static_cast<void*>(rep);
1470
+ *os << "]";
1471
+ *os << " " << std::setw(indent) << "";
1472
+ bool leaf = false;
1473
+ if (rep == nullptr) {
1474
+ *os << "NULL\n";
1475
+ leaf = true;
1476
+ } else if (rep->IsCrc()) {
1477
+ *os << "CRC crc=" << rep->crc()->crc_cord_state.Checksum() << "\n";
1478
+ indent += kIndentStep;
1479
+ rep = rep->crc()->child;
1480
+ } else if (rep->IsSubstring()) {
1481
+ *os << "SUBSTRING @ " << rep->substring()->start << "\n";
1482
+ indent += kIndentStep;
1483
+ rep = rep->substring()->child;
1484
+ } else { // Leaf or ring
1485
+ leaf = true;
1486
+ if (rep->IsExternal()) {
1487
+ *os << "EXTERNAL [";
1488
+ if (include_data)
1489
+ *os << absl::CEscape(
1490
+ absl::string_view(rep->external()->base, rep->length));
1491
+ *os << "]\n";
1492
+ } else if (rep->IsFlat()) {
1493
+ *os << "FLAT cap=" << rep->flat()->Capacity() << " [";
1494
+ if (include_data)
1495
+ *os << absl::CEscape(
1496
+ absl::string_view(rep->flat()->Data(), rep->length));
1497
+ *os << "]\n";
1498
+ } else {
1499
+ CordRepBtree::Dump(rep, /*label=*/"", include_data, *os);
1500
+ }
1501
+ }
1502
+ if (leaf) {
1503
+ break;
1504
+ }
1505
+ }
1506
+ }
1507
+
1508
+ static std::string ReportError(CordRep* absl_nonnull root,
1509
+ CordRep* absl_nonnull node) {
1510
+ std::ostringstream buf;
1511
+ buf << "Error at node " << node << " in:";
1512
+ DumpNode(root, true, &buf);
1513
+ return buf.str();
1514
+ }
1515
+
1516
+ static bool VerifyNode(CordRep* absl_nonnull root,
1517
+ CordRep* absl_nonnull start_node) {
1518
+ absl::InlinedVector<CordRep* absl_nonnull, 2> worklist;
1519
+ worklist.push_back(start_node);
1520
+ do {
1521
+ CordRep* node = worklist.back();
1522
+ worklist.pop_back();
1523
+
1524
+ ABSL_INTERNAL_CHECK(node != nullptr, ReportError(root, node));
1525
+ if (node != root) {
1526
+ ABSL_INTERNAL_CHECK(node->length != 0, ReportError(root, node));
1527
+ ABSL_INTERNAL_CHECK(!node->IsCrc(), ReportError(root, node));
1528
+ }
1529
+
1530
+ if (node->IsFlat()) {
1531
+ ABSL_INTERNAL_CHECK(node->length <= node->flat()->Capacity(),
1532
+ ReportError(root, node));
1533
+ } else if (node->IsExternal()) {
1534
+ ABSL_INTERNAL_CHECK(node->external()->base != nullptr,
1535
+ ReportError(root, node));
1536
+ } else if (node->IsSubstring()) {
1537
+ ABSL_INTERNAL_CHECK(
1538
+ node->substring()->start < node->substring()->child->length,
1539
+ ReportError(root, node));
1540
+ ABSL_INTERNAL_CHECK(node->substring()->start + node->length <=
1541
+ node->substring()->child->length,
1542
+ ReportError(root, node));
1543
+ } else if (node->IsCrc()) {
1544
+ ABSL_INTERNAL_CHECK(
1545
+ node->crc()->child != nullptr || node->crc()->length == 0,
1546
+ ReportError(root, node));
1547
+ if (node->crc()->child != nullptr) {
1548
+ ABSL_INTERNAL_CHECK(node->crc()->length == node->crc()->child->length,
1549
+ ReportError(root, node));
1550
+ worklist.push_back(node->crc()->child);
1551
+ }
1552
+ }
1553
+ } while (!worklist.empty());
1554
+ return true;
1555
+ }
1556
+
1557
+ std::ostream& operator<<(std::ostream& out, const Cord& cord) {
1558
+ for (absl::string_view chunk : cord.Chunks()) {
1559
+ out.write(chunk.data(), static_cast<std::streamsize>(chunk.size()));
1560
+ }
1561
+ return out;
1562
+ }
1563
+
1564
+ namespace strings_internal {
1565
+ size_t CordTestAccess::FlatOverhead() { return cord_internal::kFlatOverhead; }
1566
+ size_t CordTestAccess::MaxFlatLength() { return cord_internal::kMaxFlatLength; }
1567
+ size_t CordTestAccess::FlatTagToLength(uint8_t tag) {
1568
+ return cord_internal::TagToLength(tag);
1569
+ }
1570
+ uint8_t CordTestAccess::LengthToTag(size_t s) {
1571
+ ABSL_INTERNAL_CHECK(s <= kMaxFlatLength, absl::StrCat("Invalid length ", s));
1572
+ return cord_internal::AllocatedSizeToTag(s + cord_internal::kFlatOverhead);
1573
+ }
1574
+ size_t CordTestAccess::SizeofCordRepExternal() {
1575
+ return sizeof(CordRepExternal);
1576
+ }
1577
+ size_t CordTestAccess::SizeofCordRepSubstring() {
1578
+ return sizeof(CordRepSubstring);
1579
+ }
1580
+ } // namespace strings_internal
1581
+ ABSL_NAMESPACE_END
1582
+ } // namespace absl