protovalidate 0.1.0.beta1
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.
- checksums.yaml +7 -0
- data/.yardopts +8 -0
- data/CHANGELOG.md +5 -0
- data/LICENSE.txt +201 -0
- data/NOTICE.md +30 -0
- data/README.md +93 -0
- data/Rakefile +32 -0
- data/ext/protovalidate/Cargo.lock +342 -0
- data/ext/protovalidate/Cargo.toml +27 -0
- data/ext/protovalidate/build.rs +4 -0
- data/ext/protovalidate/extconf.rb +8 -0
- data/ext/protovalidate/src/lib.rs +161 -0
- data/ext/protovalidate/sys/Cargo.toml +11 -0
- data/ext/protovalidate/sys/build.rs +218 -0
- data/ext/protovalidate/sys/filelists/absl.txt +126 -0
- data/ext/protovalidate/sys/filelists/antlr4.txt +139 -0
- data/ext/protovalidate/sys/filelists/celcpp.txt +199 -0
- data/ext/protovalidate/sys/filelists/protobuf.txt +83 -0
- data/ext/protovalidate/sys/filelists/protovalidate.txt +14 -0
- data/ext/protovalidate/sys/filelists/re2.txt +25 -0
- data/ext/protovalidate/sys/gen/buf/validate/validate.pb.cc +23621 -0
- data/ext/protovalidate/sys/gen/buf/validate/validate.pb.h +27800 -0
- data/ext/protovalidate/sys/gen/cel/expr/checked.pb.cc +6286 -0
- data/ext/protovalidate/sys/gen/cel/expr/checked.pb.h +6412 -0
- data/ext/protovalidate/sys/gen/cel/expr/syntax.pb.cc +7423 -0
- data/ext/protovalidate/sys/gen/cel/expr/syntax.pb.h +7510 -0
- data/ext/protovalidate/sys/gen/cel/expr/value.pb.cc +2512 -0
- data/ext/protovalidate/sys/gen/cel/expr/value.pb.h +2589 -0
- data/ext/protovalidate/sys/gen/internal/empty_descriptor_set_embed.inc +1 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelBaseVisitor.cpp +9 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelBaseVisitor.h +167 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelLexer.cpp +308 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelLexer.h +57 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelParser.cpp +2484 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelParser.h +697 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelVisitor.cpp +9 -0
- data/ext/protovalidate/sys/gen/parser/internal/CelVisitor.h +98 -0
- data/ext/protovalidate/sys/shim/pv_shim.cc +260 -0
- data/ext/protovalidate/sys/shim/pv_shim.h +84 -0
- data/ext/protovalidate/sys/src/lib.rs +176 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/LICENSE +203 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/algorithm/algorithm.h +96 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/algorithm/container.h +2011 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/attributes.h +1100 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/call_once.h +228 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/casts.cc +61 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/casts.h +313 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/config.h +898 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/const_init.h +76 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/dynamic_annotations.h +480 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/fast_type_id.h +73 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/atomic_hook.h +200 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/atomic_hook_test_helper.h +34 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/cycleclock.cc +72 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/cycleclock.h +144 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/cycleclock_config.h +55 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +170 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h +398 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/endian.h +279 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/errno_saver.h +43 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/exception_safety_testing.h +1112 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/exception_testing.h +42 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/hardening.h +136 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/hide_ptr.h +51 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/iterator_traits.h +75 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/iterator_traits_test_helper.h +97 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +667 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +133 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h +196 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/nullability_traits.h +71 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/per_thread_tls.h +52 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/poison.h +59 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/pretty_function.h +33 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +279 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/raw_logging.h +217 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/scheduling_mode.h +58 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/scoped_set_env.h +45 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock.cc +225 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock.h +310 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock_akaros.inc +35 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +71 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock_posix.inc +46 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock_wait.cc +81 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +95 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +40 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/strerror.cc +88 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/strerror.h +39 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +493 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/sysinfo.h +74 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +163 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/thread_identity.h +325 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/tracing.cc +39 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/tracing.h +81 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/tsan_mutex_interface.h +68 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/unaligned_access.h +89 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +134 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +118 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +62 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/log_severity.cc +56 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/log_severity.h +185 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/macros.h +259 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/no_destructor.h +191 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/nullability.h +318 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/optimization.h +311 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/options.h +212 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/policy_checks.h +115 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/port.h +25 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/prefetch.h +209 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/thread_annotations.h +333 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/throw_delegate.cc +205 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/base/throw_delegate.h +65 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/cleanup/cleanup.h +143 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/cleanup/internal/cleanup.h +100 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/btree_map.h +941 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/btree_set.h +872 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/chunked_queue.h +757 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/fixed_array.h +548 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/flat_hash_map.h +714 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/flat_hash_set.h +604 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/hash_container_defaults.h +45 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/inlined_vector.h +1025 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/btree.h +3157 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/btree_container.h +875 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/chunked_queue.h +173 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/common.h +302 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +151 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +275 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/container_memory.h +571 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +281 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hash_generator_testing.h +172 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hash_policy_testing.h +173 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +195 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hashtable_control_bytes.h +527 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hashtable_debug.h +102 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h +85 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +316 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +294 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +31 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/heterogeneous_lookup_testing.h +80 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +1094 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/layout.h +828 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/node_slot_policy.h +95 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +380 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +2110 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +4056 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl.h +79 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/test_allocator.h +387 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/test_instance_tracker.h +274 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/internal/tracked.h +83 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/linked_hash_map.h +666 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/linked_hash_set.h +527 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/node_hash_map.h +710 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/container/node_hash_set.h +603 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/crc32c.cc +95 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/crc32c.h +192 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +359 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/cpu_detect.h +69 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc.cc +435 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc.h +83 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +319 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc32c.h +39 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc32c_inline.h +72 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +131 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h +159 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +161 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_memcpy.h +122 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +78 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_arm_combined.cc +459 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +93 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +824 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +81 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +195 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/failure_signal_handler.h +121 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +98 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.h +32 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/addresses.h +57 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/bounded_utf8_length_sequence.h +126 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.cc +258 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h +55 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +2958 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/demangle.h +76 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.cc +925 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/demangle_rust.h +50 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +413 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +141 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/examine_stack.cc +334 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/examine_stack.h +70 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stack_consumption.h +50 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +299 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +148 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +96 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +121 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +121 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +270 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +208 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +25 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +81 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +410 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +163 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.cc +70 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/utf8_for_code_point.h +47 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +209 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/internal/vdso_support.h +158 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/leak_check.cc +73 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/leak_check.h +150 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/stacktrace.cc +204 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/stacktrace.h +259 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/symbolize.cc +62 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/symbolize.h +99 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +102 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +1708 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +63 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +40 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +99 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/commandlineflag.h +220 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/config.h +68 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/declare.h +77 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/flag.h +307 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/commandlineflag.h +68 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/flag.h +969 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/parse.h +70 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/path_util.h +62 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/private_handle_accessor.h +64 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/program_name.h +50 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/registry.h +98 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/sequence_lock.h +187 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/internal/usage.h +106 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/marshalling.h +335 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/parse.h +130 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/reflection.h +90 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/usage.h +43 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/flags/usage_config.h +135 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/any_invocable.h +335 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/bind_back.h +79 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/bind_front.h +200 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/function_ref.h +249 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +787 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/internal/back_binder.h +95 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/internal/front_binder.h +93 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/internal/function_ref.h +151 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/functional/overload.h +72 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/hash.h +466 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/hash_testing.h +382 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/internal/city.cc +337 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/internal/city.h +78 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/internal/hash.cc +430 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/internal/hash.h +1619 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/internal/spy_hash_state.h +289 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/hash/internal/weakly_mixed_integer.h +38 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/absl_check.h +117 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/absl_log.h +115 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +93 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/check.h +210 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/check_test_impl.inc +1035 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/die_if_null.cc +34 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/die_if_null.h +97 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/flags.h +43 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/globals.cc +178 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/globals.h +230 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/initialize.h +45 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/append_truncated.h +75 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/check_impl.h +151 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/check_op.cc +147 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/check_op.h +565 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/conditions.cc +85 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/conditions.h +247 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/config.h +45 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/container.h +312 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/flags.h +59 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/fnmatch.cc +73 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/fnmatch.h +35 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/globals.cc +145 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/globals.h +101 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/log_format.cc +205 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/log_format.h +78 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/log_impl.h +280 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/log_message.cc +788 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/log_message.h +469 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/log_sink_set.cc +296 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/log_sink_set.h +54 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/nullguard.cc +35 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/nullguard.h +88 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/nullstream.h +128 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/proto.cc +231 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/proto.h +298 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/strip.h +99 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/structured.h +160 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/structured_proto.cc +115 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/structured_proto.h +108 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/test_actions.h +90 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/test_helpers.h +71 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/test_matchers.h +94 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/vlog_config.cc +347 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/vlog_config.h +164 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/internal/voidify.h +50 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log.h +378 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log_basic_test_impl.inc +654 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log_entry.cc +263 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log_entry.h +223 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log_sink.cc +23 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log_sink.h +71 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log_sink_registry.h +64 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/log_streamer.h +208 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/scoped_mock_log.h +203 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/structured.h +75 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/log/vlog_is_on.h +72 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/memory/memory.h +328 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/meta/internal/constexpr_testing.h +73 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/meta/internal/requires.h +67 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/meta/type_traits.h +646 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/numeric/bits.h +262 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/numeric/int128.cc +344 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/numeric/int128.h +1224 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +303 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +347 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/numeric/internal/bits.h +394 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/numeric/internal/representation.h +55 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/profiling/hashtable.h +40 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/profiling/internal/exponential_biased.cc +93 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/profiling/internal/exponential_biased.h +130 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/profiling/internal/periodic_sampler.h +211 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/profiling/internal/profile_builder.h +161 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +253 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +202 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/beta_distribution.h +429 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/bit_gen_ref.h +160 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/discrete_distribution.h +249 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/distributions.h +450 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/exponential_distribution.h +166 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/gaussian_distribution.h +276 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/chi_square.h +89 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +83 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/distribution_test_util.h +113 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/entropy_pool.h +35 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/explicit_seed_seq.h +92 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +271 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/fastmath.h +57 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/generate_real.h +144 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/iostream_state_saver.h +248 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/mock_helpers.h +134 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/mock_overload_set.h +122 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/mock_validators.h +98 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/nanobenchmark.h +172 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +160 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +287 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/platform.h +158 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/randen.h +96 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/randen_detect.h +33 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/randen_engine.h +265 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/randen_hwaes.h +50 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/randen_slow.h +40 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/randen_traits.h +88 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +166 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/seed_material.h +105 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/sequence_urbg.h +60 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/traits.h +170 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +244 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +95 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +253 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/mock_distributions.h +269 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/mocking_access.h +74 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/mocking_bit_gen.h +227 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/poisson_distribution.h +262 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/random.h +224 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/seed_gen_exception.h +55 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/seed_sequences.h +112 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +276 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +204 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/random/zipf_distribution.h +273 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/internal/status_internal.cc +296 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/internal/status_internal.h +157 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/internal/status_matchers.h +260 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +657 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/status.cc +413 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/status.h +1174 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/status_builder.h +978 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/status_macros.h +484 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/status_matchers.h +167 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/status_payload_printer.cc +36 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/status_payload_printer.h +53 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/statusor.cc +106 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/status/statusor.h +776 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/ascii.cc +296 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/ascii.h +288 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/charconv.cc +1442 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/charconv.h +123 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/charset.h +163 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/cord.cc +1601 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/cord.h +1773 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/cord_analysis.cc +196 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/cord_analysis.h +63 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/cord_buffer.h +574 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/cord_test_helpers.h +122 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/cordz_test_helpers.h +152 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/escaping.cc +1183 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/escaping.h +195 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/has_absl_stringify.h +64 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/has_ostream_operator.h +42 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/append_and_overwrite.h +93 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +357 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +433 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +504 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/charconv_parse.h +99 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_data_edge.h +63 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +70 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +942 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +1237 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +944 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +187 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +267 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +69 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +212 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +64 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.h +47 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.cc +56 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.h +103 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +195 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cord_rep_test_util.h +205 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +102 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +87 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +165 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +98 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +424 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +295 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_sample_token.h +97 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +88 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_update_scope.h +71 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +123 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +99 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +35 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/escaping.cc +68 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/escaping.h +35 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/escaping_test_common.h +133 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/generic_printer.h +115 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/generic_printer_internal.h +444 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/memutil.cc +48 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/memutil.h +40 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/numbers_test_common.h +184 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +43 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/ostringstream.h +114 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/pow10_helper.h +40 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +114 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/stl_type_traits.h +248 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +615 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +653 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +275 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +237 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +98 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +357 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +53 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +456 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +2148 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.h +37 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/output.cc +74 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/output.h +97 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +140 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +271 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +340 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +524 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/string_constant.h +67 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/stringify_sink.cc +28 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/stringify_sink.h +69 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/stringify_stream.h +119 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/utf8.cc +148 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/internal/utf8.h +64 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/match.cc +133 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/match.h +129 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/numbers.cc +1636 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/numbers.h +363 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/resize_and_overwrite.h +198 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_cat.cc +247 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_cat.h +668 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_format.h +887 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_join.h +301 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_replace.cc +91 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_replace.h +222 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_split.cc +144 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/str_split.h +587 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/string_view.h +60 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/strip.h +99 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/substitute.cc +187 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/strings/substitute.h +769 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/barrier.cc +52 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/barrier.h +79 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +73 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +107 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +173 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +56 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/futex.h +177 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/futex_waiter.cc +107 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/futex_waiter.h +63 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +714 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +146 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.cc +220 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +178 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +106 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +124 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/pthread_waiter.cc +163 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/pthread_waiter.h +60 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/sem_waiter.cc +118 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/sem_waiter.h +65 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.cc +87 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.h +56 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/thread_pool.h +96 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +69 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/waiter_base.cc +38 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/waiter_base.h +90 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.cc +147 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.h +72 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/mutex.cc +2833 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/mutex.h +1352 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/notification.cc +85 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/synchronization/notification.h +133 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/civil_time.cc +200 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/civil_time.h +589 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/clock.cc +603 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/clock.h +81 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/clock_interface.h +93 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/duration.cc +918 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/format.cc +155 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time.h +332 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +644 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +460 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/zone_info_source.h +102 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/civil_time_detail.cc +94 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/test_time_zone_names.h +33 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +140 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.h +52 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1069 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc +47 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +80 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +115 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +97 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +1070 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +128 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +333 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h +60 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +217 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.cc +185 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_name_win.h +37 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.cc +159 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h +132 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +115 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +116 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/get_current_time_chrono.inc +31 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/get_current_time_posix.inc +24 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/internal/test_util.h +33 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/simulated_clock.h +109 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/time.cc +507 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/time/time.h +1926 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/any.h +66 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/any_span.h +1067 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/compare.h +506 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/internal/any_span.h +477 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/internal/span.h +140 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/optional.h +68 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/optional_ref.h +295 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/source_location.cc +18 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/source_location.h +172 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/span.h +827 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/types/variant.h +139 -0
- data/ext/protovalidate/sys/third_party/abseil-cpp/absl/utility/utility.h +151 -0
- data/ext/protovalidate/sys/third_party/antlr4/LICENSE.txt +28 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRErrorListener.cpp +10 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRErrorListener.h +167 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRErrorStrategy.cpp +10 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRErrorStrategy.h +121 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRFileStream.cpp +23 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRFileStream.h +30 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRInputStream.cpp +180 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ANTLRInputStream.h +79 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/BailErrorStrategy.cpp +61 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/BailErrorStrategy.h +59 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/BaseErrorListener.cpp +25 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/BaseErrorListener.h +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/BufferedTokenStream.cpp +414 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/BufferedTokenStream.h +200 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CharStream.cpp +11 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CharStream.h +37 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CommonToken.cpp +193 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CommonToken.h +158 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CommonTokenFactory.cpp +39 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CommonTokenFactory.h +74 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CommonTokenStream.cpp +78 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/CommonTokenStream.h +79 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ConsoleErrorListener.cpp +15 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ConsoleErrorListener.h +35 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/DefaultErrorStrategy.cpp +336 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/DefaultErrorStrategy.h +466 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/DiagnosticErrorListener.cpp +84 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/DiagnosticErrorListener.h +80 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Exceptions.cpp +64 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Exceptions.h +99 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/FailedPredicateException.cpp +52 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/FailedPredicateException.h +32 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/FlatHashMap.h +57 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/FlatHashSet.h +57 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/InputMismatchException.cpp +18 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/InputMismatchException.h +24 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/IntStream.cpp +12 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/IntStream.h +218 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/InterpreterRuleContext.cpp +19 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/InterpreterRuleContext.h +45 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Lexer.cpp +294 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Lexer.h +196 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/LexerInterpreter.cpp +60 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/LexerInterpreter.h +46 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/LexerNoViableAltException.cpp +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/LexerNoViableAltException.h +31 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ListTokenSource.cpp +92 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ListTokenSource.h +88 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/NoViableAltException.cpp +46 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/NoViableAltException.h +42 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Parser.cpp +670 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Parser.h +461 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ParserInterpreter.cpp +294 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ParserInterpreter.h +173 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ParserRuleContext.cpp +138 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ParserRuleContext.h +147 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ProxyErrorListener.cpp +53 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/ProxyErrorListener.h +38 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RecognitionException.cpp +65 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RecognitionException.h +98 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Recognizer.cpp +157 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Recognizer.h +160 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RuleContext.cpp +144 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RuleContext.h +141 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RuleContextWithAltNum.cpp +27 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RuleContextWithAltNum.h +32 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RuntimeMetaData.cpp +54 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/RuntimeMetaData.h +155 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Token.cpp +9 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Token.h +92 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/TokenFactory.h +30 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/TokenSource.cpp +9 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/TokenSource.h +85 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/TokenStream.cpp +11 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/TokenStream.h +137 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/TokenStreamRewriter.cpp +428 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/TokenStreamRewriter.h +295 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/UnbufferedCharStream.cpp +208 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/UnbufferedCharStream.h +117 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/UnbufferedTokenStream.cpp +270 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/UnbufferedTokenStream.h +115 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Version.h +42 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Vocabulary.cpp +64 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/Vocabulary.h +177 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/WritableToken.cpp +9 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/WritableToken.h +23 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/antlr4-common.h +101 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/antlr4-runtime.h +168 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATN.cpp +159 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATN.h +133 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNConfig.cpp +106 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNConfig.h +157 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNConfigSet.cpp +233 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNConfigSet.h +157 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.cpp +39 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.h +48 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNDeserializer.cpp +628 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNDeserializer.h +32 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNSimulator.cpp +33 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNSimulator.h +71 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNState.cpp +56 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNState.h +139 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNStateType.cpp +33 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNStateType.h +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ATNType.h +20 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ActionTransition.cpp +29 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ActionTransition.h +35 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/AmbiguityInfo.cpp +16 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/AmbiguityInfo.h +68 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.cpp +129 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.h +51 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/AtomTransition.cpp +27 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/AtomTransition.h +33 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/BasicBlockStartState.h +24 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/BasicState.h +23 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/BlockEndState.h +26 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/BlockStartState.h +30 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.cpp +14 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.h +47 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/DecisionEventInfo.cpp +14 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/DecisionEventInfo.h +70 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/DecisionInfo.cpp +25 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/DecisionInfo.h +227 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/DecisionState.cpp +12 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/DecisionState.h +34 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/EpsilonTransition.cpp +31 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/EpsilonTransition.h +42 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ErrorInfo.cpp +15 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ErrorInfo.h +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/HashUtils.h +18 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LL1Analyzer.cpp +189 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LL1Analyzer.h +76 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerATNConfig.cpp +67 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerATNConfig.h +44 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerATNSimulator.cpp +621 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerATNSimulator.h +199 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerAction.cpp +15 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerAction.h +100 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerActionExecutor.cpp +108 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerActionExecutor.h +128 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerActionType.h +57 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerChannelAction.cpp +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerChannelAction.h +59 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerCustomAction.cpp +45 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerCustomAction.h +75 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.cpp +50 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.h +76 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerModeAction.cpp +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerModeAction.h +57 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerMoreAction.cpp +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerMoreAction.h +53 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerPopModeAction.cpp +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerPopModeAction.h +53 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerPushModeAction.cpp +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerPushModeAction.h +57 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerSkipAction.cpp +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerSkipAction.h +51 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerTypeAction.cpp +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LexerTypeAction.h +51 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.cpp +16 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.h +42 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/LoopEndState.h +26 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/NotSetTransition.cpp +22 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/NotSetTransition.h +27 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.cpp +16 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.h +25 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ParseInfo.cpp +102 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ParseInfo.h +102 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ParserATNSimulator.cpp +1413 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ParserATNSimulator.h +911 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ParserATNSimulatorOptions.h +50 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PlusBlockStartState.h +29 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PlusLoopbackState.h +25 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.cpp +23 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.h +35 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.cpp +17 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.h +62 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredicateTransition.cpp +24 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredicateTransition.h +50 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContext.cpp +601 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContext.h +225 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContextCache.cpp +56 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContextCache.h +63 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContextMergeCache.cpp +167 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContextMergeCache.h +101 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContextMergeCacheOptions.h +71 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionContextType.h +21 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionMode.cpp +202 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/PredictionMode.h +436 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.cpp +179 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.h +60 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/RangeTransition.cpp +26 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/RangeTransition.h +31 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/RuleStartState.h +26 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/RuleStopState.h +27 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/RuleTransition.cpp +33 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/RuleTransition.h +42 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SemanticContext.cpp +418 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SemanticContext.h +237 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SemanticContextType.h +23 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SerializedATNView.h +101 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SetTransition.cpp +28 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SetTransition.h +38 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.cpp +79 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.h +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/StarBlockStartState.h +24 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/StarLoopEntryState.h +37 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/StarLoopbackState.cpp +19 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/StarLoopbackState.h +25 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/TokensStartState.h +24 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/Transition.cpp +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/Transition.h +65 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/TransitionType.cpp +27 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/TransitionType.h +33 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/WildcardTransition.cpp +21 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/atn/WildcardTransition.h +27 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/DFA.cpp +115 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/DFA.h +96 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/DFASerializer.cpp +60 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/DFASerializer.h +32 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/DFAState.cpp +59 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/DFAState.h +154 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.cpp +17 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.h +22 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/internal/Synchronization.cpp +100 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/internal/Synchronization.h +154 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/InterpreterDataReader.cpp +124 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/InterpreterDataReader.h +33 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/Interval.cpp +61 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/Interval.h +84 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/IntervalSet.cpp +508 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/IntervalSet.h +190 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/MurmurHash.cpp +120 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/MurmurHash.h +102 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/Predicate.cpp +4 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/misc/Predicate.h +21 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Any.cpp +8 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Any.h +16 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Arrays.cpp +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Arrays.h +149 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/BitSet.h +76 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/CPPUtils.cpp +207 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/CPPUtils.h +65 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Casts.h +34 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Declarations.h +161 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/StringUtils.cpp +38 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/StringUtils.h +16 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Unicode.h +28 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Utf8.cpp +242 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/support/Utf8.h +54 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/AbstractParseTreeVisitor.h +129 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ErrorNode.h +24 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.cpp +54 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.h +43 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.cpp +66 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.h +53 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTree.cpp +12 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTree.h +111 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeListener.cpp +9 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeListener.h +39 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeProperty.h +50 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeType.h +22 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.cpp +9 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.h +57 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeWalker.cpp +48 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/ParseTreeWalker.h +55 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/TerminalNode.h +40 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.cpp +54 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.h +32 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/Trees.cpp +241 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/Trees.h +78 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/Chunk.cpp +9 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/Chunk.h +44 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.cpp +69 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.h +132 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.cpp +64 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.h +105 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.cpp +370 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.h +185 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.cpp +77 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.h +117 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/TagChunk.cpp +39 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/TagChunk.h +86 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/TextChunk.cpp +28 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/TextChunk.h +51 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.cpp +36 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.h +80 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPath.cpp +154 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPath.h +86 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathElement.cpp +31 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathElement.h +40 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.cpp +180 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.h +53 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.cpp +13 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.h +22 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.cpp +20 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.h +27 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.cpp +30 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.h +26 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.cpp +20 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.h +25 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.cpp +33 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.h +26 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.cpp +23 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.h +23 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.cpp +24 -0
- data/ext/protovalidate/sys/third_party/antlr4/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.h +23 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/LICENSE +202 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/ast.h +20 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/attribute.cc +330 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/attribute.h +278 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/attribute_set.h +108 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/builtins.h +106 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/function.h +20 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/function_adapter.h +19 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/function_descriptor.h +20 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/function_result.h +70 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/function_result_set.cc +28 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/function_result_set.h +105 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/internal/memory_manager_testing.h +54 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/internal/message_wrapper.h +30 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/internal/operators.h +91 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/internal/unknown_set.cc +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/internal/unknown_set.h +131 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/kind.h +25 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/operators.h +507 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/base/type_provider.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/checker_options.h +110 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/builtins_arena.cc +28 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/builtins_arena.h +29 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/field_path.h +77 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/namespace_generator.h +120 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/proto_type_mask.h +111 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/proto_type_mask_registry.h +83 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/test_ast_helpers.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/type_check_env.h +249 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/type_checker_builder_impl.h +170 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/type_checker_impl.h +58 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/internal/type_inference_context.h +229 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/optional.h +30 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/standard_library.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/type_check_issue.cc +59 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/type_check_issue.h +69 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/type_checker.cc +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/type_checker.h +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/type_checker_builder.h +186 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/type_checker_builder_factory.h +59 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/type_checker_subset_factory.h +45 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/validation_result.cc +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/checker/validation_result.h +117 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/codelab/checked_expr_conversion_example.h +59 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/codelab/exercise1.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/codelab/exercise10.h +46 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/codelab/exercise2.h +40 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/codelab/exercise4.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/codelab/network_functions.h +197 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/allocator.h +606 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/any.cc +38 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/any.h +90 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/arena.h +110 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/arena_string.h +365 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/arena_string_pool.h +86 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/arena_string_view.h +239 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/constant_proto.cc +123 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/constant_proto.h +37 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/expr_proto.cc +514 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/expr_proto.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/metadata.cc +262 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/metadata.h +920 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/navigable_ast_internal.h +311 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/navigable_ast_kinds.cc +80 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/navigable_ast_kinds.h +74 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/source_info_proto.cc +90 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast/source_info_proto.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast.cc +98 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast.h +157 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_proto.cc +547 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_proto.h +52 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_rewrite.cc +389 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_rewrite.h +146 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_traverse.cc +380 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_traverse.h +105 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_visitor.h +118 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/ast_visitor_base.h +88 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/casting.h +75 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/constant.cc +101 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/constant.h +491 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/container.cc +171 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/container.h +138 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/data.h +120 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/decl.cc +221 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/decl.h +446 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/decl_proto.h +50 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/decl_proto_v1alpha1.h +55 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/descriptor_pool_type_introspector.cc +244 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/descriptor_pool_type_introspector.h +106 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/expr.cc +320 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/expr.h +1720 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/expr_factory.h +402 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/expr_printer.h +57 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/format_type_name.h +30 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/function_descriptor.cc +98 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/function_descriptor.h +124 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/internal/byte_string.cc +1074 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/internal/byte_string.h +688 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/internal/casting.h +237 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/internal/metadata.h +41 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/internal/reference_count.cc +118 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/internal/reference_count.h +406 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/internal/value_conversion.h +115 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/json.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/kind.cc +80 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/kind.h +76 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/legacy_value.cc +1324 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/legacy_value.h +131 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/memory.cc +83 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/memory.h +1505 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/memory_testing.h +71 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/minimal_descriptor_database.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/minimal_descriptor_pool.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/native_type.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/navigable_ast.cc +202 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/navigable_ast.h +168 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/operators.cc +233 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/operators.h +87 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/optional_ref.h +163 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/reference.h +269 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/reference_count.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/signature.cc +640 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/signature.h +101 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/source.cc +679 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/source.h +261 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/standard_definitions.h +349 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type.cc +737 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type.h +1303 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_introspector.cc +277 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_introspector.h +157 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_kind.h +113 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_proto.h +39 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_reflector.h +43 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_spec_resolver.cc +324 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_spec_resolver.h +46 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/type_testing.h +24 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/typeinfo.cc +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/typeinfo.h +221 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/any_type.h +74 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/basic_struct_type.cc +53 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/basic_struct_type.h +119 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/bool_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/bool_wrapper_type.h +79 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/bytes_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/bytes_wrapper_type.h +79 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/double_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/double_wrapper_type.h +79 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/duration_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/dyn_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/enum_type.cc +43 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/enum_type.h +128 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/error_type.h +75 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/function_type.cc +89 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/function_type.h +91 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/function_type_pool.cc +29 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/function_type_pool.h +102 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/int_type.h +72 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/int_wrapper_type.h +78 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/legacy_type_introspector.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/list_type.cc +77 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/list_type.h +115 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/list_type_pool.cc +29 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/list_type_pool.h +80 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/map_type.cc +122 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/map_type.h +124 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/map_type_pool.cc +30 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/map_type_pool.h +93 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/message_type.cc +95 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/message_type.h +209 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/null_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/opaque_type.cc +109 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/opaque_type.h +118 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/opaque_type_pool.cc +33 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/opaque_type_pool.h +99 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/optional_type.cc +68 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/optional_type.h +114 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/string_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/string_wrapper_type.h +86 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/struct_type.cc +87 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/struct_type.h +158 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/timestamp_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/type_param_type.h +78 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/type_pool.cc +96 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/type_pool.h +99 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/type_type.cc +74 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/type_type.h +92 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/type_type_pool.cc +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/type_type_pool.h +86 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/types.h +99 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/uint_type.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/uint_wrapper_type.h +79 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/types/unknown_type.h +74 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/unknown.h +27 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/value.cc +2791 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/value.h +2947 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/value_kind.h +104 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/value_testing.h +307 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/bool_value.cc +97 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/bool_value.h +111 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/bytes_value.cc +194 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/bytes_value.h +338 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/bytes_value_input_stream.h +133 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/bytes_value_output_stream.h +176 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/custom_list_value.cc +614 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/custom_list_value.h +423 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/custom_map_value.cc +823 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/custom_map_value.h +469 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/custom_struct_value.cc +385 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/custom_struct_value.h +459 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/custom_value.h +84 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/double_value.cc +137 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/double_value.h +101 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/duration_value.cc +105 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/duration_value.h +147 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/enum_value.h +49 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/error_value.cc +194 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/error_value.h +276 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/int_value.cc +111 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/int_value.h +117 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/legacy_list_value.cc +76 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/legacy_list_value.h +167 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/legacy_map_value.cc +76 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/legacy_map_value.h +185 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/legacy_struct_value.cc +43 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/legacy_struct_value.h +183 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/list_value.cc +304 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/list_value.h +284 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/list_value_builder.h +110 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/list_value_variant.h +214 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/map_value.cc +378 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/map_value.h +323 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/map_value_builder.h +110 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/map_value_variant.h +212 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/message_value.cc +306 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/message_value.h +268 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/null_value.cc +78 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/null_value.h +96 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/opaque_value.cc +194 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/opaque_value.h +338 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/optional_value.cc +435 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/optional_value.h +207 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_json_list_value.cc +486 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_json_list_value.h +229 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_json_map_value.cc +439 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_json_map_value.h +250 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_json_value.cc +103 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_json_value.h +40 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_map_field_value.cc +583 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_map_field_value.h +242 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_message_value.cc +411 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_message_value.h +249 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_repeated_field_value.cc +365 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/parsed_repeated_field_value.h +220 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/string_value.cc +1518 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/string_value.h +489 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/struct_value.cc +390 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/struct_value.h +373 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/struct_value_builder.cc +1552 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/struct_value_builder.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/struct_value_variant.h +205 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/timestamp_value.cc +105 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/timestamp_value.h +146 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/type_value.cc +72 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/type_value.h +108 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/uint_value.cc +110 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/uint_value.h +119 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/unknown_value.cc +66 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/unknown_value.h +121 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/value_builder.cc +1432 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/value_builder.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/value_variant.cc +537 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/value_variant.h +831 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/common/values/values.h +351 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/compiler/compiler.h +195 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/compiler/compiler_factory.h +70 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/compiler/compiler_library_subset_factory.h +80 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/compiler/optional.h +28 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/compiler/standard_library.h +27 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/config.h +173 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/env.h +76 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/env_runtime.h +85 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/env_std_extensions.h +42 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/env_yaml.h +74 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/internal/ext_registry.h +74 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/internal/runtime_ext_registry.h +84 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/runtime_std_extensions.h +46 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/env/type_info.h +42 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/cel_expression_builder_flat_impl.cc +111 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/cel_expression_builder_flat_impl.h +108 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/check_ast_extensions.cc +58 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/check_ast_extensions.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/comprehension_vulnerability_check.cc +275 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/comprehension_vulnerability_check.h +51 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/constant_folding.cc +280 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/constant_folding.h +42 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/flat_expr_builder.cc +2667 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/flat_expr_builder.h +104 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/flat_expr_builder_extensions.cc +474 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/flat_expr_builder_extensions.h +481 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/instrumentation.h +60 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/qualified_reference_resolver.cc +359 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/qualified_reference_resolver.h +53 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/regex_precompilation_optimization.cc +274 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/regex_precompilation_optimization.h +29 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/resolver.cc +222 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/compiler/resolver.h +127 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/attribute_trail.cc +28 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/attribute_trail.h +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/attribute_utility.cc +260 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/attribute_utility.h +179 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/cel_expression_flat_impl.cc +147 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/cel_expression_flat_impl.h +175 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/compiler_constant_step.cc +37 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/compiler_constant_step.h +76 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/comprehension_slots.h +153 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/comprehension_step.cc +685 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/comprehension_step.h +119 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/const_value_step.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/container_access_step.cc +370 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/container_access_step.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/create_list_step.cc +283 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/create_list_step.h +40 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/create_map_step.cc +289 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/create_map_step.h +59 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/create_struct_step.cc +270 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/create_struct_step.h +44 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/direct_expression_step.cc +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/direct_expression_step.h +99 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/equality_steps.cc +293 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/equality_steps.h +45 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/evaluator_core.cc +178 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/evaluator_core.h +516 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/evaluator_stack.cc +92 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/evaluator_stack.h +327 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/expression_step_base.h +12 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/function_step.cc +529 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/function_step.h +48 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/ident_step.cc +174 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/ident_step.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/iterator_stack.h +77 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/jump_step.cc +172 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/jump_step.h +74 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/lazy_init_step.cc +236 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/lazy_init_step.h +87 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/logic_step.cc +487 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/logic_step.h +49 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/optional_or_step.cc +305 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/optional_or_step.h +51 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/regex_match_step.cc +135 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/regex_match_step.h +37 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/select_step.cc +581 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/select_step.h +33 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/shadowable_value_step.cc +98 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/shadowable_value_step.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/ternary_step.cc +194 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/ternary_step.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/eval/trace_step.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/internal/adapter_activation_impl.cc +87 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/internal/adapter_activation_impl.h +68 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/internal/cel_value_equal.cc +242 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/internal/cel_value_equal.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/internal/errors.cc +64 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/internal/errors.h +54 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/internal/interop.h +20 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/activation.cc +119 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/activation.h +170 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/activation_bind_helper.h +60 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/ast_rewrite.h +175 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/ast_traverse.h +110 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/ast_visitor.h +185 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/ast_visitor_base.h +109 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/base_activation.h +75 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/builtin_func_registrar.cc +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/builtin_func_registrar.h +30 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_attribute.cc +90 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_attribute.h +64 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_builtins.h +19 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_expr_builder_factory.cc +146 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_expr_builder_factory.h +43 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_expression.h +144 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_function.cc +76 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_function.h +80 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_function_adapter.h +121 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_function_adapter_impl.h +407 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_function_registry.cc +122 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_function_registry.h +146 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_number.cc +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_number.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_options.cc +51 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_options.h +233 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_type_registry.cc +64 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_type_registry.h +145 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_value.cc +412 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_value.h +770 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_value_internal.h +103 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/cel_value_producer.h +25 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/comparison_functions.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/container_function_registrar.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/container_backed_list_impl.h +44 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/container_backed_map_impl.cc +131 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/container_backed_map_impl.h +70 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/field_access.cc +85 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/field_access.h +70 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/field_backed_list_impl.h +33 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/field_backed_map_impl.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/internal_field_backed_list_impl.cc +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/internal_field_backed_list_impl.h +59 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/internal_field_backed_map_impl.cc +298 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/containers/internal_field_backed_map_impl.h +77 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/equality_function_registrar.h +44 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/extension_func_registrar.h +20 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/logical_function_registrar.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/message_wrapper.h +139 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/portable_cel_function_adapter.h +72 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/set_util.h +43 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/source_position.h +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/string_extension_func_registrar.cc +29 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/string_extension_func_registrar.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/cel_proto_descriptor_pool_builder.h +40 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/cel_proto_wrap_util.cc +1479 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/cel_proto_wrap_util.h +45 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/cel_proto_wrapper.cc +60 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/cel_proto_wrapper.h +53 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/field_access_impl.cc +746 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/field_access_impl.h +80 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/legacy_type_adapter.h +177 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/legacy_type_info_apis.h +108 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/legacy_type_provider.cc +232 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/legacy_type_provider.h +79 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/proto_message_type_adapter.cc +708 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/proto_message_type_adapter.h +137 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/protobuf_descriptor_type_provider.cc +70 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/protobuf_descriptor_type_provider.h +67 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/protobuf_value_factory.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/structs/trivial_legacy_type_info.h +54 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/transform_utility.h +39 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/unknown_attribute_set.h +20 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/unknown_function_result_set.cc +1 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/unknown_function_result_set.h +27 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/unknown_set.h +22 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/eval/public/value_export_util.h +28 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/bindings_ext.h +46 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/comprehensions_v2.h +39 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/comprehensions_v2_functions.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/comprehensions_v2_macros.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/encoders.h +45 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/formatting.cc +570 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/formatting.h +39 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/lists_functions.h +138 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/math_ext.h +39 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/math_ext_decls.h +33 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/math_ext_macros.h +38 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/proto_ext.h +42 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/ast_converters.h +56 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/bind_proto_to_activation.h +38 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/enum_adapter.h +30 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/internal/map_reflection.cc +132 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/internal/map_reflection.h +67 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/internal/qualify.cc +457 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/internal/qualify.h +117 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/memory_manager.cc +37 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/memory_manager.h +56 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/runtime_adapter.h +51 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/value.h +98 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/protobuf/value_testing.h +78 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/regex_ext.h +131 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/regex_functions.h +52 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/select_optimization.cc +958 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/select_optimization.h +90 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/sets_functions.h +45 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/strings.cc +432 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/extensions/strings.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/align.h +95 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/benchmark.h +20 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/casts.h +50 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/empty_descriptors.cc +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/empty_descriptors.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/equals_text_proto.h +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/exceptions.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/json.cc +2041 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/json.h +141 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/lexis.cc +79 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/lexis.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/manual.h +91 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/message_equality.cc +1490 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/message_equality.h +54 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/message_type_name.h +56 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/minimal_descriptor_database.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/minimal_descriptor_pool.h +40 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/names.h +26 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/new.cc +142 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/new.h +61 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/noop_delete.h +53 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/number.h +299 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/overflow.cc +339 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/overflow.h +178 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/parse_text_proto.h +121 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/proto_file_util.h +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/proto_matchers.h +140 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/proto_time_encoding.cc +103 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/proto_time_encoding.h +49 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/proto_util.h +87 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/protobuf_runtime_version.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/re2_options.h +61 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/runfiles.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/status_builder.h +114 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/status_macros.h +152 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/string_pool.cc +79 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/string_pool.h +59 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/strings.cc +693 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/strings.h +90 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/testing.h +44 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/testing_descriptor_pool.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/testing_message_factory.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/time.cc +198 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/time.h +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/to_address.h +68 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/unicode.h +28 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/utf8.cc +526 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/utf8.h +82 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/well_known_types.cc +2181 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/internal/well_known_types.h +1593 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/ast_factory.cc +320 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/ast_factory.h +174 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/ast_factory_interface.h +130 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/lexer.cc +711 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/lexer.h +286 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/options.h +29 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/pratt_parser.cc +226 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/pratt_parser.h +110 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/pratt_parser_worker.cc +261 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/internal/pratt_parser_worker.h +1143 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/macro.cc +561 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/macro.h +229 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/macro_expr_factory.cc +128 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/macro_expr_factory.h +333 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/macro_registry.cc +87 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/macro_registry.h +59 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/options.h +115 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/parser.cc +1995 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/parser.h +102 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/parser_interface.h +160 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/parser_subset_factory.h +41 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/source_factory.h +47 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/parser/standard_macros.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/cel_policy.h +333 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/cel_policy_parse_context.h +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/cel_policy_parse_result.h +105 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/cel_policy_parser.h +40 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/cel_policy_validation_result.h +84 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/compiler.h +50 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/internal/issue_reporter.h +57 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/internal/optimizer_expr_factory.h +419 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/internal/yaml_string_element_scanner.h +40 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/test_util.h +33 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/policy/yaml_policy_parser.h +135 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/activation.cc +141 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/activation.h +184 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/activation_interface.h +109 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/bind_proto_to_activation.h +174 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/comprehension_vulnerability_check.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/constant_folding.h +69 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/embedder_context.h +147 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/function.h +115 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/function_adapter.h +830 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/function_overload_reference.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/function_provider.h +46 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/function_registry.cc +263 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/function_registry.h +160 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/activation_attribute_matcher_access.cc +61 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/activation_attribute_matcher_access.h +60 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/attribute_matcher.h +48 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/convert_constant.cc +78 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/convert_constant.h +39 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/errors.cc +69 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/errors.h +71 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/function_adapter.h +232 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/issue_collector.h +64 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/legacy_runtime_type_provider.h +37 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_env.cc +73 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_env.h +134 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_env_testing.h +60 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_friend_access.h +45 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_impl.cc +159 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_impl.h +125 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_type_provider.cc +96 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/internal/runtime_type_provider.h +66 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/optional_types.h +152 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/reference_resolver.h +46 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/regex_precompilation.h +32 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/register_function_helper.h +99 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/runtime.h +229 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/runtime_builder.h +101 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/runtime_builder_factory.h +65 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/runtime_issue.h +88 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/runtime_options.h +209 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/arithmetic_functions.cc +233 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/arithmetic_functions.h +35 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/comparison_functions.cc +272 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/comparison_functions.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/container_functions.cc +136 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/container_functions.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/container_membership_functions.cc +331 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/container_membership_functions.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/equality_functions.cc +612 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/equality_functions.h +60 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/logical_functions.cc +66 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/logical_functions.h +36 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/regex_functions.cc +56 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/regex_functions.h +38 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/string_functions.cc +140 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/string_functions.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/time_functions.cc +499 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/time_functions.h +56 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/type_conversion_functions.cc +470 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard/type_conversion_functions.h +34 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard_functions.h +33 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/standard_runtime_builder_factory.h +43 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/type_registry.cc +84 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/runtime/type_registry.h +155 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/tools/branch_coverage.h +68 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/tools/cel_field_extractor.h +70 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/tools/cel_unparser.h +60 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/tools/descriptor_pool_builder.h +93 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/tools/flatbuffers_backed_impl.h +58 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/tools/navigable_ast.h +169 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/tools/proto_to_predicate.h +48 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/validator/ast_depth_validator.h +27 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/validator/comprehension_nesting_validator.h +31 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/validator/homogeneous_literal_validator.h +38 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/validator/regex_validator.h +53 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/validator/timestamp_literal_validator.h +29 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/validator/validator.cc +85 -0
- data/ext/protovalidate/sys/third_party/cel-cpp/validator/validator.h +151 -0
- data/ext/protovalidate/sys/third_party/protobuf/LICENSE +32 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/any.cc +65 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/any.h +161 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/any.pb.cc +528 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/any.pb.h +516 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/any_lite.cc +95 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/api.pb.cc +1959 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/api.pb.h +1985 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arena.cc +1004 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arena.h +1238 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arena_align.cc +21 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arena_align.h +199 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arena_allocation_policy.h +102 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arena_cleanup.h +108 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arena_test_util.h +91 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arenastring.cc +290 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arenastring.h +545 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arenaz_sampler.cc +227 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/arenaz_sampler.h +238 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/annotation_test_util.h +105 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/code_generator.h +256 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/code_generator_lite.h +77 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/command_line_interface.h +517 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/command_line_interface_tester.h +162 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/importer.cc +594 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/importer.h +338 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/mock_code_generator.h +144 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/notices.h +242 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/package_info.h +40 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/parser.cc +2716 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/parser.h +642 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/plugin.h +73 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/plugin.pb.h +2320 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/retention.h +70 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/scc.h +155 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/subprocess.h +91 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/versions.h +78 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/compiler/zip_writer.h +45 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/cpp_edition_defaults.h +12 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/cpp_features.pb.cc +539 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/cpp_features.pb.h +630 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor.cc +10801 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor.h +3417 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor.pb.cc +18982 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor.pb.h +23170 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor_database.cc +1102 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor_database.h +423 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor_legacy.h +32 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor_lite.h +110 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor_test_utils.h +129 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/descriptor_visitor.h +187 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/duration.pb.cc +481 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/duration.pb.h +367 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/dynamic_message.cc +1104 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/dynamic_message.h +217 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/empty.pb.cc +285 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/empty.pb.h +245 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/endian.h +192 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/explicitly_constructed.h +71 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/extension_set.cc +1925 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/extension_set.h +1886 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/extension_set_heavy.cc +459 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/extension_set_inl.h +274 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/feature_resolver.cc +637 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/feature_resolver.h +108 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/field_access_listener.h +166 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/field_mask.pb.cc +472 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/field_mask.pb.h +396 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/field_with_arena.h +110 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_enum_reflection.h +187 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_enum_util.cc +223 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_enum_util.h +185 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_bases.cc +88 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_bases.h +68 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_reflection.cc +4185 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_reflection.h +372 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_tctable_decl.h +615 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_tctable_full.cc +105 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_tctable_gen.cc +960 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_tctable_gen.h +193 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_tctable_impl.h +1229 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_tctable_lite.cc +3308 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_util.cc +434 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/generated_message_util.h +445 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/has_bits.h +138 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/implicit_weak_message.cc +139 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/implicit_weak_message.h +266 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/inlined_string_field.cc +144 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/inlined_string_field.h +379 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/internal_feature_helper.cc +28 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/internal_feature_helper.h +130 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/internal_metadata_locator.h +291 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/internal_visibility.h +55 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/internal_visibility_for_testing.h +27 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/coded_stream.cc +1045 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/coded_stream.h +1885 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/gzip_stream.cc +333 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/gzip_stream.h +189 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/io_win32.cc +450 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/io_win32.h +118 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/package_info.h +30 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/printer.cc +842 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/printer.h +1183 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/strtod.cc +260 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/strtod.h +57 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/test_zero_copy_stream.h +185 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/tokenizer.cc +1262 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/tokenizer.h +441 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_sink.cc +45 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_sink.h +59 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_stream.cc +128 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_stream.h +269 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl.cc +354 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl.h +319 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl_lite.cc +699 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl_lite.h +533 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/descriptor_traits.h +510 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/lexer.cc +512 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/lexer.h +341 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/message_path.cc +46 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/message_path.h +61 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/parser.cc +1437 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/parser.h +37 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/parser_traits.h +400 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/unparser.cc +915 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/unparser.h +38 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/unparser_traits.h +414 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/untyped_message.cc +577 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/untyped_message.h +246 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/writer.cc +307 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/writer.h +214 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/zero_copy_buffered_stream.cc +152 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/internal/zero_copy_buffered_stream.h +338 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/json.cc +137 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/json/json.h +200 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map.cc +297 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map.h +1787 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map_entry.h +139 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map_field.cc +597 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map_field.h +925 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map_field_lite.h +124 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map_test.inc +4427 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map_test_util.h +617 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/map_type_handler.h +374 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/message.cc +745 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/message.h +1936 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/message_lite.cc +807 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/message_lite.h +1861 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/message_unittest.inc +2302 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/message_unittest_legacy_apis.inc +98 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/metadata.h +13 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/metadata_lite.h +271 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/micro_string.cc +376 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/micro_string.h +649 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/os_macros_restore.inc +97 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/os_macros_undef.inc +166 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/package_info.h +43 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/parse_context.cc +850 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/parse_context.h +1883 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/port.cc +131 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/port.h +908 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/port_def.inc +820 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/port_undef.inc +97 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/proto3_lite_unittest.inc +127 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/raw_ptr.cc +29 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/raw_ptr.h +64 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection.h +603 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_internal.h +313 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_mode.cc +36 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_mode.h +144 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_ops.cc +456 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_ops.h +67 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_tester.h +127 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_visit_field_info.h +1378 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/reflection_visit_fields.h +511 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_field.cc +76 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_field.h +1814 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_field_proxy.h +697 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_field_proxy_iterator.h +236 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_field_proxy_traits.h +100 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_field_reflection_unittest.inc +687 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_ptr_field.cc +251 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h +2706 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/runtime_version.h +27 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/serial_arena.h +447 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/service.cc +22 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/service.h +271 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/source_context.pb.cc +463 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/source_context.pb.h +376 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/string_block.h +181 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/string_member_robber.h +17 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/struct.pb.cc +1663 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/struct.pb.h +1426 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/stubs/callback.h +584 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/stubs/common.cc +121 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/stubs/common.h +94 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/stubs/platform_macros.h +115 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/stubs/port.h +228 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/stubs/status_macros.h +72 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/symbol_checker.cc +219 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/symbol_checker.h +142 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/test_textproto.h +54 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/test_util.h +3897 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/test_util2.h +70 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/test_util_lite.h +86 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/text_format.cc +3324 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/text_format.h +925 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/thread_safe_arena.h +297 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/timestamp.pb.cc +481 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/timestamp.pb.h +367 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/type.pb.cc +3129 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/type.pb.h +3343 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/unknown_field_set.cc +351 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/unknown_field_set.h +464 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/delimited_message_util.cc +107 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/delimited_message_util.h +85 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/field_comparator.cc +237 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/field_comparator.h +256 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/field_mask_util.cc +754 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/field_mask_util.h +242 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/internal_timeval.h +28 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/json_util.h +34 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/message_differencer.cc +2372 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/message_differencer.h +1002 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/package_info.h +23 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/python/field_mask_util_clif_aux.h +32 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/time_util.cc +563 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/time_util.h +297 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/type_resolver.h +56 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/type_resolver_util.cc +436 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/util/type_resolver_util.h +45 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/varint_shuffle.h +165 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/wire_format.cc +1785 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/wire_format.h +374 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/wire_format_lite.cc +901 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/wire_format_lite.h +1720 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/wire_format_unittest.h +1726 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/wrappers.pb.cc +3203 -0
- data/ext/protovalidate/sys/third_party/protobuf/src/google/protobuf/wrappers.pb.h +2317 -0
- data/ext/protovalidate/sys/third_party/protobuf/third_party/utf8_range/utf8_range.c +207 -0
- data/ext/protovalidate/sys/third_party/protobuf/third_party/utf8_range/utf8_range.h +23 -0
- data/ext/protovalidate/sys/third_party/protobuf/third_party/utf8_range/utf8_range_neon.inc +117 -0
- data/ext/protovalidate/sys/third_party/protobuf/third_party/utf8_range/utf8_range_sse.inc +272 -0
- data/ext/protovalidate/sys/third_party/protobuf/third_party/utf8_range/utf8_validity.h +30 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/LICENSE +201 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/cel_rules.h +116 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/cel_validation_rules.cc +166 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/cel_validation_rules.h +72 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/extra_func.cc +482 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/extra_func.h +31 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/field_rules.cc +388 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/field_rules.h +92 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/lib/ipv4.cc +69 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/lib/ipv4.h +58 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/lib/ipv6.cc +143 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/lib/ipv6.h +51 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/lib/parser_common.h +256 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/lib/uri.cc +469 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/lib/uri.h +25 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/message_factory.cc +31 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/message_factory.h +43 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/message_rules.cc +114 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/message_rules.h +39 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/proto_field.h +155 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/rules.cc +437 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/rules.h +221 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/internal/validation_rules.h +153 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/validator.cc +190 -0
- data/ext/protovalidate/sys/third_party/protovalidate-cc/buf/validate/validator.h +156 -0
- data/ext/protovalidate/sys/third_party/re2/LICENSE +27 -0
- data/ext/protovalidate/sys/third_party/re2/re2/bitmap256.cc +43 -0
- data/ext/protovalidate/sys/third_party/re2/re2/bitmap256.h +88 -0
- data/ext/protovalidate/sys/third_party/re2/re2/bitstate.cc +389 -0
- data/ext/protovalidate/sys/third_party/re2/re2/compile.cc +1265 -0
- data/ext/protovalidate/sys/third_party/re2/re2/dfa.cc +2135 -0
- data/ext/protovalidate/sys/third_party/re2/re2/filtered_re2.cc +138 -0
- data/ext/protovalidate/sys/third_party/re2/re2/filtered_re2.h +115 -0
- data/ext/protovalidate/sys/third_party/re2/re2/mimics_pcre.cc +196 -0
- data/ext/protovalidate/sys/third_party/re2/re2/nfa.cc +714 -0
- data/ext/protovalidate/sys/third_party/re2/re2/onepass.cc +623 -0
- data/ext/protovalidate/sys/third_party/re2/re2/parse.cc +2529 -0
- data/ext/protovalidate/sys/third_party/re2/re2/perl_groups.cc +119 -0
- data/ext/protovalidate/sys/third_party/re2/re2/pod_array.h +55 -0
- data/ext/protovalidate/sys/third_party/re2/re2/prefilter.cc +711 -0
- data/ext/protovalidate/sys/third_party/re2/re2/prefilter.h +168 -0
- data/ext/protovalidate/sys/third_party/re2/re2/prefilter_tree.cc +376 -0
- data/ext/protovalidate/sys/third_party/re2/re2/prefilter_tree.h +153 -0
- data/ext/protovalidate/sys/third_party/re2/re2/prog.cc +1181 -0
- data/ext/protovalidate/sys/third_party/re2/re2/prog.h +493 -0
- data/ext/protovalidate/sys/third_party/re2/re2/re2.cc +1355 -0
- data/ext/protovalidate/sys/third_party/re2/re2/re2.h +1074 -0
- data/ext/protovalidate/sys/third_party/re2/re2/regexp.cc +1004 -0
- data/ext/protovalidate/sys/third_party/re2/re2/regexp.h +693 -0
- data/ext/protovalidate/sys/third_party/re2/re2/set.cc +185 -0
- data/ext/protovalidate/sys/third_party/re2/re2/set.h +91 -0
- data/ext/protovalidate/sys/third_party/re2/re2/simplify.cc +689 -0
- data/ext/protovalidate/sys/third_party/re2/re2/sparse_array.h +394 -0
- data/ext/protovalidate/sys/third_party/re2/re2/sparse_set.h +266 -0
- data/ext/protovalidate/sys/third_party/re2/re2/stringpiece.h +18 -0
- data/ext/protovalidate/sys/third_party/re2/re2/tostring.cc +351 -0
- data/ext/protovalidate/sys/third_party/re2/re2/unicode_casefold.cc +604 -0
- data/ext/protovalidate/sys/third_party/re2/re2/unicode_casefold.h +77 -0
- data/ext/protovalidate/sys/third_party/re2/re2/unicode_groups.cc +6517 -0
- data/ext/protovalidate/sys/third_party/re2/re2/unicode_groups.h +66 -0
- data/ext/protovalidate/sys/third_party/re2/re2/walker-inl.h +249 -0
- data/ext/protovalidate/sys/third_party/re2/util/malloc_counter.h +19 -0
- data/ext/protovalidate/sys/third_party/re2/util/pcre.h +671 -0
- data/ext/protovalidate/sys/third_party/re2/util/rune.cc +260 -0
- data/ext/protovalidate/sys/third_party/re2/util/strutil.cc +26 -0
- data/ext/protovalidate/sys/third_party/re2/util/strutil.h +16 -0
- data/ext/protovalidate/sys/third_party/re2/util/utf.h +44 -0
- data/ext/protovalidate/sys/versions.json +15 -0
- data/lib/buf/validate/validate_pb.rb +55 -0
- data/lib/protovalidate/errors.rb +32 -0
- data/lib/protovalidate/native.rb +30 -0
- data/lib/protovalidate/validator.rb +96 -0
- data/lib/protovalidate/version.rb +10 -0
- data/lib/protovalidate/violation.rb +115 -0
- data/lib/protovalidate.rb +48 -0
- data/sig/buf/validate/validate_pb.rbs +64 -0
- data/sig/protovalidate/native.rbs +14 -0
- data/sig/protovalidate.rbs +90 -0
- metadata +1900 -0
|
@@ -0,0 +1,1861 @@
|
|
|
1
|
+
// Protocol Buffers - Google's data interchange format
|
|
2
|
+
// Copyright 2008 Google Inc. All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
// Use of this source code is governed by a BSD-style
|
|
5
|
+
// license that can be found in the LICENSE file or at
|
|
6
|
+
// https://developers.google.com/open-source/licenses/bsd
|
|
7
|
+
|
|
8
|
+
// Authors: wink@google.com (Wink Saville),
|
|
9
|
+
// kenton@google.com (Kenton Varda)
|
|
10
|
+
// Based on original Protocol Buffers design by
|
|
11
|
+
// Sanjay Ghemawat, Jeff Dean, and others.
|
|
12
|
+
//
|
|
13
|
+
// Defines MessageLite, the abstract interface implemented by all (lite
|
|
14
|
+
// and non-lite) protocol message objects.
|
|
15
|
+
//
|
|
16
|
+
// This is only intended to be extended by protoc created gencode or types
|
|
17
|
+
// defined in the Protobuf runtime. It is not intended or supported for
|
|
18
|
+
// application code to extend this class, and any protected methods may be
|
|
19
|
+
// removed without being it being considered a breaking change as long as the
|
|
20
|
+
// corresponding gencode does not use it.
|
|
21
|
+
|
|
22
|
+
#ifndef GOOGLE_PROTOBUF_MESSAGE_LITE_H__
|
|
23
|
+
#define GOOGLE_PROTOBUF_MESSAGE_LITE_H__
|
|
24
|
+
|
|
25
|
+
#include <climits>
|
|
26
|
+
#include <cstddef>
|
|
27
|
+
#include <cstdint>
|
|
28
|
+
#include <cstring>
|
|
29
|
+
#include <iosfwd>
|
|
30
|
+
#include <memory>
|
|
31
|
+
#include <string>
|
|
32
|
+
#include <type_traits>
|
|
33
|
+
#include <utility>
|
|
34
|
+
|
|
35
|
+
#include "absl/base/attributes.h"
|
|
36
|
+
#include "absl/base/macros.h"
|
|
37
|
+
#include "absl/log/absl_check.h"
|
|
38
|
+
#include "absl/strings/cord.h"
|
|
39
|
+
#include "absl/strings/string_view.h"
|
|
40
|
+
#include "google/protobuf/arena.h"
|
|
41
|
+
#include "google/protobuf/internal_visibility.h"
|
|
42
|
+
#include "google/protobuf/io/coded_stream.h"
|
|
43
|
+
#include "google/protobuf/metadata_lite.h"
|
|
44
|
+
#include "google/protobuf/port.h"
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
// clang-format off
|
|
48
|
+
#include "google/protobuf/port_def.inc"
|
|
49
|
+
// clang-format on
|
|
50
|
+
|
|
51
|
+
#ifdef SWIG
|
|
52
|
+
#error "You cannot SWIG proto headers"
|
|
53
|
+
#endif
|
|
54
|
+
|
|
55
|
+
namespace google {
|
|
56
|
+
namespace protobuf {
|
|
57
|
+
|
|
58
|
+
template <typename T>
|
|
59
|
+
class RepeatedPtrField;
|
|
60
|
+
|
|
61
|
+
class FastReflectionMessageMutator;
|
|
62
|
+
class FastReflectionStringSetter;
|
|
63
|
+
class Reflection;
|
|
64
|
+
class Descriptor;
|
|
65
|
+
class AssignDescriptorsHelper;
|
|
66
|
+
class MessageLite;
|
|
67
|
+
|
|
68
|
+
namespace io {
|
|
69
|
+
|
|
70
|
+
class CodedInputStream;
|
|
71
|
+
class CodedOutputStream;
|
|
72
|
+
class ZeroCopyInputStream;
|
|
73
|
+
class ZeroCopyOutputStream;
|
|
74
|
+
|
|
75
|
+
} // namespace io
|
|
76
|
+
|
|
77
|
+
namespace compiler {
|
|
78
|
+
namespace cpp {
|
|
79
|
+
class MessageTableTester;
|
|
80
|
+
} // namespace cpp
|
|
81
|
+
} // namespace compiler
|
|
82
|
+
|
|
83
|
+
namespace internal {
|
|
84
|
+
|
|
85
|
+
// TODO: Remove this once we have a better way to do this.
|
|
86
|
+
PROTOBUF_EXPORT void GenericSwap(MessageLite* lhs, MessageLite* rhs);
|
|
87
|
+
PROTOBUF_EXPORT void GenericSwap(Message* lhs, Message* rhs);
|
|
88
|
+
|
|
89
|
+
struct PrivateAccess;
|
|
90
|
+
|
|
91
|
+
class MessageCreator {
|
|
92
|
+
public:
|
|
93
|
+
using Func = void* (*)(const void*, void*, Arena*);
|
|
94
|
+
|
|
95
|
+
// Use -1/0/1 to be able to use <0, ==0, >0
|
|
96
|
+
enum Tag : int8_t {
|
|
97
|
+
kFunc = -1,
|
|
98
|
+
kZeroInit = 0,
|
|
99
|
+
kMemcpy = 1,
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
constexpr MessageCreator()
|
|
103
|
+
: allocation_size_(), tag_(), alignment_(), func_(nullptr) {}
|
|
104
|
+
|
|
105
|
+
static constexpr MessageCreator ZeroInit(uint32_t allocation_size,
|
|
106
|
+
uint8_t alignment) {
|
|
107
|
+
MessageCreator out;
|
|
108
|
+
out.allocation_size_ = allocation_size;
|
|
109
|
+
out.tag_ = kZeroInit;
|
|
110
|
+
out.alignment_ = alignment;
|
|
111
|
+
return out;
|
|
112
|
+
}
|
|
113
|
+
static constexpr MessageCreator CopyInit(uint32_t allocation_size,
|
|
114
|
+
uint8_t alignment) {
|
|
115
|
+
MessageCreator out;
|
|
116
|
+
out.allocation_size_ = allocation_size;
|
|
117
|
+
out.tag_ = kMemcpy;
|
|
118
|
+
out.alignment_ = alignment;
|
|
119
|
+
return out;
|
|
120
|
+
}
|
|
121
|
+
constexpr MessageCreator(Func func, uint32_t allocation_size,
|
|
122
|
+
uint8_t alignment)
|
|
123
|
+
: allocation_size_(allocation_size),
|
|
124
|
+
tag_(kFunc),
|
|
125
|
+
alignment_(alignment),
|
|
126
|
+
func_(func) {}
|
|
127
|
+
|
|
128
|
+
// Template for testing.
|
|
129
|
+
template <typename MessageLite>
|
|
130
|
+
MessageLite* New(const MessageLite* prototype_for_func,
|
|
131
|
+
const MessageLite* prototype_for_copy, Arena* arena) const;
|
|
132
|
+
|
|
133
|
+
template <typename MessageLite>
|
|
134
|
+
MessageLite* PlacementNew(const MessageLite* prototype_for_func,
|
|
135
|
+
const MessageLite* prototype_for_copy, void* mem,
|
|
136
|
+
Arena* arena) const;
|
|
137
|
+
|
|
138
|
+
Tag tag() const { return tag_; }
|
|
139
|
+
|
|
140
|
+
uint32_t allocation_size() const { return allocation_size_; }
|
|
141
|
+
|
|
142
|
+
uint8_t alignment() const { return alignment_; }
|
|
143
|
+
|
|
144
|
+
private:
|
|
145
|
+
uint32_t allocation_size_;
|
|
146
|
+
Tag tag_;
|
|
147
|
+
uint8_t alignment_;
|
|
148
|
+
Func func_;
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
// Allow easy change to regular int on platforms where the atomic might have a
|
|
152
|
+
// perf impact.
|
|
153
|
+
//
|
|
154
|
+
// CachedSize is like std::atomic<int> but with some important changes:
|
|
155
|
+
//
|
|
156
|
+
// 1) CachedSize uses Get / Set rather than load / store.
|
|
157
|
+
// 2) CachedSize always uses relaxed ordering.
|
|
158
|
+
// 3) CachedSize is assignable and copy-constructible.
|
|
159
|
+
// 4) CachedSize has a constexpr default constructor, and a constexpr
|
|
160
|
+
// constructor that takes an int argument.
|
|
161
|
+
// 5) If the compiler supports the __atomic_load_n / __atomic_store_n builtins,
|
|
162
|
+
// then CachedSize is trivially copyable.
|
|
163
|
+
//
|
|
164
|
+
// Developed at https://godbolt.org/z/vYcx7zYs1 ; supports gcc, clang, MSVC.
|
|
165
|
+
class PROTOBUF_EXPORT CachedSize {
|
|
166
|
+
private:
|
|
167
|
+
using Scalar = int;
|
|
168
|
+
|
|
169
|
+
public:
|
|
170
|
+
constexpr CachedSize() noexcept : atom_(Scalar{}) {}
|
|
171
|
+
// NOLINTNEXTLINE(google-explicit-constructor)
|
|
172
|
+
constexpr CachedSize(Scalar desired) noexcept : atom_(desired) {}
|
|
173
|
+
|
|
174
|
+
#ifdef PROTOBUF_BUILTIN_ATOMIC
|
|
175
|
+
constexpr CachedSize(const CachedSize& other) = default;
|
|
176
|
+
|
|
177
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD Scalar Get() const noexcept {
|
|
178
|
+
return __atomic_load_n(&atom_, __ATOMIC_RELAXED);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
void Set(Scalar desired) const noexcept {
|
|
182
|
+
// Avoid writing the value when it is zero. This prevents writing to global
|
|
183
|
+
// default instances, which might be in readonly memory.
|
|
184
|
+
if (ABSL_PREDICT_FALSE(desired == 0)) {
|
|
185
|
+
if (Get() == 0) return;
|
|
186
|
+
}
|
|
187
|
+
__atomic_store_n(&atom_, desired, __ATOMIC_RELAXED);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
void SetNonZero(Scalar desired) const noexcept {
|
|
191
|
+
ABSL_DCHECK_NE(desired, 0);
|
|
192
|
+
__atomic_store_n(&atom_, desired, __ATOMIC_RELAXED);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
void SetNoDefaultInstance(Scalar desired) const noexcept {
|
|
196
|
+
__atomic_store_n(&atom_, desired, __ATOMIC_RELAXED);
|
|
197
|
+
}
|
|
198
|
+
#else
|
|
199
|
+
CachedSize(const CachedSize& other) noexcept : atom_(other.Get()) {}
|
|
200
|
+
CachedSize& operator=(const CachedSize& other) noexcept {
|
|
201
|
+
Set(other.Get());
|
|
202
|
+
return *this;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD Scalar Get() const noexcept { //
|
|
206
|
+
return atom_.load(std::memory_order_relaxed);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
void Set(Scalar desired) const noexcept {
|
|
210
|
+
// Avoid writing the value when it is zero. This prevents writing to global
|
|
211
|
+
// default instances, which might be in readonly memory.
|
|
212
|
+
if (ABSL_PREDICT_FALSE(desired == 0)) {
|
|
213
|
+
if (Get() == 0) return;
|
|
214
|
+
}
|
|
215
|
+
atom_.store(desired, std::memory_order_relaxed);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
void SetNonZero(Scalar desired) const noexcept {
|
|
219
|
+
ABSL_DCHECK_NE(desired, 0);
|
|
220
|
+
atom_.store(desired, std::memory_order_relaxed);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
void SetNoDefaultInstance(Scalar desired) const noexcept {
|
|
224
|
+
atom_.store(desired, std::memory_order_relaxed);
|
|
225
|
+
}
|
|
226
|
+
#endif
|
|
227
|
+
|
|
228
|
+
private:
|
|
229
|
+
#ifdef PROTOBUF_BUILTIN_ATOMIC
|
|
230
|
+
mutable Scalar atom_;
|
|
231
|
+
#else
|
|
232
|
+
mutable std::atomic<Scalar> atom_;
|
|
233
|
+
#endif
|
|
234
|
+
};
|
|
235
|
+
|
|
236
|
+
struct ClassData;
|
|
237
|
+
|
|
238
|
+
// Returns the ClassData for the given message.
|
|
239
|
+
//
|
|
240
|
+
// This function is used to get the ClassData for a message without having to
|
|
241
|
+
// know the type of the message. This is useful for when the message is a
|
|
242
|
+
// generated message.
|
|
243
|
+
template <typename Type>
|
|
244
|
+
const ClassData* GetClassData(const Type& msg);
|
|
245
|
+
|
|
246
|
+
template <typename T>
|
|
247
|
+
struct FallbackMessageTraits {
|
|
248
|
+
static const void* default_instance() { return &T::default_instance(); }
|
|
249
|
+
static constexpr const auto* class_data() {
|
|
250
|
+
// Force the abstract branch of `GetClassData()` to avoid endless recursion.
|
|
251
|
+
return GetClassData<MessageLite>(T::default_instance());
|
|
252
|
+
}
|
|
253
|
+
// We can't make a constexpr pointer to the default, so use a function pointer
|
|
254
|
+
// instead.
|
|
255
|
+
static constexpr auto StrongPointer() { return &T::default_instance; }
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
template <const uint32_t* kValidationData>
|
|
259
|
+
struct EnumTraitsT {
|
|
260
|
+
static constexpr const uint32_t* validation_data() { return kValidationData; }
|
|
261
|
+
};
|
|
262
|
+
|
|
263
|
+
// Traits for messages and enums.
|
|
264
|
+
// We use a class scope variable template, which can be specialized with a
|
|
265
|
+
// different type in a non-defining declaration.
|
|
266
|
+
// We need non-defining declarations because we might have duplicates of the
|
|
267
|
+
// same trait specification on each dependent coming from different .proto.h
|
|
268
|
+
// files.
|
|
269
|
+
struct MessageTraitsImpl {
|
|
270
|
+
template <typename T>
|
|
271
|
+
static FallbackMessageTraits<T> value;
|
|
272
|
+
};
|
|
273
|
+
template <typename T>
|
|
274
|
+
using MessageTraits = decltype(MessageTraitsImpl::value<T>);
|
|
275
|
+
|
|
276
|
+
struct EnumTraitsImpl {
|
|
277
|
+
struct Undefined;
|
|
278
|
+
// We use an incomplete type to cause a compiler error if something tries to
|
|
279
|
+
// instantiate `value<T>` with a `T` that had no specialization.
|
|
280
|
+
// The `enable_if` is there to workaround some compilers/tools that complain
|
|
281
|
+
// on the declaration even with no instantiations.
|
|
282
|
+
template <typename T>
|
|
283
|
+
static std::enable_if_t<sizeof(T) != 0, Undefined> value;
|
|
284
|
+
};
|
|
285
|
+
template <typename T>
|
|
286
|
+
using EnumTraits = decltype(EnumTraitsImpl::value<T>);
|
|
287
|
+
|
|
288
|
+
template <typename T>
|
|
289
|
+
struct LiteEnumFuncs {
|
|
290
|
+
static constexpr bool kIsDefined = false;
|
|
291
|
+
// Lite enums will specialize this struct to allow templates to parse/unparse
|
|
292
|
+
// enums.
|
|
293
|
+
// The declarations will be like:
|
|
294
|
+
// static constexpr bool kIsDefined = true;
|
|
295
|
+
// static constexpr auto kParseFunc = ...
|
|
296
|
+
// static constexpr auto kNameFunc = ...
|
|
297
|
+
};
|
|
298
|
+
|
|
299
|
+
class SwapFieldHelper;
|
|
300
|
+
|
|
301
|
+
// See parse_context.h for explanation
|
|
302
|
+
class ParseContext;
|
|
303
|
+
|
|
304
|
+
struct DescriptorTable;
|
|
305
|
+
class DescriptorPoolExtensionFinder;
|
|
306
|
+
class ExtensionSet;
|
|
307
|
+
class HasBitsTestPeer;
|
|
308
|
+
class InternalMetadataOffset;
|
|
309
|
+
template <typename T, size_t kFieldOffset>
|
|
310
|
+
struct InternalMetadataOffsetHelper;
|
|
311
|
+
class LazyField;
|
|
312
|
+
class RepeatedPtrFieldBase;
|
|
313
|
+
class TcParser;
|
|
314
|
+
struct TcParseTableBase;
|
|
315
|
+
class WireFormatLite;
|
|
316
|
+
class WeakFieldMap;
|
|
317
|
+
class RustMapHelper;
|
|
318
|
+
|
|
319
|
+
// We compute sizes as size_t but cache them as int. This function converts a
|
|
320
|
+
// computed size to a cached size. Since we don't proceed with serialization
|
|
321
|
+
// if the total size was > INT_MAX, it is not important what this function
|
|
322
|
+
// returns for inputs > INT_MAX. However this case should not error or
|
|
323
|
+
// ABSL_CHECK-fail, because the full size_t resolution is still returned from
|
|
324
|
+
// ByteSizeLong() and checked against INT_MAX; we can catch the overflow
|
|
325
|
+
// there.
|
|
326
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD
|
|
327
|
+
inline int ToCachedSize(size_t size) { return static_cast<int>(size); }
|
|
328
|
+
|
|
329
|
+
// We mainly calculate sizes in terms of size_t, but some functions that
|
|
330
|
+
// compute sizes return "int". These int sizes are expected to always be
|
|
331
|
+
// positive. This function is more efficient than casting an int to size_t
|
|
332
|
+
// directly on 64-bit platforms because it avoids making the compiler emit a
|
|
333
|
+
// sign extending instruction, which we don't want and don't want to pay for.
|
|
334
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD
|
|
335
|
+
inline size_t FromIntSize(int size) {
|
|
336
|
+
// Convert to unsigned before widening so sign extension is not necessary.
|
|
337
|
+
return static_cast<unsigned int>(size);
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
// For cases where a legacy function returns an integer size. We ABSL_DCHECK()
|
|
341
|
+
// that the conversion will fit within an integer; if this is false then we
|
|
342
|
+
// are losing information.
|
|
343
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD
|
|
344
|
+
inline int ToIntSize(size_t size) {
|
|
345
|
+
ABSL_DCHECK_LE(size, static_cast<size_t>(INT_MAX));
|
|
346
|
+
return static_cast<int>(size);
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
PROTOBUF_EXPORT inline const std::string& GetEmptyStringAlreadyInited() {
|
|
351
|
+
return fixed_address_empty_string.get();
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
struct ClassDataFull;
|
|
355
|
+
|
|
356
|
+
// Note: The order of arguments in the functions is chosen so that it has
|
|
357
|
+
// the same ABI as the member function that calls them. Eg the `this`
|
|
358
|
+
// pointer becomes the first argument in the free function.
|
|
359
|
+
//
|
|
360
|
+
// Future work:
|
|
361
|
+
// We could save more data by omitting any optional pointer that would
|
|
362
|
+
// otherwise be null. We can have some metadata in ClassData telling us if we
|
|
363
|
+
// have them and their offset.
|
|
364
|
+
|
|
365
|
+
struct PROTOBUF_EXPORT ClassData {
|
|
366
|
+
#ifndef PROTOBUF_MESSAGE_GLOBALS
|
|
367
|
+
const MessageLite* prototype;
|
|
368
|
+
#endif // PROTOBUF_MESSAGE_GLOBALS
|
|
369
|
+
const internal::TcParseTableBase* tc_table;
|
|
370
|
+
bool (*is_initialized)(const MessageLite&);
|
|
371
|
+
void (*merge_to_from)(MessageLite& to, const MessageLite& from_msg);
|
|
372
|
+
internal::MessageCreator message_creator;
|
|
373
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
374
|
+
void (*destroy_message)(MessageLite& msg);
|
|
375
|
+
void (MessageLite::*clear)();
|
|
376
|
+
size_t (*byte_size_long)(const MessageLite&);
|
|
377
|
+
uint8_t* (*serialize)(const MessageLite& msg, uint8_t* ptr,
|
|
378
|
+
io::EpsCopyOutputStream* stream);
|
|
379
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
380
|
+
|
|
381
|
+
// Offset of the CachedSize member.
|
|
382
|
+
uint32_t cached_size_offset;
|
|
383
|
+
// LITE objects (ie !descriptor_methods) collocate their name as a
|
|
384
|
+
// char[] just beyond the ClassData.
|
|
385
|
+
bool is_lite;
|
|
386
|
+
bool is_dynamic = false;
|
|
387
|
+
|
|
388
|
+
// In normal mode we have the small constructor to avoid the cost in
|
|
389
|
+
// codegen.
|
|
390
|
+
#if !defined(PROTOBUF_CUSTOM_VTABLE)
|
|
391
|
+
constexpr ClassData(const MessageLite* prototype,
|
|
392
|
+
const internal::TcParseTableBase* tc_table,
|
|
393
|
+
bool (*is_initialized)(const MessageLite&),
|
|
394
|
+
void (*merge_to_from)(MessageLite& to,
|
|
395
|
+
const MessageLite& from_msg),
|
|
396
|
+
internal::MessageCreator message_creator,
|
|
397
|
+
uint32_t cached_size_offset, bool is_lite)
|
|
398
|
+
:
|
|
399
|
+
#ifndef PROTOBUF_MESSAGE_GLOBALS
|
|
400
|
+
prototype(prototype),
|
|
401
|
+
#endif // PROTOBUF_MESSAGE_GLOBALS
|
|
402
|
+
tc_table(tc_table),
|
|
403
|
+
is_initialized(is_initialized),
|
|
404
|
+
merge_to_from(merge_to_from),
|
|
405
|
+
message_creator(message_creator),
|
|
406
|
+
cached_size_offset(cached_size_offset),
|
|
407
|
+
is_lite(is_lite) {
|
|
408
|
+
}
|
|
409
|
+
#endif // !PROTOBUF_CUSTOM_VTABLE
|
|
410
|
+
|
|
411
|
+
// But we always provide the full constructor even in normal mode to make
|
|
412
|
+
// helper code simpler.
|
|
413
|
+
constexpr ClassData(
|
|
414
|
+
const MessageLite* prototype, const internal::TcParseTableBase* tc_table,
|
|
415
|
+
bool (*is_initialized)(const MessageLite&),
|
|
416
|
+
void (*merge_to_from)(MessageLite& to, const MessageLite& from_msg),
|
|
417
|
+
internal::MessageCreator message_creator,
|
|
418
|
+
[[maybe_unused]] void (*destroy_message)(MessageLite& msg), //
|
|
419
|
+
[[maybe_unused]] void (MessageLite::*clear)(),
|
|
420
|
+
[[maybe_unused]] size_t (*byte_size_long)(const MessageLite&),
|
|
421
|
+
[[maybe_unused]] uint8_t* (*serialize)(const MessageLite& msg,
|
|
422
|
+
uint8_t* ptr,
|
|
423
|
+
io::EpsCopyOutputStream* stream),
|
|
424
|
+
uint32_t cached_size_offset, bool is_lite)
|
|
425
|
+
:
|
|
426
|
+
#ifndef PROTOBUF_MESSAGE_GLOBALS
|
|
427
|
+
prototype(prototype),
|
|
428
|
+
#endif // PROTOBUF_MESSAGE_GLOBALS
|
|
429
|
+
tc_table(tc_table),
|
|
430
|
+
is_initialized(is_initialized),
|
|
431
|
+
merge_to_from(merge_to_from),
|
|
432
|
+
message_creator(message_creator),
|
|
433
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
434
|
+
destroy_message(destroy_message),
|
|
435
|
+
clear(clear),
|
|
436
|
+
byte_size_long(byte_size_long),
|
|
437
|
+
serialize(serialize),
|
|
438
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
439
|
+
cached_size_offset(cached_size_offset),
|
|
440
|
+
is_lite(is_lite) {
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
const ClassDataFull& full() const;
|
|
444
|
+
|
|
445
|
+
#ifndef PROTOBUF_MESSAGE_GLOBALS
|
|
446
|
+
const MessageLite* default_instance() const { return prototype; }
|
|
447
|
+
#else
|
|
448
|
+
const MessageLite* default_instance() const;
|
|
449
|
+
#endif // PROTOBUF_MESSAGE_GLOBALS
|
|
450
|
+
|
|
451
|
+
MessageLite* New(Arena* arena) const {
|
|
452
|
+
const MessageLite* def = default_instance();
|
|
453
|
+
return message_creator.New(def, def, arena);
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
MessageLite* PlacementNew(void* mem, Arena* arena) const {
|
|
457
|
+
const MessageLite* def = default_instance();
|
|
458
|
+
return message_creator.PlacementNew(def, def, mem, arena);
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
uint32_t allocation_size() const { return message_creator.allocation_size(); }
|
|
462
|
+
|
|
463
|
+
uint8_t alignment() const { return message_creator.alignment(); }
|
|
464
|
+
};
|
|
465
|
+
|
|
466
|
+
#ifndef PROTOBUF_MESSAGE_GLOBALS
|
|
467
|
+
struct ClassDataLite : ClassData {
|
|
468
|
+
constexpr ClassDataLite(ClassData base, const char* type_name)
|
|
469
|
+
: ClassData(base), type_name_ptr(type_name) {}
|
|
470
|
+
|
|
471
|
+
const char* type_name() const { return type_name_ptr; }
|
|
472
|
+
const char* type_name_ptr;
|
|
473
|
+
|
|
474
|
+
constexpr const ClassData* base() const { return this; }
|
|
475
|
+
};
|
|
476
|
+
#else
|
|
477
|
+
using ClassDataLite = ClassDataFull;
|
|
478
|
+
#endif // PROTOBUF_MESSAGE_GLOBALS
|
|
479
|
+
|
|
480
|
+
// We use a secondary vtable for descriptor based methods. This way ClassData
|
|
481
|
+
// does not grow with the number of descriptor methods. This avoids extra
|
|
482
|
+
// costs in MessageLite.
|
|
483
|
+
struct PROTOBUF_EXPORT DescriptorMethods {
|
|
484
|
+
absl::string_view (*get_type_name)(const ClassData* data);
|
|
485
|
+
std::string (*initialization_error_string)(const MessageLite&);
|
|
486
|
+
const internal::TcParseTableBase* (*get_tc_table)(const MessageLite&);
|
|
487
|
+
size_t (*space_used_long)(const MessageLite&);
|
|
488
|
+
std::string (*debug_string)(const MessageLite&);
|
|
489
|
+
void (*verify_lazy_field_consistency)(const LazyField&);
|
|
490
|
+
};
|
|
491
|
+
|
|
492
|
+
// ClassData* can and should be placed on read-only section to maximize sharing.
|
|
493
|
+
// However, ClassDataFull has mutable fields for lazy initialization of
|
|
494
|
+
// reflection related data. To keep the lazy initialization and to move the
|
|
495
|
+
// ClassDataFull to the read-only section we use a secondary table. Extra
|
|
496
|
+
// indirection should be tolerable considering that reflection isn't performance
|
|
497
|
+
// critical.
|
|
498
|
+
struct PROTOBUF_EXPORT ReflectionData {
|
|
499
|
+
constexpr ReflectionData(const DescriptorMethods* descriptor_methods,
|
|
500
|
+
const internal::DescriptorTable* descriptor_table,
|
|
501
|
+
void (*get_metadata_tracker)())
|
|
502
|
+
: reflection(nullptr),
|
|
503
|
+
descriptor(nullptr),
|
|
504
|
+
descriptor_table(descriptor_table),
|
|
505
|
+
descriptor_methods(descriptor_methods),
|
|
506
|
+
get_metadata_tracker(get_metadata_tracker) {}
|
|
507
|
+
|
|
508
|
+
// Accesses are protected by the once_flag in `descriptor_table`. When the
|
|
509
|
+
// table is null these are populated from the beginning and need to
|
|
510
|
+
// protection.
|
|
511
|
+
const Reflection* reflection;
|
|
512
|
+
const Descriptor* descriptor;
|
|
513
|
+
|
|
514
|
+
// Codegen types will provide a DescriptorTable to do lazy
|
|
515
|
+
// registration/initialization of the reflection objects.
|
|
516
|
+
// Other types, like DynamicMessage, keep the table as null but eagerly
|
|
517
|
+
// populate `reflection`/`descriptor` fields.
|
|
518
|
+
const internal::DescriptorTable* descriptor_table;
|
|
519
|
+
const DescriptorMethods* descriptor_methods;
|
|
520
|
+
// When an access tracker is installed, this function notifies the tracker
|
|
521
|
+
// that GetMetadata was called.
|
|
522
|
+
void (*get_metadata_tracker)();
|
|
523
|
+
};
|
|
524
|
+
|
|
525
|
+
#ifndef PROTOBUF_MESSAGE_GLOBALS
|
|
526
|
+
struct PROTOBUF_EXPORT ClassDataFull : ClassData {
|
|
527
|
+
constexpr ClassDataFull(ClassData base,
|
|
528
|
+
const DescriptorMethods* descriptor_methods,
|
|
529
|
+
const internal::DescriptorTable* descriptor_table,
|
|
530
|
+
void (*get_metadata_tracker)())
|
|
531
|
+
: ClassData(base),
|
|
532
|
+
reflection_ptr(nullptr),
|
|
533
|
+
descriptor_ptr(nullptr),
|
|
534
|
+
descriptor_table_ptr(descriptor_table),
|
|
535
|
+
descriptor_methods_ptr(descriptor_methods),
|
|
536
|
+
get_metadata_tracker_func(get_metadata_tracker) {}
|
|
537
|
+
|
|
538
|
+
constexpr const ClassData* base() const { return this; }
|
|
539
|
+
|
|
540
|
+
// Accessors for reflection related data.
|
|
541
|
+
const Reflection* reflection() const { return reflection_ptr; }
|
|
542
|
+
const Descriptor* descriptor() const { return descriptor_ptr; }
|
|
543
|
+
|
|
544
|
+
void set_reflection(const Reflection* reflection) const {
|
|
545
|
+
reflection_ptr = reflection;
|
|
546
|
+
}
|
|
547
|
+
void set_descriptor(const Descriptor* descriptor) const {
|
|
548
|
+
descriptor_ptr = descriptor;
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
const internal::DescriptorTable* descriptor_table() const {
|
|
552
|
+
return descriptor_table_ptr;
|
|
553
|
+
}
|
|
554
|
+
const DescriptorMethods* descriptor_methods() const {
|
|
555
|
+
return descriptor_methods_ptr;
|
|
556
|
+
}
|
|
557
|
+
bool has_get_metadata_tracker() const {
|
|
558
|
+
return get_metadata_tracker_func != nullptr;
|
|
559
|
+
}
|
|
560
|
+
void get_metadata_tracker() const { get_metadata_tracker_func(); }
|
|
561
|
+
|
|
562
|
+
// Accesses are protected by the once_flag in `descriptor_table`. When the
|
|
563
|
+
// table is null these are populated from the beginning and need to
|
|
564
|
+
// protection.
|
|
565
|
+
mutable const Reflection* reflection_ptr;
|
|
566
|
+
mutable const Descriptor* descriptor_ptr;
|
|
567
|
+
|
|
568
|
+
// Codegen types will provide a DescriptorTable to do lazy
|
|
569
|
+
// registration/initialization of the reflection objects.
|
|
570
|
+
// Other types, like DynamicMessage, keep the table as null but eagerly
|
|
571
|
+
// populate `reflection`/`descriptor` fields.
|
|
572
|
+
const internal::DescriptorTable* descriptor_table_ptr;
|
|
573
|
+
const DescriptorMethods* descriptor_methods_ptr;
|
|
574
|
+
// When an access tracker is installed, this function notifies the tracker
|
|
575
|
+
// that GetMetadata was called.
|
|
576
|
+
void (*get_metadata_tracker_func)();
|
|
577
|
+
};
|
|
578
|
+
#else
|
|
579
|
+
// TODO b/474609573 - Rename this type to reflect that is's unified to
|
|
580
|
+
// ClassDataLite as well.
|
|
581
|
+
struct PROTOBUF_EXPORT ClassDataFull : ClassData {
|
|
582
|
+
constexpr ClassDataFull(ClassData base, ReflectionData* reflection_data)
|
|
583
|
+
: ClassData(base), aux_data{.reflection_data = reflection_data} {
|
|
584
|
+
ABSL_DCHECK(!is_lite);
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
constexpr ClassDataFull(ClassData base, const char* type_name)
|
|
588
|
+
: ClassData(base), aux_data{.type_name = type_name} {
|
|
589
|
+
ABSL_DCHECK(is_lite);
|
|
590
|
+
}
|
|
591
|
+
|
|
592
|
+
constexpr const ClassData* base() const { return this; }
|
|
593
|
+
|
|
594
|
+
// Accessors for reflection related data (ClassDataFull only).
|
|
595
|
+
const Reflection* reflection() const { return reflection_data()->reflection; }
|
|
596
|
+
const Descriptor* descriptor() const { return reflection_data()->descriptor; }
|
|
597
|
+
|
|
598
|
+
void set_reflection(const Reflection* reflection) const {
|
|
599
|
+
reflection_data()->reflection = reflection;
|
|
600
|
+
}
|
|
601
|
+
void set_descriptor(const Descriptor* descriptor) const {
|
|
602
|
+
reflection_data()->descriptor = descriptor;
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
const internal::DescriptorTable* descriptor_table() const {
|
|
606
|
+
return reflection_data()->descriptor_table;
|
|
607
|
+
}
|
|
608
|
+
const DescriptorMethods* descriptor_methods() const {
|
|
609
|
+
return reflection_data()->descriptor_methods;
|
|
610
|
+
}
|
|
611
|
+
bool has_get_metadata_tracker() const {
|
|
612
|
+
return reflection_data()->get_metadata_tracker != nullptr;
|
|
613
|
+
}
|
|
614
|
+
void get_metadata_tracker() const {
|
|
615
|
+
reflection_data()->get_metadata_tracker();
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
ReflectionData* reflection_data() const {
|
|
619
|
+
ABSL_DCHECK(!is_lite);
|
|
620
|
+
return aux_data.reflection_data;
|
|
621
|
+
}
|
|
622
|
+
|
|
623
|
+
// Accessors for type name (ClassDataLite only).
|
|
624
|
+
const char* type_name() const {
|
|
625
|
+
ABSL_DCHECK(is_lite);
|
|
626
|
+
return aux_data.type_name;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
union ReflectionDataOrTypeName {
|
|
630
|
+
ReflectionData* reflection_data;
|
|
631
|
+
const char* type_name;
|
|
632
|
+
} aux_data;
|
|
633
|
+
};
|
|
634
|
+
#endif // PROTOBUF_MESSAGE_GLOBALS
|
|
635
|
+
|
|
636
|
+
inline const ClassDataFull& ClassData::full() const {
|
|
637
|
+
ABSL_DCHECK(!is_lite);
|
|
638
|
+
return *static_cast<const ClassDataFull*>(this);
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
#ifndef PROTOBUF_MESSAGE_GLOBALS
|
|
642
|
+
struct MessageGlobalsBase {
|
|
643
|
+
template <typename T = MessageLite>
|
|
644
|
+
static const T* ToDefaultInstance(const void* globals) {
|
|
645
|
+
return reinterpret_cast<const T*>(globals);
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
static const MessageGlobalsBase* FromDefaultInstance(
|
|
649
|
+
const void* default_instance) {
|
|
650
|
+
return reinterpret_cast<const MessageGlobalsBase*>(default_instance);
|
|
651
|
+
}
|
|
652
|
+
};
|
|
653
|
+
|
|
654
|
+
template <const auto* kDefault, const auto* kClassData>
|
|
655
|
+
struct GeneratedMessageTraitsT {
|
|
656
|
+
static constexpr const void* default_instance() { return kDefault; }
|
|
657
|
+
static constexpr const auto* class_data() { return kClassData->base(); }
|
|
658
|
+
static constexpr auto StrongPointer() { return default_instance(); }
|
|
659
|
+
};
|
|
660
|
+
#else
|
|
661
|
+
struct MessageGlobalsBase {
|
|
662
|
+
template <size_t R>
|
|
663
|
+
static constexpr size_t RoundUpTo(size_t n) {
|
|
664
|
+
static_assert(absl::has_single_bit(R), "Must be power of two");
|
|
665
|
+
return (n + (R - 1)) & ~(R - 1);
|
|
666
|
+
}
|
|
667
|
+
|
|
668
|
+
static constexpr size_t OffsetToDefault() {
|
|
669
|
+
return RoundUpTo<kMaxMessageAlignment>(sizeof(MessageGlobalsBase));
|
|
670
|
+
}
|
|
671
|
+
template <typename T = MessageLite>
|
|
672
|
+
static const T* ToDefaultInstance(const void* globals) {
|
|
673
|
+
return reinterpret_cast<const T*>(reinterpret_cast<const char*>(globals) +
|
|
674
|
+
OffsetToDefault());
|
|
675
|
+
}
|
|
676
|
+
|
|
677
|
+
static const MessageGlobalsBase* FromDefaultInstance(
|
|
678
|
+
const void* default_instance) {
|
|
679
|
+
return reinterpret_cast<const MessageGlobalsBase*>(
|
|
680
|
+
reinterpret_cast<const char*>(default_instance) - OffsetToDefault());
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
static constexpr const ClassData* GetClassData(const void* globals) {
|
|
684
|
+
return static_cast<const MessageGlobalsBase*>(globals)->class_data.base();
|
|
685
|
+
}
|
|
686
|
+
constexpr const ClassData* GetClassData() const { return class_data.base(); }
|
|
687
|
+
|
|
688
|
+
explicit constexpr MessageGlobalsBase(ClassDataFull class_data)
|
|
689
|
+
: class_data(class_data) {}
|
|
690
|
+
|
|
691
|
+
static const TcParseTableBase* ToParseTableBase(const void* g) {
|
|
692
|
+
const auto* globals = static_cast<const MessageGlobalsBase*>(g);
|
|
693
|
+
ABSL_DCHECK_NE(globals, nullptr);
|
|
694
|
+
return globals->class_data.tc_table;
|
|
695
|
+
}
|
|
696
|
+
|
|
697
|
+
// It also aliases to ClassDataLite.
|
|
698
|
+
ClassDataFull class_data;
|
|
699
|
+
};
|
|
700
|
+
|
|
701
|
+
template <const auto* kGlobals>
|
|
702
|
+
struct GeneratedMessageTraitsT {
|
|
703
|
+
static const void* default_instance() {
|
|
704
|
+
return MessageGlobalsBase::ToDefaultInstance(kGlobals);
|
|
705
|
+
}
|
|
706
|
+
static const auto* class_data() {
|
|
707
|
+
return MessageGlobalsBase::GetClassData(kGlobals);
|
|
708
|
+
}
|
|
709
|
+
static constexpr const auto* globals() { return kGlobals; }
|
|
710
|
+
static constexpr auto StrongPointer() { return kGlobals; }
|
|
711
|
+
};
|
|
712
|
+
|
|
713
|
+
inline const MessageLite* ClassData::default_instance() const {
|
|
714
|
+
static_assert(PROTOBUF_FIELD_OFFSET(MessageGlobalsBase, class_data) == 0);
|
|
715
|
+
return MessageGlobalsBase::ToDefaultInstance(this);
|
|
716
|
+
}
|
|
717
|
+
#endif // PROTOBUF_MESSAGE_GLOBALS
|
|
718
|
+
} // namespace internal
|
|
719
|
+
|
|
720
|
+
// Interface to light weight protocol messages.
|
|
721
|
+
//
|
|
722
|
+
// This interface is implemented by all protocol message objects. Non-lite
|
|
723
|
+
// messages additionally implement the Message interface, which is a
|
|
724
|
+
// subclass of MessageLite. Use MessageLite instead when you only need
|
|
725
|
+
// the subset of features which it supports -- namely, nothing that uses
|
|
726
|
+
// descriptors or reflection. You can instruct the protocol compiler
|
|
727
|
+
// to generate classes which implement only MessageLite, not the full
|
|
728
|
+
// Message interface, by adding the following line to the .proto file:
|
|
729
|
+
//
|
|
730
|
+
// option optimize_for = LITE_RUNTIME;
|
|
731
|
+
//
|
|
732
|
+
// This is particularly useful on resource-constrained systems where
|
|
733
|
+
// the full protocol buffers runtime library is too big.
|
|
734
|
+
//
|
|
735
|
+
// Note that on non-constrained systems (e.g. servers) when you need
|
|
736
|
+
// to link in lots of protocol definitions, a better way to reduce
|
|
737
|
+
// total code footprint is to use optimize_for = CODE_SIZE. This
|
|
738
|
+
// will make the generated code smaller while still supporting all the
|
|
739
|
+
// same features (at the expense of speed). optimize_for = LITE_RUNTIME
|
|
740
|
+
// is best when you only have a small number of message types linked
|
|
741
|
+
// into your binary, in which case the size of the protocol buffers
|
|
742
|
+
// runtime itself is the biggest problem.
|
|
743
|
+
//
|
|
744
|
+
// Users must not derive from this class. Only the protocol compiler and
|
|
745
|
+
// the internal library are allowed to create subclasses.
|
|
746
|
+
class PROTOBUF_EXPORT MessageLite {
|
|
747
|
+
public:
|
|
748
|
+
MessageLite(const MessageLite&) = delete;
|
|
749
|
+
MessageLite& operator=(const MessageLite&) = delete;
|
|
750
|
+
PROTOBUF_VIRTUAL ~MessageLite() = default;
|
|
751
|
+
|
|
752
|
+
// Basic Operations ------------------------------------------------
|
|
753
|
+
|
|
754
|
+
// Get the name of this message type, e.g. "foo.bar.BazProto".
|
|
755
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD absl::string_view GetTypeName() const;
|
|
756
|
+
|
|
757
|
+
// Construct a new instance of the same type. Ownership is passed to the
|
|
758
|
+
// caller.
|
|
759
|
+
[[nodiscard]] MessageLite* New() const { return New(nullptr); }
|
|
760
|
+
|
|
761
|
+
// Construct a new instance on the arena. Ownership is passed to the caller
|
|
762
|
+
// if arena is a nullptr.
|
|
763
|
+
[[nodiscard]] MessageLite* New(Arena* arena) const;
|
|
764
|
+
|
|
765
|
+
// Returns the arena, if any, that directly owns this message and its internal
|
|
766
|
+
// memory (Arena::Own is different in that the arena doesn't directly own the
|
|
767
|
+
// internal memory). This method is used in proto's implementation for
|
|
768
|
+
// swapping, moving and setting allocated, for deciding whether the ownership
|
|
769
|
+
// of this message or its internal memory could be changed.
|
|
770
|
+
[[nodiscard]] Arena* GetArena() const { return _internal_metadata_.arena(); }
|
|
771
|
+
|
|
772
|
+
// Clear all fields of the message and set them to their default values.
|
|
773
|
+
// Clear() assumes that any memory allocated to hold parts of the message
|
|
774
|
+
// will likely be needed again, so the memory used may not be freed.
|
|
775
|
+
// To ensure that all memory used by a Message is freed, you must delete it.
|
|
776
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
777
|
+
void Clear() { (this->*_class_data_->clear)(); }
|
|
778
|
+
#else
|
|
779
|
+
virtual void Clear() = 0;
|
|
780
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
781
|
+
|
|
782
|
+
// Quickly check if all required fields have values set.
|
|
783
|
+
[[nodiscard]] bool IsInitialized() const;
|
|
784
|
+
|
|
785
|
+
// This is not implemented for Lite messages -- it just returns "(cannot
|
|
786
|
+
// determine missing fields for lite message)". However, it is implemented
|
|
787
|
+
// for full messages. See message.h.
|
|
788
|
+
[[nodiscard]] std::string InitializationErrorString() const;
|
|
789
|
+
|
|
790
|
+
// If |other| is the exact same class as this, calls MergeFrom(). Otherwise,
|
|
791
|
+
// results are undefined (probably crash).
|
|
792
|
+
void CheckTypeAndMergeFrom(const MessageLite& other);
|
|
793
|
+
|
|
794
|
+
// These methods return a human-readable summary of the message. Note that
|
|
795
|
+
// since the MessageLite interface does not support reflection, there is very
|
|
796
|
+
// little information that these methods can provide. They are shadowed by
|
|
797
|
+
// methods of the same name on the Message interface which provide much more
|
|
798
|
+
// information. The methods here are intended primarily to facilitate code
|
|
799
|
+
// reuse for logic that needs to interoperate with both full and lite protos.
|
|
800
|
+
//
|
|
801
|
+
// The format of the returned string is subject to change, so please do not
|
|
802
|
+
// assume it will remain stable over time.
|
|
803
|
+
[[nodiscard]] std::string DebugString() const;
|
|
804
|
+
[[nodiscard]] std::string ShortDebugString() const { return DebugString(); }
|
|
805
|
+
// MessageLite::DebugString is already Utf8 Safe. This is to add compatibility
|
|
806
|
+
// with Message.
|
|
807
|
+
[[nodiscard]] std::string Utf8DebugString() const { return DebugString(); }
|
|
808
|
+
|
|
809
|
+
// Implementation of the `AbslStringify` interface. This adds `DebugString()`
|
|
810
|
+
// to the sink. Do not rely on exact format.
|
|
811
|
+
template <typename Sink>
|
|
812
|
+
friend void AbslStringify(Sink& sink, const google::protobuf::MessageLite& msg) {
|
|
813
|
+
sink.Append(msg.DebugString());
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
// Parsing ---------------------------------------------------------
|
|
817
|
+
// Methods for parsing in protocol buffer format. Most of these are
|
|
818
|
+
// just simple wrappers around MergeFromCodedStream(). Clear() will be
|
|
819
|
+
// called before merging the input.
|
|
820
|
+
|
|
821
|
+
// Fill the message with a protocol buffer parsed from the given input
|
|
822
|
+
// stream. Returns false on a read error or if the input is in the wrong
|
|
823
|
+
// format. A successful return does not indicate the entire input is
|
|
824
|
+
// consumed, ensure you call ConsumedEntireMessage() to check that if
|
|
825
|
+
// applicable.
|
|
826
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
827
|
+
ParseFromCodedStream(io::CodedInputStream* input);
|
|
828
|
+
// Like ParseFromCodedStream(), but accepts messages that are missing
|
|
829
|
+
// required fields.
|
|
830
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
831
|
+
ParsePartialFromCodedStream(io::CodedInputStream* input);
|
|
832
|
+
// Read a protocol buffer from the given zero-copy input stream. If
|
|
833
|
+
// successful, the entire input will be consumed.
|
|
834
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
835
|
+
ParseFromZeroCopyStream(io::ZeroCopyInputStream* input);
|
|
836
|
+
// Like ParseFromZeroCopyStream(), but accepts messages that are missing
|
|
837
|
+
// required fields.
|
|
838
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
839
|
+
ParsePartialFromZeroCopyStream(io::ZeroCopyInputStream* input);
|
|
840
|
+
// Parse a protocol buffer from a file descriptor. If successful, the entire
|
|
841
|
+
// input will be consumed.
|
|
842
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
843
|
+
ParseFromFileDescriptor(int file_descriptor);
|
|
844
|
+
// Like ParseFromFileDescriptor(), but accepts messages that are missing
|
|
845
|
+
// required fields.
|
|
846
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
847
|
+
ParsePartialFromFileDescriptor(int file_descriptor);
|
|
848
|
+
// Parse a protocol buffer from a C++ istream. If successful, the entire
|
|
849
|
+
// input will be consumed.
|
|
850
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
851
|
+
ParseFromIstream(std::istream* input);
|
|
852
|
+
// Like ParseFromIstream(), but accepts messages that are missing
|
|
853
|
+
// required fields.
|
|
854
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
855
|
+
ParsePartialFromIstream(std::istream* input);
|
|
856
|
+
// Read a protocol buffer from the given zero-copy input stream, expecting
|
|
857
|
+
// the message to be exactly "size" bytes long. If successful, exactly
|
|
858
|
+
// this many bytes will have been consumed from the input.
|
|
859
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool
|
|
860
|
+
MergePartialFromBoundedZeroCopyStream(io::ZeroCopyInputStream* input,
|
|
861
|
+
int size);
|
|
862
|
+
// Like ParseFromBoundedZeroCopyStream(), but accepts messages that are
|
|
863
|
+
// missing required fields.
|
|
864
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromBoundedZeroCopyStream(
|
|
865
|
+
io::ZeroCopyInputStream* input, int size);
|
|
866
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
867
|
+
ParseFromBoundedZeroCopyStream(io::ZeroCopyInputStream* input, int size);
|
|
868
|
+
// Like ParseFromBoundedZeroCopyStream(), but accepts messages that are
|
|
869
|
+
// missing required fields.
|
|
870
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
871
|
+
ParsePartialFromBoundedZeroCopyStream(io::ZeroCopyInputStream* input,
|
|
872
|
+
int size);
|
|
873
|
+
// Parses a protocol buffer contained in a string or Cord. Returns true on
|
|
874
|
+
// success. This function takes a string in the (non-human-readable) binary
|
|
875
|
+
// wire format, matching the encoding output by
|
|
876
|
+
// MessageLite::SerializeToString(). If you'd like to convert a human-readable
|
|
877
|
+
// string into a protocol buffer object, see
|
|
878
|
+
// google::protobuf::TextFormat::ParseFromString().
|
|
879
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
880
|
+
ParseFromString(absl::string_view data);
|
|
881
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
882
|
+
ParseFromString(const absl::Cord& data);
|
|
883
|
+
// Like ParseFromString(), but accepts messages that are missing
|
|
884
|
+
// required fields.
|
|
885
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
886
|
+
ParsePartialFromString(absl::string_view data);
|
|
887
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
888
|
+
ParsePartialFromString(const absl::Cord& data);
|
|
889
|
+
// Parse a protocol buffer contained in an array of bytes.
|
|
890
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
891
|
+
ParseFromArray(const void* data, int size);
|
|
892
|
+
// Like ParseFromArray(), but accepts messages that are missing
|
|
893
|
+
// required fields.
|
|
894
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
895
|
+
ParsePartialFromArray(const void* data, int size);
|
|
896
|
+
|
|
897
|
+
|
|
898
|
+
// Reads a protocol buffer from the stream and merges it into this
|
|
899
|
+
// Message. Singular fields read from the what is
|
|
900
|
+
// already in the Message and repeated fields are appended to those
|
|
901
|
+
// already present.
|
|
902
|
+
//
|
|
903
|
+
// It is the responsibility of the caller to call input->LastTagWas()
|
|
904
|
+
// (for groups) or input->ConsumedEntireMessage() (for non-groups) after
|
|
905
|
+
// this returns to verify that the message's end was delimited correctly.
|
|
906
|
+
//
|
|
907
|
+
// ParseFromCodedStream() is implemented as Clear() followed by
|
|
908
|
+
// MergeFromCodedStream().
|
|
909
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromCodedStream(
|
|
910
|
+
io::CodedInputStream* input);
|
|
911
|
+
|
|
912
|
+
// Like MergeFromCodedStream(), but succeeds even if required fields are
|
|
913
|
+
// missing in the input.
|
|
914
|
+
//
|
|
915
|
+
// MergeFromCodedStream() is just implemented as MergePartialFromCodedStream()
|
|
916
|
+
// followed by IsInitialized().
|
|
917
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergePartialFromCodedStream(
|
|
918
|
+
io::CodedInputStream* input);
|
|
919
|
+
|
|
920
|
+
// Merge a protocol buffer contained in a string.
|
|
921
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromString(
|
|
922
|
+
absl::string_view data);
|
|
923
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromString(
|
|
924
|
+
const absl::Cord& data);
|
|
925
|
+
|
|
926
|
+
// Like MergeFromString(), but accepts messages that are missing required
|
|
927
|
+
// fields.
|
|
928
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergePartialFromString(
|
|
929
|
+
absl::string_view data);
|
|
930
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergePartialFromString(
|
|
931
|
+
const absl::Cord& data);
|
|
932
|
+
|
|
933
|
+
// Serialization ---------------------------------------------------
|
|
934
|
+
// Methods for serializing in protocol buffer format. Most of these
|
|
935
|
+
// are just simple wrappers around ByteSize() and SerializeWithCachedSizes().
|
|
936
|
+
|
|
937
|
+
// Write a protocol buffer of this message to the given output. Returns
|
|
938
|
+
// false on a write error. If the message is missing required fields,
|
|
939
|
+
// this may ABSL_CHECK-fail.
|
|
940
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToCodedStream(
|
|
941
|
+
io::CodedOutputStream* output) const;
|
|
942
|
+
// Like SerializeToCodedStream(), but allows missing required fields.
|
|
943
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToCodedStream(
|
|
944
|
+
io::CodedOutputStream* output) const;
|
|
945
|
+
// Write the message to the given zero-copy output stream. All required
|
|
946
|
+
// fields must be set.
|
|
947
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToZeroCopyStream(
|
|
948
|
+
io::ZeroCopyOutputStream* output) const;
|
|
949
|
+
// Like SerializeToZeroCopyStream(), but allows missing required fields.
|
|
950
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToZeroCopyStream(
|
|
951
|
+
io::ZeroCopyOutputStream* output) const;
|
|
952
|
+
// Serialize the message and store it in the given string. All required
|
|
953
|
+
// fields must be set.
|
|
954
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToString(
|
|
955
|
+
std::string* output) const;
|
|
956
|
+
// Serialize the message and store it in the given Cord. All required
|
|
957
|
+
// fields must be set.
|
|
958
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToString(
|
|
959
|
+
absl::Cord* output) const;
|
|
960
|
+
// Like SerializeToString(), but allows missing required fields.
|
|
961
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToString(
|
|
962
|
+
std::string* output) const;
|
|
963
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToString(
|
|
964
|
+
absl::Cord* output) const;
|
|
965
|
+
// Serialize the message and store it in the given byte array. All required
|
|
966
|
+
// fields must be set.
|
|
967
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToArray(void* data,
|
|
968
|
+
int size) const;
|
|
969
|
+
// Like SerializeToArray(), but allows missing required fields.
|
|
970
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToArray(
|
|
971
|
+
void* data, int size) const;
|
|
972
|
+
|
|
973
|
+
// Make a string encoding the message. Is equivalent to calling
|
|
974
|
+
// SerializeToString() on a string and using that. Returns the empty
|
|
975
|
+
// string if SerializeToString() would have returned an error.
|
|
976
|
+
// Note: If you intend to generate many such strings, you may
|
|
977
|
+
// reduce heap fragmentation by instead re-using the same string
|
|
978
|
+
// object with calls to SerializeToString().
|
|
979
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD std::string SerializeAsString() const;
|
|
980
|
+
// Like SerializeAsString(), but allows missing required fields.
|
|
981
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD std::string SerializePartialAsString()
|
|
982
|
+
const;
|
|
983
|
+
|
|
984
|
+
// Serialize the message and write it to the given file descriptor. All
|
|
985
|
+
// required fields must be set.
|
|
986
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToFileDescriptor(
|
|
987
|
+
int file_descriptor) const;
|
|
988
|
+
// Like SerializeToFileDescriptor(), but allows missing required fields.
|
|
989
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToFileDescriptor(
|
|
990
|
+
int file_descriptor) const;
|
|
991
|
+
// Serialize the message and write it to the given C++ ostream. All
|
|
992
|
+
// required fields must be set.
|
|
993
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToOstream(
|
|
994
|
+
std::ostream* output) const;
|
|
995
|
+
// Like SerializeToOstream(), but allows missing required fields.
|
|
996
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToOstream(
|
|
997
|
+
std::ostream* output) const;
|
|
998
|
+
|
|
999
|
+
// Like SerializeToString(), but appends to the data to the string's
|
|
1000
|
+
// existing contents. All required fields must be set.
|
|
1001
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool AppendToString(
|
|
1002
|
+
std::string* output) const;
|
|
1003
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool AppendToString(
|
|
1004
|
+
absl::Cord* output) const;
|
|
1005
|
+
// Like AppendToString(), but allows missing required fields.
|
|
1006
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool AppendPartialToString(
|
|
1007
|
+
std::string* output) const;
|
|
1008
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool AppendPartialToString(
|
|
1009
|
+
absl::Cord* output) const;
|
|
1010
|
+
|
|
1011
|
+
// Reads a protocol buffer from a Cord and merges it into this message.
|
|
1012
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1013
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD
|
|
1014
|
+
bool MergeFromCord(const absl::Cord& data) { return MergeFromString(data); }
|
|
1015
|
+
// Like MergeFromCord(), but accepts messages that are missing
|
|
1016
|
+
// required fields.
|
|
1017
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1018
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergePartialFromCord(
|
|
1019
|
+
const absl::Cord& data) {
|
|
1020
|
+
return MergePartialFromString(data);
|
|
1021
|
+
}
|
|
1022
|
+
// Parse a protocol buffer contained in a Cord.
|
|
1023
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1024
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
1025
|
+
ParseFromCord(const absl::Cord& data) {
|
|
1026
|
+
return ParseFromString(data);
|
|
1027
|
+
}
|
|
1028
|
+
// Like ParseFromCord(), but accepts messages that are missing
|
|
1029
|
+
// required fields.
|
|
1030
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1031
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD ABSL_ATTRIBUTE_REINITIALIZES bool
|
|
1032
|
+
ParsePartialFromCord(const absl::Cord& data) {
|
|
1033
|
+
return ParsePartialFromString(data);
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1036
|
+
// Serialize the message and store it in the given Cord. All required
|
|
1037
|
+
// fields must be set.
|
|
1038
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1039
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializeToCord(
|
|
1040
|
+
absl::Cord* output) const {
|
|
1041
|
+
return SerializeToString(output);
|
|
1042
|
+
}
|
|
1043
|
+
// Like SerializeToCord(), but allows missing required fields.
|
|
1044
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1045
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool SerializePartialToCord(
|
|
1046
|
+
absl::Cord* output) const {
|
|
1047
|
+
return SerializePartialToString(output);
|
|
1048
|
+
}
|
|
1049
|
+
|
|
1050
|
+
// Make a Cord encoding the message. Is equivalent to calling
|
|
1051
|
+
// SerializeToCord() on a Cord and using that. Returns an empty
|
|
1052
|
+
// Cord if SerializeToCord() would have returned an error.
|
|
1053
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD absl::Cord SerializeAsCord() const;
|
|
1054
|
+
// Like SerializeAsCord(), but allows missing required fields.
|
|
1055
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD absl::Cord SerializePartialAsCord() const;
|
|
1056
|
+
|
|
1057
|
+
// Like SerializeToCord(), but appends to the data to the Cord's existing
|
|
1058
|
+
// contents. All required fields must be set.
|
|
1059
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1060
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD
|
|
1061
|
+
bool AppendToCord(absl::Cord* output) const { return AppendToString(output); }
|
|
1062
|
+
// Like AppendToCord(), but allows missing required fields.
|
|
1063
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1064
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool AppendPartialToCord(
|
|
1065
|
+
absl::Cord* output) const {
|
|
1066
|
+
return AppendPartialToString(output);
|
|
1067
|
+
}
|
|
1068
|
+
|
|
1069
|
+
// Computes the serialized size of the message. This recursively calls
|
|
1070
|
+
// ByteSizeLong() on all embedded messages.
|
|
1071
|
+
//
|
|
1072
|
+
// ByteSizeLong() is generally linear in the number of fields defined for the
|
|
1073
|
+
// proto.
|
|
1074
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1075
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD size_t ByteSizeLong() const {
|
|
1076
|
+
return _class_data_->byte_size_long(*this);
|
|
1077
|
+
}
|
|
1078
|
+
#else
|
|
1079
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD virtual size_t ByteSizeLong() const = 0;
|
|
1080
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
1081
|
+
|
|
1082
|
+
// Legacy ByteSize() API.
|
|
1083
|
+
[[deprecated(
|
|
1084
|
+
"Please use ByteSizeLong() "
|
|
1085
|
+
"instead")]] PROTOBUF_FUTURE_ADD_EARLY_NODISCARD int
|
|
1086
|
+
ByteSize() const {
|
|
1087
|
+
return internal::ToIntSize(ByteSizeLong());
|
|
1088
|
+
}
|
|
1089
|
+
|
|
1090
|
+
// Serializes the message without recomputing the size. The message must not
|
|
1091
|
+
// have changed since the last call to ByteSize(), and the value returned by
|
|
1092
|
+
// ByteSize must be non-negative. Otherwise the results are undefined.
|
|
1093
|
+
void SerializeWithCachedSizes(io::CodedOutputStream* output) const {
|
|
1094
|
+
output->SetCur(_InternalSerialize(output->Cur(), output->EpsCopy()));
|
|
1095
|
+
}
|
|
1096
|
+
|
|
1097
|
+
// Functions below here are not part of the public interface. It isn't
|
|
1098
|
+
// enforced, but they should be treated as private, and will be private
|
|
1099
|
+
// at some future time. Unfortunately the implementation of the "friend"
|
|
1100
|
+
// keyword in GCC is broken at the moment, but we expect it will be fixed.
|
|
1101
|
+
|
|
1102
|
+
// Like SerializeWithCachedSizes, but writes directly to *target, returning
|
|
1103
|
+
// a pointer to the byte immediately after the last byte written. "target"
|
|
1104
|
+
// must point at a byte array of at least ByteSize() bytes. Whether to use
|
|
1105
|
+
// deterministic serialization, e.g., maps in sorted order, is determined by
|
|
1106
|
+
// CodedOutputStream::IsDefaultSerializationDeterministic().
|
|
1107
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD uint8_t* SerializeWithCachedSizesToArray(
|
|
1108
|
+
uint8_t* target) const;
|
|
1109
|
+
|
|
1110
|
+
// Returns the result of the last call to ByteSize(). An embedded message's
|
|
1111
|
+
// size is needed both to serialize it (only true for length-prefixed
|
|
1112
|
+
// submessages) and to compute the outer message's size. Caching
|
|
1113
|
+
// the size avoids computing it multiple times.
|
|
1114
|
+
// Note that the submessage size is unnecessary when using
|
|
1115
|
+
// group encoding / delimited since we have SGROUP/EGROUP bounds.
|
|
1116
|
+
//
|
|
1117
|
+
// ByteSize() does not automatically use the cached size when available
|
|
1118
|
+
// because this would require invalidating it every time the message was
|
|
1119
|
+
// modified, which would be too hard and expensive. (E.g. if a deeply-nested
|
|
1120
|
+
// sub-message is changed, all of its parents' cached sizes would need to be
|
|
1121
|
+
// invalidated, which is too much work for an otherwise inlined setter
|
|
1122
|
+
// method.)
|
|
1123
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1124
|
+
[[nodiscard]] int GetCachedSize() const { return AccessCachedSize().Get(); }
|
|
1125
|
+
#else
|
|
1126
|
+
[[nodiscard]] int GetCachedSize() const;
|
|
1127
|
+
#endif
|
|
1128
|
+
|
|
1129
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const char* _InternalParse(
|
|
1130
|
+
const char* ptr, internal::ParseContext* ctx);
|
|
1131
|
+
|
|
1132
|
+
protected:
|
|
1133
|
+
// Message implementations require access to internally visible API.
|
|
1134
|
+
static constexpr internal::InternalVisibility internal_visibility() {
|
|
1135
|
+
return internal::InternalVisibility{};
|
|
1136
|
+
}
|
|
1137
|
+
|
|
1138
|
+
template <typename T>
|
|
1139
|
+
PROTOBUF_ALWAYS_INLINE static T* DefaultConstruct(Arena* arena) {
|
|
1140
|
+
return static_cast<T*>(Arena::DefaultConstruct<T>(arena));
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1143
|
+
template <typename T>
|
|
1144
|
+
static void* NewImpl(const void*, void* mem, Arena* arena) {
|
|
1145
|
+
return ::new (mem) T(arena);
|
|
1146
|
+
}
|
|
1147
|
+
template <typename T>
|
|
1148
|
+
static constexpr internal::MessageCreator GetNewImpl() {
|
|
1149
|
+
if constexpr (internal::EnableCustomNewFor<T>()) {
|
|
1150
|
+
return T::InternalNewImpl_();
|
|
1151
|
+
} else {
|
|
1152
|
+
return internal::MessageCreator(&T::PlacementNew_, sizeof(T), alignof(T));
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1157
|
+
template <typename T>
|
|
1158
|
+
static constexpr auto GetClearImpl() {
|
|
1159
|
+
return static_cast<void (MessageLite::*)()>(&T::Clear);
|
|
1160
|
+
}
|
|
1161
|
+
#else // PROTOBUF_CUSTOM_VTABLE
|
|
1162
|
+
// When custom vtables are off we avoid instantiating the functions because we
|
|
1163
|
+
// will not use them anyway. Less work for the compiler.
|
|
1164
|
+
template <typename T>
|
|
1165
|
+
using GetClearImpl = std::nullptr_t;
|
|
1166
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
1167
|
+
|
|
1168
|
+
template <typename T>
|
|
1169
|
+
PROTOBUF_ALWAYS_INLINE static T* CopyConstruct(Arena* arena, const T& from) {
|
|
1170
|
+
return static_cast<T*>(Arena::CopyConstruct<T>(arena, &from));
|
|
1171
|
+
}
|
|
1172
|
+
|
|
1173
|
+
// As above, but for fields that use base class type. Eg foreign weak fields.
|
|
1174
|
+
static MessageLite* CopyConstruct(Arena* arena, const MessageLite& from);
|
|
1175
|
+
|
|
1176
|
+
PROTOBUF_ALWAYS_INLINE static Message* CopyConstruct(Arena* arena,
|
|
1177
|
+
const Message& from) {
|
|
1178
|
+
return reinterpret_cast<Message*>(
|
|
1179
|
+
CopyConstruct(arena, reinterpret_cast<const MessageLite&>(from)));
|
|
1180
|
+
}
|
|
1181
|
+
|
|
1182
|
+
// `CheckTypeAndMergeFrom()` and should be preferred by friended internal
|
|
1183
|
+
// callers that have the right `ClassData` handy.
|
|
1184
|
+
// REQUIRES: Both `this` and `other` are the exact same class as represented
|
|
1185
|
+
// by `data`. If there is a mismatch, CHECK-fails in debug builds or causes UB
|
|
1186
|
+
// in release builds (probably a crash).
|
|
1187
|
+
PROTOBUF_ALWAYS_INLINE void MergeFromWithClassData(
|
|
1188
|
+
const MessageLite& other, const internal::ClassData* data) {
|
|
1189
|
+
ABSL_DCHECK(data != nullptr);
|
|
1190
|
+
ABSL_DCHECK(GetClassData() == data && other.GetClassData() == data)
|
|
1191
|
+
<< "Invalid call to " << __func__ << ": this=" << GetTypeName()
|
|
1192
|
+
<< " other=" << other.GetTypeName()
|
|
1193
|
+
<< " data=" << data->default_instance()->GetTypeName();
|
|
1194
|
+
data->merge_to_from(*this, other);
|
|
1195
|
+
}
|
|
1196
|
+
|
|
1197
|
+
const internal::TcParseTableBase* GetTcParseTable() const {
|
|
1198
|
+
auto* data = GetClassData();
|
|
1199
|
+
ABSL_DCHECK(data != nullptr);
|
|
1200
|
+
|
|
1201
|
+
auto* tc_table = data->tc_table;
|
|
1202
|
+
if (ABSL_PREDICT_FALSE(tc_table == nullptr)) {
|
|
1203
|
+
ABSL_DCHECK(!data->is_lite);
|
|
1204
|
+
return data->full().descriptor_methods()->get_tc_table(*this);
|
|
1205
|
+
}
|
|
1206
|
+
return tc_table;
|
|
1207
|
+
}
|
|
1208
|
+
|
|
1209
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1210
|
+
explicit constexpr MessageLite(const internal::ClassData* data)
|
|
1211
|
+
: _class_data_(data) {}
|
|
1212
|
+
explicit MessageLite(Arena* arena, const internal::ClassData* data)
|
|
1213
|
+
: _internal_metadata_(arena), _class_data_(data) {}
|
|
1214
|
+
#else // PROTOBUF_CUSTOM_VTABLE
|
|
1215
|
+
constexpr MessageLite() {}
|
|
1216
|
+
explicit MessageLite(Arena* arena) : _internal_metadata_(arena) {}
|
|
1217
|
+
explicit constexpr MessageLite(const internal::ClassData*) {}
|
|
1218
|
+
explicit MessageLite(Arena* arena, const internal::ClassData*)
|
|
1219
|
+
: _internal_metadata_(arena) {}
|
|
1220
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
1221
|
+
|
|
1222
|
+
// GetClassData() returns a pointer to a ClassData struct which
|
|
1223
|
+
// exists in global memory and is unique to each subclass. This uniqueness
|
|
1224
|
+
// property is used in order to quickly determine whether two messages are
|
|
1225
|
+
// of the same type.
|
|
1226
|
+
//
|
|
1227
|
+
// This is a work in progress. There are still some types (eg MapEntry) that
|
|
1228
|
+
// return a default table instead of a unique one.
|
|
1229
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1230
|
+
const internal::ClassData* GetClassData() const {
|
|
1231
|
+
::absl::PrefetchToLocalCache(_class_data_);
|
|
1232
|
+
return _class_data_;
|
|
1233
|
+
}
|
|
1234
|
+
#else // PROTOBUF_CUSTOM_VTABLE
|
|
1235
|
+
virtual const internal::ClassData* GetClassData() const = 0;
|
|
1236
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
1237
|
+
|
|
1238
|
+
// NOLINTNEXTLINE(google3-readability-class-member-naming)
|
|
1239
|
+
internal::InternalMetadata _internal_metadata_;
|
|
1240
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1241
|
+
const internal::ClassData* _class_data_;
|
|
1242
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
1243
|
+
|
|
1244
|
+
// Return the cached size object as described by
|
|
1245
|
+
// ClassData::cached_size_offset.
|
|
1246
|
+
const internal::CachedSize& AccessCachedSize() const {
|
|
1247
|
+
return *reinterpret_cast<const internal::CachedSize*>(
|
|
1248
|
+
reinterpret_cast<const char*>(this) +
|
|
1249
|
+
GetClassData()->cached_size_offset);
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1252
|
+
// The following methods should be used to access has bits. They enable
|
|
1253
|
+
// measuring the cost of checking/setting has bits with inline frame data.
|
|
1254
|
+
static PROTOBUF_ALWAYS_INLINE constexpr void SetHasBit(
|
|
1255
|
+
uint32_t& cached_has_bits, uint32_t has_bit_mask) {
|
|
1256
|
+
cached_has_bits |= has_bit_mask;
|
|
1257
|
+
}
|
|
1258
|
+
|
|
1259
|
+
static PROTOBUF_ALWAYS_INLINE constexpr void ClearHasBit(
|
|
1260
|
+
uint32_t& cached_has_bits, uint32_t has_bit_mask) {
|
|
1261
|
+
cached_has_bits &= ~has_bit_mask;
|
|
1262
|
+
}
|
|
1263
|
+
|
|
1264
|
+
static PROTOBUF_ALWAYS_INLINE constexpr bool CheckHasBit(
|
|
1265
|
+
uint32_t cached_has_bits, uint32_t has_bit_mask) {
|
|
1266
|
+
return (cached_has_bits & has_bit_mask) != 0;
|
|
1267
|
+
}
|
|
1268
|
+
|
|
1269
|
+
static PROTOBUF_ALWAYS_INLINE constexpr bool BatchCheckHasBit(
|
|
1270
|
+
uint32_t cached_has_bits, uint32_t batch_has_bits_mask) {
|
|
1271
|
+
return (cached_has_bits & batch_has_bits_mask) != 0;
|
|
1272
|
+
}
|
|
1273
|
+
|
|
1274
|
+
void CheckHasBitConsistency() const;
|
|
1275
|
+
|
|
1276
|
+
public:
|
|
1277
|
+
enum ParseFlags {
|
|
1278
|
+
// Merge vs. Parse:
|
|
1279
|
+
// Merge: overwrites scalar fields but appends to repeated fields in the
|
|
1280
|
+
// destination; other fields in the destination remain untouched.
|
|
1281
|
+
// Parse: clears all fields in the destination before calling Merge.
|
|
1282
|
+
kMerge = 0,
|
|
1283
|
+
kParse = 1,
|
|
1284
|
+
// Default behaviour vs. Partial:
|
|
1285
|
+
// Default: a missing required field is deemed as parsing failure.
|
|
1286
|
+
// Partial: parse or merge will not give an error if input is missing
|
|
1287
|
+
// required fields.
|
|
1288
|
+
kMergePartial = 2,
|
|
1289
|
+
kParsePartial = 3,
|
|
1290
|
+
// Default behaviour vs. Aliasing:
|
|
1291
|
+
// Default: when merging, pointer is followed and expanded (deep-copy).
|
|
1292
|
+
// Aliasing: when merging, the destination message is allowed to retain
|
|
1293
|
+
// pointers to the original structure (shallow-copy). This mostly
|
|
1294
|
+
// is intended for use with STRING_PIECE.
|
|
1295
|
+
// NOTE: STRING_PIECE is not recommended for new usage. Prefer Cords.
|
|
1296
|
+
kMergeWithAliasing = 4,
|
|
1297
|
+
kParseWithAliasing = 5,
|
|
1298
|
+
kMergePartialWithAliasing = 6,
|
|
1299
|
+
kParsePartialWithAliasing = 7
|
|
1300
|
+
};
|
|
1301
|
+
|
|
1302
|
+
template <ParseFlags flags, typename T>
|
|
1303
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool ParseFrom(const T& input);
|
|
1304
|
+
|
|
1305
|
+
// Fast path when conditions match (ie. non-deterministic)
|
|
1306
|
+
// uint8_t* _InternalSerialize(uint8_t* ptr) const;
|
|
1307
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1308
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD uint8_t* _InternalSerialize(
|
|
1309
|
+
uint8_t* ptr, io::EpsCopyOutputStream* stream) const {
|
|
1310
|
+
return _class_data_->serialize(*this, ptr, stream);
|
|
1311
|
+
}
|
|
1312
|
+
#else // PROTOBUF_CUSTOM_VTABLE
|
|
1313
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD virtual uint8_t* _InternalSerialize(
|
|
1314
|
+
uint8_t* ptr, io::EpsCopyOutputStream* stream) const = 0;
|
|
1315
|
+
#endif // PROTOBUF_CUSTOM_VTABLE
|
|
1316
|
+
|
|
1317
|
+
// Identical to IsInitialized() except that it logs an error message.
|
|
1318
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool IsInitializedWithErrors() const {
|
|
1319
|
+
if (IsInitialized()) return true;
|
|
1320
|
+
LogInitializationErrorMessage();
|
|
1321
|
+
return false;
|
|
1322
|
+
}
|
|
1323
|
+
|
|
1324
|
+
#if defined(PROTOBUF_CUSTOM_VTABLE)
|
|
1325
|
+
void operator delete(MessageLite* msg, std::destroying_delete_t) {
|
|
1326
|
+
msg->DeleteInstance();
|
|
1327
|
+
}
|
|
1328
|
+
#endif
|
|
1329
|
+
|
|
1330
|
+
private:
|
|
1331
|
+
friend class FastReflectionMessageMutator;
|
|
1332
|
+
friend class AssignDescriptorsHelper;
|
|
1333
|
+
friend class FastReflectionStringSetter;
|
|
1334
|
+
friend class Message;
|
|
1335
|
+
friend class Reflection;
|
|
1336
|
+
friend class TypeId;
|
|
1337
|
+
friend class compiler::cpp::MessageTableTester;
|
|
1338
|
+
friend class internal::DescriptorPoolExtensionFinder;
|
|
1339
|
+
friend class internal::ExtensionSet;
|
|
1340
|
+
friend class internal::HasBitsTestPeer;
|
|
1341
|
+
friend class internal::InternalMetadataOffset;
|
|
1342
|
+
template <typename T, size_t kFieldOffset>
|
|
1343
|
+
friend struct internal::InternalMetadataOffsetHelper;
|
|
1344
|
+
friend class internal::LazyField;
|
|
1345
|
+
friend class internal::SwapFieldHelper;
|
|
1346
|
+
friend class internal::TcParser;
|
|
1347
|
+
friend struct internal::PrivateAccess;
|
|
1348
|
+
friend struct internal::TcParseTableBase;
|
|
1349
|
+
friend class internal::UntypedMapBase;
|
|
1350
|
+
friend class internal::WeakFieldMap;
|
|
1351
|
+
friend class internal::WireFormatLite;
|
|
1352
|
+
friend class internal::RustMapHelper;
|
|
1353
|
+
friend class internal::MessageCreator;
|
|
1354
|
+
friend class internal::RepeatedPtrFieldBase;
|
|
1355
|
+
template <typename Type>
|
|
1356
|
+
friend class internal::GenericTypeHandler;
|
|
1357
|
+
template <typename Type>
|
|
1358
|
+
friend class Arena::InternalHelper;
|
|
1359
|
+
template <typename Type>
|
|
1360
|
+
friend struct FallbackMessageTraits;
|
|
1361
|
+
|
|
1362
|
+
template <typename Type>
|
|
1363
|
+
friend const internal::ClassData* internal::GetClassData(const Type& msg);
|
|
1364
|
+
friend void internal::GenericSwap(MessageLite* lhs, MessageLite* rhs);
|
|
1365
|
+
friend void internal::GenericSwap(Message* lhs, Message* rhs);
|
|
1366
|
+
|
|
1367
|
+
static bool CheckFieldPresence(const internal::ParseContext& ctx,
|
|
1368
|
+
const MessageLite& msg,
|
|
1369
|
+
MessageLite::ParseFlags parse_flags);
|
|
1370
|
+
|
|
1371
|
+
void LogInitializationErrorMessage() const;
|
|
1372
|
+
|
|
1373
|
+
private:
|
|
1374
|
+
bool MergeFromImpl(io::CodedInputStream* input, ParseFlags parse_flags);
|
|
1375
|
+
|
|
1376
|
+
// Runs the destructor for this instance.
|
|
1377
|
+
void DestroyInstance();
|
|
1378
|
+
// Runs the destructor for this instance and deletes the memory via
|
|
1379
|
+
// `operator delete`
|
|
1380
|
+
void DeleteInstance();
|
|
1381
|
+
|
|
1382
|
+
// For tests that need to inspect private _oneof_case_. It is the callers
|
|
1383
|
+
// responsibility to ensure T has the right member.
|
|
1384
|
+
template <typename T>
|
|
1385
|
+
static uint32_t GetOneofCaseOffsetForTesting() {
|
|
1386
|
+
return offsetof(T, _impl_._oneof_case_);
|
|
1387
|
+
}
|
|
1388
|
+
};
|
|
1389
|
+
|
|
1390
|
+
// A `std::type_info` equivalent for protobuf message types.
|
|
1391
|
+
// This class is preferred over using `typeid` for a few reasons:
|
|
1392
|
+
// - It works with RTTI disabled.
|
|
1393
|
+
// - It works for `DynamicMessage` types.
|
|
1394
|
+
// - It works in custom vtable mode.
|
|
1395
|
+
//
|
|
1396
|
+
// Usage:
|
|
1397
|
+
// - Instead of `typeid(Type)` use `TypeId::Get<Type>()`
|
|
1398
|
+
// - Instead of `typeid(expr)` use `TypeId::Get(expr)`
|
|
1399
|
+
//
|
|
1400
|
+
// Supports all relationals including <=>, and supports hashing via
|
|
1401
|
+
// `absl::Hash`.
|
|
1402
|
+
class PROTOBUF_FUTURE_ADD_EARLY_WARN_UNUSED TypeId {
|
|
1403
|
+
public:
|
|
1404
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD static TypeId Get(
|
|
1405
|
+
const MessageLite& msg) {
|
|
1406
|
+
return TypeId(msg.GetClassData());
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1409
|
+
template <typename T>
|
|
1410
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD static TypeId Get() {
|
|
1411
|
+
return TypeId(internal::MessageTraits<T>::class_data());
|
|
1412
|
+
}
|
|
1413
|
+
|
|
1414
|
+
// Name of the message type.
|
|
1415
|
+
// Equivalent to `.GetTypeName()` on the message.
|
|
1416
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD absl::string_view name() const;
|
|
1417
|
+
|
|
1418
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend constexpr bool operator==(
|
|
1419
|
+
TypeId a, TypeId b) {
|
|
1420
|
+
return a.data_ == b.data_;
|
|
1421
|
+
}
|
|
1422
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend constexpr bool operator!=(
|
|
1423
|
+
TypeId a, TypeId b) {
|
|
1424
|
+
return !(a == b);
|
|
1425
|
+
}
|
|
1426
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend constexpr bool operator<(
|
|
1427
|
+
TypeId a, TypeId b) {
|
|
1428
|
+
return a.data_ < b.data_;
|
|
1429
|
+
}
|
|
1430
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend constexpr bool operator>(
|
|
1431
|
+
TypeId a, TypeId b) {
|
|
1432
|
+
return a.data_ > b.data_;
|
|
1433
|
+
}
|
|
1434
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend constexpr bool operator<=(
|
|
1435
|
+
TypeId a, TypeId b) {
|
|
1436
|
+
return a.data_ <= b.data_;
|
|
1437
|
+
}
|
|
1438
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend constexpr bool operator>=(
|
|
1439
|
+
TypeId a, TypeId b) {
|
|
1440
|
+
return a.data_ >= b.data_;
|
|
1441
|
+
}
|
|
1442
|
+
|
|
1443
|
+
#if defined(__cpp_impl_three_way_comparison) && \
|
|
1444
|
+
__cpp_impl_three_way_comparison >= 201907L
|
|
1445
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend constexpr auto operator<=>(
|
|
1446
|
+
TypeId a, TypeId b) {
|
|
1447
|
+
return a.data_ <=> b.data_;
|
|
1448
|
+
}
|
|
1449
|
+
#endif
|
|
1450
|
+
|
|
1451
|
+
template <typename H>
|
|
1452
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD friend H AbslHashValue(H state,
|
|
1453
|
+
TypeId id) {
|
|
1454
|
+
return H::combine(std::move(state), id.data_);
|
|
1455
|
+
}
|
|
1456
|
+
|
|
1457
|
+
private:
|
|
1458
|
+
constexpr explicit TypeId(const internal::ClassData* data) : data_(data) {}
|
|
1459
|
+
|
|
1460
|
+
const internal::ClassData* data_;
|
|
1461
|
+
};
|
|
1462
|
+
|
|
1463
|
+
namespace internal {
|
|
1464
|
+
|
|
1465
|
+
// The point of this function being a template is that for a concrete message
|
|
1466
|
+
// `Type`, the otherwise virtual `GetClassData()` call is resolved and inlined
|
|
1467
|
+
// at compile time (via `MessageTraits`).
|
|
1468
|
+
template <typename T>
|
|
1469
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD PROTOBUF_NDEBUG_INLINE const ClassData*
|
|
1470
|
+
GetClassData(const T& msg) {
|
|
1471
|
+
static_assert(std::is_base_of_v<MessageLite, T>);
|
|
1472
|
+
if constexpr (std::is_same_v<T, MessageLite> || std::is_same_v<Message, T>) {
|
|
1473
|
+
PROTOBUF_DEBUG_COUNTER("GetClassData.Virtual").Inc();
|
|
1474
|
+
return msg.GetClassData();
|
|
1475
|
+
} else {
|
|
1476
|
+
PROTOBUF_DEBUG_COUNTER("GetClassData.Constexpr").Inc();
|
|
1477
|
+
return MessageTraits<T>::class_data();
|
|
1478
|
+
}
|
|
1479
|
+
}
|
|
1480
|
+
|
|
1481
|
+
template <bool alias>
|
|
1482
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromImpl(
|
|
1483
|
+
absl::string_view input, MessageLite* msg,
|
|
1484
|
+
const internal::TcParseTableBase* tc_table,
|
|
1485
|
+
MessageLite::ParseFlags parse_flags);
|
|
1486
|
+
extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl<false>(
|
|
1487
|
+
absl::string_view input, MessageLite* msg,
|
|
1488
|
+
const internal::TcParseTableBase* tc_table,
|
|
1489
|
+
MessageLite::ParseFlags parse_flags);
|
|
1490
|
+
extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl<true>(
|
|
1491
|
+
absl::string_view input, MessageLite* msg,
|
|
1492
|
+
const internal::TcParseTableBase* tc_table,
|
|
1493
|
+
MessageLite::ParseFlags parse_flags);
|
|
1494
|
+
|
|
1495
|
+
template <bool alias>
|
|
1496
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromImpl(
|
|
1497
|
+
io::ZeroCopyInputStream* input, MessageLite* msg,
|
|
1498
|
+
const internal::TcParseTableBase* tc_table,
|
|
1499
|
+
MessageLite::ParseFlags parse_flags);
|
|
1500
|
+
extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl<false>(
|
|
1501
|
+
io::ZeroCopyInputStream* input, MessageLite* msg,
|
|
1502
|
+
const internal::TcParseTableBase* tc_table,
|
|
1503
|
+
MessageLite::ParseFlags parse_flags);
|
|
1504
|
+
extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl<true>(
|
|
1505
|
+
io::ZeroCopyInputStream* input, MessageLite* msg,
|
|
1506
|
+
const internal::TcParseTableBase* tc_table,
|
|
1507
|
+
MessageLite::ParseFlags parse_flags);
|
|
1508
|
+
|
|
1509
|
+
struct BoundedZCIS {
|
|
1510
|
+
io::ZeroCopyInputStream* zcis;
|
|
1511
|
+
int limit;
|
|
1512
|
+
};
|
|
1513
|
+
|
|
1514
|
+
template <bool alias>
|
|
1515
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromImpl(
|
|
1516
|
+
BoundedZCIS input, MessageLite* msg,
|
|
1517
|
+
const internal::TcParseTableBase* tc_table,
|
|
1518
|
+
MessageLite::ParseFlags parse_flags);
|
|
1519
|
+
extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl<false>(
|
|
1520
|
+
BoundedZCIS input, MessageLite* msg,
|
|
1521
|
+
const internal::TcParseTableBase* tc_table,
|
|
1522
|
+
MessageLite::ParseFlags parse_flags);
|
|
1523
|
+
extern template PROTOBUF_EXPORT_TEMPLATE_DECLARE bool MergeFromImpl<true>(
|
|
1524
|
+
BoundedZCIS input, MessageLite* msg,
|
|
1525
|
+
const internal::TcParseTableBase* tc_table,
|
|
1526
|
+
MessageLite::ParseFlags parse_flags);
|
|
1527
|
+
|
|
1528
|
+
template <typename T>
|
|
1529
|
+
struct SourceWrapper;
|
|
1530
|
+
|
|
1531
|
+
template <bool alias, typename T>
|
|
1532
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MergeFromImpl(
|
|
1533
|
+
const SourceWrapper<T>& input, MessageLite* msg,
|
|
1534
|
+
const internal::TcParseTableBase* tc_table,
|
|
1535
|
+
MessageLite::ParseFlags parse_flags) {
|
|
1536
|
+
return input.template MergeInto<alias>(msg, tc_table, parse_flags);
|
|
1537
|
+
}
|
|
1538
|
+
|
|
1539
|
+
} // namespace internal
|
|
1540
|
+
|
|
1541
|
+
template <MessageLite::ParseFlags flags, typename T>
|
|
1542
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD bool MessageLite::ParseFrom(
|
|
1543
|
+
const T& input) {
|
|
1544
|
+
if (flags & kParse) Clear();
|
|
1545
|
+
constexpr bool alias = (flags & kMergeWithAliasing) != 0;
|
|
1546
|
+
const internal::TcParseTableBase* tc_table;
|
|
1547
|
+
PROTOBUF_ALWAYS_INLINE_CALL tc_table = GetTcParseTable();
|
|
1548
|
+
return internal::MergeFromImpl<alias>(input, this, tc_table, flags);
|
|
1549
|
+
}
|
|
1550
|
+
|
|
1551
|
+
// ===================================================================
|
|
1552
|
+
// Shutdown support.
|
|
1553
|
+
|
|
1554
|
+
|
|
1555
|
+
// Shut down the entire protocol buffers library, deleting all static-duration
|
|
1556
|
+
// objects allocated by the library or by generated .pb.cc files.
|
|
1557
|
+
//
|
|
1558
|
+
// There are two reasons you might want to call this:
|
|
1559
|
+
// * You use a draconian definition of "memory leak" in which you expect
|
|
1560
|
+
// every single malloc() to have a corresponding free(), even for objects
|
|
1561
|
+
// which live until program exit.
|
|
1562
|
+
// * You are writing a dynamically-loaded library which needs to clean up
|
|
1563
|
+
// after itself when the library is unloaded.
|
|
1564
|
+
//
|
|
1565
|
+
// It is safe to call this multiple times. However, it is not safe to use
|
|
1566
|
+
// any other part of the protocol buffers library after
|
|
1567
|
+
// ShutdownProtobufLibrary() has been called. Furthermore this call is not
|
|
1568
|
+
// thread safe, user needs to synchronize multiple calls.
|
|
1569
|
+
PROTOBUF_EXPORT void ShutdownProtobufLibrary();
|
|
1570
|
+
|
|
1571
|
+
namespace internal {
|
|
1572
|
+
|
|
1573
|
+
// Register a function to be called when ShutdownProtocolBuffers() is called.
|
|
1574
|
+
PROTOBUF_EXPORT void OnShutdown(void (*func)());
|
|
1575
|
+
// Run an arbitrary function on an arg
|
|
1576
|
+
PROTOBUF_EXPORT void OnShutdownRun(void (*f)(const void*), const void* arg);
|
|
1577
|
+
|
|
1578
|
+
template <typename T>
|
|
1579
|
+
T* OnShutdownDelete(T* p) {
|
|
1580
|
+
OnShutdownRun([](const void* pp) { delete static_cast<const T*>(pp); }, p);
|
|
1581
|
+
return p;
|
|
1582
|
+
}
|
|
1583
|
+
|
|
1584
|
+
template <typename MessageLite>
|
|
1585
|
+
PROTOBUF_ALWAYS_INLINE MessageLite* MessageCreator::PlacementNew(
|
|
1586
|
+
const MessageLite* prototype_for_func,
|
|
1587
|
+
const MessageLite* prototype_for_copy, void* mem, Arena* arena) const {
|
|
1588
|
+
ABSL_DCHECK_EQ(reinterpret_cast<uintptr_t>(mem) % alignment_, 0u);
|
|
1589
|
+
const Tag as_tag = tag();
|
|
1590
|
+
static_assert(kFunc < 0 && !(kZeroInit < 0) && !(kMemcpy < 0),
|
|
1591
|
+
"Only kFunc must be the only negative value");
|
|
1592
|
+
if (ABSL_PREDICT_FALSE(static_cast<int8_t>(as_tag) < 0)) {
|
|
1593
|
+
PROTOBUF_DEBUG_COUNTER("MessageCreator.Func").Inc();
|
|
1594
|
+
return static_cast<MessageLite*>(func_(prototype_for_func, mem, arena));
|
|
1595
|
+
}
|
|
1596
|
+
|
|
1597
|
+
char* dst = static_cast<char*>(mem);
|
|
1598
|
+
const size_t size = allocation_size_;
|
|
1599
|
+
const char* src = reinterpret_cast<const char*>(prototype_for_copy);
|
|
1600
|
+
|
|
1601
|
+
// These are a bit more efficient than calling normal memset/memcpy because:
|
|
1602
|
+
// - We know the minimum size is 16. We have a fallback for when it is not.
|
|
1603
|
+
// - We can "underflow" the buffer because those are the MessageLite bytes
|
|
1604
|
+
// we will set later.
|
|
1605
|
+
if (as_tag == kZeroInit) {
|
|
1606
|
+
// Make sure the input is really all zeros.
|
|
1607
|
+
ABSL_DCHECK(std::all_of(src + sizeof(MessageLite), src + size,
|
|
1608
|
+
[](auto c) { return c == 0; }));
|
|
1609
|
+
|
|
1610
|
+
if (sizeof(MessageLite) != 16) {
|
|
1611
|
+
memset(dst, 0, size);
|
|
1612
|
+
} else if (size <= 32) {
|
|
1613
|
+
memset(dst + size - 16, 0, 16);
|
|
1614
|
+
} else if (size <= 64) {
|
|
1615
|
+
memset(dst + 16, 0, 16);
|
|
1616
|
+
memset(dst + size - 32, 0, 32);
|
|
1617
|
+
} else {
|
|
1618
|
+
for (size_t offset = 16; offset + 64 < size; offset += 64) {
|
|
1619
|
+
absl::PrefetchToLocalCacheForWrite(dst + offset + 64);
|
|
1620
|
+
memset(dst + offset, 0, 64);
|
|
1621
|
+
}
|
|
1622
|
+
memset(dst + size - 64, 0, 64);
|
|
1623
|
+
}
|
|
1624
|
+
} else {
|
|
1625
|
+
ABSL_DCHECK_EQ(+as_tag, +kMemcpy);
|
|
1626
|
+
|
|
1627
|
+
if (sizeof(MessageLite) != 16) {
|
|
1628
|
+
memcpy(dst, src, size);
|
|
1629
|
+
} else if (size <= 32) {
|
|
1630
|
+
memcpy(dst + size - 16, src + size - 16, 16);
|
|
1631
|
+
} else if (size <= 64) {
|
|
1632
|
+
memcpy(dst + 16, src + 16, 16);
|
|
1633
|
+
memcpy(dst + size - 32, src + size - 32, 32);
|
|
1634
|
+
} else {
|
|
1635
|
+
for (size_t offset = 16; offset + 64 < size; offset += 64) {
|
|
1636
|
+
absl::PrefetchToLocalCache(src + offset + 64);
|
|
1637
|
+
absl::PrefetchToLocalCacheForWrite(dst + offset + 64);
|
|
1638
|
+
memcpy(dst + offset, src + offset, 64);
|
|
1639
|
+
}
|
|
1640
|
+
memcpy(dst + size - 64, src + size - 64, 64);
|
|
1641
|
+
}
|
|
1642
|
+
}
|
|
1643
|
+
|
|
1644
|
+
// The second memcpy overwrites part of the first, but the compiler should
|
|
1645
|
+
// avoid the double-write. It's easier than trying to avoid the overlap.
|
|
1646
|
+
memcpy(dst, static_cast<const void*>(prototype_for_copy),
|
|
1647
|
+
sizeof(MessageLite));
|
|
1648
|
+
memcpy(dst + PROTOBUF_FIELD_OFFSET(MessageLite, _internal_metadata_), &arena,
|
|
1649
|
+
sizeof(arena));
|
|
1650
|
+
return Launder(reinterpret_cast<MessageLite*>(mem));
|
|
1651
|
+
}
|
|
1652
|
+
|
|
1653
|
+
template <typename MessageLite>
|
|
1654
|
+
PROTOBUF_ALWAYS_INLINE MessageLite* MessageCreator::New(
|
|
1655
|
+
const MessageLite* prototype_for_func,
|
|
1656
|
+
const MessageLite* prototype_for_copy, Arena* arena) const {
|
|
1657
|
+
void* mem;
|
|
1658
|
+
if (arena != nullptr) {
|
|
1659
|
+
mem = arena->AllocateAligned(allocation_size_);
|
|
1660
|
+
} else {
|
|
1661
|
+
mem = Allocate(allocation_size_);
|
|
1662
|
+
}
|
|
1663
|
+
return PlacementNew(prototype_for_func, prototype_for_copy, mem, arena);
|
|
1664
|
+
}
|
|
1665
|
+
|
|
1666
|
+
} // namespace internal
|
|
1667
|
+
|
|
1668
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD
|
|
1669
|
+
std::string ShortFormat(const MessageLite& message_lite);
|
|
1670
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD
|
|
1671
|
+
std::string Utf8Format(const MessageLite& message_lite);
|
|
1672
|
+
|
|
1673
|
+
// Cast functions for message pointer/references.
|
|
1674
|
+
// This is the supported API to cast from a Message/MessageLite to derived
|
|
1675
|
+
// types. These work even when RTTI is disabled on message types.
|
|
1676
|
+
//
|
|
1677
|
+
// The template parameter is simplified and the return type is inferred from the
|
|
1678
|
+
// input. Eg just `DynamicCastMessage<Foo>(x)` instead of
|
|
1679
|
+
// `DynamicCastMessage<const Foo*>(x)`.
|
|
1680
|
+
//
|
|
1681
|
+
// `DynamicCastMessage` is similar to `dynamic_cast`, returns `nullptr` when the
|
|
1682
|
+
// input is not an instance of `T`. The overloads that take a reference will
|
|
1683
|
+
// throw std::bad_cast on mismatch, or terminate if compiled without exceptions.
|
|
1684
|
+
//
|
|
1685
|
+
// `DownCastMessage` is a lightweight function for downcasting base
|
|
1686
|
+
// `MessageLite` pointer to derived type, where it only does type checking if
|
|
1687
|
+
// !NDEBUG. It should only be used when the caller is certain that the input
|
|
1688
|
+
// message is of instance `T`.
|
|
1689
|
+
template <typename T>
|
|
1690
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T* DynamicCastMessage(
|
|
1691
|
+
const MessageLite* from) {
|
|
1692
|
+
static_assert(std::is_base_of<MessageLite, T>::value, "");
|
|
1693
|
+
|
|
1694
|
+
// We might avoid the call to T::GetClassData() altogether if T were to
|
|
1695
|
+
// expose the class data pointer.
|
|
1696
|
+
if (from == nullptr || TypeId::Get<T>() != TypeId::Get(*from)) {
|
|
1697
|
+
return nullptr;
|
|
1698
|
+
}
|
|
1699
|
+
|
|
1700
|
+
return static_cast<const T*>(from);
|
|
1701
|
+
}
|
|
1702
|
+
|
|
1703
|
+
template <typename T>
|
|
1704
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T* DynamicCastMessage(MessageLite* from) {
|
|
1705
|
+
return const_cast<T*>(
|
|
1706
|
+
DynamicCastMessage<T>(static_cast<const MessageLite*>(from)));
|
|
1707
|
+
}
|
|
1708
|
+
|
|
1709
|
+
namespace internal {
|
|
1710
|
+
[[noreturn]] PROTOBUF_EXPORT void FailDynamicCast(const MessageLite& from,
|
|
1711
|
+
const MessageLite& to);
|
|
1712
|
+
} // namespace internal
|
|
1713
|
+
|
|
1714
|
+
template <typename T>
|
|
1715
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T& DynamicCastMessage(
|
|
1716
|
+
const MessageLite& from) {
|
|
1717
|
+
const T* destination_message = DynamicCastMessage<T>(&from);
|
|
1718
|
+
if (ABSL_PREDICT_FALSE(destination_message == nullptr)) {
|
|
1719
|
+
// If exceptions are enabled, throw.
|
|
1720
|
+
// Otherwise, log a fatal error.
|
|
1721
|
+
#if defined(ABSL_HAVE_EXCEPTIONS)
|
|
1722
|
+
throw std::bad_cast();
|
|
1723
|
+
#endif
|
|
1724
|
+
// Move the logging into an out-of-line function to reduce bloat in the
|
|
1725
|
+
// caller.
|
|
1726
|
+
internal::FailDynamicCast(from, T::default_instance());
|
|
1727
|
+
}
|
|
1728
|
+
return *destination_message;
|
|
1729
|
+
}
|
|
1730
|
+
|
|
1731
|
+
template <typename T>
|
|
1732
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T& DynamicCastMessage(MessageLite& from) {
|
|
1733
|
+
return const_cast<T&>(
|
|
1734
|
+
DynamicCastMessage<T>(static_cast<const MessageLite&>(from)));
|
|
1735
|
+
}
|
|
1736
|
+
|
|
1737
|
+
template <typename T>
|
|
1738
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T* DownCastMessage(
|
|
1739
|
+
const MessageLite* from) {
|
|
1740
|
+
internal::StrongReferenceToType<T>();
|
|
1741
|
+
ABSL_DCHECK(DynamicCastMessage<T>(from) == from)
|
|
1742
|
+
<< "Cannot downcast " << from->GetTypeName() << " to "
|
|
1743
|
+
<< T::default_instance().GetTypeName();
|
|
1744
|
+
return static_cast<const T*>(from);
|
|
1745
|
+
}
|
|
1746
|
+
|
|
1747
|
+
template <typename T>
|
|
1748
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T* DownCastMessage(MessageLite* from) {
|
|
1749
|
+
return const_cast<T*>(
|
|
1750
|
+
DownCastMessage<T>(static_cast<const MessageLite*>(from)));
|
|
1751
|
+
}
|
|
1752
|
+
|
|
1753
|
+
template <typename T>
|
|
1754
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T& DownCastMessage(
|
|
1755
|
+
const MessageLite& from) {
|
|
1756
|
+
return *DownCastMessage<T>(&from);
|
|
1757
|
+
}
|
|
1758
|
+
|
|
1759
|
+
template <typename T>
|
|
1760
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T& DownCastMessage(MessageLite& from) {
|
|
1761
|
+
return *DownCastMessage<T>(&from);
|
|
1762
|
+
}
|
|
1763
|
+
|
|
1764
|
+
template <>
|
|
1765
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD inline const MessageLite*
|
|
1766
|
+
DynamicCastMessage(const MessageLite* from) {
|
|
1767
|
+
return from;
|
|
1768
|
+
}
|
|
1769
|
+
template <>
|
|
1770
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD inline const MessageLite* DownCastMessage(
|
|
1771
|
+
const MessageLite* from) {
|
|
1772
|
+
return from;
|
|
1773
|
+
}
|
|
1774
|
+
|
|
1775
|
+
// Deprecated names for the cast functions.
|
|
1776
|
+
// Prefer the ones above.
|
|
1777
|
+
template <typename T>
|
|
1778
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1779
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T* DynamicCastToGenerated(
|
|
1780
|
+
const MessageLite* from) {
|
|
1781
|
+
return DynamicCastMessage<T>(from);
|
|
1782
|
+
}
|
|
1783
|
+
|
|
1784
|
+
template <typename T>
|
|
1785
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1786
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T* DynamicCastToGenerated(
|
|
1787
|
+
MessageLite* from) {
|
|
1788
|
+
return DynamicCastMessage<T>(from);
|
|
1789
|
+
}
|
|
1790
|
+
|
|
1791
|
+
template <typename T>
|
|
1792
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1793
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T& DynamicCastToGenerated(
|
|
1794
|
+
const MessageLite& from) {
|
|
1795
|
+
return DynamicCastMessage<T>(from);
|
|
1796
|
+
}
|
|
1797
|
+
|
|
1798
|
+
template <typename T>
|
|
1799
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1800
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T& DynamicCastToGenerated(
|
|
1801
|
+
MessageLite& from) {
|
|
1802
|
+
return DynamicCastMessage<T>(from);
|
|
1803
|
+
}
|
|
1804
|
+
|
|
1805
|
+
template <typename T>
|
|
1806
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1807
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T* DownCastToGenerated(
|
|
1808
|
+
const MessageLite* from) {
|
|
1809
|
+
return DownCastMessage<T>(from);
|
|
1810
|
+
}
|
|
1811
|
+
|
|
1812
|
+
template <typename T>
|
|
1813
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1814
|
+
|
|
1815
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T* DownCastToGenerated(MessageLite* from) {
|
|
1816
|
+
return DownCastMessage<T>(from);
|
|
1817
|
+
}
|
|
1818
|
+
|
|
1819
|
+
template <typename T>
|
|
1820
|
+
|
|
1821
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1822
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD const T& DownCastToGenerated(
|
|
1823
|
+
const MessageLite& from) {
|
|
1824
|
+
return DownCastMessage<T>(from);
|
|
1825
|
+
}
|
|
1826
|
+
|
|
1827
|
+
template <typename T>
|
|
1828
|
+
PROTOBUF_DEPRECATE_AND_INLINE()
|
|
1829
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD T& DownCastToGenerated(MessageLite& from) {
|
|
1830
|
+
return DownCastMessage<T>(from);
|
|
1831
|
+
}
|
|
1832
|
+
|
|
1833
|
+
// Overloads for `std::shared_ptr` to substitute `std::dynamic_pointer_cast`
|
|
1834
|
+
template <typename T>
|
|
1835
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD std::shared_ptr<T> DynamicCastMessage(
|
|
1836
|
+
std::shared_ptr<MessageLite> ptr) {
|
|
1837
|
+
if (auto* res = DynamicCastMessage<T>(ptr.get())) {
|
|
1838
|
+
// Use aliasing constructor to keep the same control block.
|
|
1839
|
+
return std::shared_ptr<T>(std::move(ptr), res);
|
|
1840
|
+
} else {
|
|
1841
|
+
return nullptr;
|
|
1842
|
+
}
|
|
1843
|
+
}
|
|
1844
|
+
|
|
1845
|
+
template <typename T>
|
|
1846
|
+
PROTOBUF_FUTURE_ADD_EARLY_NODISCARD std::shared_ptr<const T> DynamicCastMessage(
|
|
1847
|
+
std::shared_ptr<const MessageLite> ptr) {
|
|
1848
|
+
if (auto* res = DynamicCastMessage<T>(ptr.get())) {
|
|
1849
|
+
// Use aliasing constructor to keep the same control block.
|
|
1850
|
+
return std::shared_ptr<const T>(std::move(ptr), res);
|
|
1851
|
+
} else {
|
|
1852
|
+
return nullptr;
|
|
1853
|
+
}
|
|
1854
|
+
}
|
|
1855
|
+
|
|
1856
|
+
} // namespace protobuf
|
|
1857
|
+
} // namespace google
|
|
1858
|
+
|
|
1859
|
+
#include "google/protobuf/port_undef.inc"
|
|
1860
|
+
|
|
1861
|
+
#endif // GOOGLE_PROTOBUF_MESSAGE_LITE_H__
|