re2 1.22.2 → 1.23.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 (495) hide show
  1. package/README.md +60 -4
  2. package/binding.gyp +5 -1
  3. package/lib/addon.cc +4 -0
  4. package/lib/new.cc +1 -246
  5. package/lib/pattern.cc +252 -0
  6. package/lib/pattern.h +10 -0
  7. package/lib/set.cc +777 -0
  8. package/lib/wrapped_re2_set.h +42 -0
  9. package/package.json +21 -9
  10. package/re2.d.ts +46 -9
  11. package/vendor/abseil-cpp/CMake/AbseilDll.cmake +14 -24
  12. package/vendor/abseil-cpp/CMake/AbseilHelpers.cmake +3 -3
  13. package/vendor/abseil-cpp/CMake/README.md +2 -2
  14. package/vendor/abseil-cpp/CMakeLists.txt +3 -3
  15. package/vendor/abseil-cpp/MODULE.bazel +6 -9
  16. package/vendor/abseil-cpp/README.md +6 -8
  17. package/vendor/abseil-cpp/absl/abseil.podspec.gen.py +6 -4
  18. package/vendor/abseil-cpp/absl/algorithm/BUILD.bazel +3 -0
  19. package/vendor/abseil-cpp/absl/algorithm/CMakeLists.txt +1 -0
  20. package/vendor/abseil-cpp/absl/algorithm/container.h +2 -19
  21. package/vendor/abseil-cpp/absl/algorithm/container_test.cc +4 -11
  22. package/vendor/abseil-cpp/absl/base/BUILD.bazel +60 -45
  23. package/vendor/abseil-cpp/absl/base/CMakeLists.txt +57 -38
  24. package/vendor/abseil-cpp/absl/base/attributes.h +76 -7
  25. package/vendor/abseil-cpp/absl/base/attributes_test.cc +43 -0
  26. package/vendor/abseil-cpp/absl/base/call_once.h +11 -12
  27. package/vendor/abseil-cpp/absl/base/config.h +22 -129
  28. package/vendor/abseil-cpp/absl/base/exception_safety_testing_test.cc +0 -4
  29. package/vendor/abseil-cpp/absl/base/{internal/fast_type_id.h → fast_type_id.h} +11 -16
  30. package/vendor/abseil-cpp/absl/base/{internal/fast_type_id_test.cc → fast_type_id_test.cc} +34 -30
  31. package/vendor/abseil-cpp/absl/base/internal/cycleclock.cc +0 -5
  32. package/vendor/abseil-cpp/absl/base/internal/cycleclock_config.h +7 -7
  33. package/vendor/abseil-cpp/absl/base/internal/endian.h +34 -38
  34. package/vendor/abseil-cpp/absl/base/internal/iterator_traits.h +71 -0
  35. package/vendor/abseil-cpp/absl/base/internal/iterator_traits_test.cc +85 -0
  36. package/vendor/abseil-cpp/absl/base/internal/iterator_traits_test_helper.h +97 -0
  37. package/vendor/abseil-cpp/absl/base/internal/low_level_alloc.cc +39 -9
  38. package/vendor/abseil-cpp/absl/base/internal/low_level_alloc.h +6 -0
  39. package/vendor/abseil-cpp/absl/base/internal/poison.cc +7 -6
  40. package/vendor/abseil-cpp/absl/base/internal/spinlock.cc +15 -28
  41. package/vendor/abseil-cpp/absl/base/internal/spinlock.h +65 -35
  42. package/vendor/abseil-cpp/absl/base/internal/spinlock_benchmark.cc +2 -2
  43. package/vendor/abseil-cpp/absl/base/internal/sysinfo_test.cc +2 -2
  44. package/vendor/abseil-cpp/absl/base/internal/thread_identity_benchmark.cc +1 -1
  45. package/vendor/abseil-cpp/absl/base/internal/thread_identity_test.cc +4 -4
  46. package/vendor/abseil-cpp/absl/base/internal/unaligned_access.h +6 -6
  47. package/vendor/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +4 -0
  48. package/vendor/abseil-cpp/absl/base/internal/unscaledcycleclock.h +8 -3
  49. package/vendor/abseil-cpp/absl/base/no_destructor.h +11 -32
  50. package/vendor/abseil-cpp/absl/base/no_destructor_test.cc +0 -4
  51. package/vendor/abseil-cpp/absl/base/nullability.h +83 -72
  52. package/vendor/abseil-cpp/absl/base/nullability_test.cc +25 -64
  53. package/vendor/abseil-cpp/absl/base/options.h +3 -80
  54. package/vendor/abseil-cpp/absl/base/policy_checks.h +7 -7
  55. package/vendor/abseil-cpp/absl/base/raw_logging_test.cc +15 -0
  56. package/vendor/abseil-cpp/absl/base/spinlock_test_common.cc +50 -30
  57. package/vendor/abseil-cpp/absl/cleanup/BUILD.bazel +2 -1
  58. package/vendor/abseil-cpp/absl/cleanup/CMakeLists.txt +0 -1
  59. package/vendor/abseil-cpp/absl/cleanup/cleanup.h +1 -3
  60. package/vendor/abseil-cpp/absl/cleanup/cleanup_test.cc +0 -2
  61. package/vendor/abseil-cpp/absl/cleanup/internal/cleanup.h +3 -4
  62. package/vendor/abseil-cpp/absl/container/BUILD.bazel +74 -1
  63. package/vendor/abseil-cpp/absl/container/CMakeLists.txt +73 -0
  64. package/vendor/abseil-cpp/absl/container/btree_benchmark.cc +51 -9
  65. package/vendor/abseil-cpp/absl/container/btree_map.h +8 -6
  66. package/vendor/abseil-cpp/absl/container/btree_set.h +8 -6
  67. package/vendor/abseil-cpp/absl/container/btree_test.cc +89 -4
  68. package/vendor/abseil-cpp/absl/container/fixed_array.h +7 -15
  69. package/vendor/abseil-cpp/absl/container/fixed_array_test.cc +17 -0
  70. package/vendor/abseil-cpp/absl/container/flat_hash_map.h +20 -15
  71. package/vendor/abseil-cpp/absl/container/flat_hash_map_test.cc +8 -14
  72. package/vendor/abseil-cpp/absl/container/flat_hash_set.h +19 -14
  73. package/vendor/abseil-cpp/absl/container/flat_hash_set_test.cc +46 -0
  74. package/vendor/abseil-cpp/absl/container/inlined_vector.h +7 -6
  75. package/vendor/abseil-cpp/absl/container/inlined_vector_test.cc +28 -0
  76. package/vendor/abseil-cpp/absl/container/internal/btree.h +132 -29
  77. package/vendor/abseil-cpp/absl/container/internal/btree_container.h +175 -71
  78. package/vendor/abseil-cpp/absl/container/internal/common.h +43 -0
  79. package/vendor/abseil-cpp/absl/container/internal/common_policy_traits.h +1 -2
  80. package/vendor/abseil-cpp/absl/container/internal/compressed_tuple.h +28 -24
  81. package/vendor/abseil-cpp/absl/container/internal/compressed_tuple_test.cc +4 -17
  82. package/vendor/abseil-cpp/absl/container/internal/container_memory.h +80 -17
  83. package/vendor/abseil-cpp/absl/container/internal/container_memory_test.cc +32 -2
  84. package/vendor/abseil-cpp/absl/container/internal/hash_function_defaults.h +13 -8
  85. package/vendor/abseil-cpp/absl/container/internal/hash_function_defaults_test.cc +1 -52
  86. package/vendor/abseil-cpp/absl/container/internal/hash_generator_testing.cc +9 -31
  87. package/vendor/abseil-cpp/absl/container/internal/hash_generator_testing.h +23 -32
  88. package/vendor/abseil-cpp/absl/container/internal/hash_policy_testing.h +5 -1
  89. package/vendor/abseil-cpp/absl/container/internal/hash_policy_traits.h +11 -23
  90. package/vendor/abseil-cpp/absl/container/internal/hash_policy_traits_test.cc +14 -9
  91. package/vendor/abseil-cpp/absl/container/internal/hashtable_control_bytes.h +516 -0
  92. package/vendor/abseil-cpp/absl/container/internal/hashtable_control_bytes_test.cc +259 -0
  93. package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +23 -6
  94. package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler.h +32 -13
  95. package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler_test.cc +8 -8
  96. package/vendor/abseil-cpp/absl/container/internal/inlined_vector.h +2 -7
  97. package/vendor/abseil-cpp/absl/container/internal/layout.h +26 -42
  98. package/vendor/abseil-cpp/absl/container/internal/raw_hash_map.h +199 -68
  99. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set.cc +1506 -213
  100. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set.h +1095 -1658
  101. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_allocator_test.cc +3 -2
  102. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_benchmark.cc +31 -29
  103. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_probe_benchmark.cc +51 -20
  104. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl.h +79 -0
  105. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl_test.cc +66 -0
  106. package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_test.cc +707 -363
  107. package/vendor/abseil-cpp/absl/container/node_hash_map.h +20 -15
  108. package/vendor/abseil-cpp/absl/container/node_hash_map_test.cc +0 -3
  109. package/vendor/abseil-cpp/absl/container/node_hash_set.h +18 -13
  110. package/vendor/abseil-cpp/absl/container/sample_element_size_test.cc +3 -8
  111. package/vendor/abseil-cpp/absl/copts/AbseilConfigureCopts.cmake +1 -1
  112. package/vendor/abseil-cpp/absl/copts/GENERATED_AbseilCopts.cmake +9 -20
  113. package/vendor/abseil-cpp/absl/copts/GENERATED_copts.bzl +9 -20
  114. package/vendor/abseil-cpp/absl/copts/copts.py +24 -15
  115. package/vendor/abseil-cpp/absl/crc/BUILD.bazel +3 -0
  116. package/vendor/abseil-cpp/absl/crc/crc32c.cc +0 -4
  117. package/vendor/abseil-cpp/absl/crc/crc32c.h +7 -5
  118. package/vendor/abseil-cpp/absl/crc/crc32c_benchmark.cc +17 -4
  119. package/vendor/abseil-cpp/absl/crc/crc32c_test.cc +30 -0
  120. package/vendor/abseil-cpp/absl/crc/internal/cpu_detect.cc +17 -0
  121. package/vendor/abseil-cpp/absl/crc/internal/cpu_detect.h +7 -1
  122. package/vendor/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +0 -22
  123. package/vendor/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc +5 -0
  124. package/vendor/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +136 -165
  125. package/vendor/abseil-cpp/absl/crc/internal/gen_crc32c_consts.py +90 -0
  126. package/vendor/abseil-cpp/absl/debugging/BUILD.bazel +7 -0
  127. package/vendor/abseil-cpp/absl/debugging/CMakeLists.txt +4 -0
  128. package/vendor/abseil-cpp/absl/debugging/internal/addresses.h +57 -0
  129. package/vendor/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc +1 -1
  130. package/vendor/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h +5 -5
  131. package/vendor/abseil-cpp/absl/debugging/internal/demangle.cc +8 -35
  132. package/vendor/abseil-cpp/absl/debugging/internal/demangle_rust.cc +16 -16
  133. package/vendor/abseil-cpp/absl/debugging/internal/demangle_test.cc +11 -10
  134. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +40 -37
  135. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +16 -7
  136. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_config.h +6 -5
  137. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +14 -5
  138. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +10 -4
  139. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +27 -16
  140. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +13 -4
  141. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +4 -3
  142. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +15 -28
  143. package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +25 -14
  144. package/vendor/abseil-cpp/absl/debugging/internal/vdso_support.cc +4 -0
  145. package/vendor/abseil-cpp/absl/debugging/stacktrace.cc +161 -27
  146. package/vendor/abseil-cpp/absl/debugging/stacktrace.h +73 -5
  147. package/vendor/abseil-cpp/absl/debugging/stacktrace_test.cc +435 -1
  148. package/vendor/abseil-cpp/absl/debugging/symbolize_elf.inc +55 -63
  149. package/vendor/abseil-cpp/absl/debugging/symbolize_emscripten.inc +3 -2
  150. package/vendor/abseil-cpp/absl/debugging/symbolize_win32.inc +25 -6
  151. package/vendor/abseil-cpp/absl/flags/BUILD.bazel +6 -0
  152. package/vendor/abseil-cpp/absl/flags/CMakeLists.txt +3 -0
  153. package/vendor/abseil-cpp/absl/flags/commandlineflag.h +2 -2
  154. package/vendor/abseil-cpp/absl/flags/flag.h +4 -3
  155. package/vendor/abseil-cpp/absl/flags/internal/commandlineflag.h +2 -2
  156. package/vendor/abseil-cpp/absl/flags/internal/flag.cc +14 -13
  157. package/vendor/abseil-cpp/absl/flags/internal/flag.h +34 -34
  158. package/vendor/abseil-cpp/absl/flags/internal/program_name.cc +2 -2
  159. package/vendor/abseil-cpp/absl/flags/internal/registry.h +4 -3
  160. package/vendor/abseil-cpp/absl/flags/internal/usage.cc +2 -2
  161. package/vendor/abseil-cpp/absl/flags/parse.cc +10 -6
  162. package/vendor/abseil-cpp/absl/flags/reflection.cc +9 -7
  163. package/vendor/abseil-cpp/absl/flags/usage.cc +2 -2
  164. package/vendor/abseil-cpp/absl/flags/usage_config.cc +2 -2
  165. package/vendor/abseil-cpp/absl/functional/BUILD.bazel +7 -6
  166. package/vendor/abseil-cpp/absl/functional/CMakeLists.txt +2 -4
  167. package/vendor/abseil-cpp/absl/functional/any_invocable.h +15 -15
  168. package/vendor/abseil-cpp/absl/functional/any_invocable_test.cc +10 -42
  169. package/vendor/abseil-cpp/absl/functional/function_ref.h +2 -9
  170. package/vendor/abseil-cpp/absl/functional/function_ref_test.cc +10 -0
  171. package/vendor/abseil-cpp/absl/functional/function_type_benchmark.cc +1 -1
  172. package/vendor/abseil-cpp/absl/functional/internal/any_invocable.h +112 -227
  173. package/vendor/abseil-cpp/absl/functional/internal/front_binder.h +10 -12
  174. package/vendor/abseil-cpp/absl/functional/internal/function_ref.h +2 -5
  175. package/vendor/abseil-cpp/absl/functional/overload.h +0 -20
  176. package/vendor/abseil-cpp/absl/functional/overload_test.cc +1 -7
  177. package/vendor/abseil-cpp/absl/hash/BUILD.bazel +16 -9
  178. package/vendor/abseil-cpp/absl/hash/CMakeLists.txt +6 -9
  179. package/vendor/abseil-cpp/absl/hash/hash.h +18 -0
  180. package/vendor/abseil-cpp/absl/hash/hash_benchmark.cc +3 -0
  181. package/vendor/abseil-cpp/absl/hash/hash_instantiated_test.cc +1 -1
  182. package/vendor/abseil-cpp/absl/hash/hash_test.cc +131 -30
  183. package/vendor/abseil-cpp/absl/hash/hash_testing.h +20 -20
  184. package/vendor/abseil-cpp/absl/hash/internal/hash.cc +129 -17
  185. package/vendor/abseil-cpp/absl/hash/internal/hash.h +326 -362
  186. package/vendor/abseil-cpp/absl/hash/internal/low_level_hash_test.cc +54 -151
  187. package/vendor/abseil-cpp/absl/hash/internal/spy_hash_state.h +14 -2
  188. package/vendor/abseil-cpp/absl/{strings/cord_buffer.cc → hash/internal/weakly_mixed_integer.h} +14 -6
  189. package/vendor/abseil-cpp/absl/log/BUILD.bazel +4 -0
  190. package/vendor/abseil-cpp/absl/log/CMakeLists.txt +7 -0
  191. package/vendor/abseil-cpp/absl/log/check.h +2 -1
  192. package/vendor/abseil-cpp/absl/log/check_test_impl.inc +308 -14
  193. package/vendor/abseil-cpp/absl/log/die_if_null.h +2 -2
  194. package/vendor/abseil-cpp/absl/log/flags_test.cc +7 -0
  195. package/vendor/abseil-cpp/absl/log/globals.h +4 -5
  196. package/vendor/abseil-cpp/absl/log/internal/BUILD.bazel +13 -9
  197. package/vendor/abseil-cpp/absl/log/internal/append_truncated.h +28 -0
  198. package/vendor/abseil-cpp/absl/log/internal/check_op.cc +24 -22
  199. package/vendor/abseil-cpp/absl/log/internal/check_op.h +149 -94
  200. package/vendor/abseil-cpp/absl/log/internal/conditions.cc +5 -3
  201. package/vendor/abseil-cpp/absl/log/internal/conditions.h +7 -2
  202. package/vendor/abseil-cpp/absl/log/internal/fnmatch_test.cc +1 -0
  203. package/vendor/abseil-cpp/absl/log/internal/log_message.cc +85 -43
  204. package/vendor/abseil-cpp/absl/log/internal/log_message.h +84 -59
  205. package/vendor/abseil-cpp/absl/log/internal/log_sink_set.cc +4 -4
  206. package/vendor/abseil-cpp/absl/log/internal/nullstream.h +1 -0
  207. package/vendor/abseil-cpp/absl/log/internal/proto.cc +3 -2
  208. package/vendor/abseil-cpp/absl/log/internal/proto.h +3 -3
  209. package/vendor/abseil-cpp/absl/log/internal/strip.h +4 -12
  210. package/vendor/abseil-cpp/absl/log/internal/structured.h +3 -7
  211. package/vendor/abseil-cpp/absl/log/internal/vlog_config.cc +9 -9
  212. package/vendor/abseil-cpp/absl/log/internal/vlog_config.h +8 -6
  213. package/vendor/abseil-cpp/absl/log/internal/voidify.h +10 -4
  214. package/vendor/abseil-cpp/absl/log/log.h +48 -35
  215. package/vendor/abseil-cpp/absl/log/log_basic_test_impl.inc +45 -0
  216. package/vendor/abseil-cpp/absl/log/log_entry.cc +241 -19
  217. package/vendor/abseil-cpp/absl/log/log_entry.h +2 -0
  218. package/vendor/abseil-cpp/absl/log/log_format_test.cc +412 -6
  219. package/vendor/abseil-cpp/absl/log/log_modifier_methods_test.cc +20 -0
  220. package/vendor/abseil-cpp/absl/log/log_sink_registry.h +2 -2
  221. package/vendor/abseil-cpp/absl/log/log_streamer_test.cc +15 -2
  222. package/vendor/abseil-cpp/absl/log/scoped_mock_log.h +7 -1
  223. package/vendor/abseil-cpp/absl/log/structured_test.cc +1 -0
  224. package/vendor/abseil-cpp/absl/memory/BUILD.bazel +2 -0
  225. package/vendor/abseil-cpp/absl/meta/BUILD.bazel +2 -0
  226. package/vendor/abseil-cpp/absl/meta/type_traits.h +46 -175
  227. package/vendor/abseil-cpp/absl/meta/type_traits_test.cc +1 -478
  228. package/vendor/abseil-cpp/absl/numeric/BUILD.bazel +7 -3
  229. package/vendor/abseil-cpp/absl/numeric/CMakeLists.txt +2 -0
  230. package/vendor/abseil-cpp/absl/numeric/bits.h +68 -2
  231. package/vendor/abseil-cpp/absl/numeric/bits_benchmark.cc +1 -1
  232. package/vendor/abseil-cpp/absl/numeric/bits_test.cc +83 -0
  233. package/vendor/abseil-cpp/absl/numeric/int128.cc +0 -52
  234. package/vendor/abseil-cpp/absl/numeric/int128_benchmark.cc +14 -15
  235. package/vendor/abseil-cpp/absl/numeric/int128_test.cc +13 -8
  236. package/vendor/abseil-cpp/absl/numeric/internal/bits.h +39 -7
  237. package/vendor/abseil-cpp/absl/profiling/BUILD.bazel +47 -0
  238. package/vendor/abseil-cpp/absl/profiling/CMakeLists.txt +38 -0
  239. package/vendor/abseil-cpp/absl/profiling/hashtable.cc +124 -0
  240. package/vendor/abseil-cpp/absl/profiling/hashtable.h +40 -0
  241. package/vendor/abseil-cpp/absl/profiling/internal/exponential_biased.cc +1 -1
  242. package/vendor/abseil-cpp/absl/profiling/internal/profile_builder.cc +462 -0
  243. package/vendor/abseil-cpp/absl/profiling/internal/profile_builder.h +138 -0
  244. package/vendor/abseil-cpp/absl/profiling/internal/sample_recorder.h +9 -9
  245. package/vendor/abseil-cpp/absl/profiling/internal/sample_recorder_test.cc +7 -3
  246. package/vendor/abseil-cpp/absl/random/BUILD.bazel +6 -4
  247. package/vendor/abseil-cpp/absl/random/CMakeLists.txt +20 -19
  248. package/vendor/abseil-cpp/absl/random/benchmarks.cc +16 -23
  249. package/vendor/abseil-cpp/absl/random/bit_gen_ref.h +10 -11
  250. package/vendor/abseil-cpp/absl/random/bit_gen_ref_test.cc +7 -2
  251. package/vendor/abseil-cpp/absl/random/distributions.h +6 -8
  252. package/vendor/abseil-cpp/absl/random/gaussian_distribution.h +1 -1
  253. package/vendor/abseil-cpp/absl/random/internal/BUILD.bazel +19 -20
  254. package/vendor/abseil-cpp/absl/random/internal/distribution_caller.h +5 -6
  255. package/vendor/abseil-cpp/absl/random/internal/{pool_urbg.cc → entropy_pool.cc} +24 -92
  256. package/vendor/abseil-cpp/absl/{base/inline_variable_test_b.cc → random/internal/entropy_pool.h} +14 -6
  257. package/vendor/abseil-cpp/absl/random/internal/entropy_pool_test.cc +119 -0
  258. package/vendor/abseil-cpp/absl/random/internal/mock_helpers.h +6 -7
  259. package/vendor/abseil-cpp/absl/random/internal/nonsecure_base.h +5 -6
  260. package/vendor/abseil-cpp/absl/random/internal/nonsecure_base_test.cc +39 -0
  261. package/vendor/abseil-cpp/absl/random/internal/randen_benchmarks.cc +8 -6
  262. package/vendor/abseil-cpp/absl/random/internal/randen_detect.cc +1 -1
  263. package/vendor/abseil-cpp/absl/random/internal/seed_material.cc +20 -12
  264. package/vendor/abseil-cpp/absl/random/internal/seed_material.h +5 -5
  265. package/vendor/abseil-cpp/absl/random/internal/seed_material_test.cc +3 -0
  266. package/vendor/abseil-cpp/absl/random/mock_distributions_test.cc +5 -4
  267. package/vendor/abseil-cpp/absl/random/mocking_bit_gen.h +8 -10
  268. package/vendor/abseil-cpp/absl/random/random.h +88 -53
  269. package/vendor/abseil-cpp/absl/random/seed_sequences.cc +6 -2
  270. package/vendor/abseil-cpp/absl/status/BUILD.bazel +26 -0
  271. package/vendor/abseil-cpp/absl/status/internal/status_internal.cc +3 -4
  272. package/vendor/abseil-cpp/absl/status/internal/status_internal.h +3 -4
  273. package/vendor/abseil-cpp/absl/status/internal/status_matchers.cc +4 -3
  274. package/vendor/abseil-cpp/absl/status/internal/statusor_internal.h +194 -32
  275. package/vendor/abseil-cpp/absl/status/status.cc +4 -8
  276. package/vendor/abseil-cpp/absl/status/status.h +8 -8
  277. package/vendor/abseil-cpp/absl/{base/inline_variable_test_a.cc → status/status_benchmark.cc} +20 -10
  278. package/vendor/abseil-cpp/absl/status/status_matchers_test.cc +65 -0
  279. package/vendor/abseil-cpp/absl/status/status_payload_printer.h +2 -2
  280. package/vendor/abseil-cpp/absl/status/statusor.cc +2 -2
  281. package/vendor/abseil-cpp/absl/status/statusor.h +49 -102
  282. package/vendor/abseil-cpp/absl/status/statusor_benchmark.cc +480 -0
  283. package/vendor/abseil-cpp/absl/status/statusor_test.cc +323 -1
  284. package/vendor/abseil-cpp/absl/strings/BUILD.bazel +70 -34
  285. package/vendor/abseil-cpp/absl/strings/CMakeLists.txt +6 -3
  286. package/vendor/abseil-cpp/absl/strings/ascii.cc +9 -9
  287. package/vendor/abseil-cpp/absl/strings/ascii.h +18 -18
  288. package/vendor/abseil-cpp/absl/strings/ascii_benchmark.cc +5 -8
  289. package/vendor/abseil-cpp/absl/strings/charconv.cc +21 -22
  290. package/vendor/abseil-cpp/absl/strings/charconv.h +5 -5
  291. package/vendor/abseil-cpp/absl/strings/charconv_benchmark.cc +1 -2
  292. package/vendor/abseil-cpp/absl/strings/charset_benchmark.cc +1 -1
  293. package/vendor/abseil-cpp/absl/strings/cord.cc +54 -58
  294. package/vendor/abseil-cpp/absl/strings/cord.h +94 -84
  295. package/vendor/abseil-cpp/absl/strings/cord_analysis.cc +11 -11
  296. package/vendor/abseil-cpp/absl/strings/cord_analysis.h +3 -3
  297. package/vendor/abseil-cpp/absl/strings/cord_test.cc +23 -0
  298. package/vendor/abseil-cpp/absl/strings/cordz_test_helpers.h +4 -5
  299. package/vendor/abseil-cpp/absl/strings/escaping.cc +130 -149
  300. package/vendor/abseil-cpp/absl/strings/escaping.h +9 -10
  301. package/vendor/abseil-cpp/absl/strings/escaping_benchmark.cc +2 -3
  302. package/vendor/abseil-cpp/absl/strings/escaping_test.cc +19 -9
  303. package/vendor/abseil-cpp/absl/strings/internal/charconv_bigint.cc +1 -1
  304. package/vendor/abseil-cpp/absl/strings/internal/charconv_bigint_test.cc +1 -1
  305. package/vendor/abseil-cpp/absl/strings/internal/cord_internal.h +6 -10
  306. package/vendor/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +0 -4
  307. package/vendor/abseil-cpp/absl/strings/internal/cordz_handle.cc +6 -6
  308. package/vendor/abseil-cpp/absl/strings/internal/cordz_info.cc +5 -9
  309. package/vendor/abseil-cpp/absl/strings/internal/cordz_info.h +2 -4
  310. package/vendor/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance_benchmark.cc +56 -0
  311. package/vendor/abseil-cpp/absl/strings/internal/memutil_benchmark.cc +2 -3
  312. package/vendor/abseil-cpp/absl/strings/internal/ostringstream_benchmark.cc +1 -2
  313. package/vendor/abseil-cpp/absl/strings/internal/str_format/arg.cc +7 -63
  314. package/vendor/abseil-cpp/absl/strings/internal/str_format/arg.h +1 -11
  315. package/vendor/abseil-cpp/absl/strings/internal/str_format/convert_test.cc +1 -6
  316. package/vendor/abseil-cpp/absl/strings/internal/str_format/extension.cc +0 -22
  317. package/vendor/abseil-cpp/absl/strings/internal/str_format/extension_test.cc +3 -2
  318. package/vendor/abseil-cpp/absl/strings/internal/str_format/output.cc +5 -3
  319. package/vendor/abseil-cpp/absl/strings/internal/str_format/parser.h +4 -2
  320. package/vendor/abseil-cpp/absl/strings/internal/str_join_internal.h +3 -3
  321. package/vendor/abseil-cpp/absl/strings/internal/str_split_internal.h +7 -2
  322. package/vendor/abseil-cpp/absl/strings/internal/string_constant.h +0 -5
  323. package/vendor/abseil-cpp/absl/strings/internal/utf8.cc +96 -1
  324. package/vendor/abseil-cpp/absl/strings/internal/utf8.h +15 -1
  325. package/vendor/abseil-cpp/absl/strings/internal/utf8_test.cc +196 -3
  326. package/vendor/abseil-cpp/absl/strings/numbers.cc +53 -32
  327. package/vendor/abseil-cpp/absl/strings/numbers.h +87 -58
  328. package/vendor/abseil-cpp/absl/strings/numbers_benchmark.cc +1 -1
  329. package/vendor/abseil-cpp/absl/strings/numbers_test.cc +634 -120
  330. package/vendor/abseil-cpp/absl/strings/str_cat.cc +6 -7
  331. package/vendor/abseil-cpp/absl/strings/str_cat.h +32 -32
  332. package/vendor/abseil-cpp/absl/strings/str_cat_benchmark.cc +25 -1
  333. package/vendor/abseil-cpp/absl/strings/str_cat_test.cc +2 -7
  334. package/vendor/abseil-cpp/absl/strings/str_format.h +18 -18
  335. package/vendor/abseil-cpp/absl/strings/str_format_test.cc +8 -14
  336. package/vendor/abseil-cpp/absl/strings/str_join_benchmark.cc +2 -3
  337. package/vendor/abseil-cpp/absl/strings/str_replace.cc +3 -3
  338. package/vendor/abseil-cpp/absl/strings/str_replace.h +6 -6
  339. package/vendor/abseil-cpp/absl/strings/str_replace_benchmark.cc +2 -3
  340. package/vendor/abseil-cpp/absl/strings/str_split.h +2 -2
  341. package/vendor/abseil-cpp/absl/strings/str_split_benchmark.cc +2 -3
  342. package/vendor/abseil-cpp/absl/strings/string_view.cc +4 -9
  343. package/vendor/abseil-cpp/absl/strings/string_view.h +38 -39
  344. package/vendor/abseil-cpp/absl/strings/string_view_benchmark.cc +4 -6
  345. package/vendor/abseil-cpp/absl/strings/string_view_test.cc +2 -50
  346. package/vendor/abseil-cpp/absl/strings/strip.h +4 -4
  347. package/vendor/abseil-cpp/absl/strings/substitute.cc +5 -4
  348. package/vendor/abseil-cpp/absl/strings/substitute.h +66 -64
  349. package/vendor/abseil-cpp/absl/strings/substitute_benchmark.cc +158 -0
  350. package/vendor/abseil-cpp/absl/synchronization/BUILD.bazel +6 -1
  351. package/vendor/abseil-cpp/absl/synchronization/CMakeLists.txt +2 -1
  352. package/vendor/abseil-cpp/absl/synchronization/barrier.cc +1 -1
  353. package/vendor/abseil-cpp/absl/synchronization/barrier_test.cc +3 -3
  354. package/vendor/abseil-cpp/absl/synchronization/blocking_counter.cc +2 -2
  355. package/vendor/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +3 -3
  356. package/vendor/abseil-cpp/absl/synchronization/internal/futex_waiter.cc +0 -4
  357. package/vendor/abseil-cpp/absl/synchronization/internal/graphcycles.cc +30 -33
  358. package/vendor/abseil-cpp/absl/synchronization/internal/graphcycles_benchmark.cc +2 -3
  359. package/vendor/abseil-cpp/absl/synchronization/internal/graphcycles_test.cc +6 -5
  360. package/vendor/abseil-cpp/absl/synchronization/internal/kernel_timeout.cc +0 -5
  361. package/vendor/abseil-cpp/absl/synchronization/internal/pthread_waiter.cc +0 -4
  362. package/vendor/abseil-cpp/absl/synchronization/internal/sem_waiter.cc +0 -4
  363. package/vendor/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.cc +0 -4
  364. package/vendor/abseil-cpp/absl/synchronization/internal/thread_pool.h +3 -3
  365. package/vendor/abseil-cpp/absl/synchronization/internal/waiter_base.cc +0 -4
  366. package/vendor/abseil-cpp/absl/synchronization/internal/waiter_test.cc +12 -3
  367. package/vendor/abseil-cpp/absl/synchronization/internal/win32_waiter.cc +0 -4
  368. package/vendor/abseil-cpp/absl/synchronization/lifetime_test.cc +4 -4
  369. package/vendor/abseil-cpp/absl/synchronization/mutex.cc +27 -29
  370. package/vendor/abseil-cpp/absl/synchronization/mutex.h +205 -126
  371. package/vendor/abseil-cpp/absl/synchronization/mutex_benchmark.cc +13 -31
  372. package/vendor/abseil-cpp/absl/synchronization/mutex_test.cc +183 -169
  373. package/vendor/abseil-cpp/absl/synchronization/notification.cc +5 -5
  374. package/vendor/abseil-cpp/absl/synchronization/notification.h +1 -1
  375. package/vendor/abseil-cpp/absl/synchronization/notification_test.cc +3 -3
  376. package/vendor/abseil-cpp/absl/time/BUILD.bazel +9 -1
  377. package/vendor/abseil-cpp/absl/time/CMakeLists.txt +3 -1
  378. package/vendor/abseil-cpp/absl/time/civil_time.cc +1 -0
  379. package/vendor/abseil-cpp/absl/time/civil_time_test.cc +134 -0
  380. package/vendor/abseil-cpp/absl/time/clock.cc +11 -14
  381. package/vendor/abseil-cpp/absl/time/duration.cc +14 -9
  382. package/vendor/abseil-cpp/absl/time/duration_test.cc +6 -7
  383. package/vendor/abseil-cpp/absl/time/internal/cctz/BUILD.bazel +14 -3
  384. package/vendor/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +12 -0
  385. package/vendor/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +1 -1
  386. package/vendor/abseil-cpp/absl/time/internal/cctz/src/cctz_benchmark.cc +4 -490
  387. package/vendor/abseil-cpp/absl/time/internal/cctz/src/test_time_zone_names.cc +515 -0
  388. package/vendor/abseil-cpp/absl/time/internal/cctz/src/test_time_zone_names.h +33 -0
  389. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +41 -4
  390. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_format_test.cc +22 -23
  391. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +90 -111
  392. package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup_test.cc +1 -488
  393. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/version +1 -1
  394. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Coyhaique +0 -0
  395. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tehran +0 -0
  396. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Iran +0 -0
  397. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zone1970.tab +2 -1
  398. package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zonenow.tab +1 -1
  399. package/vendor/abseil-cpp/absl/time/time.h +24 -18
  400. package/vendor/abseil-cpp/absl/time/time_test.cc +26 -0
  401. package/vendor/abseil-cpp/absl/types/BUILD.bazel +11 -164
  402. package/vendor/abseil-cpp/absl/types/CMakeLists.txt +23 -167
  403. package/vendor/abseil-cpp/absl/types/any.h +9 -484
  404. package/vendor/abseil-cpp/absl/types/optional.h +7 -747
  405. package/vendor/abseil-cpp/absl/types/span.h +46 -19
  406. package/vendor/abseil-cpp/absl/types/span_test.cc +27 -0
  407. package/vendor/abseil-cpp/absl/types/variant.h +5 -784
  408. package/vendor/abseil-cpp/absl/types/variant_test.cc +43 -2597
  409. package/vendor/abseil-cpp/absl/utility/BUILD.bazel +1 -41
  410. package/vendor/abseil-cpp/absl/utility/CMakeLists.txt +0 -40
  411. package/vendor/abseil-cpp/absl/utility/utility.h +10 -185
  412. package/vendor/abseil-cpp/ci/absl_alternate_options.h +2 -3
  413. package/vendor/abseil-cpp/ci/cmake_common.sh +2 -2
  414. package/vendor/abseil-cpp/ci/linux_arm_clang-latest_libcxx_bazel.sh +12 -13
  415. package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_asan_bazel.sh +24 -21
  416. package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_bazel.sh +12 -12
  417. package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_tsan_bazel.sh +23 -22
  418. package/vendor/abseil-cpp/ci/linux_clang-latest_libstdcxx_bazel.sh +20 -19
  419. package/vendor/abseil-cpp/ci/linux_docker_containers.sh +4 -4
  420. package/vendor/abseil-cpp/ci/linux_gcc-floor_libstdcxx_bazel.sh +17 -17
  421. package/vendor/abseil-cpp/ci/linux_gcc-latest_libstdcxx_bazel.sh +10 -10
  422. package/vendor/abseil-cpp/ci/linux_gcc-latest_libstdcxx_cmake.sh +1 -1
  423. package/vendor/abseil-cpp/ci/linux_gcc_alpine_cmake.sh +1 -1
  424. package/vendor/abseil-cpp/ci/macos_xcode_bazel.sh +9 -10
  425. package/vendor/abseil-cpp/ci/macos_xcode_cmake.sh +9 -1
  426. package/vendor/abseil-cpp/ci/windows_clangcl_bazel.bat +14 -6
  427. package/vendor/abseil-cpp/ci/windows_msvc_bazel.bat +14 -6
  428. package/vendor/abseil-cpp/ci/windows_msvc_cmake.bat +1 -1
  429. package/vendor/re2/.bazelrc +4 -4
  430. package/vendor/re2/.bcr/metadata.template.json +16 -0
  431. package/vendor/re2/.bcr/presubmit.yml +57 -0
  432. package/vendor/re2/.bcr/source.template.json +5 -0
  433. package/vendor/re2/.github/bazel.sh +1 -7
  434. package/vendor/re2/.github/workflows/ci-bazel.yml +5 -5
  435. package/vendor/re2/.github/workflows/ci-cmake.yml +4 -4
  436. package/vendor/re2/.github/workflows/ci.yml +5 -6
  437. package/vendor/re2/.github/workflows/pages.yml +3 -3
  438. package/vendor/re2/.github/workflows/python.yml +29 -24
  439. package/vendor/re2/.github/workflows/release-bazel.yml +42 -0
  440. package/vendor/re2/.github/workflows/release.yml +15 -4
  441. package/vendor/re2/BUILD.bazel +25 -0
  442. package/vendor/re2/CMakeLists.txt +100 -85
  443. package/vendor/re2/CONTRIBUTING.md +0 -1
  444. package/vendor/re2/MODULE.bazel +10 -10
  445. package/vendor/re2/Makefile +1 -1
  446. package/vendor/re2/README.md +259 -0
  447. package/vendor/re2/python/BUILD.bazel +8 -0
  448. package/vendor/re2/python/re2.py +1 -1
  449. package/vendor/re2/python/re2_test.py +6 -0
  450. package/vendor/re2/python/setup.py +3 -3
  451. package/vendor/re2/re2/bitmap256.cc +3 -4
  452. package/vendor/re2/re2/bitstate.cc +15 -10
  453. package/vendor/re2/re2/dfa.cc +1 -2
  454. package/vendor/re2/re2/parse.cc +3 -4
  455. package/vendor/re2/re2/prog.cc +1 -2
  456. package/vendor/re2/re2/prog.h +1 -0
  457. package/vendor/re2/re2/re2.cc +5 -0
  458. package/vendor/re2/re2/re2.h +9 -9
  459. package/vendor/re2/re2/set.cc +6 -0
  460. package/vendor/re2/re2/set.h +5 -0
  461. package/vendor/re2/re2/testing/re2_arg_test.cc +3 -3
  462. package/vendor/re2/re2/testing/re2_test.cc +8 -0
  463. package/vendor/re2/re2/testing/set_test.cc +5 -0
  464. package/vendor/re2/re2/walker-inl.h +1 -1
  465. package/vendor/abseil-cpp/WORKSPACE +0 -76
  466. package/vendor/abseil-cpp/WORKSPACE.bzlmod +0 -19
  467. package/vendor/abseil-cpp/absl/base/inline_variable_test.cc +0 -64
  468. package/vendor/abseil-cpp/absl/base/internal/inline_variable.h +0 -108
  469. package/vendor/abseil-cpp/absl/base/internal/inline_variable_testing.h +0 -46
  470. package/vendor/abseil-cpp/absl/base/internal/invoke.h +0 -241
  471. package/vendor/abseil-cpp/absl/base/internal/nullability_impl.h +0 -69
  472. package/vendor/abseil-cpp/absl/base/invoke_test.cc +0 -331
  473. package/vendor/abseil-cpp/absl/hash/internal/low_level_hash.cc +0 -148
  474. package/vendor/abseil-cpp/absl/hash/internal/low_level_hash.h +0 -54
  475. package/vendor/abseil-cpp/absl/random/internal/pool_urbg.h +0 -131
  476. package/vendor/abseil-cpp/absl/random/internal/pool_urbg_test.cc +0 -182
  477. package/vendor/abseil-cpp/absl/types/any_exception_safety_test.cc +0 -173
  478. package/vendor/abseil-cpp/absl/types/any_test.cc +0 -778
  479. package/vendor/abseil-cpp/absl/types/bad_any_cast.cc +0 -64
  480. package/vendor/abseil-cpp/absl/types/bad_any_cast.h +0 -75
  481. package/vendor/abseil-cpp/absl/types/bad_optional_access.cc +0 -66
  482. package/vendor/abseil-cpp/absl/types/bad_optional_access.h +0 -78
  483. package/vendor/abseil-cpp/absl/types/bad_variant_access.cc +0 -82
  484. package/vendor/abseil-cpp/absl/types/bad_variant_access.h +0 -82
  485. package/vendor/abseil-cpp/absl/types/internal/optional.h +0 -352
  486. package/vendor/abseil-cpp/absl/types/internal/variant.h +0 -1622
  487. package/vendor/abseil-cpp/absl/types/optional_exception_safety_test.cc +0 -292
  488. package/vendor/abseil-cpp/absl/types/optional_test.cc +0 -1615
  489. package/vendor/abseil-cpp/absl/types/variant_benchmark.cc +0 -222
  490. package/vendor/abseil-cpp/absl/types/variant_exception_safety_test.cc +0 -532
  491. package/vendor/abseil-cpp/absl/utility/internal/if_constexpr.h +0 -70
  492. package/vendor/abseil-cpp/absl/utility/internal/if_constexpr_test.cc +0 -79
  493. package/vendor/abseil-cpp/absl/utility/utility_test.cc +0 -239
  494. package/vendor/re2/.github/workflows/pr.yml +0 -34
  495. package/vendor/re2/README +0 -47
