re2 1.24.1 → 1.25.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.
- package/LICENSE +15 -20
- package/README.md +62 -4
- package/binding.gyp +1 -2
- package/lib/addon.cc +7 -3
- package/lib/exec.cc +4 -4
- package/lib/match.cc +4 -4
- package/lib/pattern.cc +148 -1
- package/lib/replace.cc +5 -4
- package/lib/search.cc +1 -1
- package/lib/set.cc +75 -0
- package/lib/test.cc +1 -1
- package/lib/unicode_properties.h +15840 -0
- package/lib/wrapped_re2.h +11 -4
- package/lib/wrapped_re2_set.h +3 -1
- package/llms-full.txt +37 -7
- package/llms.txt +4 -1
- package/package.json +11 -10
- package/re2.d.ts +2 -0
- package/vendor/abseil-cpp/CMake/AbseilDll.cmake +87 -74
- package/vendor/abseil-cpp/CMakeLists.txt +3 -3
- package/vendor/abseil-cpp/FAQ.md +130 -79
- package/vendor/abseil-cpp/MODULE.bazel +6 -7
- package/vendor/abseil-cpp/absl/BUILD.bazel +6 -0
- package/vendor/abseil-cpp/absl/algorithm/BUILD.bazel +4 -0
- package/vendor/abseil-cpp/absl/algorithm/CMakeLists.txt +4 -0
- package/vendor/abseil-cpp/absl/algorithm/algorithm.h +34 -2
- package/vendor/abseil-cpp/absl/algorithm/container.h +164 -17
- package/vendor/abseil-cpp/absl/algorithm/container_test.cc +390 -13
- package/vendor/abseil-cpp/absl/base/BUILD.bazel +53 -6
- package/vendor/abseil-cpp/absl/base/CMakeLists.txt +28 -4
- package/vendor/abseil-cpp/absl/base/attributes.h +61 -42
- package/vendor/abseil-cpp/absl/base/call_once.h +1 -0
- package/vendor/abseil-cpp/absl/base/casts.h +8 -1
- package/vendor/abseil-cpp/absl/base/casts_test.cc +3 -6
- package/vendor/abseil-cpp/absl/base/config.h +54 -10
- package/vendor/abseil-cpp/absl/base/exception_safety_testing_test.cc +9 -9
- package/vendor/abseil-cpp/absl/base/fast_type_id.h +30 -2
- package/vendor/abseil-cpp/absl/base/fast_type_id_test.cc +3 -0
- package/vendor/abseil-cpp/absl/base/internal/exception_safety_testing.h +15 -12
- package/vendor/abseil-cpp/absl/base/internal/hardening.h +136 -0
- package/vendor/abseil-cpp/absl/base/internal/hardening_test.cc +168 -0
- package/vendor/abseil-cpp/absl/base/internal/iterator_traits.h +2 -2
- package/vendor/abseil-cpp/absl/base/internal/low_level_alloc.cc +6 -0
- package/vendor/abseil-cpp/absl/base/internal/low_level_scheduling.h +77 -15
- package/vendor/abseil-cpp/absl/base/internal/sysinfo.cc +1 -2
- package/vendor/abseil-cpp/absl/base/internal/thread_identity.h +52 -0
- package/vendor/abseil-cpp/absl/base/internal/unscaledcycleclock.h +5 -0
- package/vendor/abseil-cpp/absl/base/macros.h +36 -20
- package/vendor/abseil-cpp/absl/base/nullability.h +4 -3
- package/vendor/abseil-cpp/absl/base/optimization.h +3 -2
- package/vendor/abseil-cpp/absl/base/optimization_test.cc +4 -3
- package/vendor/abseil-cpp/absl/base/options.h +55 -1
- package/vendor/abseil-cpp/absl/base/policy_checks.h +5 -5
- package/vendor/abseil-cpp/absl/base/{internal/throw_delegate.cc → throw_delegate.cc} +9 -7
- package/vendor/abseil-cpp/absl/base/{internal/throw_delegate.h → throw_delegate.h} +4 -14
- package/vendor/abseil-cpp/absl/base/throw_delegate_test.cc +19 -28
- package/vendor/abseil-cpp/absl/cleanup/BUILD.bazel +2 -0
- package/vendor/abseil-cpp/absl/cleanup/CMakeLists.txt +2 -0
- package/vendor/abseil-cpp/absl/cleanup/cleanup.h +3 -2
- package/vendor/abseil-cpp/absl/cleanup/internal/cleanup.h +3 -2
- package/vendor/abseil-cpp/absl/container/BUILD.bazel +19 -7
- package/vendor/abseil-cpp/absl/container/CMakeLists.txt +6 -5
- package/vendor/abseil-cpp/absl/container/btree_benchmark.cc +3 -5
- package/vendor/abseil-cpp/absl/container/btree_set.h +5 -5
- package/vendor/abseil-cpp/absl/container/btree_test.cc +11 -14
- package/vendor/abseil-cpp/absl/container/chunked_queue.h +8 -6
- package/vendor/abseil-cpp/absl/container/chunked_queue_test.cc +5 -5
- package/vendor/abseil-cpp/absl/container/fixed_array.h +14 -13
- package/vendor/abseil-cpp/absl/container/fixed_array_test.cc +3 -3
- package/vendor/abseil-cpp/absl/container/flat_hash_map.h +18 -6
- package/vendor/abseil-cpp/absl/container/flat_hash_map_test.cc +34 -1
- package/vendor/abseil-cpp/absl/container/flat_hash_set.h +21 -7
- package/vendor/abseil-cpp/absl/container/flat_hash_set_test.cc +39 -7
- package/vendor/abseil-cpp/absl/container/inlined_vector.h +29 -29
- package/vendor/abseil-cpp/absl/container/inlined_vector_test.cc +2 -2
- package/vendor/abseil-cpp/absl/container/internal/btree.h +32 -24
- package/vendor/abseil-cpp/absl/container/internal/btree_container.h +16 -17
- package/vendor/abseil-cpp/absl/container/internal/common.h +6 -5
- package/vendor/abseil-cpp/absl/container/internal/common_policy_traits.h +1 -1
- package/vendor/abseil-cpp/absl/container/internal/compressed_tuple.h +16 -16
- package/vendor/abseil-cpp/absl/container/internal/compressed_tuple_test.cc +13 -13
- package/vendor/abseil-cpp/absl/container/internal/container_memory.h +41 -31
- package/vendor/abseil-cpp/absl/container/internal/hash_function_defaults.h +2 -2
- package/vendor/abseil-cpp/absl/container/internal/hash_generator_testing.h +4 -4
- package/vendor/abseil-cpp/absl/container/internal/hash_policy_traits.h +3 -3
- package/vendor/abseil-cpp/absl/container/internal/hashtable_control_bytes.h +27 -19
- package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +2 -2
- package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler.h +0 -17
- package/vendor/abseil-cpp/absl/container/internal/hashtablez_sampler_test.cc +12 -30
- package/vendor/abseil-cpp/absl/container/internal/inlined_vector.h +28 -28
- package/vendor/abseil-cpp/absl/container/internal/layout.h +13 -13
- package/vendor/abseil-cpp/absl/container/internal/layout_test.cc +3 -2
- package/vendor/abseil-cpp/absl/container/internal/raw_hash_map.h +60 -62
- package/vendor/abseil-cpp/absl/container/internal/raw_hash_set.cc +59 -39
- package/vendor/abseil-cpp/absl/container/internal/raw_hash_set.h +619 -326
- package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_benchmark.cc +25 -2
- package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_probe_benchmark.cc +4 -4
- package/vendor/abseil-cpp/absl/container/internal/raw_hash_set_test.cc +575 -159
- package/vendor/abseil-cpp/absl/container/linked_hash_map.h +2 -2
- package/vendor/abseil-cpp/absl/container/node_hash_map.h +27 -15
- package/vendor/abseil-cpp/absl/container/node_hash_map_test.cc +34 -0
- package/vendor/abseil-cpp/absl/container/node_hash_set.h +25 -11
- package/vendor/abseil-cpp/absl/container/node_hash_set_test.cc +39 -7
- package/vendor/abseil-cpp/absl/container/sample_element_size_test.cc +7 -4
- package/vendor/abseil-cpp/absl/crc/BUILD.bazel +0 -1
- package/vendor/abseil-cpp/absl/crc/CMakeLists.txt +2 -3
- package/vendor/abseil-cpp/absl/crc/crc32c_benchmark.cc +2 -1
- package/vendor/abseil-cpp/absl/crc/internal/cpu_detect.cc +6 -6
- package/vendor/abseil-cpp/absl/crc/internal/crc.cc +4 -6
- package/vendor/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +41 -0
- package/vendor/abseil-cpp/absl/crc/internal/crc_internal.h +0 -16
- package/vendor/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +143 -81
- package/vendor/abseil-cpp/absl/debugging/BUILD.bazel +9 -31
- package/vendor/abseil-cpp/absl/debugging/CMakeLists.txt +3 -33
- package/vendor/abseil-cpp/absl/debugging/internal/demangle_rust.h +8 -0
- package/vendor/abseil-cpp/absl/debugging/internal/demangle_test.cc +2 -1
- package/vendor/abseil-cpp/absl/debugging/internal/examine_stack.cc +12 -2
- package/vendor/abseil-cpp/absl/debugging/internal/examine_stack.h +2 -3
- package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +11 -0
- package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +13 -4
- package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +14 -7
- package/vendor/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +4 -0
- package/vendor/abseil-cpp/absl/debugging/internal/symbolize.h +46 -36
- package/vendor/abseil-cpp/absl/debugging/stacktrace.cc +18 -58
- package/vendor/abseil-cpp/absl/debugging/stacktrace.h +5 -48
- package/vendor/abseil-cpp/absl/debugging/stacktrace_test.cc +10 -124
- package/vendor/abseil-cpp/absl/debugging/symbolize.cc +20 -2
- package/vendor/abseil-cpp/absl/debugging/symbolize_elf.inc +58 -106
- package/vendor/abseil-cpp/absl/debugging/symbolize_test.cc +37 -36
- package/vendor/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +4 -4
- package/vendor/abseil-cpp/absl/flags/BUILD.bazel +6 -3
- package/vendor/abseil-cpp/absl/flags/CMakeLists.txt +1 -1
- package/vendor/abseil-cpp/absl/flags/commandlineflag.h +8 -6
- package/vendor/abseil-cpp/absl/flags/commandlineflag_test.cc +1 -1
- package/vendor/abseil-cpp/absl/flags/flag_benchmark.cc +5 -5
- package/vendor/abseil-cpp/absl/flags/flag_test.cc +30 -30
- package/vendor/abseil-cpp/absl/flags/internal/flag.cc +4 -4
- package/vendor/abseil-cpp/absl/flags/internal/flag.h +6 -6
- package/vendor/abseil-cpp/absl/flags/marshalling.h +2 -28
- package/vendor/abseil-cpp/absl/flags/marshalling_test.cc +12 -11
- package/vendor/abseil-cpp/absl/flags/reflection_test.cc +1 -1
- package/vendor/abseil-cpp/absl/functional/BUILD.bazel +26 -1
- package/vendor/abseil-cpp/absl/functional/CMakeLists.txt +29 -1
- package/vendor/abseil-cpp/absl/functional/any_invocable.h +13 -14
- package/vendor/abseil-cpp/absl/functional/any_invocable_test.cc +46 -47
- package/vendor/abseil-cpp/absl/functional/bind_back.h +79 -0
- package/vendor/abseil-cpp/absl/functional/bind_back_test.cc +237 -0
- package/vendor/abseil-cpp/absl/functional/bind_front.h +7 -1
- package/vendor/abseil-cpp/absl/functional/bind_front_test.cc +4 -4
- package/vendor/abseil-cpp/absl/functional/function_ref_test.cc +2 -2
- package/vendor/abseil-cpp/absl/functional/internal/any_invocable.h +28 -28
- package/vendor/abseil-cpp/absl/functional/internal/back_binder.h +95 -0
- package/vendor/abseil-cpp/absl/functional/internal/front_binder.h +4 -4
- package/vendor/abseil-cpp/absl/functional/internal/function_ref.h +2 -2
- package/vendor/abseil-cpp/absl/functional/overload_test.cc +13 -13
- package/vendor/abseil-cpp/absl/hash/BUILD.bazel +1 -2
- package/vendor/abseil-cpp/absl/hash/CMakeLists.txt +1 -2
- package/vendor/abseil-cpp/absl/hash/hash.h +1 -1
- package/vendor/abseil-cpp/absl/hash/hash_test.cc +14 -20
- package/vendor/abseil-cpp/absl/hash/hash_testing.h +11 -9
- package/vendor/abseil-cpp/absl/hash/internal/city.cc +39 -51
- package/vendor/abseil-cpp/absl/hash/internal/hash.cc +165 -47
- package/vendor/abseil-cpp/absl/hash/internal/hash.h +82 -26
- package/vendor/abseil-cpp/absl/hash/internal/low_level_hash_test.cc +36 -1
- package/vendor/abseil-cpp/absl/hash/internal/spy_hash_state.h +8 -5
- package/vendor/abseil-cpp/absl/log/BUILD.bazel +5 -2
- package/vendor/abseil-cpp/absl/log/CMakeLists.txt +5 -3
- package/vendor/abseil-cpp/absl/log/absl_vlog_is_on.h +0 -2
- package/vendor/abseil-cpp/absl/log/internal/BUILD.bazel +15 -1
- package/vendor/abseil-cpp/absl/log/internal/log_message.cc +5 -4
- package/vendor/abseil-cpp/absl/log/internal/log_message.h +14 -0
- package/vendor/abseil-cpp/absl/log/internal/nullstream.h +1 -1
- package/vendor/abseil-cpp/absl/log/internal/proto.cc +13 -0
- package/vendor/abseil-cpp/absl/log/internal/structured_proto.cc +5 -5
- package/vendor/abseil-cpp/absl/log/internal/structured_proto.h +6 -5
- package/vendor/abseil-cpp/absl/log/internal/structured_proto_test.cc +3 -3
- package/vendor/abseil-cpp/absl/log/internal/vlog_config.cc +2 -2
- package/vendor/abseil-cpp/absl/log/internal/vlog_config_benchmark.cc +3 -3
- package/vendor/abseil-cpp/absl/log/log_format_test.cc +19 -2
- package/vendor/abseil-cpp/absl/log/log_modifier_methods_test.cc +18 -0
- package/vendor/abseil-cpp/absl/log/log_streamer.h +29 -2
- package/vendor/abseil-cpp/absl/log/log_streamer_test.cc +18 -0
- package/vendor/abseil-cpp/absl/log/scoped_mock_log_test.cc +1 -1
- package/vendor/abseil-cpp/absl/log/vlog_is_on.h +0 -2
- package/vendor/abseil-cpp/absl/log/vlog_is_on_test.cc +6 -5
- package/vendor/abseil-cpp/absl/memory/memory.h +55 -5
- package/vendor/abseil-cpp/absl/memory/memory_test.cc +55 -1
- package/vendor/abseil-cpp/absl/meta/BUILD.bazel +2 -0
- package/vendor/abseil-cpp/absl/meta/internal/requires.h +1 -1
- package/vendor/abseil-cpp/absl/meta/type_traits.h +119 -55
- package/vendor/abseil-cpp/absl/meta/type_traits_test.cc +7 -7
- package/vendor/abseil-cpp/absl/numeric/int128_test.cc +6 -6
- package/vendor/abseil-cpp/absl/profiling/BUILD.bazel +3 -1
- package/vendor/abseil-cpp/absl/profiling/hashtable.cc +0 -4
- package/vendor/abseil-cpp/absl/profiling/internal/profile_builder.cc +32 -33
- package/vendor/abseil-cpp/absl/profiling/internal/profile_builder.h +25 -2
- package/vendor/abseil-cpp/absl/profiling/internal/sample_recorder_test.cc +8 -5
- package/vendor/abseil-cpp/absl/random/BUILD.bazel +13 -1
- package/vendor/abseil-cpp/absl/random/CMakeLists.txt +23 -2
- package/vendor/abseil-cpp/absl/random/benchmarks.cc +1 -1
- package/vendor/abseil-cpp/absl/random/beta_distribution.h +2 -2
- package/vendor/abseil-cpp/absl/random/bit_gen_ref.h +26 -53
- package/vendor/abseil-cpp/absl/random/bit_gen_ref_test.cc +43 -0
- package/vendor/abseil-cpp/absl/random/discrete_distribution.h +1 -1
- package/vendor/abseil-cpp/absl/random/distributions.h +17 -17
- package/vendor/abseil-cpp/absl/random/distributions_test.cc +4 -4
- package/vendor/abseil-cpp/absl/random/exponential_distribution.h +1 -1
- package/vendor/abseil-cpp/absl/random/internal/BUILD.bazel +4 -2
- package/vendor/abseil-cpp/absl/random/internal/distribution_caller.h +8 -21
- package/vendor/abseil-cpp/absl/random/internal/fast_uniform_bits.h +1 -1
- package/vendor/abseil-cpp/absl/random/internal/generate_real.h +1 -1
- package/vendor/abseil-cpp/absl/random/internal/iostream_state_saver.h +2 -2
- package/vendor/abseil-cpp/absl/random/internal/iostream_state_saver_test.cc +3 -2
- package/vendor/abseil-cpp/absl/random/internal/mock_helpers.h +14 -40
- package/vendor/abseil-cpp/absl/random/internal/nonsecure_base.h +2 -2
- package/vendor/abseil-cpp/absl/random/internal/nonsecure_base_test.cc +2 -2
- package/vendor/abseil-cpp/absl/random/internal/pcg_engine.h +6 -6
- package/vendor/abseil-cpp/absl/random/internal/pcg_engine_test.cc +3 -2
- package/vendor/abseil-cpp/absl/random/internal/randen_detect.cc +6 -6
- package/vendor/abseil-cpp/absl/random/internal/randen_engine.h +2 -2
- package/vendor/abseil-cpp/absl/random/internal/randen_engine_test.cc +3 -2
- package/vendor/abseil-cpp/absl/random/internal/randen_test.cc +3 -2
- package/vendor/abseil-cpp/absl/random/internal/salted_seed_seq.h +6 -5
- package/vendor/abseil-cpp/absl/random/internal/seed_material.cc +4 -4
- package/vendor/abseil-cpp/absl/random/internal/seed_material.h +2 -1
- package/vendor/abseil-cpp/absl/random/internal/traits.h +21 -0
- package/vendor/abseil-cpp/absl/random/internal/traits_test.cc +5 -0
- package/vendor/abseil-cpp/absl/random/internal/uniform_helper.h +23 -23
- package/vendor/abseil-cpp/absl/random/internal/uniform_helper_test.cc +2 -1
- package/vendor/abseil-cpp/absl/random/mocking_access.h +74 -0
- package/vendor/abseil-cpp/absl/random/mocking_bit_gen.h +9 -19
- package/vendor/abseil-cpp/absl/random/uniform_real_distribution.h +1 -1
- package/vendor/abseil-cpp/absl/status/BUILD.bazel +81 -0
- package/vendor/abseil-cpp/absl/status/CMakeLists.txt +91 -0
- package/vendor/abseil-cpp/absl/status/internal/status_internal.cc +63 -18
- package/vendor/abseil-cpp/absl/status/internal/status_internal.h +26 -2
- package/vendor/abseil-cpp/absl/status/internal/status_matchers.h +22 -8
- package/vendor/abseil-cpp/absl/status/internal/statusor_internal.h +43 -43
- package/vendor/abseil-cpp/absl/status/status.cc +62 -70
- package/vendor/abseil-cpp/absl/status/status.h +249 -23
- package/vendor/abseil-cpp/absl/status/status_benchmark.cc +12 -0
- package/vendor/abseil-cpp/absl/status/status_builder.cc +196 -0
- package/vendor/abseil-cpp/absl/status/status_builder.h +978 -0
- package/vendor/abseil-cpp/absl/status/status_builder_test.cc +380 -0
- package/vendor/abseil-cpp/absl/status/status_macros.h +484 -0
- package/vendor/abseil-cpp/absl/status/status_macros_test.cc +634 -0
- package/vendor/abseil-cpp/absl/status/status_matchers.h +2 -1
- package/vendor/abseil-cpp/absl/status/status_matchers_test.cc +3 -4
- package/vendor/abseil-cpp/absl/status/status_payload_printer.h +3 -2
- package/vendor/abseil-cpp/absl/status/status_test.cc +443 -13
- package/vendor/abseil-cpp/absl/status/statusor.h +69 -36
- package/vendor/abseil-cpp/absl/status/statusor_test.cc +132 -35
- package/vendor/abseil-cpp/absl/strings/BUILD.bazel +42 -7
- package/vendor/abseil-cpp/absl/strings/CMakeLists.txt +33 -4
- package/vendor/abseil-cpp/absl/strings/ascii.h +1 -2
- package/vendor/abseil-cpp/absl/strings/atod_manual_test.cc +5 -5
- package/vendor/abseil-cpp/absl/strings/cord.cc +26 -7
- package/vendor/abseil-cpp/absl/strings/cord.h +23 -13
- package/vendor/abseil-cpp/absl/strings/cord_buffer.h +4 -2
- package/vendor/abseil-cpp/absl/strings/cord_test.cc +85 -9
- package/vendor/abseil-cpp/absl/strings/escaping.cc +176 -30
- package/vendor/abseil-cpp/absl/strings/escaping.h +12 -2
- package/vendor/abseil-cpp/absl/strings/escaping_benchmark.cc +1 -3
- package/vendor/abseil-cpp/absl/strings/escaping_test.cc +18 -18
- package/vendor/abseil-cpp/absl/strings/has_absl_stringify_test.cc +2 -2
- package/vendor/abseil-cpp/absl/strings/has_ostream_operator_test.cc +2 -2
- package/vendor/abseil-cpp/absl/strings/internal/append_and_overwrite.h +10 -10
- package/vendor/abseil-cpp/absl/strings/internal/cordz_sample_token_test.cc +1 -1
- package/vendor/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +6 -0
- package/vendor/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +1 -0
- package/vendor/abseil-cpp/absl/strings/internal/escaping.cc +0 -141
- package/vendor/abseil-cpp/absl/strings/internal/escaping.h +2 -26
- package/vendor/abseil-cpp/absl/strings/internal/generic_printer_internal.h +23 -2
- package/vendor/abseil-cpp/absl/strings/internal/generic_printer_test.cc +6 -2
- package/vendor/abseil-cpp/absl/strings/internal/resize_uninitialized.h +31 -24
- package/vendor/abseil-cpp/absl/strings/internal/resize_uninitialized_test.cc +16 -41
- package/vendor/abseil-cpp/absl/strings/internal/stl_type_traits.h +39 -39
- package/vendor/abseil-cpp/absl/strings/internal/str_format/arg.h +14 -22
- package/vendor/abseil-cpp/absl/strings/internal/str_format/bind.h +2 -2
- package/vendor/abseil-cpp/absl/strings/internal/str_format/convert_test.cc +12 -20
- package/vendor/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +510 -307
- package/vendor/abseil-cpp/absl/strings/internal/str_join_internal.h +0 -1
- package/vendor/abseil-cpp/absl/strings/internal/str_split_internal.h +9 -10
- package/vendor/abseil-cpp/absl/strings/internal/string_constant_test.cc +6 -5
- package/vendor/abseil-cpp/absl/strings/internal/stringify_sink.h +12 -0
- package/vendor/abseil-cpp/absl/strings/internal/stringify_stream.h +119 -0
- package/vendor/abseil-cpp/absl/strings/internal/stringify_stream_test.cc +111 -0
- package/vendor/abseil-cpp/absl/strings/numbers.cc +406 -0
- package/vendor/abseil-cpp/absl/strings/numbers.h +4 -0
- package/vendor/abseil-cpp/absl/strings/numbers_test.cc +33 -0
- package/vendor/abseil-cpp/absl/strings/resize_and_overwrite.h +10 -6
- package/vendor/abseil-cpp/absl/strings/str_cat.h +36 -1
- package/vendor/abseil-cpp/absl/strings/str_cat_benchmark.cc +1 -2
- package/vendor/abseil-cpp/absl/strings/str_cat_test.cc +28 -0
- package/vendor/abseil-cpp/absl/strings/str_join_test.cc +4 -4
- package/vendor/abseil-cpp/absl/strings/str_split.h +11 -6
- package/vendor/abseil-cpp/absl/strings/str_split_test.cc +13 -0
- package/vendor/abseil-cpp/absl/strings/substitute.h +2 -2
- package/vendor/abseil-cpp/absl/synchronization/BUILD.bazel +3 -0
- package/vendor/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +21 -0
- package/vendor/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +5 -0
- package/vendor/abseil-cpp/absl/synchronization/mutex.cc +13 -0
- package/vendor/abseil-cpp/absl/synchronization/mutex.h +32 -2
- package/vendor/abseil-cpp/absl/synchronization/mutex_test.cc +17 -3
- package/vendor/abseil-cpp/absl/time/BUILD.bazel +80 -0
- package/vendor/abseil-cpp/absl/time/CMakeLists.txt +73 -0
- package/vendor/abseil-cpp/absl/time/clock.h +3 -0
- package/vendor/abseil-cpp/absl/time/clock_interface.cc +71 -0
- package/vendor/abseil-cpp/absl/time/clock_interface.h +93 -0
- package/vendor/abseil-cpp/absl/time/clock_interface_test.cc +128 -0
- package/vendor/abseil-cpp/absl/time/format.cc +3 -10
- package/vendor/abseil-cpp/absl/time/format_test.cc +12 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +90 -89
- package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_format_test.cc +80 -5
- package/vendor/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.cc +1 -2
- package/vendor/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +10 -15
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/version +1 -1
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/America/Vancouver +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Ho_Chi_Minh +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Phnom_Penh +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Saigon +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Tbilisi +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Asia/Vientiane +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Canada/Pacific +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Chisinau +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/Europe/Tiraspol +0 -0
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zone1970.tab +1 -1
- package/vendor/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo/zonenow.tab +3 -3
- package/vendor/abseil-cpp/absl/time/simulated_clock.cc +225 -0
- package/vendor/abseil-cpp/absl/time/simulated_clock.h +109 -0
- package/vendor/abseil-cpp/absl/time/simulated_clock_test.cc +614 -0
- package/vendor/abseil-cpp/absl/types/BUILD.bazel +116 -0
- package/vendor/abseil-cpp/absl/types/CMakeLists.txt +100 -0
- package/vendor/abseil-cpp/absl/types/any.h +26 -4
- package/vendor/abseil-cpp/absl/types/any_span.h +1067 -0
- package/vendor/abseil-cpp/absl/types/any_span_benchmark.cc +258 -0
- package/vendor/abseil-cpp/absl/types/any_span_test.cc +1210 -0
- package/vendor/abseil-cpp/absl/types/compare.h +4 -4
- package/vendor/abseil-cpp/absl/types/internal/any_span.h +477 -0
- package/vendor/abseil-cpp/absl/types/internal/span.h +5 -6
- package/vendor/abseil-cpp/absl/types/optional.h +30 -3
- package/vendor/abseil-cpp/absl/types/optional_ref.h +295 -0
- package/vendor/abseil-cpp/absl/types/optional_ref_test.cc +370 -0
- package/vendor/abseil-cpp/absl/types/source_location.cc +18 -0
- package/vendor/abseil-cpp/absl/types/source_location.h +172 -0
- package/vendor/abseil-cpp/absl/types/source_location_test.cc +139 -0
- package/vendor/abseil-cpp/absl/types/span.h +19 -23
- package/vendor/abseil-cpp/absl/types/variant.h +75 -18
- package/vendor/abseil-cpp/absl/types/variant_test.cc +23 -23
- package/vendor/abseil-cpp/absl/utility/BUILD.bazel +1 -0
- package/vendor/abseil-cpp/absl/utility/CMakeLists.txt +1 -0
- package/vendor/abseil-cpp/absl/utility/utility.h +99 -16
- package/vendor/abseil-cpp/ci/absl_alternate_options.h +2 -0
- package/vendor/abseil-cpp/ci/linux_arm_clang-latest_libcxx_bazel.sh +10 -4
- package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_asan_bazel.sh +13 -6
- package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_bazel.sh +10 -4
- package/vendor/abseil-cpp/ci/linux_clang-latest_libcxx_tsan_bazel.sh +12 -5
- package/vendor/abseil-cpp/ci/linux_clang-latest_libstdcxx_bazel.sh +9 -2
- package/vendor/abseil-cpp/ci/linux_docker_containers.sh +4 -4
- package/vendor/abseil-cpp/ci/linux_gcc-floor_libstdcxx_bazel.sh +10 -3
- package/vendor/abseil-cpp/ci/linux_gcc-latest_libstdcxx_bazel.sh +8 -2
- package/vendor/abseil-cpp/ci/macos_xcode_bazel.sh +4 -3
- package/vendor/abseil-cpp/ci/macos_xcode_cmake.sh +2 -2
- package/vendor/abseil-cpp/ci/windows_clangcl_bazel.bat +1 -1
- package/vendor/abseil-cpp/ci/windows_msvc_bazel.bat +1 -1
- package/AGENTS.md +0 -131
- package/ARCHITECTURE.md +0 -152
- package/vendor/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer.cc +0 -118
- package/vendor/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer.h +0 -71
- package/vendor/abseil-cpp/absl/debugging/internal/borrowed_fixup_buffer_test.cc +0 -97
|
@@ -60,7 +60,7 @@ struct IsEqualityComparable<
|
|
|
60
60
|
// Detects whether `T` is constructible or convertible from `StatusOr<U>`.
|
|
61
61
|
template <typename T, typename U>
|
|
62
62
|
using IsConstructibleOrConvertibleFromStatusOr =
|
|
63
|
-
|
|
63
|
+
std::disjunction<std::is_constructible<T, StatusOr<U>&>,
|
|
64
64
|
std::is_constructible<T, const StatusOr<U>&>,
|
|
65
65
|
std::is_constructible<T, StatusOr<U>&&>,
|
|
66
66
|
std::is_constructible<T, const StatusOr<U>&&>,
|
|
@@ -73,7 +73,7 @@ using IsConstructibleOrConvertibleFromStatusOr =
|
|
|
73
73
|
// `StatusOr<U>`.
|
|
74
74
|
template <typename T, typename U>
|
|
75
75
|
using IsConstructibleOrConvertibleOrAssignableFromStatusOr =
|
|
76
|
-
|
|
76
|
+
std::disjunction<IsConstructibleOrConvertibleFromStatusOr<T, U>,
|
|
77
77
|
std::is_assignable<T&, StatusOr<U>&>,
|
|
78
78
|
std::is_assignable<T&, const StatusOr<U>&>,
|
|
79
79
|
std::is_assignable<T&, StatusOr<U>&&>,
|
|
@@ -83,7 +83,7 @@ using IsConstructibleOrConvertibleOrAssignableFromStatusOr =
|
|
|
83
83
|
// when `U` is `StatusOr<V>` and `T` is constructible or convertible from `V`.
|
|
84
84
|
template <typename T, typename U>
|
|
85
85
|
struct IsDirectInitializationAmbiguous
|
|
86
|
-
: public
|
|
86
|
+
: public std::conditional_t<
|
|
87
87
|
std::is_same<absl::remove_cvref_t<U>, U>::value, std::false_type,
|
|
88
88
|
IsDirectInitializationAmbiguous<T, absl::remove_cvref_t<U>>> {};
|
|
89
89
|
|
|
@@ -95,7 +95,7 @@ struct IsDirectInitializationAmbiguous<T, absl::StatusOr<V>>
|
|
|
95
95
|
// temporaries.
|
|
96
96
|
// REQUIRES: T and U are references.
|
|
97
97
|
template <typename T, typename U>
|
|
98
|
-
using IsReferenceConversionValid =
|
|
98
|
+
using IsReferenceConversionValid = std::conjunction< //
|
|
99
99
|
std::is_reference<T>, std::is_reference<U>,
|
|
100
100
|
// The references are convertible. This checks for
|
|
101
101
|
// lvalue/rvalue compatibility.
|
|
@@ -108,16 +108,16 @@ using IsReferenceConversionValid = absl::conjunction< //
|
|
|
108
108
|
// Checks against the constraints of the direction initialization, i.e. when
|
|
109
109
|
// `StatusOr<T>::StatusOr(U&&)` should participate in overload resolution.
|
|
110
110
|
template <typename T, typename U>
|
|
111
|
-
using IsDirectInitializationValid =
|
|
111
|
+
using IsDirectInitializationValid = std::disjunction<
|
|
112
112
|
// Short circuits if T is basically U.
|
|
113
113
|
std::is_same<T, absl::remove_cvref_t<U>>, //
|
|
114
114
|
std::conditional_t<
|
|
115
115
|
std::is_reference_v<T>, //
|
|
116
116
|
IsReferenceConversionValid<T, U>,
|
|
117
|
-
|
|
117
|
+
std::negation<std::disjunction<
|
|
118
118
|
std::is_same<absl::StatusOr<T>, absl::remove_cvref_t<U>>,
|
|
119
119
|
std::is_same<absl::Status, absl::remove_cvref_t<U>>,
|
|
120
|
-
std::is_same<
|
|
120
|
+
std::is_same<std::in_place_t, absl::remove_cvref_t<U>>,
|
|
121
121
|
IsDirectInitializationAmbiguous<T, U>>>>>;
|
|
122
122
|
|
|
123
123
|
// This trait detects whether `StatusOr<T>::operator=(U&&)` is ambiguous, which
|
|
@@ -132,7 +132,7 @@ using IsDirectInitializationValid = absl::disjunction<
|
|
|
132
132
|
// s1 = s2; // ambiguous, `s1 = s2.ValueOrDie()` or `s1 = bool(s2)`?
|
|
133
133
|
template <typename T, typename U>
|
|
134
134
|
struct IsForwardingAssignmentAmbiguous
|
|
135
|
-
: public
|
|
135
|
+
: public std::conditional_t<
|
|
136
136
|
std::is_same<absl::remove_cvref_t<U>, U>::value, std::false_type,
|
|
137
137
|
IsForwardingAssignmentAmbiguous<T, absl::remove_cvref_t<U>>> {};
|
|
138
138
|
|
|
@@ -143,91 +143,91 @@ struct IsForwardingAssignmentAmbiguous<T, absl::StatusOr<U>>
|
|
|
143
143
|
// Checks against the constraints of the forwarding assignment, i.e. whether
|
|
144
144
|
// `StatusOr<T>::operator(U&&)` should participate in overload resolution.
|
|
145
145
|
template <typename T, typename U>
|
|
146
|
-
using IsForwardingAssignmentValid =
|
|
146
|
+
using IsForwardingAssignmentValid = std::disjunction<
|
|
147
147
|
// Short circuits if T is basically U.
|
|
148
148
|
std::is_same<T, absl::remove_cvref_t<U>>,
|
|
149
|
-
|
|
149
|
+
std::negation<std::disjunction<
|
|
150
150
|
std::is_same<absl::StatusOr<T>, absl::remove_cvref_t<U>>,
|
|
151
151
|
std::is_same<absl::Status, absl::remove_cvref_t<U>>,
|
|
152
|
-
std::is_same<
|
|
152
|
+
std::is_same<std::in_place_t, absl::remove_cvref_t<U>>,
|
|
153
153
|
IsForwardingAssignmentAmbiguous<T, U>>>>;
|
|
154
154
|
|
|
155
155
|
template <bool Value, typename T>
|
|
156
|
-
using Equality = std::conditional_t<Value, T,
|
|
156
|
+
using Equality = std::conditional_t<Value, T, std::negation<T>>;
|
|
157
157
|
|
|
158
158
|
template <bool Explicit, typename T, typename U, bool Lifetimebound>
|
|
159
|
-
using IsConstructionValid =
|
|
159
|
+
using IsConstructionValid = std::conjunction<
|
|
160
160
|
Equality<Lifetimebound,
|
|
161
|
-
|
|
161
|
+
std::disjunction<
|
|
162
162
|
std::is_reference<T>,
|
|
163
163
|
type_traits_internal::IsLifetimeBoundAssignment<T, U>>>,
|
|
164
164
|
IsDirectInitializationValid<T, U&&>, std::is_constructible<T, U&&>,
|
|
165
165
|
Equality<!Explicit, std::is_convertible<U&&, T>>,
|
|
166
|
-
|
|
166
|
+
std::disjunction<
|
|
167
167
|
std::is_same<T, absl::remove_cvref_t<U>>,
|
|
168
|
-
|
|
168
|
+
std::conjunction<
|
|
169
169
|
std::conditional_t<
|
|
170
170
|
Explicit,
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
171
|
+
std::negation<std::is_constructible<absl::Status, U&&>>,
|
|
172
|
+
std::negation<std::is_convertible<U&&, absl::Status>>>,
|
|
173
|
+
std::negation<
|
|
174
174
|
internal_statusor::HasConversionOperatorToStatusOr<T, U&&>>>>>;
|
|
175
175
|
|
|
176
176
|
template <typename T, typename U, bool Lifetimebound>
|
|
177
|
-
using IsAssignmentValid =
|
|
177
|
+
using IsAssignmentValid = std::conjunction<
|
|
178
178
|
Equality<Lifetimebound,
|
|
179
|
-
|
|
179
|
+
std::disjunction<
|
|
180
180
|
std::is_reference<T>,
|
|
181
181
|
type_traits_internal::IsLifetimeBoundAssignment<T, U>>>,
|
|
182
182
|
std::conditional_t<std::is_reference_v<T>,
|
|
183
183
|
IsReferenceConversionValid<T, U&&>,
|
|
184
|
-
|
|
184
|
+
std::conjunction<std::is_constructible<T, U&&>,
|
|
185
185
|
std::is_assignable<T&, U&&>>>,
|
|
186
|
-
|
|
186
|
+
std::disjunction<
|
|
187
187
|
std::is_same<T, absl::remove_cvref_t<U>>,
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
188
|
+
std::conjunction<
|
|
189
|
+
std::negation<std::is_convertible<U&&, absl::Status>>,
|
|
190
|
+
std::negation<HasConversionOperatorToStatusOr<T, U&&>>>>,
|
|
191
191
|
IsForwardingAssignmentValid<T, U&&>>;
|
|
192
192
|
|
|
193
193
|
template <bool Explicit, typename T, typename U>
|
|
194
|
-
using IsConstructionFromStatusValid =
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
194
|
+
using IsConstructionFromStatusValid = std::conjunction<
|
|
195
|
+
std::negation<std::is_same<absl::StatusOr<T>, absl::remove_cvref_t<U>>>,
|
|
196
|
+
std::negation<std::is_same<T, absl::remove_cvref_t<U>>>,
|
|
197
|
+
std::negation<std::is_same<std::in_place_t, absl::remove_cvref_t<U>>>,
|
|
198
198
|
Equality<!Explicit, std::is_convertible<U, absl::Status>>,
|
|
199
199
|
std::is_constructible<absl::Status, U>,
|
|
200
|
-
|
|
200
|
+
std::negation<HasConversionOperatorToStatusOr<T, U>>>;
|
|
201
201
|
|
|
202
202
|
template <bool Explicit, typename T, typename U, bool Lifetimebound,
|
|
203
203
|
typename UQ>
|
|
204
|
-
using IsConstructionFromStatusOrValid =
|
|
205
|
-
|
|
204
|
+
using IsConstructionFromStatusOrValid = std::conjunction<
|
|
205
|
+
std::negation<std::is_same<T, U>>,
|
|
206
206
|
// If `T` is a reference, then U must be a compatible one.
|
|
207
|
-
|
|
207
|
+
std::disjunction<std::negation<std::is_reference<T>>,
|
|
208
208
|
IsReferenceConversionValid<T, U>>,
|
|
209
209
|
Equality<Lifetimebound,
|
|
210
210
|
type_traits_internal::IsLifetimeBoundAssignment<T, U>>,
|
|
211
211
|
std::is_constructible<T, UQ>,
|
|
212
212
|
Equality<!Explicit, std::is_convertible<UQ, T>>,
|
|
213
|
-
|
|
213
|
+
std::negation<IsConstructibleOrConvertibleFromStatusOr<T, U>>>;
|
|
214
214
|
|
|
215
215
|
template <typename T, typename U, bool Lifetimebound>
|
|
216
|
-
using IsStatusOrAssignmentValid =
|
|
217
|
-
|
|
216
|
+
using IsStatusOrAssignmentValid = std::conjunction<
|
|
217
|
+
std::negation<std::is_same<T, absl::remove_cvref_t<U>>>,
|
|
218
218
|
Equality<Lifetimebound,
|
|
219
219
|
type_traits_internal::IsLifetimeBoundAssignment<T, U>>,
|
|
220
220
|
std::is_constructible<T, U>, std::is_assignable<T, U>,
|
|
221
|
-
|
|
221
|
+
std::negation<IsConstructibleOrConvertibleOrAssignableFromStatusOr<
|
|
222
222
|
T, absl::remove_cvref_t<U>>>>;
|
|
223
223
|
|
|
224
224
|
template <typename T, typename U, bool Lifetimebound>
|
|
225
|
-
using IsValueOrValid =
|
|
225
|
+
using IsValueOrValid = std::conjunction<
|
|
226
226
|
// If `T` is a reference, then U must be a compatible one.
|
|
227
|
-
|
|
227
|
+
std::disjunction<std::negation<std::is_reference<T>>,
|
|
228
228
|
IsReferenceConversionValid<T, U>>,
|
|
229
229
|
Equality<Lifetimebound,
|
|
230
|
-
|
|
230
|
+
std::disjunction<
|
|
231
231
|
std::is_reference<T>,
|
|
232
232
|
type_traits_internal::IsLifetimeBoundAssignment<T, U>>>>;
|
|
233
233
|
|
|
@@ -325,13 +325,13 @@ class StatusOrData {
|
|
|
325
325
|
}
|
|
326
326
|
|
|
327
327
|
template <typename... Args>
|
|
328
|
-
explicit StatusOrData(
|
|
328
|
+
explicit StatusOrData(std::in_place_t, Args&&... args)
|
|
329
329
|
: data_(std::forward<Args>(args)...) {
|
|
330
330
|
MakeStatus();
|
|
331
331
|
}
|
|
332
332
|
|
|
333
333
|
template <typename U,
|
|
334
|
-
|
|
334
|
+
std::enable_if_t<std::is_constructible<absl::Status, U&&>::value,
|
|
335
335
|
int> = 0>
|
|
336
336
|
explicit StatusOrData(U&& v) : status_(std::forward<U>(v)) {
|
|
337
337
|
EnsureNotOk();
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
#include "absl/strings/str_format.h"
|
|
38
38
|
#include "absl/strings/str_split.h"
|
|
39
39
|
#include "absl/strings/string_view.h"
|
|
40
|
-
#include "absl/types/
|
|
40
|
+
#include "absl/types/source_location.h"
|
|
41
41
|
|
|
42
42
|
namespace absl {
|
|
43
43
|
ABSL_NAMESPACE_BEGIN
|
|
@@ -105,11 +105,36 @@ const std::string* absl_nonnull Status::MovedFromString() {
|
|
|
105
105
|
return kMovedFrom.get();
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
108
|
+
absl::Status absl::Status::MakeNonOkStatusWithOkCode(
|
|
109
|
+
absl::string_view message) {
|
|
110
|
+
return absl::Status(
|
|
111
|
+
absl::Status::PointerToRep(new absl::status_internal::StatusRep(
|
|
112
|
+
absl::StatusCode::kOk, message, nullptr)));
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
uintptr_t Status::MakeRep(uintptr_t inlined_rep, absl::string_view msg,
|
|
116
|
+
absl::SourceLocation loc) {
|
|
117
|
+
bool ok = inlined_rep == CodeToInlinedRep(absl::StatusCode::kOk);
|
|
118
|
+
if (ok) return inlined_rep;
|
|
119
|
+
if (msg.empty()
|
|
120
|
+
) {
|
|
121
|
+
return inlined_rep;
|
|
122
|
+
}
|
|
123
|
+
auto* rep = new status_internal::StatusRep(InlinedRepToCode(inlined_rep), msg,
|
|
124
|
+
nullptr);
|
|
125
|
+
if (loc.file_name()[0] != '\0') {
|
|
126
|
+
rep->AddSourceLocation(loc);
|
|
112
127
|
}
|
|
128
|
+
return PointerToRep(rep);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
uintptr_t Status::AddSourceLocationImpl(uintptr_t rep,
|
|
132
|
+
absl::SourceLocation loc) {
|
|
133
|
+
if (IsInlined(rep)) return rep;
|
|
134
|
+
if (loc.file_name()[0] == '\0') return rep;
|
|
135
|
+
status_internal::StatusRep* rep_ptr = PrepareToModify(rep);
|
|
136
|
+
rep_ptr->AddSourceLocation(loc);
|
|
137
|
+
return PointerToRep(rep_ptr);
|
|
113
138
|
}
|
|
114
139
|
|
|
115
140
|
status_internal::StatusRep* absl_nonnull Status::PrepareToModify(
|
|
@@ -133,69 +158,35 @@ std::ostream& operator<<(std::ostream& os, const Status& x) {
|
|
|
133
158
|
return os;
|
|
134
159
|
}
|
|
135
160
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
Status
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
Status
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
Status
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
Status
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
Status
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
return Status(absl::StatusCode::kInvalidArgument, message);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
Status NotFoundError(absl::string_view message) {
|
|
169
|
-
return Status(absl::StatusCode::kNotFound, message);
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
Status OutOfRangeError(absl::string_view message) {
|
|
173
|
-
return Status(absl::StatusCode::kOutOfRange, message);
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
Status PermissionDeniedError(absl::string_view message) {
|
|
177
|
-
return Status(absl::StatusCode::kPermissionDenied, message);
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
Status ResourceExhaustedError(absl::string_view message) {
|
|
181
|
-
return Status(absl::StatusCode::kResourceExhausted, message);
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
Status UnauthenticatedError(absl::string_view message) {
|
|
185
|
-
return Status(absl::StatusCode::kUnauthenticated, message);
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
Status UnavailableError(absl::string_view message) {
|
|
189
|
-
return Status(absl::StatusCode::kUnavailable, message);
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
Status UnimplementedError(absl::string_view message) {
|
|
193
|
-
return Status(absl::StatusCode::kUnimplemented, message);
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
Status UnknownError(absl::string_view message) {
|
|
197
|
-
return Status(absl::StatusCode::kUnknown, message);
|
|
198
|
-
}
|
|
161
|
+
namespace status_internal {
|
|
162
|
+
// We use an int in the template parameter to shorten mangled names.
|
|
163
|
+
template <int error_code>
|
|
164
|
+
Status MakeErrorImpl(string_view message, SourceLocation loc) {
|
|
165
|
+
return Status(static_cast<StatusCode>(error_code), message, loc);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
// Explicit instantiation for all the error codes.
|
|
169
|
+
// If we add more error code, we need to add their values on this list.
|
|
170
|
+
// Using ints here instead of static_cast<int>(StatusCode::kFoo) makes it easier
|
|
171
|
+
// to see that the list is complete.
|
|
172
|
+
template Status MakeErrorImpl<0>(string_view, SourceLocation);
|
|
173
|
+
template Status MakeErrorImpl<1>(string_view, SourceLocation);
|
|
174
|
+
template Status MakeErrorImpl<2>(string_view, SourceLocation);
|
|
175
|
+
template Status MakeErrorImpl<3>(string_view, SourceLocation);
|
|
176
|
+
template Status MakeErrorImpl<4>(string_view, SourceLocation);
|
|
177
|
+
template Status MakeErrorImpl<5>(string_view, SourceLocation);
|
|
178
|
+
template Status MakeErrorImpl<6>(string_view, SourceLocation);
|
|
179
|
+
template Status MakeErrorImpl<7>(string_view, SourceLocation);
|
|
180
|
+
template Status MakeErrorImpl<8>(string_view, SourceLocation);
|
|
181
|
+
template Status MakeErrorImpl<9>(string_view, SourceLocation);
|
|
182
|
+
template Status MakeErrorImpl<10>(string_view, SourceLocation);
|
|
183
|
+
template Status MakeErrorImpl<11>(string_view, SourceLocation);
|
|
184
|
+
template Status MakeErrorImpl<12>(string_view, SourceLocation);
|
|
185
|
+
template Status MakeErrorImpl<13>(string_view, SourceLocation);
|
|
186
|
+
template Status MakeErrorImpl<14>(string_view, SourceLocation);
|
|
187
|
+
template Status MakeErrorImpl<15>(string_view, SourceLocation);
|
|
188
|
+
template Status MakeErrorImpl<16>(string_view, SourceLocation);
|
|
189
|
+
} // namespace status_internal
|
|
199
190
|
|
|
200
191
|
bool IsAborted(const Status& status) {
|
|
201
192
|
return status.code() == absl::StatusCode::kAborted;
|
|
@@ -405,9 +396,10 @@ std::string MessageForErrnoToStatus(int error_number,
|
|
|
405
396
|
}
|
|
406
397
|
} // namespace
|
|
407
398
|
|
|
408
|
-
Status ErrnoToStatus(int error_number, absl::string_view message
|
|
399
|
+
Status ErrnoToStatus(int error_number, absl::string_view message,
|
|
400
|
+
absl::SourceLocation loc) {
|
|
409
401
|
return Status(ErrnoToStatusCode(error_number),
|
|
410
|
-
MessageForErrnoToStatus(error_number, message));
|
|
402
|
+
MessageForErrnoToStatus(error_number, message), loc);
|
|
411
403
|
}
|
|
412
404
|
|
|
413
405
|
const char* absl_nonnull StatusMessageAsCStr(const Status& status) {
|