@@ -0,0 +1,42 @@
1
+ #pragma once
2
+
3
+ #include <nan.h>
4
+ #include <re2/re2.h>
5
+ #include <re2/set.h>
6
+
7
+ #include <string>
8
+ #include <vector>
9
+
10
+ class WrappedRE2Set : public Nan::ObjectWrap
11
+ {
12
+ public:
13
+ static v8::Local<v8::Function> Init();
14
+ static inline bool HasInstance(v8::Local<v8::Object> object)
15
+ {
16
+ auto isolate = v8::Isolate::GetCurrent();
17
+ return !constructor.IsEmpty() && constructor.Get(isolate)->HasInstance(object);
18
+ }
19
+
20
+ private:
21
+ WrappedRE2Set(const re2::RE2::Options &options, re2::RE2::Anchor anchor, const std::string &flags) : set(options, anchor), flags(flags), anchor(anchor) {}
22
+
23
+ static NAN_METHOD(New);
24
+ static NAN_METHOD(Test);
25
+ static NAN_METHOD(Match);
26
+ static NAN_METHOD(ToString);
27
+
28
+ static NAN_GETTER(GetFlags);
29
+ static NAN_GETTER(GetSources);
30
+ static NAN_GETTER(GetSource);
31
+ static NAN_GETTER(GetSize);
32
+ static NAN_GETTER(GetAnchor);
33
+
34
+ static Nan::Persistent<v8::FunctionTemplate> constructor;
35
+
36
+ re2::RE2::Set set;
37
+ std::vector<std::string> sources;
38
+ std::string combinedSource;
39
+ std::string flags;
40
+ re2::RE2::Anchor anchor;
41
+ };
42
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "re2",
3
- "version": "1.22.2",
3
+ "version": "1.23.0",
4
4
  "description": "Bindings for RE2: fast, safe alternative to backtracking regular expression engines.",
5
5
  "homepage": "https://github.com/uhop/node-re2",
6
6
  "bugs": "https://github.com/uhop/node-re2/issues",
@@ -16,26 +16,32 @@
16
16
  ],
17
17
  "dependencies": {
18
18
  "install-artifact-from-github": "^1.4.0",
19
- "nan": "^2.23.1",
20
- "node-gyp": "^11.5.0"
19
+ "nan": "^2.24.0",
20
+ "node-gyp": "^12.1.0"
21
21
  },
22
22
  "devDependencies": {
23
- "@types/node": "^24.10.0",
24
- "heya-unit": "^0.3.0",
23
+ "@types/node": "^25.0.3",
24
+ "nano-benchmark": "^1.0.4",
25
+ "tape-six": "^1.1.2",
26
+ "tape-six-proc": "^1.0.2",
25
27
  "typescript": "^5.9.3"
26
28
  },
27
29
  "scripts": {
28
- "test": "node tests/tests.js",
29
- "ts-test": "tsc",
30
+ "test": "tape6-proc --flags FO",
30
31
  "save-to-github": "save-to-github-cache --artifact build/Release/re2.node",
31
32
  "install": "install-from-cache --artifact build/Release/re2.node --host-var RE2_DOWNLOAD_MIRROR --skip-path-var RE2_DOWNLOAD_SKIP_PATH --skip-ver-var RE2_DOWNLOAD_SKIP_VER || node-gyp -j max rebuild",
32
33
  "verify-build": "node scripts/verify-build.js",
33
34
  "build:dev": "node-gyp -j max build --debug",
34
35
  "build": "node-gyp -j max build",
36
+ "build1": "node-gyp build",
35
37
  "rebuild:dev": "node-gyp -j max rebuild --debug",
36
38
  "rebuild": "node-gyp -j max rebuild",
39
+ "rebuild1": "node-gyp rebuild",
37
40
  "clean": "node-gyp clean && node-gyp configure",
38
- "clean-build": "node-gyp clean"
41
+ "clean-build": "node-gyp clean",
42
+ "ts-check": "tsc --noEmit",
43
+ "lint": "prettier --check *.js *.ts tests/ bench/",
44
+ "lint:fix": "prettier --write *.js *.ts tests/ bench/"
39
45
  },
40
46
  "github": "https://github.com/uhop/node-re2",
41
47
  "repository": {
@@ -49,5 +55,11 @@
49
55
  "PCRE alternative"
50
56
  ],
51
57
  "author": "Eugene Lazutkin <eugene.lazutkin@gmail.com> (https://lazutkin.com/)",
52
- "license": "BSD-3-Clause"
58
+ "license": "BSD-3-Clause",
59
+ "tape6": {
60
+ "tests": [
61
+ "/tests/test-*.mjs",
62
+ "/tests/test-*.ts"
63
+ ]
64
+ }
53
65
  }
package/re2.d.ts CHANGED
@@ -1,12 +1,11 @@
1
1
  declare module 're2' {
2
-
3
2
  interface RE2BufferExecArray {
4
3
  index: number;
5
4
  input: Buffer;
6
5
  0: Buffer;
7
6
  groups?: {
8
- [key: string]: Buffer
9
- }
7
+ [key: string]: Buffer;
8
+ };
10
9
  }
11
10
 
12
11
  interface RE2BufferMatchArray {
@@ -14,8 +13,8 @@ declare module 're2' {
14
13
  input?: Buffer;
15
14
  0: Buffer;
16
15
  groups?: {
17
- [key: string]: Buffer
18
- }
16
+ [key: string]: Buffer;
17
+ };
19
18
  }
20
19
 
21
20
  interface RE2 extends RegExp {
@@ -27,17 +26,53 @@ declare module 're2' {
27
26
 
28
27
  test(str: string | Buffer): boolean;
29
28
 
30
- replace<K extends String | Buffer>(str: K, replaceValue: string | Buffer): K;
31
- replace<K extends String | Buffer>(str: K, replacer: (substring: string, ...args: any[]) => string | Buffer): K;
29
+ replace<K extends String | Buffer>(
30
+ str: K,
31
+ replaceValue: string | Buffer
32
+ ): K;
33
+ replace<K extends String | Buffer>(
34
+ str: K,
35
+ replacer: (substring: string, ...args: any[]) => string | Buffer
36
+ ): K;
32
37
 
33
38
  search(str: string | Buffer): number;
34
39
 
35
40
  split<K extends String | Buffer>(str: K, limit?: number): K[];
36
41
  }
37
42
 
43
+ interface RE2SetOptions {
44
+ anchor?: 'unanchored' | 'start' | 'both';
45
+ }
46
+
47
+ interface RE2Set {
48
+ readonly size: number;
49
+ readonly source: string;
50
+ readonly sources: string[];
51
+ readonly flags: string;
52
+ readonly anchor: 'unanchored' | 'start' | 'both';
53
+
54
+ match(str: string | Buffer): number[];
55
+ test(str: string | Buffer): boolean;
56
+ toString(): string;
57
+ }
58
+
59
+ interface RE2SetConstructor {
60
+ new (
61
+ patterns: Iterable<Buffer | RegExp | RE2 | string>,
62
+ flagsOrOptions?: string | Buffer | RE2SetOptions,
63
+ options?: RE2SetOptions
64
+ ): RE2Set;
65
+ (
66
+ patterns: Iterable<Buffer | RegExp | RE2 | string>,
67
+ flagsOrOptions?: string | Buffer | RE2SetOptions,
68
+ options?: RE2SetOptions
69
+ ): RE2Set;
70
+ readonly prototype: RE2Set;
71
+ }
72
+
38
73
  interface RE2Constructor extends RegExpConstructor {
39
- new(pattern: Buffer | RegExp | RE2 | string): RE2;
40
- new(pattern: Buffer | string, flags?: string | Buffer): RE2;
74
+ new (pattern: Buffer | RegExp | RE2 | string): RE2;
75
+ new (pattern: Buffer | string, flags?: string | Buffer): RE2;
41
76
  (pattern: Buffer | RegExp | RE2 | string): RE2;
42
77
  (pattern: Buffer | string, flags?: string | Buffer): RE2;
43
78
  readonly prototype: RE2;
@@ -45,6 +80,8 @@ declare module 're2' {
45
80
  unicodeWarningLevel: 'nothing' | 'warnOnce' | 'warn' | 'throw';
46
81
  getUtf8Length(value: string): number;
47
82
  getUtf16Length(value: Buffer): number;
83
+
84
+ Set: RE2SetConstructor;
48
85
  }
49
86
 
50
87
  var RE2: RE2Constructor;
@@ -10,6 +10,7 @@ set(ABSL_INTERNAL_DLL_FILES
10
10
  "base/config.h"
11
11
  "base/const_init.h"
12
12
  "base/dynamic_annotations.h"
13
+ "base/fast_type_id.h"
13
14
  "base/internal/atomic_hook.h"
14
15
  "base/internal/cycleclock.cc"
15
16
  "base/internal/cycleclock.h"
@@ -18,15 +19,12 @@ set(ABSL_INTERNAL_DLL_FILES
18
19
  "base/internal/dynamic_annotations.h"
19
20
  "base/internal/endian.h"
20
21
  "base/internal/errno_saver.h"
21
- "base/internal/fast_type_id.h"
22
22
  "base/internal/hide_ptr.h"
23
23
  "base/internal/identity.h"
24
- "base/internal/invoke.h"
25
- "base/internal/inline_variable.h"
24
+ "base/internal/iterator_traits.h"
26
25
  "base/internal/low_level_alloc.cc"
27
26
  "base/internal/low_level_alloc.h"
28
27
  "base/internal/low_level_scheduling.h"
29
- "base/internal/nullability_impl.h"
30
28
  "base/internal/per_thread_tls.h"
31
29
  "base/internal/poison.cc"
32
30
  "base/internal/poison.h"
@@ -83,6 +81,7 @@ set(ABSL_INTERNAL_DLL_FILES
83
81
  "container/internal/container_memory.h"
84
82
  "container/internal/hash_function_defaults.h"
85
83
  "container/internal/hash_policy_traits.h"
84
+ "container/internal/hashtable_control_bytes.h"
86
85
  "container/internal/hashtable_debug.h"
87
86
  "container/internal/hashtable_debug_hooks.h"
88
87
  "container/internal/hashtablez_sampler.cc"
@@ -94,6 +93,7 @@ set(ABSL_INTERNAL_DLL_FILES
94
93
  "container/internal/raw_hash_map.h"
95
94
  "container/internal/raw_hash_set.cc"
96
95
  "container/internal/raw_hash_set.h"
96
+ "container/internal/raw_hash_set_resize_impl.h"
97
97
  "container/internal/tracked.h"
98
98
  "container/node_hash_map.h"
99
99
  "container/node_hash_set.h"
@@ -126,6 +126,7 @@ set(ABSL_INTERNAL_DLL_FILES
126
126
  "debugging/symbolize.h"
127
127
  "debugging/internal/address_is_readable.cc"
128
128
  "debugging/internal/address_is_readable.h"
129
+ "debugging/internal/addresses.h"
129
130
  "debugging/internal/bounded_utf8_length_sequence.h"
130
131
  "debugging/internal/decode_rust_punycode.cc"
131
132
  "debugging/internal/decode_rust_punycode.h"
@@ -158,8 +159,7 @@ set(ABSL_INTERNAL_DLL_FILES
158
159
  "hash/internal/hash.h"
159
160
  "hash/internal/hash.cc"
160
161
  "hash/internal/spy_hash_state.h"
161
- "hash/internal/low_level_hash.h"
162
- "hash/internal/low_level_hash.cc"
162
+ "hash/internal/weakly_mixed_integer.h"
163
163
  "log/absl_check.h"
164
164
  "log/absl_log.h"
165
165
  "log/absl_vlog_is_on.h"
@@ -216,10 +216,14 @@ set(ABSL_INTERNAL_DLL_FILES
216
216
  "numeric/int128.h"
217
217
  "numeric/internal/bits.h"
218
218
  "numeric/internal/representation.h"
219
+ "profiling/hashtable.cc"
220
+ "profiling/hashtable.h"
219
221
  "profiling/internal/exponential_biased.cc"
220
222
  "profiling/internal/exponential_biased.h"
221
223
  "profiling/internal/periodic_sampler.cc"
222
224
  "profiling/internal/periodic_sampler.h"
225
+ "profiling/internal/profile_builder.cc"
226
+ "profiling/internal/profile_builder.h"
223
227
  "profiling/internal/sample_recorder.h"
224
228
  "random/bernoulli_distribution.h"
225
229
  "random/beta_distribution.h"
@@ -238,8 +242,8 @@ set(ABSL_INTERNAL_DLL_FILES
238
242
  "random/internal/nonsecure_base.h"
239
243
  "random/internal/pcg_engine.h"
240
244
  "random/internal/platform.h"
241
- "random/internal/pool_urbg.cc"
242
- "random/internal/pool_urbg.h"
245
+ "random/internal/entropy_pool.cc"
246
+ "random/internal/entropy_pool.h"
243
247
  "random/internal/randen.cc"
244
248
  "random/internal/randen.h"
245
249
  "random/internal/randen_detect.cc"
@@ -286,7 +290,6 @@ set(ABSL_INTERNAL_DLL_FILES
286
290
  "strings/cord.h"
287
291
  "strings/cord_analysis.cc"
288
292
  "strings/cord_analysis.h"
289
- "strings/cord_buffer.cc"
290
293
  "strings/cord_buffer.h"
291
294
  "strings/escaping.cc"
292
295
  "strings/escaping.h"
@@ -432,20 +435,11 @@ set(ABSL_INTERNAL_DLL_FILES
432
435
  "time/internal/cctz/src/tzfile.h"
433
436
  "time/internal/cctz/src/zone_info_source.cc"
434
437
  "types/any.h"
435
- "types/bad_any_cast.cc"
436
- "types/bad_any_cast.h"
437
- "types/bad_optional_access.cc"
438
- "types/bad_optional_access.h"
439
- "types/bad_variant_access.cc"
440
- "types/bad_variant_access.h"
441
438
  "types/compare.h"
442
- "types/internal/variant.h"
443
439
  "types/optional.h"
444
- "types/internal/optional.h"
445
440
  "types/span.h"
446
441
  "types/internal/span.h"
447
442
  "types/variant.h"
448
- "utility/internal/if_constexpr.h"
449
443
  "utility/utility.h"
450
444
  "debugging/leak_check.cc"
451
445
  )
@@ -496,10 +490,6 @@ set(ABSL_INTERNAL_DLL_TARGETS
496
490
  "any"
497
491
  "any_invocable"
498
492
  "atomic_hook"
499
- "bad_any_cast"
500
- "bad_any_cast_impl"
501
- "bad_optional_access"
502
- "bad_variant_access"
503
493
  "base"
504
494
  "base_internal"
505
495
  "bind_front"
@@ -734,7 +724,7 @@ if(ABSL_INTERNAL_AT_LEAST_CXX20)
734
724
  elseif(ABSL_INTERNAL_AT_LEAST_CXX17)
735
725
  set(ABSL_INTERNAL_CXX_STD_FEATURE cxx_std_17)
736
726
  else()
737
- set(ABSL_INTERNAL_CXX_STD_FEATURE cxx_std_14)
727
+ message(FATAL_ERROR "The compiler defaults to or is configured for C++ < 17. C++ >= 17 is required and Abseil and all libraries that use Abseil must use the same C++ language standard")
738
728
  endif()
739
729
 
740
730
  function(absl_internal_dll_contains)
@@ -899,7 +889,7 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n")
899
889
  )
900
890
 
901
891
  if(ABSL_PROPAGATE_CXX_STD)
902
- # Abseil libraries require C++14 as the current minimum standard. When
892
+ # Abseil libraries require C++17 as the current minimum standard. When
903
893
  # compiled with a higher minimum (either because it is the compiler's
904
894
  # default or explicitly requested), then Abseil requires that standard.
905
895
  target_compile_features(${_dll} PUBLIC ${ABSL_INTERNAL_CXX_STD_FEATURE})
@@ -301,7 +301,7 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n")
301
301
  endif()
302
302
 
303
303
  if(ABSL_PROPAGATE_CXX_STD)
304
- # Abseil libraries require C++14 as the current minimum standard. When
304
+ # Abseil libraries require C++17 as the current minimum standard. When
305
305
  # compiled with a higher standard (either because it is the compiler's
306
306
  # default or explicitly requested), then Abseil requires that standard.
307
307
  target_compile_features(${_NAME} PUBLIC ${ABSL_INTERNAL_CXX_STD_FEATURE})
@@ -338,7 +338,7 @@ Cflags: -I\${includedir}${PC_CFLAGS}\n")
338
338
  target_compile_definitions(${_NAME} INTERFACE ${ABSL_CC_LIB_DEFINES})
339
339
 
340
340
  if(ABSL_PROPAGATE_CXX_STD)
341
- # Abseil libraries require C++14 as the current minimum standard.
341
+ # Abseil libraries require C++17 as the current minimum standard.
342
342
  # Top-level application CMake projects should ensure a consistent C++
343
343
  # standard for all compiled sources by setting CMAKE_CXX_STANDARD.
344
344
  target_compile_features(${_NAME} INTERFACE ${ABSL_INTERNAL_CXX_STD_FEATURE})
@@ -450,7 +450,7 @@ function(absl_cc_test)
450
450
  set_property(TARGET ${_NAME} PROPERTY FOLDER ${ABSL_IDE_FOLDER}/test)
451
451
 
452
452
  if(ABSL_PROPAGATE_CXX_STD)
453
- # Abseil libraries require C++14 as the current minimum standard.
453
+ # Abseil libraries require C++17 as the current minimum standard.
454
454
  # Top-level application CMake projects should ensure a consistent C++
455
455
  # standard for all compiled sources by setting CMAKE_CXX_STANDARD.
456
456
  target_compile_features(${_NAME} PUBLIC ${ABSL_INTERNAL_CXX_STD_FEATURE})
@@ -43,8 +43,8 @@ cmake_minimum_required(VERSION 3.16)
43
43
  project(my_app_project)
44
44
 
45
45
  # Pick the C++ standard to compile with.
46
- # Abseil currently supports C++14, C++17, and C++20.
47
- set(CMAKE_CXX_STANDARD 14)
46
+ # Abseil currently supports C++17 and C++20.
47
+ set(CMAKE_CXX_STANDARD 17)
48
48
  set(CMAKE_CXX_STANDARD_REQUIRED ON)
49
49
 
50
50
  add_subdirectory(abseil-cpp)
@@ -23,8 +23,8 @@ if (POLICY CMP0141)
23
23
  cmake_policy(SET CMP0141 NEW)
24
24
  endif (POLICY CMP0141)
25
25
 
26
- project(absl LANGUAGES CXX VERSION 20250127)
27
- set(ABSL_SOVERSION "2501.0.0")
26
+ project(absl LANGUAGES CXX VERSION 20250814)
27
+ set(ABSL_SOVERSION "2508.0.0")
28
28
  include(CTest)
29
29
 
30
30
  # Output directory is correct by default for most build setups. However, when
@@ -46,7 +46,7 @@ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH ON)
46
46
  set(CMAKE_BUILD_RPATH_USE_ORIGIN ON)
47
47
 
48
48
  option(ABSL_PROPAGATE_CXX_STD
49
- "Use CMake C++ standard meta features (e.g. cxx_std_14) that propagate to targets that link to Abseil"
49
+ "Use CMake C++ standard meta features (e.g. cxx_std_17) that propagate to targets that link to Abseil"
50
50
  ON)
51
51
 
52
52
  option(ABSL_USE_SYSTEM_INCLUDES
@@ -16,7 +16,7 @@
16
16
 
17
17
  module(
18
18
  name = "abseil-cpp",
19
- version = "20250127.1",
19
+ version = "20250814.1",
20
20
  compatibility_level = 1,
21
21
  )
22
22
 
@@ -25,16 +25,13 @@ cc_configure = use_extension("@rules_cc//cc:extensions.bzl",
25
25
  dev_dependency = True)
26
26
  use_repo(cc_configure, "local_config_cc")
27
27
 
28
- # Only direct dependencies need to be listed below.
29
- # Please keep the versions in sync with the versions in the WORKSPACE file.
30
-
31
- bazel_dep(name = "rules_cc", version = "0.0.17")
32
- bazel_dep(name = "bazel_skylib", version = "1.7.1")
33
- bazel_dep(name = "platforms", version = "0.0.10")
28
+ bazel_dep(name = "rules_cc", version = "0.2.0")
29
+ bazel_dep(name = "bazel_skylib", version = "1.8.1")
30
+ bazel_dep(name = "platforms", version = "1.0.0")
34
31
 
35
32
  bazel_dep(
36
33
  name = "google_benchmark",
37
- version = "1.8.5",
34
+ version = "1.9.4",
38
35
  dev_dependency = True,
39
36
  )
40
37
 
@@ -42,5 +39,5 @@ bazel_dep(
42
39
  # intended to be used by Abseil users depend on GoogleTest.
43
40
  bazel_dep(
44
41
  name = "googletest",
45
- version = "1.15.2",
42
+ version = "1.17.0",
46
43
  )
@@ -1,7 +1,7 @@
1
1
  # Abseil - C++ Common Libraries
2
2
 
3
3
  The repository contains the Abseil C++ library code. Abseil is an open-source
4
- collection of C++ code (compliant to C++14) designed to augment the C++
4
+ collection of C++ code (compliant to C++17) designed to augment the C++
5
5
  standard library.
6
6
 
7
7
  ## Table of Contents
@@ -99,8 +99,8 @@ Abseil contains the following C++ library components:
99
99
  <br /> The `memory` library contains memory management facilities that augment
100
100
  C++'s `<memory>` library.
101
101
  * [`meta`](absl/meta/)
102
- <br /> The `meta` library contains compatible versions of type checks
103
- available within C++14 and C++17 versions of the C++ `<type_traits>` library.
102
+ <br /> The `meta` library contains type checks
103
+ similar to those available in the C++ `<type_traits>` library.
104
104
  * [`numeric`](absl/numeric/)
105
105
  <br /> The `numeric` library contains 128-bit integer types as well as
106
106
  implementations of C++20's bitwise math functions.
@@ -108,15 +108,14 @@ Abseil contains the following C++ library components:
108
108
  <br /> The `profiling` library contains utility code for profiling C++
109
109
  entities. It is currently a private dependency of other Abseil libraries.
110
110
  * [`random`](absl/random/)
111
- <br /> The `random` library contains functions for generating psuedorandom
111
+ <br /> The `random` library contains functions for generating pseudorandom
112
112
  values.
113
113
  * [`status`](absl/status/)
114
114
  <br /> The `status` library contains abstractions for error handling,
115
115
  specifically `absl::Status` and `absl::StatusOr<T>`.
116
116
  * [`strings`](absl/strings/)
117
117
  <br /> The `strings` library contains a variety of strings routines and
118
- utilities, including a C++14-compatible version of the C++17
119
- `std::string_view` type.
118
+ utilities.
120
119
  * [`synchronization`](absl/synchronization/)
121
120
  <br /> The `synchronization` library contains concurrency primitives (Abseil's
122
121
  `absl::Mutex` class, an alternative to `std::mutex`) and a variety of
@@ -126,8 +125,7 @@ Abseil contains the following C++ library components:
126
125
  points in time, durations of time, and formatting and parsing time within
127
126
  time zones.
128
127
  * [`types`](absl/types/)
129
- <br /> The `types` library contains non-container utility types, like a
130
- C++14-compatible version of the C++17 `std::optional` type.
128
+ <br /> The `types` library contains non-container utility types.
131
129
  * [`utility`](absl/utility/)
132
130
  <br /> The `utility` library contains utility and helper code.
133
131
 
@@ -42,11 +42,13 @@ Pod::Spec.new do |s|
42
42
  'USER_HEADER_SEARCH_PATHS' => '$(inherited) "$(PODS_TARGET_SRCROOT)"',
43
43
  'USE_HEADERMAP' => 'NO',
44
44
  'ALWAYS_SEARCH_USER_PATHS' => 'NO',
45
+ 'CLANG_CXX_LANGUAGE_STANDARD' => 'c++17',
45
46
  }
46
- s.ios.deployment_target = '9.0'
47
- s.osx.deployment_target = '10.11'
48
- s.tvos.deployment_target = '9.0'
49
- s.watchos.deployment_target = '2.0'
47
+ s.ios.deployment_target = '12.0'
48
+ s.osx.deployment_target = '10.13'
49
+ s.tvos.deployment_target = '12.0'
50
+ s.watchos.deployment_target = '4.0'
51
+ s.visionos.deployment_target = '1.0'
50
52
  s.subspec 'xcprivacy' do |ss|
51
53
  ss.resource_bundles = {
52
54
  ss.module_name => 'PrivacyInfo.xcprivacy',
@@ -14,6 +14,8 @@
14
14
  # limitations under the License.
15
15
  #
16
16
 
17
+ load("@rules_cc//cc:cc_library.bzl", "cc_library")
18
+ load("@rules_cc//cc:cc_test.bzl", "cc_test")
17
19
  load(
18
20
  "//absl:copts/configure_copts.bzl",
19
21
  "ABSL_DEFAULT_COPTS",
@@ -83,6 +85,7 @@ cc_test(
83
85
  "//absl/base:config",
84
86
  "//absl/base:core_headers",
85
87
  "//absl/memory",
88
+ "//absl/random",
86
89
  "//absl/types:span",
87
90
  "@googletest//:gtest",
88
91
  "@googletest//:gtest_main",
@@ -68,6 +68,7 @@ absl_cc_test(
68
68
  absl::config
69
69
  absl::core_headers
70
70
  absl::memory
71
+ absl::random_random
71
72
  absl::span
72
73
  GTest::gmock_main
73
74
  )
@@ -44,7 +44,6 @@
44
44
  #include <cassert>
45
45
  #include <iterator>
46
46
  #include <numeric>
47
- #include <random>
48
47
  #include <type_traits>
49
48
  #include <unordered_map>
50
49
  #include <unordered_set>
@@ -76,8 +75,8 @@ using ContainerIter = decltype(begin(std::declval<C&>()));
76
75
  // An MSVC bug involving template parameter substitution requires us to use
77
76
  // decltype() here instead of just std::pair.
78
77
  template <typename C1, typename C2>
79
- using ContainerIterPairType =
80
- decltype(std::make_pair(ContainerIter<C1>(), ContainerIter<C2>()));
78
+ using ContainerIterPairType = decltype(std::make_pair(
79
+ std::declval<ContainerIter<C1>>(), std::declval<ContainerIter<C2>>()));
81
80
 
82
81
  template <typename C>
83
82
  using ContainerDifferenceType = decltype(std::distance(
@@ -847,25 +846,9 @@ template <typename C, typename OutputIterator, typename Distance,
847
846
  typename UniformRandomBitGenerator>
848
847
  OutputIterator c_sample(const C& c, OutputIterator result, Distance n,
849
848
  UniformRandomBitGenerator&& gen) {
850
- #if defined(__cpp_lib_sample) && __cpp_lib_sample >= 201603L
851
849
  return std::sample(container_algorithm_internal::c_begin(c),
852
850
  container_algorithm_internal::c_end(c), result, n,
853
851
  std::forward<UniformRandomBitGenerator>(gen));
854
- #else
855
- // Fall back to a stable selection-sampling implementation.
856
- auto first = container_algorithm_internal::c_begin(c);
857
- Distance unsampled_elements = c_distance(c);
858
- n = (std::min)(n, unsampled_elements);
859
- for (; n != 0; ++first) {
860
- Distance r =
861
- std::uniform_int_distribution<Distance>(0, --unsampled_elements)(gen);
862
- if (r < n) {
863
- *result++ = *first;
864
- --n;
865
- }
866
- }
867
- return result;
868
- #endif
869
852
  }
870
853
 
871
854
  //------------------------------------------------------------------------------
@@ -16,6 +16,7 @@
16
16
 
17
17
  #include <algorithm>
18
18
  #include <array>
19
+ #include <cstddef>
19
20
  #include <functional>
20
21
  #include <initializer_list>
21
22
  #include <iterator>
@@ -35,6 +36,7 @@
35
36
  #include "absl/base/config.h"
36
37
  #include "absl/base/macros.h"
37
38
  #include "absl/memory/memory.h"
39
+ #include "absl/random/random.h"
38
40
  #include "absl/types/span.h"
39
41
 
40
42
  namespace {
@@ -986,25 +988,16 @@ TEST(MutatingTest, RotateCopy) {
986
988
  EXPECT_THAT(actual, ElementsAre(3, 4, 1, 2, 5));
987
989
  }
988
990
 
989
- template <typename T>
990
- T RandomlySeededPrng() {
991
- std::random_device rdev;
992
- std::seed_seq::result_type data[T::state_size];
993
- std::generate_n(data, T::state_size, std::ref(rdev));
994
- std::seed_seq prng_seed(data, data + T::state_size);
995
- return T(prng_seed);
996
- }
997
-
998
991
  TEST(MutatingTest, Shuffle) {
999
992
  std::vector<int> actual = {1, 2, 3, 4, 5};
1000
- absl::c_shuffle(actual, RandomlySeededPrng<std::mt19937_64>());
993
+ absl::c_shuffle(actual, absl::InsecureBitGen());
1001
994
  EXPECT_THAT(actual, UnorderedElementsAre(1, 2, 3, 4, 5));
1002
995
  }
1003
996
 
1004
997
  TEST(MutatingTest, Sample) {
1005
998
  std::vector<int> actual;
1006
999
  absl::c_sample(std::vector<int>{1, 2, 3, 4, 5}, std::back_inserter(actual), 3,
1007
- RandomlySeededPrng<std::mt19937_64>());
1000
+ absl::InsecureBitGen());
1008
1001
  EXPECT_THAT(actual, IsSubsetOf({1, 2, 3, 4, 5}));
1009
1002
  EXPECT_THAT(actual, SizeIs(3));
1010
1003
  }