From 4cde0f9baf74120c4310aa05af027faf61126409 Mon Sep 17 00:00:00 2001 From: Sven Czarnian Date: Mon, 9 Aug 2021 22:07:00 +0200 Subject: [PATCH] add external dependencies in a pre-built way to avoid incompatibilities --- external/bin/protoc.exe | Bin 0 -> 2795520 bytes external/include/google/protobuf/any.h | 153 + external/include/google/protobuf/any.pb.h | 374 + external/include/google/protobuf/any.proto | 158 + external/include/google/protobuf/api.pb.h | 1392 ++ external/include/google/protobuf/api.proto | 208 + external/include/google/protobuf/arena.h | 806 + external/include/google/protobuf/arena_impl.h | 485 + .../include/google/protobuf/arenastring.h | 415 + .../google/protobuf/compiler/code_generator.h | 205 + .../compiler/command_line_interface.h | 462 + .../protobuf/compiler/cpp/cpp_generator.h | 106 + .../compiler/csharp/csharp_generator.h | 70 + .../protobuf/compiler/csharp/csharp_names.h | 109 + .../google/protobuf/compiler/importer.h | 336 + .../protobuf/compiler/java/java_generator.h | 76 + .../compiler/java/java_kotlin_generator.h | 72 + .../protobuf/compiler/java/java_names.h | 100 + .../protobuf/compiler/js/js_generator.h | 339 + .../compiler/js/well_known_types_embed.h | 43 + .../objectivec/objectivec_generator.h | 79 + .../compiler/objectivec/objectivec_helpers.h | 326 + .../include/google/protobuf/compiler/parser.h | 603 + .../protobuf/compiler/php/php_generator.h | 92 + .../include/google/protobuf/compiler/plugin.h | 94 + .../google/protobuf/compiler/plugin.pb.h | 1815 +++ .../google/protobuf/compiler/plugin.proto | 183 + .../compiler/python/python_generator.h | 182 + .../protobuf/compiler/ruby/ruby_generator.h | 67 + external/include/google/protobuf/descriptor.h | 2325 +++ .../include/google/protobuf/descriptor.pb.h | 12513 ++++++++++++++++ .../include/google/protobuf/descriptor.proto | 911 ++ .../google/protobuf/descriptor_database.h | 391 + .../include/google/protobuf/duration.pb.h | 278 + .../include/google/protobuf/duration.proto | 116 + .../include/google/protobuf/dynamic_message.h | 225 + external/include/google/protobuf/empty.pb.h | 214 + external/include/google/protobuf/empty.proto | 52 + .../include/google/protobuf/extension_set.h | 1610 ++ .../google/protobuf/extension_set_inl.h | 276 + .../google/protobuf/field_access_listener.h | 246 + .../include/google/protobuf/field_mask.pb.h | 317 + .../include/google/protobuf/field_mask.proto | 245 + .../protobuf/generated_enum_reflection.h | 98 + .../google/protobuf/generated_enum_util.h | 83 + .../protobuf/generated_message_reflection.h | 326 + .../protobuf/generated_message_table_driven.h | 346 + .../protobuf/generated_message_tctable_decl.h | 123 + .../protobuf/generated_message_tctable_impl.h | 260 + .../generated_message_tctable_impl.inc | 255 + .../google/protobuf/generated_message_util.h | 212 + external/include/google/protobuf/has_bits.h | 116 + .../google/protobuf/implicit_weak_message.h | 190 + .../include/google/protobuf/io/coded_stream.h | 1738 +++ .../include/google/protobuf/io/gzip_stream.h | 202 + .../include/google/protobuf/io/io_win32.h | 139 + external/include/google/protobuf/io/printer.h | 385 + external/include/google/protobuf/io/strtod.h | 55 + .../include/google/protobuf/io/tokenizer.h | 413 + .../google/protobuf/io/zero_copy_stream.h | 253 + .../protobuf/io/zero_copy_stream_impl.h | 327 + .../protobuf/io/zero_copy_stream_impl_lite.h | 408 + external/include/google/protobuf/map.h | 1364 ++ external/include/google/protobuf/map_entry.h | 160 + .../include/google/protobuf/map_entry_lite.h | 656 + external/include/google/protobuf/map_field.h | 919 ++ .../include/google/protobuf/map_field_inl.h | 375 + .../include/google/protobuf/map_field_lite.h | 184 + .../google/protobuf/map_type_handler.h | 688 + external/include/google/protobuf/message.h | 1430 ++ .../include/google/protobuf/message_lite.h | 640 + external/include/google/protobuf/metadata.h | 36 + .../include/google/protobuf/metadata_lite.h | 270 + .../include/google/protobuf/parse_context.h | 931 ++ external/include/google/protobuf/port.h | 40 + external/include/google/protobuf/port_def.inc | 709 + .../include/google/protobuf/port_undef.inc | 134 + external/include/google/protobuf/reflection.h | 563 + .../include/google/protobuf/reflection_ops.h | 91 + .../include/google/protobuf/repeated_field.h | 2919 ++++ external/include/google/protobuf/service.h | 293 + .../google/protobuf/source_context.pb.h | 278 + .../google/protobuf/source_context.proto | 48 + external/include/google/protobuf/struct.pb.h | 1161 ++ external/include/google/protobuf/struct.proto | 95 + .../google/protobuf/stubs/bytestream.h | 351 + .../include/google/protobuf/stubs/callback.h | 583 + .../include/google/protobuf/stubs/casts.h | 138 + .../include/google/protobuf/stubs/common.h | 201 + external/include/google/protobuf/stubs/hash.h | 114 + .../include/google/protobuf/stubs/logging.h | 239 + .../include/google/protobuf/stubs/macros.h | 93 + .../include/google/protobuf/stubs/map_util.h | 769 + .../include/google/protobuf/stubs/mutex.h | 213 + external/include/google/protobuf/stubs/once.h | 55 + .../google/protobuf/stubs/platform_macros.h | 138 + external/include/google/protobuf/stubs/port.h | 410 + .../include/google/protobuf/stubs/status.h | 196 + .../include/google/protobuf/stubs/stl_util.h | 71 + .../google/protobuf/stubs/stringpiece.h | 390 + .../include/google/protobuf/stubs/strutil.h | 950 ++ .../google/protobuf/stubs/template_util.h | 138 + .../include/google/protobuf/text_format.h | 661 + .../include/google/protobuf/timestamp.pb.h | 278 + .../include/google/protobuf/timestamp.proto | 147 + external/include/google/protobuf/type.pb.h | 2506 ++++ external/include/google/protobuf/type.proto | 187 + .../google/protobuf/unknown_field_set.h | 411 + .../protobuf/util/delimited_message_util.h | 108 + .../google/protobuf/util/field_comparator.h | 285 + .../google/protobuf/util/field_mask_util.h | 262 + .../include/google/protobuf/util/json_util.h | 204 + .../protobuf/util/message_differencer.h | 972 ++ .../include/google/protobuf/util/time_util.h | 313 + .../google/protobuf/util/type_resolver.h | 76 + .../google/protobuf/util/type_resolver_util.h | 57 + .../include/google/protobuf/wire_format.h | 414 + .../google/protobuf/wire_format_lite.h | 1865 +++ .../include/google/protobuf/wrappers.pb.h | 1661 ++ .../include/google/protobuf/wrappers.proto | 123 + external/include/sodium.h | 69 + external/include/sodium/core.h | 28 + .../include/sodium/crypto_aead_aes256gcm.h | 179 + .../sodium/crypto_aead_chacha20poly1305.h | 180 + .../sodium/crypto_aead_xchacha20poly1305.h | 100 + external/include/sodium/crypto_auth.h | 46 + .../include/sodium/crypto_auth_hmacsha256.h | 70 + .../include/sodium/crypto_auth_hmacsha512.h | 68 + .../sodium/crypto_auth_hmacsha512256.h | 65 + external/include/sodium/crypto_box.h | 177 + .../crypto_box_curve25519xchacha20poly1305.h | 164 + .../crypto_box_curve25519xsalsa20poly1305.h | 112 + external/include/sodium/crypto_core_ed25519.h | 100 + .../include/sodium/crypto_core_hchacha20.h | 36 + .../include/sodium/crypto_core_hsalsa20.h | 36 + .../include/sodium/crypto_core_ristretto255.h | 100 + external/include/sodium/crypto_core_salsa20.h | 36 + .../include/sodium/crypto_core_salsa2012.h | 36 + .../include/sodium/crypto_core_salsa208.h | 40 + external/include/sodium/crypto_generichash.h | 84 + .../sodium/crypto_generichash_blake2b.h | 118 + external/include/sodium/crypto_hash.h | 40 + external/include/sodium/crypto_hash_sha256.h | 60 + external/include/sodium/crypto_hash_sha512.h | 60 + external/include/sodium/crypto_kdf.h | 53 + external/include/sodium/crypto_kdf_blake2b.h | 44 + external/include/sodium/crypto_kx.h | 66 + external/include/sodium/crypto_onetimeauth.h | 65 + .../sodium/crypto_onetimeauth_poly1305.h | 72 + external/include/sodium/crypto_pwhash.h | 147 + .../include/sodium/crypto_pwhash_argon2i.h | 122 + .../include/sodium/crypto_pwhash_argon2id.h | 122 + .../crypto_pwhash_scryptsalsa208sha256.h | 120 + external/include/sodium/crypto_scalarmult.h | 46 + .../sodium/crypto_scalarmult_curve25519.h | 42 + .../sodium/crypto_scalarmult_ed25519.h | 51 + .../sodium/crypto_scalarmult_ristretto255.h | 43 + external/include/sodium/crypto_secretbox.h | 93 + .../crypto_secretbox_xchacha20poly1305.h | 70 + .../crypto_secretbox_xsalsa20poly1305.h | 69 + .../crypto_secretstream_xchacha20poly1305.h | 108 + external/include/sodium/crypto_shorthash.h | 41 + .../sodium/crypto_shorthash_siphash24.h | 50 + external/include/sodium/crypto_sign.h | 107 + external/include/sodium/crypto_sign_ed25519.h | 124 + .../crypto_sign_edwards25519sha512batch.h | 55 + external/include/sodium/crypto_stream.h | 59 + .../include/sodium/crypto_stream_chacha20.h | 106 + .../include/sodium/crypto_stream_salsa20.h | 61 + .../include/sodium/crypto_stream_salsa2012.h | 53 + .../include/sodium/crypto_stream_salsa208.h | 56 + .../include/sodium/crypto_stream_xchacha20.h | 61 + .../include/sodium/crypto_stream_xsalsa20.h | 61 + external/include/sodium/crypto_verify_16.h | 23 + external/include/sodium/crypto_verify_32.h | 23 + external/include/sodium/crypto_verify_64.h | 23 + external/include/sodium/export.h | 57 + external/include/sodium/randombytes.h | 72 + .../sodium/randombytes_internal_random.h | 22 + .../include/sodium/randombytes_sysrandom.h | 19 + external/include/sodium/runtime.h | 52 + external/include/sodium/utils.h | 179 + external/include/sodium/version.h | 32 + external/include/zmq.h | 788 + external/include/zmq.hpp | 2688 ++++ external/include/zmq_addon.hpp | 743 + external/include/zmq_utils.h | 50 + external/lib/libprotobuf.lib | Bin 0 -> 10440078 bytes external/lib/libprotobufd.lib | Bin 0 -> 60092160 bytes external/lib/libsodium.lib | Bin 0 -> 1916162 bytes external/lib/libsodiumd.lib | Bin 0 -> 1999496 bytes external/lib/libzmq.lib | Bin 0 -> 3007334 bytes external/lib/libzmqd.lib | Bin 0 -> 34136032 bytes external/licenses/CppZMQ-4.7.1 | 17 + external/licenses/ProtoBuf-3.17.3 | 32 + external/licenses/libsodium-1.0.18 | 18 + external/licenses/libzmq-4.3.4 | 674 + 197 files changed, 74244 insertions(+) create mode 100644 external/bin/protoc.exe create mode 100644 external/include/google/protobuf/any.h create mode 100644 external/include/google/protobuf/any.pb.h create mode 100644 external/include/google/protobuf/any.proto create mode 100644 external/include/google/protobuf/api.pb.h create mode 100644 external/include/google/protobuf/api.proto create mode 100644 external/include/google/protobuf/arena.h create mode 100644 external/include/google/protobuf/arena_impl.h create mode 100644 external/include/google/protobuf/arenastring.h create mode 100644 external/include/google/protobuf/compiler/code_generator.h create mode 100644 external/include/google/protobuf/compiler/command_line_interface.h create mode 100644 external/include/google/protobuf/compiler/cpp/cpp_generator.h create mode 100644 external/include/google/protobuf/compiler/csharp/csharp_generator.h create mode 100644 external/include/google/protobuf/compiler/csharp/csharp_names.h create mode 100644 external/include/google/protobuf/compiler/importer.h create mode 100644 external/include/google/protobuf/compiler/java/java_generator.h create mode 100644 external/include/google/protobuf/compiler/java/java_kotlin_generator.h create mode 100644 external/include/google/protobuf/compiler/java/java_names.h create mode 100644 external/include/google/protobuf/compiler/js/js_generator.h create mode 100644 external/include/google/protobuf/compiler/js/well_known_types_embed.h create mode 100644 external/include/google/protobuf/compiler/objectivec/objectivec_generator.h create mode 100644 external/include/google/protobuf/compiler/objectivec/objectivec_helpers.h create mode 100644 external/include/google/protobuf/compiler/parser.h create mode 100644 external/include/google/protobuf/compiler/php/php_generator.h create mode 100644 external/include/google/protobuf/compiler/plugin.h create mode 100644 external/include/google/protobuf/compiler/plugin.pb.h create mode 100644 external/include/google/protobuf/compiler/plugin.proto create mode 100644 external/include/google/protobuf/compiler/python/python_generator.h create mode 100644 external/include/google/protobuf/compiler/ruby/ruby_generator.h create mode 100644 external/include/google/protobuf/descriptor.h create mode 100644 external/include/google/protobuf/descriptor.pb.h create mode 100644 external/include/google/protobuf/descriptor.proto create mode 100644 external/include/google/protobuf/descriptor_database.h create mode 100644 external/include/google/protobuf/duration.pb.h create mode 100644 external/include/google/protobuf/duration.proto create mode 100644 external/include/google/protobuf/dynamic_message.h create mode 100644 external/include/google/protobuf/empty.pb.h create mode 100644 external/include/google/protobuf/empty.proto create mode 100644 external/include/google/protobuf/extension_set.h create mode 100644 external/include/google/protobuf/extension_set_inl.h create mode 100644 external/include/google/protobuf/field_access_listener.h create mode 100644 external/include/google/protobuf/field_mask.pb.h create mode 100644 external/include/google/protobuf/field_mask.proto create mode 100644 external/include/google/protobuf/generated_enum_reflection.h create mode 100644 external/include/google/protobuf/generated_enum_util.h create mode 100644 external/include/google/protobuf/generated_message_reflection.h create mode 100644 external/include/google/protobuf/generated_message_table_driven.h create mode 100644 external/include/google/protobuf/generated_message_tctable_decl.h create mode 100644 external/include/google/protobuf/generated_message_tctable_impl.h create mode 100644 external/include/google/protobuf/generated_message_tctable_impl.inc create mode 100644 external/include/google/protobuf/generated_message_util.h create mode 100644 external/include/google/protobuf/has_bits.h create mode 100644 external/include/google/protobuf/implicit_weak_message.h create mode 100644 external/include/google/protobuf/io/coded_stream.h create mode 100644 external/include/google/protobuf/io/gzip_stream.h create mode 100644 external/include/google/protobuf/io/io_win32.h create mode 100644 external/include/google/protobuf/io/printer.h create mode 100644 external/include/google/protobuf/io/strtod.h create mode 100644 external/include/google/protobuf/io/tokenizer.h create mode 100644 external/include/google/protobuf/io/zero_copy_stream.h create mode 100644 external/include/google/protobuf/io/zero_copy_stream_impl.h create mode 100644 external/include/google/protobuf/io/zero_copy_stream_impl_lite.h create mode 100644 external/include/google/protobuf/map.h create mode 100644 external/include/google/protobuf/map_entry.h create mode 100644 external/include/google/protobuf/map_entry_lite.h create mode 100644 external/include/google/protobuf/map_field.h create mode 100644 external/include/google/protobuf/map_field_inl.h create mode 100644 external/include/google/protobuf/map_field_lite.h create mode 100644 external/include/google/protobuf/map_type_handler.h create mode 100644 external/include/google/protobuf/message.h create mode 100644 external/include/google/protobuf/message_lite.h create mode 100644 external/include/google/protobuf/metadata.h create mode 100644 external/include/google/protobuf/metadata_lite.h create mode 100644 external/include/google/protobuf/parse_context.h create mode 100644 external/include/google/protobuf/port.h create mode 100644 external/include/google/protobuf/port_def.inc create mode 100644 external/include/google/protobuf/port_undef.inc create mode 100644 external/include/google/protobuf/reflection.h create mode 100644 external/include/google/protobuf/reflection_ops.h create mode 100644 external/include/google/protobuf/repeated_field.h create mode 100644 external/include/google/protobuf/service.h create mode 100644 external/include/google/protobuf/source_context.pb.h create mode 100644 external/include/google/protobuf/source_context.proto create mode 100644 external/include/google/protobuf/struct.pb.h create mode 100644 external/include/google/protobuf/struct.proto create mode 100644 external/include/google/protobuf/stubs/bytestream.h create mode 100644 external/include/google/protobuf/stubs/callback.h create mode 100644 external/include/google/protobuf/stubs/casts.h create mode 100644 external/include/google/protobuf/stubs/common.h create mode 100644 external/include/google/protobuf/stubs/hash.h create mode 100644 external/include/google/protobuf/stubs/logging.h create mode 100644 external/include/google/protobuf/stubs/macros.h create mode 100644 external/include/google/protobuf/stubs/map_util.h create mode 100644 external/include/google/protobuf/stubs/mutex.h create mode 100644 external/include/google/protobuf/stubs/once.h create mode 100644 external/include/google/protobuf/stubs/platform_macros.h create mode 100644 external/include/google/protobuf/stubs/port.h create mode 100644 external/include/google/protobuf/stubs/status.h create mode 100644 external/include/google/protobuf/stubs/stl_util.h create mode 100644 external/include/google/protobuf/stubs/stringpiece.h create mode 100644 external/include/google/protobuf/stubs/strutil.h create mode 100644 external/include/google/protobuf/stubs/template_util.h create mode 100644 external/include/google/protobuf/text_format.h create mode 100644 external/include/google/protobuf/timestamp.pb.h create mode 100644 external/include/google/protobuf/timestamp.proto create mode 100644 external/include/google/protobuf/type.pb.h create mode 100644 external/include/google/protobuf/type.proto create mode 100644 external/include/google/protobuf/unknown_field_set.h create mode 100644 external/include/google/protobuf/util/delimited_message_util.h create mode 100644 external/include/google/protobuf/util/field_comparator.h create mode 100644 external/include/google/protobuf/util/field_mask_util.h create mode 100644 external/include/google/protobuf/util/json_util.h create mode 100644 external/include/google/protobuf/util/message_differencer.h create mode 100644 external/include/google/protobuf/util/time_util.h create mode 100644 external/include/google/protobuf/util/type_resolver.h create mode 100644 external/include/google/protobuf/util/type_resolver_util.h create mode 100644 external/include/google/protobuf/wire_format.h create mode 100644 external/include/google/protobuf/wire_format_lite.h create mode 100644 external/include/google/protobuf/wrappers.pb.h create mode 100644 external/include/google/protobuf/wrappers.proto create mode 100644 external/include/sodium.h create mode 100644 external/include/sodium/core.h create mode 100644 external/include/sodium/crypto_aead_aes256gcm.h create mode 100644 external/include/sodium/crypto_aead_chacha20poly1305.h create mode 100644 external/include/sodium/crypto_aead_xchacha20poly1305.h create mode 100644 external/include/sodium/crypto_auth.h create mode 100644 external/include/sodium/crypto_auth_hmacsha256.h create mode 100644 external/include/sodium/crypto_auth_hmacsha512.h create mode 100644 external/include/sodium/crypto_auth_hmacsha512256.h create mode 100644 external/include/sodium/crypto_box.h create mode 100644 external/include/sodium/crypto_box_curve25519xchacha20poly1305.h create mode 100644 external/include/sodium/crypto_box_curve25519xsalsa20poly1305.h create mode 100644 external/include/sodium/crypto_core_ed25519.h create mode 100644 external/include/sodium/crypto_core_hchacha20.h create mode 100644 external/include/sodium/crypto_core_hsalsa20.h create mode 100644 external/include/sodium/crypto_core_ristretto255.h create mode 100644 external/include/sodium/crypto_core_salsa20.h create mode 100644 external/include/sodium/crypto_core_salsa2012.h create mode 100644 external/include/sodium/crypto_core_salsa208.h create mode 100644 external/include/sodium/crypto_generichash.h create mode 100644 external/include/sodium/crypto_generichash_blake2b.h create mode 100644 external/include/sodium/crypto_hash.h create mode 100644 external/include/sodium/crypto_hash_sha256.h create mode 100644 external/include/sodium/crypto_hash_sha512.h create mode 100644 external/include/sodium/crypto_kdf.h create mode 100644 external/include/sodium/crypto_kdf_blake2b.h create mode 100644 external/include/sodium/crypto_kx.h create mode 100644 external/include/sodium/crypto_onetimeauth.h create mode 100644 external/include/sodium/crypto_onetimeauth_poly1305.h create mode 100644 external/include/sodium/crypto_pwhash.h create mode 100644 external/include/sodium/crypto_pwhash_argon2i.h create mode 100644 external/include/sodium/crypto_pwhash_argon2id.h create mode 100644 external/include/sodium/crypto_pwhash_scryptsalsa208sha256.h create mode 100644 external/include/sodium/crypto_scalarmult.h create mode 100644 external/include/sodium/crypto_scalarmult_curve25519.h create mode 100644 external/include/sodium/crypto_scalarmult_ed25519.h create mode 100644 external/include/sodium/crypto_scalarmult_ristretto255.h create mode 100644 external/include/sodium/crypto_secretbox.h create mode 100644 external/include/sodium/crypto_secretbox_xchacha20poly1305.h create mode 100644 external/include/sodium/crypto_secretbox_xsalsa20poly1305.h create mode 100644 external/include/sodium/crypto_secretstream_xchacha20poly1305.h create mode 100644 external/include/sodium/crypto_shorthash.h create mode 100644 external/include/sodium/crypto_shorthash_siphash24.h create mode 100644 external/include/sodium/crypto_sign.h create mode 100644 external/include/sodium/crypto_sign_ed25519.h create mode 100644 external/include/sodium/crypto_sign_edwards25519sha512batch.h create mode 100644 external/include/sodium/crypto_stream.h create mode 100644 external/include/sodium/crypto_stream_chacha20.h create mode 100644 external/include/sodium/crypto_stream_salsa20.h create mode 100644 external/include/sodium/crypto_stream_salsa2012.h create mode 100644 external/include/sodium/crypto_stream_salsa208.h create mode 100644 external/include/sodium/crypto_stream_xchacha20.h create mode 100644 external/include/sodium/crypto_stream_xsalsa20.h create mode 100644 external/include/sodium/crypto_verify_16.h create mode 100644 external/include/sodium/crypto_verify_32.h create mode 100644 external/include/sodium/crypto_verify_64.h create mode 100644 external/include/sodium/export.h create mode 100644 external/include/sodium/randombytes.h create mode 100644 external/include/sodium/randombytes_internal_random.h create mode 100644 external/include/sodium/randombytes_sysrandom.h create mode 100644 external/include/sodium/runtime.h create mode 100644 external/include/sodium/utils.h create mode 100644 external/include/sodium/version.h create mode 100644 external/include/zmq.h create mode 100644 external/include/zmq.hpp create mode 100644 external/include/zmq_addon.hpp create mode 100644 external/include/zmq_utils.h create mode 100644 external/lib/libprotobuf.lib create mode 100644 external/lib/libprotobufd.lib create mode 100644 external/lib/libsodium.lib create mode 100644 external/lib/libsodiumd.lib create mode 100644 external/lib/libzmq.lib create mode 100644 external/lib/libzmqd.lib create mode 100644 external/licenses/CppZMQ-4.7.1 create mode 100644 external/licenses/ProtoBuf-3.17.3 create mode 100644 external/licenses/libsodium-1.0.18 create mode 100644 external/licenses/libzmq-4.3.4 diff --git a/external/bin/protoc.exe b/external/bin/protoc.exe new file mode 100644 index 0000000000000000000000000000000000000000..052bf856d44a318612adcc30fac1da94d446a2c2 GIT binary patch literal 2795520 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≪*fnKPRu9Lq_lT|QOOO5 z--H6{(T2~^G8;S*v}~y5ep>4~0P&!q8reovIJGpnAG#V8I>}nwxSn{{X=l;-a^%vu zk#;%Rk*9L#4W0z>h9`-Xk9hibfXdxt+lpFG$|v3mA6wY2y8(&!MILY zG3R}2WX#F4oGE#*Vtv!V+n)6)(dNE+lJ(b3MH@m3_fj2gVjwW@h@>YMARfyTN2u@%IbKc8FpXEy&UZ_o&1kvspSB@f0w)k?<%j4Z$Ej^= z#f9dl*znRt7vl^q3mk=cU6lO9dIh~kz z-71}u1MiW<@>54oy4irD>S?oq;fIJ7gBD@d!e|QK4Bv8a(`A@aDH)-avdQ-olI+HQ zgItnUn|S;N+H8=B9?*ftm$_;9K{mtOYH`zTCy;A`W1li8O46vhix7x*!gPV(zvJk! zfX-BTWBqF|!;=0w+fq7Gm4-bAe*Hios>ga^ldcOJ4sOQIiUj3~~vX z=8ta4H_~&4FWIH@AxM-%ZfVA_T{vk~0ZXFvcnnQ)TjTSXrw^*Lcg~$ezYddirXNE9FdTSFW1PpbwLRtX{3goDgi!P*4JsdA zZlc^bcd*7#ol6EB5f|#*o|0has&Of!W@Wz*%!b9z=?aO8OxfHJWrBkiEkV%ucRSjKj-PX^IUPeOF%7+DoR6?92@1w~l$Lnh;_6AX?n?SoAI*5h z28ZJy0JW`-b7j$$c=vYdar?;{mz2?&fh`2X&v$_11nCFK0BQ`eD8p<;=jS|HQzeAh z5-3S>Y|(G=Fsh*)gd7rK>`yR_wH>AkPhf70adIX%4=Zmh96V6L)TB;xj!84BMj^2^ zs#1)2){-Et5^-s!)o|!o8RSgqnPrf(q+)+OQ7p^T_A6n0sUYVb5wZ6`Q55VQr|4h+xD0_%3{UE&v4aHc~-K24(x)@?I;Rwv-6nBdpchD0L- zKP?=7mH}U1N3K3H3$Rmylu5|+>cCdlNDDOnH!SDBB$lR^eDht8d=q;gqlDAQ5S3`Y z;Ti}Z_%0;GlJXJH}b`LIWwdM=`pUH~tWF4D?3;z}Qb(^@y-LYkr# z6mFL1tO8k=mA~&j0|_Ek?1z@$Sdm|i6SuYeC&RhuuwnLDi4Zxhj8WKT0hyplA0{-Dv1y~Re{K+$vC13&p4@%*tMmwhp}m)qwNvk!`>N2S@2)jQnUk7(%Y> zVvT5XuxUg|YNY7NuXGr`sH8+VS_HFz79X+3OZ??$FrGuNz))zz2hG}Ru!UIX`#gft z+cbi`d6Cq@^jqw|g|x6rgl$*aW>Iu)bEqfx>k+()kq;Fu_VRkjJo;iL$F2kB|B+*c zJJ$5YwCnb^sn&ZF;U|1@WN3jTwl^)16x%kFTeg~FWiA4{&e=c#3MzXJqMtTZ7V&Q* zpE`M$D_qajx}K+r2N2Pn!pXA%3w>KQmI4NFs8|&`M`TlEiZ&)E%kJ#HnY*)rVigdA zU%8rN7OIFIrfvQzd;$KvF5C_r%&`vbkOy<19dDh+?f7wwjGaK>LS=YMqD4?VD6>{( z$d>roLPkxf$l}JbmML^Xnn1$&QG&(4jx3qi+whUP8}zVl*Y|0>m0Daf0s#s#btXWx zKY^TtAQY(}i?s_@koLosKhum&VYG+%$Qk-|iIO38%JYI$n|!2H8~X+ol?=yqT9u zFb~TT>Y2{4(`$@sZ(*0xuTm{fhPDZ4Gv$57w(AbVZ$_b6Q>bS^$-7_K>;~-_9aI?J(!1k^z=BX`S}=jQb1p zAji5&EV?-kiKoJ(VuG5J-t=s$gywY98&GJ1S3wyf?QEtC(wxiBmztA)i$~E6_z0!# zZ$!sMvyEPr?wgyq`JwHsoJaN4JCPU2w+E}YIiAx~;1I#ViZ&i`iQ3V&DF0p@<=-P1+gm6VZ%KpGr z1>SV~{RBWfcP{LplX&`P;w>2*-LDfC-M1L@VbMJ`jfE+&g@+Mof4SD0^i5z3%Ymy2 zvGx?e;`Y3-0qUg@>O~rA$me|>DQRk7m~nRIIVR)m3e*!+F-D|aG!>I4+ZVWj+ovW4 zKmCikNWprit1d>fK`4P8y13N&i=2A%skABRjdSyiDEEuMnSKACZ0N zouHPdAJSbo_*K^O=*=0TCsNny44gX0q@aSN?SD5&l7fDV7q|v8c2^g%v0IKWYAQ{t zMovm_thpPrrYf?+q(PR7{42yB@Q*q5;YhyYBm(~MMXpCN%aqQ8C4P$%=#w-z?SpC zZb9#)CPJ=Pc-oIZ1E?pUHtwi&e0oWvV{C4<^(g(O+$XJlj6W2j7+uB#HT^}Q%cnP9M>QgGl!jb}IfhCS@F-HQf zswVlF0Eyct@+FXo_+r;QZq1`7?5m*6xfx3@9)<*+*j9=I&S{Ektqpn`Jao1Qm&_s4 zvvzv=qKqXU;xv-ESxe7Bvfhjo^$Ifdw!UqYl^J@|(&uI^`ONRHrcV9ia}c+qOK5LC z6ff;sZ20C_KrF6=ONbI#u}et$gQkr!`Gd$<2>FA;L(H&S5g|2Rr&}JI0vV#bXKt{t zi0#Af7djbaQ|M%nfZIm#?$@G(dHpU%+&sM}wkgS}3`i9#^SKKwpNUNz;E7c@TDE(v zh{Qd7+0H8def0@AeNg}l5{|Mbz+)pz8ZnmZe^=%KQiL^<&>}e)pmba|6T^TD7|*EM z)?t-T#AShYykg#&-S}5Sn_!SBypE*|*~0ykj9gb8D@OLI6;`}}RBn4@&Z{O;r+&pZRJk%S>F*g!xhiTIK$PKUmpuhk*AjG zZGfor2J}MB)hZq%(6+O1JUr#Nlo&B`rEy*GDi3rq@VM&_*#rOl~c5L8Mw>oZ)MmkoYKWGDHxPQCq5 z1DAtnPfwPrk-2Onjj%Cd z_tc)2z%XfTwG&JSIbXY4P<-J&HNyf`pNO`SttW@Ha?1ML33g14G&(8z!lA^YRd=Hy*fS}PZlBu zmXG+w(9u-w*CwdApI2vqcBBkx5O=#dP^rJnDv=04!Ff}nJlxUGOT;K|6|s}>9I5>% zBk^l9S!tT{`f*=SFiwn5{3Uo2Dr_F@io;L^7&k>UY9A?qLuon7XX zQ)BB-m}~b0Q>vMAp`gVr*?0{7PT!8<=?fE=H0WDMgcZPjGlQ^q;8JNuuIpc!oz;vF zfe#@G6}d_?((4g4V@*Lj&B)mzN%JDOiZoGZJ)^yTq-?zBOYo8OV=^AGe%$wam@01| z`bC`nAAG!xpT;_t@h$C_%f<%nm$3XG;l_)~22*4aUmoEgcx*&?95Spo6Qt1C7TE{l0 z$XIqdTf|7)^cda=1?pjRGdbbfQ;(9t+%D_*l|gzGTz9^LU^Z9P_?S$MA$xV-I?#U? zJ`8Fb`8EC!qWALF&FFT>UJYBn4A1`qvHt%YTiPIoj_VLxS|D!QK_v) zC4eq)b8x4XYL7CROjb>Yb@`_xu)8I&A_|m$;(J4ord&d!6ZZg03o>-6(Sz!B=)sU` z)dQP&7GYQ>^?HhN`C?h=v2p*49{dw61MmG=0^=TZZ=)Wl0N*uf+=*)71dbzg;!cjN z1R1VH`#n>QPQ;0WS5PO|(2OoE3sK)ys_`lywGp5}0Y3EBh-y7$Kq{^J|Bxe*V3rxV z>fekfEHaNh2$6Z1K7NZ2Ltc7hne=0ENLa%3Bd-d42_d{2^|$K9L)O; zv zPq;uX^2-P(@fL9vssxi*gd0&}V65;KL{pef*@7pt8Lil(HWN&Y$tFB8q%UXx=rDv5 z1;GsuKz_mFv`mZC{dxH;)#j~Iv=iAT>Jd~0QKM3wkgBzk!TZTZaQoXY({@t-t35{z zE+s11U=dx|qq%;LqQ_vl6%ts{kU1QTU+cOboLhls_#&g-BGOQz{b*Q$jVd4m%Mg!u zWft21l4yb5SOHB)o=LfX=y7ZT!T~hcKa?bEk}8A(J=}7u%TU&R;&+HN4JR(-&P3ey zqf{mu|4tTTLhfSNCk~L}G0Tn`Z(cw#7M_{NcqOibzF)AsA`)>xO&D+FI?;$OX3ULVl zfsT-}@Lrin*+ElWD0_8e4EJhEp?K}Wpqye;TGjVKIh8}te=zhYIkmaPv+$6D=ge|S z8>hO6luHdcH4;KZ8~xOoK=;T-oJ>v)iI3JDN~!|xJkNmiU&(173GCxc#tq4-+AULC zz7%>GbSwom@l{4&Vg<^zm)250zXE!&*abM`io{kza*KE*?$TYQhTxWxgZW>-k%C() zX346h;38RtA-L;Fa2v$Oys6f#m7@!8E>M#oLCS5D4dOf~RAVdB8Khhz2=RY1ln_6n zLv$aaj|b>u6+TQtEamssL8kF=L`Z(ajmHEm1i;;?m23@MEF;ZV}xbImr{d$@h-2wRpqiteH> zs7EXt;k>?H@kTzt9A}4ofFwMaWJO0Jou^SZnppy)a>sE%K`^P3_WJWYKqyxb>cS8% zEslkF#!B=2Rb~WB{GRIy;&*v#xIZ}z#V$L-;Mw7+m6M+Y+3*TH#b+X9NoL5ji{mhi zHG~iHaqLD=p|_FDrnkwfqA{~--s4)yYRy|w%lcBK8-6{x*KaJotJ3i4B%C|O_Mkg@ ztlmgzrRK%z&cJ0uaVL)t@ymmg6fBMyu1We9Xb|}IJ;U)-G<`<1FtYU=EAB@WLD=l5 zgR)wV62RT~s~P*v`SgOzSvtaE0(&iiU2XzPM<+xFdw~S|-Bl9o2|LMj6LCyO>Pq)6 z+;X=7m86q(yZFm_@XB!pc{5rh+E0O)5nxqDjHB!U)EADNH$UYmsxowCA&~x_oBR*)MjK zr2#bRB*~)+3dONNb28ma@Lc@@Qi z#^~FFXUeu?iY}-P#C!Kj77~XuE|g0$Tji3>mdZ9;=8}wqEwWMZZZvE71(>n`Tr2_e zJi1b{L@@so$(e!_&5XE7Lb^ag3aG%jMZl|@JpnEK)u@4UP`JaejU8k8Do?LRB{oq7 zuTY0fP1G96m1~W`!&TW~@CXu_LOi>Oy8y}IwDSv&UUCg2gAqh0QqD!A>M|sv&?s~8 zVSx9~&v7iJ7R4bjFOT@>7Ucf&I9jd_D0yiT zg=e1#40~V60rvBS?>R;A7fAyo#o>C7j=Z@G6-rS`tx4V8Q8H>+G9G+CBpLB)amOtZ z$P^0`j_XM{5OGH=lmpQSSU|vejOV&R@V{3d_qE};WfIuJJn_mEofi$I!nA7A@HCz6 z3^pH@w)zBFPdI4YCG8|8l(E^#5Pv)Tw&=@%%$R_X7S!S-K6ANPKNr2{X0EaRW}=r|t; z*{i3O_X`RYQP3FUFg~wc+d?tsb*@8<0bX;h2Nl#( zO(->qL=Y{H;MwDivu9hdqH6K8d8Y`5=t_!F0W9b*i#X>ZnEworjt^(|A{MOc%DPaY zokVGVsE@PxGdF8xJ-8hVZ}x4oEh70+bg&I!-Q|Je-bGOVNT76Ie!=kfxF5Dm5=6Q&H}toCHyCxfXek zfXb`l;1$ie${1r6{K&N$qpBs~O)#(_vmeD@i`+!{t8rwtUQ>e`KyAEQBfl7{wEj~-`9MJ8EZSF0%Eu`mGIL72w=+4yLEvZLpY~B=|`^#k#mBEaM zI=djOcI2_m6?*_NI&FqYTo^tYrmLFjX(z8Tj3Si|2eM{-5}8kA9k2sT9gK4inQGr zu(F+JqZ%ld>_jX|(iZy>&(DU7AO=_C_zGFlH%!IV94#}YHuG$Y*0Y&TRH4jL-rJ+W zZ`{T3Vc%Fn(5Ev@s^<>A!Z8Rvmf%Vomoi81QOfm<8@#H=3S3o;JGVCDJc}0B{49nU z^lFXm=fF5$TQA4Tg}C8(tu*aUmnAT`JP}{W+RCgG-cyfz0H&yMmIB;{S!5C2d37nF zHrr}xo&q36-6Fnr99*kjBaRdMd5HzDb+a@l(`#KKzGe^AM$T#Rgz;JzOY^@84-uM3 ze4Xti!Pt^Y@4O|ulQXQ7pc5w=fGgw2%H#UR1#-tF2#)ireh7_rq2w|>yShk z|GWdTz!*NfXV3=3ByuZt`zzc^*G8(y)G#_{LN=^r;K_@kZbDjnVaYu->|ODv3#Cp* zjAGO6F3Se|7vbM=hs$ym{x{*j82=VaOiXM{tku>f&K4Vss~FQ@8r0uovrYb=^?2zd zB9e>zPSE1CEGjc{A$3M^FV7P4((Dtn_hK4)15n7Go^Wpmj%TLO|DZj`UO6=d&`L0g zSPO$YVc7dny)m`r3sFIgwvH6!NVn5*e-o&QQ(4hhl6|Ra=k?UF&FT&m(Yc`Rr|Z&D zy>8UUB|27<`&T}Y#pyh4yKdLGRIu#5RQ7@8C|kOXD#h6g#rUDgZBTf{rdy!P_~$B{ z6H0ApN(DDh^OJ&3Zi7;W(8~cuGt=m`m2~>r>HX{ZzkybRk`A5i#9J#mie%bjXphH2j?QBk3?rlMQteATW!3_fwZSbl z3wTRStuawq3)&!?R@YQO;aMgeFwHc3fiS=!(n5a}9ehh%h-nP@C6 zL^Bh|gD+rw?LA+aiK~hK$sSh|#86C52Md#8jqvJk<*VF%7=bJba1_DL6s$g^ED;4I zC!UnO!Q0^QU&GuKUuI_R#YFrL%uS^1By;x)WA2Y?A}}{Gv1D$$WM#$NR127!*nQq) zF!vo;w2^!k#@zH=?VOCt+bbzlioalR(L%2rw zGg4|ZhFG-t=3^KT!beO~$Pel_42@5Z9ak3Hzwrhvw%PZw#g>IHOcXV5rSF7wUaGI8 z(&_g$6h|Wy7%Mrg=Uss{|7qeJ8q6mo{>jx^b7to}@0Z zF}af0Zlp0;NpJn4E-i*Hg-Ajm^+t3~fu&A4K8&5S!Nx}P7(4f?8}-Yv0$E;whiHAH zsTunA?I3gCVoiPO66#YI?h_fi)F&XtBL2e5F6a|1-MutC{-QoTvrUm{0|8Yq(IF5i zfr(_}&UBHTS%YPn=$&~R?M7z?hjr#MYL>UvcfvMrAe-9IjzA7-L)R@d3~Mp9nXtVR zqO|{#h-~)ntw#IFgjW!`{oHPwZ1;z7>qc*PylnR!XPb#o0;O&+R$Pb(aEn7$Xfi-V zAhjhf!m1L>3T6U1^wuvTLQ1d`1XRJ~PR!X*k2}cECdm*dy8}P!DY`QPhy)p)7-;U! zi)bk{M1iPoG=lr?kLTqH+KwtywYbFxlvEOqXr!}h!V-uOlC z;d43VdW{GvdeR=4ywEzskI!QA&lZ+NwBTBIJ?>kC(|5|tP=*IPZxgxOfqz)X^KNqc z6XJ@N6ll2{#ZU?ps0R(;iOL%f6`xjQ_1Gc9MKM_QXcEo6psz3RB;XGH><@Pq#;T@>i~GE??-I}h zInI{r+ZW+3##2B5F+3k0sKwXj*f?P3lxzNX0kI#P#fa4-t=PYVXEdyxyjE0d!MLMH z`36KGWG_Cghpn|Ocu=Gvb(KiP$BqRq%Qs$^B^m!~7rHFt7P%}X_qr^77rOwkGxNo5 zKbia~gG1wKSbQQZ9^e-vs#_~*)Jpb?3@BQ|PR(!f&w#(P27{Di?8jD@pa+hz-=!Za z9+djI-e&B-b-Wel7K{GU$5LS%25($;`j6yAZG6k}Cyc7Jp4msQ@lTCeWzQ(vv>#$+H*TmbsAXUMz6S8H2-VlZ4rOX?#bwIW^(>J{;wla4(=7l_#N%t%C3 z!D@j4l8SIE!6RvMUO7BzP;KnIT8W7>ni#1~ATI(OQoz9(C|!sKLZey4I$o|xsLg@b z#f_l|_n{grRqinss1@*Ftl|pC3Y;WCS|!LCjui-G4uo@u2cQj7MpdSUW@hX0aJ{81WEoWYO`%iN<|VaXSYt%YiFAL zdsv9uXSTKb_UP09Buuqg#^adKg3~xYLS+p64u;;lP>3qgQ zg|C9gA}3M*JLQLn)%%u?>VKnS^*o@;eCuAv1G8|eY!^;IDLW59WNF8$?fYndGcdE{;BWJ4|&)^B7Zuu_gc#m@u^);y4AUvY8{P6D5*Wu zEkpMSm9NucjO#!%W#bHW|Cck_#eiqV44rfIKfug{S2~HAZ!h^pnE4|y1YzdwzU?tX zTh<6OPf3X2S)iL#4j7CW4Xg|%Bga?}U!|k^r8!n#(C*eq#{+c2Q?S&kNLWqoD7q}T z%^$U6wQm6Ge}K@Vo1-IiydkxfX}<`e`P5TF=v{qyd~WGWIGh#^M9L`82Xww1gOOt_ z1`z1p74JY1@wkEwf28F{moAA9404ozNkTa>5yGhDCZvBf|NJ1f;4Q{rFsIIzG^@SK zej3?vdQGa-cC-}Xzb^(Z-*A6elD_>tk=mHP+wk+oTelmYFd7CLUm`>$IDvC*X`<$` z`$r{d6P?%zK4sq3`qkKfxb$Me5N!;{(s$;ZI?F6Wr=6x3vi3jb&mrx>9QV{Vw>L9(i3ZW`eJ+fZb!KeG|+v0p3Q637TR>{NVm<~ zMO$QR={~ZL*QQK#pv(p^;AjmVcn`Zsan9X zt2eqK8{Ihjs>um0OY|I^EyAtoj&U@T8&>=S-jUCzYvXKstQM0#!S1!`-?sGUrrjf( zrd_RL`k!g1PZU!P9cM###@Nt2n`TE_$KkncRbGOYY13WDS7jtrWFjBu@d|fB=`oyA zPTM_nYx*LaqwES?%JW7_mnFn#-Zn@1V0zj!{ivh-Y349{>EZ;7cWiBDLJY!~YqJw9 zItEm`9>ZO*YIALRwvB4Crq3m;abvP=>1n~nXqRXcZFrZEuE^5t0`>Jf}11gU}DSb~tZALhsUI;$H*TVCybS); z^X&yX)`sG=G5ApEMH&oD&a-WLOgfmd2l}J+(dOA^ay?^g=}vEgmKM6D&9#Squ;WpE z81OIEv+Y_eJ|e>JN$?Bo<_f^VxNA4vMSYr5>UiBEKkyL+*a)AQm3+A^CqT3cqHHM4FkECq{Ynp$`_wKtbeHBh$DX}a5-L2aRv zPi9G$AZOIrasCz3L>aB&`NHznuoDxGLo;~oh589Zf+F8ud`?+4CThp@kLWCOXv}`d znjLw`T*u*$FXjDw-YK7>|(d1?$Nj7-mIC! z-km0<25*P@LRV71VTPg~J(4pDhd^D1rujfA|?Kz104C9}OLEk%jD^lu;nwhA(AGz}p7B>lQ1p5CrW=p^Cq~N|1^5BGJ}HIz*ULX9MvFn;D`KT| zDk89?hHy;sk(peerNO;nATrBm2s+b`z_mJ=g!&{WMxGU8$<)FrHrw?XiC9;y zb&NTrc@xsV_YS7PUatdJ#-oEyD~^Lm<)xnly-pF$iSXzQkSqQ3`B$gz)9b8zv`NVJ z&8*BX`G-3T#1B|H0fyiLu_AAf4d-_Lix*RpOmOraskNFb5%W{fFLnD!SE6I(N}_}d z#}#NLSkXjoP^9mwo7Y8;$7pY@(es_wLz*i=^B(rw`lq`R7Mu4ytYur!$+*)gOIj6W~6Gav`Z?L&}`H9kc z-cB*FWQ=20il|!G;SSTZbD)j&#`nI`@)Ox)O3hD9uQ6t7cB?BfG*3&U?Pl?RBJXY@ zob9f|)I(SslM=Q3L-6~>YPpHlJ>2!&!}D&@uPB%-Her2-$Pw@+3SR4RLHydN{RxP3 zJ1i<_{U;ZkKiHV-o~9SD*80w$&DPE={X4AU%}JoH!v|{D;!PbboGh|UHC##1j2h~= zg7f$mUK||uqG+gsF?7Kn@v$H2shI6pU%;cGe_MDYdlVFYvOYp9IbLiVwyUL=o}I!0 zQ}&S)N6fcs6G!OTFyoVOgnIS}WW7MrHWye1m^kbcmf{Hm3 zH7$imuyMdT3Wt~f4Y!Z%h$-${9`M@B-*=Snq;hqsHL~DEM|Q+I$~NO(`7ZfOK)2^pG>N{?ykh*)2J>RLb_%H zFfMi#7lMG+I?a_tPkQ5tLoZ0iFqhw&+NftkTTsDsP;el1eIoRujb=9aL!P0T`$j zC+mGd3Kw*yZo$O9aekcRwb)rRcj%cZx&;pNROnP2bm~1L(houPrGK}epLWj(JwEji z*gJFREU5d;i8_5^VaXvG1FDwhJ$PRtpE zVZ&=zMUt+BZjq($?26%pIN|UuS`R9EJ>~L^Yu1)JUnzazuWqcH!cCQ55${6nQRwM>o4%*WQlNS5;teaB zXbpy$YFWL zJKR6jrcF)o!{VFk^e;-(7A5<~B_W8-*Pj4M@7P~cIzSiTjWwkWNhyK z0*rQlo2NGNY z22*dnx4tJZ*$(csLrK&lf52&Ye}+KWSm0FeZN*;wy_Qv(85ORBj=#F>P|OGYuDy8y zaPFRfcdt7zIi<8@ujLKuq@th0b*v>7%BU!&2y;7tvF;X+9sfB{bLs5V zE@Z|{995NdNrH7>_c~+&Ts*?z`g`|A7^uE~_SNzd2Gw|TP@am4+Sb$InTKaQcfY9n z9P`~=iuviH$55xQwU2j|5QjQ?ts;o;gtotHR&Q3%%L=V)npHflI`w`SD ze&oNV-V^@`QSZr*ej)YjQ5B_~6lMSaGf~eUYo=Zn9KT`IGvu%QSJ3Y!tBHOuotl1U ze|Jjy!7hU6k=8UQXBIaiDZHs58qtn*W^!i;_xcYY+=Y+**MvLx?-1es{rCSp;cjd- z5pKW5OgKH!Ae@x9cYX!EUWxf-^qP0*e^0NZ&d{stVbJTd$Ny`34L=y7*JTKe`b8E= zCj{-~uT1nB95`-Llb@UxPOs79gX7!sR@%pPvJepnz&^5SXY3cT?;j87Hs11sEh%=# z%2#2-VlRrQM1bQ0_Y|@Gdk*w&-bUV=rPu&A0y9H>!F5G3;!8X#D3o`UK_^Z_UaKkc z7V^)~41>yx?mwRhG~Y`g7AO#S|Bv*3@O3h)#UGB~{FS%c)w49b9x}4U4VcQbJdANP zI|%Q4#6;~Ec_>W7>;AkTWU|ol&^A~c{xJ|}o`D8Ifrnm%;&wHPB)mv^y-~i0QCbF8?9` zEG^$m5`Stj8BZv4N8|MmD!c*VM7J7$;Z)T zzpIgGL>|}6a4rl|0COI3@H#4Dk6=oG9r!%2s={`O2_BfCuQTi{9l1bNQ}bFLd@Xo+AX*5h$lOeDn3X+gzXRyC0BvUKdH;^w#sB+3b+HnmtxA69PcV&_ zPEh`2T}0;aJ(TZp#%gRu77e>eM|XFWXVG}JM_jy-_9!^YC@{MS3!UOc+yJq2{^o#o z#G7s6ae3!5+|jXh&3_QIDT zLMGrPG654%xwW-)Osy|MMo>uzOj0u(#>Q4#+G>RsTV7w=^0sQRMH?NgXP5J^w+~MXemt1rds{s(A1jDerjj-pb(xO-rvL&xGx?mJxKlGr(Re4 zN$N4~+jrfeGe|h;hoTFlBgumuP%ZcYAL;-I0c|75**egc!dKN@XSq0Na(ZTX<%G1* z*2k)lHl{#IA}#7%Yj>3w{*4|N>zBu`01 zQu`&l7;BOioTAC}K+&7_UY~-q$_Puttpn|2lG3&0tP()c?)QYPs3jp-@`1E+Jt zDO%7O5BtHzddQe_Xo6Wr+UoJ>&k~?|{(Zjv8+9bJx3$R| z>7`C-5RSDq{cz`y&>%GkJ+(bcx#Wpi0k8lFWs|t#`-W=|+FUz<_NXilw5hsljH~=2 zbOzdAi{7RM{q}4adzx-C151Ynb$|Qj=WSI5EDopEtngNj=?-nM4$c8l_m=yJAyH3^5RL*`58yDwLZNSk zch#Zr>ItbKe|YscSLGGKv8gUsa0)_z)kM*LHS(GaS8%;hUJzAeDp0?fl>r)W(L?HE zo{`2Db?QfwR8c-v{#+1B_Nm`>;{}FN%BJVcuwt_eff2fV)3`d3IxR~!P2hr|j=!=9 zAEd)8uJ$FHa$=9i^znE`*(y`LG=_z`{c6gbNHSeLs_s%J#;SLNuHF`v%6D%W6%#E+ zCxaHG*~lkfrkno$kG{Lf2o)x z{Gy^|K5b%@RqM*gD7)$NVJ_+0?8@^wC#-0*bnuLVv>gnWsiZ}{md-tcORH#eVR*-U z()dd-$#%EFQ1RLXPDT1cqNh?6`9z%Rs=*+EwqrV(+jPu2m?8TxC=WZ2Af z9MgHe5oTp<*HCtHW5c?!o_j=f*Oghq>cpOVaU7f|8A@@bA^IKl0qh4Y^ zB3_+|HaWvqXhY41mA6^@u2qk94RgtCR!4exP0n~g|JQHz5(#yh{>VbACv%4ggLL}9 z(s$y*piYFrG(ri4&Fa)VQ-zujSAS<~N?+2>PXdv47uL78s`m*6Na*9IT^-j~!yUQD zl5dfUZQ<238Oo2X9vEJIjfjs=sHQ`FyfDKlK6G1`Gh`7TyVUPzCW((5`H6#*Imlcv zx3ng1)WIeZv2BSmkozlqPFN7DpZLBSH5>Q}|LTyuuXz z<|jh^-LTivjLK8ce`k2-bWh%@P9S$V2h6u3V^zCVv5k(}N7C5%c}EaN{oAdgrd&D4 z4Ctz&Cf|%{tG-LRpE=Ssl1^ARxAI(FneNbIIB4l{Iv=H64{m%jiki&8Zt|_jUB!VV zQ&$vJj<#!`qf@_fL`JnFGozZ61*=}`n;kA@7beCIi5btVuR~6LxFx|4N#L>A`q*l! zz{6xcULcW*TGNNuA%o;J50E5*_>oazR&3oE8GyppE49SpP5q$-8kGRS>{OiV;?Ye8 zNN=Yj#@IvtjJTVX9&xPct%GL4HiZS7+7Cd4ln%7zS4`>Rl>~Yq1;{iO!y1w}EfDYa zsy}S&VsYeDWtk#`F^-KMR+buEPnj5vWGSLH-6!~V_3~~)!IEDlr+O6cTn&OrbU#%i zRXoTasUxeS;}Cx~-1Ilugn_cQ@@-FQTFPpmK#l!~_S)Y9WIr{4j%S#hCQ5!Z zLjW_TR_0coBm71GX0!H6+krnweL%H{k6_XI8O$=UCXaoUxvLJbzg}4oPoLvR@77!? z>ETL~zF^fM8@hlMxF2I7goP%%T|Y%gTX*v&J(S_okbvp%8`##`ABecOn+-m z@bj9EjWqKpEDd4}ux{?(%QDDj3LE)YXlg$@AzyedRs?JlKA7)W!FZhoe-VTJ-#7O zc4?^^FaR$TJ4|-6#K>M6%J4jqC*Mi2vR}=UcZij}v{*fp9)BmaKPZS$afw{53i6T2 znTODh55uw==`lsU>PPlAsTRI42;9ZYqOzxpbgqUQU8|+mj?BKjLVS3-y^Z{=eJ$}(R&p$8E zUYD18X?|*GSorhqa?iTFv`h2T$_MEs+P^hkL(G~|+JC$TNh&8Drb2D&lU~s+L&M!CZR5;IR~)yfUVXj_<~~Af zu*sJ8NU>NnOVw|?Vub-G-jGg+{BE>9ZEw@t0S1=10q`IR=l5}rq*j$=%GgLDlmhQ) zuwO|ohtjpM4g`;gBH3H1GkBnQKBn=8ewDo!k-7ejV$gsC^~-YnkD5^3o)uYhAyi$YVq-vk^yx?rM!T%e)wY3}m>?g|-EWJs{Sjx}uVIcR#&O8g z@)f;yOnXlF^B8H4L<>_c(_k6rL}!kc4Uk{)S}~}Ykb?n^*QKZW5pG5EMu%HlBQv|& zhoj334XAmf;JGl$T$_%%uL4vl656c3N~H{$BUswgr`VeGam*n;GlQP33vdhZ?3jN; zDkX#1KxB)!*E9K9sLA5>=H?D)1Et4@JM%0(i2#4PRSR$p2d%rrU<)+&!WK9_Ea+7x z*PzK2rCK8w3Xe2uTras&r|73WRcnKBsBwg)X-3hTh*XT~Co%_vpXFlR9s8XoD?0r{ zwCw{p=%a0GKp^$jt8{?DB;M^-yN;kDJ}wAn(55h=uS9&={o$D7dRZvNSqn1#fc&5^ zqR%1h$_KTL09t6$hgQ*cLD3p(m28Q5MSHE;NwFMDif60Yu}qHRkb;XT^h`T_a%`BH zUNfbEvV--}N?f8xU}{mnwD|ZPkqNOm*652xT@L(!9LMAe_r%~rf#V6e`P~8)Z;5))gTDf{Pg7|)1 z>i&P%1#+&%FAw$Zf<<;8Jj65I2gO7%#PqiX3HtYAe_N0t!H6Z9oR1v7YeHJ2=)Oov zou}rou-Y9Hi1iWMCCjGe*&GJlZO`x13udP^ve_NR_(~sOMXC8U$*iLL3ayg5aN~U6 z^6XWA>1Ks^D?SBB`3-~eQ3T)m2;IlVFkg{tVjpc`{oX|Myq(tUx^wSxQkp>Ca~ z6|PGz)nALvuXD_=+5BRG{A2aQsiJ~Cpz`<@a|B#{SJD>8*OI{=R@~KI%$olC?h8bw zsjEyKZQ-_940Ccq7xi_iUx8?PTzdC;^wOZ0bT9S2dhGn0-A#|2h1UHrAI|aeMeraR z{O_mqWH+tO0F+6OO5LeCy5u3ooeMLsn)$1)?n#0cH}x*CB#UVoI~;79XiSKqRnw*} z3JsQA+s@%pRmJ<*tvuDTaI#aZ%bXg$>Y-?UYt_d9LNJ_KJWuTO%wVJ9u$;}j&`Y$} zs2*X!=`|hC_bxZ#(y=JuR!0=@H987-C3{4% zC}7nGx9CW3( zw&Z=V7JMH=gBdpFg9(MM&79IuFa->RijFq%0Wmaa)QAtS@;kaHr4K-iWWY-Ulc51G z9e@}O%Y+84UJmXSAPoQEX!aC|gkI1xcbOlAhkz=V{TUqzy{_nep+Tz?;bBBF!o!N| zb)0x%i@bA~_P3uz<1Zi!Ugl2iPyxPRw9^ua6wiQLTr*%O9}Knj*Rs5I&JM<@ewXr6 zOZ9u8r(%;I-)4UJl~X@cQj% zmLkQ1S**+g>U%Ym2?gN5l}zt4Dda3hIyf6n*q`1f8TulGG;tfWmr(RlHRjP6ZrxuP zWVm%TH2_#UAb86ei(PG}af|B>ay^`DCjPR4!E%0<9%ZDX3W_0CMfJ845z2y+3&@Ol zbK`NmIj7GzR~^TjC-?d0mg9KyRlWa`T-!mx>i*x|^F4^)f9Coe zhQ=)ZYWWNC_f`Jh;Q2JZ^GI_Sf7g@ld;A%Ba%z!7-+YXckD_mi{S~E$cOF#j!s-B;@5*(OR!->Pok#T5RK1 zWfmda-w>q!nY0}swO76SL3nEYDa?z+yapk@M?&(Qe{W9MR z=cJn_JYX8vc3#2%C$sr>X3wx94_9WN5E?-puIETMOE-g>lwWK;b)D2%w{V7~8xYM>I{ZMDQ#k5w8Ff>}oY1@JO1ui}>xRUC{(2Hm3oa*J>FKkgZ zl}k^qT)pb5koLBiEVcFJ_|4sugSonLV(uQGenU>i=%Pub&pgoUvtCOx8`)XRFtutZ zlPG5y$P9ICOysAT1<^z+n$3FQxDH5JXWqFo_D&!EK2rFEB)fC3HF<%_B`uaqA3hUy zF8$fqKZnlL|EYs^{n_S-F@&+$ZE@MT)b+FDA+M0j3Og5lz*B-*O-6M(qhp@@zLb2v zZ1UNf(w=YnPqwvkD<@6rmi^(}>|%3hP+DU^-HPdfQN!Z%88ZM2%^R{TTAI7+*$eBF zHX4n#@bUqpEhvi>oLZL@E@kUWwr zto(_Vd;Gz)edf%Iio?jj!NqeCOjW@i`cbcF%a}g+ptF4$eZt{6$DZ9tiJ;9(w_9Qj zMs-vHb@kt{D}_|eho0(t;R7^Q-$&(Fp{a{C=xl3X%ox-Y*yBzO>@oe%n)7;5E!>a= z^5Tl z`qiK$5(}xm58{=rBb)h5Iq4DTdoqg@Z57jr|1osrUfXEG~WnH9b8;hRhUXM4$-Z~QlX!}L@o)@*~RSi~MVyS0{^){f! zk-b&aoQLm9G3W3E)LTT-Pzoc1h*<(&qy9f45>r^cA1RKOw9JkIbb8{6)VOFXTe)Hd zq+fN1ZVsqBTZSRvH>(l9AVOyA=v+K*$^^ufWXw~Q&q>zL%bM(L4lc7A<2|ri+xi*} zO#h0rL3>)Vua6$k3i}N_k-h-VWk_<&l<4n%H&NwB?3rPrwbDCj&+q^AVD=gqeKA(HZHbFg&XWi6t(5QE1ep{`qh+jcn~9pyobH1CuyUxBIJmW9^PD(M)|S zob{dAcYPxq=ZHRq2~W1PcMEQVzsd4vmF431oIL%i?R$jsJ*~?)Zey*m=T_a&-utt_ z+Q*o8uQA1)dy|kxx*rDeKL%}@)teu{asKTZTWD%{cJV@M^>5c+|7$9qM-c*7Vj`276>7$RJmP;;JMN}7`nNKqTH#}Kf&IlWug2>7{vafIBhZkR zYWH?Zyn%2C>K>gr4qN6)34oUF72be4?Q8lWLG3ae;-esTSVd1cvX^}K zVt1&iJG2}8962!4=^{V;yT(4SmJ;E4>JOqbdTsEOJi4}?m{GpjfYV4Kk; z>{X{nGn>Jc0uy)W>_Pv!M>U9@(kZj0D5x4ymE&=0KJA&OY+mL zosl6Xof}x49gW~>+i%8LSAWC5ct~fk@7gHOUDm|}PmGDOJ}s z8j0``03vTJ5|GwD-=90zx;ERoTxO7QKv*4Z3Yny*5SPibEQce4vZM-)h1pu?U^S>- zZ%7pQUs9m@5l~W&7Epe;1EahbaGsJ3;tj^{+|ilFj31r6R**}8zS+^48txodxdd>J zT%OI1X8cKtiDuWx7kljjY4aRgb0r-CI6gzI{MRSlbED~#0#?KLT^M$P{KoSV$!K+s z|CE53If3zhg|qrB9^eGo9qLd8T!we&wx0m#OfeWVll5h!}1;g zFKuNyxt!n_CbxU7x!&U0fk=r`_r!C%FjkI!Q6FN9aG2YDJA*11OGN=IGs3&leJ#r# zYER>r75aeYTc27lL`pg%6(20A1D`PbuuuYoq87qfK~V!`9v_F|OgI?200%27>i}yw zm@3vvKz||?it}=;3TZB5LP)|i*@Z`UU^Y(Xs_mXwlP}eDDLO*J!5Y`q-ytOG4z=>a zp@8~hJmo0gtL1}feMw8?#K<739Bxdfe!dFqb6=6=Al0Sf{tREU=i9%fzR^3oJfjMz z_dxIjaf`oFfG8qGN2~y1ydzR_$W+=36Is`1TF+owG@Uryn&$-&0z4vS^47p?b!og3 zmxL=?yy!=!x`*gd6{{{5$r15%<8TB(DFbZI@e5b%I31~C= zWQib1K`CD|Js!G1np0gx?P;x>Shuvuz{pTbnrod983?*HT@>+1(-(BLEs)Kmon4Y) zg*SAml=(t=wly%^o^B0^q(=1X@&ddxv~4n}Er5Y}NLKONr^#&(xQK(uRqhUHOO;!G zHz+X+fvVA{kUht5HuyUk)-J()8{ZIa?V5X;RJ!s%m?`m=xaUoNFs!2f!*dvoLs;O; z9%iGA>)qaG@E}d=1hNc6?BBacW^(ZDs2IU5urPik-5F9qv9u4HGh12ma{-2U3gmU2 zS{JwaKHvME>hn_RYZ~z zyix9Xm*&sp+$Vp>Gi*w9S_R+lx+;Q{{~JQX+Ut9`(J zzjGO@)LdPqC)fqm2v`iO&hU=Z9i5}nnymDDBI!S|{^~op>Q~GnzE?xTLBHCP5*lI^ ze7j2?E$Hw)S5b`M!IuZRQ&#%ZjNMpSX3QoP$2ipm`lUc{)kJ*Vks+^<-K)MASN(UVN<=iv8ugjhq*`i->QDmWc+nSq?(BI?hehXWu|Ln7=&rRtiGA#Qs*Awhz2 z1$dXc;?K4{T^1joT8p}5tblDc-3(fzmk!`8uoB&Kw%W5)ch_xn*N@iO-F3&n$m!Nc z?N3oXYe6SW9&(4piEdYnJ8Hmz=(Y=sv9!?#|K!vM1xn6V2~ogeTe%;@@}4KsE)vDq zXv3Z-rl(A5<}>x?XGJ^K*J(HJ)z?io?~rezOdy7ggn)X6kYF}j0FF6LD+diI2T3Z2 zM!Rym)~t3zR*$E;2o6IJhLOs=iS;Zr#wz(o^pc?(cPJ7%60re9XE6h16OufN)VwRO z=6Mcl)heJV$u4 z=Z2jUxqSF#{%4O-TZ&I|y}aPCgfPoyioBuj+cnblq?5 zEbuyuaR<3#6C06x7A>4QGyO)-{X0-`^!hi(Yw{h_zmB!`8@4`4PE8m?9FQ3vU2j^##fz84({yqv9 zdwx*Q2@7{5v$A^GuY{FfzE)US2`hsZZ&-Oxy_1z;DBq6d-pg!eZcXD?Dm`0tB%rRS z78Hgfv`E&f%>i}!Ls-zEvs-i{@ag@B;p(DRD=)npWMOc?hDNd?*UN~u^0OjE?$Hg_ zRTwukk*vu(d>|!zBiTD5urpLZ3Us%h>kGNTqRp1r1byRV#=%rL9e#HtWAGdaH%^r9 ztr;gXxN|XV3l_uvuWxj)zs)~>C;#LelYjo>-{YUd!at|}MEFO+KXR-b)LV0hh`T{d z<^0AjLI6-1OG$gZ+^YF!{_o@b(;B_nJy-qZ`WUP5l4g~oun9cU)Yqegm>XgkWE{TV zS44GDC9G{dpJ_Qu_1ovHDY2`hTN8vvhxM=(j&le5iMST8aKFF6}*+0qk}J zzAghUFfy=_(^L7^$nuSU>fLSH0ARw>@b0}9{xp3dl;&u4lR8hQW>-ZMCg~ zrCl#3wnkGm+DWb-9+E8=XGdx6AWwiM$D@Pk*Od zEgM<2+>k-NbaeR5)<|Jj`$=L7o}*ew!hM98bwptOA{VgajNArBH{nvsCQ>AH2qQI) zBj{d28Q-VnSz;~^9jCZ4m*o7>lOP&4r_vkEiDH-}&Avg7|pSTl9}KRT|4Q@zC6 z0Rq66c)t-`a{eXeANj>Xr2FDhbsNA3WmCE@R{wlLh?li+m-=N&kLvFK0_FXJZ2BuN zPs+=oyvlfam-Sg*p(asurdwTJikK)&Ul=1D?Eo=k5|UG$Xk;_DlPPR{nq5wA%T&(8?Q! z+yr+TGeUmMnv+URM}n4IM*salCk0=y=EKlG7M6i|psLNSMTt`E{Lhm7g*IR9k$>Az zgok6m8GYe1=XmRTzXg34=iXNI){_axWdT=pC-~!ofTPd%E-ziPI{nJ;ju~7IfG=(` zW!W(q;Xfh_q8@#Wu_E5gEMfD!jd_`Jw;?af#k&45=Yumu7&y0K0t5tJ@FGgE#aYeK z{LJ3tf&GISMAF!8F!et#;LvxDRsZWH@;ABuH&B0>bT}qW*FQ1enEH48HeP@Bm}mm_ z&AiOUyliR5(b{nDz5TTzj7iq$f5^LAo%QEvh2HB8dkcs)Ow855DW$O*#1BWZK}@I4 zn_PL-Bo=v@X$RH!zv^XEzWjVKI$kL^YPi9v2%IQT)Zr_1mt&g@7pAAT1H#f#EC>rX z$+5QnjOpRVdA@m*S8Yp@+xEVe8@1Wc|8LIvuT0p_X-Q(q6e+5MhY*yZ$I3Dz3pPYT zTOy%HRo!nK6HEf+WDC}vtJ5RciTw9PimF*gRLg02VszU*X^+U#Nzbw+6h6T5liMe~ z6e)QivS1^Dm61>r1x%eexpF?Of7fn5v0k+QBCBY(-F|KmZ|7UEwR}h>C z$f24fDSwRy>C+bm`0ns7U$Lg*Q8*C&e+X#^i8H7mWtr3%;EpQZ!~VZjX1VnYT_L%B zH?q6lJ;bGifm2!c&R@&_?`Sw$PdJ2I%5FHab2N;nV38WJt3WezFAN!;?+ zLqokX5DL~jE$U3k_VAmZQG^R8=sfntI6P%9_MrIgR)%D3pmr~e6ZSi8S&)nfkjxVfU zOV(ADXS+hH7$NyJaqk%L%Lc6o;^daq&Z(>i)LYkiT?@l2-7e34^$T`|f$dtTudKqr z(8B9Nmv2pBy`~YwJm(MS_{U<`Lm%!gxbtj%TjPT*;r@}>eUH8`;9n+}3+s7%*W36G z@fZ7km+QarH<%jyhHppxkuT>JJLKb0&%>3?t%x6%#|=U6QlS>~v4>;SKT(YiLJ!6_ zv6S~CJ?V_Hl;BOHgwust)Ycm%^ajXLobvU#+9s?~Hs9GvI_d$&spe?y7PXZ3@kW-s zY%hrZq9kU)#CR{<_AAX6FqCkU{a$}Q7;-=o?@hJe8<;qpb#m&MJhODllHI$gEM{=)B#gl>;tj=(gWBBhD{FM%xG(oII9O( z|J=*^XJxvp{1W3X+o0WL@8(r|AFnJ$Vwp5uF|cmNA(NK_0vxcF^)V;Xgf`0!*sl2+ zq1SN)c3ePvul%KzR{_zpRVd@MN&)2yUo-*?O=LvpV)3KepCPcnd z;#XBL%Y?)SE%Nv@IHXY{s|i`kuMAf46|E7!FbQ;cUOSy+M5A&;{hXH3%z9gmm>V!} z(o;B$+yH5COl{hRN0+M|vvLbtIho>=i-zIeCi9}1Bg0MZWJQ(zd~+1Fp1=tb$@7w! zHH_iK6agPC5el|`8mW;A3;SG{|BU`T}(}$BYZPu0bKd*P!aCBh87-|#jPYdY!zPfU$WFcL7=7+iiP5*s;v_l?D z>AUm9b5LAtwsS5>O?_xs_a&uj;X>l?UZNV(IRW*McK=C?db_*S?^xZ$H@cOnb%%Tz zr@59`n2uk?Hi@&>@b;GfgYj^Ga;E)^ zhsQ-^_tlGwB?}o3BM5bf%d^3= zE?|}VC0Z8IL zt0`E3)~QZ$Yi+YpePsZNLb$BptEjU@D4}qErWMZZ>OILL)P#?XnBsNFaX_8-EOgA( zhgf-P9;GV2rR=bZ%(K(^Hw2Vh68Sf3Epz}0mVez|PT`U!DmzQ6&1E^%46Rb^E-v-J z&*=rNB%uDHTZ-eJdDMGt^?RF7##a9HK?* z+fOfz>Ud9@qejYb&@QOa=t=}T@Aw9KiVkqb+Ca2_--5?HHJc<&jO?W8#?Etz<*y#U zi_NNNhW0kFcG((frgfwCx7uY)B%Zr}O6PF);Cl}n8N{*yhmL`sno{nUWvNH>eKAB# zO~^clG3&mwd2HSB>NEMKv0;-^yw~Nf`00*HaU!HgQ zx8mI>(L8oH!aI6~wR`f}&C-+H6oUPmof%w9*-a6)-6_{!@2T-gUUP7Pu_ldg=ng$9 zn}xGWRo&l3$ppr0j;eWAO519cJjz@mh;*Fx;ATyBmAfwm|C>@tz2l=!eFu$Z5Zq%+ za5EqN@_-{g)#0xObz=K{em7eFaL?UhLqyZB{mAdyR{I74EPJ@Itxm4~C|4Wg>T$W+ zC|44@yKReHZIY|4a`gkb+9p@nmpKPQuEKKF#8vyMZO_YBXxpJP`MPymtNi-LHYHz+ zw;hqM>$hDa&t`AylCP_`xv%A`V4GLIE(_K&=7P*A33(gtaOxjUf{XfrYKU}23Bg|r^d3^c5NPKdgor80Bvtwh!JkpcfMWA09 z1~>FRuJ~(QS#$_?F&edw!44o0h2rVK%p~?{Df+*plC<$r_N36|lV<+H%rvKd;#_aZT1)(g5Rs9`TM@~T8u?T|D0iAF27B&y4c0=eHN6lxEi~#wRg>caPtThaD!do#+Nr_#IGd76S=C?oFa+;^92M z!c8Q+8$@JDp^lsl+UUE?Xx6NNHRC!CC0lwKgslqQOc{+D#oHyX2jym2N@I;+CJ*3; zls(Cm-KZyRH_3D@8nvP%lcZfA0|p+@)sl&w#ta^Z-EDVv+X|9J@1MubMt@T#IpBxa z=-;0r1>7%jPU_%D+NUoYYh2uL6eH%~criLoN+wHPjHINPpPp@s@k%k$9=V?-?de`| zU1N=8fFKt7N^>TENt3d%MhebOG)H2WAbO%XI(J=;q@#ga(=n2oc!sLdbSkbkx-a#Gv5lr9Btj1_!ie+8dp3LZy!iDIwQg-Hc&(pTDB zctE+7C*Hyh_y%*T^$rFf1=Wj5?5=(b`R|K$>yitpiWgGnC}d-gLgrHlek>Yazf=WJ zlb+0IBdFAcRc=OrcGkw)`L+JqdA_N_*d7FaR2MA--mb5N!27w<1a6kPK;VY_u|n8q z2GA$x57-bZuip-R`l3EN^m$#1ly_KPNqHY|rOWH&LU-sVTqHX5`Tyrs0+x`o$lTS{3@q=qw85NC?4F?nn74gu~^4^I+P>ws~zpQj_u z(@}hRhP$j`Q@90LK$8W*)QGaGV8B4b;kT4YgRIt|!p1ejz@#YFZP8O8;shZ?~c zY4mTjA8*yaHrvl?<(GcNe!N)U5Yc9*n4)h;9(D?$NMp?*KJ66J*v1;k*Q5aJx#qFh z{Ait-&DO@342edzteV(Q7Cm z<2UF@+Dv49(0k+=hE;~~-F5=+Am*d~tpSxiNKj>Kr3z2Zzd|}m1Ddi+Ay&Ia{|4cT zC6OXxeb@0*o7wG-q!^i-mT>n94YNy{u0a9{R~%=Rf1Jr89Rua=Y@Q7~j`rL~mbB-_ zAJ}RqP$WH>hn!+~fVKTl<|>oZaFY`)p{}$*x2u5`8*U~uhC|I_y45~H$#>iD$-GNvsUT{D?7*1DC_#r#aYtZlVK|JMGKJ~l) z#NRUhe%|GGo$#68we)kptHM?2`Z0f7QVU&OX@zlvqtSPh&PT{e7^{+$!3sIHg)JS# zM#b|g{ADd6vfo%trztTkz;>hfLP9iPXh0rxhrFoAP?fu&fy`CE{u)wFxXpWP1FV=& z|8<|?vPQ=;GS>RHc&2sRAHEvXZDoZ*dqia|!o&o?H`s-Q?dKI(xfASDKuvqke>uKB z@5_Hl0s@anr9}ab0m5`oRDVP&n*ElThH7t)tC25Y-l;D?A+}+4K&9o8*4b?frMC9^ z;&|4pA-5jzw8oB3WYx++9%k4#+rz%T!M`&x>@}f}Hu^~_evmTyIbZs8d)#ZdkN!>J zvdsME_w4chZ<)en33iU1Lo!LUO(2^`x+@R7?CeUt;57Yp9QKqVH|qiVyZ!d?9XV;` z-&F5?BWaNWX!H|RRc;n2V`|Fz+9tBG{Yt&P)1DvvgrD)jyIel?tLPPc6zAm`2WwsaJJ*R*O$otNUS<8Ls3oJ^mRg0E*vigP{fpX0C>ZzZ>* z3_&=XEtJO#kaX6{DV8fB;E}?q+GOnYCo2rxHwr`11}6Q8{{g+VWkBmRT&Bhz6i!lS zy{4D1ag`y(s0;$PAg^jL1T1?<;-%c;OP;_-|2W0wqvIISx4{LY@9m$DCic6fBIvAt zuN&!VA6TkJBer`kdtK=p6er{Pep7y~7==jzVnQ$o=4bx+71?LQvL| ztN0e8c60oQ9&60c_HIehwrxCIJzm^sg|qao>&4JkR^(lyIH5bVb?F;7WOJgZyrv#zWRhh}Rh+Wckw8TfOr&D7Nu6qfdM~lc~HcL;pA? zcZ-@s;>z#nP7==qPt94}>%KjM!?%^|7LSX=?yE;|OElE(+s8%xRq9Ii0q6-^N<~Ym z?BG?iz%~+VypE(!+Yv3QXREm?;;&XeJtx*|5ovKV94V-6n)==%jBuJNdQwSj`?uI; zY_ZX^-xu5H)4SV6%sFa_r&6{8(q-G9$^K3sg4pb0Pw0Q^RpQ-g{_1;TJZjHU{cQ4m zh4iyx>9^bI9o_*wcVPtrag?3DuUTz4&ot*|j$@PjX#l0vlk)KxA2E5zw2Ea-jkpXY zh7f+W$A|RsyV3aL^UDd>#pOxyoIV_MwH%R|P0w;RGc&=xG67u*@ILEWM?i?M^Rj`~ zz_g}z4tTX1d^^fB*JVZL{ITkjlUEF=+LcqAl}kiwhdnc@!3TTJg&$4rITyymzRY<1 zH}sD*j6tkWCK~-Ci#jIs4|ESk#(-R&i7CL_kefwRNDpP?%p1R$G7?;G*rKm)yMbrA z+cIA4A#hCliWB{@rbCqZqlp}Zy9k*^e>I7YrWdl4KIvJz(?}`(6Dg^kIu~%dC;0(H zz11kOwyD;jb?M$|Us;tt?as;()AIPfp>oKCiPNyyjg^FsRP;F5U$y>+B1Ki882a{t z#zvq_q1S22LSW!oa8eUgY0sn?bAzL|A zYkeS^!EWSz%ZjZNif5Bv{aJQmD06oPl@pk@It|mtJNCZXNmjs#S?am_NvNemUpB0h zSMfx1M+UZ+6QaAu7*({e11G+3CA2d(}@C-DostQzOO`U=o~sGee&-RsKy11CIdXla$nnQ=Pbz zSfQM#KRXbd+_qTz&w&DHouKM|I85S3X==moIsFo6q9+%VVB2~=JpLVGviT(slS#cUnv^ym&{1)E43 zJj@5}L()MMnHdhkR4nbCU25dfznt=@34$F(9!bP@hC!rA-(ueY zqY1ajz-89oMApPHkKf!{H{_pAxssI);05?r*+g64vu#<82KBoEgfI0KQ`}@; z=V^{EZ1b1-LOei)0`3dMMMG{5i{(1oUje^TZ0#8PdLuU}uQS7KCd2JV%W#WmQGMdt zlugt+R=rF85yJ&Fsn#`YK10{=`9y~I*)?1@Y%^E2Gcl>3K~?K*GZQMRt}3BqidSi5 z!hZO5lk+^@lf5uC-aI#Xr%+~4=bh)3?q10?-JO>Mv8&`dk~fa-Udv@|-nk9fK_e6; zF@FqmxMi~RroNgIznW%Wse7wsnzo@*j9EuJ1)3LRnl?p0Y?wblrzL1$RMTtOiOP+fvP@SD#p})@!V1b@Q8RC#-1ZF z*k8U8HuF+!qOiY>e7UG3u78F*ocK%3gE0pPy*X^nqy=oFmNmW`A=@pRg|uN$=~mMMt0O74E}qVsO7wlV*LZ#l=u z;=bZ@EMh1R18)$B{$w*<74<(FS-^hrKGpsR^(e`RRb`Sd;9Yh;3FT0@)qBwtN(Ap` z$U49ncGg}cNC!7XhLMBo`goMhh4t(S)U#+HCb?lut$*i*d#uz8Um^tZkHXruMPN>J zST2Brrz||P{Pa@JyH;bcSqq>JP87r_GGw24$y4yEq{~mA^x=3ABT^%w7IES~OdeLM zHF+!WC5+cdXn(kJrpq&{k)RsCqO_?CCwuPMNGkDnJY?OTnRdkU#2z9dQmw)QPr*Uz zK^3f`j;fWD81Z{N{(~Tc))sYu7j`4yp#JBRkwJe(R-m!D%6*ZFt&RT2VB`cK=mY=s z$aKJM?lMKu4B7rmLIeG()EJT$W{1^aEshS8R>aY1GN=kT%rwPQ)6BiCDYgC`Z4F$Z zm)(0Fn{`BDb`r)Gsc40rHU`u+oY)ZSn~}bi-en+a(2uQhi1Nlg#9MpNUb%6f+&K6b zh$=+`*tC@Qw+ZL`jh(A?{vAX7Pf`{%9OD1Ip&K=+T6ux1e1Zgzl#itbo;mpXcMc7m zVpTK)y_2abKQU%JPUjw2wHgDsKxYi`{~_W(QtRIZ%GD4~2P?tXw4*G&6Qt{HEPR4dn<7_05|TBCoAC1hBo!Ed&-x0P5UFaMPo zKWjR&>Ar;in(SZ8xEQu_>CGU!b4Ws~R2&SN8aaRXrcD#*#>j(8Zf4YOT1*s$Z%q~V zJl{!2Sc0CTpLw3xr7=0Ii{_K!<|e^q@I28tsmb$1&D*?t^B#l8!OwQbPaB?t;EEb4 zfiKyu45$f@QJhTNp){i9e1+-d?sd5tZMO>xPGSLAnF+R$EVqG$FFPYx&f1X>$)BGq zdt7p!W{qr{nIspNpju3MC0 zSIIkOc#JGHerZB`YTt(qSa+I9Cn!vzF09lVW%x4r#W_cZ8KCi%hB`yiO4N4baoK*R z?kSZ16|-kbgB36aA>C{`knsbc^_f#X-5frKl$>{y4w-D?Jixvh-OS% zvMFDME}-oSDk-y$p3fMz8FOS#!$tr;&(zAvm6uO?$*kWCGt+j7-KJCRxE7rf^qy%o z>L*`!4GxW{x?_wBC^&zom8)f7`K2?$yXN^SC$HKghp**Uo`I>M5K{xkS=>i=Fjzru z9Z4Rfn=gm7{e98G3+uJ5Z_&c7DRHA;VmdVSBPuroqXL7pbZ%t95voXircURW&xfH6 zahW9_Sj!70b*H^2RnM1F?OJ!Jp+~EAN37O2#%nE2A*%&PO!dc4dZ{i}e>sH2)E^^p zqWG04Qz>fVo1R@UoHT7W)8u%w;th4Q&8EL;SNN_1*Xr?d8c1&CX+)Av&lbSj zmo?eaA)B{QpZ$S}MrXBPm(JR`bk{l4pQb071YE1HqWUtex@+nyFR^Yf2sh-0E7M)8 zFSITvYOK5RRIBvRY$Z!p7?eUz$)g$IIkh8mr;A;tW!1st;*5MfuhgNxXZNL_#9a*z zY4-KE%9n(67acB^gYCQY@3ii~Ou*%2pwF=mph>B&pW{5iHnRT^(>(JK#=q(vr1gxd zmN#71ROZD?#!7gtITo#I_1UiSOSyR_H)WQd>GtjQR6j3i{h2I)#*~R|w^;q=17v|{ zC>dZy@hCL3!Igp(_h-u8)x=xYtd*CF2xOf*N4Y2PQp){5{0KRy zQHuM!Nbftcs#%n9X38Cc^yMq+Kp;b1T6Ez{DCV=Rl2%X#pGiO;T-@XA zl!Ep#8122*f!U}abJU;jmD28xl~%r)oPL|q{utW?ogo>??saHFJyf_|>f!pB8Bp_s z7{ug+)YX&Zc+}PB$x)qRjC*NGot*2rE1*y`Y!-me7@HjE**Bj#_-mYNb-=-2muddG zCS2L&T0JFvIfYr3AH=w>FQN}F1GET1&<9gf9y=5wnrxm4S59_S-XN->Tc3Yd znVH7%r$+OcDBW0oF3d3UDx>+F4rSS_D31Okaq{5nu{oEN|7uC!o(-~UN zbjw8Y7elWxae8Ta98eF(naLZY)KU3W?9(M~<_{(hf7jG}rVWXMkb^`!>#SumZ@epY zn<{ntz_RQ1+zdkjsoN!{ZeIi0&D8A!T{pVdDq_ZPn@Wz;<4NYbfEp05-}&+S#glXR zE^`Hdl$|~*v;Gd!9<`T+eu84K2dnm+$u-Ybp2*ok;rg8Ll(h1T@*tFN@2dCBtTBo+ zr0VQ><4^JOk1=oP@g)V+YwB26X9EjWv!`;tbz?zzS9YB>CyO!sY~`1%>Db+K>ZIH& zW98B!DSAxhnU>Gy=ebJcotaI}FjLl;Rd16p7qLR4eT*@HS&usFQy&~^0t-{iBv3bMAi_1v@5cE)85 zjv0tLB&g=M1VVxAK*?+aR)`55m=*OOYV<$a$yRY7NP$(2{;i_1NBqyLrH8R?l|1hV zS7^ZwBToCJ>ToB{KY&a&VB+f{u4&$_rbW@BL&bqe(er8&FEb&TbpW~8{`AHvqELG+ z;1n^?#VOzi&CQ)UOsP7aQHeX+pFklwAH%_ehwj*X;EU3OMdT645?EbY(ZX_Yl7 z9@{20p?skqi>oHFF;kM9skr`?#V$cNP@kP@FI3CN1N4k-Ba!OlU|lTLi}6$gG!}(M zpfK$ufB3T~!>NBd_)~0lH~ozMLHWz*o~T!l=X?o2&$ypq0Ajk;$Tvh8#M3ZyU5o9N z;qcP!>6Ib=X^~rct6Mg=uHup2-9P_#F}2H7*3g5R%&A&=CMt*CdRzd^)ACI9zKYGL zo|;`!-+gLvo}O|%H3A?UzAGoyQ~jUjNuhZX@{sD0Q)Hs_)ZD|Ps=LGmM>Jz=dg93W z6}V*CN6z2E3xiKJPUETy{xy=hgxl|t50VB_X~f~|HtL;r@WM4rR&uyv6O>X04rH_%|z|tSHKsN;L_lJYyu9y zzF#&DbvWfhSC_hKpDj=BZPKP}HI?rqv4y_R2*16|aKVzgv&p>u%Z2i`{ulG*6N;Gn z=gp1t@0t!l!%wiVwo@AxHYO!R)cN=TExH5&xbC>d(LaTJ4lFSq;$sC2& zISSq2EL1W{1SLeHE*Rb3YpwBeZ3@lg$`mTkUFyfFx}^`0lk8bb!n1VkB;l92GC?bk z^4tWiZ0Cxg6*e&IrF03*Ig5Q`$*r*_OY-DjG%8oR^fWtiO=miRyQXxVQk`Z>7c-wp zmJ?5A%9fqvEj*3yBm#-db@kT#^CZw)^VYCKx}mZ|-YPdEu^n<#Kx}_C8kH;ExdR$&=Ghf#teMZ1sen$Y zCYcJ%++ye~35{=nBy?0@9tm^>Jii;ZSgwt4z*o79`vypky*v|SSAAfA-UvA$n(E0%=W` z6UJaL+{$Hb{^^N2JRsG^pO;pdbwz+J}R}?$0%`y0(}GDdP)b2QX+(&-hQBzceV5OVgk%xf$d1 z60uZgL~F#&rm?1pPw5v-{c>pw>iv(1gOIok4C8^wSNp;1Tksgr$MIxv9FKlNB8)*D z-yG=*PIN7HsXxn=mf2tbhE`76-egxKc>-p>(e@MY`osz(PFUy4$`|8FmDEP;KRa** zdmbJ_3!Ki<6s?r!;*#~6muiVceBKcYSE zW=Y}u)XL%graDJgv10~{>~Ou?2b#sfxP2aoh9g1QLnRS7j z5izg;U9{qmtNadff$V)q(0Xa$Q}{H~+0*57uqL7vQW`t*?B}vZ4z&n0CkKb+rvN9+rg8+>|4Z!NiA;%9rdxSg zR&mDYT~_u^-}ULC6C=}hMpo^Np@g@cNws~iggo4~DcB~)Ob9=o634Ix6bu9W=%2s6BlSkxnQ4M;}9K^!dyc?J+ zYr(;|VrWm8@*MH`#vTkt3qIlNs zk~>#Aag058zsS9|NBAHxXp7qT*~c6;;Kc=$MfonIc?zd`bPn*WeVi1D6LmO~w*E`3 z%c-4i0Xv@RqG3pafn4E;%ZsVq0Z^cg&zRW|O;_(B{MpzY!v?FU9qP5Ob7q-7$7=xc z@V;mC;wli_g4Z0uC1f%%5Zum>V6)sY?=1YDAXmz?H9-B8{8(j(8NpNY6KL+J;Yq>$ z?X2kKgskxyu@!wqS#BaKw=sU!s~WXHFDMM6cN}n4$M2eo46-Yt$kT)ZP|A!E-jEw}1_Y02oz#$Lhzh@9$ZhwLsqd{f#b`bhn&&k4qIrhh)QKH& zn!kOoDfdD$v>UO4uCt=Ty}~5y8x6ElWUD&fkb$1H5{u(#$iQIcDLopJA`MCK%&;C! z@TmI3eKg^}zBbGioHjOAJu2W;zndjNv${tP(ZYVKHpH{`U&+ieB+%(GS?jU25X7VPZVjcLh6j4(xDv)KFk z$K6iuU}XL_MLovdwo%A_Og%rjL332Eoi)A8{|*neu_y0g1Xc8dkGoZ^e1zqrQaM)S?3S&>DGEnZO>ow&NlD$=GdtMN0 z8(Zj(n5kZw37Qp|eaU3jTY#4tV^YA4 zZk5sdIrgp-u8+@u;g0JPlV7j75A|syKIYPL&PK4Oxw-0gygd>j$(!jcms<7@d)o6< zYc<9X;H>P67AE*AD$B3l^jE)lS1*ooUR$iaWt$EDgT44l*));+;OcFh%y(^GW<%ac z9JK45i!LfgDe$V2nmQfBuQ6G-95z|25$3sB*QG4kq zW#dx5ZCXOv0Z^{if2hI#GB>+~&O##bVo)z)Y1PA9fKEMY7m`;JReFucd8D9SH6@xd zZRhcG(*{bDQXk;^Xr)Rgx7TheH%XUlTA7qqhU*d(&<6i2QpHq$w#h8KX=5z?=A)*k zExdx>Br%RODLuJKGCMk(;274no8M(= zeWecu5`_pA)a%-8OWo28%wO5iK407Tdc1B!<+Vp+ud!EleNg(@VGVz1tJ4}Tl~dCm zv#sIb|2Ed}@qG7Hl4%gH2nCZO*KDhE;T(G)bUujR=Wh!NUFZ0TgXgcBzYqC4udvW{ z6Mx_3Zx4SL!R(9|y}xt-!PGE#;&h= z;YU5_d3^n^Bbo(PTl^+91N`&Ro)vx+F{Ue=eS8eCc2++XUd}_!0B6N3Z2JFSiSZQf zn3mwzB>e?9Z(NruGDQ$$@#(t z)XHc0h>idAZiwrHYdS=Sa*))aGT;p<-iQR3Wk4h=KV8-q){f9cvb8Tx0CL($9>^b$ z36>O)4Qx6H@P_~_u7{Id>a-Tor83(7lOM5{@Q94)2sU|D<2KV(vu((HgBvo9;`IBM z84y*28)8cx@d=1Ty;38A4v~E_6A_02dG`K!rbxZD0a~c&WPO9t}=#G4bx(s04r=1h6lgk~qcK2BIj&swdkMH`FayQ5?nD^84F~{tI`EOLShc{5Hqc6U)4SGlQEYGNEF>ZIiP} z2_(bSl%}yQu;CRcdcre3)ROkD&BXFVj&mTIFI)R_uk%K)`eW6{0?e>8r`DV6YXF#m zBdwR)%>})|vv#ZW_Fcd{JV#$)2kY>XuOO7Ppj4O6=4|5q>Sv$O%A#iGwC9cfajpk{ z+48|G&KAD~F7PSwgC{u2E1Hb>a8M0EF_#g1Oq~7m=++aiHr<*$N7~L8-B;Nin~MEJ zJ$ipq@5aZ=jq&jk?r``sIpxo$g4Y+LAIy|bXdVJqNyn=qD%{WmRhJW_8~m-Z;;_k& ze7c20RT1C}9*yWL00r0IjFGiT{YKb8pC%GpKs#0qy~NY~NEwMET#6oil$+t^Z9= z^}H0la-eh>(bB+`!LIHyPf)U=ou6Pi(e*vv+Wi`(n5IrKwF3bZirb4rD%7%Zw*DQX zy)aj;|8EWcmt_4yE#!vOLhzf)GJ@BUnp%{9(OR5uYVn(ynnrN3v>c*~mWx@XVEW9f z8}My2oh>(|%t|S9SnwuOrc0NJsUy~M&suS@aT+%~Yj2V}Jgj}I(>kQqZFHBdN=A;%sT0$)b1Zzz#vcG68-k^V|#SNww$Dpf3 zQcIa*rObiBI#cGBzw42cpzE;=Mz@&xn;a0*8JTJ z^jHTTtDq64pbAsarVZ3rFM;_^3?b=Gd*Mxq!m@)+i7s6t+h;vW>`!fZm_Y|Qhnf;u zry2-HtffI&Rrl6oR9WlC-FCS{Ou4n>q1B}?Q0|4M-0%4{Nt4Qz)p;M~zK4y)E>~8T zP}uu#lq;czwD(lI+yRdEikYL2a_>x(E5EC+pVA-q>?$+f>SSiJ8@zlUWweA&cTAGnh;E9YL z^;JgC(4Z{sk%VPDH@j4FgpFg)>A9X;Lb<=4uG{PI35zM8zu<{hn6AGERTPmWp-#AkY4%QJ;R0t7*Qei84iX zs^?p)PW!n?h{J^`eAqWmA^Dmu

qr!bq-mYgSYD9?``b$ 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°vY>TdmPr1mX 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≧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
w4Q_hj#Q^1g->he9HmAcH!)vZsT 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.N<8?59V`~l|T=vvxE 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�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 igu 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 z

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 F{{gEDpCteQ literal 0 HcmV?d00001 diff --git a/external/include/google/protobuf/any.h b/external/include/google/protobuf/any.h new file mode 100644 index 0000000..684fbf1 --- /dev/null +++ b/external/include/google/protobuf/any.h @@ -0,0 +1,153 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_ANY_H__ +#define GOOGLE_PROTOBUF_ANY_H__ + +#include + +#include +#include +#include + +#include + +namespace google { +namespace protobuf { + +class FieldDescriptor; +class Message; + +namespace internal { + +extern const char kAnyFullTypeName[]; // "google.protobuf.Any". +extern const char kTypeGoogleApisComPrefix[]; // "type.googleapis.com/". +extern const char kTypeGoogleProdComPrefix[]; // "type.googleprod.com/". + +std::string GetTypeUrl(StringPiece message_name, + StringPiece type_url_prefix); + +// Helper class used to implement google::protobuf::Any. +class PROTOBUF_EXPORT AnyMetadata { + typedef ArenaStringPtr UrlType; + typedef ArenaStringPtr ValueType; + public: + // AnyMetadata does not take ownership of "type_url" and "value". + constexpr AnyMetadata(UrlType* type_url, ValueType* value) + : type_url_(type_url), value_(value) {} + + // Packs a message using the default type URL prefix: "type.googleapis.com". + // The resulted type URL will be "type.googleapis.com/". + // Returns false if serializing the message failed. + template + bool PackFrom(const T& message) { + return InternalPackFrom(message, kTypeGoogleApisComPrefix, + T::FullMessageName()); + } + + bool PackFrom(const Message& message); + + // Packs a message using the given type URL prefix. The type URL will be + // constructed by concatenating the message type's full name to the prefix + // with an optional "/" separator if the prefix doesn't already end with "/". + // For example, both PackFrom(message, "type.googleapis.com") and + // PackFrom(message, "type.googleapis.com/") yield the same result type + // URL: "type.googleapis.com/". + // Returns false if serializing the message failed. + template + bool PackFrom(const T& message, StringPiece type_url_prefix) { + return InternalPackFrom(message, type_url_prefix, T::FullMessageName()); + } + + bool PackFrom(const Message& message, StringPiece type_url_prefix); + + // Unpacks the payload into the given message. Returns false if the message's + // type doesn't match the type specified in the type URL (i.e., the full + // name after the last "/" of the type URL doesn't match the message's actual + // full name) or parsing the payload has failed. + template + bool UnpackTo(T* message) const { + return InternalUnpackTo(T::FullMessageName(), message); + } + + bool UnpackTo(Message* message) const; + + // Checks whether the type specified in the type URL matches the given type. + // A type is considered matching if its full name matches the full name after + // the last "/" in the type URL. + template + bool Is() const { + return InternalIs(T::FullMessageName()); + } + + private: + bool InternalPackFrom(const MessageLite& message, + StringPiece type_url_prefix, + StringPiece type_name); + bool InternalUnpackTo(StringPiece type_name, + MessageLite* message) const; + bool InternalIs(StringPiece type_name) const; + + UrlType* type_url_; + ValueType* value_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(AnyMetadata); +}; + +// Get the proto type name from Any::type_url value. For example, passing +// "type.googleapis.com/rpc.QueryOrigin" will return "rpc.QueryOrigin" in +// *full_type_name. Returns false if the type_url does not have a "/" +// in the type url separating the full type name. +// +// NOTE: this function is available publicly as: +// google::protobuf::Any() // static method on the generated message type. +bool ParseAnyTypeUrl(StringPiece type_url, std::string* full_type_name); + +// Get the proto type name and prefix from Any::type_url value. For example, +// passing "type.googleapis.com/rpc.QueryOrigin" will return +// "type.googleapis.com/" in *url_prefix and "rpc.QueryOrigin" in +// *full_type_name. Returns false if the type_url does not have a "/" in the +// type url separating the full type name. +bool ParseAnyTypeUrl(StringPiece type_url, std::string* url_prefix, + std::string* full_type_name); + +// See if message is of type google.protobuf.Any, if so, return the descriptors +// for "type_url" and "value" fields. +bool GetAnyFieldDescriptors(const Message& message, + const FieldDescriptor** type_url_field, + const FieldDescriptor** value_field); + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_ANY_H__ diff --git a/external/include/google/protobuf/any.pb.h b/external/include/google/protobuf/any.pb.h new file mode 100644 index 0000000..494b251 --- /dev/null +++ b/external/include/google/protobuf/any.pb.h @@ -0,0 +1,374 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/any.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fany_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fany_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fany_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fany_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fany_2eproto; +PROTOBUF_NAMESPACE_OPEN +class Any; +struct AnyDefaultTypeInternal; +PROTOBUF_EXPORT extern AnyDefaultTypeInternal _Any_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Any* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +// =================================================================== + +class PROTOBUF_EXPORT Any final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Any) */ { + public: + inline Any() : Any(nullptr) {} + ~Any() override; + explicit constexpr Any(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Any(const Any& from); + Any(Any&& from) noexcept + : Any() { + *this = ::std::move(from); + } + + inline Any& operator=(const Any& from) { + CopyFrom(from); + return *this; + } + inline Any& operator=(Any&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Any& default_instance() { + return *internal_default_instance(); + } + static inline const Any* internal_default_instance() { + return reinterpret_cast( + &_Any_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + // implements Any ----------------------------------------------- + + bool PackFrom(const ::PROTOBUF_NAMESPACE_ID::Message& message) { + return _any_metadata_.PackFrom(message); + } + bool PackFrom(const ::PROTOBUF_NAMESPACE_ID::Message& message, + ::PROTOBUF_NAMESPACE_ID::ConstStringParam type_url_prefix) { + return _any_metadata_.PackFrom(message, type_url_prefix); + } + bool UnpackTo(::PROTOBUF_NAMESPACE_ID::Message* message) const { + return _any_metadata_.UnpackTo(message); + } + static bool GetAnyFieldDescriptors( + const ::PROTOBUF_NAMESPACE_ID::Message& message, + const ::PROTOBUF_NAMESPACE_ID::FieldDescriptor** type_url_field, + const ::PROTOBUF_NAMESPACE_ID::FieldDescriptor** value_field); + template ::value>::type> + bool PackFrom(const T& message) { + return _any_metadata_.PackFrom(message); + } + template ::value>::type> + bool PackFrom(const T& message, + ::PROTOBUF_NAMESPACE_ID::ConstStringParam type_url_prefix) { + return _any_metadata_.PackFrom(message, type_url_prefix);} + template ::value>::type> + bool UnpackTo(T* message) const { + return _any_metadata_.UnpackTo(message); + } + template bool Is() const { + return _any_metadata_.Is(); + } + static bool ParseAnyTypeUrl(::PROTOBUF_NAMESPACE_ID::ConstStringParam type_url, + std::string* full_type_name); + friend void swap(Any& a, Any& b) { + a.Swap(&b); + } + inline void Swap(Any* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Any* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Any* New() const final { + return new Any(); + } + + Any* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Any& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Any& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Any* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Any"; + } + protected: + explicit Any(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kTypeUrlFieldNumber = 1, + kValueFieldNumber = 2, + }; + // string type_url = 1; + void clear_type_url(); + const std::string& type_url() const; + template + void set_type_url(ArgT0&& arg0, ArgT... args); + std::string* mutable_type_url(); + PROTOBUF_MUST_USE_RESULT std::string* release_type_url(); + void set_allocated_type_url(std::string* type_url); + private: + const std::string& _internal_type_url() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_type_url(const std::string& value); + std::string* _internal_mutable_type_url(); + public: + + // bytes value = 2; + void clear_value(); + const std::string& value() const; + template + void set_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_value(); + PROTOBUF_MUST_USE_RESULT std::string* release_value(); + void set_allocated_value(std::string* value); + private: + const std::string& _internal_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_value(const std::string& value); + std::string* _internal_mutable_value(); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Any) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr type_url_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata _any_metadata_; + friend struct ::TableStruct_google_2fprotobuf_2fany_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// Any + +// string type_url = 1; +inline void Any::clear_type_url() { + type_url_.ClearToEmpty(); +} +inline const std::string& Any::type_url() const { + // @@protoc_insertion_point(field_get:google.protobuf.Any.type_url) + return _internal_type_url(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Any::set_type_url(ArgT0&& arg0, ArgT... args) { + + type_url_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Any.type_url) +} +inline std::string* Any::mutable_type_url() { + std::string* _s = _internal_mutable_type_url(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Any.type_url) + return _s; +} +inline const std::string& Any::_internal_type_url() const { + return type_url_.Get(); +} +inline void Any::_internal_set_type_url(const std::string& value) { + + type_url_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Any::_internal_mutable_type_url() { + + return type_url_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Any::release_type_url() { + // @@protoc_insertion_point(field_release:google.protobuf.Any.type_url) + return type_url_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Any::set_allocated_type_url(std::string* type_url) { + if (type_url != nullptr) { + + } else { + + } + type_url_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), type_url, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Any.type_url) +} + +// bytes value = 2; +inline void Any::clear_value() { + value_.ClearToEmpty(); +} +inline const std::string& Any::value() const { + // @@protoc_insertion_point(field_get:google.protobuf.Any.value) + return _internal_value(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Any::set_value(ArgT0&& arg0, ArgT... args) { + + value_.SetBytes(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Any.value) +} +inline std::string* Any::mutable_value() { + std::string* _s = _internal_mutable_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Any.value) + return _s; +} +inline const std::string& Any::_internal_value() const { + return value_.Get(); +} +inline void Any::_internal_set_value(const std::string& value) { + + value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Any::_internal_mutable_value() { + + return value_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Any::release_value() { + // @@protoc_insertion_point(field_release:google.protobuf.Any.value) + return value_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Any::set_allocated_value(std::string* value) { + if (value != nullptr) { + + } else { + + } + value_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Any.value) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fany_2eproto diff --git a/external/include/google/protobuf/any.proto b/external/include/google/protobuf/any.proto new file mode 100644 index 0000000..6ed8a23 --- /dev/null +++ b/external/include/google/protobuf/any.proto @@ -0,0 +1,158 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option go_package = "google.golang.org/protobuf/types/known/anypb"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "AnyProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; + +// `Any` contains an arbitrary serialized protocol buffer message along with a +// URL that describes the type of the serialized message. +// +// Protobuf library provides support to pack/unpack Any values in the form +// of utility functions or additional generated methods of the Any type. +// +// Example 1: Pack and unpack a message in C++. +// +// Foo foo = ...; +// Any any; +// any.PackFrom(foo); +// ... +// if (any.UnpackTo(&foo)) { +// ... +// } +// +// Example 2: Pack and unpack a message in Java. +// +// Foo foo = ...; +// Any any = Any.pack(foo); +// ... +// if (any.is(Foo.class)) { +// foo = any.unpack(Foo.class); +// } +// +// Example 3: Pack and unpack a message in Python. +// +// foo = Foo(...) +// any = Any() +// any.Pack(foo) +// ... +// if any.Is(Foo.DESCRIPTOR): +// any.Unpack(foo) +// ... +// +// Example 4: Pack and unpack a message in Go +// +// foo := &pb.Foo{...} +// any, err := anypb.New(foo) +// if err != nil { +// ... +// } +// ... +// foo := &pb.Foo{} +// if err := any.UnmarshalTo(foo); err != nil { +// ... +// } +// +// The pack methods provided by protobuf library will by default use +// 'type.googleapis.com/full.type.name' as the type URL and the unpack +// methods only use the fully qualified type name after the last '/' +// in the type URL, for example "foo.bar.com/x/y.z" will yield type +// name "y.z". +// +// +// JSON +// ==== +// The JSON representation of an `Any` value uses the regular +// representation of the deserialized, embedded message, with an +// additional field `@type` which contains the type URL. Example: +// +// package google.profile; +// message Person { +// string first_name = 1; +// string last_name = 2; +// } +// +// { +// "@type": "type.googleapis.com/google.profile.Person", +// "firstName": , +// "lastName": +// } +// +// If the embedded message type is well-known and has a custom JSON +// representation, that representation will be embedded adding a field +// `value` which holds the custom JSON in addition to the `@type` +// field. Example (for message [google.protobuf.Duration][]): +// +// { +// "@type": "type.googleapis.com/google.protobuf.Duration", +// "value": "1.212s" +// } +// +message Any { + // A URL/resource name that uniquely identifies the type of the serialized + // protocol buffer message. This string must contain at least + // one "/" character. The last segment of the URL's path must represent + // the fully qualified name of the type (as in + // `path/google.protobuf.Duration`). The name should be in a canonical form + // (e.g., leading "." is not accepted). + // + // In practice, teams usually precompile into the binary all types that they + // expect it to use in the context of Any. However, for URLs which use the + // scheme `http`, `https`, or no scheme, one can optionally set up a type + // server that maps type URLs to message definitions as follows: + // + // * If no scheme is provided, `https` is assumed. + // * An HTTP GET on the URL must yield a [google.protobuf.Type][] + // value in binary format, or produce an error. + // * Applications are allowed to cache lookup results based on the + // URL, or have them precompiled into a binary to avoid any + // lookup. Therefore, binary compatibility needs to be preserved + // on changes to types. (Use versioned type names to manage + // breaking changes.) + // + // Note: this functionality is not currently available in the official + // protobuf release, and it is not used for type URLs beginning with + // type.googleapis.com. + // + // Schemes other than `http`, `https` (or the empty scheme) might be + // used with implementation specific semantics. + // + string type_url = 1; + + // Must be a valid serialized protocol buffer of the above specified type. + bytes value = 2; +} diff --git a/external/include/google/protobuf/api.pb.h b/external/include/google/protobuf/api.pb.h new file mode 100644 index 0000000..67e9d84 --- /dev/null +++ b/external/include/google/protobuf/api.pb.h @@ -0,0 +1,1392 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/api.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fapi_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fapi_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fapi_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fapi_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[3] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fapi_2eproto; +PROTOBUF_NAMESPACE_OPEN +class Api; +struct ApiDefaultTypeInternal; +PROTOBUF_EXPORT extern ApiDefaultTypeInternal _Api_default_instance_; +class Method; +struct MethodDefaultTypeInternal; +PROTOBUF_EXPORT extern MethodDefaultTypeInternal _Method_default_instance_; +class Mixin; +struct MixinDefaultTypeInternal; +PROTOBUF_EXPORT extern MixinDefaultTypeInternal _Mixin_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Api* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Method* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Mixin* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +// =================================================================== + +class PROTOBUF_EXPORT Api final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Api) */ { + public: + inline Api() : Api(nullptr) {} + ~Api() override; + explicit constexpr Api(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Api(const Api& from); + Api(Api&& from) noexcept + : Api() { + *this = ::std::move(from); + } + + inline Api& operator=(const Api& from) { + CopyFrom(from); + return *this; + } + inline Api& operator=(Api&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Api& default_instance() { + return *internal_default_instance(); + } + static inline const Api* internal_default_instance() { + return reinterpret_cast( + &_Api_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(Api& a, Api& b) { + a.Swap(&b); + } + inline void Swap(Api* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Api* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Api* New() const final { + return new Api(); + } + + Api* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Api& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Api& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Api* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Api"; + } + protected: + explicit Api(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kMethodsFieldNumber = 2, + kOptionsFieldNumber = 3, + kMixinsFieldNumber = 6, + kNameFieldNumber = 1, + kVersionFieldNumber = 4, + kSourceContextFieldNumber = 5, + kSyntaxFieldNumber = 7, + }; + // repeated .google.protobuf.Method methods = 2; + int methods_size() const; + private: + int _internal_methods_size() const; + public: + void clear_methods(); + PROTOBUF_NAMESPACE_ID::Method* mutable_methods(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Method >* + mutable_methods(); + private: + const PROTOBUF_NAMESPACE_ID::Method& _internal_methods(int index) const; + PROTOBUF_NAMESPACE_ID::Method* _internal_add_methods(); + public: + const PROTOBUF_NAMESPACE_ID::Method& methods(int index) const; + PROTOBUF_NAMESPACE_ID::Method* add_methods(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Method >& + methods() const; + + // repeated .google.protobuf.Option options = 3; + int options_size() const; + private: + int _internal_options_size() const; + public: + void clear_options(); + PROTOBUF_NAMESPACE_ID::Option* mutable_options(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* + mutable_options(); + private: + const PROTOBUF_NAMESPACE_ID::Option& _internal_options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* _internal_add_options(); + public: + const PROTOBUF_NAMESPACE_ID::Option& options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* add_options(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& + options() const; + + // repeated .google.protobuf.Mixin mixins = 6; + int mixins_size() const; + private: + int _internal_mixins_size() const; + public: + void clear_mixins(); + PROTOBUF_NAMESPACE_ID::Mixin* mutable_mixins(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Mixin >* + mutable_mixins(); + private: + const PROTOBUF_NAMESPACE_ID::Mixin& _internal_mixins(int index) const; + PROTOBUF_NAMESPACE_ID::Mixin* _internal_add_mixins(); + public: + const PROTOBUF_NAMESPACE_ID::Mixin& mixins(int index) const; + PROTOBUF_NAMESPACE_ID::Mixin* add_mixins(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Mixin >& + mixins() const; + + // string name = 1; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // string version = 4; + void clear_version(); + const std::string& version() const; + template + void set_version(ArgT0&& arg0, ArgT... args); + std::string* mutable_version(); + PROTOBUF_MUST_USE_RESULT std::string* release_version(); + void set_allocated_version(std::string* version); + private: + const std::string& _internal_version() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_version(const std::string& value); + std::string* _internal_mutable_version(); + public: + + // .google.protobuf.SourceContext source_context = 5; + bool has_source_context() const; + private: + bool _internal_has_source_context() const; + public: + void clear_source_context(); + const PROTOBUF_NAMESPACE_ID::SourceContext& source_context() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::SourceContext* release_source_context(); + PROTOBUF_NAMESPACE_ID::SourceContext* mutable_source_context(); + void set_allocated_source_context(PROTOBUF_NAMESPACE_ID::SourceContext* source_context); + private: + const PROTOBUF_NAMESPACE_ID::SourceContext& _internal_source_context() const; + PROTOBUF_NAMESPACE_ID::SourceContext* _internal_mutable_source_context(); + public: + void unsafe_arena_set_allocated_source_context( + PROTOBUF_NAMESPACE_ID::SourceContext* source_context); + PROTOBUF_NAMESPACE_ID::SourceContext* unsafe_arena_release_source_context(); + + // .google.protobuf.Syntax syntax = 7; + void clear_syntax(); + PROTOBUF_NAMESPACE_ID::Syntax syntax() const; + void set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + private: + PROTOBUF_NAMESPACE_ID::Syntax _internal_syntax() const; + void _internal_set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Api) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Method > methods_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option > options_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Mixin > mixins_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr version_; + PROTOBUF_NAMESPACE_ID::SourceContext* source_context_; + int syntax_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT Method final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Method) */ { + public: + inline Method() : Method(nullptr) {} + ~Method() override; + explicit constexpr Method(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Method(const Method& from); + Method(Method&& from) noexcept + : Method() { + *this = ::std::move(from); + } + + inline Method& operator=(const Method& from) { + CopyFrom(from); + return *this; + } + inline Method& operator=(Method&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Method& default_instance() { + return *internal_default_instance(); + } + static inline const Method* internal_default_instance() { + return reinterpret_cast( + &_Method_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(Method& a, Method& b) { + a.Swap(&b); + } + inline void Swap(Method* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Method* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Method* New() const final { + return new Method(); + } + + Method* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Method& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Method& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Method* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Method"; + } + protected: + explicit Method(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kOptionsFieldNumber = 6, + kNameFieldNumber = 1, + kRequestTypeUrlFieldNumber = 2, + kResponseTypeUrlFieldNumber = 4, + kRequestStreamingFieldNumber = 3, + kResponseStreamingFieldNumber = 5, + kSyntaxFieldNumber = 7, + }; + // repeated .google.protobuf.Option options = 6; + int options_size() const; + private: + int _internal_options_size() const; + public: + void clear_options(); + PROTOBUF_NAMESPACE_ID::Option* mutable_options(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* + mutable_options(); + private: + const PROTOBUF_NAMESPACE_ID::Option& _internal_options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* _internal_add_options(); + public: + const PROTOBUF_NAMESPACE_ID::Option& options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* add_options(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& + options() const; + + // string name = 1; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // string request_type_url = 2; + void clear_request_type_url(); + const std::string& request_type_url() const; + template + void set_request_type_url(ArgT0&& arg0, ArgT... args); + std::string* mutable_request_type_url(); + PROTOBUF_MUST_USE_RESULT std::string* release_request_type_url(); + void set_allocated_request_type_url(std::string* request_type_url); + private: + const std::string& _internal_request_type_url() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_request_type_url(const std::string& value); + std::string* _internal_mutable_request_type_url(); + public: + + // string response_type_url = 4; + void clear_response_type_url(); + const std::string& response_type_url() const; + template + void set_response_type_url(ArgT0&& arg0, ArgT... args); + std::string* mutable_response_type_url(); + PROTOBUF_MUST_USE_RESULT std::string* release_response_type_url(); + void set_allocated_response_type_url(std::string* response_type_url); + private: + const std::string& _internal_response_type_url() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_response_type_url(const std::string& value); + std::string* _internal_mutable_response_type_url(); + public: + + // bool request_streaming = 3; + void clear_request_streaming(); + bool request_streaming() const; + void set_request_streaming(bool value); + private: + bool _internal_request_streaming() const; + void _internal_set_request_streaming(bool value); + public: + + // bool response_streaming = 5; + void clear_response_streaming(); + bool response_streaming() const; + void set_response_streaming(bool value); + private: + bool _internal_response_streaming() const; + void _internal_set_response_streaming(bool value); + public: + + // .google.protobuf.Syntax syntax = 7; + void clear_syntax(); + PROTOBUF_NAMESPACE_ID::Syntax syntax() const; + void set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + private: + PROTOBUF_NAMESPACE_ID::Syntax _internal_syntax() const; + void _internal_set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Method) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option > options_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr request_type_url_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr response_type_url_; + bool request_streaming_; + bool response_streaming_; + int syntax_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT Mixin final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Mixin) */ { + public: + inline Mixin() : Mixin(nullptr) {} + ~Mixin() override; + explicit constexpr Mixin(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Mixin(const Mixin& from); + Mixin(Mixin&& from) noexcept + : Mixin() { + *this = ::std::move(from); + } + + inline Mixin& operator=(const Mixin& from) { + CopyFrom(from); + return *this; + } + inline Mixin& operator=(Mixin&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Mixin& default_instance() { + return *internal_default_instance(); + } + static inline const Mixin* internal_default_instance() { + return reinterpret_cast( + &_Mixin_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + friend void swap(Mixin& a, Mixin& b) { + a.Swap(&b); + } + inline void Swap(Mixin* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Mixin* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Mixin* New() const final { + return new Mixin(); + } + + Mixin* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Mixin& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Mixin& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Mixin* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Mixin"; + } + protected: + explicit Mixin(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 1, + kRootFieldNumber = 2, + }; + // string name = 1; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // string root = 2; + void clear_root(); + const std::string& root() const; + template + void set_root(ArgT0&& arg0, ArgT... args); + std::string* mutable_root(); + PROTOBUF_MUST_USE_RESULT std::string* release_root(); + void set_allocated_root(std::string* root); + private: + const std::string& _internal_root() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_root(const std::string& value); + std::string* _internal_mutable_root(); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Mixin) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr root_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fapi_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// Api + +// string name = 1; +inline void Api::clear_name() { + name_.ClearToEmpty(); +} +inline const std::string& Api::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.Api.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Api::set_name(ArgT0&& arg0, ArgT... args) { + + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Api.name) +} +inline std::string* Api::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Api.name) + return _s; +} +inline const std::string& Api::_internal_name() const { + return name_.Get(); +} +inline void Api::_internal_set_name(const std::string& value) { + + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Api::_internal_mutable_name() { + + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Api::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.Api.name) + return name_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Api::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Api.name) +} + +// repeated .google.protobuf.Method methods = 2; +inline int Api::_internal_methods_size() const { + return methods_.size(); +} +inline int Api::methods_size() const { + return _internal_methods_size(); +} +inline void Api::clear_methods() { + methods_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::Method* Api::mutable_methods(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.Api.methods) + return methods_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Method >* +Api::mutable_methods() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.Api.methods) + return &methods_; +} +inline const PROTOBUF_NAMESPACE_ID::Method& Api::_internal_methods(int index) const { + return methods_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::Method& Api::methods(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.Api.methods) + return _internal_methods(index); +} +inline PROTOBUF_NAMESPACE_ID::Method* Api::_internal_add_methods() { + return methods_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::Method* Api::add_methods() { + PROTOBUF_NAMESPACE_ID::Method* _add = _internal_add_methods(); + // @@protoc_insertion_point(field_add:google.protobuf.Api.methods) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Method >& +Api::methods() const { + // @@protoc_insertion_point(field_list:google.protobuf.Api.methods) + return methods_; +} + +// repeated .google.protobuf.Option options = 3; +inline int Api::_internal_options_size() const { + return options_.size(); +} +inline int Api::options_size() const { + return _internal_options_size(); +} +inline PROTOBUF_NAMESPACE_ID::Option* Api::mutable_options(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.Api.options) + return options_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* +Api::mutable_options() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.Api.options) + return &options_; +} +inline const PROTOBUF_NAMESPACE_ID::Option& Api::_internal_options(int index) const { + return options_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::Option& Api::options(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.Api.options) + return _internal_options(index); +} +inline PROTOBUF_NAMESPACE_ID::Option* Api::_internal_add_options() { + return options_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::Option* Api::add_options() { + PROTOBUF_NAMESPACE_ID::Option* _add = _internal_add_options(); + // @@protoc_insertion_point(field_add:google.protobuf.Api.options) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& +Api::options() const { + // @@protoc_insertion_point(field_list:google.protobuf.Api.options) + return options_; +} + +// string version = 4; +inline void Api::clear_version() { + version_.ClearToEmpty(); +} +inline const std::string& Api::version() const { + // @@protoc_insertion_point(field_get:google.protobuf.Api.version) + return _internal_version(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Api::set_version(ArgT0&& arg0, ArgT... args) { + + version_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Api.version) +} +inline std::string* Api::mutable_version() { + std::string* _s = _internal_mutable_version(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Api.version) + return _s; +} +inline const std::string& Api::_internal_version() const { + return version_.Get(); +} +inline void Api::_internal_set_version(const std::string& value) { + + version_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Api::_internal_mutable_version() { + + return version_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Api::release_version() { + // @@protoc_insertion_point(field_release:google.protobuf.Api.version) + return version_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Api::set_allocated_version(std::string* version) { + if (version != nullptr) { + + } else { + + } + version_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), version, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Api.version) +} + +// .google.protobuf.SourceContext source_context = 5; +inline bool Api::_internal_has_source_context() const { + return this != internal_default_instance() && source_context_ != nullptr; +} +inline bool Api::has_source_context() const { + return _internal_has_source_context(); +} +inline const PROTOBUF_NAMESPACE_ID::SourceContext& Api::_internal_source_context() const { + const PROTOBUF_NAMESPACE_ID::SourceContext* p = source_context_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_SourceContext_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::SourceContext& Api::source_context() const { + // @@protoc_insertion_point(field_get:google.protobuf.Api.source_context) + return _internal_source_context(); +} +inline void Api::unsafe_arena_set_allocated_source_context( + PROTOBUF_NAMESPACE_ID::SourceContext* source_context) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(source_context_); + } + source_context_ = source_context; + if (source_context) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.Api.source_context) +} +inline PROTOBUF_NAMESPACE_ID::SourceContext* Api::release_source_context() { + + PROTOBUF_NAMESPACE_ID::SourceContext* temp = source_context_; + source_context_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::SourceContext* Api::unsafe_arena_release_source_context() { + // @@protoc_insertion_point(field_release:google.protobuf.Api.source_context) + + PROTOBUF_NAMESPACE_ID::SourceContext* temp = source_context_; + source_context_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::SourceContext* Api::_internal_mutable_source_context() { + + if (source_context_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + source_context_ = p; + } + return source_context_; +} +inline PROTOBUF_NAMESPACE_ID::SourceContext* Api::mutable_source_context() { + PROTOBUF_NAMESPACE_ID::SourceContext* _msg = _internal_mutable_source_context(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Api.source_context) + return _msg; +} +inline void Api::set_allocated_source_context(PROTOBUF_NAMESPACE_ID::SourceContext* source_context) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(source_context_); + } + if (source_context) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper< + ::PROTOBUF_NAMESPACE_ID::MessageLite>::GetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(source_context)); + if (message_arena != submessage_arena) { + source_context = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, source_context, submessage_arena); + } + + } else { + + } + source_context_ = source_context; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Api.source_context) +} + +// repeated .google.protobuf.Mixin mixins = 6; +inline int Api::_internal_mixins_size() const { + return mixins_.size(); +} +inline int Api::mixins_size() const { + return _internal_mixins_size(); +} +inline void Api::clear_mixins() { + mixins_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::Mixin* Api::mutable_mixins(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.Api.mixins) + return mixins_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Mixin >* +Api::mutable_mixins() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.Api.mixins) + return &mixins_; +} +inline const PROTOBUF_NAMESPACE_ID::Mixin& Api::_internal_mixins(int index) const { + return mixins_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::Mixin& Api::mixins(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.Api.mixins) + return _internal_mixins(index); +} +inline PROTOBUF_NAMESPACE_ID::Mixin* Api::_internal_add_mixins() { + return mixins_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::Mixin* Api::add_mixins() { + PROTOBUF_NAMESPACE_ID::Mixin* _add = _internal_add_mixins(); + // @@protoc_insertion_point(field_add:google.protobuf.Api.mixins) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Mixin >& +Api::mixins() const { + // @@protoc_insertion_point(field_list:google.protobuf.Api.mixins) + return mixins_; +} + +// .google.protobuf.Syntax syntax = 7; +inline void Api::clear_syntax() { + syntax_ = 0; +} +inline PROTOBUF_NAMESPACE_ID::Syntax Api::_internal_syntax() const { + return static_cast< PROTOBUF_NAMESPACE_ID::Syntax >(syntax_); +} +inline PROTOBUF_NAMESPACE_ID::Syntax Api::syntax() const { + // @@protoc_insertion_point(field_get:google.protobuf.Api.syntax) + return _internal_syntax(); +} +inline void Api::_internal_set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value) { + + syntax_ = value; +} +inline void Api::set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value) { + _internal_set_syntax(value); + // @@protoc_insertion_point(field_set:google.protobuf.Api.syntax) +} + +// ------------------------------------------------------------------- + +// Method + +// string name = 1; +inline void Method::clear_name() { + name_.ClearToEmpty(); +} +inline const std::string& Method::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.Method.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Method::set_name(ArgT0&& arg0, ArgT... args) { + + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Method.name) +} +inline std::string* Method::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Method.name) + return _s; +} +inline const std::string& Method::_internal_name() const { + return name_.Get(); +} +inline void Method::_internal_set_name(const std::string& value) { + + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Method::_internal_mutable_name() { + + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Method::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.Method.name) + return name_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Method::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Method.name) +} + +// string request_type_url = 2; +inline void Method::clear_request_type_url() { + request_type_url_.ClearToEmpty(); +} +inline const std::string& Method::request_type_url() const { + // @@protoc_insertion_point(field_get:google.protobuf.Method.request_type_url) + return _internal_request_type_url(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Method::set_request_type_url(ArgT0&& arg0, ArgT... args) { + + request_type_url_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Method.request_type_url) +} +inline std::string* Method::mutable_request_type_url() { + std::string* _s = _internal_mutable_request_type_url(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Method.request_type_url) + return _s; +} +inline const std::string& Method::_internal_request_type_url() const { + return request_type_url_.Get(); +} +inline void Method::_internal_set_request_type_url(const std::string& value) { + + request_type_url_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Method::_internal_mutable_request_type_url() { + + return request_type_url_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Method::release_request_type_url() { + // @@protoc_insertion_point(field_release:google.protobuf.Method.request_type_url) + return request_type_url_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Method::set_allocated_request_type_url(std::string* request_type_url) { + if (request_type_url != nullptr) { + + } else { + + } + request_type_url_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), request_type_url, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Method.request_type_url) +} + +// bool request_streaming = 3; +inline void Method::clear_request_streaming() { + request_streaming_ = false; +} +inline bool Method::_internal_request_streaming() const { + return request_streaming_; +} +inline bool Method::request_streaming() const { + // @@protoc_insertion_point(field_get:google.protobuf.Method.request_streaming) + return _internal_request_streaming(); +} +inline void Method::_internal_set_request_streaming(bool value) { + + request_streaming_ = value; +} +inline void Method::set_request_streaming(bool value) { + _internal_set_request_streaming(value); + // @@protoc_insertion_point(field_set:google.protobuf.Method.request_streaming) +} + +// string response_type_url = 4; +inline void Method::clear_response_type_url() { + response_type_url_.ClearToEmpty(); +} +inline const std::string& Method::response_type_url() const { + // @@protoc_insertion_point(field_get:google.protobuf.Method.response_type_url) + return _internal_response_type_url(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Method::set_response_type_url(ArgT0&& arg0, ArgT... args) { + + response_type_url_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Method.response_type_url) +} +inline std::string* Method::mutable_response_type_url() { + std::string* _s = _internal_mutable_response_type_url(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Method.response_type_url) + return _s; +} +inline const std::string& Method::_internal_response_type_url() const { + return response_type_url_.Get(); +} +inline void Method::_internal_set_response_type_url(const std::string& value) { + + response_type_url_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Method::_internal_mutable_response_type_url() { + + return response_type_url_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Method::release_response_type_url() { + // @@protoc_insertion_point(field_release:google.protobuf.Method.response_type_url) + return response_type_url_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Method::set_allocated_response_type_url(std::string* response_type_url) { + if (response_type_url != nullptr) { + + } else { + + } + response_type_url_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), response_type_url, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Method.response_type_url) +} + +// bool response_streaming = 5; +inline void Method::clear_response_streaming() { + response_streaming_ = false; +} +inline bool Method::_internal_response_streaming() const { + return response_streaming_; +} +inline bool Method::response_streaming() const { + // @@protoc_insertion_point(field_get:google.protobuf.Method.response_streaming) + return _internal_response_streaming(); +} +inline void Method::_internal_set_response_streaming(bool value) { + + response_streaming_ = value; +} +inline void Method::set_response_streaming(bool value) { + _internal_set_response_streaming(value); + // @@protoc_insertion_point(field_set:google.protobuf.Method.response_streaming) +} + +// repeated .google.protobuf.Option options = 6; +inline int Method::_internal_options_size() const { + return options_.size(); +} +inline int Method::options_size() const { + return _internal_options_size(); +} +inline PROTOBUF_NAMESPACE_ID::Option* Method::mutable_options(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.Method.options) + return options_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* +Method::mutable_options() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.Method.options) + return &options_; +} +inline const PROTOBUF_NAMESPACE_ID::Option& Method::_internal_options(int index) const { + return options_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::Option& Method::options(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.Method.options) + return _internal_options(index); +} +inline PROTOBUF_NAMESPACE_ID::Option* Method::_internal_add_options() { + return options_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::Option* Method::add_options() { + PROTOBUF_NAMESPACE_ID::Option* _add = _internal_add_options(); + // @@protoc_insertion_point(field_add:google.protobuf.Method.options) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& +Method::options() const { + // @@protoc_insertion_point(field_list:google.protobuf.Method.options) + return options_; +} + +// .google.protobuf.Syntax syntax = 7; +inline void Method::clear_syntax() { + syntax_ = 0; +} +inline PROTOBUF_NAMESPACE_ID::Syntax Method::_internal_syntax() const { + return static_cast< PROTOBUF_NAMESPACE_ID::Syntax >(syntax_); +} +inline PROTOBUF_NAMESPACE_ID::Syntax Method::syntax() const { + // @@protoc_insertion_point(field_get:google.protobuf.Method.syntax) + return _internal_syntax(); +} +inline void Method::_internal_set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value) { + + syntax_ = value; +} +inline void Method::set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value) { + _internal_set_syntax(value); + // @@protoc_insertion_point(field_set:google.protobuf.Method.syntax) +} + +// ------------------------------------------------------------------- + +// Mixin + +// string name = 1; +inline void Mixin::clear_name() { + name_.ClearToEmpty(); +} +inline const std::string& Mixin::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.Mixin.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Mixin::set_name(ArgT0&& arg0, ArgT... args) { + + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Mixin.name) +} +inline std::string* Mixin::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Mixin.name) + return _s; +} +inline const std::string& Mixin::_internal_name() const { + return name_.Get(); +} +inline void Mixin::_internal_set_name(const std::string& value) { + + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Mixin::_internal_mutable_name() { + + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Mixin::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.Mixin.name) + return name_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Mixin::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Mixin.name) +} + +// string root = 2; +inline void Mixin::clear_root() { + root_.ClearToEmpty(); +} +inline const std::string& Mixin::root() const { + // @@protoc_insertion_point(field_get:google.protobuf.Mixin.root) + return _internal_root(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Mixin::set_root(ArgT0&& arg0, ArgT... args) { + + root_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Mixin.root) +} +inline std::string* Mixin::mutable_root() { + std::string* _s = _internal_mutable_root(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Mixin.root) + return _s; +} +inline const std::string& Mixin::_internal_root() const { + return root_.Get(); +} +inline void Mixin::_internal_set_root(const std::string& value) { + + root_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Mixin::_internal_mutable_root() { + + return root_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Mixin::release_root() { + // @@protoc_insertion_point(field_release:google.protobuf.Mixin.root) + return root_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Mixin::set_allocated_root(std::string* root) { + if (root != nullptr) { + + } else { + + } + root_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), root, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Mixin.root) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fapi_2eproto diff --git a/external/include/google/protobuf/api.proto b/external/include/google/protobuf/api.proto new file mode 100644 index 0000000..3d598fc --- /dev/null +++ b/external/include/google/protobuf/api.proto @@ -0,0 +1,208 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +import "google/protobuf/source_context.proto"; +import "google/protobuf/type.proto"; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "ApiProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; +option go_package = "google.golang.org/protobuf/types/known/apipb"; + +// Api is a light-weight descriptor for an API Interface. +// +// Interfaces are also described as "protocol buffer services" in some contexts, +// such as by the "service" keyword in a .proto file, but they are different +// from API Services, which represent a concrete implementation of an interface +// as opposed to simply a description of methods and bindings. They are also +// sometimes simply referred to as "APIs" in other contexts, such as the name of +// this message itself. See https://cloud.google.com/apis/design/glossary for +// detailed terminology. +message Api { + // The fully qualified name of this interface, including package name + // followed by the interface's simple name. + string name = 1; + + // The methods of this interface, in unspecified order. + repeated Method methods = 2; + + // Any metadata attached to the interface. + repeated Option options = 3; + + // A version string for this interface. If specified, must have the form + // `major-version.minor-version`, as in `1.10`. If the minor version is + // omitted, it defaults to zero. If the entire version field is empty, the + // major version is derived from the package name, as outlined below. If the + // field is not empty, the version in the package name will be verified to be + // consistent with what is provided here. + // + // The versioning schema uses [semantic + // versioning](http://semver.org) where the major version number + // indicates a breaking change and the minor version an additive, + // non-breaking change. Both version numbers are signals to users + // what to expect from different versions, and should be carefully + // chosen based on the product plan. + // + // The major version is also reflected in the package name of the + // interface, which must end in `v`, as in + // `google.feature.v1`. For major versions 0 and 1, the suffix can + // be omitted. Zero major versions must only be used for + // experimental, non-GA interfaces. + // + // + string version = 4; + + // Source context for the protocol buffer service represented by this + // message. + SourceContext source_context = 5; + + // Included interfaces. See [Mixin][]. + repeated Mixin mixins = 6; + + // The source syntax of the service. + Syntax syntax = 7; +} + +// Method represents a method of an API interface. +message Method { + // The simple name of this method. + string name = 1; + + // A URL of the input message type. + string request_type_url = 2; + + // If true, the request is streamed. + bool request_streaming = 3; + + // The URL of the output message type. + string response_type_url = 4; + + // If true, the response is streamed. + bool response_streaming = 5; + + // Any metadata attached to the method. + repeated Option options = 6; + + // The source syntax of this method. + Syntax syntax = 7; +} + +// Declares an API Interface to be included in this interface. The including +// interface must redeclare all the methods from the included interface, but +// documentation and options are inherited as follows: +// +// - If after comment and whitespace stripping, the documentation +// string of the redeclared method is empty, it will be inherited +// from the original method. +// +// - Each annotation belonging to the service config (http, +// visibility) which is not set in the redeclared method will be +// inherited. +// +// - If an http annotation is inherited, the path pattern will be +// modified as follows. Any version prefix will be replaced by the +// version of the including interface plus the [root][] path if +// specified. +// +// Example of a simple mixin: +// +// package google.acl.v1; +// service AccessControl { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = "/v1/{resource=**}:getAcl"; +// } +// } +// +// package google.storage.v2; +// service Storage { +// rpc GetAcl(GetAclRequest) returns (Acl); +// +// // Get a data record. +// rpc GetData(GetDataRequest) returns (Data) { +// option (google.api.http).get = "/v2/{resource=**}"; +// } +// } +// +// Example of a mixin configuration: +// +// apis: +// - name: google.storage.v2.Storage +// mixins: +// - name: google.acl.v1.AccessControl +// +// The mixin construct implies that all methods in `AccessControl` are +// also declared with same name and request/response types in +// `Storage`. A documentation generator or annotation processor will +// see the effective `Storage.GetAcl` method after inheriting +// documentation and annotations as follows: +// +// service Storage { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = "/v2/{resource=**}:getAcl"; +// } +// ... +// } +// +// Note how the version in the path pattern changed from `v1` to `v2`. +// +// If the `root` field in the mixin is specified, it should be a +// relative path under which inherited HTTP paths are placed. Example: +// +// apis: +// - name: google.storage.v2.Storage +// mixins: +// - name: google.acl.v1.AccessControl +// root: acls +// +// This implies the following inherited HTTP annotation: +// +// service Storage { +// // Get the underlying ACL object. +// rpc GetAcl(GetAclRequest) returns (Acl) { +// option (google.api.http).get = "/v2/acls/{resource=**}:getAcl"; +// } +// ... +// } +message Mixin { + // The fully qualified name of the interface which is included. + string name = 1; + + // If non-empty specifies a path under which inherited HTTP paths + // are rooted. + string root = 2; +} diff --git a/external/include/google/protobuf/arena.h b/external/include/google/protobuf/arena.h new file mode 100644 index 0000000..232cbd4 --- /dev/null +++ b/external/include/google/protobuf/arena.h @@ -0,0 +1,806 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// This file defines an Arena allocator for better allocation performance. + +#ifndef GOOGLE_PROTOBUF_ARENA_H__ +#define GOOGLE_PROTOBUF_ARENA_H__ + + +#include +#include +#include +#ifdef max +#undef max // Visual Studio defines this macro +#endif +#if defined(_MSC_VER) && !defined(_LIBCPP_STD_VER) && !_HAS_EXCEPTIONS +// Work around bugs in MSVC header when _HAS_EXCEPTIONS=0. +#include +#include +namespace std { +using type_info = ::type_info; +} +#else +#include +#endif + +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +struct ArenaOptions; // defined below + +} // namespace protobuf +} // namespace google + +namespace google { +namespace protobuf { + +class Arena; // defined below +class Message; // defined in message.h +class MessageLite; +template +class Map; + +namespace arena_metrics { + +void EnableArenaMetrics(ArenaOptions* options); + +} // namespace arena_metrics + +namespace TestUtil { +class ReflectionTester; // defined in test_util.h +} // namespace TestUtil + +namespace internal { + +struct ArenaStringPtr; // defined in arenastring.h +class LazyField; // defined in lazy_field.h +class EpsCopyInputStream; // defined in parse_context.h + +template +class GenericTypeHandler; // defined in repeated_field.h + +inline PROTOBUF_ALWAYS_INLINE +void* AlignTo(void* ptr, size_t align) { + return reinterpret_cast( + (reinterpret_cast(ptr) + align - 1) & (~align + 1)); +} + +// Templated cleanup methods. +template +void arena_destruct_object(void* object) { + reinterpret_cast(object)->~T(); +} + +template +struct ObjectDestructor { + constexpr static void (*destructor)(void*) = &arena_destruct_object; +}; + +template +struct ObjectDestructor { + constexpr static void (*destructor)(void*) = nullptr; +}; + +template +void arena_delete_object(void* object) { + delete reinterpret_cast(object); +} +} // namespace internal + +// ArenaOptions provides optional additional parameters to arena construction +// that control its block-allocation behavior. +struct ArenaOptions { + // This defines the size of the first block requested from the system malloc. + // Subsequent block sizes will increase in a geometric series up to a maximum. + size_t start_block_size; + + // This defines the maximum block size requested from system malloc (unless an + // individual arena allocation request occurs with a size larger than this + // maximum). Requested block sizes increase up to this value, then remain + // here. + size_t max_block_size; + + // An initial block of memory for the arena to use, or NULL for none. If + // provided, the block must live at least as long as the arena itself. The + // creator of the Arena retains ownership of the block after the Arena is + // destroyed. + char* initial_block; + + // The size of the initial block, if provided. + size_t initial_block_size; + + // A function pointer to an alloc method that returns memory blocks of size + // requested. By default, it contains a ptr to the malloc function. + // + // NOTE: block_alloc and dealloc functions are expected to behave like + // malloc and free, including Asan poisoning. + void* (*block_alloc)(size_t); + // A function pointer to a dealloc method that takes ownership of the blocks + // from the arena. By default, it contains a ptr to a wrapper function that + // calls free. + void (*block_dealloc)(void*, size_t); + + ArenaOptions() + : start_block_size(internal::AllocationPolicy::kDefaultStartBlockSize), + max_block_size(internal::AllocationPolicy::kDefaultMaxBlockSize), + initial_block(NULL), + initial_block_size(0), + block_alloc(nullptr), + block_dealloc(nullptr), + make_metrics_collector(nullptr) {} + + private: + // If make_metrics_collector is not nullptr, it will be called at Arena init + // time. It may return a pointer to a collector instance that will be notified + // of interesting events related to the arena. + internal::ArenaMetricsCollector* (*make_metrics_collector)(); + + internal::ArenaMetricsCollector* MetricsCollector() const { + return make_metrics_collector ? (*make_metrics_collector)() : nullptr; + } + + internal::AllocationPolicy AllocationPolicy() const { + internal::AllocationPolicy res; + res.start_block_size = start_block_size; + res.max_block_size = max_block_size; + res.block_alloc = block_alloc; + res.block_dealloc = block_dealloc; + res.metrics_collector = MetricsCollector(); + return res; + } + + friend void arena_metrics::EnableArenaMetrics(ArenaOptions*); + + friend class Arena; + friend class ArenaOptionsTestFriend; +}; + +// Support for non-RTTI environments. (The metrics hooks API uses type +// information.) +#if PROTOBUF_RTTI +#define RTTI_TYPE_ID(type) (&typeid(type)) +#else +#define RTTI_TYPE_ID(type) (NULL) +#endif + +// Arena allocator. Arena allocation replaces ordinary (heap-based) allocation +// with new/delete, and improves performance by aggregating allocations into +// larger blocks and freeing allocations all at once. Protocol messages are +// allocated on an arena by using Arena::CreateMessage(Arena*), below, and +// are automatically freed when the arena is destroyed. +// +// This is a thread-safe implementation: multiple threads may allocate from the +// arena concurrently. Destruction is not thread-safe and the destructing +// thread must synchronize with users of the arena first. +// +// An arena provides two allocation interfaces: CreateMessage, which works +// for arena-enabled proto2 message types as well as other types that satisfy +// the appropriate protocol (described below), and Create, which works for +// any arbitrary type T. CreateMessage is better when the type T supports it, +// because this interface (i) passes the arena pointer to the created object so +// that its sub-objects and internal allocations can use the arena too, and (ii) +// elides the object's destructor call when possible. Create does not place +// any special requirements on the type T, and will invoke the object's +// destructor when the arena is destroyed. +// +// The arena message allocation protocol, required by +// CreateMessage(Arena* arena, Args&&... args), is as follows: +// +// - The type T must have (at least) two constructors: a constructor callable +// with `args` (without `arena`), called when a T is allocated on the heap; +// and a constructor callable with `Arena* arena, Args&&... args`, called when +// a T is allocated on an arena. If the second constructor is called with a +// NULL arena pointer, it must be equivalent to invoking the first +// (`args`-only) constructor. +// +// - The type T must have a particular type trait: a nested type +// |InternalArenaConstructable_|. This is usually a typedef to |void|. If no +// such type trait exists, then the instantiation CreateMessage will fail +// to compile. +// +// - The type T *may* have the type trait |DestructorSkippable_|. If this type +// trait is present in the type, then its destructor will not be called if and +// only if it was passed a non-NULL arena pointer. If this type trait is not +// present on the type, then its destructor is always called when the +// containing arena is destroyed. +// +// This protocol is implemented by all arena-enabled proto2 message classes as +// well as protobuf container types like RepeatedPtrField and Map. The protocol +// is internal to protobuf and is not guaranteed to be stable. Non-proto types +// should not rely on this protocol. +class PROTOBUF_EXPORT PROTOBUF_ALIGNAS(8) Arena final { + public: + // Default constructor with sensible default options, tuned for average + // use-cases. + inline Arena() : impl_() {} + + // Construct an arena with default options, except for the supplied + // initial block. It is more efficient to use this constructor + // instead of passing ArenaOptions if the only configuration needed + // by the caller is supplying an initial block. + inline Arena(char* initial_block, size_t initial_block_size) + : impl_(initial_block, initial_block_size) {} + + // Arena constructor taking custom options. See ArenaOptions above for + // descriptions of the options available. + explicit Arena(const ArenaOptions& options) + : impl_(options.initial_block, options.initial_block_size, + options.AllocationPolicy()) {} + + // Block overhead. Use this as a guide for how much to over-allocate the + // initial block if you want an allocation of size N to fit inside it. + // + // WARNING: if you allocate multiple objects, it is difficult to guarantee + // that a series of allocations will fit in the initial block, especially if + // Arena changes its alignment guarantees in the future! + static const size_t kBlockOverhead = + internal::ThreadSafeArena::kBlockHeaderSize + + internal::ThreadSafeArena::kSerialArenaSize; + + inline ~Arena() {} + + // TODO(protobuf-team): Fix callers to use constructor and delete this method. + void Init(const ArenaOptions&) {} + + // API to create proto2 message objects on the arena. If the arena passed in + // is NULL, then a heap allocated object is returned. Type T must be a message + // defined in a .proto file with cc_enable_arenas set to true, otherwise a + // compilation error will occur. + // + // RepeatedField and RepeatedPtrField may also be instantiated directly on an + // arena with this method. + // + // This function also accepts any type T that satisfies the arena message + // allocation protocol, documented above. + template + PROTOBUF_ALWAYS_INLINE static T* CreateMessage(Arena* arena, Args&&... args) { + static_assert( + InternalHelper::is_arena_constructable::value, + "CreateMessage can only construct types that are ArenaConstructable"); + // We must delegate to CreateMaybeMessage() and NOT CreateMessageInternal() + // because protobuf generated classes specialize CreateMaybeMessage() and we + // need to use that specialization for code size reasons. + return Arena::CreateMaybeMessage(arena, std::forward(args)...); + } + + // API to create any objects on the arena. Note that only the object will + // be created on the arena; the underlying ptrs (in case of a proto2 message) + // will be still heap allocated. Proto messages should usually be allocated + // with CreateMessage() instead. + // + // Note that even if T satisfies the arena message construction protocol + // (InternalArenaConstructable_ trait and optional DestructorSkippable_ + // trait), as described above, this function does not follow the protocol; + // instead, it treats T as a black-box type, just as if it did not have these + // traits. Specifically, T's constructor arguments will always be only those + // passed to Create() -- no additional arena pointer is implicitly added. + // Furthermore, the destructor will always be called at arena destruction time + // (unless the destructor is trivial). Hence, from T's point of view, it is as + // if the object were allocated on the heap (except that the underlying memory + // is obtained from the arena). + template + PROTOBUF_NDEBUG_INLINE static T* Create(Arena* arena, Args&&... args) { + return CreateInternal(arena, std::is_convertible(), + std::forward(args)...); + } + + // Create an array of object type T on the arena *without* invoking the + // constructor of T. If `arena` is null, then the return value should be freed + // with `delete[] x;` (or `::operator delete[](x);`). + // To ensure safe uses, this function checks at compile time + // (when compiled as C++11) that T is trivially default-constructible and + // trivially destructible. + template + PROTOBUF_NDEBUG_INLINE static T* CreateArray(Arena* arena, + size_t num_elements) { + static_assert(std::is_trivial::value, + "CreateArray requires a trivially constructible type"); + static_assert(std::is_trivially_destructible::value, + "CreateArray requires a trivially destructible type"); + GOOGLE_CHECK_LE(num_elements, std::numeric_limits::max() / sizeof(T)) + << "Requested size is too large to fit into size_t."; + if (arena == NULL) { + return static_cast(::operator new[](num_elements * sizeof(T))); + } else { + return arena->CreateInternalRawArray(num_elements); + } + } + + // The following are routines are for monitoring. They will approximate the + // total sum allocated and used memory, but the exact value is an + // implementation deal. For instance allocated space depends on growth + // policies. Do not use these in unit tests. + // Returns the total space allocated by the arena, which is the sum of the + // sizes of the underlying blocks. + uint64 SpaceAllocated() const { return impl_.SpaceAllocated(); } + // Returns the total space used by the arena. Similar to SpaceAllocated but + // does not include free space and block overhead. The total space returned + // may not include space used by other threads executing concurrently with + // the call to this method. + uint64 SpaceUsed() const { return impl_.SpaceUsed(); } + + // Frees all storage allocated by this arena after calling destructors + // registered with OwnDestructor() and freeing objects registered with Own(). + // Any objects allocated on this arena are unusable after this call. It also + // returns the total space used by the arena which is the sums of the sizes + // of the allocated blocks. This method is not thread-safe. + uint64 Reset() { return impl_.Reset(); } + + // Adds |object| to a list of heap-allocated objects to be freed with |delete| + // when the arena is destroyed or reset. + template + PROTOBUF_ALWAYS_INLINE void Own(T* object) { + OwnInternal(object, std::is_convertible()); + } + + // Adds |object| to a list of objects whose destructors will be manually + // called when the arena is destroyed or reset. This differs from Own() in + // that it does not free the underlying memory with |delete|; hence, it is + // normally only used for objects that are placement-newed into + // arena-allocated memory. + template + PROTOBUF_ALWAYS_INLINE void OwnDestructor(T* object) { + if (object != NULL) { + impl_.AddCleanup(object, &internal::arena_destruct_object); + } + } + + // Adds a custom member function on an object to the list of destructors that + // will be manually called when the arena is destroyed or reset. This differs + // from OwnDestructor() in that any member function may be specified, not only + // the class destructor. + PROTOBUF_ALWAYS_INLINE void OwnCustomDestructor(void* object, + void (*destruct)(void*)) { + impl_.AddCleanup(object, destruct); + } + + // Retrieves the arena associated with |value| if |value| is an arena-capable + // message, or NULL otherwise. If possible, the call resolves at compile time. + // Note that we can often devirtualize calls to `value->GetArena()` so usually + // calling this method is unnecessary. + template + PROTOBUF_ALWAYS_INLINE static Arena* GetArena(const T* value) { + return GetArenaInternal(value); + } + + template + class InternalHelper { + public: + // Provides access to protected GetOwningArena to generated messages. + static Arena* GetOwningArena(const T* p) { return p->GetOwningArena(); } + + // Provides access to protected GetArenaForAllocation to generated messages. + static Arena* GetArenaForAllocation(const T* p) { + return GetArenaForAllocationInternal( + p, std::is_convertible()); + } + + private: + static Arena* GetArenaForAllocationInternal( + const T* p, std::true_type /*is_derived_from*/) { + return p->GetArenaForAllocation(); + } + + static Arena* GetArenaForAllocationInternal( + const T* p, std::false_type /*is_derived_from*/) { + return GetArenaForAllocationForNonMessage( + p, typename is_arena_constructable::type()); + } + + static Arena* GetArenaForAllocationForNonMessage( + const T* p, std::true_type /*is_arena_constructible*/) { + return p->GetArena(); + } + + static Arena* GetArenaForAllocationForNonMessage( + const T* p, std::false_type /*is_arena_constructible*/) { + return GetArenaForAllocationForNonMessageNonArenaConstructible( + p, typename has_get_arena::type()); + } + + static Arena* GetArenaForAllocationForNonMessageNonArenaConstructible( + const T* p, std::true_type /*has_get_arena*/) { + return p->GetArena(); + } + + static Arena* GetArenaForAllocationForNonMessageNonArenaConstructible( + const T* p, std::false_type /*has_get_arena*/) { + return nullptr; + } + + template + static char DestructorSkippable(const typename U::DestructorSkippable_*); + template + static double DestructorSkippable(...); + + typedef std::integral_constant< + bool, sizeof(DestructorSkippable(static_cast(0))) == + sizeof(char) || + std::is_trivially_destructible::value> + is_destructor_skippable; + + template + static char ArenaConstructable( + const typename U::InternalArenaConstructable_*); + template + static double ArenaConstructable(...); + + typedef std::integral_constant( + static_cast(0))) == + sizeof(char)> + is_arena_constructable; + + template () + .GetArena())>::value, + int>::type = 0> + static char HasGetArena(decltype(&U::GetArena)); + template + static double HasGetArena(...); + + typedef std::integral_constant(nullptr)) == + sizeof(char)> + has_get_arena; + + template + static T* Construct(void* ptr, Args&&... args) { + return new (ptr) T(std::forward(args)...); + } + + static T* New() { + return new T(nullptr); + } + + static Arena* GetArena(const T* p) { return p->GetArena(); } + + friend class Arena; + friend class TestUtil::ReflectionTester; + }; + + // Helper typetraits that indicates support for arenas in a type T at compile + // time. This is public only to allow construction of higher-level templated + // utilities. + // + // is_arena_constructable::value is true if the message type T has arena + // support enabled, and false otherwise. + // + // is_destructor_skippable::value is true if the message type T has told + // the arena that it is safe to skip the destructor, and false otherwise. + // + // This is inside Arena because only Arena has the friend relationships + // necessary to see the underlying generated code traits. + template + struct is_arena_constructable : InternalHelper::is_arena_constructable {}; + template + struct is_destructor_skippable : InternalHelper::is_destructor_skippable { + }; + + private: + internal::ThreadSafeArena impl_; + + template + struct has_get_arena : InternalHelper::has_get_arena {}; + + template + PROTOBUF_NDEBUG_INLINE static T* CreateMessageInternal(Arena* arena, + Args&&... args) { + static_assert( + InternalHelper::is_arena_constructable::value, + "CreateMessage can only construct types that are ArenaConstructable"); + if (arena == NULL) { + return new T(nullptr, std::forward(args)...); + } else { + return arena->DoCreateMessage(std::forward(args)...); + } + } + + // This specialization for no arguments is necessary, because its behavior is + // slightly different. When the arena pointer is nullptr, it calls T() + // instead of T(nullptr). + template + PROTOBUF_NDEBUG_INLINE static T* CreateMessageInternal(Arena* arena) { + static_assert( + InternalHelper::is_arena_constructable::value, + "CreateMessage can only construct types that are ArenaConstructable"); + if (arena == NULL) { + // Generated arena constructor T(Arena*) is protected. Call via + // InternalHelper. + return InternalHelper::New(); + } else { + return arena->DoCreateMessage(); + } + } + + // Allocate and also optionally call collector with the allocated type info + // when allocation recording is enabled. + PROTOBUF_NDEBUG_INLINE void* AllocateInternal(size_t size, size_t align, + void (*destructor)(void*), + const std::type_info* type) { + // Monitor allocation if needed. + if (destructor == nullptr) { + return AllocateAlignedWithHook(size, align, type); + } else { + if (align <= 8) { + auto res = AllocateAlignedWithCleanup(internal::AlignUpTo8(size), type); + res.second->elem = res.first; + res.second->cleanup = destructor; + return res.first; + } else { + auto res = AllocateAlignedWithCleanup(size + align - 8, type); + auto ptr = internal::AlignTo(res.first, align); + res.second->elem = ptr; + res.second->cleanup = destructor; + return ptr; + } + } + } + + // CreateMessage requires that T supports arenas, but this private method + // works whether or not T supports arenas. These are not exposed to user code + // as it can cause confusing API usages, and end up having double free in + // user code. These are used only internally from LazyField and Repeated + // fields, since they are designed to work in all mode combinations. + template + PROTOBUF_ALWAYS_INLINE static Msg* DoCreateMaybeMessage(Arena* arena, + std::true_type, + Args&&... args) { + return CreateMessageInternal(arena, std::forward(args)...); + } + + template + PROTOBUF_ALWAYS_INLINE static T* DoCreateMaybeMessage(Arena* arena, + std::false_type, + Args&&... args) { + return Create(arena, std::forward(args)...); + } + + template + PROTOBUF_ALWAYS_INLINE static T* CreateMaybeMessage(Arena* arena, + Args&&... args) { + return DoCreateMaybeMessage(arena, is_arena_constructable(), + std::forward(args)...); + } + + // Just allocate the required size for the given type assuming the + // type has a trivial constructor. + template + PROTOBUF_NDEBUG_INLINE T* CreateInternalRawArray(size_t num_elements) { + GOOGLE_CHECK_LE(num_elements, std::numeric_limits::max() / sizeof(T)) + << "Requested size is too large to fit into size_t."; + // We count on compiler to realize that if sizeof(T) is a multiple of + // 8 AlignUpTo can be elided. + const size_t n = sizeof(T) * num_elements; + return static_cast( + AllocateAlignedWithHook(n, alignof(T), RTTI_TYPE_ID(T))); + } + + template + PROTOBUF_NDEBUG_INLINE T* DoCreateMessage(Args&&... args) { + return InternalHelper::Construct( + AllocateInternal(sizeof(T), alignof(T), + internal::ObjectDestructor< + InternalHelper::is_destructor_skippable::value, + T>::destructor, + RTTI_TYPE_ID(T)), + this, std::forward(args)...); + } + + // CreateInArenaStorage is used to implement map field. Without it, + // Map need to call generated message's protected arena constructor, + // which needs to declare Map as friend of generated message. + template + static void CreateInArenaStorage(T* ptr, Arena* arena, Args&&... args) { + CreateInArenaStorageInternal(ptr, arena, + typename is_arena_constructable::type(), + std::forward(args)...); + RegisterDestructorInternal( + ptr, arena, + typename InternalHelper::is_destructor_skippable::type()); + } + + template + static void CreateInArenaStorageInternal(T* ptr, Arena* arena, + std::true_type, Args&&... args) { + InternalHelper::Construct(ptr, arena, std::forward(args)...); + } + template + static void CreateInArenaStorageInternal(T* ptr, Arena* /* arena */, + std::false_type, Args&&... args) { + new (ptr) T(std::forward(args)...); + } + + template + static void RegisterDestructorInternal(T* /* ptr */, Arena* /* arena */, + std::true_type) {} + template + static void RegisterDestructorInternal(T* ptr, Arena* arena, + std::false_type) { + arena->OwnDestructor(ptr); + } + + // These implement Create(). The second parameter has type 'true_type' if T is + // a subtype of Message and 'false_type' otherwise. + template + PROTOBUF_ALWAYS_INLINE static T* CreateInternal(Arena* arena, std::true_type, + Args&&... args) { + if (arena == nullptr) { + return new T(std::forward(args)...); + } else { + auto destructor = + internal::ObjectDestructor::value, + T>::destructor; + T* result = + new (arena->AllocateInternal(sizeof(T), alignof(T), destructor, + RTTI_TYPE_ID(T))) + T(std::forward(args)...); + return result; + } + } + template + PROTOBUF_ALWAYS_INLINE static T* CreateInternal(Arena* arena, std::false_type, + Args&&... args) { + if (arena == nullptr) { + return new T(std::forward(args)...); + } else { + auto destructor = + internal::ObjectDestructor::value, + T>::destructor; + return new (arena->AllocateInternal(sizeof(T), alignof(T), destructor, + RTTI_TYPE_ID(T))) + T(std::forward(args)...); + } + } + + // These implement Own(), which registers an object for deletion (destructor + // call and operator delete()). The second parameter has type 'true_type' if T + // is a subtype of Message and 'false_type' otherwise. Collapsing + // all template instantiations to one for generic Message reduces code size, + // using the virtual destructor instead. + template + PROTOBUF_ALWAYS_INLINE void OwnInternal(T* object, std::true_type) { + if (object != NULL) { + impl_.AddCleanup(object, &internal::arena_delete_object); + } + } + template + PROTOBUF_ALWAYS_INLINE void OwnInternal(T* object, std::false_type) { + if (object != NULL) { + impl_.AddCleanup(object, &internal::arena_delete_object); + } + } + + // Implementation for GetArena(). Only message objects with + // InternalArenaConstructable_ tags can be associated with an arena, and such + // objects must implement a GetArena() method. + template ::value, int>::type = 0> + PROTOBUF_ALWAYS_INLINE static Arena* GetArenaInternal(const T* value) { + return InternalHelper::GetArena(value); + } + template ::value && + has_get_arena::value, + int>::type = 0> + PROTOBUF_ALWAYS_INLINE static Arena* GetArenaInternal(const T* value) { + return value->GetArena(); + } + template ::value && + !has_get_arena::value, + int>::type = 0> + PROTOBUF_ALWAYS_INLINE static Arena* GetArenaInternal(const T* value) { + (void)value; + return nullptr; + } + + template + PROTOBUF_ALWAYS_INLINE static Arena* GetOwningArena(const T* value) { + return GetOwningArenaInternal( + value, std::is_convertible()); + } + + // Implementation for GetOwningArena(). All and only message objects have + // GetOwningArena() method. + template + PROTOBUF_ALWAYS_INLINE static Arena* GetOwningArenaInternal( + const T* value, std::true_type) { + return InternalHelper::GetOwningArena(value); + } + template + PROTOBUF_ALWAYS_INLINE static Arena* GetOwningArenaInternal( + const T* /* value */, std::false_type) { + return nullptr; + } + + // For friends of arena. + void* AllocateAligned(size_t n, size_t align = 8) { + if (align <= 8) { + return AllocateAlignedNoHook(internal::AlignUpTo8(n)); + } else { + // We are wasting space by over allocating align - 8 bytes. Compared + // to a dedicated function that takes current alignment in consideration. + // Such a scheme would only waste (align - 8)/2 bytes on average, but + // requires a dedicated function in the outline arena allocation + // functions. Possibly re-evaluate tradeoffs later. + return internal::AlignTo(AllocateAlignedNoHook(n + align - 8), align); + } + } + + void* AllocateAlignedWithHook(size_t n, size_t align, + const std::type_info* type) { + if (align <= 8) { + return AllocateAlignedWithHook(internal::AlignUpTo8(n), type); + } else { + // We are wasting space by over allocating align - 8 bytes. Compared + // to a dedicated function that takes current alignment in consideration. + // Such a schemee would only waste (align - 8)/2 bytes on average, but + // requires a dedicated function in the outline arena allocation + // functions. Possibly re-evaluate tradeoffs later. + return internal::AlignTo(AllocateAlignedWithHook(n + align - 8, type), + align); + } + } + + void* AllocateAlignedNoHook(size_t n); + void* AllocateAlignedWithHook(size_t n, const std::type_info* type); + std::pair + AllocateAlignedWithCleanup(size_t n, const std::type_info* type); + + template + friend class internal::GenericTypeHandler; + friend struct internal::ArenaStringPtr; // For AllocateAligned. + friend class internal::LazyField; // For CreateMaybeMessage. + friend class internal::EpsCopyInputStream; // For parser performance + friend class MessageLite; + template + friend class Map; +}; + +// Defined above for supporting environments without RTTI. +#undef RTTI_TYPE_ID + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_ARENA_H__ diff --git a/external/include/google/protobuf/arena_impl.h b/external/include/google/protobuf/arena_impl.h new file mode 100644 index 0000000..40608df --- /dev/null +++ b/external/include/google/protobuf/arena_impl.h @@ -0,0 +1,485 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// This file defines an Arena allocator for better allocation performance. + +#ifndef GOOGLE_PROTOBUF_ARENA_IMPL_H__ +#define GOOGLE_PROTOBUF_ARENA_IMPL_H__ + +#include +#include +#include + +#include +#include + +#ifdef ADDRESS_SANITIZER +#include +#endif // ADDRESS_SANITIZER + +#include + + +namespace google { +namespace protobuf { +namespace internal { + +inline constexpr size_t AlignUpTo8(size_t n) { + // Align n to next multiple of 8 (from Hacker's Delight, Chapter 3.) + return (n + 7) & static_cast(-8); +} + +using LifecycleIdAtomic = uint64_t; + +// MetricsCollector collects stats for a particular arena. +class PROTOBUF_EXPORT ArenaMetricsCollector { + public: + ArenaMetricsCollector(bool record_allocs) : record_allocs_(record_allocs) {} + + // Invoked when the arena is about to be destroyed. This method will + // typically finalize any metric collection and delete the collector. + // space_allocated is the space used by the arena. + virtual void OnDestroy(uint64 space_allocated) = 0; + + // OnReset() is called when the associated arena is reset. + // space_allocated is the space used by the arena just before the reset. + virtual void OnReset(uint64 space_allocated) = 0; + + // OnAlloc is called when an allocation happens. + // type_info is promised to be static - its lifetime extends to + // match program's lifetime (It is given by typeid operator). + // Note: typeid(void) will be passed as allocated_type every time we + // intentionally want to avoid monitoring an allocation. (i.e. internal + // allocations for managing the arena) + virtual void OnAlloc(const std::type_info* allocated_type, + uint64 alloc_size) = 0; + + // Does OnAlloc() need to be called? If false, metric collection overhead + // will be reduced since we will not do extra work per allocation. + bool RecordAllocs() { return record_allocs_; } + + protected: + // This class is destructed by the call to OnDestroy(). + ~ArenaMetricsCollector() = default; + const bool record_allocs_; +}; + +struct AllocationPolicy { + static constexpr size_t kDefaultStartBlockSize = 256; + static constexpr size_t kDefaultMaxBlockSize = 8192; + + size_t start_block_size = kDefaultStartBlockSize; + size_t max_block_size = kDefaultMaxBlockSize; + void* (*block_alloc)(size_t) = nullptr; + void (*block_dealloc)(void*, size_t) = nullptr; + ArenaMetricsCollector* metrics_collector = nullptr; + + bool IsDefault() const { + return start_block_size == kDefaultMaxBlockSize && + max_block_size == kDefaultMaxBlockSize && block_alloc == nullptr && + block_dealloc == nullptr && metrics_collector == nullptr; + } +}; + +// A simple arena allocator. Calls to allocate functions must be properly +// serialized by the caller, hence this class cannot be used as a general +// purpose allocator in a multi-threaded program. It serves as a building block +// for ThreadSafeArena, which provides a thread-safe arena allocator. +// +// This class manages +// 1) Arena bump allocation + owning memory blocks. +// 2) Maintaining a cleanup list. +// It delagetes the actual memory allocation back to ThreadSafeArena, which +// contains the information on block growth policy and backing memory allocation +// used. +class PROTOBUF_EXPORT SerialArena { + public: + struct Memory { + void* ptr; + size_t size; + }; + + // Node contains the ptr of the object to be cleaned up and the associated + // cleanup function ptr. + struct CleanupNode { + void* elem; // Pointer to the object to be cleaned up. + void (*cleanup)(void*); // Function pointer to the destructor or deleter. + }; + + // Creates a new SerialArena inside mem using the remaining memory as for + // future allocations. + static SerialArena* New(SerialArena::Memory mem, void* owner); + // Free SerialArena returning the memory passed in to New + template + Memory Free(Deallocator deallocator); + + void CleanupList(); + uint64 SpaceAllocated() const { + return space_allocated_.load(std::memory_order_relaxed); + } + uint64 SpaceUsed() const; + + bool HasSpace(size_t n) { return n <= static_cast(limit_ - ptr_); } + + void* AllocateAligned(size_t n, const AllocationPolicy* policy) { + GOOGLE_DCHECK_EQ(internal::AlignUpTo8(n), n); // Must be already aligned. + GOOGLE_DCHECK_GE(limit_, ptr_); + if (PROTOBUF_PREDICT_FALSE(!HasSpace(n))) { + return AllocateAlignedFallback(n, policy); + } + void* ret = ptr_; + ptr_ += n; +#ifdef ADDRESS_SANITIZER + ASAN_UNPOISON_MEMORY_REGION(ret, n); +#endif // ADDRESS_SANITIZER + return ret; + } + + // Allocate space if the current region provides enough space. + bool MaybeAllocateAligned(size_t n, void** out) { + GOOGLE_DCHECK_EQ(internal::AlignUpTo8(n), n); // Must be already aligned. + GOOGLE_DCHECK_GE(limit_, ptr_); + if (PROTOBUF_PREDICT_FALSE(!HasSpace(n))) return false; + void* ret = ptr_; + ptr_ += n; +#ifdef ADDRESS_SANITIZER + ASAN_UNPOISON_MEMORY_REGION(ret, n); +#endif // ADDRESS_SANITIZER + *out = ret; + return true; + } + + std::pair AllocateAlignedWithCleanup( + size_t n, const AllocationPolicy* policy) { + if (PROTOBUF_PREDICT_FALSE(!HasSpace(n + kCleanupSize))) { + return AllocateAlignedWithCleanupFallback(n, policy); + } + void* ret = ptr_; + ptr_ += n; + limit_ -= kCleanupSize; +#ifdef ADDRESS_SANITIZER + ASAN_UNPOISON_MEMORY_REGION(ret, n); + ASAN_UNPOISON_MEMORY_REGION(limit_, kCleanupSize); +#endif // ADDRESS_SANITIZER + return CreatePair(ret, reinterpret_cast(limit_)); + } + + void AddCleanup(void* elem, void (*cleanup)(void*), + const AllocationPolicy* policy) { + auto res = AllocateAlignedWithCleanup(0, policy); + res.second->elem = elem; + res.second->cleanup = cleanup; + } + + void* owner() const { return owner_; } + SerialArena* next() const { return next_; } + void set_next(SerialArena* next) { next_ = next; } + + private: + // Blocks are variable length malloc-ed objects. The following structure + // describes the common header for all blocks. + struct Block { + char* Pointer(size_t n) { + GOOGLE_DCHECK(n <= size); + return reinterpret_cast(this) + n; + } + + Block* next; + size_t size; + CleanupNode* start; + // data follows + }; + + void* owner_; // &ThreadCache of this thread; + Block* head_; // Head of linked list of blocks. + SerialArena* next_; // Next SerialArena in this linked list. + size_t space_used_ = 0; // Necessary for metrics. + std::atomic space_allocated_; + + // Next pointer to allocate from. Always 8-byte aligned. Points inside + // head_ (and head_->pos will always be non-canonical). We keep these + // here to reduce indirection. + char* ptr_; + char* limit_; + + // Constructor is private as only New() should be used. + inline SerialArena(Block* b, void* owner); + void* AllocateAlignedFallback(size_t n, const AllocationPolicy* policy); + std::pair AllocateAlignedWithCleanupFallback( + size_t n, const AllocationPolicy* policy); + void AllocateNewBlock(size_t n, const AllocationPolicy* policy); + + std::pair CreatePair(void* ptr, CleanupNode* node) { + return {ptr, node}; + } + + public: + static constexpr size_t kBlockHeaderSize = AlignUpTo8(sizeof(Block)); + static constexpr size_t kCleanupSize = AlignUpTo8(sizeof(CleanupNode)); +}; + +// This class provides the core Arena memory allocation library. Different +// implementations only need to implement the public interface below. +// Arena is not a template type as that would only be useful if all protos +// in turn would be templates, which will/cannot happen. However separating +// the memory allocation part from the cruft of the API users expect we can +// use #ifdef the select the best implementation based on hardware / OS. +class PROTOBUF_EXPORT ThreadSafeArena { + public: + ThreadSafeArena() { Init(false); } + + ThreadSafeArena(char* mem, size_t size) { InitializeFrom(mem, size); } + + explicit ThreadSafeArena(void* mem, size_t size, + const AllocationPolicy& policy) { + if (policy.IsDefault()) { + // Legacy code doesn't use the API above, but provides the initial block + // through ArenaOptions. I suspect most do not touch the allocation + // policy parameters. + InitializeFrom(mem, size); + } else { + auto collector = policy.metrics_collector; + bool record_allocs = collector && collector->RecordAllocs(); + InitializeWithPolicy(mem, size, record_allocs, policy); + } + } + + // Destructor deletes all owned heap allocated objects, and destructs objects + // that have non-trivial destructors, except for proto2 message objects whose + // destructors can be skipped. Also, frees all blocks except the initial block + // if it was passed in. + ~ThreadSafeArena(); + + uint64 Reset(); + + uint64 SpaceAllocated() const; + uint64 SpaceUsed() const; + + void* AllocateAligned(size_t n, const std::type_info* type) { + SerialArena* arena; + if (PROTOBUF_PREDICT_TRUE(GetSerialArenaFast(tag_and_id_, &arena))) { + return arena->AllocateAligned(n, AllocPolicy()); + } else { + return AllocateAlignedFallback(n, type); + } + } + + // This function allocates n bytes if the common happy case is true and + // returns true. Otherwise does nothing and returns false. This strange + // semantics is necessary to allow callers to program functions that only + // have fallback function calls in tail position. This substantially improves + // code for the happy path. + PROTOBUF_NDEBUG_INLINE bool MaybeAllocateAligned(size_t n, void** out) { + SerialArena* a; + if (PROTOBUF_PREDICT_TRUE(GetSerialArenaFromThreadCache(tag_and_id_, &a))) { + return a->MaybeAllocateAligned(n, out); + } + return false; + } + + std::pair AllocateAlignedWithCleanup( + size_t n, const std::type_info* type); + + // Add object pointer and cleanup function pointer to the list. + void AddCleanup(void* elem, void (*cleanup)(void*)); + + private: + // Unique for each arena. Changes on Reset(). + uint64 tag_and_id_; + // The LSB of tag_and_id_ indicates if allocs in this arena are recorded. + enum { kRecordAllocs = 1 }; + + intptr_t alloc_policy_ = 0; // Tagged pointer to AllocPolicy. + // The LSB of alloc_policy_ indicates if the user owns the initial block. + enum { kUserOwnedInitialBlock = 1 }; + + // Pointer to a linked list of SerialArena. + std::atomic threads_; + std::atomic hint_; // Fast thread-local block access + + const AllocationPolicy* AllocPolicy() const { + return reinterpret_cast(alloc_policy_ & -8); + } + void InitializeFrom(void* mem, size_t size); + void InitializeWithPolicy(void* mem, size_t size, bool record_allocs, + AllocationPolicy policy); + void* AllocateAlignedFallback(size_t n, const std::type_info* type); + std::pair + AllocateAlignedWithCleanupFallback(size_t n, const std::type_info* type); + void AddCleanupFallback(void* elem, void (*cleanup)(void*)); + + void Init(bool record_allocs); + void SetInitialBlock(void* mem, size_t size); + + // Delete or Destruct all objects owned by the arena. + void CleanupList(); + + inline bool ShouldRecordAlloc() const { return tag_and_id_ & kRecordAllocs; } + + inline uint64 LifeCycleId() const { + return tag_and_id_ & (-kRecordAllocs - 1); + } + + inline void RecordAlloc(const std::type_info* allocated_type, + size_t n) const { + AllocPolicy()->metrics_collector->OnAlloc(allocated_type, n); + } + + inline void CacheSerialArena(SerialArena* serial) { + thread_cache().last_serial_arena = serial; + thread_cache().last_lifecycle_id_seen = LifeCycleId(); + // TODO(haberman): evaluate whether we would gain efficiency by getting rid + // of hint_. It's the only write we do to ThreadSafeArena in the allocation + // path, which will dirty the cache line. + + hint_.store(serial, std::memory_order_release); + } + + PROTOBUF_NDEBUG_INLINE bool GetSerialArenaFast(uint64 lifecycle_id, + SerialArena** arena) { + if (GetSerialArenaFromThreadCache(lifecycle_id, arena)) return true; + if (lifecycle_id & kRecordAllocs) return false; + + // Check whether we own the last accessed SerialArena on this arena. This + // fast path optimizes the case where a single thread uses multiple arenas. + ThreadCache* tc = &thread_cache(); + SerialArena* serial = hint_.load(std::memory_order_acquire); + if (PROTOBUF_PREDICT_TRUE(serial != NULL && serial->owner() == tc)) { + *arena = serial; + return true; + } + return false; + } + + PROTOBUF_NDEBUG_INLINE bool GetSerialArenaFromThreadCache( + uint64 lifecycle_id, SerialArena** arena) { + // If this thread already owns a block in this arena then try to use that. + // This fast path optimizes the case where multiple threads allocate from + // the same arena. + ThreadCache* tc = &thread_cache(); + if (PROTOBUF_PREDICT_TRUE(tc->last_lifecycle_id_seen == lifecycle_id)) { + *arena = tc->last_serial_arena; + return true; + } + return false; + } + SerialArena* GetSerialArenaFallback(void* me); + + template + void PerSerialArena(Functor fn) { + // By omitting an Acquire barrier we ensure that any user code that doesn't + // properly synchronize Reset() or the destructor will throw a TSAN warning. + SerialArena* serial = threads_.load(std::memory_order_relaxed); + + for (; serial; serial = serial->next()) fn(serial); + } + + // Releases all memory except the first block which it returns. The first + // block might be owned by the user and thus need some extra checks before + // deleting. + SerialArena::Memory Free(size_t* space_allocated); + +#ifdef _MSC_VER +#pragma warning(disable : 4324) +#endif + struct alignas(64) ThreadCache { +#if defined(GOOGLE_PROTOBUF_NO_THREADLOCAL) + // If we are using the ThreadLocalStorage class to store the ThreadCache, + // then the ThreadCache's default constructor has to be responsible for + // initializing it. + ThreadCache() + : next_lifecycle_id(0), + last_lifecycle_id_seen(-1), + last_serial_arena(NULL) {} +#endif + + // Number of per-thread lifecycle IDs to reserve. Must be power of two. + // To reduce contention on a global atomic, each thread reserves a batch of + // IDs. The following number is calculated based on a stress test with + // ~6500 threads all frequently allocating a new arena. + static constexpr size_t kPerThreadIds = 256; + // Next lifecycle ID available to this thread. We need to reserve a new + // batch, if `next_lifecycle_id & (kPerThreadIds - 1) == 0`. + uint64 next_lifecycle_id; + // The ThreadCache is considered valid as long as this matches the + // lifecycle_id of the arena being used. + uint64 last_lifecycle_id_seen; + SerialArena* last_serial_arena; + }; + + // Lifecycle_id can be highly contended variable in a situation of lots of + // arena creation. Make sure that other global variables are not sharing the + // cacheline. +#ifdef _MSC_VER +#pragma warning(disable : 4324) +#endif + struct alignas(64) CacheAlignedLifecycleIdGenerator { + std::atomic id; + }; + static CacheAlignedLifecycleIdGenerator lifecycle_id_generator_; +#if defined(GOOGLE_PROTOBUF_NO_THREADLOCAL) + // Android ndk does not support __thread keyword so we use a custom thread + // local storage class we implemented. + // iOS also does not support the __thread keyword. + static ThreadCache& thread_cache(); +#elif defined(PROTOBUF_USE_DLLS) + // Thread local variables cannot be exposed through DLL interface but we can + // wrap them in static functions. + static ThreadCache& thread_cache(); +#else + static PROTOBUF_THREAD_LOCAL ThreadCache thread_cache_; + static ThreadCache& thread_cache() { return thread_cache_; } +#endif + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ThreadSafeArena); + // All protos have pointers back to the arena hence Arena must have + // pointer stability. + ThreadSafeArena(ThreadSafeArena&&) = delete; + ThreadSafeArena& operator=(ThreadSafeArena&&) = delete; + + public: + // kBlockHeaderSize is sizeof(Block), aligned up to the nearest multiple of 8 + // to protect the invariant that pos is always at a multiple of 8. + static constexpr size_t kBlockHeaderSize = SerialArena::kBlockHeaderSize; + static constexpr size_t kSerialArenaSize = + (sizeof(SerialArena) + 7) & static_cast(-8); + static_assert(kBlockHeaderSize % 8 == 0, + "kBlockHeaderSize must be a multiple of 8."); + static_assert(kSerialArenaSize % 8 == 0, + "kSerialArenaSize must be a multiple of 8."); +}; + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_ARENA_IMPL_H__ diff --git a/external/include/google/protobuf/arenastring.h b/external/include/google/protobuf/arenastring.h new file mode 100644 index 0000000..1fafa69 --- /dev/null +++ b/external/include/google/protobuf/arenastring.h @@ -0,0 +1,415 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_ARENASTRING_H__ +#define GOOGLE_PROTOBUF_ARENASTRING_H__ + +#include +#include +#include + +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + + +namespace google { +namespace protobuf { +namespace internal { + +template +class ExplicitlyConstructed; + +class SwapFieldHelper; + +// Lazy string instance to support string fields with non-empty default. +// These are initialized on the first call to .get(). +class PROTOBUF_EXPORT LazyString { + public: + // We explicitly make LazyString an aggregate so that MSVC can do constant + // initialization on it without marking it `constexpr`. + // We do not want to use `constexpr` because it makes it harder to have extern + // storage for it and causes library bloat. + struct InitValue { + const char* ptr; + size_t size; + }; + // We keep a union of the initialization value and the std::string to save on + // space. We don't need the string array after Init() is done. + union { + mutable InitValue init_value_; + alignas(std::string) mutable char string_buf_[sizeof(std::string)]; + }; + mutable std::atomic inited_; + + const std::string& get() const { + // This check generates less code than a call-once invocation. + auto* res = inited_.load(std::memory_order_acquire); + if (PROTOBUF_PREDICT_FALSE(res == nullptr)) return Init(); + return *res; + } + + private: + // Initialize the string in `string_buf_`, update `inited_` and return it. + // We return it here to avoid having to read it again in the inlined code. + const std::string& Init() const; +}; + +template +class TaggedPtr { + public: + TaggedPtr() = default; + explicit constexpr TaggedPtr(const ExplicitlyConstructed* ptr) + : ptr_(const_cast*>(ptr)) {} + + void SetTagged(T* p) { + Set(p); + ptr_ = reinterpret_cast(as_int() | 1); + } + void Set(T* p) { ptr_ = p; } + T* Get() const { return reinterpret_cast(as_int() & -2); } + bool IsTagged() const { return as_int() & 1; } + + // Returned value is only safe to dereference if IsTagged() == false. + // It is safe to compare. + T* UnsafeGet() const { return static_cast(ptr_); } + + bool IsNull() { return ptr_ == nullptr; } + + private: + uintptr_t as_int() const { return reinterpret_cast(ptr_); } + void* ptr_; +}; + +static_assert(std::is_trivial>::value, + "TaggedPtr must be trivial"); + +// This class encapsulates a pointer to a std::string with or without a donated +// buffer, tagged by bottom bit. It is a high-level wrapper that almost directly +// corresponds to the interface required by string fields in generated +// code. It replaces the old std::string* pointer in such cases. +// +// The object has different but similar code paths for when the default value is +// the empty string and when it is a non-empty string. +// The empty string is handled different throughout the library and there is a +// single global instance of it we can share. +// +// For fields with an empty string default value, there are three distinct +// states: +// +// - Pointer set to 'String' tag (LSB is 0), equal to +// &GetEmptyStringAlreadyInited(): field is set to its default value. Points +// to a true std::string*, but we do not own that std::string* (it's a +// globally shared instance). +// +// - Pointer set to 'String' tag (LSB is 0), but not equal to the global empty +// string: field points to a true std::string* instance that we own. This +// instance is either on the heap or on the arena (i.e. registered on +// free()/destructor-call list) as appropriate. +// +// - Pointer set to 'DonatedString' tag (LSB is 1): points to a std::string +// instance with a buffer on the arena (arena != NULL, always, in this case). +// +// For fields with a non-empty string default value, there are three distinct +// states: +// +// - Pointer set to 'String' tag (LSB is 0), equal to `nullptr`: +// Field is in "default" mode and does not point to any actual instance. +// Methods that might need to create an instance of the object will pass a +// `const LazyString&` for it. +// +// - Pointer set to 'String' tag (LSB is 0), but not equal to `nullptr`: +// field points to a true std::string* instance that we own. This instance is +// either on the heap or on the arena (i.e. registered on +// free()/destructor-call list) as appropriate. +// +// - Pointer set to 'DonatedString' tag (LSB is 1): points to a std::string +// instance with a buffer on the arena (arena != NULL, always, in this case). +// +// Generated code and reflection code both ensure that ptr_ is never null for +// fields with an empty default. +// Because ArenaStringPtr is used in oneof unions, its constructor is a NOP and +// so the field is always manually initialized via method calls. +// +// Side-note: why pass information about the default on every API call? Because +// we don't want to hold it in a member variable, or else this would go into +// every proto message instance. This would be a huge waste of space, since the +// default instance pointer is typically a global (static class field). We want +// the generated code to be as efficient as possible, and if we take +// the default value information as a parameter that's in practice taken from a +// static class field, and compare ptr_ to the default value, we end up with a +// single "cmp %reg, GLOBAL" in the resulting machine code. (Note that this also +// requires the String tag to be 0 so we can avoid the mask before comparing.) +struct PROTOBUF_EXPORT ArenaStringPtr { + ArenaStringPtr() = default; + explicit constexpr ArenaStringPtr( + const ExplicitlyConstructed* default_value) + : tagged_ptr_(default_value) {} + + // Some methods below are overloaded on a `default_value` and on tags. + // The tagged overloads help reduce code size in the callers in generated + // code, while the `default_value` overloads are useful from reflection. + // By-value empty struct arguments are elided in the ABI. + struct EmptyDefault {}; + struct NonEmptyDefault {}; + + void Set(const std::string* default_value, ConstStringParam value, + ::google::protobuf::Arena* arena); + void Set(const std::string* default_value, std::string&& value, + ::google::protobuf::Arena* arena); + void Set(EmptyDefault, ConstStringParam value, ::google::protobuf::Arena* arena); + void Set(EmptyDefault, std::string&& value, ::google::protobuf::Arena* arena); + void Set(NonEmptyDefault, ConstStringParam value, ::google::protobuf::Arena* arena); + void Set(NonEmptyDefault, std::string&& value, ::google::protobuf::Arena* arena); + template + void Set(FirstParam p1, const char* str, ::google::protobuf::Arena* arena) { + Set(p1, ConstStringParam(str), arena); + } + template + void Set(FirstParam p1, const char* str, size_t size, + ::google::protobuf::Arena* arena) { + ConstStringParam sp{str, size}; // for string_view and `const string &` + Set(p1, sp, arena); + } + template + void Set(FirstParam p1, + std::reference_wrapper const_string_ref, + ::google::protobuf::Arena* arena) { + Set(p1, const_string_ref.get(), arena); + } + + template + void SetBytes(FirstParam p1, SecondParam&& p2, ::google::protobuf::Arena* arena) { + Set(p1, static_cast(p2), arena); + } + template + void SetBytes(FirstParam p1, const void* str, size_t size, + ::google::protobuf::Arena* arena) { + // must work whether ConstStringParam is string_view or `const string &` + ConstStringParam sp{static_cast(str), size}; + Set(p1, sp, arena); + } + + // Basic accessors. + PROTOBUF_NDEBUG_INLINE const std::string& Get() const { + // Unconditionally mask away the tag. + return *tagged_ptr_.Get(); + } + PROTOBUF_NDEBUG_INLINE const std::string* GetPointer() const { + // Unconditionally mask away the tag. + return tagged_ptr_.Get(); + } + + // For fields with an empty default value. + std::string* Mutable(EmptyDefault, ::google::protobuf::Arena* arena); + // For fields with a non-empty default value. + std::string* Mutable(const LazyString& default_value, ::google::protobuf::Arena* arena); + + // Release returns a std::string* instance that is heap-allocated and is not + // Own()'d by any arena. If the field is not set, this returns NULL. The + // caller retains ownership. Clears this field back to NULL state. Used to + // implement release_() methods on generated classes. + PROTOBUF_MUST_USE_RESULT std::string* Release( + const std::string* default_value, ::google::protobuf::Arena* arena); + PROTOBUF_MUST_USE_RESULT std::string* ReleaseNonDefault( + const std::string* default_value, ::google::protobuf::Arena* arena); + + // Takes a std::string that is heap-allocated, and takes ownership. The + // std::string's destructor is registered with the arena. Used to implement + // set_allocated_ in generated classes. + void SetAllocated(const std::string* default_value, std::string* value, + ::google::protobuf::Arena* arena); + + // Swaps internal pointers. Arena-safety semantics: this is guarded by the + // logic in Swap()/UnsafeArenaSwap() at the message level, so this method is + // 'unsafe' if called directly. + inline PROTOBUF_NDEBUG_INLINE static void InternalSwap( + const std::string* default_value, ArenaStringPtr* rhs, Arena* rhs_arena, + ArenaStringPtr* lhs, Arena* lhs_arena); + + // Frees storage (if not on an arena). + void Destroy(const std::string* default_value, ::google::protobuf::Arena* arena); + void Destroy(EmptyDefault, ::google::protobuf::Arena* arena); + void Destroy(NonEmptyDefault, ::google::protobuf::Arena* arena); + + // Clears content, but keeps allocated std::string, to avoid the overhead of + // heap operations. After this returns, the content (as seen by the user) will + // always be the empty std::string. Assumes that |default_value| is an empty + // std::string. + void ClearToEmpty(); + + // Clears content, assuming that the current value is not the empty + // string default. + void ClearNonDefaultToEmpty(); + + // Clears content, but keeps allocated std::string if arena != NULL, to avoid + // the overhead of heap operations. After this returns, the content (as seen + // by the user) will always be equal to |default_value|. + void ClearToDefault(const LazyString& default_value, ::google::protobuf::Arena* arena); + + // Called from generated code / reflection runtime only. Resets value to point + // to a default string pointer, with the semantics that this + // ArenaStringPtr does not own the pointed-to memory. Disregards initial value + // of ptr_ (so this is the *ONLY* safe method to call after construction or + // when reinitializing after becoming the active field in a oneof union). + inline void UnsafeSetDefault(const std::string* default_value); + + // Returns a mutable pointer, but doesn't initialize the string to the + // default value. + std::string* MutableNoArenaNoDefault(const std::string* default_value); + + // Get a mutable pointer with unspecified contents. + // Similar to `MutableNoArenaNoDefault`, but also handles the arena case. + // If the value was donated, the contents are discarded. + std::string* MutableNoCopy(const std::string* default_value, + ::google::protobuf::Arena* arena); + + // Destroy the string. Assumes `arena == nullptr`. + void DestroyNoArena(const std::string* default_value); + + // Internal setter used only at parse time to directly set a donated string + // value. + void UnsafeSetTaggedPointer(TaggedPtr value) { + tagged_ptr_ = value; + } + // Generated code only! An optimization, in certain cases the generated + // code is certain we can obtain a std::string with no default checks and + // tag tests. + std::string* UnsafeMutablePointer() PROTOBUF_RETURNS_NONNULL; + + inline bool IsDefault(const std::string* default_value) const { + // Relies on the fact that kPtrTagString == 0, so if IsString(), ptr_ is the + // actual std::string pointer (and if !IsString(), ptr_ will never be equal + // to any aligned |default_value| pointer). The key is that we want to avoid + // masking in the fastpath const-pointer Get() case for non-arena code. + return tagged_ptr_.UnsafeGet() == default_value; + } + + private: + TaggedPtr tagged_ptr_; + + bool IsDonatedString() const { return false; } + + // Swaps tagged pointer without debug hardening. This is to allow python + // protobuf to maintain pointer stability even in DEBUG builds. + inline PROTOBUF_NDEBUG_INLINE static void UnsafeShallowSwap( + ArenaStringPtr* rhs, ArenaStringPtr* lhs) { + std::swap(lhs->tagged_ptr_, rhs->tagged_ptr_); + } + + friend class ::google::protobuf::internal::SwapFieldHelper; + + // Slow paths. + + // MutableSlow requires that !IsString() || IsDefault + // Variadic to support 0 args for EmptyDefault and 1 arg for LazyString. + template + std::string* MutableSlow(::google::protobuf::Arena* arena, const Lazy&... lazy_default); + + // Sets value to a newly allocated string and returns it + std::string* SetAndReturnNewString(); + + // Destroys the non-default string value out-of-line + void DestroyNoArenaSlowPath(); + +}; + +inline void ArenaStringPtr::UnsafeSetDefault(const std::string* value) { + tagged_ptr_.Set(const_cast(value)); +} + +inline PROTOBUF_NDEBUG_INLINE void ArenaStringPtr::InternalSwap( // + const std::string* default_value, // + ArenaStringPtr* rhs, Arena* rhs_arena, // + ArenaStringPtr* lhs, Arena* lhs_arena) { + (void)default_value; + std::swap(lhs_arena, rhs_arena); + std::swap(lhs->tagged_ptr_, rhs->tagged_ptr_); +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + auto force_realloc = [default_value](ArenaStringPtr* p, Arena* arena) { + if (p->IsDefault(default_value)) return; + std::string* old_value = p->tagged_ptr_.Get(); + std::string* new_value = + p->IsDonatedString() + ? Arena::Create(arena, *old_value) + : Arena::Create(arena, std::move(*old_value)); + if (arena == nullptr) delete old_value; + p->tagged_ptr_.Set(new_value); + }; + force_realloc(lhs, lhs_arena); + force_realloc(rhs, rhs_arena); +#endif // PROTOBUF_FORCE_COPY_IN_SWAP +} + +inline void ArenaStringPtr::ClearNonDefaultToEmpty() { + // Unconditionally mask away the tag. + tagged_ptr_.Get()->clear(); +} + +inline std::string* ArenaStringPtr::MutableNoArenaNoDefault( + const std::string* default_value) { + // VERY IMPORTANT for performance and code size: this will reduce to a member + // variable load, a pointer check (against |default_value|, in practice a + // static global) and a branch to the slowpath (which calls operator new and + // the ctor). DO NOT add any tagged-pointer operations here. + if (IsDefault(default_value)) { + return SetAndReturnNewString(); + } else { + return UnsafeMutablePointer(); + } +} + +inline void ArenaStringPtr::DestroyNoArena(const std::string* default_value) { + if (!IsDefault(default_value)) { + DestroyNoArenaSlowPath(); + } +} + +inline std::string* ArenaStringPtr::UnsafeMutablePointer() { + GOOGLE_DCHECK(!tagged_ptr_.IsTagged()); + GOOGLE_DCHECK(tagged_ptr_.UnsafeGet() != nullptr); + return tagged_ptr_.UnsafeGet(); +} + + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_ARENASTRING_H__ diff --git a/external/include/google/protobuf/compiler/code_generator.h b/external/include/google/protobuf/compiler/code_generator.h new file mode 100644 index 0000000..c8d9e49 --- /dev/null +++ b/external/include/google/protobuf/compiler/code_generator.h @@ -0,0 +1,205 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Defines the abstract interface implemented by each of the language-specific +// code generators. + +#ifndef GOOGLE_PROTOBUF_COMPILER_CODE_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_CODE_GENERATOR_H__ + +#include +#include +#include +#include + +#include + +namespace google { +namespace protobuf { + +namespace io { +class ZeroCopyOutputStream; +} +class FileDescriptor; +class GeneratedCodeInfo; + +namespace compiler { +class AccessInfoMap; + +class Version; + +// Defined in this file. +class CodeGenerator; +class GeneratorContext; + +// The abstract interface to a class which generates code implementing a +// particular proto file in a particular language. A number of these may +// be registered with CommandLineInterface to support various languages. +class PROTOC_EXPORT CodeGenerator { + public: + inline CodeGenerator() {} + virtual ~CodeGenerator(); + + // Generates code for the given proto file, generating one or more files in + // the given output directory. + // + // A parameter to be passed to the generator can be specified on the command + // line. This is intended to be used to pass generator specific parameters. + // It is empty if no parameter was given. ParseGeneratorParameter (below), + // can be used to accept multiple parameters within the single parameter + // command line flag. + // + // Returns true if successful. Otherwise, sets *error to a description of + // the problem (e.g. "invalid parameter") and returns false. + virtual bool Generate(const FileDescriptor* file, + const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const = 0; + + // Generates code for all given proto files. + // + // WARNING: The canonical code generator design produces one or two output + // files per input .proto file, and we do not wish to encourage alternate + // designs. + // + // A parameter is given as passed on the command line, as in |Generate()| + // above. + // + // Returns true if successful. Otherwise, sets *error to a description of + // the problem (e.g. "invalid parameter") and returns false. + virtual bool GenerateAll(const std::vector& files, + const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const; + + // Sync with plugin.proto. + enum Feature { + FEATURE_PROTO3_OPTIONAL = 1, + }; + + // Implement this to indicate what features this code generator supports. + // This should be a bitwise OR of features from the Features enum in + // plugin.proto. + virtual uint64_t GetSupportedFeatures() const { return 0; } + + // This is no longer used, but this class is part of the opensource protobuf + // library, so it has to remain to keep vtables the same for the current + // version of the library. When protobufs does a api breaking change, the + // method can be removed. + virtual bool HasGenerateAll() const { return true; } + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CodeGenerator); +}; + +// CodeGenerators generate one or more files in a given directory. This +// abstract interface represents the directory to which the CodeGenerator is +// to write and other information about the context in which the Generator +// runs. +class PROTOC_EXPORT GeneratorContext { + public: + inline GeneratorContext() { + } + virtual ~GeneratorContext(); + + // Opens the given file, truncating it if it exists, and returns a + // ZeroCopyOutputStream that writes to the file. The caller takes ownership + // of the returned object. This method never fails (a dummy stream will be + // returned instead). + // + // The filename given should be relative to the root of the source tree. + // E.g. the C++ generator, when generating code for "foo/bar.proto", will + // generate the files "foo/bar.pb.h" and "foo/bar.pb.cc"; note that + // "foo/" is included in these filenames. The filename is not allowed to + // contain "." or ".." components. + virtual io::ZeroCopyOutputStream* Open(const std::string& filename) = 0; + + // Similar to Open() but the output will be appended to the file if exists + virtual io::ZeroCopyOutputStream* OpenForAppend(const std::string& filename); + + // Creates a ZeroCopyOutputStream which will insert code into the given file + // at the given insertion point. See plugin.proto (plugin.pb.h) for more + // information on insertion points. The default implementation + // assert-fails -- it exists only for backwards-compatibility. + // + // WARNING: This feature is currently EXPERIMENTAL and is subject to change. + virtual io::ZeroCopyOutputStream* OpenForInsert( + const std::string& filename, const std::string& insertion_point); + + // Similar to OpenForInsert, but if `info` is non-empty, will open (or create) + // filename.pb.meta and insert info at the appropriate place with the + // necessary shifts. The default implementation ignores `info`. + // + // WARNING: This feature will be REMOVED in the near future. + virtual io::ZeroCopyOutputStream* OpenForInsertWithGeneratedCodeInfo( + const std::string& filename, const std::string& insertion_point, + const google::protobuf::GeneratedCodeInfo& info); + + // Returns a vector of FileDescriptors for all the files being compiled + // in this run. Useful for languages, such as Go, that treat files + // differently when compiled as a set rather than individually. + virtual void ListParsedFiles(std::vector* output); + + // Retrieves the version number of the protocol compiler associated with + // this GeneratorContext. + virtual void GetCompilerVersion(Version* version) const; + + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(GeneratorContext); +}; + +// The type GeneratorContext was once called OutputDirectory. This typedef +// provides backward compatibility. +typedef GeneratorContext OutputDirectory; + +// Several code generators treat the parameter argument as holding a +// list of options separated by commas. This helper function parses +// a set of comma-delimited name/value pairs: e.g., +// "foo=bar,baz,qux=corge" +// parses to the pairs: +// ("foo", "bar"), ("baz", ""), ("qux", "corge") +PROTOC_EXPORT void ParseGeneratorParameter( + const std::string&, std::vector >*); + +// Strips ".proto" or ".protodevel" from the end of a filename. +PROTOC_EXPORT std::string StripProto(const std::string& filename); + +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_CODE_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/command_line_interface.h b/external/include/google/protobuf/compiler/command_line_interface.h new file mode 100644 index 0000000..27178b1 --- /dev/null +++ b/external/include/google/protobuf/compiler/command_line_interface.h @@ -0,0 +1,462 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Implements the Protocol Compiler front-end such that it may be reused by +// custom compilers written to support other languages. + +#ifndef GOOGLE_PROTOBUF_COMPILER_COMMAND_LINE_INTERFACE_H__ +#define GOOGLE_PROTOBUF_COMPILER_COMMAND_LINE_INTERFACE_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +namespace google { +namespace protobuf { + +class Descriptor; // descriptor.h +class DescriptorDatabase; // descriptor_database.h +class DescriptorPool; // descriptor.h +class FileDescriptor; // descriptor.h +class FileDescriptorSet; // descriptor.h +class FileDescriptorProto; // descriptor.pb.h +template +class RepeatedPtrField; // repeated_field.h +class SimpleDescriptorDatabase; // descriptor_database.h + +namespace compiler { + +class CodeGenerator; // code_generator.h +class GeneratorContext; // code_generator.h +class DiskSourceTree; // importer.h + +// This class implements the command-line interface to the protocol compiler. +// It is designed to make it very easy to create a custom protocol compiler +// supporting the languages of your choice. For example, if you wanted to +// create a custom protocol compiler binary which includes both the regular +// C++ support plus support for your own custom output "Foo", you would +// write a class "FooGenerator" which implements the CodeGenerator interface, +// then write a main() procedure like this: +// +// int main(int argc, char* argv[]) { +// google::protobuf::compiler::CommandLineInterface cli; +// +// // Support generation of C++ source and headers. +// google::protobuf::compiler::cpp::CppGenerator cpp_generator; +// cli.RegisterGenerator("--cpp_out", &cpp_generator, +// "Generate C++ source and header."); +// +// // Support generation of Foo code. +// FooGenerator foo_generator; +// cli.RegisterGenerator("--foo_out", &foo_generator, +// "Generate Foo file."); +// +// return cli.Run(argc, argv); +// } +// +// The compiler is invoked with syntax like: +// protoc --cpp_out=outdir --foo_out=outdir --proto_path=src src/foo.proto +// +// The .proto file to compile can be specified on the command line using either +// its physical file path, or a virtual path relative to a directory specified +// in --proto_path. For example, for src/foo.proto, the following two protoc +// invocations work the same way: +// 1. protoc --proto_path=src src/foo.proto (physical file path) +// 2. protoc --proto_path=src foo.proto (virtual path relative to src) +// +// If a file path can be interpreted both as a physical file path and as a +// relative virtual path, the physical file path takes precedence. +// +// For a full description of the command-line syntax, invoke it with --help. +class PROTOC_EXPORT CommandLineInterface { + public: + static const char* const kPathSeparator; + + CommandLineInterface(); + ~CommandLineInterface(); + + // Register a code generator for a language. + // + // Parameters: + // * flag_name: The command-line flag used to specify an output file of + // this type. The name must start with a '-'. If the name is longer + // than one letter, it must start with two '-'s. + // * generator: The CodeGenerator which will be called to generate files + // of this type. + // * help_text: Text describing this flag in the --help output. + // + // Some generators accept extra parameters. You can specify this parameter + // on the command-line by placing it before the output directory, separated + // by a colon: + // protoc --foo_out=enable_bar:outdir + // The text before the colon is passed to CodeGenerator::Generate() as the + // "parameter". + void RegisterGenerator(const std::string& flag_name, CodeGenerator* generator, + const std::string& help_text); + + // Register a code generator for a language. + // Besides flag_name you can specify another option_flag_name that could be + // used to pass extra parameters to the registered code generator. + // Suppose you have registered a generator by calling: + // command_line_interface.RegisterGenerator("--foo_out", "--foo_opt", ...) + // Then you could invoke the compiler with a command like: + // protoc --foo_out=enable_bar:outdir --foo_opt=enable_baz + // This will pass "enable_bar,enable_baz" as the parameter to the generator. + void RegisterGenerator(const std::string& flag_name, + const std::string& option_flag_name, + CodeGenerator* generator, + const std::string& help_text); + + // Enables "plugins". In this mode, if a command-line flag ends with "_out" + // but does not match any registered generator, the compiler will attempt to + // find a "plugin" to implement the generator. Plugins are just executables. + // They should live somewhere in the PATH. + // + // The compiler determines the executable name to search for by concatenating + // exe_name_prefix with the unrecognized flag name, removing "_out". So, for + // example, if exe_name_prefix is "protoc-" and you pass the flag --foo_out, + // the compiler will try to run the program "protoc-gen-foo". + // + // The plugin program should implement the following usage: + // plugin [--out=OUTDIR] [--parameter=PARAMETER] PROTO_FILES < DESCRIPTORS + // --out indicates the output directory (as passed to the --foo_out + // parameter); if omitted, the current directory should be used. --parameter + // gives the generator parameter, if any was provided (see below). The + // PROTO_FILES list the .proto files which were given on the compiler + // command-line; these are the files for which the plugin is expected to + // generate output code. Finally, DESCRIPTORS is an encoded FileDescriptorSet + // (as defined in descriptor.proto). This is piped to the plugin's stdin. + // The set will include descriptors for all the files listed in PROTO_FILES as + // well as all files that they import. The plugin MUST NOT attempt to read + // the PROTO_FILES directly -- it must use the FileDescriptorSet. + // + // The plugin should generate whatever files are necessary, as code generators + // normally do. It should write the names of all files it generates to + // stdout. The names should be relative to the output directory, NOT absolute + // names or relative to the current directory. If any errors occur, error + // messages should be written to stderr. If an error is fatal, the plugin + // should exit with a non-zero exit code. + // + // Plugins can have generator parameters similar to normal built-in + // generators. Extra generator parameters can be passed in via a matching + // "_opt" parameter. For example: + // protoc --plug_out=enable_bar:outdir --plug_opt=enable_baz + // This will pass "enable_bar,enable_baz" as the parameter to the plugin. + // + void AllowPlugins(const std::string& exe_name_prefix); + + // Run the Protocol Compiler with the given command-line parameters. + // Returns the error code which should be returned by main(). + // + // It may not be safe to call Run() in a multi-threaded environment because + // it calls strerror(). I'm not sure why you'd want to do this anyway. + int Run(int argc, const char* const argv[]); + + // DEPRECATED. Calling this method has no effect. Protocol compiler now + // always try to find the .proto file relative to the current directory + // first and if the file is not found, it will then treat the input path + // as a virtual path. + void SetInputsAreProtoPathRelative(bool /* enable */) {} + + // Provides some text which will be printed when the --version flag is + // used. The version of libprotoc will also be printed on the next line + // after this text. + void SetVersionInfo(const std::string& text) { version_info_ = text; } + + + private: + // ----------------------------------------------------------------- + + class ErrorPrinter; + class GeneratorContextImpl; + class MemoryOutputStream; + typedef std::unordered_map> + GeneratorContextMap; + + // Clear state from previous Run(). + void Clear(); + + // Remaps the proto file so that it is relative to one of the directories + // in proto_path_. Returns false if an error occurred. + bool MakeProtoProtoPathRelative(DiskSourceTree* source_tree, + std::string* proto, + DescriptorDatabase* fallback_database); + + // Remaps each file in input_files_ so that it is relative to one of the + // directories in proto_path_. Returns false if an error occurred. + bool MakeInputsBeProtoPathRelative(DiskSourceTree* source_tree, + DescriptorDatabase* fallback_database); + + // Fails if these files use proto3 optional and the code generator doesn't + // support it. This is a permanent check. + bool EnforceProto3OptionalSupport( + const std::string& codegen_name, uint64_t supported_features, + const std::vector& parsed_files) const; + + + // Return status for ParseArguments() and InterpretArgument(). + enum ParseArgumentStatus { + PARSE_ARGUMENT_DONE_AND_CONTINUE, + PARSE_ARGUMENT_DONE_AND_EXIT, + PARSE_ARGUMENT_FAIL + }; + + // Parse all command-line arguments. + ParseArgumentStatus ParseArguments(int argc, const char* const argv[]); + + // Read an argument file and append the file's content to the list of + // arguments. Return false if the file cannot be read. + bool ExpandArgumentFile(const std::string& file, + std::vector* arguments); + + // Parses a command-line argument into a name/value pair. Returns + // true if the next argument in the argv should be used as the value, + // false otherwise. + // + // Examples: + // "-Isrc/protos" -> + // name = "-I", value = "src/protos" + // "--cpp_out=src/foo.pb2.cc" -> + // name = "--cpp_out", value = "src/foo.pb2.cc" + // "foo.proto" -> + // name = "", value = "foo.proto" + bool ParseArgument(const char* arg, std::string* name, std::string* value); + + // Interprets arguments parsed with ParseArgument. + ParseArgumentStatus InterpretArgument(const std::string& name, + const std::string& value); + + // Print the --help text to stderr. + void PrintHelpText(); + + // Loads proto_path_ into the provided source_tree. + bool InitializeDiskSourceTree(DiskSourceTree* source_tree, + DescriptorDatabase* fallback_database); + + // Verify that all the input files exist in the given database. + bool VerifyInputFilesInDescriptors(DescriptorDatabase* fallback_database); + + // Parses input_files_ into parsed_files + bool ParseInputFiles(DescriptorPool* descriptor_pool, + DiskSourceTree* source_tree, + std::vector* parsed_files); + + // Generate the given output file from the given input. + struct OutputDirective; // see below + bool GenerateOutput(const std::vector& parsed_files, + const OutputDirective& output_directive, + GeneratorContext* generator_context); + bool GeneratePluginOutput( + const std::vector& parsed_files, + const std::string& plugin_name, const std::string& parameter, + GeneratorContext* generator_context, std::string* error); + + // Implements --encode and --decode. + bool EncodeOrDecode(const DescriptorPool* pool); + + // Implements the --descriptor_set_out option. + bool WriteDescriptorSet( + const std::vector& parsed_files); + + // Implements the --dependency_out option + bool GenerateDependencyManifestFile( + const std::vector& parsed_files, + const GeneratorContextMap& output_directories, + DiskSourceTree* source_tree); + + // Get all transitive dependencies of the given file (including the file + // itself), adding them to the given list of FileDescriptorProtos. The + // protos will be ordered such that every file is listed before any file that + // depends on it, so that you can call DescriptorPool::BuildFile() on them + // in order. Any files in *already_seen will not be added, and each file + // added will be inserted into *already_seen. If include_source_code_info is + // true then include the source code information in the FileDescriptorProtos. + // If include_json_name is true, populate the json_name field of + // FieldDescriptorProto for all fields. + static void GetTransitiveDependencies( + const FileDescriptor* file, bool include_json_name, + bool include_source_code_info, + std::set* already_seen, + RepeatedPtrField* output); + + // Implements the --print_free_field_numbers. This function prints free field + // numbers into stdout for the message and it's nested message types in + // post-order, i.e. nested types first. Printed range are left-right + // inclusive, i.e. [a, b]. + // + // Groups: + // For historical reasons, groups are considered to share the same + // field number space with the parent message, thus it will not print free + // field numbers for groups. The field numbers used in the groups are + // excluded in the free field numbers of the parent message. + // + // Extension Ranges: + // Extension ranges are considered ocuppied field numbers and they will not be + // listed as free numbers in the output. + void PrintFreeFieldNumbers(const Descriptor* descriptor); + + // ----------------------------------------------------------------- + + // The name of the executable as invoked (i.e. argv[0]). + std::string executable_name_; + + // Version info set with SetVersionInfo(). + std::string version_info_; + + // Registered generators. + struct GeneratorInfo { + std::string flag_name; + std::string option_flag_name; + CodeGenerator* generator; + std::string help_text; + }; + typedef std::map GeneratorMap; + GeneratorMap generators_by_flag_name_; + GeneratorMap generators_by_option_name_; + // A map from generator names to the parameters specified using the option + // flag. For example, if the user invokes the compiler with: + // protoc --foo_out=outputdir --foo_opt=enable_bar ... + // Then there will be an entry ("--foo_out", "enable_bar") in this map. + std::map generator_parameters_; + // Similar to generator_parameters_, but stores the parameters for plugins. + std::map plugin_parameters_; + + // See AllowPlugins(). If this is empty, plugins aren't allowed. + std::string plugin_prefix_; + + // Maps specific plugin names to files. When executing a plugin, this map + // is searched first to find the plugin executable. If not found here, the + // PATH (or other OS-specific search strategy) is searched. + std::map plugins_; + + // Stuff parsed from command line. + enum Mode { + MODE_COMPILE, // Normal mode: parse .proto files and compile them. + MODE_ENCODE, // --encode: read text from stdin, write binary to stdout. + MODE_DECODE, // --decode: read binary from stdin, write text to stdout. + MODE_PRINT, // Print mode: print info of the given .proto files and exit. + }; + + Mode mode_ = MODE_COMPILE; + + enum PrintMode { + PRINT_NONE, // Not in MODE_PRINT + PRINT_FREE_FIELDS, // --print_free_fields + }; + + PrintMode print_mode_ = PRINT_NONE; + + enum ErrorFormat { + ERROR_FORMAT_GCC, // GCC error output format (default). + ERROR_FORMAT_MSVS // Visual Studio output (--error_format=msvs). + }; + + ErrorFormat error_format_ = ERROR_FORMAT_GCC; + + // True if we should treat warnings as errors that fail the compilation. + bool fatal_warnings_ = false; + + std::vector > + proto_path_; // Search path for proto files. + std::vector input_files_; // Names of the input proto files. + + // Names of proto files which are allowed to be imported. Used by build + // systems to enforce depend-on-what-you-import. + std::set direct_dependencies_; + bool direct_dependencies_explicitly_set_ = false; + + // If there's a violation of depend-on-what-you-import, this string will be + // presented to the user. "%s" will be replaced with the violating import. + std::string direct_dependencies_violation_msg_; + + // output_directives_ lists all the files we are supposed to output and what + // generator to use for each. + struct OutputDirective { + std::string name; // E.g. "--foo_out" + CodeGenerator* generator; // NULL for plugins + std::string parameter; + std::string output_location; + }; + std::vector output_directives_; + + // When using --encode or --decode, this names the type we are encoding or + // decoding. (Empty string indicates --decode_raw.) + std::string codec_type_; + + // If --descriptor_set_in was given, these are filenames containing + // parsed FileDescriptorSets to be used for loading protos. Otherwise, empty. + std::vector descriptor_set_in_names_; + + // If --descriptor_set_out was given, this is the filename to which the + // FileDescriptorSet should be written. Otherwise, empty. + std::string descriptor_set_out_name_; + + // If --dependency_out was given, this is the path to the file where the + // dependency file will be written. Otherwise, empty. + std::string dependency_out_name_; + + // True if --include_imports was given, meaning that we should + // write all transitive dependencies to the DescriptorSet. Otherwise, only + // the .proto files listed on the command-line are added. + bool imports_in_descriptor_set_; + + // True if --include_source_info was given, meaning that we should not strip + // SourceCodeInfo from the DescriptorSet. + bool source_info_in_descriptor_set_ = false; + + // Was the --disallow_services flag used? + bool disallow_services_ = false; + + // When using --encode, this will be passed to SetSerializationDeterministic. + bool deterministic_output_ = false; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CommandLineInterface); +}; + +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_COMMAND_LINE_INTERFACE_H__ diff --git a/external/include/google/protobuf/compiler/cpp/cpp_generator.h b/external/include/google/protobuf/compiler/cpp/cpp_generator.h new file mode 100644 index 0000000..97e848d --- /dev/null +++ b/external/include/google/protobuf/compiler/cpp/cpp_generator.h @@ -0,0 +1,106 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Generates C++ code for a given .proto file. + +#ifndef GOOGLE_PROTOBUF_COMPILER_CPP_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_CPP_GENERATOR_H__ + +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace cpp { + +// CodeGenerator implementation which generates a C++ source file and +// header. If you create your own protocol compiler binary and you want +// it to support C++ output, you can do so by registering an instance of this +// CodeGenerator with the CommandLineInterface in your main() function. +class PROTOC_EXPORT CppGenerator : public CodeGenerator { + public: + CppGenerator(); + ~CppGenerator(); + + enum class Runtime { + kGoogle3, // Use the internal google3 runtime. + kOpensource, // Use the open-source runtime. + + // Use the open-source runtime with google3 #include paths. We make these + // absolute to avoid ambiguity, so the runtime will be #included like: + // #include "third_party/protobuf/.../google/protobuf/message.h" + kOpensourceGoogle3 + }; + + void set_opensource_runtime(bool opensource) { + opensource_runtime_ = opensource; + } + + // If set to a non-empty string, generated code will do: + // #include "/google/protobuf/message.h" + // instead of: + // #include + // This has no effect if opensource_runtime = false. + void set_runtime_include_base(const std::string& base) { + runtime_include_base_ = base; + } + + // implements CodeGenerator ---------------------------------------- + bool Generate(const FileDescriptor* file, const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const override; + + uint64_t GetSupportedFeatures() const override { + // We don't fully support this yet, but this is needed to unblock the tests, + // and we will have full support before the experimental flag is removed. + return FEATURE_PROTO3_OPTIONAL; + } + + private: + bool opensource_runtime_ = true; + std::string runtime_include_base_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CppGenerator); +}; + +} // namespace cpp +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_CPP_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/csharp/csharp_generator.h b/external/include/google/protobuf/compiler/csharp/csharp_generator.h new file mode 100644 index 0000000..f41f9b8 --- /dev/null +++ b/external/include/google/protobuf/compiler/csharp/csharp_generator.h @@ -0,0 +1,70 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Generates C# code for a given .proto file. + +#ifndef GOOGLE_PROTOBUF_COMPILER_CSHARP_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_CSHARP_GENERATOR_H__ + +#include + +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace csharp { + +// CodeGenerator implementation which generates a C# source file and +// header. If you create your own protocol compiler binary and you want +// it to support C# output, you can do so by registering an instance of this +// CodeGenerator with the CommandLineInterface in your main() function. +class PROTOC_EXPORT Generator : public CodeGenerator { + public: + Generator(); + ~Generator(); + bool Generate( + const FileDescriptor* file, + const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const override; + uint64_t GetSupportedFeatures() const override; +}; + +} // namespace csharp +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_CSHARP_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/csharp/csharp_names.h b/external/include/google/protobuf/compiler/csharp/csharp_names.h new file mode 100644 index 0000000..67e53b6 --- /dev/null +++ b/external/include/google/protobuf/compiler/csharp/csharp_names.h @@ -0,0 +1,109 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Provides a mechanism for mapping a descriptor to the +// fully-qualified name of the corresponding C# class. + +#ifndef GOOGLE_PROTOBUF_COMPILER_CSHARP_NAMES_H__ +#define GOOGLE_PROTOBUF_COMPILER_CSHARP_NAMES_H__ + +#include +#include +#include + +#include + +namespace google { +namespace protobuf { + +class Descriptor; +class EnumDescriptor; +class FileDescriptor; +class ServiceDescriptor; + +namespace compiler { +namespace csharp { + +// Requires: +// descriptor != NULL +// +// Returns: +// The namespace to use for given file descriptor. +std::string PROTOC_EXPORT GetFileNamespace(const FileDescriptor* descriptor); + +// Requires: +// descriptor != NULL +// +// Returns: +// The fully-qualified C# class name. +std::string PROTOC_EXPORT GetClassName(const Descriptor* descriptor); + +// Requires: +// descriptor != NULL +// +// Returns: +// The fully-qualified name of the C# class that provides +// access to the file descriptor. Proto compiler generates +// such class for each .proto file processed. +std::string PROTOC_EXPORT +GetReflectionClassName(const FileDescriptor* descriptor); + +// Generates output file name for given file descriptor. If generate_directories +// is true, the output file will be put under directory corresponding to file's +// namespace. base_namespace can be used to strip some of the top level +// directories. E.g. for file with namespace "Bar.Foo" and base_namespace="Bar", +// the resulting file will be put under directory "Foo" (and not "Bar/Foo"). +// +// Requires: +// descriptor != NULL +// error != NULL +// +// Returns: +// The file name to use as output file for given file descriptor. In case +// of failure, this function will return empty string and error parameter +// will contain the error message. +std::string PROTOC_EXPORT GetOutputFile(const FileDescriptor* descriptor, + const std::string file_extension, + const bool generate_directories, + const std::string base_namespace, + std::string* error); + +} // namespace csharp +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_CSHARP_NAMES_H__ diff --git a/external/include/google/protobuf/compiler/importer.h b/external/include/google/protobuf/compiler/importer.h new file mode 100644 index 0000000..08a49c5 --- /dev/null +++ b/external/include/google/protobuf/compiler/importer.h @@ -0,0 +1,336 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This file is the public interface to the .proto file parser. + +#ifndef GOOGLE_PROTOBUF_COMPILER_IMPORTER_H__ +#define GOOGLE_PROTOBUF_COMPILER_IMPORTER_H__ + +#include +#include +#include +#include +#include +#include +#include + +#include + +namespace google { +namespace protobuf { + +namespace io { +class ZeroCopyInputStream; +} + +namespace compiler { + +// Defined in this file. +class Importer; +class MultiFileErrorCollector; +class SourceTree; +class DiskSourceTree; + +// TODO(kenton): Move all SourceTree stuff to a separate file? + +// An implementation of DescriptorDatabase which loads files from a SourceTree +// and parses them. +// +// Note: This class is not thread-safe since it maintains a table of source +// code locations for error reporting. However, when a DescriptorPool wraps +// a DescriptorDatabase, it uses mutex locking to make sure only one method +// of the database is called at a time, even if the DescriptorPool is used +// from multiple threads. Therefore, there is only a problem if you create +// multiple DescriptorPools wrapping the same SourceTreeDescriptorDatabase +// and use them from multiple threads. +// +// Note: This class does not implement FindFileContainingSymbol() or +// FindFileContainingExtension(); these will always return false. +class PROTOBUF_EXPORT SourceTreeDescriptorDatabase : public DescriptorDatabase { + public: + SourceTreeDescriptorDatabase(SourceTree* source_tree); + + // If non-NULL, fallback_database will be checked if a file doesn't exist in + // the specified source_tree. + SourceTreeDescriptorDatabase(SourceTree* source_tree, + DescriptorDatabase* fallback_database); + ~SourceTreeDescriptorDatabase(); + + // Instructs the SourceTreeDescriptorDatabase to report any parse errors + // to the given MultiFileErrorCollector. This should be called before + // parsing. error_collector must remain valid until either this method + // is called again or the SourceTreeDescriptorDatabase is destroyed. + void RecordErrorsTo(MultiFileErrorCollector* error_collector) { + error_collector_ = error_collector; + } + + // Gets a DescriptorPool::ErrorCollector which records errors to the + // MultiFileErrorCollector specified with RecordErrorsTo(). This collector + // has the ability to determine exact line and column numbers of errors + // from the information given to it by the DescriptorPool. + DescriptorPool::ErrorCollector* GetValidationErrorCollector() { + using_validation_error_collector_ = true; + return &validation_error_collector_; + } + + // implements DescriptorDatabase ----------------------------------- + bool FindFileByName(const std::string& filename, + FileDescriptorProto* output) override; + bool FindFileContainingSymbol(const std::string& symbol_name, + FileDescriptorProto* output) override; + bool FindFileContainingExtension(const std::string& containing_type, + int field_number, + FileDescriptorProto* output) override; + + private: + class SingleFileErrorCollector; + + SourceTree* source_tree_; + DescriptorDatabase* fallback_database_; + MultiFileErrorCollector* error_collector_; + + class PROTOBUF_EXPORT ValidationErrorCollector + : public DescriptorPool::ErrorCollector { + public: + ValidationErrorCollector(SourceTreeDescriptorDatabase* owner); + ~ValidationErrorCollector(); + + // implements ErrorCollector --------------------------------------- + void AddError(const std::string& filename, const std::string& element_name, + const Message* descriptor, ErrorLocation location, + const std::string& message) override; + + void AddWarning(const std::string& filename, + const std::string& element_name, const Message* descriptor, + ErrorLocation location, + const std::string& message) override; + + private: + SourceTreeDescriptorDatabase* owner_; + }; + friend class ValidationErrorCollector; + + bool using_validation_error_collector_; + SourceLocationTable source_locations_; + ValidationErrorCollector validation_error_collector_; +}; + +// Simple interface for parsing .proto files. This wraps the process +// of opening the file, parsing it with a Parser, recursively parsing all its +// imports, and then cross-linking the results to produce a FileDescriptor. +// +// This is really just a thin wrapper around SourceTreeDescriptorDatabase. +// You may find that SourceTreeDescriptorDatabase is more flexible. +// +// TODO(kenton): I feel like this class is not well-named. +class PROTOBUF_EXPORT Importer { + public: + Importer(SourceTree* source_tree, MultiFileErrorCollector* error_collector); + ~Importer(); + + // Import the given file and build a FileDescriptor representing it. If + // the file is already in the DescriptorPool, the existing FileDescriptor + // will be returned. The FileDescriptor is property of the DescriptorPool, + // and will remain valid until it is destroyed. If any errors occur, they + // will be reported using the error collector and Import() will return NULL. + // + // A particular Importer object will only report errors for a particular + // file once. All future attempts to import the same file will return NULL + // without reporting any errors. The idea is that you might want to import + // a lot of files without seeing the same errors over and over again. If + // you want to see errors for the same files repeatedly, you can use a + // separate Importer object to import each one (but use the same + // DescriptorPool so that they can be cross-linked). + const FileDescriptor* Import(const std::string& filename); + + // The DescriptorPool in which all imported FileDescriptors and their + // contents are stored. + inline const DescriptorPool* pool() const { return &pool_; } + + void AddUnusedImportTrackFile(const std::string& file_name, + bool is_error = false); + void ClearUnusedImportTrackFiles(); + + + private: + SourceTreeDescriptorDatabase database_; + DescriptorPool pool_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Importer); +}; + +// If the importer encounters problems while trying to import the proto files, +// it reports them to a MultiFileErrorCollector. +class PROTOBUF_EXPORT MultiFileErrorCollector { + public: + inline MultiFileErrorCollector() {} + virtual ~MultiFileErrorCollector(); + + // Line and column numbers are zero-based. A line number of -1 indicates + // an error with the entire file (e.g. "not found"). + virtual void AddError(const std::string& filename, int line, int column, + const std::string& message) = 0; + + virtual void AddWarning(const std::string& /* filename */, int /* line */, + int /* column */, const std::string& /* message */) {} + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MultiFileErrorCollector); +}; + +// Abstract interface which represents a directory tree containing proto files. +// Used by the default implementation of Importer to resolve import statements +// Most users will probably want to use the DiskSourceTree implementation, +// below. +class PROTOBUF_EXPORT SourceTree { + public: + inline SourceTree() {} + virtual ~SourceTree(); + + // Open the given file and return a stream that reads it, or NULL if not + // found. The caller takes ownership of the returned object. The filename + // must be a path relative to the root of the source tree and must not + // contain "." or ".." components. + virtual io::ZeroCopyInputStream* Open(const std::string& filename) = 0; + + // If Open() returns NULL, calling this method immediately will return an + // description of the error. + // Subclasses should implement this method and return a meaningful value for + // better error reporting. + // TODO(xiaofeng): change this to a pure virtual function. + virtual std::string GetLastErrorMessage(); + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(SourceTree); +}; + +// An implementation of SourceTree which loads files from locations on disk. +// Multiple mappings can be set up to map locations in the DiskSourceTree to +// locations in the physical filesystem. +class PROTOBUF_EXPORT DiskSourceTree : public SourceTree { + public: + DiskSourceTree(); + ~DiskSourceTree(); + + // Map a path on disk to a location in the SourceTree. The path may be + // either a file or a directory. If it is a directory, the entire tree + // under it will be mapped to the given virtual location. To map a directory + // to the root of the source tree, pass an empty string for virtual_path. + // + // If multiple mapped paths apply when opening a file, they will be searched + // in order. For example, if you do: + // MapPath("bar", "foo/bar"); + // MapPath("", "baz"); + // and then you do: + // Open("bar/qux"); + // the DiskSourceTree will first try to open foo/bar/qux, then baz/bar/qux, + // returning the first one that opens successfully. + // + // disk_path may be an absolute path or relative to the current directory, + // just like a path you'd pass to open(). + void MapPath(const std::string& virtual_path, const std::string& disk_path); + + // Return type for DiskFileToVirtualFile(). + enum DiskFileToVirtualFileResult { + SUCCESS, + SHADOWED, + CANNOT_OPEN, + NO_MAPPING + }; + + // Given a path to a file on disk, find a virtual path mapping to that + // file. The first mapping created with MapPath() whose disk_path contains + // the filename is used. However, that virtual path may not actually be + // usable to open the given file. Possible return values are: + // * SUCCESS: The mapping was found. *virtual_file is filled in so that + // calling Open(*virtual_file) will open the file named by disk_file. + // * SHADOWED: A mapping was found, but using Open() to open this virtual + // path will end up returning some different file. This is because some + // other mapping with a higher precedence also matches this virtual path + // and maps it to a different file that exists on disk. *virtual_file + // is filled in as it would be in the SUCCESS case. *shadowing_disk_file + // is filled in with the disk path of the file which would be opened if + // you were to call Open(*virtual_file). + // * CANNOT_OPEN: The mapping was found and was not shadowed, but the + // file specified cannot be opened. When this value is returned, + // errno will indicate the reason the file cannot be opened. *virtual_file + // will be set to the virtual path as in the SUCCESS case, even though + // it is not useful. + // * NO_MAPPING: Indicates that no mapping was found which contains this + // file. + DiskFileToVirtualFileResult DiskFileToVirtualFile( + const std::string& disk_file, std::string* virtual_file, + std::string* shadowing_disk_file); + + // Given a virtual path, find the path to the file on disk. + // Return true and update disk_file with the on-disk path if the file exists. + // Return false and leave disk_file untouched if the file doesn't exist. + bool VirtualFileToDiskFile(const std::string& virtual_file, + std::string* disk_file); + + // implements SourceTree ------------------------------------------- + io::ZeroCopyInputStream* Open(const std::string& filename) override; + + std::string GetLastErrorMessage() override; + + private: + struct Mapping { + std::string virtual_path; + std::string disk_path; + + inline Mapping(const std::string& virtual_path_param, + const std::string& disk_path_param) + : virtual_path(virtual_path_param), disk_path(disk_path_param) {} + }; + std::vector mappings_; + std::string last_error_message_; + + // Like Open(), but returns the on-disk path in disk_file if disk_file is + // non-NULL and the file could be successfully opened. + io::ZeroCopyInputStream* OpenVirtualFile(const std::string& virtual_file, + std::string* disk_file); + + // Like Open() but given the actual on-disk path. + io::ZeroCopyInputStream* OpenDiskFile(const std::string& filename); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(DiskSourceTree); +}; + +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_IMPORTER_H__ diff --git a/external/include/google/protobuf/compiler/java/java_generator.h b/external/include/google/protobuf/compiler/java/java_generator.h new file mode 100644 index 0000000..6315e7c --- /dev/null +++ b/external/include/google/protobuf/compiler/java/java_generator.h @@ -0,0 +1,76 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Generates Java code for a given .proto file. + +#ifndef GOOGLE_PROTOBUF_COMPILER_JAVA_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_JAVA_GENERATOR_H__ + +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace java { + +// CodeGenerator implementation which generates Java code. If you create your +// own protocol compiler binary and you want it to support Java output, you +// can do so by registering an instance of this CodeGenerator with the +// CommandLineInterface in your main() function. +class PROTOC_EXPORT JavaGenerator : public CodeGenerator { + public: + JavaGenerator(); + ~JavaGenerator(); + + // implements CodeGenerator ---------------------------------------- + bool Generate(const FileDescriptor* file, const std::string& parameter, + GeneratorContext* context, std::string* error) const override; + + uint64_t GetSupportedFeatures() const override; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(JavaGenerator); +}; + +} // namespace java +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_JAVA_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/java/java_kotlin_generator.h b/external/include/google/protobuf/compiler/java/java_kotlin_generator.h new file mode 100644 index 0000000..66e32b9 --- /dev/null +++ b/external/include/google/protobuf/compiler/java/java_kotlin_generator.h @@ -0,0 +1,72 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Generates Kotlin code for a given .proto file. + +#ifndef GOOGLE_PROTOBUF_COMPILER_JAVA_KOTLIN_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_JAVA_KOTLIN_GENERATOR_H__ + +#include + +#include +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace java { + +// CodeGenerator implementation which generates Kotlin code. If you create your +// own protocol compiler binary and you want it to support Kotlin output, you +// can do so by registering an instance of this CodeGenerator with the +// CommandLineInterface in your main() function. +class PROTOC_EXPORT KotlinGenerator : public CodeGenerator { + public: + KotlinGenerator(); + ~KotlinGenerator() override; + + // implements CodeGenerator ---------------------------------------- + bool Generate(const FileDescriptor* file, const std::string& parameter, + GeneratorContext* context, std::string* error) const override; + + uint64_t GetSupportedFeatures() const override; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(KotlinGenerator); +}; + +} // namespace java +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_JAVA_KOTLIN_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/java/java_names.h b/external/include/google/protobuf/compiler/java/java_names.h new file mode 100644 index 0000000..313ace4 --- /dev/null +++ b/external/include/google/protobuf/compiler/java/java_names.h @@ -0,0 +1,100 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Provides a mechanism for mapping a descriptor to the +// fully-qualified name of the corresponding Java class. + +#ifndef GOOGLE_PROTOBUF_COMPILER_JAVA_NAMES_H__ +#define GOOGLE_PROTOBUF_COMPILER_JAVA_NAMES_H__ + +#include + +namespace google { +namespace protobuf { + +class Descriptor; +class EnumDescriptor; +class FileDescriptor; +class FieldDescriptor; +class ServiceDescriptor; + +namespace compiler { +namespace java { + +// Requires: +// descriptor != NULL +// +// Returns: +// The fully-qualified Java class name. +std::string ClassName(const Descriptor* descriptor); + +// Requires: +// descriptor != NULL +// +// Returns: +// The fully-qualified Java class name. +std::string ClassName(const EnumDescriptor* descriptor); + +// Requires: +// descriptor != NULL +// +// Returns: +// The fully-qualified Java class name. +std::string ClassName(const FileDescriptor* descriptor); + +// Requires: +// descriptor != NULL +// +// Returns: +// The fully-qualified Java class name. +std::string ClassName(const ServiceDescriptor* descriptor); + +// Requires: +// descriptor != NULL +// +// Returns: +// Java package name. +std::string FileJavaPackage(const FileDescriptor* descriptor); + +// Requires: +// descriptor != NULL +// Returns: +// Capitalized camel case name field name. +std::string CapitalizedFieldName(const FieldDescriptor* descriptor); + +} // namespace java +} // namespace compiler +} // namespace protobuf +} // namespace google +#endif // GOOGLE_PROTOBUF_COMPILER_JAVA_NAMES_H__ diff --git a/external/include/google/protobuf/compiler/js/js_generator.h b/external/include/google/protobuf/compiler/js/js_generator.h new file mode 100644 index 0000000..e452020 --- /dev/null +++ b/external/include/google/protobuf/compiler/js/js_generator.h @@ -0,0 +1,339 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Generates JavaScript code for a given .proto file. +// +#ifndef GOOGLE_PROTOBUF_COMPILER_JS_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_JS_GENERATOR_H__ + +#include +#include + +#include +#include +#include +#include + +#include + +namespace google { +namespace protobuf { + +class Descriptor; +class EnumDescriptor; +class FieldDescriptor; +class OneofDescriptor; +class FileDescriptor; + +namespace io { +class Printer; +} + +namespace compiler { +namespace js { + +struct GeneratorOptions { + // Output path. + std::string output_dir; + // Namespace prefix. + std::string namespace_prefix; + // Enable binary-format support? + bool binary; + // What style of imports should be used. + enum ImportStyle { + kImportClosure, // goog.require() + kImportCommonJs, // require() + kImportCommonJsStrict, // require() with no global export + kImportBrowser, // no import statements + kImportEs6, // import { member } from '' + } import_style; + + GeneratorOptions() + : output_dir("."), + namespace_prefix(""), + binary(false), + import_style(kImportClosure), + add_require_for_enums(false), + testonly(false), + library(""), + error_on_name_conflict(false), + extension(".js"), + one_output_file_per_input_file(false), + annotate_code(false) {} + + bool ParseFromOptions( + const std::vector >& options, + std::string* error); + + // Returns the file name extension to use for generated code. + std::string GetFileNameExtension() const { + return import_style == kImportClosure ? extension : "_pb.js"; + } + + enum OutputMode { + // Create an output file for each input .proto file. + kOneOutputFilePerInputFile, + // Create an output file for each type. + kOneOutputFilePerSCC, + // Put everything in a single file named by the library option. + kEverythingInOneFile, + }; + + // Indicates how to output the generated code based on the provided options. + OutputMode output_mode() const; + + // The remaining options are only relevant when we are using kImportClosure. + + // Add a `goog.requires()` call for each enum type used. If not set, a + // forward declaration with `goog.forwardDeclare` is produced instead. + bool add_require_for_enums; + // Set this as a test-only module via `goog.setTestOnly();`. + bool testonly; + // Create a library with name _lib.js rather than a separate .js file + // per type? + std::string library; + // Error if there are two types that would generate the same output file? + bool error_on_name_conflict; + // The extension to use for output file names. + std::string extension; + // Create a separate output file for each input file? + bool one_output_file_per_input_file; + // If true, we should append annotations as comments on the last line for + // generated .js file. Annotations used by tools like https://kythe.io + // to provide cross-references between .js and .proto files. Annotations + // are encoded as base64 proto of GeneratedCodeInfo message (see + // descriptor.proto). + bool annotate_code; +}; + +// CodeGenerator implementation which generates a JavaScript source file and +// header. If you create your own protocol compiler binary and you want it to +// support JavaScript output, you can do so by registering an instance of this +// CodeGenerator with the CommandLineInterface in your main() function. +class PROTOC_EXPORT Generator : public CodeGenerator { + public: + Generator() {} + virtual ~Generator() {} + + bool Generate(const FileDescriptor* file, const std::string& parameter, + GeneratorContext* context, std::string* error) const override { + *error = "Unimplemented Generate() method. Call GenerateAll() instead."; + return false; + } + + bool HasGenerateAll() const override { return true; } + + bool GenerateAll(const std::vector& files, + const std::string& parameter, GeneratorContext* context, + std::string* error) const override; + + uint64 GetSupportedFeatures() const override { + return FEATURE_PROTO3_OPTIONAL; + } + + private: + void GenerateHeader(const GeneratorOptions& options, + const FileDescriptor* file, io::Printer* printer) const; + + // Generate goog.provides() calls. + void FindProvides(const GeneratorOptions& options, io::Printer* printer, + const std::vector& file, + std::set* provided) const; + void FindProvidesForFile(const GeneratorOptions& options, + io::Printer* printer, const FileDescriptor* file, + std::set* provided) const; + void FindProvidesForMessage(const GeneratorOptions& options, + io::Printer* printer, const Descriptor* desc, + std::set* provided) const; + void FindProvidesForEnum(const GeneratorOptions& options, + io::Printer* printer, const EnumDescriptor* enumdesc, + std::set* provided) const; + // For extension fields at file scope. + void FindProvidesForFields(const GeneratorOptions& options, + io::Printer* printer, + const std::vector& fields, + std::set* provided) const; + // Print the goog.provides() found by the methods above. + void GenerateProvides(const GeneratorOptions& options, io::Printer* printer, + std::set* provided) const; + + // Generate goog.setTestOnly() if indicated. + void GenerateTestOnly(const GeneratorOptions& options, + io::Printer* printer) const; + + // Generate goog.requires() calls. + void GenerateRequiresForLibrary( + const GeneratorOptions& options, io::Printer* printer, + const std::vector& files, + std::set* provided) const; + void GenerateRequiresForSCC(const GeneratorOptions& options, + io::Printer* printer, const SCC* scc, + std::set* provided) const; + // For extension fields at file scope. + void GenerateRequiresForExtensions( + const GeneratorOptions& options, io::Printer* printer, + const std::vector& fields, + std::set* provided) const; + void GenerateRequiresImpl(const GeneratorOptions& options, + io::Printer* printer, + std::set* required, + std::set* forwards, + std::set* provided, bool require_jspb, + bool require_extension, bool require_map) const; + void FindRequiresForMessage(const GeneratorOptions& options, + const Descriptor* desc, + std::set* required, + std::set* forwards, + bool* have_message) const; + void FindRequiresForField(const GeneratorOptions& options, + const FieldDescriptor* field, + std::set* required, + std::set* forwards) const; + void FindRequiresForExtension(const GeneratorOptions& options, + const FieldDescriptor* field, + std::set* required, + std::set* forwards) const; + // Generate all things in a proto file into one file. + // If use_short_name is true, the generated file's name will only be short + // name that without directory, otherwise filename equals file->name() + bool GenerateFile(const FileDescriptor* file, const GeneratorOptions& options, + GeneratorContext* context, bool use_short_name) const; + void GenerateFile(const GeneratorOptions& options, io::Printer* printer, + const FileDescriptor* file) const; + + // Generate definitions for all message classes and enums in all files, + // processing the files in dependence order. + void GenerateFilesInDepOrder( + const GeneratorOptions& options, io::Printer* printer, + const std::vector& file) const; + // Helper for above. + void GenerateFileAndDeps(const GeneratorOptions& options, + io::Printer* printer, const FileDescriptor* root, + std::set* all_files, + std::set* generated) const; + + // Generate definitions for all message classes and enums. + void GenerateClassesAndEnums(const GeneratorOptions& options, + io::Printer* printer, + const FileDescriptor* file) const; + + void GenerateFieldValueExpression(io::Printer* printer, + const char* obj_reference, + const FieldDescriptor* field, + bool use_default) const; + + // Generate definition for one class. + void GenerateClass(const GeneratorOptions& options, io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassConstructor(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassFieldInfo(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassConstructorAndDeclareExtensionFieldInfo( + const GeneratorOptions& options, io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassXid(const GeneratorOptions& options, io::Printer* printer, + const Descriptor* desc) const; + void GenerateOneofCaseDefinition(const GeneratorOptions& options, + io::Printer* printer, + const OneofDescriptor* oneof) const; + void GenerateObjectTypedef(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassToObject(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassFieldToObject(const GeneratorOptions& options, + io::Printer* printer, + const FieldDescriptor* field) const; + void GenerateClassFromObject(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassFieldFromObject(const GeneratorOptions& options, + io::Printer* printer, + const FieldDescriptor* field) const; + void GenerateClassRegistration(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassFields(const GeneratorOptions& options, + io::Printer* printer, const Descriptor* desc) const; + void GenerateClassField(const GeneratorOptions& options, io::Printer* printer, + const FieldDescriptor* desc) const; + void GenerateClassExtensionFieldInfo(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassDeserialize(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassDeserializeBinary(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassDeserializeBinaryField(const GeneratorOptions& options, + io::Printer* printer, + const FieldDescriptor* field) const; + void GenerateClassSerializeBinary(const GeneratorOptions& options, + io::Printer* printer, + const Descriptor* desc) const; + void GenerateClassSerializeBinaryField(const GeneratorOptions& options, + io::Printer* printer, + const FieldDescriptor* field) const; + + // Generate definition for one enum. + void GenerateEnum(const GeneratorOptions& options, io::Printer* printer, + const EnumDescriptor* enumdesc) const; + + // Generate an extension definition. + void GenerateExtension(const GeneratorOptions& options, io::Printer* printer, + const FieldDescriptor* field) const; + + // Generate addFoo() method for repeated primitive fields. + void GenerateRepeatedPrimitiveHelperMethods(const GeneratorOptions& options, + io::Printer* printer, + const FieldDescriptor* field, + bool untyped) const; + + // Generate addFoo() method for repeated message fields. + void GenerateRepeatedMessageHelperMethods(const GeneratorOptions& options, + io::Printer* printer, + const FieldDescriptor* field) const; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Generator); +}; + +} // namespace js +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_JS_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/js/well_known_types_embed.h b/external/include/google/protobuf/compiler/js/well_known_types_embed.h new file mode 100644 index 0000000..174c665 --- /dev/null +++ b/external/include/google/protobuf/compiler/js/well_known_types_embed.h @@ -0,0 +1,43 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_COMPILER_JS_WELL_KNOWN_TYPES_EMBED_H__ +#define GOOGLE_PROTOBUF_COMPILER_JS_WELL_KNOWN_TYPES_EMBED_H__ + +#include + +struct FileToc { + const char* name; + const char* data; +}; + +extern struct FileToc well_known_types_js[]; + +#endif // GOOGLE_PROTOBUF_COMPILER_JS_WELL_KNOWN_TYPES_EMBED_H__ diff --git a/external/include/google/protobuf/compiler/objectivec/objectivec_generator.h b/external/include/google/protobuf/compiler/objectivec/objectivec_generator.h new file mode 100644 index 0000000..1dbc666 --- /dev/null +++ b/external/include/google/protobuf/compiler/objectivec/objectivec_generator.h @@ -0,0 +1,79 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Generates ObjectiveC code for a given .proto file. + +#ifndef GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_GENERATOR_H__ + +#include +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace objectivec { + +// CodeGenerator implementation which generates a ObjectiveC source file and +// header. If you create your own protocol compiler binary and you want it to +// support ObjectiveC output, you can do so by registering an instance of this +// CodeGenerator with the CommandLineInterface in your main() function. +class PROTOC_EXPORT ObjectiveCGenerator : public CodeGenerator { + public: + ObjectiveCGenerator(); + ~ObjectiveCGenerator(); + + ObjectiveCGenerator(const ObjectiveCGenerator&) = delete; + ObjectiveCGenerator& operator=(const ObjectiveCGenerator&) = delete; + + // implements CodeGenerator ---------------------------------------- + bool HasGenerateAll() const override; + bool Generate(const FileDescriptor* file, const std::string& parameter, + GeneratorContext* context, std::string* error) const override; + bool GenerateAll(const std::vector& files, + const std::string& parameter, GeneratorContext* context, + std::string* error) const override; + + uint64_t GetSupportedFeatures() const override { + return FEATURE_PROTO3_OPTIONAL; + } +}; + +} // namespace objectivec +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/objectivec/objectivec_helpers.h b/external/include/google/protobuf/compiler/objectivec/objectivec_helpers.h new file mode 100644 index 0000000..dd42269 --- /dev/null +++ b/external/include/google/protobuf/compiler/objectivec/objectivec_helpers.h @@ -0,0 +1,326 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Helper functions for generating ObjectiveC code. + +#ifndef GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_HELPERS_H__ +#define GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_HELPERS_H__ + +#include +#include + +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace objectivec { + +// Generator options (see objectivec_generator.cc for a description of each): +struct Options { + Options(); + std::string expected_prefixes_path; + std::vector expected_prefixes_suppressions; + std::string generate_for_named_framework; + std::string named_framework_to_proto_path_mappings_path; + std::string runtime_import_prefix; +}; + +// Escape C++ trigraphs by escaping question marks to "\?". +std::string PROTOC_EXPORT EscapeTrigraphs(const std::string& to_escape); + +// Remove white space from either end of a StringPiece. +void PROTOC_EXPORT TrimWhitespace(StringPiece* input); + +// Returns true if the name requires a ns_returns_not_retained attribute applied +// to it. +bool PROTOC_EXPORT IsRetainedName(const std::string& name); + +// Returns true if the name starts with "init" and will need to have special +// handling under ARC. +bool PROTOC_EXPORT IsInitName(const std::string& name); + +// Gets the objc_class_prefix. +std::string PROTOC_EXPORT FileClassPrefix(const FileDescriptor* file); + +// Gets the path of the file we're going to generate (sans the .pb.h +// extension). The path will be dependent on the objectivec package +// declared in the proto package. +std::string PROTOC_EXPORT FilePath(const FileDescriptor* file); + +// Just like FilePath(), but without the directory part. +std::string PROTOC_EXPORT FilePathBasename(const FileDescriptor* file); + +// Gets the name of the root class we'll generate in the file. This class +// is not meant for external consumption, but instead contains helpers that +// the rest of the classes need +std::string PROTOC_EXPORT FileClassName(const FileDescriptor* file); + +// These return the fully-qualified class name corresponding to the given +// descriptor. +std::string PROTOC_EXPORT ClassName(const Descriptor* descriptor); +std::string PROTOC_EXPORT ClassName(const Descriptor* descriptor, + std::string* out_suffix_added); +std::string PROTOC_EXPORT EnumName(const EnumDescriptor* descriptor); + +// Returns the fully-qualified name of the enum value corresponding to the +// the descriptor. +std::string PROTOC_EXPORT EnumValueName(const EnumValueDescriptor* descriptor); + +// Returns the name of the enum value corresponding to the descriptor. +std::string PROTOC_EXPORT EnumValueShortName(const EnumValueDescriptor* descriptor); + +// Reverse what an enum does. +std::string PROTOC_EXPORT UnCamelCaseEnumShortName(const std::string& name); + +// Returns the name to use for the extension (used as the method off the file's +// Root class). +std::string PROTOC_EXPORT ExtensionMethodName(const FieldDescriptor* descriptor); + +// Returns the transformed field name. +std::string PROTOC_EXPORT FieldName(const FieldDescriptor* field); +std::string PROTOC_EXPORT FieldNameCapitalized(const FieldDescriptor* field); + +// Returns the transformed oneof name. +std::string PROTOC_EXPORT OneofEnumName(const OneofDescriptor* descriptor); +std::string PROTOC_EXPORT OneofName(const OneofDescriptor* descriptor); +std::string PROTOC_EXPORT OneofNameCapitalized(const OneofDescriptor* descriptor); + +// Returns a symbol that can be used in C code to refer to an Objective C +// class without initializing the class. +std::string PROTOC_EXPORT ObjCClass(const std::string& class_name); + +// Declares an Objective C class without initializing the class so that it can +// be refrerred to by ObjCClass. +std::string PROTOC_EXPORT ObjCClassDeclaration(const std::string& class_name); + +inline bool HasPreservingUnknownEnumSemantics(const FileDescriptor* file) { + return file->syntax() == FileDescriptor::SYNTAX_PROTO3; +} + +inline bool IsMapEntryMessage(const Descriptor* descriptor) { + return descriptor->options().map_entry(); +} + +// Reverse of the above. +std::string PROTOC_EXPORT UnCamelCaseFieldName(const std::string& name, + const FieldDescriptor* field); + +enum ObjectiveCType { + OBJECTIVECTYPE_INT32, + OBJECTIVECTYPE_UINT32, + OBJECTIVECTYPE_INT64, + OBJECTIVECTYPE_UINT64, + OBJECTIVECTYPE_FLOAT, + OBJECTIVECTYPE_DOUBLE, + OBJECTIVECTYPE_BOOLEAN, + OBJECTIVECTYPE_STRING, + OBJECTIVECTYPE_DATA, + OBJECTIVECTYPE_ENUM, + OBJECTIVECTYPE_MESSAGE +}; + +enum FlagType { + FLAGTYPE_DESCRIPTOR_INITIALIZATION, + FLAGTYPE_EXTENSION, + FLAGTYPE_FIELD +}; + +template +std::string GetOptionalDeprecatedAttribute(const TDescriptor* descriptor, + const FileDescriptor* file = NULL, + bool preSpace = true, + bool postNewline = false) { + bool isDeprecated = descriptor->options().deprecated(); + // The file is only passed when checking Messages & Enums, so those types + // get tagged. At the moment, it doesn't seem to make sense to tag every + // field or enum value with when the file is deprecated. + bool isFileLevelDeprecation = false; + if (!isDeprecated && file) { + isFileLevelDeprecation = file->options().deprecated(); + isDeprecated = isFileLevelDeprecation; + } + if (isDeprecated) { + std::string message; + const FileDescriptor* sourceFile = descriptor->file(); + if (isFileLevelDeprecation) { + message = sourceFile->name() + " is deprecated."; + } else { + message = descriptor->full_name() + " is deprecated (see " + + sourceFile->name() + ")."; + } + + std::string result = std::string("GPB_DEPRECATED_MSG(\"") + message + "\")"; + if (preSpace) { + result.insert(0, " "); + } + if (postNewline) { + result.append("\n"); + } + return result; + } else { + return ""; + } +} + +std::string PROTOC_EXPORT GetCapitalizedType(const FieldDescriptor* field); + +ObjectiveCType PROTOC_EXPORT +GetObjectiveCType(FieldDescriptor::Type field_type); + +inline ObjectiveCType GetObjectiveCType(const FieldDescriptor* field) { + return GetObjectiveCType(field->type()); +} + +bool PROTOC_EXPORT IsPrimitiveType(const FieldDescriptor* field); +bool PROTOC_EXPORT IsReferenceType(const FieldDescriptor* field); + +std::string PROTOC_EXPORT +GPBGenericValueFieldName(const FieldDescriptor* field); +std::string PROTOC_EXPORT DefaultValue(const FieldDescriptor* field); +bool PROTOC_EXPORT HasNonZeroDefaultValue(const FieldDescriptor* field); + +std::string PROTOC_EXPORT +BuildFlagsString(const FlagType type, const std::vector& strings); + +// Builds HeaderDoc/appledoc style comments out of the comments in the .proto +// file. +std::string PROTOC_EXPORT BuildCommentsString(const SourceLocation& location, + bool prefer_single_line); + +// The name the commonly used by the library when built as a framework. +// This lines up to the name used in the CocoaPod. +extern PROTOC_EXPORT const char* const ProtobufLibraryFrameworkName; +// Returns the CPP symbol name to use as the gate for framework style imports +// for the given framework name to use. +std::string PROTOC_EXPORT +ProtobufFrameworkImportSymbol(const std::string& framework_name); + +// Checks if the file is one of the proto's bundled with the library. +bool PROTOC_EXPORT +IsProtobufLibraryBundledProtoFile(const FileDescriptor* file); + +// Checks the prefix for the given files and outputs any warnings as needed. If +// there are flat out errors, then out_error is filled in with the first error +// and the result is false. +bool PROTOC_EXPORT ValidateObjCClassPrefixes( + const std::vector& files, + const Options& generation_options, std::string* out_error); + +// Generate decode data needed for ObjC's GPBDecodeTextFormatName() to transform +// the input into the expected output. +class PROTOC_EXPORT TextFormatDecodeData { + public: + TextFormatDecodeData(); + ~TextFormatDecodeData(); + + TextFormatDecodeData(const TextFormatDecodeData&) = delete; + TextFormatDecodeData& operator=(const TextFormatDecodeData&) = delete; + + void AddString(int32 key, const std::string& input_for_decode, + const std::string& desired_output); + size_t num_entries() const { return entries_.size(); } + std::string Data() const; + + static std::string DecodeDataForString(const std::string& input_for_decode, + const std::string& desired_output); + + private: + typedef std::pair DataEntry; + std::vector entries_; +}; + +// Helper for parsing simple files. +class PROTOC_EXPORT LineConsumer { + public: + LineConsumer(); + virtual ~LineConsumer(); + virtual bool ConsumeLine(const StringPiece& line, std::string* out_error) = 0; +}; + +bool PROTOC_EXPORT ParseSimpleFile(const std::string& path, + LineConsumer* line_consumer, + std::string* out_error); + +// Helper class for parsing framework import mappings and generating +// import statements. +class PROTOC_EXPORT ImportWriter { + public: + ImportWriter(const std::string& generate_for_named_framework, + const std::string& named_framework_to_proto_path_mappings_path, + const std::string& runtime_import_prefix, + bool include_wkt_imports); + ~ImportWriter(); + + void AddFile(const FileDescriptor* file, const std::string& header_extension); + void Print(io::Printer* printer) const; + + static void PrintRuntimeImports(io::Printer* printer, + const std::vector& header_to_import, + const std::string& runtime_import_prefix, + bool default_cpp_symbol = false); + + private: + class ProtoFrameworkCollector : public LineConsumer { + public: + ProtoFrameworkCollector(std::map* inout_proto_file_to_framework_name) + : map_(inout_proto_file_to_framework_name) {} + + virtual bool ConsumeLine(const StringPiece& line, std::string* out_error); + + private: + std::map* map_; + }; + + void ParseFrameworkMappings(); + + const std::string generate_for_named_framework_; + const std::string named_framework_to_proto_path_mappings_path_; + const std::string runtime_import_prefix_; + const bool include_wkt_imports_; + std::map proto_file_to_framework_name_; + bool need_to_parse_mapping_file_; + + std::vector protobuf_imports_; + std::vector other_framework_imports_; + std::vector other_imports_; +}; + +} // namespace objectivec +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_HELPERS_H__ diff --git a/external/include/google/protobuf/compiler/parser.h b/external/include/google/protobuf/compiler/parser.h new file mode 100644 index 0000000..b5a5df8 --- /dev/null +++ b/external/include/google/protobuf/compiler/parser.h @@ -0,0 +1,603 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Implements parsing of .proto files to FileDescriptorProtos. + +#ifndef GOOGLE_PROTOBUF_COMPILER_PARSER_H__ +#define GOOGLE_PROTOBUF_COMPILER_PARSER_H__ + +#include +#include +#include +#include + +#include +#include +#include +#include + +// Must be included last. +#include + +namespace google { +namespace protobuf { + +class Message; + +namespace compiler { + +// Defined in this file. +class Parser; +class SourceLocationTable; + +// Implements parsing of protocol definitions (such as .proto files). +// +// Note that most users will be more interested in the Importer class. +// Parser is a lower-level class which simply converts a single .proto file +// to a FileDescriptorProto. It does not resolve import directives or perform +// many other kinds of validation needed to construct a complete +// FileDescriptor. +class PROTOBUF_EXPORT Parser { + public: + Parser(); + ~Parser(); + + // Parse the entire input and construct a FileDescriptorProto representing + // it. Returns true if no errors occurred, false otherwise. + bool Parse(io::Tokenizer* input, FileDescriptorProto* file); + + // Optional features: + + // DEPRECATED: New code should use the SourceCodeInfo embedded in the + // FileDescriptorProto. + // + // Requests that locations of certain definitions be recorded to the given + // SourceLocationTable while parsing. This can be used to look up exact line + // and column numbers for errors reported by DescriptorPool during validation. + // Set to NULL (the default) to discard source location information. + void RecordSourceLocationsTo(SourceLocationTable* location_table) { + source_location_table_ = location_table; + } + + // Requests that errors be recorded to the given ErrorCollector while + // parsing. Set to NULL (the default) to discard error messages. + void RecordErrorsTo(io::ErrorCollector* error_collector) { + error_collector_ = error_collector; + } + + // Returns the identifier used in the "syntax = " declaration, if one was + // seen during the last call to Parse(), or the empty string otherwise. + const std::string& GetSyntaxIdentifier() { return syntax_identifier_; } + + // If set true, input files will be required to begin with a syntax + // identifier. Otherwise, files may omit this. If a syntax identifier + // is provided, it must be 'syntax = "proto2";' and must appear at the + // top of this file regardless of whether or not it was required. + void SetRequireSyntaxIdentifier(bool value) { + require_syntax_identifier_ = value; + } + + // Call SetStopAfterSyntaxIdentifier(true) to tell the parser to stop + // parsing as soon as it has seen the syntax identifier, or lack thereof. + // This is useful for quickly identifying the syntax of the file without + // parsing the whole thing. If this is enabled, no error will be recorded + // if the syntax identifier is something other than "proto2" (since + // presumably the caller intends to deal with that), but other kinds of + // errors (e.g. parse errors) will still be reported. When this is enabled, + // you may pass a NULL FileDescriptorProto to Parse(). + void SetStopAfterSyntaxIdentifier(bool value) { + stop_after_syntax_identifier_ = value; + } + + private: + class LocationRecorder; + + // ================================================================= + // Error recovery helpers + + // Consume the rest of the current statement. This consumes tokens + // until it sees one of: + // ';' Consumes the token and returns. + // '{' Consumes the brace then calls SkipRestOfBlock(). + // '}' Returns without consuming. + // EOF Returns (can't consume). + // The Parser often calls SkipStatement() after encountering a syntax + // error. This allows it to go on parsing the following lines, allowing + // it to report more than just one error in the file. + void SkipStatement(); + + // Consume the rest of the current block, including nested blocks, + // ending after the closing '}' is encountered and consumed, or at EOF. + void SkipRestOfBlock(); + + // ----------------------------------------------------------------- + // Single-token consuming helpers + // + // These make parsing code more readable. + + // True if the current token is TYPE_END. + inline bool AtEnd(); + + // True if the next token matches the given text. + inline bool LookingAt(const char* text); + // True if the next token is of the given type. + inline bool LookingAtType(io::Tokenizer::TokenType token_type); + + // If the next token exactly matches the text given, consume it and return + // true. Otherwise, return false without logging an error. + bool TryConsume(const char* text); + + // These attempt to read some kind of token from the input. If successful, + // they return true. Otherwise they return false and add the given error + // to the error list. + + // Consume a token with the exact text given. + bool Consume(const char* text, const char* error); + // Same as above, but automatically generates the error "Expected \"text\".", + // where "text" is the expected token text. + bool Consume(const char* text); + // Consume a token of type IDENTIFIER and store its text in "output". + bool ConsumeIdentifier(std::string* output, const char* error); + // Consume an integer and store its value in "output". + bool ConsumeInteger(int* output, const char* error); + // Consume a signed integer and store its value in "output". + bool ConsumeSignedInteger(int* output, const char* error); + // Consume a 64-bit integer and store its value in "output". If the value + // is greater than max_value, an error will be reported. + bool ConsumeInteger64(uint64_t max_value, uint64_t* output, + const char* error); + // Consume a number and store its value in "output". This will accept + // tokens of either INTEGER or FLOAT type. + bool ConsumeNumber(double* output, const char* error); + // Consume a string literal and store its (unescaped) value in "output". + bool ConsumeString(std::string* output, const char* error); + + // Consume a token representing the end of the statement. Comments between + // this token and the next will be harvested for documentation. The given + // LocationRecorder should refer to the declaration that was just parsed; + // it will be populated with these comments. + // + // TODO(kenton): The LocationRecorder is const because historically locations + // have been passed around by const reference, for no particularly good + // reason. We should probably go through and change them all to mutable + // pointer to make this more intuitive. + bool TryConsumeEndOfDeclaration(const char* text, + const LocationRecorder* location); + bool TryConsumeEndOfDeclarationFinishScope(const char* text, + const LocationRecorder* location); + + bool ConsumeEndOfDeclaration(const char* text, + const LocationRecorder* location); + + // ----------------------------------------------------------------- + // Error logging helpers + + // Invokes error_collector_->AddError(), if error_collector_ is not NULL. + void AddError(int line, int column, const std::string& error); + + // Invokes error_collector_->AddError() with the line and column number + // of the current token. + void AddError(const std::string& error); + + // Invokes error_collector_->AddWarning() with the line and column number + // of the current token. + void AddWarning(const std::string& warning); + + // Records a location in the SourceCodeInfo.location table (see + // descriptor.proto). We use RAII to ensure that the start and end locations + // are recorded -- the constructor records the start location and the + // destructor records the end location. Since the parser is + // recursive-descent, this works out beautifully. + class PROTOBUF_EXPORT LocationRecorder { + public: + // Construct the file's "root" location. + LocationRecorder(Parser* parser); + + // Construct a location that represents a declaration nested within the + // given parent. E.g. a field's location is nested within the location + // for a message type. The parent's path will be copied, so you should + // call AddPath() only to add the path components leading from the parent + // to the child (as opposed to leading from the root to the child). + LocationRecorder(const LocationRecorder& parent); + + // Convenience constructors that call AddPath() one or two times. + LocationRecorder(const LocationRecorder& parent, int path1); + LocationRecorder(const LocationRecorder& parent, int path1, int path2); + + // Creates a recorder that generates locations into given source code info. + LocationRecorder(const LocationRecorder& parent, int path1, + SourceCodeInfo* source_code_info); + + ~LocationRecorder(); + + // Add a path component. See SourceCodeInfo.Location.path in + // descriptor.proto. + void AddPath(int path_component); + + // By default the location is considered to start at the current token at + // the time the LocationRecorder is created. StartAt() sets the start + // location to the given token instead. + void StartAt(const io::Tokenizer::Token& token); + + // Start at the same location as some other LocationRecorder. + void StartAt(const LocationRecorder& other); + + // By default the location is considered to end at the previous token at + // the time the LocationRecorder is destroyed. EndAt() sets the end + // location to the given token instead. + void EndAt(const io::Tokenizer::Token& token); + + // Records the start point of this location to the SourceLocationTable that + // was passed to RecordSourceLocationsTo(), if any. SourceLocationTable + // is an older way of keeping track of source locations which is still + // used in some places. + void RecordLegacyLocation( + const Message* descriptor, + DescriptorPool::ErrorCollector::ErrorLocation location); + void RecordLegacyImportLocation(const Message* descriptor, + const std::string& name); + + // Returns the number of path components in the recorder's current location. + int CurrentPathSize() const; + + // Attaches leading and trailing comments to the location. The two strings + // will be swapped into place, so after this is called *leading and + // *trailing will be empty. + // + // TODO(kenton): See comment on TryConsumeEndOfDeclaration(), above, for + // why this is const. + void AttachComments(std::string* leading, std::string* trailing, + std::vector* detached_comments) const; + + private: + // Indexes of parent and current location in the parent + // SourceCodeInfo.location repeated field. For top-level elements, + // parent_index_ is -1. + Parser* parser_; + SourceCodeInfo* source_code_info_; + SourceCodeInfo::Location* location_; + + void Init(const LocationRecorder& parent, SourceCodeInfo* source_code_info); + }; + + // ================================================================= + // Parsers for various language constructs + + // Parses the "syntax = \"proto2\";" line at the top of the file. Returns + // false if it failed to parse or if the syntax identifier was not + // recognized. + bool ParseSyntaxIdentifier(const LocationRecorder& parent); + + // These methods parse various individual bits of code. They return + // false if they completely fail to parse the construct. In this case, + // it is probably necessary to skip the rest of the statement to recover. + // However, if these methods return true, it does NOT mean that there + // were no errors; only that there were no *syntax* errors. For instance, + // if a service method is defined using proper syntax but uses a primitive + // type as its input or output, ParseMethodField() still returns true + // and only reports the error by calling AddError(). In practice, this + // makes logic much simpler for the caller. + + // Parse a top-level message, enum, service, etc. + bool ParseTopLevelStatement(FileDescriptorProto* file, + const LocationRecorder& root_location); + + // Parse various language high-level language construrcts. + bool ParseMessageDefinition(DescriptorProto* message, + const LocationRecorder& message_location, + const FileDescriptorProto* containing_file); + bool ParseEnumDefinition(EnumDescriptorProto* enum_type, + const LocationRecorder& enum_location, + const FileDescriptorProto* containing_file); + bool ParseServiceDefinition(ServiceDescriptorProto* service, + const LocationRecorder& service_location, + const FileDescriptorProto* containing_file); + bool ParsePackage(FileDescriptorProto* file, + const LocationRecorder& root_location, + const FileDescriptorProto* containing_file); + bool ParseImport(RepeatedPtrField* dependency, + RepeatedField* public_dependency, + RepeatedField* weak_dependency, + const LocationRecorder& root_location, + const FileDescriptorProto* containing_file); + + // These methods parse the contents of a message, enum, or service type and + // add them to the given object. They consume the entire block including + // the beginning and ending brace. + bool ParseMessageBlock(DescriptorProto* message, + const LocationRecorder& message_location, + const FileDescriptorProto* containing_file); + bool ParseEnumBlock(EnumDescriptorProto* enum_type, + const LocationRecorder& enum_location, + const FileDescriptorProto* containing_file); + bool ParseServiceBlock(ServiceDescriptorProto* service, + const LocationRecorder& service_location, + const FileDescriptorProto* containing_file); + + // Parse one statement within a message, enum, or service block, including + // final semicolon. + bool ParseMessageStatement(DescriptorProto* message, + const LocationRecorder& message_location, + const FileDescriptorProto* containing_file); + bool ParseEnumStatement(EnumDescriptorProto* message, + const LocationRecorder& enum_location, + const FileDescriptorProto* containing_file); + bool ParseServiceStatement(ServiceDescriptorProto* message, + const LocationRecorder& service_location, + const FileDescriptorProto* containing_file); + + // Parse a field of a message. If the field is a group, its type will be + // added to "messages". + // + // parent_location and location_field_number_for_nested_type are needed when + // parsing groups -- we need to generate a nested message type within the + // parent and record its location accordingly. Since the parent could be + // either a FileDescriptorProto or a DescriptorProto, we must pass in the + // correct field number to use. + bool ParseMessageField(FieldDescriptorProto* field, + RepeatedPtrField* messages, + const LocationRecorder& parent_location, + int location_field_number_for_nested_type, + const LocationRecorder& field_location, + const FileDescriptorProto* containing_file); + + // Like ParseMessageField() but expects the label has already been filled in + // by the caller. + bool ParseMessageFieldNoLabel(FieldDescriptorProto* field, + RepeatedPtrField* messages, + const LocationRecorder& parent_location, + int location_field_number_for_nested_type, + const LocationRecorder& field_location, + const FileDescriptorProto* containing_file); + + // Parse an "extensions" declaration. + bool ParseExtensions(DescriptorProto* message, + const LocationRecorder& extensions_location, + const FileDescriptorProto* containing_file); + + // Parse a "reserved" declaration. + bool ParseReserved(DescriptorProto* message, + const LocationRecorder& message_location); + bool ParseReservedNames(DescriptorProto* message, + const LocationRecorder& parent_location); + bool ParseReservedNumbers(DescriptorProto* message, + const LocationRecorder& parent_location); + bool ParseReserved(EnumDescriptorProto* message, + const LocationRecorder& message_location); + bool ParseReservedNames(EnumDescriptorProto* message, + const LocationRecorder& parent_location); + bool ParseReservedNumbers(EnumDescriptorProto* message, + const LocationRecorder& parent_location); + + // Parse an "extend" declaration. (See also comments for + // ParseMessageField().) + bool ParseExtend(RepeatedPtrField* extensions, + RepeatedPtrField* messages, + const LocationRecorder& parent_location, + int location_field_number_for_nested_type, + const LocationRecorder& extend_location, + const FileDescriptorProto* containing_file); + + // Parse a "oneof" declaration. The caller is responsible for setting + // oneof_decl->label() since it will have had to parse the label before it + // knew it was parsing a oneof. + bool ParseOneof(OneofDescriptorProto* oneof_decl, + DescriptorProto* containing_type, int oneof_index, + const LocationRecorder& oneof_location, + const LocationRecorder& containing_type_location, + const FileDescriptorProto* containing_file); + + // Parse a single enum value within an enum block. + bool ParseEnumConstant(EnumValueDescriptorProto* enum_value, + const LocationRecorder& enum_value_location, + const FileDescriptorProto* containing_file); + + // Parse enum constant options, i.e. the list in square brackets at the end + // of the enum constant value definition. + bool ParseEnumConstantOptions(EnumValueDescriptorProto* value, + const LocationRecorder& enum_value_location, + const FileDescriptorProto* containing_file); + + // Parse a single method within a service definition. + bool ParseServiceMethod(MethodDescriptorProto* method, + const LocationRecorder& method_location, + const FileDescriptorProto* containing_file); + + + // Parse options of a single method or stream. + bool ParseMethodOptions(const LocationRecorder& parent_location, + const FileDescriptorProto* containing_file, + const int optionsFieldNumber, + Message* mutable_options); + + // Parse "required", "optional", or "repeated" and fill in "label" + // with the value. Returns true if such a label is consumed. + bool ParseLabel(FieldDescriptorProto::Label* label, + const LocationRecorder& field_location, + const FileDescriptorProto* containing_file); + + // Parse a type name and fill in "type" (if it is a primitive) or + // "type_name" (if it is not) with the type parsed. + bool ParseType(FieldDescriptorProto::Type* type, std::string* type_name); + // Parse a user-defined type and fill in "type_name" with the name. + // If a primitive type is named, it is treated as an error. + bool ParseUserDefinedType(std::string* type_name); + + // Parses field options, i.e. the stuff in square brackets at the end + // of a field definition. Also parses default value. + bool ParseFieldOptions(FieldDescriptorProto* field, + const LocationRecorder& field_location, + const FileDescriptorProto* containing_file); + + // Parse the "default" option. This needs special handling because its + // type is the field's type. + bool ParseDefaultAssignment(FieldDescriptorProto* field, + const LocationRecorder& field_location, + const FileDescriptorProto* containing_file); + + bool ParseJsonName(FieldDescriptorProto* field, + const LocationRecorder& field_location, + const FileDescriptorProto* containing_file); + + enum OptionStyle { + OPTION_ASSIGNMENT, // just "name = value" + OPTION_STATEMENT // "option name = value;" + }; + + // Parse a single option name/value pair, e.g. "ctype = CORD". The name + // identifies a field of the given Message, and the value of that field + // is set to the parsed value. + bool ParseOption(Message* options, const LocationRecorder& options_location, + const FileDescriptorProto* containing_file, + OptionStyle style); + + // Parses a single part of a multipart option name. A multipart name consists + // of names separated by dots. Each name is either an identifier or a series + // of identifiers separated by dots and enclosed in parentheses. E.g., + // "foo.(bar.baz).qux". + bool ParseOptionNamePart(UninterpretedOption* uninterpreted_option, + const LocationRecorder& part_location, + const FileDescriptorProto* containing_file); + + // Parses a string surrounded by balanced braces. Strips off the outer + // braces and stores the enclosed string in *value. + // E.g., + // { foo } *value gets 'foo' + // { foo { bar: box } } *value gets 'foo { bar: box }' + // {} *value gets '' + // + // REQUIRES: LookingAt("{") + // When finished successfully, we are looking at the first token past + // the ending brace. + bool ParseUninterpretedBlock(std::string* value); + + struct MapField { + // Whether the field is a map field. + bool is_map_field; + // The types of the key and value if they are primitive types. + FieldDescriptorProto::Type key_type; + FieldDescriptorProto::Type value_type; + // Or the type names string if the types are customized types. + std::string key_type_name; + std::string value_type_name; + + MapField() : is_map_field(false) {} + }; + // Desugar the map syntax to generate a nested map entry message. + void GenerateMapEntry(const MapField& map_field, FieldDescriptorProto* field, + RepeatedPtrField* messages); + + // Whether fields without label default to optional fields. + bool DefaultToOptionalFields() const { + return syntax_identifier_ == "proto3"; + } + + bool ValidateEnum(const EnumDescriptorProto* proto); + + // ================================================================= + + io::Tokenizer* input_; + io::ErrorCollector* error_collector_; + SourceCodeInfo* source_code_info_; + SourceLocationTable* source_location_table_; // legacy + bool had_errors_; + bool require_syntax_identifier_; + bool stop_after_syntax_identifier_; + std::string syntax_identifier_; + + // Leading doc comments for the next declaration. These are not complete + // yet; use ConsumeEndOfDeclaration() to get the complete comments. + std::string upcoming_doc_comments_; + + // Detached comments are not connected to any syntax entities. Elements in + // this vector are paragraphs of comments separated by empty lines. The + // detached comments will be put into the leading_detached_comments field for + // the next element (See SourceCodeInfo.Location in descriptor.proto), when + // ConsumeEndOfDeclaration() is called. + std::vector upcoming_detached_comments_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Parser); +}; + +// A table mapping (descriptor, ErrorLocation) pairs -- as reported by +// DescriptorPool when validating descriptors -- to line and column numbers +// within the original source code. +// +// This is semi-obsolete: FileDescriptorProto.source_code_info now contains +// far more complete information about source locations. However, as of this +// writing you still need to use SourceLocationTable when integrating with +// DescriptorPool. +class PROTOBUF_EXPORT SourceLocationTable { + public: + SourceLocationTable(); + ~SourceLocationTable(); + + // Finds the precise location of the given error and fills in *line and + // *column with the line and column numbers. If not found, sets *line to + // -1 and *column to 0 (since line = -1 is used to mean "error has no exact + // location" in the ErrorCollector interface). Returns true if found, false + // otherwise. + bool Find(const Message* descriptor, + DescriptorPool::ErrorCollector::ErrorLocation location, int* line, + int* column) const; + bool FindImport(const Message* descriptor, const std::string& name, int* line, + int* column) const; + + // Adds a location to the table. + void Add(const Message* descriptor, + DescriptorPool::ErrorCollector::ErrorLocation location, int line, + int column); + void AddImport(const Message* descriptor, const std::string& name, int line, + int column); + + // Clears the contents of the table. + void Clear(); + + private: + typedef std::map< + std::pair, + std::pair > + LocationMap; + LocationMap location_map_; + std::map, std::pair > + import_location_map_; +}; + +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_PARSER_H__ diff --git a/external/include/google/protobuf/compiler/php/php_generator.h b/external/include/google/protobuf/compiler/php/php_generator.h new file mode 100644 index 0000000..17cb59c --- /dev/null +++ b/external/include/google/protobuf/compiler/php/php_generator.h @@ -0,0 +1,92 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_COMPILER_PHP_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_PHP_GENERATOR_H__ + +#include +#include + +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace php { + +struct Options; + +class PROTOC_EXPORT Generator : public CodeGenerator { + public: + virtual bool Generate( + const FileDescriptor* file, + const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const override; + + bool GenerateAll(const std::vector& files, + const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const override; + + uint64_t GetSupportedFeatures() const override { + return FEATURE_PROTO3_OPTIONAL; + } + + private: + bool Generate( + const FileDescriptor* file, + const Options& options, + GeneratorContext* generator_context, + std::string* error) const; +}; + +// To skip reserved keywords in php, some generated classname are prefixed. +// Other code generators may need following API to figure out the actual +// classname. +PROTOC_EXPORT std::string GeneratedClassName(const Descriptor* desc); +PROTOC_EXPORT std::string GeneratedClassName(const EnumDescriptor* desc); +PROTOC_EXPORT std::string GeneratedClassName(const ServiceDescriptor* desc); + +inline bool IsWrapperType(const FieldDescriptor* descriptor) { + return descriptor->cpp_type() == FieldDescriptor::CPPTYPE_MESSAGE && + descriptor->message_type()->file()->name() == "google/protobuf/wrappers.proto"; +} + +} // namespace php +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_PHP_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/plugin.h b/external/include/google/protobuf/compiler/plugin.h new file mode 100644 index 0000000..de581c1 --- /dev/null +++ b/external/include/google/protobuf/compiler/plugin.h @@ -0,0 +1,94 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// +// Front-end for protoc code generator plugins written in C++. +// +// To implement a protoc plugin in C++, simply write an implementation of +// CodeGenerator, then create a main() function like: +// int main(int argc, char* argv[]) { +// MyCodeGenerator generator; +// return google::protobuf::compiler::PluginMain(argc, argv, &generator); +// } +// You must link your plugin against libprotobuf and libprotoc. +// +// The core part of PluginMain is to invoke the given CodeGenerator on a +// CodeGeneratorRequest to generate a CodeGeneratorResponse. This part is +// abstracted out and made into function GenerateCode so that it can be reused, +// for example, to implement a variant of PluginMain that does some +// preprocessing on the input CodeGeneratorRequest before feeding the request +// to the given code generator. +// +// To get protoc to use the plugin, do one of the following: +// * Place the plugin binary somewhere in the PATH and give it the name +// "protoc-gen-NAME" (replacing "NAME" with the name of your plugin). If you +// then invoke protoc with the parameter --NAME_out=OUT_DIR (again, replace +// "NAME" with your plugin's name), protoc will invoke your plugin to generate +// the output, which will be placed in OUT_DIR. +// * Place the plugin binary anywhere, with any name, and pass the --plugin +// parameter to protoc to direct it to your plugin like so: +// protoc --plugin=protoc-gen-NAME=path/to/mybinary --NAME_out=OUT_DIR +// On Windows, make sure to include the .exe suffix: +// protoc --plugin=protoc-gen-NAME=path/to/mybinary.exe --NAME_out=OUT_DIR + +#ifndef GOOGLE_PROTOBUF_COMPILER_PLUGIN_H__ +#define GOOGLE_PROTOBUF_COMPILER_PLUGIN_H__ + +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { + +class CodeGenerator; // code_generator.h +class CodeGeneratorRequest; +class CodeGeneratorResponse; + +// Implements main() for a protoc plugin exposing the given code generator. +PROTOC_EXPORT int PluginMain(int argc, char* argv[], + const CodeGenerator* generator); + +// Generates code using the given code generator. Returns true if the code +// generation is successful. If the code generation fails, error_msg may be +// populated to describe the failure cause. +bool GenerateCode(const CodeGeneratorRequest& request, + const CodeGenerator& generator, + CodeGeneratorResponse* response, std::string* error_msg); + +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_PLUGIN_H__ diff --git a/external/include/google/protobuf/compiler/plugin.pb.h b/external/include/google/protobuf/compiler/plugin.pb.h new file mode 100644 index 0000000..e1ede97 --- /dev/null +++ b/external/include/google/protobuf/compiler/plugin.pb.h @@ -0,0 +1,1815 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/compiler/plugin.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fcompiler_2fplugin_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fcompiler_2fplugin_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fcompiler_2fplugin_2eproto PROTOC_EXPORT +#ifdef major +#undef major +#endif +#ifdef minor +#undef minor +#endif +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOC_EXPORT TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOC_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto; +PROTOBUF_NAMESPACE_OPEN +namespace compiler { +class CodeGeneratorRequest; +struct CodeGeneratorRequestDefaultTypeInternal; +PROTOC_EXPORT extern CodeGeneratorRequestDefaultTypeInternal _CodeGeneratorRequest_default_instance_; +class CodeGeneratorResponse; +struct CodeGeneratorResponseDefaultTypeInternal; +PROTOC_EXPORT extern CodeGeneratorResponseDefaultTypeInternal _CodeGeneratorResponse_default_instance_; +class CodeGeneratorResponse_File; +struct CodeGeneratorResponse_FileDefaultTypeInternal; +PROTOC_EXPORT extern CodeGeneratorResponse_FileDefaultTypeInternal _CodeGeneratorResponse_File_default_instance_; +class Version; +struct VersionDefaultTypeInternal; +PROTOC_EXPORT extern VersionDefaultTypeInternal _Version_default_instance_; +} // namespace compiler +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOC_EXPORT PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorRequest* Arena::CreateMaybeMessage(Arena*); +template<> PROTOC_EXPORT PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse* Arena::CreateMaybeMessage(Arena*); +template<> PROTOC_EXPORT PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* Arena::CreateMaybeMessage(Arena*); +template<> PROTOC_EXPORT PROTOBUF_NAMESPACE_ID::compiler::Version* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +namespace compiler { + +enum CodeGeneratorResponse_Feature : int { + CodeGeneratorResponse_Feature_FEATURE_NONE = 0, + CodeGeneratorResponse_Feature_FEATURE_PROTO3_OPTIONAL = 1 +}; +PROTOC_EXPORT bool CodeGeneratorResponse_Feature_IsValid(int value); +constexpr CodeGeneratorResponse_Feature CodeGeneratorResponse_Feature_Feature_MIN = CodeGeneratorResponse_Feature_FEATURE_NONE; +constexpr CodeGeneratorResponse_Feature CodeGeneratorResponse_Feature_Feature_MAX = CodeGeneratorResponse_Feature_FEATURE_PROTO3_OPTIONAL; +constexpr int CodeGeneratorResponse_Feature_Feature_ARRAYSIZE = CodeGeneratorResponse_Feature_Feature_MAX + 1; + +PROTOC_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CodeGeneratorResponse_Feature_descriptor(); +template +inline const std::string& CodeGeneratorResponse_Feature_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function CodeGeneratorResponse_Feature_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + CodeGeneratorResponse_Feature_descriptor(), enum_t_value); +} +inline bool CodeGeneratorResponse_Feature_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, CodeGeneratorResponse_Feature* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + CodeGeneratorResponse_Feature_descriptor(), name, value); +} +// =================================================================== + +class PROTOC_EXPORT Version final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.compiler.Version) */ { + public: + inline Version() : Version(nullptr) {} + ~Version() override; + explicit constexpr Version(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Version(const Version& from); + Version(Version&& from) noexcept + : Version() { + *this = ::std::move(from); + } + + inline Version& operator=(const Version& from) { + CopyFrom(from); + return *this; + } + inline Version& operator=(Version&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Version& default_instance() { + return *internal_default_instance(); + } + static inline const Version* internal_default_instance() { + return reinterpret_cast( + &_Version_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(Version& a, Version& b) { + a.Swap(&b); + } + inline void Swap(Version* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Version* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Version* New() const final { + return new Version(); + } + + Version* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Version& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Version& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Version* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.compiler.Version"; + } + protected: + explicit Version(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSuffixFieldNumber = 4, + kMajorFieldNumber = 1, + kMinorFieldNumber = 2, + kPatchFieldNumber = 3, + }; + // optional string suffix = 4; + bool has_suffix() const; + private: + bool _internal_has_suffix() const; + public: + void clear_suffix(); + const std::string& suffix() const; + template + void set_suffix(ArgT0&& arg0, ArgT... args); + std::string* mutable_suffix(); + PROTOBUF_MUST_USE_RESULT std::string* release_suffix(); + void set_allocated_suffix(std::string* suffix); + private: + const std::string& _internal_suffix() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_suffix(const std::string& value); + std::string* _internal_mutable_suffix(); + public: + + // optional int32 major = 1; + bool has_major() const; + private: + bool _internal_has_major() const; + public: + void clear_major(); + ::PROTOBUF_NAMESPACE_ID::int32 major() const; + void set_major(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_major() const; + void _internal_set_major(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional int32 minor = 2; + bool has_minor() const; + private: + bool _internal_has_minor() const; + public: + void clear_minor(); + ::PROTOBUF_NAMESPACE_ID::int32 minor() const; + void set_minor(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_minor() const; + void _internal_set_minor(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional int32 patch = 3; + bool has_patch() const; + private: + bool _internal_has_patch() const; + public: + void clear_patch(); + ::PROTOBUF_NAMESPACE_ID::int32 patch() const; + void set_patch(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_patch() const; + void _internal_set_patch(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.compiler.Version) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr suffix_; + ::PROTOBUF_NAMESPACE_ID::int32 major_; + ::PROTOBUF_NAMESPACE_ID::int32 minor_; + ::PROTOBUF_NAMESPACE_ID::int32 patch_; + friend struct ::TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOC_EXPORT CodeGeneratorRequest final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.compiler.CodeGeneratorRequest) */ { + public: + inline CodeGeneratorRequest() : CodeGeneratorRequest(nullptr) {} + ~CodeGeneratorRequest() override; + explicit constexpr CodeGeneratorRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + CodeGeneratorRequest(const CodeGeneratorRequest& from); + CodeGeneratorRequest(CodeGeneratorRequest&& from) noexcept + : CodeGeneratorRequest() { + *this = ::std::move(from); + } + + inline CodeGeneratorRequest& operator=(const CodeGeneratorRequest& from) { + CopyFrom(from); + return *this; + } + inline CodeGeneratorRequest& operator=(CodeGeneratorRequest&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CodeGeneratorRequest& default_instance() { + return *internal_default_instance(); + } + static inline const CodeGeneratorRequest* internal_default_instance() { + return reinterpret_cast( + &_CodeGeneratorRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(CodeGeneratorRequest& a, CodeGeneratorRequest& b) { + a.Swap(&b); + } + inline void Swap(CodeGeneratorRequest* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CodeGeneratorRequest* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline CodeGeneratorRequest* New() const final { + return new CodeGeneratorRequest(); + } + + CodeGeneratorRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const CodeGeneratorRequest& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const CodeGeneratorRequest& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(CodeGeneratorRequest* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.compiler.CodeGeneratorRequest"; + } + protected: + explicit CodeGeneratorRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFileToGenerateFieldNumber = 1, + kProtoFileFieldNumber = 15, + kParameterFieldNumber = 2, + kCompilerVersionFieldNumber = 3, + }; + // repeated string file_to_generate = 1; + int file_to_generate_size() const; + private: + int _internal_file_to_generate_size() const; + public: + void clear_file_to_generate(); + const std::string& file_to_generate(int index) const; + std::string* mutable_file_to_generate(int index); + void set_file_to_generate(int index, const std::string& value); + void set_file_to_generate(int index, std::string&& value); + void set_file_to_generate(int index, const char* value); + void set_file_to_generate(int index, const char* value, size_t size); + std::string* add_file_to_generate(); + void add_file_to_generate(const std::string& value); + void add_file_to_generate(std::string&& value); + void add_file_to_generate(const char* value); + void add_file_to_generate(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& file_to_generate() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_file_to_generate(); + private: + const std::string& _internal_file_to_generate(int index) const; + std::string* _internal_add_file_to_generate(); + public: + + // repeated .google.protobuf.FileDescriptorProto proto_file = 15; + int proto_file_size() const; + private: + int _internal_proto_file_size() const; + public: + void clear_proto_file(); + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* mutable_proto_file(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >* + mutable_proto_file(); + private: + const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& _internal_proto_file(int index) const; + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* _internal_add_proto_file(); + public: + const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& proto_file(int index) const; + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* add_proto_file(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >& + proto_file() const; + + // optional string parameter = 2; + bool has_parameter() const; + private: + bool _internal_has_parameter() const; + public: + void clear_parameter(); + const std::string& parameter() const; + template + void set_parameter(ArgT0&& arg0, ArgT... args); + std::string* mutable_parameter(); + PROTOBUF_MUST_USE_RESULT std::string* release_parameter(); + void set_allocated_parameter(std::string* parameter); + private: + const std::string& _internal_parameter() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_parameter(const std::string& value); + std::string* _internal_mutable_parameter(); + public: + + // optional .google.protobuf.compiler.Version compiler_version = 3; + bool has_compiler_version() const; + private: + bool _internal_has_compiler_version() const; + public: + void clear_compiler_version(); + const PROTOBUF_NAMESPACE_ID::compiler::Version& compiler_version() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::compiler::Version* release_compiler_version(); + PROTOBUF_NAMESPACE_ID::compiler::Version* mutable_compiler_version(); + void set_allocated_compiler_version(PROTOBUF_NAMESPACE_ID::compiler::Version* compiler_version); + private: + const PROTOBUF_NAMESPACE_ID::compiler::Version& _internal_compiler_version() const; + PROTOBUF_NAMESPACE_ID::compiler::Version* _internal_mutable_compiler_version(); + public: + void unsafe_arena_set_allocated_compiler_version( + PROTOBUF_NAMESPACE_ID::compiler::Version* compiler_version); + PROTOBUF_NAMESPACE_ID::compiler::Version* unsafe_arena_release_compiler_version(); + + // @@protoc_insertion_point(class_scope:google.protobuf.compiler.CodeGeneratorRequest) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField file_to_generate_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto > proto_file_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr parameter_; + PROTOBUF_NAMESPACE_ID::compiler::Version* compiler_version_; + friend struct ::TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOC_EXPORT CodeGeneratorResponse_File final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.compiler.CodeGeneratorResponse.File) */ { + public: + inline CodeGeneratorResponse_File() : CodeGeneratorResponse_File(nullptr) {} + ~CodeGeneratorResponse_File() override; + explicit constexpr CodeGeneratorResponse_File(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + CodeGeneratorResponse_File(const CodeGeneratorResponse_File& from); + CodeGeneratorResponse_File(CodeGeneratorResponse_File&& from) noexcept + : CodeGeneratorResponse_File() { + *this = ::std::move(from); + } + + inline CodeGeneratorResponse_File& operator=(const CodeGeneratorResponse_File& from) { + CopyFrom(from); + return *this; + } + inline CodeGeneratorResponse_File& operator=(CodeGeneratorResponse_File&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CodeGeneratorResponse_File& default_instance() { + return *internal_default_instance(); + } + static inline const CodeGeneratorResponse_File* internal_default_instance() { + return reinterpret_cast( + &_CodeGeneratorResponse_File_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + friend void swap(CodeGeneratorResponse_File& a, CodeGeneratorResponse_File& b) { + a.Swap(&b); + } + inline void Swap(CodeGeneratorResponse_File* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CodeGeneratorResponse_File* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline CodeGeneratorResponse_File* New() const final { + return new CodeGeneratorResponse_File(); + } + + CodeGeneratorResponse_File* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const CodeGeneratorResponse_File& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const CodeGeneratorResponse_File& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(CodeGeneratorResponse_File* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.compiler.CodeGeneratorResponse.File"; + } + protected: + explicit CodeGeneratorResponse_File(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 1, + kInsertionPointFieldNumber = 2, + kContentFieldNumber = 15, + kGeneratedCodeInfoFieldNumber = 16, + }; + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional string insertion_point = 2; + bool has_insertion_point() const; + private: + bool _internal_has_insertion_point() const; + public: + void clear_insertion_point(); + const std::string& insertion_point() const; + template + void set_insertion_point(ArgT0&& arg0, ArgT... args); + std::string* mutable_insertion_point(); + PROTOBUF_MUST_USE_RESULT std::string* release_insertion_point(); + void set_allocated_insertion_point(std::string* insertion_point); + private: + const std::string& _internal_insertion_point() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_insertion_point(const std::string& value); + std::string* _internal_mutable_insertion_point(); + public: + + // optional string content = 15; + bool has_content() const; + private: + bool _internal_has_content() const; + public: + void clear_content(); + const std::string& content() const; + template + void set_content(ArgT0&& arg0, ArgT... args); + std::string* mutable_content(); + PROTOBUF_MUST_USE_RESULT std::string* release_content(); + void set_allocated_content(std::string* content); + private: + const std::string& _internal_content() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_content(const std::string& value); + std::string* _internal_mutable_content(); + public: + + // optional .google.protobuf.GeneratedCodeInfo generated_code_info = 16; + bool has_generated_code_info() const; + private: + bool _internal_has_generated_code_info() const; + public: + void clear_generated_code_info(); + const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo& generated_code_info() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* release_generated_code_info(); + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* mutable_generated_code_info(); + void set_allocated_generated_code_info(PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* generated_code_info); + private: + const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo& _internal_generated_code_info() const; + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* _internal_mutable_generated_code_info(); + public: + void unsafe_arena_set_allocated_generated_code_info( + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* generated_code_info); + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* unsafe_arena_release_generated_code_info(); + + // @@protoc_insertion_point(class_scope:google.protobuf.compiler.CodeGeneratorResponse.File) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr insertion_point_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr content_; + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* generated_code_info_; + friend struct ::TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOC_EXPORT CodeGeneratorResponse final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.compiler.CodeGeneratorResponse) */ { + public: + inline CodeGeneratorResponse() : CodeGeneratorResponse(nullptr) {} + ~CodeGeneratorResponse() override; + explicit constexpr CodeGeneratorResponse(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + CodeGeneratorResponse(const CodeGeneratorResponse& from); + CodeGeneratorResponse(CodeGeneratorResponse&& from) noexcept + : CodeGeneratorResponse() { + *this = ::std::move(from); + } + + inline CodeGeneratorResponse& operator=(const CodeGeneratorResponse& from) { + CopyFrom(from); + return *this; + } + inline CodeGeneratorResponse& operator=(CodeGeneratorResponse&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const CodeGeneratorResponse& default_instance() { + return *internal_default_instance(); + } + static inline const CodeGeneratorResponse* internal_default_instance() { + return reinterpret_cast( + &_CodeGeneratorResponse_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + friend void swap(CodeGeneratorResponse& a, CodeGeneratorResponse& b) { + a.Swap(&b); + } + inline void Swap(CodeGeneratorResponse* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(CodeGeneratorResponse* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline CodeGeneratorResponse* New() const final { + return new CodeGeneratorResponse(); + } + + CodeGeneratorResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const CodeGeneratorResponse& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const CodeGeneratorResponse& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(CodeGeneratorResponse* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.compiler.CodeGeneratorResponse"; + } + protected: + explicit CodeGeneratorResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef CodeGeneratorResponse_File File; + + typedef CodeGeneratorResponse_Feature Feature; + static constexpr Feature FEATURE_NONE = + CodeGeneratorResponse_Feature_FEATURE_NONE; + static constexpr Feature FEATURE_PROTO3_OPTIONAL = + CodeGeneratorResponse_Feature_FEATURE_PROTO3_OPTIONAL; + static inline bool Feature_IsValid(int value) { + return CodeGeneratorResponse_Feature_IsValid(value); + } + static constexpr Feature Feature_MIN = + CodeGeneratorResponse_Feature_Feature_MIN; + static constexpr Feature Feature_MAX = + CodeGeneratorResponse_Feature_Feature_MAX; + static constexpr int Feature_ARRAYSIZE = + CodeGeneratorResponse_Feature_Feature_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Feature_descriptor() { + return CodeGeneratorResponse_Feature_descriptor(); + } + template + static inline const std::string& Feature_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Feature_Name."); + return CodeGeneratorResponse_Feature_Name(enum_t_value); + } + static inline bool Feature_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Feature* value) { + return CodeGeneratorResponse_Feature_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + enum : int { + kFileFieldNumber = 15, + kErrorFieldNumber = 1, + kSupportedFeaturesFieldNumber = 2, + }; + // repeated .google.protobuf.compiler.CodeGeneratorResponse.File file = 15; + int file_size() const; + private: + int _internal_file_size() const; + public: + void clear_file(); + PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* mutable_file(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File >* + mutable_file(); + private: + const PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File& _internal_file(int index) const; + PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* _internal_add_file(); + public: + const PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File& file(int index) const; + PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* add_file(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File >& + file() const; + + // optional string error = 1; + bool has_error() const; + private: + bool _internal_has_error() const; + public: + void clear_error(); + const std::string& error() const; + template + void set_error(ArgT0&& arg0, ArgT... args); + std::string* mutable_error(); + PROTOBUF_MUST_USE_RESULT std::string* release_error(); + void set_allocated_error(std::string* error); + private: + const std::string& _internal_error() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_error(const std::string& value); + std::string* _internal_mutable_error(); + public: + + // optional uint64 supported_features = 2; + bool has_supported_features() const; + private: + bool _internal_has_supported_features() const; + public: + void clear_supported_features(); + ::PROTOBUF_NAMESPACE_ID::uint64 supported_features() const; + void set_supported_features(::PROTOBUF_NAMESPACE_ID::uint64 value); + private: + ::PROTOBUF_NAMESPACE_ID::uint64 _internal_supported_features() const; + void _internal_set_supported_features(::PROTOBUF_NAMESPACE_ID::uint64 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.compiler.CodeGeneratorResponse) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File > file_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr error_; + ::PROTOBUF_NAMESPACE_ID::uint64 supported_features_; + friend struct ::TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// Version + +// optional int32 major = 1; +inline bool Version::_internal_has_major() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool Version::has_major() const { + return _internal_has_major(); +} +inline void Version::clear_major() { + major_ = 0; + _has_bits_[0] &= ~0x00000002u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Version::_internal_major() const { + return major_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Version::major() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.Version.major) + return _internal_major(); +} +inline void Version::_internal_set_major(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000002u; + major_ = value; +} +inline void Version::set_major(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_major(value); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.Version.major) +} + +// optional int32 minor = 2; +inline bool Version::_internal_has_minor() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool Version::has_minor() const { + return _internal_has_minor(); +} +inline void Version::clear_minor() { + minor_ = 0; + _has_bits_[0] &= ~0x00000004u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Version::_internal_minor() const { + return minor_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Version::minor() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.Version.minor) + return _internal_minor(); +} +inline void Version::_internal_set_minor(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000004u; + minor_ = value; +} +inline void Version::set_minor(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_minor(value); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.Version.minor) +} + +// optional int32 patch = 3; +inline bool Version::_internal_has_patch() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + return value; +} +inline bool Version::has_patch() const { + return _internal_has_patch(); +} +inline void Version::clear_patch() { + patch_ = 0; + _has_bits_[0] &= ~0x00000008u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Version::_internal_patch() const { + return patch_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Version::patch() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.Version.patch) + return _internal_patch(); +} +inline void Version::_internal_set_patch(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000008u; + patch_ = value; +} +inline void Version::set_patch(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_patch(value); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.Version.patch) +} + +// optional string suffix = 4; +inline bool Version::_internal_has_suffix() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool Version::has_suffix() const { + return _internal_has_suffix(); +} +inline void Version::clear_suffix() { + suffix_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& Version::suffix() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.Version.suffix) + return _internal_suffix(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void Version::set_suffix(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + suffix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.Version.suffix) +} +inline std::string* Version::mutable_suffix() { + std::string* _s = _internal_mutable_suffix(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.Version.suffix) + return _s; +} +inline const std::string& Version::_internal_suffix() const { + return suffix_.Get(); +} +inline void Version::_internal_set_suffix(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + suffix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Version::_internal_mutable_suffix() { + _has_bits_[0] |= 0x00000001u; + return suffix_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Version::release_suffix() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.Version.suffix) + if (!_internal_has_suffix()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return suffix_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void Version::set_allocated_suffix(std::string* suffix) { + if (suffix != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + suffix_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), suffix, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.Version.suffix) +} + +// ------------------------------------------------------------------- + +// CodeGeneratorRequest + +// repeated string file_to_generate = 1; +inline int CodeGeneratorRequest::_internal_file_to_generate_size() const { + return file_to_generate_.size(); +} +inline int CodeGeneratorRequest::file_to_generate_size() const { + return _internal_file_to_generate_size(); +} +inline void CodeGeneratorRequest::clear_file_to_generate() { + file_to_generate_.Clear(); +} +inline std::string* CodeGeneratorRequest::add_file_to_generate() { + std::string* _s = _internal_add_file_to_generate(); + // @@protoc_insertion_point(field_add_mutable:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) + return _s; +} +inline const std::string& CodeGeneratorRequest::_internal_file_to_generate(int index) const { + return file_to_generate_.Get(index); +} +inline const std::string& CodeGeneratorRequest::file_to_generate(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) + return _internal_file_to_generate(index); +} +inline std::string* CodeGeneratorRequest::mutable_file_to_generate(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) + return file_to_generate_.Mutable(index); +} +inline void CodeGeneratorRequest::set_file_to_generate(int index, const std::string& value) { + file_to_generate_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline void CodeGeneratorRequest::set_file_to_generate(int index, std::string&& value) { + file_to_generate_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline void CodeGeneratorRequest::set_file_to_generate(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + file_to_generate_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline void CodeGeneratorRequest::set_file_to_generate(int index, const char* value, size_t size) { + file_to_generate_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline std::string* CodeGeneratorRequest::_internal_add_file_to_generate() { + return file_to_generate_.Add(); +} +inline void CodeGeneratorRequest::add_file_to_generate(const std::string& value) { + file_to_generate_.Add()->assign(value); + // @@protoc_insertion_point(field_add:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline void CodeGeneratorRequest::add_file_to_generate(std::string&& value) { + file_to_generate_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline void CodeGeneratorRequest::add_file_to_generate(const char* value) { + GOOGLE_DCHECK(value != nullptr); + file_to_generate_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline void CodeGeneratorRequest::add_file_to_generate(const char* value, size_t size) { + file_to_generate_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +CodeGeneratorRequest::file_to_generate() const { + // @@protoc_insertion_point(field_list:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) + return file_to_generate_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +CodeGeneratorRequest::mutable_file_to_generate() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.compiler.CodeGeneratorRequest.file_to_generate) + return &file_to_generate_; +} + +// optional string parameter = 2; +inline bool CodeGeneratorRequest::_internal_has_parameter() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool CodeGeneratorRequest::has_parameter() const { + return _internal_has_parameter(); +} +inline void CodeGeneratorRequest::clear_parameter() { + parameter_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& CodeGeneratorRequest::parameter() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorRequest.parameter) + return _internal_parameter(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void CodeGeneratorRequest::set_parameter(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + parameter_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorRequest.parameter) +} +inline std::string* CodeGeneratorRequest::mutable_parameter() { + std::string* _s = _internal_mutable_parameter(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorRequest.parameter) + return _s; +} +inline const std::string& CodeGeneratorRequest::_internal_parameter() const { + return parameter_.Get(); +} +inline void CodeGeneratorRequest::_internal_set_parameter(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + parameter_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorRequest::_internal_mutable_parameter() { + _has_bits_[0] |= 0x00000001u; + return parameter_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorRequest::release_parameter() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.CodeGeneratorRequest.parameter) + if (!_internal_has_parameter()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return parameter_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void CodeGeneratorRequest::set_allocated_parameter(std::string* parameter) { + if (parameter != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + parameter_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), parameter, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.CodeGeneratorRequest.parameter) +} + +// repeated .google.protobuf.FileDescriptorProto proto_file = 15; +inline int CodeGeneratorRequest::_internal_proto_file_size() const { + return proto_file_.size(); +} +inline int CodeGeneratorRequest::proto_file_size() const { + return _internal_proto_file_size(); +} +inline PROTOBUF_NAMESPACE_ID::FileDescriptorProto* CodeGeneratorRequest::mutable_proto_file(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorRequest.proto_file) + return proto_file_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >* +CodeGeneratorRequest::mutable_proto_file() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.compiler.CodeGeneratorRequest.proto_file) + return &proto_file_; +} +inline const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& CodeGeneratorRequest::_internal_proto_file(int index) const { + return proto_file_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& CodeGeneratorRequest::proto_file(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorRequest.proto_file) + return _internal_proto_file(index); +} +inline PROTOBUF_NAMESPACE_ID::FileDescriptorProto* CodeGeneratorRequest::_internal_add_proto_file() { + return proto_file_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::FileDescriptorProto* CodeGeneratorRequest::add_proto_file() { + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* _add = _internal_add_proto_file(); + // @@protoc_insertion_point(field_add:google.protobuf.compiler.CodeGeneratorRequest.proto_file) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >& +CodeGeneratorRequest::proto_file() const { + // @@protoc_insertion_point(field_list:google.protobuf.compiler.CodeGeneratorRequest.proto_file) + return proto_file_; +} + +// optional .google.protobuf.compiler.Version compiler_version = 3; +inline bool CodeGeneratorRequest::_internal_has_compiler_version() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || compiler_version_ != nullptr); + return value; +} +inline bool CodeGeneratorRequest::has_compiler_version() const { + return _internal_has_compiler_version(); +} +inline void CodeGeneratorRequest::clear_compiler_version() { + if (compiler_version_ != nullptr) compiler_version_->Clear(); + _has_bits_[0] &= ~0x00000002u; +} +inline const PROTOBUF_NAMESPACE_ID::compiler::Version& CodeGeneratorRequest::_internal_compiler_version() const { + const PROTOBUF_NAMESPACE_ID::compiler::Version* p = compiler_version_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::compiler::_Version_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::compiler::Version& CodeGeneratorRequest::compiler_version() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorRequest.compiler_version) + return _internal_compiler_version(); +} +inline void CodeGeneratorRequest::unsafe_arena_set_allocated_compiler_version( + PROTOBUF_NAMESPACE_ID::compiler::Version* compiler_version) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(compiler_version_); + } + compiler_version_ = compiler_version; + if (compiler_version) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.compiler.CodeGeneratorRequest.compiler_version) +} +inline PROTOBUF_NAMESPACE_ID::compiler::Version* CodeGeneratorRequest::release_compiler_version() { + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::compiler::Version* temp = compiler_version_; + compiler_version_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::compiler::Version* CodeGeneratorRequest::unsafe_arena_release_compiler_version() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.CodeGeneratorRequest.compiler_version) + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::compiler::Version* temp = compiler_version_; + compiler_version_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::compiler::Version* CodeGeneratorRequest::_internal_mutable_compiler_version() { + _has_bits_[0] |= 0x00000002u; + if (compiler_version_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + compiler_version_ = p; + } + return compiler_version_; +} +inline PROTOBUF_NAMESPACE_ID::compiler::Version* CodeGeneratorRequest::mutable_compiler_version() { + PROTOBUF_NAMESPACE_ID::compiler::Version* _msg = _internal_mutable_compiler_version(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorRequest.compiler_version) + return _msg; +} +inline void CodeGeneratorRequest::set_allocated_compiler_version(PROTOBUF_NAMESPACE_ID::compiler::Version* compiler_version) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete compiler_version_; + } + if (compiler_version) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(compiler_version); + if (message_arena != submessage_arena) { + compiler_version = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, compiler_version, submessage_arena); + } + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + compiler_version_ = compiler_version; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.CodeGeneratorRequest.compiler_version) +} + +// ------------------------------------------------------------------- + +// CodeGeneratorResponse_File + +// optional string name = 1; +inline bool CodeGeneratorResponse_File::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool CodeGeneratorResponse_File::has_name() const { + return _internal_has_name(); +} +inline void CodeGeneratorResponse_File::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& CodeGeneratorResponse_File::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorResponse.File.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void CodeGeneratorResponse_File::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorResponse.File.name) +} +inline std::string* CodeGeneratorResponse_File::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorResponse.File.name) + return _s; +} +inline const std::string& CodeGeneratorResponse_File::_internal_name() const { + return name_.Get(); +} +inline void CodeGeneratorResponse_File::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse_File::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse_File::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.CodeGeneratorResponse.File.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void CodeGeneratorResponse_File::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.CodeGeneratorResponse.File.name) +} + +// optional string insertion_point = 2; +inline bool CodeGeneratorResponse_File::_internal_has_insertion_point() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool CodeGeneratorResponse_File::has_insertion_point() const { + return _internal_has_insertion_point(); +} +inline void CodeGeneratorResponse_File::clear_insertion_point() { + insertion_point_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000002u; +} +inline const std::string& CodeGeneratorResponse_File::insertion_point() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorResponse.File.insertion_point) + return _internal_insertion_point(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void CodeGeneratorResponse_File::set_insertion_point(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000002u; + insertion_point_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorResponse.File.insertion_point) +} +inline std::string* CodeGeneratorResponse_File::mutable_insertion_point() { + std::string* _s = _internal_mutable_insertion_point(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorResponse.File.insertion_point) + return _s; +} +inline const std::string& CodeGeneratorResponse_File::_internal_insertion_point() const { + return insertion_point_.Get(); +} +inline void CodeGeneratorResponse_File::_internal_set_insertion_point(const std::string& value) { + _has_bits_[0] |= 0x00000002u; + insertion_point_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse_File::_internal_mutable_insertion_point() { + _has_bits_[0] |= 0x00000002u; + return insertion_point_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse_File::release_insertion_point() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.CodeGeneratorResponse.File.insertion_point) + if (!_internal_has_insertion_point()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000002u; + return insertion_point_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void CodeGeneratorResponse_File::set_allocated_insertion_point(std::string* insertion_point) { + if (insertion_point != nullptr) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + insertion_point_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), insertion_point, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.CodeGeneratorResponse.File.insertion_point) +} + +// optional string content = 15; +inline bool CodeGeneratorResponse_File::_internal_has_content() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool CodeGeneratorResponse_File::has_content() const { + return _internal_has_content(); +} +inline void CodeGeneratorResponse_File::clear_content() { + content_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000004u; +} +inline const std::string& CodeGeneratorResponse_File::content() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorResponse.File.content) + return _internal_content(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void CodeGeneratorResponse_File::set_content(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000004u; + content_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorResponse.File.content) +} +inline std::string* CodeGeneratorResponse_File::mutable_content() { + std::string* _s = _internal_mutable_content(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorResponse.File.content) + return _s; +} +inline const std::string& CodeGeneratorResponse_File::_internal_content() const { + return content_.Get(); +} +inline void CodeGeneratorResponse_File::_internal_set_content(const std::string& value) { + _has_bits_[0] |= 0x00000004u; + content_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse_File::_internal_mutable_content() { + _has_bits_[0] |= 0x00000004u; + return content_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse_File::release_content() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.CodeGeneratorResponse.File.content) + if (!_internal_has_content()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000004u; + return content_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void CodeGeneratorResponse_File::set_allocated_content(std::string* content) { + if (content != nullptr) { + _has_bits_[0] |= 0x00000004u; + } else { + _has_bits_[0] &= ~0x00000004u; + } + content_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), content, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.CodeGeneratorResponse.File.content) +} + +// optional .google.protobuf.GeneratedCodeInfo generated_code_info = 16; +inline bool CodeGeneratorResponse_File::_internal_has_generated_code_info() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || generated_code_info_ != nullptr); + return value; +} +inline bool CodeGeneratorResponse_File::has_generated_code_info() const { + return _internal_has_generated_code_info(); +} +inline const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo& CodeGeneratorResponse_File::_internal_generated_code_info() const { + const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* p = generated_code_info_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_GeneratedCodeInfo_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo& CodeGeneratorResponse_File::generated_code_info() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorResponse.File.generated_code_info) + return _internal_generated_code_info(); +} +inline void CodeGeneratorResponse_File::unsafe_arena_set_allocated_generated_code_info( + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* generated_code_info) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(generated_code_info_); + } + generated_code_info_ = generated_code_info; + if (generated_code_info) { + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.compiler.CodeGeneratorResponse.File.generated_code_info) +} +inline PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* CodeGeneratorResponse_File::release_generated_code_info() { + _has_bits_[0] &= ~0x00000008u; + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* temp = generated_code_info_; + generated_code_info_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* CodeGeneratorResponse_File::unsafe_arena_release_generated_code_info() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.CodeGeneratorResponse.File.generated_code_info) + _has_bits_[0] &= ~0x00000008u; + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* temp = generated_code_info_; + generated_code_info_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* CodeGeneratorResponse_File::_internal_mutable_generated_code_info() { + _has_bits_[0] |= 0x00000008u; + if (generated_code_info_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + generated_code_info_ = p; + } + return generated_code_info_; +} +inline PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* CodeGeneratorResponse_File::mutable_generated_code_info() { + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* _msg = _internal_mutable_generated_code_info(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorResponse.File.generated_code_info) + return _msg; +} +inline void CodeGeneratorResponse_File::set_allocated_generated_code_info(PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* generated_code_info) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(generated_code_info_); + } + if (generated_code_info) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper< + ::PROTOBUF_NAMESPACE_ID::MessageLite>::GetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(generated_code_info)); + if (message_arena != submessage_arena) { + generated_code_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, generated_code_info, submessage_arena); + } + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + generated_code_info_ = generated_code_info; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.CodeGeneratorResponse.File.generated_code_info) +} + +// ------------------------------------------------------------------- + +// CodeGeneratorResponse + +// optional string error = 1; +inline bool CodeGeneratorResponse::_internal_has_error() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool CodeGeneratorResponse::has_error() const { + return _internal_has_error(); +} +inline void CodeGeneratorResponse::clear_error() { + error_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& CodeGeneratorResponse::error() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorResponse.error) + return _internal_error(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void CodeGeneratorResponse::set_error(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + error_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorResponse.error) +} +inline std::string* CodeGeneratorResponse::mutable_error() { + std::string* _s = _internal_mutable_error(); + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorResponse.error) + return _s; +} +inline const std::string& CodeGeneratorResponse::_internal_error() const { + return error_.Get(); +} +inline void CodeGeneratorResponse::_internal_set_error(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + error_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse::_internal_mutable_error() { + _has_bits_[0] |= 0x00000001u; + return error_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* CodeGeneratorResponse::release_error() { + // @@protoc_insertion_point(field_release:google.protobuf.compiler.CodeGeneratorResponse.error) + if (!_internal_has_error()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return error_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void CodeGeneratorResponse::set_allocated_error(std::string* error) { + if (error != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + error_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), error, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.compiler.CodeGeneratorResponse.error) +} + +// optional uint64 supported_features = 2; +inline bool CodeGeneratorResponse::_internal_has_supported_features() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool CodeGeneratorResponse::has_supported_features() const { + return _internal_has_supported_features(); +} +inline void CodeGeneratorResponse::clear_supported_features() { + supported_features_ = uint64_t{0u}; + _has_bits_[0] &= ~0x00000002u; +} +inline ::PROTOBUF_NAMESPACE_ID::uint64 CodeGeneratorResponse::_internal_supported_features() const { + return supported_features_; +} +inline ::PROTOBUF_NAMESPACE_ID::uint64 CodeGeneratorResponse::supported_features() const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorResponse.supported_features) + return _internal_supported_features(); +} +inline void CodeGeneratorResponse::_internal_set_supported_features(::PROTOBUF_NAMESPACE_ID::uint64 value) { + _has_bits_[0] |= 0x00000002u; + supported_features_ = value; +} +inline void CodeGeneratorResponse::set_supported_features(::PROTOBUF_NAMESPACE_ID::uint64 value) { + _internal_set_supported_features(value); + // @@protoc_insertion_point(field_set:google.protobuf.compiler.CodeGeneratorResponse.supported_features) +} + +// repeated .google.protobuf.compiler.CodeGeneratorResponse.File file = 15; +inline int CodeGeneratorResponse::_internal_file_size() const { + return file_.size(); +} +inline int CodeGeneratorResponse::file_size() const { + return _internal_file_size(); +} +inline void CodeGeneratorResponse::clear_file() { + file_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* CodeGeneratorResponse::mutable_file(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.compiler.CodeGeneratorResponse.file) + return file_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File >* +CodeGeneratorResponse::mutable_file() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.compiler.CodeGeneratorResponse.file) + return &file_; +} +inline const PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File& CodeGeneratorResponse::_internal_file(int index) const { + return file_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File& CodeGeneratorResponse::file(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.compiler.CodeGeneratorResponse.file) + return _internal_file(index); +} +inline PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* CodeGeneratorResponse::_internal_add_file() { + return file_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* CodeGeneratorResponse::add_file() { + PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File* _add = _internal_add_file(); + // @@protoc_insertion_point(field_add:google.protobuf.compiler.CodeGeneratorResponse.file) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_File >& +CodeGeneratorResponse::file() const { + // @@protoc_insertion_point(field_list:google.protobuf.compiler.CodeGeneratorResponse.file) + return file_; +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +} // namespace compiler +PROTOBUF_NAMESPACE_CLOSE + +PROTOBUF_NAMESPACE_OPEN + +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_Feature> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_Feature>() { + return PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse_Feature_descriptor(); +} + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fcompiler_2fplugin_2eproto diff --git a/external/include/google/protobuf/compiler/plugin.proto b/external/include/google/protobuf/compiler/plugin.proto new file mode 100644 index 0000000..9242aac --- /dev/null +++ b/external/include/google/protobuf/compiler/plugin.proto @@ -0,0 +1,183 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// +// WARNING: The plugin interface is currently EXPERIMENTAL and is subject to +// change. +// +// protoc (aka the Protocol Compiler) can be extended via plugins. A plugin is +// just a program that reads a CodeGeneratorRequest from stdin and writes a +// CodeGeneratorResponse to stdout. +// +// Plugins written using C++ can use google/protobuf/compiler/plugin.h instead +// of dealing with the raw protocol defined here. +// +// A plugin executable needs only to be placed somewhere in the path. The +// plugin should be named "protoc-gen-$NAME", and will then be used when the +// flag "--${NAME}_out" is passed to protoc. + +syntax = "proto2"; + +package google.protobuf.compiler; +option java_package = "com.google.protobuf.compiler"; +option java_outer_classname = "PluginProtos"; + +option go_package = "google.golang.org/protobuf/types/pluginpb"; + +import "google/protobuf/descriptor.proto"; + +// The version number of protocol compiler. +message Version { + optional int32 major = 1; + optional int32 minor = 2; + optional int32 patch = 3; + // A suffix for alpha, beta or rc release, e.g., "alpha-1", "rc2". It should + // be empty for mainline stable releases. + optional string suffix = 4; +} + +// An encoded CodeGeneratorRequest is written to the plugin's stdin. +message CodeGeneratorRequest { + // The .proto files that were explicitly listed on the command-line. The + // code generator should generate code only for these files. Each file's + // descriptor will be included in proto_file, below. + repeated string file_to_generate = 1; + + // The generator parameter passed on the command-line. + optional string parameter = 2; + + // FileDescriptorProtos for all files in files_to_generate and everything + // they import. The files will appear in topological order, so each file + // appears before any file that imports it. + // + // protoc guarantees that all proto_files will be written after + // the fields above, even though this is not technically guaranteed by the + // protobuf wire format. This theoretically could allow a plugin to stream + // in the FileDescriptorProtos and handle them one by one rather than read + // the entire set into memory at once. However, as of this writing, this + // is not similarly optimized on protoc's end -- it will store all fields in + // memory at once before sending them to the plugin. + // + // Type names of fields and extensions in the FileDescriptorProto are always + // fully qualified. + repeated FileDescriptorProto proto_file = 15; + + // The version number of protocol compiler. + optional Version compiler_version = 3; + +} + +// The plugin writes an encoded CodeGeneratorResponse to stdout. +message CodeGeneratorResponse { + // Error message. If non-empty, code generation failed. The plugin process + // should exit with status code zero even if it reports an error in this way. + // + // This should be used to indicate errors in .proto files which prevent the + // code generator from generating correct code. Errors which indicate a + // problem in protoc itself -- such as the input CodeGeneratorRequest being + // unparseable -- should be reported by writing a message to stderr and + // exiting with a non-zero status code. + optional string error = 1; + + // A bitmask of supported features that the code generator supports. + // This is a bitwise "or" of values from the Feature enum. + optional uint64 supported_features = 2; + + // Sync with code_generator.h. + enum Feature { + FEATURE_NONE = 0; + FEATURE_PROTO3_OPTIONAL = 1; + } + + // Represents a single generated file. + message File { + // The file name, relative to the output directory. The name must not + // contain "." or ".." components and must be relative, not be absolute (so, + // the file cannot lie outside the output directory). "/" must be used as + // the path separator, not "\". + // + // If the name is omitted, the content will be appended to the previous + // file. This allows the generator to break large files into small chunks, + // and allows the generated text to be streamed back to protoc so that large + // files need not reside completely in memory at one time. Note that as of + // this writing protoc does not optimize for this -- it will read the entire + // CodeGeneratorResponse before writing files to disk. + optional string name = 1; + + // If non-empty, indicates that the named file should already exist, and the + // content here is to be inserted into that file at a defined insertion + // point. This feature allows a code generator to extend the output + // produced by another code generator. The original generator may provide + // insertion points by placing special annotations in the file that look + // like: + // @@protoc_insertion_point(NAME) + // The annotation can have arbitrary text before and after it on the line, + // which allows it to be placed in a comment. NAME should be replaced with + // an identifier naming the point -- this is what other generators will use + // as the insertion_point. Code inserted at this point will be placed + // immediately above the line containing the insertion point (thus multiple + // insertions to the same point will come out in the order they were added). + // The double-@ is intended to make it unlikely that the generated code + // could contain things that look like insertion points by accident. + // + // For example, the C++ code generator places the following line in the + // .pb.h files that it generates: + // // @@protoc_insertion_point(namespace_scope) + // This line appears within the scope of the file's package namespace, but + // outside of any particular class. Another plugin can then specify the + // insertion_point "namespace_scope" to generate additional classes or + // other declarations that should be placed in this scope. + // + // Note that if the line containing the insertion point begins with + // whitespace, the same whitespace will be added to every line of the + // inserted text. This is useful for languages like Python, where + // indentation matters. In these languages, the insertion point comment + // should be indented the same amount as any inserted code will need to be + // in order to work correctly in that context. + // + // The code generator that generates the initial file and the one which + // inserts into it must both run as part of a single invocation of protoc. + // Code generators are executed in the order in which they appear on the + // command line. + // + // If |insertion_point| is present, |name| must also be present. + optional string insertion_point = 2; + + // The file contents. + optional string content = 15; + + // Information describing the file content being inserted. If an insertion + // point is used, this information will be appropriately offset and inserted + // into the code generation metadata for the generated files. + optional GeneratedCodeInfo generated_code_info = 16; + } + repeated File file = 15; +} diff --git a/external/include/google/protobuf/compiler/python/python_generator.h b/external/include/google/protobuf/compiler/python/python_generator.h new file mode 100644 index 0000000..ed1c995 --- /dev/null +++ b/external/include/google/protobuf/compiler/python/python_generator.h @@ -0,0 +1,182 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: robinson@google.com (Will Robinson) +// +// Generates Python code for a given .proto file. + +#ifndef GOOGLE_PROTOBUF_COMPILER_PYTHON_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_PYTHON_GENERATOR_H__ + +#include + +#include +#include + +#include + +namespace google { +namespace protobuf { + +class Descriptor; +class EnumDescriptor; +class EnumValueDescriptor; +class FieldDescriptor; +class OneofDescriptor; +class ServiceDescriptor; + +namespace io { +class Printer; +} + +namespace compiler { +namespace python { + +// CodeGenerator implementation for generated Python protocol buffer classes. +// If you create your own protocol compiler binary and you want it to support +// Python output, you can do so by registering an instance of this +// CodeGenerator with the CommandLineInterface in your main() function. +class PROTOC_EXPORT Generator : public CodeGenerator { + public: + Generator(); + virtual ~Generator(); + + // CodeGenerator methods. + bool Generate(const FileDescriptor* file, const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const override; + + uint64_t GetSupportedFeatures() const override; + + private: + void PrintImports() const; + void PrintFileDescriptor() const; + void PrintTopLevelEnums() const; + void PrintAllNestedEnumsInFile() const; + void PrintNestedEnums(const Descriptor& descriptor) const; + void PrintEnum(const EnumDescriptor& enum_descriptor) const; + + void PrintTopLevelExtensions() const; + + void PrintFieldDescriptor(const FieldDescriptor& field, + bool is_extension) const; + void PrintFieldDescriptorsInDescriptor( + const Descriptor& message_descriptor, bool is_extension, + const std::string& list_variable_name, int (Descriptor::*CountFn)() const, + const FieldDescriptor* (Descriptor::*GetterFn)(int)const) const; + void PrintFieldsInDescriptor(const Descriptor& message_descriptor) const; + void PrintExtensionsInDescriptor(const Descriptor& message_descriptor) const; + void PrintMessageDescriptors() const; + void PrintDescriptor(const Descriptor& message_descriptor) const; + void PrintNestedDescriptors(const Descriptor& containing_descriptor) const; + + void PrintMessages() const; + void PrintMessage(const Descriptor& message_descriptor, + const std::string& prefix, + std::vector* to_register, + bool is_nested) const; + void PrintNestedMessages(const Descriptor& containing_descriptor, + const std::string& prefix, + std::vector* to_register) const; + + void FixForeignFieldsInDescriptors() const; + void FixForeignFieldsInDescriptor( + const Descriptor& descriptor, + const Descriptor* containing_descriptor) const; + void FixForeignFieldsInField(const Descriptor* containing_type, + const FieldDescriptor& field, + const std::string& python_dict_name) const; + void AddMessageToFileDescriptor(const Descriptor& descriptor) const; + void AddEnumToFileDescriptor(const EnumDescriptor& descriptor) const; + void AddExtensionToFileDescriptor(const FieldDescriptor& descriptor) const; + void AddServiceToFileDescriptor(const ServiceDescriptor& descriptor) const; + std::string FieldReferencingExpression( + const Descriptor* containing_type, const FieldDescriptor& field, + const std::string& python_dict_name) const; + template + void FixContainingTypeInDescriptor( + const DescriptorT& descriptor, + const Descriptor* containing_descriptor) const; + + void FixForeignFieldsInExtensions() const; + void FixForeignFieldsInExtension( + const FieldDescriptor& extension_field) const; + void FixForeignFieldsInNestedExtensions(const Descriptor& descriptor) const; + + void PrintServices() const; + void PrintServiceDescriptors() const; + void PrintServiceDescriptor(const ServiceDescriptor& descriptor) const; + void PrintServiceClass(const ServiceDescriptor& descriptor) const; + void PrintServiceStub(const ServiceDescriptor& descriptor) const; + void PrintDescriptorKeyAndModuleName( + const ServiceDescriptor& descriptor) const; + + void PrintEnumValueDescriptor(const EnumValueDescriptor& descriptor) const; + std::string OptionsValue(const std::string& serialized_options) const; + bool GeneratingDescriptorProto() const; + + template + std::string ModuleLevelDescriptorName(const DescriptorT& descriptor) const; + std::string ModuleLevelMessageName(const Descriptor& descriptor) const; + std::string ModuleLevelServiceDescriptorName( + const ServiceDescriptor& descriptor) const; + + template + void PrintSerializedPbInterval(const DescriptorT& descriptor, + DescriptorProtoT& proto) const; + + void FixAllDescriptorOptions() const; + void FixOptionsForField(const FieldDescriptor& field) const; + void FixOptionsForOneof(const OneofDescriptor& oneof) const; + void FixOptionsForEnum(const EnumDescriptor& descriptor) const; + void FixOptionsForMessage(const Descriptor& descriptor) const; + + void CopyPublicDependenciesAliases(const std::string& copy_from, + const FileDescriptor* file) const; + + // Very coarse-grained lock to ensure that Generate() is reentrant. + // Guards file_, printer_ and file_descriptor_serialized_. + mutable Mutex mutex_; + mutable const FileDescriptor* file_; // Set in Generate(). Under mutex_. + mutable std::string file_descriptor_serialized_; + mutable io::Printer* printer_; // Set in Generate(). Under mutex_. + mutable bool pure_python_workable_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Generator); +}; + +} // namespace python +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_PYTHON_GENERATOR_H__ diff --git a/external/include/google/protobuf/compiler/ruby/ruby_generator.h b/external/include/google/protobuf/compiler/ruby/ruby_generator.h new file mode 100644 index 0000000..647bb83 --- /dev/null +++ b/external/include/google/protobuf/compiler/ruby/ruby_generator.h @@ -0,0 +1,67 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Generates Ruby code for a given .proto file. + +#ifndef GOOGLE_PROTOBUF_COMPILER_RUBY_GENERATOR_H__ +#define GOOGLE_PROTOBUF_COMPILER_RUBY_GENERATOR_H__ + +#include + +#include + +#include + +namespace google { +namespace protobuf { +namespace compiler { +namespace ruby { + +// CodeGenerator implementation for generated Ruby protocol buffer classes. +// If you create your own protocol compiler binary and you want it to support +// Ruby output, you can do so by registering an instance of this +// CodeGenerator with the CommandLineInterface in your main() function. +class PROTOC_EXPORT Generator : public CodeGenerator { + bool Generate(const FileDescriptor* file, const std::string& parameter, + GeneratorContext* generator_context, + std::string* error) const override; + uint64_t GetSupportedFeatures() const override { + return FEATURE_PROTO3_OPTIONAL; + } +}; + +} // namespace ruby +} // namespace compiler +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMPILER_RUBY_GENERATOR_H__ diff --git a/external/include/google/protobuf/descriptor.h b/external/include/google/protobuf/descriptor.h new file mode 100644 index 0000000..0625b50 --- /dev/null +++ b/external/include/google/protobuf/descriptor.h @@ -0,0 +1,2325 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This file contains classes which describe a type of protocol message. +// You can use a message's descriptor to learn at runtime what fields +// it contains and what the types of those fields are. The Message +// interface also allows you to dynamically access and modify individual +// fields by passing the FieldDescriptor of the field you are interested +// in. +// +// Most users will not care about descriptors, because they will write +// code specific to certain protocol types and will simply use the classes +// generated by the protocol compiler directly. Advanced users who want +// to operate on arbitrary types (not known at compile time) may want to +// read descriptors in order to learn about the contents of a message. +// A very small number of users will want to construct their own +// Descriptors, either because they are implementing Message manually or +// because they are writing something like the protocol compiler. +// +// For an example of how you might use descriptors, see the code example +// at the top of message.h. + +#ifndef GOOGLE_PROTOBUF_DESCRIPTOR_H__ +#define GOOGLE_PROTOBUF_DESCRIPTOR_H__ + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +// TYPE_BOOL is defined in the MacOS's ConditionalMacros.h. +#ifdef TYPE_BOOL +#undef TYPE_BOOL +#endif // TYPE_BOOL + +#ifdef SWIG +#define PROTOBUF_EXPORT +#endif + + +namespace google { +namespace protobuf { + +// Defined in this file. +class Descriptor; +class FieldDescriptor; +class OneofDescriptor; +class EnumDescriptor; +class EnumValueDescriptor; +class ServiceDescriptor; +class MethodDescriptor; +class FileDescriptor; +class DescriptorDatabase; +class DescriptorPool; + +// Defined in descriptor.proto +class DescriptorProto; +class DescriptorProto_ExtensionRange; +class FieldDescriptorProto; +class OneofDescriptorProto; +class EnumDescriptorProto; +class EnumValueDescriptorProto; +class ServiceDescriptorProto; +class MethodDescriptorProto; +class FileDescriptorProto; +class MessageOptions; +class FieldOptions; +class OneofOptions; +class EnumOptions; +class EnumValueOptions; +class ExtensionRangeOptions; +class ServiceOptions; +class MethodOptions; +class FileOptions; +class UninterpretedOption; +class SourceCodeInfo; + +// Defined in message.h +class Message; +class Reflection; + +// Defined in descriptor.cc +class DescriptorBuilder; +class FileDescriptorTables; +struct Symbol; + +// Defined in unknown_field_set.h. +class UnknownField; + +// Defined in command_line_interface.cc +namespace compiler { +class CommandLineInterface; +namespace cpp { +// Defined in helpers.h +class Formatter; +} // namespace cpp +} // namespace compiler + +namespace descriptor_unittest { +class DescriptorTest; +} // namespace descriptor_unittest + +// Defined in printer.h +namespace io { +class Printer; +} // namespace io + +// NB, all indices are zero-based. +struct SourceLocation { + int start_line; + int end_line; + int start_column; + int end_column; + + // Doc comments found at the source location. + // See the comments in SourceCodeInfo.Location (descriptor.proto) for details. + std::string leading_comments; + std::string trailing_comments; + std::vector leading_detached_comments; +}; + +// Options when generating machine-parsable output from a descriptor with +// DebugString(). +struct DebugStringOptions { + // include original user comments as recorded in SourceLocation entries. N.B. + // that this must be |false| by default: several other pieces of code (for + // example, the C++ code generation for fields in the proto compiler) rely on + // DebugString() output being unobstructed by user comments. + bool include_comments; + // If true, elide the braced body in the debug string. + bool elide_group_body; + bool elide_oneof_body; + + DebugStringOptions() + : include_comments(false), + elide_group_body(false), + elide_oneof_body(false) { + } +}; + +// A class to handle the simplest cases of a lazily linked descriptor +// for a message type that isn't built at the time of cross linking, +// which is needed when a pool has lazily_build_dependencies_ set. +// Must be instantiated as mutable in a descriptor. +namespace internal { +class PROTOBUF_EXPORT LazyDescriptor { + public: + // Init function to be called at init time of a descriptor containing + // a LazyDescriptor. + void Init() { + descriptor_ = nullptr; + name_ = nullptr; + once_ = nullptr; + file_ = nullptr; + } + + // Sets the value of the descriptor if it is known during the descriptor + // building process. Not thread safe, should only be called during the + // descriptor build process. Should not be called after SetLazy has been + // called. + void Set(const Descriptor* descriptor); + + // Sets the information needed to lazily cross link the descriptor at a later + // time, SetLazy is not thread safe, should be called only once at descriptor + // build time if the symbol wasn't found and building of the file containing + // that type is delayed because lazily_build_dependencies_ is set on the pool. + // Should not be called after Set() has been called. + void SetLazy(StringPiece name, const FileDescriptor* file); + + // Returns the current value of the descriptor, thread-safe. If SetLazy(...) + // has been called, will do a one-time cross link of the type specified, + // building the descriptor file that contains the type if necessary. + inline const Descriptor* Get() { + Once(); + return descriptor_; + } + + private: + static void OnceStatic(LazyDescriptor* lazy); + void OnceInternal(); + void Once(); + + const Descriptor* descriptor_; + const std::string* name_; + internal::once_flag* once_; + const FileDescriptor* file_; +}; +} // namespace internal + +// Describes a type of protocol message, or a particular group within a +// message. To obtain the Descriptor for a given message object, call +// Message::GetDescriptor(). Generated message classes also have a +// static method called descriptor() which returns the type's descriptor. +// Use DescriptorPool to construct your own descriptors. +class PROTOBUF_EXPORT Descriptor { + public: + typedef DescriptorProto Proto; + + // The name of the message type, not including its scope. + const std::string& name() const; + + // The fully-qualified name of the message type, scope delimited by + // periods. For example, message type "Foo" which is declared in package + // "bar" has full name "bar.Foo". If a type "Baz" is nested within + // Foo, Baz's full_name is "bar.Foo.Baz". To get only the part that + // comes after the last '.', use name(). + const std::string& full_name() const; + + // Index of this descriptor within the file or containing type's message + // type array. + int index() const; + + // The .proto file in which this message type was defined. Never nullptr. + const FileDescriptor* file() const; + + // If this Descriptor describes a nested type, this returns the type + // in which it is nested. Otherwise, returns nullptr. + const Descriptor* containing_type() const; + + // Get options for this message type. These are specified in the .proto file + // by placing lines like "option foo = 1234;" in the message definition. + // Allowed options are defined by MessageOptions in descriptor.proto, and any + // available extensions of that message. + const MessageOptions& options() const; + + // Write the contents of this Descriptor into the given DescriptorProto. + // The target DescriptorProto must be clear before calling this; if it + // isn't, the result may be garbage. + void CopyTo(DescriptorProto* proto) const; + + // Write the contents of this descriptor in a human-readable form. Output + // will be suitable for re-parsing. + std::string DebugString() const; + + // Similar to DebugString(), but additionally takes options (e.g., + // include original user comments in output). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Returns true if this is a placeholder for an unknown type. This will + // only be the case if this descriptor comes from a DescriptorPool + // with AllowUnknownDependencies() set. + bool is_placeholder() const; + + enum WellKnownType { + WELLKNOWNTYPE_UNSPECIFIED, // Not a well-known type. + + // Wrapper types. + WELLKNOWNTYPE_DOUBLEVALUE, // google.protobuf.DoubleValue + WELLKNOWNTYPE_FLOATVALUE, // google.protobuf.FloatValue + WELLKNOWNTYPE_INT64VALUE, // google.protobuf.Int64Value + WELLKNOWNTYPE_UINT64VALUE, // google.protobuf.UInt64Value + WELLKNOWNTYPE_INT32VALUE, // google.protobuf.Int32Value + WELLKNOWNTYPE_UINT32VALUE, // google.protobuf.UInt32Value + WELLKNOWNTYPE_STRINGVALUE, // google.protobuf.StringValue + WELLKNOWNTYPE_BYTESVALUE, // google.protobuf.BytesValue + WELLKNOWNTYPE_BOOLVALUE, // google.protobuf.BoolValue + + // Other well known types. + WELLKNOWNTYPE_ANY, // google.protobuf.Any + WELLKNOWNTYPE_FIELDMASK, // google.protobuf.FieldMask + WELLKNOWNTYPE_DURATION, // google.protobuf.Duration + WELLKNOWNTYPE_TIMESTAMP, // google.protobuf.Timestamp + WELLKNOWNTYPE_VALUE, // google.protobuf.Value + WELLKNOWNTYPE_LISTVALUE, // google.protobuf.ListValue + WELLKNOWNTYPE_STRUCT, // google.protobuf.Struct + + // New well-known types may be added in the future. + // Please make sure any switch() statements have a 'default' case. + __WELLKNOWNTYPE__DO_NOT_USE__ADD_DEFAULT_INSTEAD__, + }; + + WellKnownType well_known_type() const; + + // Field stuff ----------------------------------------------------- + + // The number of fields in this message type. + int field_count() const; + // Gets a field by index, where 0 <= index < field_count(). + // These are returned in the order they were defined in the .proto file. + const FieldDescriptor* field(int index) const; + + // Looks up a field by declared tag number. Returns nullptr if no such field + // exists. + const FieldDescriptor* FindFieldByNumber(int number) const; + // Looks up a field by name. Returns nullptr if no such field exists. + const FieldDescriptor* FindFieldByName(ConstStringParam name) const; + + // Looks up a field by lowercased name (as returned by lowercase_name()). + // This lookup may be ambiguous if multiple field names differ only by case, + // in which case the field returned is chosen arbitrarily from the matches. + const FieldDescriptor* FindFieldByLowercaseName( + ConstStringParam lowercase_name) const; + + // Looks up a field by camel-case name (as returned by camelcase_name()). + // This lookup may be ambiguous if multiple field names differ in a way that + // leads them to have identical camel-case names, in which case the field + // returned is chosen arbitrarily from the matches. + const FieldDescriptor* FindFieldByCamelcaseName( + ConstStringParam camelcase_name) const; + + // The number of oneofs in this message type. + int oneof_decl_count() const; + // The number of oneofs in this message type, excluding synthetic oneofs. + // Real oneofs always come first, so iterating up to real_oneof_decl_cout() + // will yield all real oneofs. + int real_oneof_decl_count() const; + // Get a oneof by index, where 0 <= index < oneof_decl_count(). + // These are returned in the order they were defined in the .proto file. + const OneofDescriptor* oneof_decl(int index) const; + + // Looks up a oneof by name. Returns nullptr if no such oneof exists. + const OneofDescriptor* FindOneofByName(ConstStringParam name) const; + + // Nested type stuff ----------------------------------------------- + + // The number of nested types in this message type. + int nested_type_count() const; + // Gets a nested type by index, where 0 <= index < nested_type_count(). + // These are returned in the order they were defined in the .proto file. + const Descriptor* nested_type(int index) const; + + // Looks up a nested type by name. Returns nullptr if no such nested type + // exists. + const Descriptor* FindNestedTypeByName(ConstStringParam name) const; + + // Enum stuff ------------------------------------------------------ + + // The number of enum types in this message type. + int enum_type_count() const; + // Gets an enum type by index, where 0 <= index < enum_type_count(). + // These are returned in the order they were defined in the .proto file. + const EnumDescriptor* enum_type(int index) const; + + // Looks up an enum type by name. Returns nullptr if no such enum type + // exists. + const EnumDescriptor* FindEnumTypeByName(ConstStringParam name) const; + + // Looks up an enum value by name, among all enum types in this message. + // Returns nullptr if no such value exists. + const EnumValueDescriptor* FindEnumValueByName(ConstStringParam name) const; + + // Extensions ------------------------------------------------------ + + // A range of field numbers which are designated for third-party + // extensions. + struct ExtensionRange { + typedef DescriptorProto_ExtensionRange Proto; + + typedef ExtensionRangeOptions OptionsType; + + // See Descriptor::CopyTo(). + void CopyTo(DescriptorProto_ExtensionRange* proto) const; + + int start; // inclusive + int end; // exclusive + + const ExtensionRangeOptions* options_; + }; + + // The number of extension ranges in this message type. + int extension_range_count() const; + // Gets an extension range by index, where 0 <= index < + // extension_range_count(). These are returned in the order they were defined + // in the .proto file. + const ExtensionRange* extension_range(int index) const; + + // Returns true if the number is in one of the extension ranges. + bool IsExtensionNumber(int number) const; + + // Returns nullptr if no extension range contains the given number. + const ExtensionRange* FindExtensionRangeContainingNumber(int number) const; + + // The number of extensions defined nested within this message type's scope. + // See doc: + // https://developers.google.com/protocol-buffers/docs/proto#nested-extensions + // + // Note that the extensions may be extending *other* messages. + // + // For example: + // message M1 { + // extensions 1 to max; + // } + // + // message M2 { + // extend M1 { + // optional int32 foo = 1; + // } + // } + // + // In this case, + // DescriptorPool::generated_pool() + // ->FindMessageTypeByName("M2") + // ->extension(0) + // will return "foo", even though "foo" is an extension of M1. + // To find all known extensions of a given message, instead use + // DescriptorPool::FindAllExtensions. + int extension_count() const; + // Get an extension by index, where 0 <= index < extension_count(). + // These are returned in the order they were defined in the .proto file. + const FieldDescriptor* extension(int index) const; + + // Looks up a named extension (which extends some *other* message type) + // defined within this message type's scope. + const FieldDescriptor* FindExtensionByName(ConstStringParam name) const; + + // Similar to FindFieldByLowercaseName(), but finds extensions defined within + // this message type's scope. + const FieldDescriptor* FindExtensionByLowercaseName( + ConstStringParam name) const; + + // Similar to FindFieldByCamelcaseName(), but finds extensions defined within + // this message type's scope. + const FieldDescriptor* FindExtensionByCamelcaseName( + ConstStringParam name) const; + + // Reserved fields ------------------------------------------------- + + // A range of reserved field numbers. + struct ReservedRange { + int start; // inclusive + int end; // exclusive + }; + + // The number of reserved ranges in this message type. + int reserved_range_count() const; + // Gets an reserved range by index, where 0 <= index < + // reserved_range_count(). These are returned in the order they were defined + // in the .proto file. + const ReservedRange* reserved_range(int index) const; + + // Returns true if the number is in one of the reserved ranges. + bool IsReservedNumber(int number) const; + + // Returns nullptr if no reserved range contains the given number. + const ReservedRange* FindReservedRangeContainingNumber(int number) const; + + // The number of reserved field names in this message type. + int reserved_name_count() const; + + // Gets a reserved name by index, where 0 <= index < reserved_name_count(). + const std::string& reserved_name(int index) const; + + // Returns true if the field name is reserved. + bool IsReservedName(ConstStringParam name) const; + + // Source Location --------------------------------------------------- + + // Updates |*out_location| to the source location of the complete + // extent of this message declaration. Returns false and leaves + // |*out_location| unchanged iff location information was not available. + bool GetSourceLocation(SourceLocation* out_location) const; + + // Maps -------------------------------------------------------------- + + // Returns the FieldDescriptor for the "key" field. If this isn't a map entry + // field, returns nullptr. + const FieldDescriptor* map_key() const; + + // Returns the FieldDescriptor for the "value" field. If this isn't a map + // entry field, returns nullptr. + const FieldDescriptor* map_value() const; + + private: + typedef MessageOptions OptionsType; + + // Allows tests to test CopyTo(proto, true). + friend class descriptor_unittest::DescriptorTest; + + // Allows access to GetLocationPath for annotations. + friend class io::Printer; + friend class compiler::cpp::Formatter; + + // Fill the json_name field of FieldDescriptorProto. + void CopyJsonNameTo(DescriptorProto* proto) const; + + // Internal version of DebugString; controls the level of indenting for + // correct depth. Takes |options| to control debug-string options, and + // |include_opening_clause| to indicate whether the "message ... " part of the + // clause has already been generated (this varies depending on context). + void DebugString(int depth, std::string* contents, + const DebugStringOptions& options, + bool include_opening_clause) const; + + // Walks up the descriptor tree to generate the source location path + // to this descriptor from the file root. + void GetLocationPath(std::vector* output) const; + + const std::string* name_; + const std::string* full_name_; + const FileDescriptor* file_; + const Descriptor* containing_type_; + const MessageOptions* options_; + + // These arrays are separated from their sizes to minimize padding on 64-bit. + FieldDescriptor* fields_; + OneofDescriptor* oneof_decls_; + Descriptor* nested_types_; + EnumDescriptor* enum_types_; + ExtensionRange* extension_ranges_; + FieldDescriptor* extensions_; + ReservedRange* reserved_ranges_; + const std::string** reserved_names_; + + int field_count_; + int oneof_decl_count_; + int real_oneof_decl_count_; + int nested_type_count_; + int enum_type_count_; + int extension_range_count_; + int extension_count_; + int reserved_range_count_; + int reserved_name_count_; + + // True if this is a placeholder for an unknown type. + bool is_placeholder_; + // True if this is a placeholder and the type name wasn't fully-qualified. + bool is_unqualified_placeholder_; + // Well known type. Stored as char to conserve space. + char well_known_type_; + + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() in descriptor.cc + // and update them to initialize the field. + + // Must be constructed using DescriptorPool. + Descriptor() {} + friend class DescriptorBuilder; + friend class DescriptorPool; + friend class EnumDescriptor; + friend class FieldDescriptor; + friend class OneofDescriptor; + friend class MethodDescriptor; + friend class FileDescriptor; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Descriptor); +}; + + +// Describes a single field of a message. To get the descriptor for a given +// field, first get the Descriptor for the message in which it is defined, +// then call Descriptor::FindFieldByName(). To get a FieldDescriptor for +// an extension, do one of the following: +// - Get the Descriptor or FileDescriptor for its containing scope, then +// call Descriptor::FindExtensionByName() or +// FileDescriptor::FindExtensionByName(). +// - Given a DescriptorPool, call DescriptorPool::FindExtensionByNumber() or +// DescriptorPool::FindExtensionByPrintableName(). +// Use DescriptorPool to construct your own descriptors. +class PROTOBUF_EXPORT FieldDescriptor { + public: + typedef FieldDescriptorProto Proto; + + // Identifies a field type. 0 is reserved for errors. The order is weird + // for historical reasons. Types 12 and up are new in proto2. + enum Type { + TYPE_DOUBLE = 1, // double, exactly eight bytes on the wire. + TYPE_FLOAT = 2, // float, exactly four bytes on the wire. + TYPE_INT64 = 3, // int64, varint on the wire. Negative numbers + // take 10 bytes. Use TYPE_SINT64 if negative + // values are likely. + TYPE_UINT64 = 4, // uint64, varint on the wire. + TYPE_INT32 = 5, // int32, varint on the wire. Negative numbers + // take 10 bytes. Use TYPE_SINT32 if negative + // values are likely. + TYPE_FIXED64 = 6, // uint64, exactly eight bytes on the wire. + TYPE_FIXED32 = 7, // uint32, exactly four bytes on the wire. + TYPE_BOOL = 8, // bool, varint on the wire. + TYPE_STRING = 9, // UTF-8 text. + TYPE_GROUP = 10, // Tag-delimited message. Deprecated. + TYPE_MESSAGE = 11, // Length-delimited message. + + TYPE_BYTES = 12, // Arbitrary byte array. + TYPE_UINT32 = 13, // uint32, varint on the wire + TYPE_ENUM = 14, // Enum, varint on the wire + TYPE_SFIXED32 = 15, // int32, exactly four bytes on the wire + TYPE_SFIXED64 = 16, // int64, exactly eight bytes on the wire + TYPE_SINT32 = 17, // int32, ZigZag-encoded varint on the wire + TYPE_SINT64 = 18, // int64, ZigZag-encoded varint on the wire + + MAX_TYPE = 18, // Constant useful for defining lookup tables + // indexed by Type. + }; + + // Specifies the C++ data type used to represent the field. There is a + // fixed mapping from Type to CppType where each Type maps to exactly one + // CppType. 0 is reserved for errors. + enum CppType { + CPPTYPE_INT32 = 1, // TYPE_INT32, TYPE_SINT32, TYPE_SFIXED32 + CPPTYPE_INT64 = 2, // TYPE_INT64, TYPE_SINT64, TYPE_SFIXED64 + CPPTYPE_UINT32 = 3, // TYPE_UINT32, TYPE_FIXED32 + CPPTYPE_UINT64 = 4, // TYPE_UINT64, TYPE_FIXED64 + CPPTYPE_DOUBLE = 5, // TYPE_DOUBLE + CPPTYPE_FLOAT = 6, // TYPE_FLOAT + CPPTYPE_BOOL = 7, // TYPE_BOOL + CPPTYPE_ENUM = 8, // TYPE_ENUM + CPPTYPE_STRING = 9, // TYPE_STRING, TYPE_BYTES + CPPTYPE_MESSAGE = 10, // TYPE_MESSAGE, TYPE_GROUP + + MAX_CPPTYPE = 10, // Constant useful for defining lookup tables + // indexed by CppType. + }; + + // Identifies whether the field is optional, required, or repeated. 0 is + // reserved for errors. + enum Label { + LABEL_OPTIONAL = 1, // optional + LABEL_REQUIRED = 2, // required + LABEL_REPEATED = 3, // repeated + + MAX_LABEL = 3, // Constant useful for defining lookup tables + // indexed by Label. + }; + + // Valid field numbers are positive integers up to kMaxNumber. + static const int kMaxNumber = (1 << 29) - 1; + + // First field number reserved for the protocol buffer library implementation. + // Users may not declare fields that use reserved numbers. + static const int kFirstReservedNumber = 19000; + // Last field number reserved for the protocol buffer library implementation. + // Users may not declare fields that use reserved numbers. + static const int kLastReservedNumber = 19999; + + const std::string& name() const; // Name of this field within the message. + const std::string& full_name() const; // Fully-qualified name of the field. + const std::string& json_name() const; // JSON name of this field. + const FileDescriptor* file() const; // File in which this field was defined. + bool is_extension() const; // Is this an extension field? + int number() const; // Declared tag number. + + // Same as name() except converted to lower-case. This (and especially the + // FindFieldByLowercaseName() method) can be useful when parsing formats + // which prefer to use lowercase naming style. (Although, technically + // field names should be lowercased anyway according to the protobuf style + // guide, so this only makes a difference when dealing with old .proto files + // which do not follow the guide.) + const std::string& lowercase_name() const; + + // Same as name() except converted to camel-case. In this conversion, any + // time an underscore appears in the name, it is removed and the next + // letter is capitalized. Furthermore, the first letter of the name is + // lower-cased. Examples: + // FooBar -> fooBar + // foo_bar -> fooBar + // fooBar -> fooBar + // This (and especially the FindFieldByCamelcaseName() method) can be useful + // when parsing formats which prefer to use camel-case naming style. + const std::string& camelcase_name() const; + + Type type() const; // Declared type of this field. + const char* type_name() const; // Name of the declared type. + CppType cpp_type() const; // C++ type of this field. + const char* cpp_type_name() const; // Name of the C++ type. + Label label() const; // optional/required/repeated + + bool is_required() const; // shorthand for label() == LABEL_REQUIRED + bool is_optional() const; // shorthand for label() == LABEL_OPTIONAL + bool is_repeated() const; // shorthand for label() == LABEL_REPEATED + bool is_packable() const; // shorthand for is_repeated() && + // IsTypePackable(type()) + bool is_packed() const; // shorthand for is_packable() && + // options().packed() + bool is_map() const; // shorthand for type() == TYPE_MESSAGE && + // message_type()->options().map_entry() + + // Returns true if this field was syntactically written with "optional" in the + // .proto file. Excludes singular proto3 fields that do not have a label. + bool has_optional_keyword() const; + + // Returns true if this field tracks presence, ie. does the field + // distinguish between "unset" and "present with default value." + // This includes required, optional, and oneof fields. It excludes maps, + // repeated fields, and singular proto3 fields without "optional". + // + // For fields where has_presence() == true, the return value of + // Reflection::HasField() is semantically meaningful. + bool has_presence() const; + + // Index of this field within the message's field array, or the file or + // extension scope's extensions array. + int index() const; + + // Does this field have an explicitly-declared default value? + bool has_default_value() const; + + // Whether the user has specified the json_name field option in the .proto + // file. + bool has_json_name() const; + + // Get the field default value if cpp_type() == CPPTYPE_INT32. If no + // explicit default was defined, the default is 0. + int32 default_value_int32() const; + // Get the field default value if cpp_type() == CPPTYPE_INT64. If no + // explicit default was defined, the default is 0. + int64 default_value_int64() const; + // Get the field default value if cpp_type() == CPPTYPE_UINT32. If no + // explicit default was defined, the default is 0. + uint32 default_value_uint32() const; + // Get the field default value if cpp_type() == CPPTYPE_UINT64. If no + // explicit default was defined, the default is 0. + uint64 default_value_uint64() const; + // Get the field default value if cpp_type() == CPPTYPE_FLOAT. If no + // explicit default was defined, the default is 0.0. + float default_value_float() const; + // Get the field default value if cpp_type() == CPPTYPE_DOUBLE. If no + // explicit default was defined, the default is 0.0. + double default_value_double() const; + // Get the field default value if cpp_type() == CPPTYPE_BOOL. If no + // explicit default was defined, the default is false. + bool default_value_bool() const; + // Get the field default value if cpp_type() == CPPTYPE_ENUM. If no + // explicit default was defined, the default is the first value defined + // in the enum type (all enum types are required to have at least one value). + // This never returns nullptr. + const EnumValueDescriptor* default_value_enum() const; + // Get the field default value if cpp_type() == CPPTYPE_STRING. If no + // explicit default was defined, the default is the empty string. + const std::string& default_value_string() const; + + // The Descriptor for the message of which this is a field. For extensions, + // this is the extended type. Never nullptr. + const Descriptor* containing_type() const; + + // If the field is a member of a oneof, this is the one, otherwise this is + // nullptr. + const OneofDescriptor* containing_oneof() const; + + // If the field is a member of a non-synthetic oneof, returns the descriptor + // for the oneof, otherwise returns nullptr. + const OneofDescriptor* real_containing_oneof() const; + + // If the field is a member of a oneof, returns the index in that oneof. + int index_in_oneof() const; + + // An extension may be declared within the scope of another message. If this + // field is an extension (is_extension() is true), then extension_scope() + // returns that message, or nullptr if the extension was declared at global + // scope. If this is not an extension, extension_scope() is undefined (may + // assert-fail). + const Descriptor* extension_scope() const; + + // If type is TYPE_MESSAGE or TYPE_GROUP, returns a descriptor for the + // message or the group type. Otherwise, returns null. + const Descriptor* message_type() const; + // If type is TYPE_ENUM, returns a descriptor for the enum. Otherwise, + // returns null. + const EnumDescriptor* enum_type() const; + + // Get the FieldOptions for this field. This includes things listed in + // square brackets after the field definition. E.g., the field: + // optional string text = 1 [ctype=CORD]; + // has the "ctype" option set. Allowed options are defined by FieldOptions in + // descriptor.proto, and any available extensions of that message. + const FieldOptions& options() const; + + // See Descriptor::CopyTo(). + void CopyTo(FieldDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + std::string DebugString() const; + + // See Descriptor::DebugStringWithOptions(). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Helper method to get the CppType for a particular Type. + static CppType TypeToCppType(Type type); + + // Helper method to get the name of a Type. + static const char* TypeName(Type type); + + // Helper method to get the name of a CppType. + static const char* CppTypeName(CppType cpp_type); + + // Return true iff [packed = true] is valid for fields of this type. + static inline bool IsTypePackable(Type field_type); + + // Returns full_name() except if the field is a MessageSet extension, + // in which case it returns the full_name() of the containing message type + // for backwards compatibility with proto1. + // + // A MessageSet extension is defined as an optional message extension + // whose containing type has the message_set_wire_format option set. + // This should be true of extensions of google.protobuf.bridge.MessageSet; + // by convention, such extensions are named "message_set_extension". + // + // The opposite operation (looking up an extension's FieldDescriptor given + // its printable name) can be accomplished with + // message->file()->pool()->FindExtensionByPrintableName(message, name) + // where the extension extends "message". + const std::string& PrintableNameForExtension() const; + + // Source Location --------------------------------------------------- + + // Updates |*out_location| to the source location of the complete + // extent of this field declaration. Returns false and leaves + // |*out_location| unchanged iff location information was not available. + bool GetSourceLocation(SourceLocation* out_location) const; + + private: + typedef FieldOptions OptionsType; + + // Allows access to GetLocationPath for annotations. + friend class io::Printer; + friend class compiler::cpp::Formatter; + friend class Reflection; + + // Fill the json_name field of FieldDescriptorProto. + void CopyJsonNameTo(FieldDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + void DebugString(int depth, std::string* contents, + const DebugStringOptions& options) const; + + // formats the default value appropriately and returns it as a string. + // Must have a default value to call this. If quote_string_type is true, then + // types of CPPTYPE_STRING whill be surrounded by quotes and CEscaped. + std::string DefaultValueAsString(bool quote_string_type) const; + + // Helper function that returns the field type name for DebugString. + std::string FieldTypeNameDebugString() const; + + // Walks up the descriptor tree to generate the source location path + // to this descriptor from the file root. + void GetLocationPath(std::vector* output) const; + + // Returns true if this is a map message type. + bool is_map_message_type() const; + + const std::string* name_; + const std::string* full_name_; + const std::string* lowercase_name_; + const std::string* camelcase_name_; + // If has_json_name_ is true, it's the value specified by the user. + // Otherwise, it has the same value as camelcase_name_. + const std::string* json_name_; + const FileDescriptor* file_; + internal::once_flag* type_once_; + static void TypeOnceInit(const FieldDescriptor* to_init); + void InternalTypeOnceInit() const; + mutable Type type_; + Label label_; + bool has_default_value_; + bool proto3_optional_; + // Whether the user has specified the json_name field option in the .proto + // file. + bool has_json_name_; + bool is_extension_; + int number_; + int index_in_oneof_; + const Descriptor* containing_type_; + const OneofDescriptor* containing_oneof_; + const Descriptor* extension_scope_; + mutable const Descriptor* message_type_; + mutable const EnumDescriptor* enum_type_; + const FieldOptions* options_; + const std::string* type_name_; + const std::string* default_value_enum_name_; + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() in + // descriptor.cc and update them to initialize the field. + + union { + int32 default_value_int32_; + int64 default_value_int64_; + uint32 default_value_uint32_; + uint64 default_value_uint64_; + float default_value_float_; + double default_value_double_; + bool default_value_bool_; + + mutable const EnumValueDescriptor* default_value_enum_; + const std::string* default_value_string_; + mutable std::atomic default_generated_instance_; + }; + + static const CppType kTypeToCppTypeMap[MAX_TYPE + 1]; + + static const char* const kTypeToName[MAX_TYPE + 1]; + + static const char* const kCppTypeToName[MAX_CPPTYPE + 1]; + + static const char* const kLabelToName[MAX_LABEL + 1]; + + // Must be constructed using DescriptorPool. + FieldDescriptor() {} + friend class DescriptorBuilder; + friend class FileDescriptor; + friend class Descriptor; + friend class OneofDescriptor; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FieldDescriptor); +}; + + +// Describes a oneof defined in a message type. +class PROTOBUF_EXPORT OneofDescriptor { + public: + typedef OneofDescriptorProto Proto; + + const std::string& name() const; // Name of this oneof. + const std::string& full_name() const; // Fully-qualified name of the oneof. + + // Index of this oneof within the message's oneof array. + int index() const; + + // Returns whether this oneof was inserted by the compiler to wrap a proto3 + // optional field. If this returns true, code generators should *not* emit it. + bool is_synthetic() const; + + // The .proto file in which this oneof was defined. Never nullptr. + const FileDescriptor* file() const; + // The Descriptor for the message containing this oneof. + const Descriptor* containing_type() const; + + // The number of (non-extension) fields which are members of this oneof. + int field_count() const; + // Get a member of this oneof, in the order in which they were declared in the + // .proto file. Does not include extensions. + const FieldDescriptor* field(int index) const; + + const OneofOptions& options() const; + + // See Descriptor::CopyTo(). + void CopyTo(OneofDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + std::string DebugString() const; + + // See Descriptor::DebugStringWithOptions(). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Source Location --------------------------------------------------- + + // Updates |*out_location| to the source location of the complete + // extent of this oneof declaration. Returns false and leaves + // |*out_location| unchanged iff location information was not available. + bool GetSourceLocation(SourceLocation* out_location) const; + + private: + typedef OneofOptions OptionsType; + + // Allows access to GetLocationPath for annotations. + friend class io::Printer; + friend class compiler::cpp::Formatter; + + // See Descriptor::DebugString(). + void DebugString(int depth, std::string* contents, + const DebugStringOptions& options) const; + + // Walks up the descriptor tree to generate the source location path + // to this descriptor from the file root. + void GetLocationPath(std::vector* output) const; + + const std::string* name_; + const std::string* full_name_; + const Descriptor* containing_type_; + int field_count_; + const FieldDescriptor** fields_; + const OneofOptions* options_; + + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() + // in descriptor.cc and update them to initialize the field. + + // Must be constructed using DescriptorPool. + OneofDescriptor() {} + friend class DescriptorBuilder; + friend class Descriptor; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(OneofDescriptor); +}; + +// Describes an enum type defined in a .proto file. To get the EnumDescriptor +// for a generated enum type, call TypeName_descriptor(). Use DescriptorPool +// to construct your own descriptors. +class PROTOBUF_EXPORT EnumDescriptor { + public: + typedef EnumDescriptorProto Proto; + + // The name of this enum type in the containing scope. + const std::string& name() const; + + // The fully-qualified name of the enum type, scope delimited by periods. + const std::string& full_name() const; + + // Index of this enum within the file or containing message's enum array. + int index() const; + + // The .proto file in which this enum type was defined. Never nullptr. + const FileDescriptor* file() const; + + // The number of values for this EnumDescriptor. Guaranteed to be greater + // than zero. + int value_count() const; + // Gets a value by index, where 0 <= index < value_count(). + // These are returned in the order they were defined in the .proto file. + const EnumValueDescriptor* value(int index) const; + + // Looks up a value by name. Returns nullptr if no such value exists. + const EnumValueDescriptor* FindValueByName(ConstStringParam name) const; + // Looks up a value by number. Returns nullptr if no such value exists. If + // multiple values have this number, the first one defined is returned. + const EnumValueDescriptor* FindValueByNumber(int number) const; + + // If this enum type is nested in a message type, this is that message type. + // Otherwise, nullptr. + const Descriptor* containing_type() const; + + // Get options for this enum type. These are specified in the .proto file by + // placing lines like "option foo = 1234;" in the enum definition. Allowed + // options are defined by EnumOptions in descriptor.proto, and any available + // extensions of that message. + const EnumOptions& options() const; + + // See Descriptor::CopyTo(). + void CopyTo(EnumDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + std::string DebugString() const; + + // See Descriptor::DebugStringWithOptions(). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Returns true if this is a placeholder for an unknown enum. This will + // only be the case if this descriptor comes from a DescriptorPool + // with AllowUnknownDependencies() set. + bool is_placeholder() const; + + // Reserved fields ------------------------------------------------- + + // A range of reserved field numbers. + struct ReservedRange { + int start; // inclusive + int end; // inclusive + }; + + // The number of reserved ranges in this message type. + int reserved_range_count() const; + // Gets an reserved range by index, where 0 <= index < + // reserved_range_count(). These are returned in the order they were defined + // in the .proto file. + const EnumDescriptor::ReservedRange* reserved_range(int index) const; + + // Returns true if the number is in one of the reserved ranges. + bool IsReservedNumber(int number) const; + + // Returns nullptr if no reserved range contains the given number. + const EnumDescriptor::ReservedRange* FindReservedRangeContainingNumber( + int number) const; + + // The number of reserved field names in this message type. + int reserved_name_count() const; + + // Gets a reserved name by index, where 0 <= index < reserved_name_count(). + const std::string& reserved_name(int index) const; + + // Returns true if the field name is reserved. + bool IsReservedName(ConstStringParam name) const; + + // Source Location --------------------------------------------------- + + // Updates |*out_location| to the source location of the complete + // extent of this enum declaration. Returns false and leaves + // |*out_location| unchanged iff location information was not available. + bool GetSourceLocation(SourceLocation* out_location) const; + + private: + typedef EnumOptions OptionsType; + + // Allows access to GetLocationPath for annotations. + friend class io::Printer; + friend class compiler::cpp::Formatter; + + // Looks up a value by number. If the value does not exist, dynamically + // creates a new EnumValueDescriptor for that value, assuming that it was + // unknown. If a new descriptor is created, this is done in a thread-safe way, + // and future calls will return the same value descriptor pointer. + // + // This is private but is used by Reflection (which is friended below) to + // return a valid EnumValueDescriptor from GetEnum() when this feature is + // enabled. + const EnumValueDescriptor* FindValueByNumberCreatingIfUnknown( + int number) const; + + // See Descriptor::DebugString(). + void DebugString(int depth, std::string* contents, + const DebugStringOptions& options) const; + + // Walks up the descriptor tree to generate the source location path + // to this descriptor from the file root. + void GetLocationPath(std::vector* output) const; + + const std::string* name_; + const std::string* full_name_; + const FileDescriptor* file_; + const Descriptor* containing_type_; + const EnumOptions* options_; + + // True if this is a placeholder for an unknown type. + bool is_placeholder_; + // True if this is a placeholder and the type name wasn't fully-qualified. + bool is_unqualified_placeholder_; + + int value_count_; + EnumValueDescriptor* values_; + + int reserved_range_count_; + int reserved_name_count_; + EnumDescriptor::ReservedRange* reserved_ranges_; + const std::string** reserved_names_; + + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() in + // descriptor.cc and update them to initialize the field. + + // Must be constructed using DescriptorPool. + EnumDescriptor() {} + friend class DescriptorBuilder; + friend class Descriptor; + friend class FieldDescriptor; + friend class EnumValueDescriptor; + friend class FileDescriptor; + friend class DescriptorPool; + friend class Reflection; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(EnumDescriptor); +}; + +// Describes an individual enum constant of a particular type. To get the +// EnumValueDescriptor for a given enum value, first get the EnumDescriptor +// for its type, then use EnumDescriptor::FindValueByName() or +// EnumDescriptor::FindValueByNumber(). Use DescriptorPool to construct +// your own descriptors. +class PROTOBUF_EXPORT EnumValueDescriptor { + public: + typedef EnumValueDescriptorProto Proto; + + const std::string& name() const; // Name of this enum constant. + int index() const; // Index within the enums's Descriptor. + int number() const; // Numeric value of this enum constant. + + // The full_name of an enum value is a sibling symbol of the enum type. + // e.g. the full name of FieldDescriptorProto::TYPE_INT32 is actually + // "google.protobuf.FieldDescriptorProto.TYPE_INT32", NOT + // "google.protobuf.FieldDescriptorProto.Type.TYPE_INT32". This is to conform + // with C++ scoping rules for enums. + const std::string& full_name() const; + + // The .proto file in which this value was defined. Never nullptr. + const FileDescriptor* file() const; + // The type of this value. Never nullptr. + const EnumDescriptor* type() const; + + // Get options for this enum value. These are specified in the .proto file by + // adding text like "[foo = 1234]" after an enum value definition. Allowed + // options are defined by EnumValueOptions in descriptor.proto, and any + // available extensions of that message. + const EnumValueOptions& options() const; + + // See Descriptor::CopyTo(). + void CopyTo(EnumValueDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + std::string DebugString() const; + + // See Descriptor::DebugStringWithOptions(). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Source Location --------------------------------------------------- + + // Updates |*out_location| to the source location of the complete + // extent of this enum value declaration. Returns false and leaves + // |*out_location| unchanged iff location information was not available. + bool GetSourceLocation(SourceLocation* out_location) const; + + private: + typedef EnumValueOptions OptionsType; + + // Allows access to GetLocationPath for annotations. + friend class io::Printer; + friend class compiler::cpp::Formatter; + + // See Descriptor::DebugString(). + void DebugString(int depth, std::string* contents, + const DebugStringOptions& options) const; + + // Walks up the descriptor tree to generate the source location path + // to this descriptor from the file root. + void GetLocationPath(std::vector* output) const; + + const std::string* name_; + const std::string* full_name_; + int number_; + const EnumDescriptor* type_; + const EnumValueOptions* options_; + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() + // in descriptor.cc and update them to initialize the field. + + // Must be constructed using DescriptorPool. + EnumValueDescriptor() {} + friend class DescriptorBuilder; + friend class EnumDescriptor; + friend class DescriptorPool; + friend class FileDescriptorTables; + friend class Reflection; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(EnumValueDescriptor); +}; + +// Describes an RPC service. Use DescriptorPool to construct your own +// descriptors. +class PROTOBUF_EXPORT ServiceDescriptor { + public: + typedef ServiceDescriptorProto Proto; + + // The name of the service, not including its containing scope. + const std::string& name() const; + // The fully-qualified name of the service, scope delimited by periods. + const std::string& full_name() const; + // Index of this service within the file's services array. + int index() const; + + // The .proto file in which this service was defined. Never nullptr. + const FileDescriptor* file() const; + + // Get options for this service type. These are specified in the .proto file + // by placing lines like "option foo = 1234;" in the service definition. + // Allowed options are defined by ServiceOptions in descriptor.proto, and any + // available extensions of that message. + const ServiceOptions& options() const; + + // The number of methods this service defines. + int method_count() const; + // Gets a MethodDescriptor by index, where 0 <= index < method_count(). + // These are returned in the order they were defined in the .proto file. + const MethodDescriptor* method(int index) const; + + // Look up a MethodDescriptor by name. + const MethodDescriptor* FindMethodByName(ConstStringParam name) const; + // See Descriptor::CopyTo(). + void CopyTo(ServiceDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + std::string DebugString() const; + + // See Descriptor::DebugStringWithOptions(). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Source Location --------------------------------------------------- + + // Updates |*out_location| to the source location of the complete + // extent of this service declaration. Returns false and leaves + // |*out_location| unchanged iff location information was not available. + bool GetSourceLocation(SourceLocation* out_location) const; + + private: + typedef ServiceOptions OptionsType; + + // Allows access to GetLocationPath for annotations. + friend class io::Printer; + friend class compiler::cpp::Formatter; + + // See Descriptor::DebugString(). + void DebugString(std::string* contents, + const DebugStringOptions& options) const; + + // Walks up the descriptor tree to generate the source location path + // to this descriptor from the file root. + void GetLocationPath(std::vector* output) const; + + const std::string* name_; + const std::string* full_name_; + const FileDescriptor* file_; + const ServiceOptions* options_; + MethodDescriptor* methods_; + int method_count_; + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() in + // descriptor.cc and update them to initialize the field. + + // Must be constructed using DescriptorPool. + ServiceDescriptor() {} + friend class DescriptorBuilder; + friend class FileDescriptor; + friend class MethodDescriptor; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ServiceDescriptor); +}; + + +// Describes an individual service method. To obtain a MethodDescriptor given +// a service, first get its ServiceDescriptor, then call +// ServiceDescriptor::FindMethodByName(). Use DescriptorPool to construct your +// own descriptors. +class PROTOBUF_EXPORT MethodDescriptor { + public: + typedef MethodDescriptorProto Proto; + + // Name of this method, not including containing scope. + const std::string& name() const; + // The fully-qualified name of the method, scope delimited by periods. + const std::string& full_name() const; + // Index within the service's Descriptor. + int index() const; + + // The .proto file in which this method was defined. Never nullptr. + const FileDescriptor* file() const; + // Gets the service to which this method belongs. Never nullptr. + const ServiceDescriptor* service() const; + + // Gets the type of protocol message which this method accepts as input. + const Descriptor* input_type() const; + // Gets the type of protocol message which this message produces as output. + const Descriptor* output_type() const; + + // Gets whether the client streams multiple requests. + bool client_streaming() const; + // Gets whether the server streams multiple responses. + bool server_streaming() const; + + // Get options for this method. These are specified in the .proto file by + // placing lines like "option foo = 1234;" in curly-braces after a method + // declaration. Allowed options are defined by MethodOptions in + // descriptor.proto, and any available extensions of that message. + const MethodOptions& options() const; + + // See Descriptor::CopyTo(). + void CopyTo(MethodDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + std::string DebugString() const; + + // See Descriptor::DebugStringWithOptions(). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Source Location --------------------------------------------------- + + // Updates |*out_location| to the source location of the complete + // extent of this method declaration. Returns false and leaves + // |*out_location| unchanged iff location information was not available. + bool GetSourceLocation(SourceLocation* out_location) const; + + private: + typedef MethodOptions OptionsType; + + // Allows access to GetLocationPath for annotations. + friend class io::Printer; + friend class compiler::cpp::Formatter; + + // See Descriptor::DebugString(). + void DebugString(int depth, std::string* contents, + const DebugStringOptions& options) const; + + // Walks up the descriptor tree to generate the source location path + // to this descriptor from the file root. + void GetLocationPath(std::vector* output) const; + + const std::string* name_; + const std::string* full_name_; + const ServiceDescriptor* service_; + mutable internal::LazyDescriptor input_type_; + mutable internal::LazyDescriptor output_type_; + const MethodOptions* options_; + bool client_streaming_; + bool server_streaming_; + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() in + // descriptor.cc and update them to initialize the field. + + // Must be constructed using DescriptorPool. + MethodDescriptor() {} + friend class DescriptorBuilder; + friend class ServiceDescriptor; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MethodDescriptor); +}; + + +// Describes a whole .proto file. To get the FileDescriptor for a compiled-in +// file, get the descriptor for something defined in that file and call +// descriptor->file(). Use DescriptorPool to construct your own descriptors. +class PROTOBUF_EXPORT FileDescriptor { + public: + typedef FileDescriptorProto Proto; + + // The filename, relative to the source tree. + // e.g. "foo/bar/baz.proto" + const std::string& name() const; + + // The package, e.g. "google.protobuf.compiler". + const std::string& package() const; + + // The DescriptorPool in which this FileDescriptor and all its contents were + // allocated. Never nullptr. + const DescriptorPool* pool() const; + + // The number of files imported by this one. + int dependency_count() const; + // Gets an imported file by index, where 0 <= index < dependency_count(). + // These are returned in the order they were defined in the .proto file. + const FileDescriptor* dependency(int index) const; + + // The number of files public imported by this one. + // The public dependency list is a subset of the dependency list. + int public_dependency_count() const; + // Gets a public imported file by index, where 0 <= index < + // public_dependency_count(). + // These are returned in the order they were defined in the .proto file. + const FileDescriptor* public_dependency(int index) const; + + // The number of files that are imported for weak fields. + // The weak dependency list is a subset of the dependency list. + int weak_dependency_count() const; + // Gets a weak imported file by index, where 0 <= index < + // weak_dependency_count(). + // These are returned in the order they were defined in the .proto file. + const FileDescriptor* weak_dependency(int index) const; + + // Number of top-level message types defined in this file. (This does not + // include nested types.) + int message_type_count() const; + // Gets a top-level message type, where 0 <= index < message_type_count(). + // These are returned in the order they were defined in the .proto file. + const Descriptor* message_type(int index) const; + + // Number of top-level enum types defined in this file. (This does not + // include nested types.) + int enum_type_count() const; + // Gets a top-level enum type, where 0 <= index < enum_type_count(). + // These are returned in the order they were defined in the .proto file. + const EnumDescriptor* enum_type(int index) const; + + // Number of services defined in this file. + int service_count() const; + // Gets a service, where 0 <= index < service_count(). + // These are returned in the order they were defined in the .proto file. + const ServiceDescriptor* service(int index) const; + + // Number of extensions defined at file scope. (This does not include + // extensions nested within message types.) + int extension_count() const; + // Gets an extension's descriptor, where 0 <= index < extension_count(). + // These are returned in the order they were defined in the .proto file. + const FieldDescriptor* extension(int index) const; + + // Get options for this file. These are specified in the .proto file by + // placing lines like "option foo = 1234;" at the top level, outside of any + // other definitions. Allowed options are defined by FileOptions in + // descriptor.proto, and any available extensions of that message. + const FileOptions& options() const; + + // Syntax of this file. + enum Syntax { + SYNTAX_UNKNOWN = 0, + SYNTAX_PROTO2 = 2, + SYNTAX_PROTO3 = 3, + }; + Syntax syntax() const; + static const char* SyntaxName(Syntax syntax); + + // Find a top-level message type by name (not full_name). Returns nullptr if + // not found. + const Descriptor* FindMessageTypeByName(ConstStringParam name) const; + // Find a top-level enum type by name. Returns nullptr if not found. + const EnumDescriptor* FindEnumTypeByName(ConstStringParam name) const; + // Find an enum value defined in any top-level enum by name. Returns nullptr + // if not found. + const EnumValueDescriptor* FindEnumValueByName(ConstStringParam name) const; + // Find a service definition by name. Returns nullptr if not found. + const ServiceDescriptor* FindServiceByName(ConstStringParam name) const; + // Find a top-level extension definition by name. Returns nullptr if not + // found. + const FieldDescriptor* FindExtensionByName(ConstStringParam name) const; + // Similar to FindExtensionByName(), but searches by lowercased-name. See + // Descriptor::FindFieldByLowercaseName(). + const FieldDescriptor* FindExtensionByLowercaseName( + ConstStringParam name) const; + // Similar to FindExtensionByName(), but searches by camelcased-name. See + // Descriptor::FindFieldByCamelcaseName(). + const FieldDescriptor* FindExtensionByCamelcaseName( + ConstStringParam name) const; + + // See Descriptor::CopyTo(). + // Notes: + // - This method does NOT copy source code information since it is relatively + // large and rarely needed. See CopySourceCodeInfoTo() below. + void CopyTo(FileDescriptorProto* proto) const; + // Write the source code information of this FileDescriptor into the given + // FileDescriptorProto. See CopyTo() above. + void CopySourceCodeInfoTo(FileDescriptorProto* proto) const; + // Fill the json_name field of FieldDescriptorProto for all fields. Can only + // be called after CopyTo(). + void CopyJsonNameTo(FileDescriptorProto* proto) const; + + // See Descriptor::DebugString(). + std::string DebugString() const; + + // See Descriptor::DebugStringWithOptions(). + std::string DebugStringWithOptions(const DebugStringOptions& options) const; + + // Returns true if this is a placeholder for an unknown file. This will + // only be the case if this descriptor comes from a DescriptorPool + // with AllowUnknownDependencies() set. + bool is_placeholder() const; + + // Updates |*out_location| to the source location of the complete extent of + // this file declaration (namely, the empty path). + bool GetSourceLocation(SourceLocation* out_location) const; + + // Updates |*out_location| to the source location of the complete + // extent of the declaration or declaration-part denoted by |path|. + // Returns false and leaves |*out_location| unchanged iff location + // information was not available. (See SourceCodeInfo for + // description of path encoding.) + bool GetSourceLocation(const std::vector& path, + SourceLocation* out_location) const; + + private: + typedef FileOptions OptionsType; + + const std::string* name_; + const std::string* package_; + const DescriptorPool* pool_; + internal::once_flag* dependencies_once_; + static void DependenciesOnceInit(const FileDescriptor* to_init); + void InternalDependenciesOnceInit() const; + + // These are arranged to minimize padding on 64-bit. + int dependency_count_; + int public_dependency_count_; + int weak_dependency_count_; + int message_type_count_; + int enum_type_count_; + int service_count_; + int extension_count_; + Syntax syntax_; + bool is_placeholder_; + + // Indicates the FileDescriptor is completed building. Used to verify + // that type accessor functions that can possibly build a dependent file + // aren't called during the process of building the file. + bool finished_building_; + + mutable const FileDescriptor** dependencies_; + const std::string** dependencies_names_; + int* public_dependencies_; + int* weak_dependencies_; + Descriptor* message_types_; + EnumDescriptor* enum_types_; + ServiceDescriptor* services_; + FieldDescriptor* extensions_; + const FileOptions* options_; + + const FileDescriptorTables* tables_; + const SourceCodeInfo* source_code_info_; + + // IMPORTANT: If you add a new field, make sure to search for all instances + // of Allocate() and AllocateArray() in + // descriptor.cc and update them to initialize the field. + + FileDescriptor() {} + friend class DescriptorBuilder; + friend class DescriptorPool; + friend class Descriptor; + friend class FieldDescriptor; + friend class internal::LazyDescriptor; + friend class OneofDescriptor; + friend class EnumDescriptor; + friend class EnumValueDescriptor; + friend class MethodDescriptor; + friend class ServiceDescriptor; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FileDescriptor); +}; + + +// =================================================================== + +// Used to construct descriptors. +// +// Normally you won't want to build your own descriptors. Message classes +// constructed by the protocol compiler will provide them for you. However, +// if you are implementing Message on your own, or if you are writing a +// program which can operate on totally arbitrary types and needs to load +// them from some sort of database, you might need to. +// +// Since Descriptors are composed of a whole lot of cross-linked bits of +// data that would be a pain to put together manually, the +// DescriptorPool class is provided to make the process easier. It can +// take a FileDescriptorProto (defined in descriptor.proto), validate it, +// and convert it to a set of nicely cross-linked Descriptors. +// +// DescriptorPool also helps with memory management. Descriptors are +// composed of many objects containing static data and pointers to each +// other. In all likelihood, when it comes time to delete this data, +// you'll want to delete it all at once. In fact, it is not uncommon to +// have a whole pool of descriptors all cross-linked with each other which +// you wish to delete all at once. This class represents such a pool, and +// handles the memory management for you. +// +// You can also search for descriptors within a DescriptorPool by name, and +// extensions by number. +class PROTOBUF_EXPORT DescriptorPool { + public: + // Create a normal, empty DescriptorPool. + DescriptorPool(); + + // Constructs a DescriptorPool that, when it can't find something among the + // descriptors already in the pool, looks for it in the given + // DescriptorDatabase. + // Notes: + // - If a DescriptorPool is constructed this way, its BuildFile*() methods + // must not be called (they will assert-fail). The only way to populate + // the pool with descriptors is to call the Find*By*() methods. + // - The Find*By*() methods may block the calling thread if the + // DescriptorDatabase blocks. This in turn means that parsing messages + // may block if they need to look up extensions. + // - The Find*By*() methods will use mutexes for thread-safety, thus making + // them slower even when they don't have to fall back to the database. + // In fact, even the Find*By*() methods of descriptor objects owned by + // this pool will be slower, since they will have to obtain locks too. + // - An ErrorCollector may optionally be given to collect validation errors + // in files loaded from the database. If not given, errors will be printed + // to GOOGLE_LOG(ERROR). Remember that files are built on-demand, so this + // ErrorCollector may be called from any thread that calls one of the + // Find*By*() methods. + // - The DescriptorDatabase must not be mutated during the lifetime of + // the DescriptorPool. Even if the client takes care to avoid data races, + // changes to the content of the DescriptorDatabase may not be reflected + // in subsequent lookups in the DescriptorPool. + class ErrorCollector; + explicit DescriptorPool(DescriptorDatabase* fallback_database, + ErrorCollector* error_collector = nullptr); + + ~DescriptorPool(); + + // Get a pointer to the generated pool. Generated protocol message classes + // which are compiled into the binary will allocate their descriptors in + // this pool. Do not add your own descriptors to this pool. + static const DescriptorPool* generated_pool(); + + + // Find a FileDescriptor in the pool by file name. Returns nullptr if not + // found. + const FileDescriptor* FindFileByName(ConstStringParam name) const; + + // Find the FileDescriptor in the pool which defines the given symbol. + // If any of the Find*ByName() methods below would succeed, then this is + // equivalent to calling that method and calling the result's file() method. + // Otherwise this returns nullptr. + const FileDescriptor* FindFileContainingSymbol( + ConstStringParam symbol_name) const; + + // Looking up descriptors ------------------------------------------ + // These find descriptors by fully-qualified name. These will find both + // top-level descriptors and nested descriptors. They return nullptr if not + // found. + + const Descriptor* FindMessageTypeByName(ConstStringParam name) const; + const FieldDescriptor* FindFieldByName(ConstStringParam name) const; + const FieldDescriptor* FindExtensionByName(ConstStringParam name) const; + const OneofDescriptor* FindOneofByName(ConstStringParam name) const; + const EnumDescriptor* FindEnumTypeByName(ConstStringParam name) const; + const EnumValueDescriptor* FindEnumValueByName(ConstStringParam name) const; + const ServiceDescriptor* FindServiceByName(ConstStringParam name) const; + const MethodDescriptor* FindMethodByName(ConstStringParam name) const; + + // Finds an extension of the given type by number. The extendee must be + // a member of this DescriptorPool or one of its underlays. + const FieldDescriptor* FindExtensionByNumber(const Descriptor* extendee, + int number) const; + + // Finds an extension of the given type by its printable name. + // See comments above PrintableNameForExtension() for the definition of + // "printable name". The extendee must be a member of this DescriptorPool + // or one of its underlays. Returns nullptr if there is no known message + // extension with the given printable name. + const FieldDescriptor* FindExtensionByPrintableName( + const Descriptor* extendee, ConstStringParam printable_name) const; + + // Finds extensions of extendee. The extensions will be appended to + // out in an undefined order. Only extensions defined directly in + // this DescriptorPool or one of its underlays are guaranteed to be + // found: extensions defined in the fallback database might not be found + // depending on the database implementation. + void FindAllExtensions(const Descriptor* extendee, + std::vector* out) const; + + // Building descriptors -------------------------------------------- + + // When converting a FileDescriptorProto to a FileDescriptor, various + // errors might be detected in the input. The caller may handle these + // programmatically by implementing an ErrorCollector. + class PROTOBUF_EXPORT ErrorCollector { + public: + inline ErrorCollector() {} + virtual ~ErrorCollector(); + + // These constants specify what exact part of the construct is broken. + // This is useful e.g. for mapping the error back to an exact location + // in a .proto file. + enum ErrorLocation { + NAME, // the symbol name, or the package name for files + NUMBER, // field or extension range number + TYPE, // field type + EXTENDEE, // field extendee + DEFAULT_VALUE, // field default value + INPUT_TYPE, // method input type + OUTPUT_TYPE, // method output type + OPTION_NAME, // name in assignment + OPTION_VALUE, // value in option assignment + IMPORT, // import error + OTHER // some other problem + }; + + // Reports an error in the FileDescriptorProto. Use this function if the + // problem occurred should interrupt building the FileDescriptorProto. + virtual void AddError( + const std::string& filename, // File name in which the error occurred. + const std::string& element_name, // Full name of the erroneous element. + const Message* descriptor, // Descriptor of the erroneous element. + ErrorLocation location, // One of the location constants, above. + const std::string& message // Human-readable error message. + ) = 0; + + // Reports a warning in the FileDescriptorProto. Use this function if the + // problem occurred should NOT interrupt building the FileDescriptorProto. + virtual void AddWarning( + const std::string& /*filename*/, // File name in which the error + // occurred. + const std::string& /*element_name*/, // Full name of the erroneous + // element. + const Message* /*descriptor*/, // Descriptor of the erroneous element. + ErrorLocation /*location*/, // One of the location constants, above. + const std::string& /*message*/ // Human-readable error message. + ) {} + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ErrorCollector); + }; + + // Convert the FileDescriptorProto to real descriptors and place them in + // this DescriptorPool. All dependencies of the file must already be in + // the pool. Returns the resulting FileDescriptor, or nullptr if there were + // problems with the input (e.g. the message was invalid, or dependencies + // were missing). Details about the errors are written to GOOGLE_LOG(ERROR). + const FileDescriptor* BuildFile(const FileDescriptorProto& proto); + + // Same as BuildFile() except errors are sent to the given ErrorCollector. + const FileDescriptor* BuildFileCollectingErrors( + const FileDescriptorProto& proto, ErrorCollector* error_collector); + + // By default, it is an error if a FileDescriptorProto contains references + // to types or other files that are not found in the DescriptorPool (or its + // backing DescriptorDatabase, if any). If you call + // AllowUnknownDependencies(), however, then unknown types and files + // will be replaced by placeholder descriptors (which can be identified by + // the is_placeholder() method). This can allow you to + // perform some useful operations with a .proto file even if you do not + // have access to other .proto files on which it depends. However, some + // heuristics must be used to fill in the gaps in information, and these + // can lead to descriptors which are inaccurate. For example, the + // DescriptorPool may be forced to guess whether an unknown type is a message + // or an enum, as well as what package it resides in. Furthermore, + // placeholder types will not be discoverable via FindMessageTypeByName() + // and similar methods, which could confuse some descriptor-based algorithms. + // Generally, the results of this option should be handled with extreme care. + void AllowUnknownDependencies() { allow_unknown_ = true; } + + // By default, weak imports are allowed to be missing, in which case we will + // use a placeholder for the dependency and convert the field to be an Empty + // message field. If you call EnforceWeakDependencies(true), however, the + // DescriptorPool will report a import not found error. + void EnforceWeakDependencies(bool enforce) { enforce_weak_ = enforce; } + + // Internal stuff -------------------------------------------------- + // These methods MUST NOT be called from outside the proto2 library. + // These methods may contain hidden pitfalls and may be removed in a + // future library version. + + // Create a DescriptorPool which is overlaid on top of some other pool. + // If you search for a descriptor in the overlay and it is not found, the + // underlay will be searched as a backup. If the underlay has its own + // underlay, that will be searched next, and so on. This also means that + // files built in the overlay will be cross-linked with the underlay's + // descriptors if necessary. The underlay remains property of the caller; + // it must remain valid for the lifetime of the newly-constructed pool. + // + // Example: Say you want to parse a .proto file at runtime in order to use + // its type with a DynamicMessage. Say this .proto file has dependencies, + // but you know that all the dependencies will be things that are already + // compiled into the binary. For ease of use, you'd like to load the types + // right out of generated_pool() rather than have to parse redundant copies + // of all these .protos and runtime. But, you don't want to add the parsed + // types directly into generated_pool(): this is not allowed, and would be + // bad design anyway. So, instead, you could use generated_pool() as an + // underlay for a new DescriptorPool in which you add only the new file. + // + // WARNING: Use of underlays can lead to many subtle gotchas. Instead, + // try to formulate what you want to do in terms of DescriptorDatabases. + explicit DescriptorPool(const DescriptorPool* underlay); + + // Called by generated classes at init time to add their descriptors to + // generated_pool. Do NOT call this in your own code! filename must be a + // permanent string (e.g. a string literal). + static void InternalAddGeneratedFile(const void* encoded_file_descriptor, + int size); + + // Disallow [enforce_utf8 = false] in .proto files. + void DisallowEnforceUtf8() { disallow_enforce_utf8_ = true; } + + + // For internal use only: Gets a non-const pointer to the generated pool. + // This is called at static-initialization time only, so thread-safety is + // not a concern. If both an underlay and a fallback database are present, + // the underlay takes precedence. + static DescriptorPool* internal_generated_pool(); + + // For internal use only: Gets a non-const pointer to the generated + // descriptor database. + // Only used for testing. + static DescriptorDatabase* internal_generated_database(); + + // For internal use only: Changes the behavior of BuildFile() such that it + // allows the file to make reference to message types declared in other files + // which it did not officially declare as dependencies. + void InternalDontEnforceDependencies(); + + // For internal use only: Enables lazy building of dependencies of a file. + // Delay the building of dependencies of a file descriptor until absolutely + // necessary, like when message_type() is called on a field that is defined + // in that dependency's file. This will cause functional issues if a proto + // or one of its dependencies has errors. Should only be enabled for the + // generated_pool_ (because no descriptor build errors are guaranteed by + // the compilation generation process), testing, or if a lack of descriptor + // build errors can be guaranteed for a pool. + void InternalSetLazilyBuildDependencies() { + lazily_build_dependencies_ = true; + // This needs to be set when lazily building dependencies, as it breaks + // dependency checking. + InternalDontEnforceDependencies(); + } + + // For internal use only. + void internal_set_underlay(const DescriptorPool* underlay) { + underlay_ = underlay; + } + + // For internal (unit test) use only: Returns true if a FileDescriptor has + // been constructed for the given file, false otherwise. Useful for testing + // lazy descriptor initialization behavior. + bool InternalIsFileLoaded(ConstStringParam filename) const; + + // Add a file to unused_import_track_files_. DescriptorBuilder will log + // warnings or errors for those files if there is any unused import. + void AddUnusedImportTrackFile(ConstStringParam file_name, + bool is_error = false); + void ClearUnusedImportTrackFiles(); + + private: + friend class Descriptor; + friend class internal::LazyDescriptor; + friend class FieldDescriptor; + friend class EnumDescriptor; + friend class ServiceDescriptor; + friend class MethodDescriptor; + friend class FileDescriptor; + friend class StreamDescriptor; + friend class DescriptorBuilder; + friend class FileDescriptorTables; + + // Return true if the given name is a sub-symbol of any non-package + // descriptor that already exists in the descriptor pool. (The full + // definition of such types is already known.) + bool IsSubSymbolOfBuiltType(StringPiece name) const; + + // Tries to find something in the fallback database and link in the + // corresponding proto file. Returns true if successful, in which case + // the caller should search for the thing again. These are declared + // const because they are called by (semantically) const methods. + bool TryFindFileInFallbackDatabase(StringPiece name) const; + bool TryFindSymbolInFallbackDatabase(StringPiece name) const; + bool TryFindExtensionInFallbackDatabase(const Descriptor* containing_type, + int field_number) const; + + // This internal find extension method only check with its table and underlay + // descriptor_pool's table. It does not check with fallback DB and no + // additional proto file will be build in this method. + const FieldDescriptor* InternalFindExtensionByNumberNoLock( + const Descriptor* extendee, int number) const; + + // Like BuildFile() but called internally when the file has been loaded from + // fallback_database_. Declared const because it is called by (semantically) + // const methods. + const FileDescriptor* BuildFileFromDatabase( + const FileDescriptorProto& proto) const; + + // Helper for when lazily_build_dependencies_ is set, can look up a symbol + // after the file's descriptor is built, and can build the file where that + // symbol is defined if necessary. Will create a placeholder if the type + // doesn't exist in the fallback database, or the file doesn't build + // successfully. + Symbol CrossLinkOnDemandHelper(StringPiece name, + bool expecting_enum) const; + + // Create a placeholder FileDescriptor of the specified name + FileDescriptor* NewPlaceholderFile(StringPiece name) const; + FileDescriptor* NewPlaceholderFileWithMutexHeld(StringPiece name) const; + + enum PlaceholderType { + PLACEHOLDER_MESSAGE, + PLACEHOLDER_ENUM, + PLACEHOLDER_EXTENDABLE_MESSAGE + }; + // Create a placeholder Descriptor of the specified name + Symbol NewPlaceholder(StringPiece name, + PlaceholderType placeholder_type) const; + Symbol NewPlaceholderWithMutexHeld(StringPiece name, + PlaceholderType placeholder_type) const; + + // If fallback_database_ is nullptr, this is nullptr. Otherwise, this is a + // mutex which must be locked while accessing tables_. + internal::WrappedMutex* mutex_; + + // See constructor. + DescriptorDatabase* fallback_database_; + ErrorCollector* default_error_collector_; + const DescriptorPool* underlay_; + + // This class contains a lot of hash maps with complicated types that + // we'd like to keep out of the header. + class Tables; + std::unique_ptr tables_; + + bool enforce_dependencies_; + bool lazily_build_dependencies_; + bool allow_unknown_; + bool enforce_weak_; + bool disallow_enforce_utf8_; + + // Set of files to track for unused imports. The bool value when true means + // unused imports are treated as errors (and as warnings when false). + std::map unused_import_track_files_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(DescriptorPool); +}; + + +// inline methods ==================================================== + +// These macros makes this repetitive code more readable. +#define PROTOBUF_DEFINE_ACCESSOR(CLASS, FIELD, TYPE) \ + inline TYPE CLASS::FIELD() const { return FIELD##_; } + +// Strings fields are stored as pointers but returned as const references. +#define PROTOBUF_DEFINE_STRING_ACCESSOR(CLASS, FIELD) \ + inline const std::string& CLASS::FIELD() const { return *FIELD##_; } + +// Arrays take an index parameter, obviously. +#define PROTOBUF_DEFINE_ARRAY_ACCESSOR(CLASS, FIELD, TYPE) \ + inline TYPE CLASS::FIELD(int index) const { return FIELD##s_ + index; } + +#define PROTOBUF_DEFINE_OPTIONS_ACCESSOR(CLASS, TYPE) \ + inline const TYPE& CLASS::options() const { return *options_; } + +PROTOBUF_DEFINE_STRING_ACCESSOR(Descriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(Descriptor, full_name) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, file, const FileDescriptor*) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, containing_type, const Descriptor*) + +PROTOBUF_DEFINE_ACCESSOR(Descriptor, field_count, int) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, oneof_decl_count, int) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, real_oneof_decl_count, int) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, nested_type_count, int) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, enum_type_count, int) + +PROTOBUF_DEFINE_ARRAY_ACCESSOR(Descriptor, field, const FieldDescriptor*) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(Descriptor, oneof_decl, const OneofDescriptor*) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(Descriptor, nested_type, const Descriptor*) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(Descriptor, enum_type, const EnumDescriptor*) + +PROTOBUF_DEFINE_ACCESSOR(Descriptor, extension_range_count, int) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, extension_count, int) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(Descriptor, extension_range, + const Descriptor::ExtensionRange*) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(Descriptor, extension, const FieldDescriptor*) + +PROTOBUF_DEFINE_ACCESSOR(Descriptor, reserved_range_count, int) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(Descriptor, reserved_range, + const Descriptor::ReservedRange*) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, reserved_name_count, int) + +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(Descriptor, MessageOptions) +PROTOBUF_DEFINE_ACCESSOR(Descriptor, is_placeholder, bool) + +PROTOBUF_DEFINE_STRING_ACCESSOR(FieldDescriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(FieldDescriptor, full_name) +PROTOBUF_DEFINE_STRING_ACCESSOR(FieldDescriptor, json_name) +PROTOBUF_DEFINE_STRING_ACCESSOR(FieldDescriptor, lowercase_name) +PROTOBUF_DEFINE_STRING_ACCESSOR(FieldDescriptor, camelcase_name) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, file, const FileDescriptor*) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, number, int) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, is_extension, bool) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, label, FieldDescriptor::Label) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, containing_type, const Descriptor*) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, containing_oneof, + const OneofDescriptor*) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, index_in_oneof, int) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, extension_scope, const Descriptor*) +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(FieldDescriptor, FieldOptions) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, has_default_value, bool) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, has_json_name, bool) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, default_value_int32, int32) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, default_value_int64, int64) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, default_value_uint32, uint32) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, default_value_uint64, uint64) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, default_value_float, float) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, default_value_double, double) +PROTOBUF_DEFINE_ACCESSOR(FieldDescriptor, default_value_bool, bool) +PROTOBUF_DEFINE_STRING_ACCESSOR(FieldDescriptor, default_value_string) + +PROTOBUF_DEFINE_STRING_ACCESSOR(OneofDescriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(OneofDescriptor, full_name) +PROTOBUF_DEFINE_ACCESSOR(OneofDescriptor, containing_type, const Descriptor*) +PROTOBUF_DEFINE_ACCESSOR(OneofDescriptor, field_count, int) +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(OneofDescriptor, OneofOptions) + +PROTOBUF_DEFINE_STRING_ACCESSOR(EnumDescriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(EnumDescriptor, full_name) +PROTOBUF_DEFINE_ACCESSOR(EnumDescriptor, file, const FileDescriptor*) +PROTOBUF_DEFINE_ACCESSOR(EnumDescriptor, containing_type, const Descriptor*) +PROTOBUF_DEFINE_ACCESSOR(EnumDescriptor, value_count, int) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(EnumDescriptor, value, + const EnumValueDescriptor*) +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(EnumDescriptor, EnumOptions) +PROTOBUF_DEFINE_ACCESSOR(EnumDescriptor, is_placeholder, bool) +PROTOBUF_DEFINE_ACCESSOR(EnumDescriptor, reserved_range_count, int) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(EnumDescriptor, reserved_range, + const EnumDescriptor::ReservedRange*) +PROTOBUF_DEFINE_ACCESSOR(EnumDescriptor, reserved_name_count, int) + +PROTOBUF_DEFINE_STRING_ACCESSOR(EnumValueDescriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(EnumValueDescriptor, full_name) +PROTOBUF_DEFINE_ACCESSOR(EnumValueDescriptor, number, int) +PROTOBUF_DEFINE_ACCESSOR(EnumValueDescriptor, type, const EnumDescriptor*) +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(EnumValueDescriptor, EnumValueOptions) + +PROTOBUF_DEFINE_STRING_ACCESSOR(ServiceDescriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(ServiceDescriptor, full_name) +PROTOBUF_DEFINE_ACCESSOR(ServiceDescriptor, file, const FileDescriptor*) +PROTOBUF_DEFINE_ACCESSOR(ServiceDescriptor, method_count, int) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(ServiceDescriptor, method, + const MethodDescriptor*) +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(ServiceDescriptor, ServiceOptions) + +PROTOBUF_DEFINE_STRING_ACCESSOR(MethodDescriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(MethodDescriptor, full_name) +PROTOBUF_DEFINE_ACCESSOR(MethodDescriptor, service, const ServiceDescriptor*) +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(MethodDescriptor, MethodOptions) +PROTOBUF_DEFINE_ACCESSOR(MethodDescriptor, client_streaming, bool) +PROTOBUF_DEFINE_ACCESSOR(MethodDescriptor, server_streaming, bool) + +PROTOBUF_DEFINE_STRING_ACCESSOR(FileDescriptor, name) +PROTOBUF_DEFINE_STRING_ACCESSOR(FileDescriptor, package) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, pool, const DescriptorPool*) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, dependency_count, int) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, public_dependency_count, int) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, weak_dependency_count, int) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, message_type_count, int) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, enum_type_count, int) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, service_count, int) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, extension_count, int) +PROTOBUF_DEFINE_OPTIONS_ACCESSOR(FileDescriptor, FileOptions) +PROTOBUF_DEFINE_ACCESSOR(FileDescriptor, is_placeholder, bool) + +PROTOBUF_DEFINE_ARRAY_ACCESSOR(FileDescriptor, message_type, const Descriptor*) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(FileDescriptor, enum_type, const EnumDescriptor*) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(FileDescriptor, service, + const ServiceDescriptor*) +PROTOBUF_DEFINE_ARRAY_ACCESSOR(FileDescriptor, extension, + const FieldDescriptor*) + +#undef PROTOBUF_DEFINE_ACCESSOR +#undef PROTOBUF_DEFINE_STRING_ACCESSOR +#undef PROTOBUF_DEFINE_ARRAY_ACCESSOR + +// A few accessors differ from the macros... + +inline Descriptor::WellKnownType Descriptor::well_known_type() const { + return static_cast(well_known_type_); +} + +inline bool Descriptor::IsExtensionNumber(int number) const { + return FindExtensionRangeContainingNumber(number) != nullptr; +} + +inline bool Descriptor::IsReservedNumber(int number) const { + return FindReservedRangeContainingNumber(number) != nullptr; +} + +inline bool Descriptor::IsReservedName(ConstStringParam name) const { + for (int i = 0; i < reserved_name_count(); i++) { + if (name == static_cast(reserved_name(i))) { + return true; + } + } + return false; +} + +// Can't use PROTOBUF_DEFINE_ARRAY_ACCESSOR because reserved_names_ is actually +// an array of pointers rather than the usual array of objects. +inline const std::string& Descriptor::reserved_name(int index) const { + return *reserved_names_[index]; +} + +inline bool EnumDescriptor::IsReservedNumber(int number) const { + return FindReservedRangeContainingNumber(number) != nullptr; +} + +inline bool EnumDescriptor::IsReservedName(ConstStringParam name) const { + for (int i = 0; i < reserved_name_count(); i++) { + if (name == static_cast(reserved_name(i))) { + return true; + } + } + return false; +} + +// Can't use PROTOBUF_DEFINE_ARRAY_ACCESSOR because reserved_names_ is actually +// an array of pointers rather than the usual array of objects. +inline const std::string& EnumDescriptor::reserved_name(int index) const { + return *reserved_names_[index]; +} + +inline FieldDescriptor::Type FieldDescriptor::type() const { + if (type_once_) { + internal::call_once(*type_once_, &FieldDescriptor::TypeOnceInit, this); + } + return type_; +} + +inline bool FieldDescriptor::is_required() const { + return label() == LABEL_REQUIRED; +} + +inline bool FieldDescriptor::is_optional() const { + return label() == LABEL_OPTIONAL; +} + +inline bool FieldDescriptor::is_repeated() const { + return label() == LABEL_REPEATED; +} + +inline bool FieldDescriptor::is_packable() const { + return is_repeated() && IsTypePackable(type()); +} + +inline bool FieldDescriptor::is_map() const { + return type() == TYPE_MESSAGE && is_map_message_type(); +} + +inline bool FieldDescriptor::has_optional_keyword() const { + return proto3_optional_ || + (file()->syntax() == FileDescriptor::SYNTAX_PROTO2 && is_optional() && + !containing_oneof()); +} + +inline const OneofDescriptor* FieldDescriptor::real_containing_oneof() const { + return containing_oneof_ && !containing_oneof_->is_synthetic() + ? containing_oneof_ + : nullptr; +} + +inline bool FieldDescriptor::has_presence() const { + if (is_repeated()) return false; + return cpp_type() == CPPTYPE_MESSAGE || containing_oneof() || + file()->syntax() == FileDescriptor::SYNTAX_PROTO2; +} + +// To save space, index() is computed by looking at the descriptor's position +// in the parent's array of children. +inline int FieldDescriptor::index() const { + if (!is_extension_) { + return static_cast(this - containing_type()->fields_); + } else if (extension_scope_ != nullptr) { + return static_cast(this - extension_scope_->extensions_); + } else { + return static_cast(this - file_->extensions_); + } +} + +inline int Descriptor::index() const { + if (containing_type_ == nullptr) { + return static_cast(this - file_->message_types_); + } else { + return static_cast(this - containing_type_->nested_types_); + } +} + +inline const FileDescriptor* OneofDescriptor::file() const { + return containing_type()->file(); +} + +inline int OneofDescriptor::index() const { + return static_cast(this - containing_type_->oneof_decls_); +} + +inline bool OneofDescriptor::is_synthetic() const { + return field_count() == 1 && field(0)->proto3_optional_; +} + +inline int EnumDescriptor::index() const { + if (containing_type_ == nullptr) { + return static_cast(this - file_->enum_types_); + } else { + return static_cast(this - containing_type_->enum_types_); + } +} + +inline const FileDescriptor* EnumValueDescriptor::file() const { + return type()->file(); +} + +inline int EnumValueDescriptor::index() const { + return static_cast(this - type_->values_); +} + +inline int ServiceDescriptor::index() const { + return static_cast(this - file_->services_); +} + +inline const FileDescriptor* MethodDescriptor::file() const { + return service()->file(); +} + +inline int MethodDescriptor::index() const { + return static_cast(this - service_->methods_); +} + +inline const char* FieldDescriptor::type_name() const { + return kTypeToName[type()]; +} + +inline FieldDescriptor::CppType FieldDescriptor::cpp_type() const { + return kTypeToCppTypeMap[type()]; +} + +inline const char* FieldDescriptor::cpp_type_name() const { + return kCppTypeToName[kTypeToCppTypeMap[type()]]; +} + +inline FieldDescriptor::CppType FieldDescriptor::TypeToCppType(Type type) { + return kTypeToCppTypeMap[type]; +} + +inline const char* FieldDescriptor::TypeName(Type type) { + return kTypeToName[type]; +} + +inline const char* FieldDescriptor::CppTypeName(CppType cpp_type) { + return kCppTypeToName[cpp_type]; +} + +inline bool FieldDescriptor::IsTypePackable(Type field_type) { + return (field_type != FieldDescriptor::TYPE_STRING && + field_type != FieldDescriptor::TYPE_GROUP && + field_type != FieldDescriptor::TYPE_MESSAGE && + field_type != FieldDescriptor::TYPE_BYTES); +} + +inline const FileDescriptor* FileDescriptor::public_dependency( + int index) const { + return dependency(public_dependencies_[index]); +} + +inline const FileDescriptor* FileDescriptor::weak_dependency(int index) const { + return dependency(weak_dependencies_[index]); +} + +inline FileDescriptor::Syntax FileDescriptor::syntax() const { return syntax_; } + +// Can't use PROTOBUF_DEFINE_ARRAY_ACCESSOR because fields_ is actually an array +// of pointers rather than the usual array of objects. +inline const FieldDescriptor* OneofDescriptor::field(int index) const { + return fields_[index]; +} + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_DESCRIPTOR_H__ diff --git a/external/include/google/protobuf/descriptor.pb.h b/external/include/google/protobuf/descriptor.pb.h new file mode 100644 index 0000000..b72cdea --- /dev/null +++ b/external/include/google/protobuf/descriptor.pb.h @@ -0,0 +1,12513 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/descriptor.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fdescriptor_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fdescriptor_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fdescriptor_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[27] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fdescriptor_2eproto; +PROTOBUF_NAMESPACE_OPEN +class DescriptorProto; +struct DescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern DescriptorProtoDefaultTypeInternal _DescriptorProto_default_instance_; +class DescriptorProto_ExtensionRange; +struct DescriptorProto_ExtensionRangeDefaultTypeInternal; +PROTOBUF_EXPORT extern DescriptorProto_ExtensionRangeDefaultTypeInternal _DescriptorProto_ExtensionRange_default_instance_; +class DescriptorProto_ReservedRange; +struct DescriptorProto_ReservedRangeDefaultTypeInternal; +PROTOBUF_EXPORT extern DescriptorProto_ReservedRangeDefaultTypeInternal _DescriptorProto_ReservedRange_default_instance_; +class EnumDescriptorProto; +struct EnumDescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern EnumDescriptorProtoDefaultTypeInternal _EnumDescriptorProto_default_instance_; +class EnumDescriptorProto_EnumReservedRange; +struct EnumDescriptorProto_EnumReservedRangeDefaultTypeInternal; +PROTOBUF_EXPORT extern EnumDescriptorProto_EnumReservedRangeDefaultTypeInternal _EnumDescriptorProto_EnumReservedRange_default_instance_; +class EnumOptions; +struct EnumOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern EnumOptionsDefaultTypeInternal _EnumOptions_default_instance_; +class EnumValueDescriptorProto; +struct EnumValueDescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern EnumValueDescriptorProtoDefaultTypeInternal _EnumValueDescriptorProto_default_instance_; +class EnumValueOptions; +struct EnumValueOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern EnumValueOptionsDefaultTypeInternal _EnumValueOptions_default_instance_; +class ExtensionRangeOptions; +struct ExtensionRangeOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern ExtensionRangeOptionsDefaultTypeInternal _ExtensionRangeOptions_default_instance_; +class FieldDescriptorProto; +struct FieldDescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern FieldDescriptorProtoDefaultTypeInternal _FieldDescriptorProto_default_instance_; +class FieldOptions; +struct FieldOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern FieldOptionsDefaultTypeInternal _FieldOptions_default_instance_; +class FileDescriptorProto; +struct FileDescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern FileDescriptorProtoDefaultTypeInternal _FileDescriptorProto_default_instance_; +class FileDescriptorSet; +struct FileDescriptorSetDefaultTypeInternal; +PROTOBUF_EXPORT extern FileDescriptorSetDefaultTypeInternal _FileDescriptorSet_default_instance_; +class FileOptions; +struct FileOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern FileOptionsDefaultTypeInternal _FileOptions_default_instance_; +class GeneratedCodeInfo; +struct GeneratedCodeInfoDefaultTypeInternal; +PROTOBUF_EXPORT extern GeneratedCodeInfoDefaultTypeInternal _GeneratedCodeInfo_default_instance_; +class GeneratedCodeInfo_Annotation; +struct GeneratedCodeInfo_AnnotationDefaultTypeInternal; +PROTOBUF_EXPORT extern GeneratedCodeInfo_AnnotationDefaultTypeInternal _GeneratedCodeInfo_Annotation_default_instance_; +class MessageOptions; +struct MessageOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern MessageOptionsDefaultTypeInternal _MessageOptions_default_instance_; +class MethodDescriptorProto; +struct MethodDescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern MethodDescriptorProtoDefaultTypeInternal _MethodDescriptorProto_default_instance_; +class MethodOptions; +struct MethodOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern MethodOptionsDefaultTypeInternal _MethodOptions_default_instance_; +class OneofDescriptorProto; +struct OneofDescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern OneofDescriptorProtoDefaultTypeInternal _OneofDescriptorProto_default_instance_; +class OneofOptions; +struct OneofOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern OneofOptionsDefaultTypeInternal _OneofOptions_default_instance_; +class ServiceDescriptorProto; +struct ServiceDescriptorProtoDefaultTypeInternal; +PROTOBUF_EXPORT extern ServiceDescriptorProtoDefaultTypeInternal _ServiceDescriptorProto_default_instance_; +class ServiceOptions; +struct ServiceOptionsDefaultTypeInternal; +PROTOBUF_EXPORT extern ServiceOptionsDefaultTypeInternal _ServiceOptions_default_instance_; +class SourceCodeInfo; +struct SourceCodeInfoDefaultTypeInternal; +PROTOBUF_EXPORT extern SourceCodeInfoDefaultTypeInternal _SourceCodeInfo_default_instance_; +class SourceCodeInfo_Location; +struct SourceCodeInfo_LocationDefaultTypeInternal; +PROTOBUF_EXPORT extern SourceCodeInfo_LocationDefaultTypeInternal _SourceCodeInfo_Location_default_instance_; +class UninterpretedOption; +struct UninterpretedOptionDefaultTypeInternal; +PROTOBUF_EXPORT extern UninterpretedOptionDefaultTypeInternal _UninterpretedOption_default_instance_; +class UninterpretedOption_NamePart; +struct UninterpretedOption_NamePartDefaultTypeInternal; +PROTOBUF_EXPORT extern UninterpretedOption_NamePartDefaultTypeInternal _UninterpretedOption_NamePart_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::DescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::EnumOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::EnumValueOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::FieldOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::FileDescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::FileDescriptorSet* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::FileOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::MessageOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::MethodOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::OneofOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::ServiceOptions* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::SourceCodeInfo* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::UninterpretedOption* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +enum FieldDescriptorProto_Type : int { + FieldDescriptorProto_Type_TYPE_DOUBLE = 1, + FieldDescriptorProto_Type_TYPE_FLOAT = 2, + FieldDescriptorProto_Type_TYPE_INT64 = 3, + FieldDescriptorProto_Type_TYPE_UINT64 = 4, + FieldDescriptorProto_Type_TYPE_INT32 = 5, + FieldDescriptorProto_Type_TYPE_FIXED64 = 6, + FieldDescriptorProto_Type_TYPE_FIXED32 = 7, + FieldDescriptorProto_Type_TYPE_BOOL = 8, + FieldDescriptorProto_Type_TYPE_STRING = 9, + FieldDescriptorProto_Type_TYPE_GROUP = 10, + FieldDescriptorProto_Type_TYPE_MESSAGE = 11, + FieldDescriptorProto_Type_TYPE_BYTES = 12, + FieldDescriptorProto_Type_TYPE_UINT32 = 13, + FieldDescriptorProto_Type_TYPE_ENUM = 14, + FieldDescriptorProto_Type_TYPE_SFIXED32 = 15, + FieldDescriptorProto_Type_TYPE_SFIXED64 = 16, + FieldDescriptorProto_Type_TYPE_SINT32 = 17, + FieldDescriptorProto_Type_TYPE_SINT64 = 18 +}; +PROTOBUF_EXPORT bool FieldDescriptorProto_Type_IsValid(int value); +constexpr FieldDescriptorProto_Type FieldDescriptorProto_Type_Type_MIN = FieldDescriptorProto_Type_TYPE_DOUBLE; +constexpr FieldDescriptorProto_Type FieldDescriptorProto_Type_Type_MAX = FieldDescriptorProto_Type_TYPE_SINT64; +constexpr int FieldDescriptorProto_Type_Type_ARRAYSIZE = FieldDescriptorProto_Type_Type_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FieldDescriptorProto_Type_descriptor(); +template +inline const std::string& FieldDescriptorProto_Type_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function FieldDescriptorProto_Type_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + FieldDescriptorProto_Type_descriptor(), enum_t_value); +} +inline bool FieldDescriptorProto_Type_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FieldDescriptorProto_Type* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + FieldDescriptorProto_Type_descriptor(), name, value); +} +enum FieldDescriptorProto_Label : int { + FieldDescriptorProto_Label_LABEL_OPTIONAL = 1, + FieldDescriptorProto_Label_LABEL_REQUIRED = 2, + FieldDescriptorProto_Label_LABEL_REPEATED = 3 +}; +PROTOBUF_EXPORT bool FieldDescriptorProto_Label_IsValid(int value); +constexpr FieldDescriptorProto_Label FieldDescriptorProto_Label_Label_MIN = FieldDescriptorProto_Label_LABEL_OPTIONAL; +constexpr FieldDescriptorProto_Label FieldDescriptorProto_Label_Label_MAX = FieldDescriptorProto_Label_LABEL_REPEATED; +constexpr int FieldDescriptorProto_Label_Label_ARRAYSIZE = FieldDescriptorProto_Label_Label_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FieldDescriptorProto_Label_descriptor(); +template +inline const std::string& FieldDescriptorProto_Label_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function FieldDescriptorProto_Label_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + FieldDescriptorProto_Label_descriptor(), enum_t_value); +} +inline bool FieldDescriptorProto_Label_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FieldDescriptorProto_Label* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + FieldDescriptorProto_Label_descriptor(), name, value); +} +enum FileOptions_OptimizeMode : int { + FileOptions_OptimizeMode_SPEED = 1, + FileOptions_OptimizeMode_CODE_SIZE = 2, + FileOptions_OptimizeMode_LITE_RUNTIME = 3 +}; +PROTOBUF_EXPORT bool FileOptions_OptimizeMode_IsValid(int value); +constexpr FileOptions_OptimizeMode FileOptions_OptimizeMode_OptimizeMode_MIN = FileOptions_OptimizeMode_SPEED; +constexpr FileOptions_OptimizeMode FileOptions_OptimizeMode_OptimizeMode_MAX = FileOptions_OptimizeMode_LITE_RUNTIME; +constexpr int FileOptions_OptimizeMode_OptimizeMode_ARRAYSIZE = FileOptions_OptimizeMode_OptimizeMode_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FileOptions_OptimizeMode_descriptor(); +template +inline const std::string& FileOptions_OptimizeMode_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function FileOptions_OptimizeMode_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + FileOptions_OptimizeMode_descriptor(), enum_t_value); +} +inline bool FileOptions_OptimizeMode_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FileOptions_OptimizeMode* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + FileOptions_OptimizeMode_descriptor(), name, value); +} +enum FieldOptions_CType : int { + FieldOptions_CType_STRING = 0, + FieldOptions_CType_CORD = 1, + FieldOptions_CType_STRING_PIECE = 2 +}; +PROTOBUF_EXPORT bool FieldOptions_CType_IsValid(int value); +constexpr FieldOptions_CType FieldOptions_CType_CType_MIN = FieldOptions_CType_STRING; +constexpr FieldOptions_CType FieldOptions_CType_CType_MAX = FieldOptions_CType_STRING_PIECE; +constexpr int FieldOptions_CType_CType_ARRAYSIZE = FieldOptions_CType_CType_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FieldOptions_CType_descriptor(); +template +inline const std::string& FieldOptions_CType_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function FieldOptions_CType_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + FieldOptions_CType_descriptor(), enum_t_value); +} +inline bool FieldOptions_CType_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FieldOptions_CType* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + FieldOptions_CType_descriptor(), name, value); +} +enum FieldOptions_JSType : int { + FieldOptions_JSType_JS_NORMAL = 0, + FieldOptions_JSType_JS_STRING = 1, + FieldOptions_JSType_JS_NUMBER = 2 +}; +PROTOBUF_EXPORT bool FieldOptions_JSType_IsValid(int value); +constexpr FieldOptions_JSType FieldOptions_JSType_JSType_MIN = FieldOptions_JSType_JS_NORMAL; +constexpr FieldOptions_JSType FieldOptions_JSType_JSType_MAX = FieldOptions_JSType_JS_NUMBER; +constexpr int FieldOptions_JSType_JSType_ARRAYSIZE = FieldOptions_JSType_JSType_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FieldOptions_JSType_descriptor(); +template +inline const std::string& FieldOptions_JSType_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function FieldOptions_JSType_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + FieldOptions_JSType_descriptor(), enum_t_value); +} +inline bool FieldOptions_JSType_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, FieldOptions_JSType* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + FieldOptions_JSType_descriptor(), name, value); +} +enum MethodOptions_IdempotencyLevel : int { + MethodOptions_IdempotencyLevel_IDEMPOTENCY_UNKNOWN = 0, + MethodOptions_IdempotencyLevel_NO_SIDE_EFFECTS = 1, + MethodOptions_IdempotencyLevel_IDEMPOTENT = 2 +}; +PROTOBUF_EXPORT bool MethodOptions_IdempotencyLevel_IsValid(int value); +constexpr MethodOptions_IdempotencyLevel MethodOptions_IdempotencyLevel_IdempotencyLevel_MIN = MethodOptions_IdempotencyLevel_IDEMPOTENCY_UNKNOWN; +constexpr MethodOptions_IdempotencyLevel MethodOptions_IdempotencyLevel_IdempotencyLevel_MAX = MethodOptions_IdempotencyLevel_IDEMPOTENT; +constexpr int MethodOptions_IdempotencyLevel_IdempotencyLevel_ARRAYSIZE = MethodOptions_IdempotencyLevel_IdempotencyLevel_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MethodOptions_IdempotencyLevel_descriptor(); +template +inline const std::string& MethodOptions_IdempotencyLevel_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function MethodOptions_IdempotencyLevel_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + MethodOptions_IdempotencyLevel_descriptor(), enum_t_value); +} +inline bool MethodOptions_IdempotencyLevel_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MethodOptions_IdempotencyLevel* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + MethodOptions_IdempotencyLevel_descriptor(), name, value); +} +// =================================================================== + +class PROTOBUF_EXPORT FileDescriptorSet final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.FileDescriptorSet) */ { + public: + inline FileDescriptorSet() : FileDescriptorSet(nullptr) {} + ~FileDescriptorSet() override; + explicit constexpr FileDescriptorSet(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FileDescriptorSet(const FileDescriptorSet& from); + FileDescriptorSet(FileDescriptorSet&& from) noexcept + : FileDescriptorSet() { + *this = ::std::move(from); + } + + inline FileDescriptorSet& operator=(const FileDescriptorSet& from) { + CopyFrom(from); + return *this; + } + inline FileDescriptorSet& operator=(FileDescriptorSet&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FileDescriptorSet& default_instance() { + return *internal_default_instance(); + } + static inline const FileDescriptorSet* internal_default_instance() { + return reinterpret_cast( + &_FileDescriptorSet_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(FileDescriptorSet& a, FileDescriptorSet& b) { + a.Swap(&b); + } + inline void Swap(FileDescriptorSet* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FileDescriptorSet* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline FileDescriptorSet* New() const final { + return new FileDescriptorSet(); + } + + FileDescriptorSet* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FileDescriptorSet& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FileDescriptorSet& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FileDescriptorSet* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.FileDescriptorSet"; + } + protected: + explicit FileDescriptorSet(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFileFieldNumber = 1, + }; + // repeated .google.protobuf.FileDescriptorProto file = 1; + int file_size() const; + private: + int _internal_file_size() const; + public: + void clear_file(); + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* mutable_file(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >* + mutable_file(); + private: + const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& _internal_file(int index) const; + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* _internal_add_file(); + public: + const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& file(int index) const; + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* add_file(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >& + file() const; + + // @@protoc_insertion_point(class_scope:google.protobuf.FileDescriptorSet) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto > file_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT FileDescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.FileDescriptorProto) */ { + public: + inline FileDescriptorProto() : FileDescriptorProto(nullptr) {} + ~FileDescriptorProto() override; + explicit constexpr FileDescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FileDescriptorProto(const FileDescriptorProto& from); + FileDescriptorProto(FileDescriptorProto&& from) noexcept + : FileDescriptorProto() { + *this = ::std::move(from); + } + + inline FileDescriptorProto& operator=(const FileDescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline FileDescriptorProto& operator=(FileDescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FileDescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const FileDescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_FileDescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(FileDescriptorProto& a, FileDescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(FileDescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FileDescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline FileDescriptorProto* New() const final { + return new FileDescriptorProto(); + } + + FileDescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FileDescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FileDescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FileDescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.FileDescriptorProto"; + } + protected: + explicit FileDescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kDependencyFieldNumber = 3, + kMessageTypeFieldNumber = 4, + kEnumTypeFieldNumber = 5, + kServiceFieldNumber = 6, + kExtensionFieldNumber = 7, + kPublicDependencyFieldNumber = 10, + kWeakDependencyFieldNumber = 11, + kNameFieldNumber = 1, + kPackageFieldNumber = 2, + kSyntaxFieldNumber = 12, + kOptionsFieldNumber = 8, + kSourceCodeInfoFieldNumber = 9, + }; + // repeated string dependency = 3; + int dependency_size() const; + private: + int _internal_dependency_size() const; + public: + void clear_dependency(); + const std::string& dependency(int index) const; + std::string* mutable_dependency(int index); + void set_dependency(int index, const std::string& value); + void set_dependency(int index, std::string&& value); + void set_dependency(int index, const char* value); + void set_dependency(int index, const char* value, size_t size); + std::string* add_dependency(); + void add_dependency(const std::string& value); + void add_dependency(std::string&& value); + void add_dependency(const char* value); + void add_dependency(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& dependency() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_dependency(); + private: + const std::string& _internal_dependency(int index) const; + std::string* _internal_add_dependency(); + public: + + // repeated .google.protobuf.DescriptorProto message_type = 4; + int message_type_size() const; + private: + int _internal_message_type_size() const; + public: + void clear_message_type(); + PROTOBUF_NAMESPACE_ID::DescriptorProto* mutable_message_type(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >* + mutable_message_type(); + private: + const PROTOBUF_NAMESPACE_ID::DescriptorProto& _internal_message_type(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto* _internal_add_message_type(); + public: + const PROTOBUF_NAMESPACE_ID::DescriptorProto& message_type(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto* add_message_type(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >& + message_type() const; + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 5; + int enum_type_size() const; + private: + int _internal_enum_type_size() const; + public: + void clear_enum_type(); + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* mutable_enum_type(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >* + mutable_enum_type(); + private: + const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& _internal_enum_type(int index) const; + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* _internal_add_enum_type(); + public: + const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& enum_type(int index) const; + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* add_enum_type(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >& + enum_type() const; + + // repeated .google.protobuf.ServiceDescriptorProto service = 6; + int service_size() const; + private: + int _internal_service_size() const; + public: + void clear_service(); + PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* mutable_service(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto >* + mutable_service(); + private: + const PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto& _internal_service(int index) const; + PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* _internal_add_service(); + public: + const PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto& service(int index) const; + PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* add_service(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto >& + service() const; + + // repeated .google.protobuf.FieldDescriptorProto extension = 7; + int extension_size() const; + private: + int _internal_extension_size() const; + public: + void clear_extension(); + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* mutable_extension(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >* + mutable_extension(); + private: + const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& _internal_extension(int index) const; + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* _internal_add_extension(); + public: + const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& extension(int index) const; + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* add_extension(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >& + extension() const; + + // repeated int32 public_dependency = 10; + int public_dependency_size() const; + private: + int _internal_public_dependency_size() const; + public: + void clear_public_dependency(); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_public_dependency(int index) const; + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + _internal_public_dependency() const; + void _internal_add_public_dependency(::PROTOBUF_NAMESPACE_ID::int32 value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + _internal_mutable_public_dependency(); + public: + ::PROTOBUF_NAMESPACE_ID::int32 public_dependency(int index) const; + void set_public_dependency(int index, ::PROTOBUF_NAMESPACE_ID::int32 value); + void add_public_dependency(::PROTOBUF_NAMESPACE_ID::int32 value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + public_dependency() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + mutable_public_dependency(); + + // repeated int32 weak_dependency = 11; + int weak_dependency_size() const; + private: + int _internal_weak_dependency_size() const; + public: + void clear_weak_dependency(); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_weak_dependency(int index) const; + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + _internal_weak_dependency() const; + void _internal_add_weak_dependency(::PROTOBUF_NAMESPACE_ID::int32 value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + _internal_mutable_weak_dependency(); + public: + ::PROTOBUF_NAMESPACE_ID::int32 weak_dependency(int index) const; + void set_weak_dependency(int index, ::PROTOBUF_NAMESPACE_ID::int32 value); + void add_weak_dependency(::PROTOBUF_NAMESPACE_ID::int32 value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + weak_dependency() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + mutable_weak_dependency(); + + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional string package = 2; + bool has_package() const; + private: + bool _internal_has_package() const; + public: + void clear_package(); + const std::string& package() const; + template + void set_package(ArgT0&& arg0, ArgT... args); + std::string* mutable_package(); + PROTOBUF_MUST_USE_RESULT std::string* release_package(); + void set_allocated_package(std::string* package); + private: + const std::string& _internal_package() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_package(const std::string& value); + std::string* _internal_mutable_package(); + public: + + // optional string syntax = 12; + bool has_syntax() const; + private: + bool _internal_has_syntax() const; + public: + void clear_syntax(); + const std::string& syntax() const; + template + void set_syntax(ArgT0&& arg0, ArgT... args); + std::string* mutable_syntax(); + PROTOBUF_MUST_USE_RESULT std::string* release_syntax(); + void set_allocated_syntax(std::string* syntax); + private: + const std::string& _internal_syntax() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_syntax(const std::string& value); + std::string* _internal_mutable_syntax(); + public: + + // optional .google.protobuf.FileOptions options = 8; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::FileOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::FileOptions* release_options(); + PROTOBUF_NAMESPACE_ID::FileOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::FileOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::FileOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::FileOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::FileOptions* options); + PROTOBUF_NAMESPACE_ID::FileOptions* unsafe_arena_release_options(); + + // optional .google.protobuf.SourceCodeInfo source_code_info = 9; + bool has_source_code_info() const; + private: + bool _internal_has_source_code_info() const; + public: + void clear_source_code_info(); + const PROTOBUF_NAMESPACE_ID::SourceCodeInfo& source_code_info() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::SourceCodeInfo* release_source_code_info(); + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* mutable_source_code_info(); + void set_allocated_source_code_info(PROTOBUF_NAMESPACE_ID::SourceCodeInfo* source_code_info); + private: + const PROTOBUF_NAMESPACE_ID::SourceCodeInfo& _internal_source_code_info() const; + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* _internal_mutable_source_code_info(); + public: + void unsafe_arena_set_allocated_source_code_info( + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* source_code_info); + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* unsafe_arena_release_source_code_info(); + + // @@protoc_insertion_point(class_scope:google.protobuf.FileDescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField dependency_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto > message_type_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto > enum_type_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto > service_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto > extension_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > public_dependency_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > weak_dependency_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr package_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr syntax_; + PROTOBUF_NAMESPACE_ID::FileOptions* options_; + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* source_code_info_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT DescriptorProto_ExtensionRange final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.DescriptorProto.ExtensionRange) */ { + public: + inline DescriptorProto_ExtensionRange() : DescriptorProto_ExtensionRange(nullptr) {} + ~DescriptorProto_ExtensionRange() override; + explicit constexpr DescriptorProto_ExtensionRange(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + DescriptorProto_ExtensionRange(const DescriptorProto_ExtensionRange& from); + DescriptorProto_ExtensionRange(DescriptorProto_ExtensionRange&& from) noexcept + : DescriptorProto_ExtensionRange() { + *this = ::std::move(from); + } + + inline DescriptorProto_ExtensionRange& operator=(const DescriptorProto_ExtensionRange& from) { + CopyFrom(from); + return *this; + } + inline DescriptorProto_ExtensionRange& operator=(DescriptorProto_ExtensionRange&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DescriptorProto_ExtensionRange& default_instance() { + return *internal_default_instance(); + } + static inline const DescriptorProto_ExtensionRange* internal_default_instance() { + return reinterpret_cast( + &_DescriptorProto_ExtensionRange_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + friend void swap(DescriptorProto_ExtensionRange& a, DescriptorProto_ExtensionRange& b) { + a.Swap(&b); + } + inline void Swap(DescriptorProto_ExtensionRange* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DescriptorProto_ExtensionRange* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline DescriptorProto_ExtensionRange* New() const final { + return new DescriptorProto_ExtensionRange(); + } + + DescriptorProto_ExtensionRange* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const DescriptorProto_ExtensionRange& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const DescriptorProto_ExtensionRange& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(DescriptorProto_ExtensionRange* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.DescriptorProto.ExtensionRange"; + } + protected: + explicit DescriptorProto_ExtensionRange(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kOptionsFieldNumber = 3, + kStartFieldNumber = 1, + kEndFieldNumber = 2, + }; + // optional .google.protobuf.ExtensionRangeOptions options = 3; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* release_options(); + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* options); + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* unsafe_arena_release_options(); + + // optional int32 start = 1; + bool has_start() const; + private: + bool _internal_has_start() const; + public: + void clear_start(); + ::PROTOBUF_NAMESPACE_ID::int32 start() const; + void set_start(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_start() const; + void _internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional int32 end = 2; + bool has_end() const; + private: + bool _internal_has_end() const; + public: + void clear_end(); + ::PROTOBUF_NAMESPACE_ID::int32 end() const; + void set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_end() const; + void _internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.DescriptorProto.ExtensionRange) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* options_; + ::PROTOBUF_NAMESPACE_ID::int32 start_; + ::PROTOBUF_NAMESPACE_ID::int32 end_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT DescriptorProto_ReservedRange final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.DescriptorProto.ReservedRange) */ { + public: + inline DescriptorProto_ReservedRange() : DescriptorProto_ReservedRange(nullptr) {} + ~DescriptorProto_ReservedRange() override; + explicit constexpr DescriptorProto_ReservedRange(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + DescriptorProto_ReservedRange(const DescriptorProto_ReservedRange& from); + DescriptorProto_ReservedRange(DescriptorProto_ReservedRange&& from) noexcept + : DescriptorProto_ReservedRange() { + *this = ::std::move(from); + } + + inline DescriptorProto_ReservedRange& operator=(const DescriptorProto_ReservedRange& from) { + CopyFrom(from); + return *this; + } + inline DescriptorProto_ReservedRange& operator=(DescriptorProto_ReservedRange&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DescriptorProto_ReservedRange& default_instance() { + return *internal_default_instance(); + } + static inline const DescriptorProto_ReservedRange* internal_default_instance() { + return reinterpret_cast( + &_DescriptorProto_ReservedRange_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + friend void swap(DescriptorProto_ReservedRange& a, DescriptorProto_ReservedRange& b) { + a.Swap(&b); + } + inline void Swap(DescriptorProto_ReservedRange* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DescriptorProto_ReservedRange* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline DescriptorProto_ReservedRange* New() const final { + return new DescriptorProto_ReservedRange(); + } + + DescriptorProto_ReservedRange* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const DescriptorProto_ReservedRange& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const DescriptorProto_ReservedRange& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(DescriptorProto_ReservedRange* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.DescriptorProto.ReservedRange"; + } + protected: + explicit DescriptorProto_ReservedRange(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kStartFieldNumber = 1, + kEndFieldNumber = 2, + }; + // optional int32 start = 1; + bool has_start() const; + private: + bool _internal_has_start() const; + public: + void clear_start(); + ::PROTOBUF_NAMESPACE_ID::int32 start() const; + void set_start(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_start() const; + void _internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional int32 end = 2; + bool has_end() const; + private: + bool _internal_has_end() const; + public: + void clear_end(); + ::PROTOBUF_NAMESPACE_ID::int32 end() const; + void set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_end() const; + void _internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.DescriptorProto.ReservedRange) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::int32 start_; + ::PROTOBUF_NAMESPACE_ID::int32 end_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT DescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.DescriptorProto) */ { + public: + inline DescriptorProto() : DescriptorProto(nullptr) {} + ~DescriptorProto() override; + explicit constexpr DescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + DescriptorProto(const DescriptorProto& from); + DescriptorProto(DescriptorProto&& from) noexcept + : DescriptorProto() { + *this = ::std::move(from); + } + + inline DescriptorProto& operator=(const DescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline DescriptorProto& operator=(DescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const DescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const DescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_DescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; + + friend void swap(DescriptorProto& a, DescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(DescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(DescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline DescriptorProto* New() const final { + return new DescriptorProto(); + } + + DescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const DescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const DescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(DescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.DescriptorProto"; + } + protected: + explicit DescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef DescriptorProto_ExtensionRange ExtensionRange; + typedef DescriptorProto_ReservedRange ReservedRange; + + // accessors ------------------------------------------------------- + + enum : int { + kFieldFieldNumber = 2, + kNestedTypeFieldNumber = 3, + kEnumTypeFieldNumber = 4, + kExtensionRangeFieldNumber = 5, + kExtensionFieldNumber = 6, + kOneofDeclFieldNumber = 8, + kReservedRangeFieldNumber = 9, + kReservedNameFieldNumber = 10, + kNameFieldNumber = 1, + kOptionsFieldNumber = 7, + }; + // repeated .google.protobuf.FieldDescriptorProto field = 2; + int field_size() const; + private: + int _internal_field_size() const; + public: + void clear_field(); + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* mutable_field(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >* + mutable_field(); + private: + const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& _internal_field(int index) const; + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* _internal_add_field(); + public: + const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& field(int index) const; + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* add_field(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >& + field() const; + + // repeated .google.protobuf.DescriptorProto nested_type = 3; + int nested_type_size() const; + private: + int _internal_nested_type_size() const; + public: + void clear_nested_type(); + PROTOBUF_NAMESPACE_ID::DescriptorProto* mutable_nested_type(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >* + mutable_nested_type(); + private: + const PROTOBUF_NAMESPACE_ID::DescriptorProto& _internal_nested_type(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto* _internal_add_nested_type(); + public: + const PROTOBUF_NAMESPACE_ID::DescriptorProto& nested_type(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto* add_nested_type(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >& + nested_type() const; + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 4; + int enum_type_size() const; + private: + int _internal_enum_type_size() const; + public: + void clear_enum_type(); + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* mutable_enum_type(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >* + mutable_enum_type(); + private: + const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& _internal_enum_type(int index) const; + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* _internal_add_enum_type(); + public: + const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& enum_type(int index) const; + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* add_enum_type(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >& + enum_type() const; + + // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5; + int extension_range_size() const; + private: + int _internal_extension_range_size() const; + public: + void clear_extension_range(); + PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* mutable_extension_range(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange >* + mutable_extension_range(); + private: + const PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange& _internal_extension_range(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* _internal_add_extension_range(); + public: + const PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange& extension_range(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* add_extension_range(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange >& + extension_range() const; + + // repeated .google.protobuf.FieldDescriptorProto extension = 6; + int extension_size() const; + private: + int _internal_extension_size() const; + public: + void clear_extension(); + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* mutable_extension(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >* + mutable_extension(); + private: + const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& _internal_extension(int index) const; + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* _internal_add_extension(); + public: + const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& extension(int index) const; + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* add_extension(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >& + extension() const; + + // repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8; + int oneof_decl_size() const; + private: + int _internal_oneof_decl_size() const; + public: + void clear_oneof_decl(); + PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* mutable_oneof_decl(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::OneofDescriptorProto >* + mutable_oneof_decl(); + private: + const PROTOBUF_NAMESPACE_ID::OneofDescriptorProto& _internal_oneof_decl(int index) const; + PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* _internal_add_oneof_decl(); + public: + const PROTOBUF_NAMESPACE_ID::OneofDescriptorProto& oneof_decl(int index) const; + PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* add_oneof_decl(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::OneofDescriptorProto >& + oneof_decl() const; + + // repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9; + int reserved_range_size() const; + private: + int _internal_reserved_range_size() const; + public: + void clear_reserved_range(); + PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* mutable_reserved_range(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange >* + mutable_reserved_range(); + private: + const PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange& _internal_reserved_range(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* _internal_add_reserved_range(); + public: + const PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange& reserved_range(int index) const; + PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* add_reserved_range(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange >& + reserved_range() const; + + // repeated string reserved_name = 10; + int reserved_name_size() const; + private: + int _internal_reserved_name_size() const; + public: + void clear_reserved_name(); + const std::string& reserved_name(int index) const; + std::string* mutable_reserved_name(int index); + void set_reserved_name(int index, const std::string& value); + void set_reserved_name(int index, std::string&& value); + void set_reserved_name(int index, const char* value); + void set_reserved_name(int index, const char* value, size_t size); + std::string* add_reserved_name(); + void add_reserved_name(const std::string& value); + void add_reserved_name(std::string&& value); + void add_reserved_name(const char* value); + void add_reserved_name(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& reserved_name() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_reserved_name(); + private: + const std::string& _internal_reserved_name(int index) const; + std::string* _internal_add_reserved_name(); + public: + + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional .google.protobuf.MessageOptions options = 7; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::MessageOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::MessageOptions* release_options(); + PROTOBUF_NAMESPACE_ID::MessageOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::MessageOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::MessageOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::MessageOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::MessageOptions* options); + PROTOBUF_NAMESPACE_ID::MessageOptions* unsafe_arena_release_options(); + + // @@protoc_insertion_point(class_scope:google.protobuf.DescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto > field_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto > nested_type_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto > enum_type_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange > extension_range_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto > extension_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::OneofDescriptorProto > oneof_decl_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange > reserved_range_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField reserved_name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + PROTOBUF_NAMESPACE_ID::MessageOptions* options_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT ExtensionRangeOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.ExtensionRangeOptions) */ { + public: + inline ExtensionRangeOptions() : ExtensionRangeOptions(nullptr) {} + ~ExtensionRangeOptions() override; + explicit constexpr ExtensionRangeOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ExtensionRangeOptions(const ExtensionRangeOptions& from); + ExtensionRangeOptions(ExtensionRangeOptions&& from) noexcept + : ExtensionRangeOptions() { + *this = ::std::move(from); + } + + inline ExtensionRangeOptions& operator=(const ExtensionRangeOptions& from) { + CopyFrom(from); + return *this; + } + inline ExtensionRangeOptions& operator=(ExtensionRangeOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ExtensionRangeOptions& default_instance() { + return *internal_default_instance(); + } + static inline const ExtensionRangeOptions* internal_default_instance() { + return reinterpret_cast( + &_ExtensionRangeOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 5; + + friend void swap(ExtensionRangeOptions& a, ExtensionRangeOptions& b) { + a.Swap(&b); + } + inline void Swap(ExtensionRangeOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ExtensionRangeOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline ExtensionRangeOptions* New() const final { + return new ExtensionRangeOptions(); + } + + ExtensionRangeOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ExtensionRangeOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ExtensionRangeOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ExtensionRangeOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.ExtensionRangeOptions"; + } + protected: + explicit ExtensionRangeOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(ExtensionRangeOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.ExtensionRangeOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT FieldDescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.FieldDescriptorProto) */ { + public: + inline FieldDescriptorProto() : FieldDescriptorProto(nullptr) {} + ~FieldDescriptorProto() override; + explicit constexpr FieldDescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FieldDescriptorProto(const FieldDescriptorProto& from); + FieldDescriptorProto(FieldDescriptorProto&& from) noexcept + : FieldDescriptorProto() { + *this = ::std::move(from); + } + + inline FieldDescriptorProto& operator=(const FieldDescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline FieldDescriptorProto& operator=(FieldDescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FieldDescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const FieldDescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_FieldDescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 6; + + friend void swap(FieldDescriptorProto& a, FieldDescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(FieldDescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FieldDescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline FieldDescriptorProto* New() const final { + return new FieldDescriptorProto(); + } + + FieldDescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FieldDescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FieldDescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FieldDescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.FieldDescriptorProto"; + } + protected: + explicit FieldDescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef FieldDescriptorProto_Type Type; + static constexpr Type TYPE_DOUBLE = + FieldDescriptorProto_Type_TYPE_DOUBLE; + static constexpr Type TYPE_FLOAT = + FieldDescriptorProto_Type_TYPE_FLOAT; + static constexpr Type TYPE_INT64 = + FieldDescriptorProto_Type_TYPE_INT64; + static constexpr Type TYPE_UINT64 = + FieldDescriptorProto_Type_TYPE_UINT64; + static constexpr Type TYPE_INT32 = + FieldDescriptorProto_Type_TYPE_INT32; + static constexpr Type TYPE_FIXED64 = + FieldDescriptorProto_Type_TYPE_FIXED64; + static constexpr Type TYPE_FIXED32 = + FieldDescriptorProto_Type_TYPE_FIXED32; + static constexpr Type TYPE_BOOL = + FieldDescriptorProto_Type_TYPE_BOOL; + static constexpr Type TYPE_STRING = + FieldDescriptorProto_Type_TYPE_STRING; + static constexpr Type TYPE_GROUP = + FieldDescriptorProto_Type_TYPE_GROUP; + static constexpr Type TYPE_MESSAGE = + FieldDescriptorProto_Type_TYPE_MESSAGE; + static constexpr Type TYPE_BYTES = + FieldDescriptorProto_Type_TYPE_BYTES; + static constexpr Type TYPE_UINT32 = + FieldDescriptorProto_Type_TYPE_UINT32; + static constexpr Type TYPE_ENUM = + FieldDescriptorProto_Type_TYPE_ENUM; + static constexpr Type TYPE_SFIXED32 = + FieldDescriptorProto_Type_TYPE_SFIXED32; + static constexpr Type TYPE_SFIXED64 = + FieldDescriptorProto_Type_TYPE_SFIXED64; + static constexpr Type TYPE_SINT32 = + FieldDescriptorProto_Type_TYPE_SINT32; + static constexpr Type TYPE_SINT64 = + FieldDescriptorProto_Type_TYPE_SINT64; + static inline bool Type_IsValid(int value) { + return FieldDescriptorProto_Type_IsValid(value); + } + static constexpr Type Type_MIN = + FieldDescriptorProto_Type_Type_MIN; + static constexpr Type Type_MAX = + FieldDescriptorProto_Type_Type_MAX; + static constexpr int Type_ARRAYSIZE = + FieldDescriptorProto_Type_Type_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Type_descriptor() { + return FieldDescriptorProto_Type_descriptor(); + } + template + static inline const std::string& Type_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Type_Name."); + return FieldDescriptorProto_Type_Name(enum_t_value); + } + static inline bool Type_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Type* value) { + return FieldDescriptorProto_Type_Parse(name, value); + } + + typedef FieldDescriptorProto_Label Label; + static constexpr Label LABEL_OPTIONAL = + FieldDescriptorProto_Label_LABEL_OPTIONAL; + static constexpr Label LABEL_REQUIRED = + FieldDescriptorProto_Label_LABEL_REQUIRED; + static constexpr Label LABEL_REPEATED = + FieldDescriptorProto_Label_LABEL_REPEATED; + static inline bool Label_IsValid(int value) { + return FieldDescriptorProto_Label_IsValid(value); + } + static constexpr Label Label_MIN = + FieldDescriptorProto_Label_Label_MIN; + static constexpr Label Label_MAX = + FieldDescriptorProto_Label_Label_MAX; + static constexpr int Label_ARRAYSIZE = + FieldDescriptorProto_Label_Label_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Label_descriptor() { + return FieldDescriptorProto_Label_descriptor(); + } + template + static inline const std::string& Label_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Label_Name."); + return FieldDescriptorProto_Label_Name(enum_t_value); + } + static inline bool Label_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Label* value) { + return FieldDescriptorProto_Label_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 1, + kExtendeeFieldNumber = 2, + kTypeNameFieldNumber = 6, + kDefaultValueFieldNumber = 7, + kJsonNameFieldNumber = 10, + kOptionsFieldNumber = 8, + kNumberFieldNumber = 3, + kOneofIndexFieldNumber = 9, + kProto3OptionalFieldNumber = 17, + kLabelFieldNumber = 4, + kTypeFieldNumber = 5, + }; + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional string extendee = 2; + bool has_extendee() const; + private: + bool _internal_has_extendee() const; + public: + void clear_extendee(); + const std::string& extendee() const; + template + void set_extendee(ArgT0&& arg0, ArgT... args); + std::string* mutable_extendee(); + PROTOBUF_MUST_USE_RESULT std::string* release_extendee(); + void set_allocated_extendee(std::string* extendee); + private: + const std::string& _internal_extendee() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_extendee(const std::string& value); + std::string* _internal_mutable_extendee(); + public: + + // optional string type_name = 6; + bool has_type_name() const; + private: + bool _internal_has_type_name() const; + public: + void clear_type_name(); + const std::string& type_name() const; + template + void set_type_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_type_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_type_name(); + void set_allocated_type_name(std::string* type_name); + private: + const std::string& _internal_type_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_type_name(const std::string& value); + std::string* _internal_mutable_type_name(); + public: + + // optional string default_value = 7; + bool has_default_value() const; + private: + bool _internal_has_default_value() const; + public: + void clear_default_value(); + const std::string& default_value() const; + template + void set_default_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_default_value(); + PROTOBUF_MUST_USE_RESULT std::string* release_default_value(); + void set_allocated_default_value(std::string* default_value); + private: + const std::string& _internal_default_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_default_value(const std::string& value); + std::string* _internal_mutable_default_value(); + public: + + // optional string json_name = 10; + bool has_json_name() const; + private: + bool _internal_has_json_name() const; + public: + void clear_json_name(); + const std::string& json_name() const; + template + void set_json_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_json_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_json_name(); + void set_allocated_json_name(std::string* json_name); + private: + const std::string& _internal_json_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_json_name(const std::string& value); + std::string* _internal_mutable_json_name(); + public: + + // optional .google.protobuf.FieldOptions options = 8; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::FieldOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::FieldOptions* release_options(); + PROTOBUF_NAMESPACE_ID::FieldOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::FieldOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::FieldOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::FieldOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::FieldOptions* options); + PROTOBUF_NAMESPACE_ID::FieldOptions* unsafe_arena_release_options(); + + // optional int32 number = 3; + bool has_number() const; + private: + bool _internal_has_number() const; + public: + void clear_number(); + ::PROTOBUF_NAMESPACE_ID::int32 number() const; + void set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_number() const; + void _internal_set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional int32 oneof_index = 9; + bool has_oneof_index() const; + private: + bool _internal_has_oneof_index() const; + public: + void clear_oneof_index(); + ::PROTOBUF_NAMESPACE_ID::int32 oneof_index() const; + void set_oneof_index(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_oneof_index() const; + void _internal_set_oneof_index(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional bool proto3_optional = 17; + bool has_proto3_optional() const; + private: + bool _internal_has_proto3_optional() const; + public: + void clear_proto3_optional(); + bool proto3_optional() const; + void set_proto3_optional(bool value); + private: + bool _internal_proto3_optional() const; + void _internal_set_proto3_optional(bool value); + public: + + // optional .google.protobuf.FieldDescriptorProto.Label label = 4; + bool has_label() const; + private: + bool _internal_has_label() const; + public: + void clear_label(); + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label label() const; + void set_label(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label value); + private: + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label _internal_label() const; + void _internal_set_label(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label value); + public: + + // optional .google.protobuf.FieldDescriptorProto.Type type = 5; + bool has_type() const; + private: + bool _internal_has_type() const; + public: + void clear_type(); + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type type() const; + void set_type(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type value); + private: + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type _internal_type() const; + void _internal_set_type(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.FieldDescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr extendee_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr type_name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr default_value_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr json_name_; + PROTOBUF_NAMESPACE_ID::FieldOptions* options_; + ::PROTOBUF_NAMESPACE_ID::int32 number_; + ::PROTOBUF_NAMESPACE_ID::int32 oneof_index_; + bool proto3_optional_; + int label_; + int type_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT OneofDescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.OneofDescriptorProto) */ { + public: + inline OneofDescriptorProto() : OneofDescriptorProto(nullptr) {} + ~OneofDescriptorProto() override; + explicit constexpr OneofDescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + OneofDescriptorProto(const OneofDescriptorProto& from); + OneofDescriptorProto(OneofDescriptorProto&& from) noexcept + : OneofDescriptorProto() { + *this = ::std::move(from); + } + + inline OneofDescriptorProto& operator=(const OneofDescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline OneofDescriptorProto& operator=(OneofDescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const OneofDescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const OneofDescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_OneofDescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 7; + + friend void swap(OneofDescriptorProto& a, OneofDescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(OneofDescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(OneofDescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline OneofDescriptorProto* New() const final { + return new OneofDescriptorProto(); + } + + OneofDescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const OneofDescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const OneofDescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(OneofDescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.OneofDescriptorProto"; + } + protected: + explicit OneofDescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 1, + kOptionsFieldNumber = 2, + }; + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional .google.protobuf.OneofOptions options = 2; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::OneofOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::OneofOptions* release_options(); + PROTOBUF_NAMESPACE_ID::OneofOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::OneofOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::OneofOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::OneofOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::OneofOptions* options); + PROTOBUF_NAMESPACE_ID::OneofOptions* unsafe_arena_release_options(); + + // @@protoc_insertion_point(class_scope:google.protobuf.OneofDescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + PROTOBUF_NAMESPACE_ID::OneofOptions* options_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT EnumDescriptorProto_EnumReservedRange final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.EnumDescriptorProto.EnumReservedRange) */ { + public: + inline EnumDescriptorProto_EnumReservedRange() : EnumDescriptorProto_EnumReservedRange(nullptr) {} + ~EnumDescriptorProto_EnumReservedRange() override; + explicit constexpr EnumDescriptorProto_EnumReservedRange(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + EnumDescriptorProto_EnumReservedRange(const EnumDescriptorProto_EnumReservedRange& from); + EnumDescriptorProto_EnumReservedRange(EnumDescriptorProto_EnumReservedRange&& from) noexcept + : EnumDescriptorProto_EnumReservedRange() { + *this = ::std::move(from); + } + + inline EnumDescriptorProto_EnumReservedRange& operator=(const EnumDescriptorProto_EnumReservedRange& from) { + CopyFrom(from); + return *this; + } + inline EnumDescriptorProto_EnumReservedRange& operator=(EnumDescriptorProto_EnumReservedRange&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const EnumDescriptorProto_EnumReservedRange& default_instance() { + return *internal_default_instance(); + } + static inline const EnumDescriptorProto_EnumReservedRange* internal_default_instance() { + return reinterpret_cast( + &_EnumDescriptorProto_EnumReservedRange_default_instance_); + } + static constexpr int kIndexInFileMessages = + 8; + + friend void swap(EnumDescriptorProto_EnumReservedRange& a, EnumDescriptorProto_EnumReservedRange& b) { + a.Swap(&b); + } + inline void Swap(EnumDescriptorProto_EnumReservedRange* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(EnumDescriptorProto_EnumReservedRange* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline EnumDescriptorProto_EnumReservedRange* New() const final { + return new EnumDescriptorProto_EnumReservedRange(); + } + + EnumDescriptorProto_EnumReservedRange* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const EnumDescriptorProto_EnumReservedRange& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const EnumDescriptorProto_EnumReservedRange& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(EnumDescriptorProto_EnumReservedRange* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.EnumDescriptorProto.EnumReservedRange"; + } + protected: + explicit EnumDescriptorProto_EnumReservedRange(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kStartFieldNumber = 1, + kEndFieldNumber = 2, + }; + // optional int32 start = 1; + bool has_start() const; + private: + bool _internal_has_start() const; + public: + void clear_start(); + ::PROTOBUF_NAMESPACE_ID::int32 start() const; + void set_start(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_start() const; + void _internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional int32 end = 2; + bool has_end() const; + private: + bool _internal_has_end() const; + public: + void clear_end(); + ::PROTOBUF_NAMESPACE_ID::int32 end() const; + void set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_end() const; + void _internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.EnumDescriptorProto.EnumReservedRange) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::int32 start_; + ::PROTOBUF_NAMESPACE_ID::int32 end_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT EnumDescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.EnumDescriptorProto) */ { + public: + inline EnumDescriptorProto() : EnumDescriptorProto(nullptr) {} + ~EnumDescriptorProto() override; + explicit constexpr EnumDescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + EnumDescriptorProto(const EnumDescriptorProto& from); + EnumDescriptorProto(EnumDescriptorProto&& from) noexcept + : EnumDescriptorProto() { + *this = ::std::move(from); + } + + inline EnumDescriptorProto& operator=(const EnumDescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline EnumDescriptorProto& operator=(EnumDescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const EnumDescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const EnumDescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_EnumDescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 9; + + friend void swap(EnumDescriptorProto& a, EnumDescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(EnumDescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(EnumDescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline EnumDescriptorProto* New() const final { + return new EnumDescriptorProto(); + } + + EnumDescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const EnumDescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const EnumDescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(EnumDescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.EnumDescriptorProto"; + } + protected: + explicit EnumDescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef EnumDescriptorProto_EnumReservedRange EnumReservedRange; + + // accessors ------------------------------------------------------- + + enum : int { + kValueFieldNumber = 2, + kReservedRangeFieldNumber = 4, + kReservedNameFieldNumber = 5, + kNameFieldNumber = 1, + kOptionsFieldNumber = 3, + }; + // repeated .google.protobuf.EnumValueDescriptorProto value = 2; + int value_size() const; + private: + int _internal_value_size() const; + public: + void clear_value(); + PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* mutable_value(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto >* + mutable_value(); + private: + const PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto& _internal_value(int index) const; + PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* _internal_add_value(); + public: + const PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto& value(int index) const; + PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* add_value(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto >& + value() const; + + // repeated .google.protobuf.EnumDescriptorProto.EnumReservedRange reserved_range = 4; + int reserved_range_size() const; + private: + int _internal_reserved_range_size() const; + public: + void clear_reserved_range(); + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* mutable_reserved_range(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange >* + mutable_reserved_range(); + private: + const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange& _internal_reserved_range(int index) const; + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* _internal_add_reserved_range(); + public: + const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange& reserved_range(int index) const; + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* add_reserved_range(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange >& + reserved_range() const; + + // repeated string reserved_name = 5; + int reserved_name_size() const; + private: + int _internal_reserved_name_size() const; + public: + void clear_reserved_name(); + const std::string& reserved_name(int index) const; + std::string* mutable_reserved_name(int index); + void set_reserved_name(int index, const std::string& value); + void set_reserved_name(int index, std::string&& value); + void set_reserved_name(int index, const char* value); + void set_reserved_name(int index, const char* value, size_t size); + std::string* add_reserved_name(); + void add_reserved_name(const std::string& value); + void add_reserved_name(std::string&& value); + void add_reserved_name(const char* value); + void add_reserved_name(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& reserved_name() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_reserved_name(); + private: + const std::string& _internal_reserved_name(int index) const; + std::string* _internal_add_reserved_name(); + public: + + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional .google.protobuf.EnumOptions options = 3; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::EnumOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::EnumOptions* release_options(); + PROTOBUF_NAMESPACE_ID::EnumOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::EnumOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::EnumOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::EnumOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::EnumOptions* options); + PROTOBUF_NAMESPACE_ID::EnumOptions* unsafe_arena_release_options(); + + // @@protoc_insertion_point(class_scope:google.protobuf.EnumDescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto > value_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange > reserved_range_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField reserved_name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + PROTOBUF_NAMESPACE_ID::EnumOptions* options_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT EnumValueDescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.EnumValueDescriptorProto) */ { + public: + inline EnumValueDescriptorProto() : EnumValueDescriptorProto(nullptr) {} + ~EnumValueDescriptorProto() override; + explicit constexpr EnumValueDescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + EnumValueDescriptorProto(const EnumValueDescriptorProto& from); + EnumValueDescriptorProto(EnumValueDescriptorProto&& from) noexcept + : EnumValueDescriptorProto() { + *this = ::std::move(from); + } + + inline EnumValueDescriptorProto& operator=(const EnumValueDescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline EnumValueDescriptorProto& operator=(EnumValueDescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const EnumValueDescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const EnumValueDescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_EnumValueDescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 10; + + friend void swap(EnumValueDescriptorProto& a, EnumValueDescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(EnumValueDescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(EnumValueDescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline EnumValueDescriptorProto* New() const final { + return new EnumValueDescriptorProto(); + } + + EnumValueDescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const EnumValueDescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const EnumValueDescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(EnumValueDescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.EnumValueDescriptorProto"; + } + protected: + explicit EnumValueDescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 1, + kOptionsFieldNumber = 3, + kNumberFieldNumber = 2, + }; + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional .google.protobuf.EnumValueOptions options = 3; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::EnumValueOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::EnumValueOptions* release_options(); + PROTOBUF_NAMESPACE_ID::EnumValueOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::EnumValueOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::EnumValueOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::EnumValueOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::EnumValueOptions* options); + PROTOBUF_NAMESPACE_ID::EnumValueOptions* unsafe_arena_release_options(); + + // optional int32 number = 2; + bool has_number() const; + private: + bool _internal_has_number() const; + public: + void clear_number(); + ::PROTOBUF_NAMESPACE_ID::int32 number() const; + void set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_number() const; + void _internal_set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.EnumValueDescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + PROTOBUF_NAMESPACE_ID::EnumValueOptions* options_; + ::PROTOBUF_NAMESPACE_ID::int32 number_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT ServiceDescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.ServiceDescriptorProto) */ { + public: + inline ServiceDescriptorProto() : ServiceDescriptorProto(nullptr) {} + ~ServiceDescriptorProto() override; + explicit constexpr ServiceDescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ServiceDescriptorProto(const ServiceDescriptorProto& from); + ServiceDescriptorProto(ServiceDescriptorProto&& from) noexcept + : ServiceDescriptorProto() { + *this = ::std::move(from); + } + + inline ServiceDescriptorProto& operator=(const ServiceDescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline ServiceDescriptorProto& operator=(ServiceDescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ServiceDescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const ServiceDescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_ServiceDescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 11; + + friend void swap(ServiceDescriptorProto& a, ServiceDescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(ServiceDescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ServiceDescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline ServiceDescriptorProto* New() const final { + return new ServiceDescriptorProto(); + } + + ServiceDescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ServiceDescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ServiceDescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ServiceDescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.ServiceDescriptorProto"; + } + protected: + explicit ServiceDescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kMethodFieldNumber = 2, + kNameFieldNumber = 1, + kOptionsFieldNumber = 3, + }; + // repeated .google.protobuf.MethodDescriptorProto method = 2; + int method_size() const; + private: + int _internal_method_size() const; + public: + void clear_method(); + PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* mutable_method(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::MethodDescriptorProto >* + mutable_method(); + private: + const PROTOBUF_NAMESPACE_ID::MethodDescriptorProto& _internal_method(int index) const; + PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* _internal_add_method(); + public: + const PROTOBUF_NAMESPACE_ID::MethodDescriptorProto& method(int index) const; + PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* add_method(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::MethodDescriptorProto >& + method() const; + + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional .google.protobuf.ServiceOptions options = 3; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::ServiceOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::ServiceOptions* release_options(); + PROTOBUF_NAMESPACE_ID::ServiceOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::ServiceOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::ServiceOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::ServiceOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::ServiceOptions* options); + PROTOBUF_NAMESPACE_ID::ServiceOptions* unsafe_arena_release_options(); + + // @@protoc_insertion_point(class_scope:google.protobuf.ServiceDescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::MethodDescriptorProto > method_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + PROTOBUF_NAMESPACE_ID::ServiceOptions* options_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT MethodDescriptorProto final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.MethodDescriptorProto) */ { + public: + inline MethodDescriptorProto() : MethodDescriptorProto(nullptr) {} + ~MethodDescriptorProto() override; + explicit constexpr MethodDescriptorProto(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + MethodDescriptorProto(const MethodDescriptorProto& from); + MethodDescriptorProto(MethodDescriptorProto&& from) noexcept + : MethodDescriptorProto() { + *this = ::std::move(from); + } + + inline MethodDescriptorProto& operator=(const MethodDescriptorProto& from) { + CopyFrom(from); + return *this; + } + inline MethodDescriptorProto& operator=(MethodDescriptorProto&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const MethodDescriptorProto& default_instance() { + return *internal_default_instance(); + } + static inline const MethodDescriptorProto* internal_default_instance() { + return reinterpret_cast( + &_MethodDescriptorProto_default_instance_); + } + static constexpr int kIndexInFileMessages = + 12; + + friend void swap(MethodDescriptorProto& a, MethodDescriptorProto& b) { + a.Swap(&b); + } + inline void Swap(MethodDescriptorProto* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(MethodDescriptorProto* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline MethodDescriptorProto* New() const final { + return new MethodDescriptorProto(); + } + + MethodDescriptorProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MethodDescriptorProto& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const MethodDescriptorProto& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MethodDescriptorProto* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.MethodDescriptorProto"; + } + protected: + explicit MethodDescriptorProto(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 1, + kInputTypeFieldNumber = 2, + kOutputTypeFieldNumber = 3, + kOptionsFieldNumber = 4, + kClientStreamingFieldNumber = 5, + kServerStreamingFieldNumber = 6, + }; + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional string input_type = 2; + bool has_input_type() const; + private: + bool _internal_has_input_type() const; + public: + void clear_input_type(); + const std::string& input_type() const; + template + void set_input_type(ArgT0&& arg0, ArgT... args); + std::string* mutable_input_type(); + PROTOBUF_MUST_USE_RESULT std::string* release_input_type(); + void set_allocated_input_type(std::string* input_type); + private: + const std::string& _internal_input_type() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_input_type(const std::string& value); + std::string* _internal_mutable_input_type(); + public: + + // optional string output_type = 3; + bool has_output_type() const; + private: + bool _internal_has_output_type() const; + public: + void clear_output_type(); + const std::string& output_type() const; + template + void set_output_type(ArgT0&& arg0, ArgT... args); + std::string* mutable_output_type(); + PROTOBUF_MUST_USE_RESULT std::string* release_output_type(); + void set_allocated_output_type(std::string* output_type); + private: + const std::string& _internal_output_type() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_output_type(const std::string& value); + std::string* _internal_mutable_output_type(); + public: + + // optional .google.protobuf.MethodOptions options = 4; + bool has_options() const; + private: + bool _internal_has_options() const; + public: + void clear_options(); + const PROTOBUF_NAMESPACE_ID::MethodOptions& options() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::MethodOptions* release_options(); + PROTOBUF_NAMESPACE_ID::MethodOptions* mutable_options(); + void set_allocated_options(PROTOBUF_NAMESPACE_ID::MethodOptions* options); + private: + const PROTOBUF_NAMESPACE_ID::MethodOptions& _internal_options() const; + PROTOBUF_NAMESPACE_ID::MethodOptions* _internal_mutable_options(); + public: + void unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::MethodOptions* options); + PROTOBUF_NAMESPACE_ID::MethodOptions* unsafe_arena_release_options(); + + // optional bool client_streaming = 5 [default = false]; + bool has_client_streaming() const; + private: + bool _internal_has_client_streaming() const; + public: + void clear_client_streaming(); + bool client_streaming() const; + void set_client_streaming(bool value); + private: + bool _internal_client_streaming() const; + void _internal_set_client_streaming(bool value); + public: + + // optional bool server_streaming = 6 [default = false]; + bool has_server_streaming() const; + private: + bool _internal_has_server_streaming() const; + public: + void clear_server_streaming(); + bool server_streaming() const; + void set_server_streaming(bool value); + private: + bool _internal_server_streaming() const; + void _internal_set_server_streaming(bool value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.MethodDescriptorProto) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr input_type_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr output_type_; + PROTOBUF_NAMESPACE_ID::MethodOptions* options_; + bool client_streaming_; + bool server_streaming_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT FileOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.FileOptions) */ { + public: + inline FileOptions() : FileOptions(nullptr) {} + ~FileOptions() override; + explicit constexpr FileOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FileOptions(const FileOptions& from); + FileOptions(FileOptions&& from) noexcept + : FileOptions() { + *this = ::std::move(from); + } + + inline FileOptions& operator=(const FileOptions& from) { + CopyFrom(from); + return *this; + } + inline FileOptions& operator=(FileOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FileOptions& default_instance() { + return *internal_default_instance(); + } + static inline const FileOptions* internal_default_instance() { + return reinterpret_cast( + &_FileOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 13; + + friend void swap(FileOptions& a, FileOptions& b) { + a.Swap(&b); + } + inline void Swap(FileOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FileOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline FileOptions* New() const final { + return new FileOptions(); + } + + FileOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FileOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FileOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FileOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.FileOptions"; + } + protected: + explicit FileOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef FileOptions_OptimizeMode OptimizeMode; + static constexpr OptimizeMode SPEED = + FileOptions_OptimizeMode_SPEED; + static constexpr OptimizeMode CODE_SIZE = + FileOptions_OptimizeMode_CODE_SIZE; + static constexpr OptimizeMode LITE_RUNTIME = + FileOptions_OptimizeMode_LITE_RUNTIME; + static inline bool OptimizeMode_IsValid(int value) { + return FileOptions_OptimizeMode_IsValid(value); + } + static constexpr OptimizeMode OptimizeMode_MIN = + FileOptions_OptimizeMode_OptimizeMode_MIN; + static constexpr OptimizeMode OptimizeMode_MAX = + FileOptions_OptimizeMode_OptimizeMode_MAX; + static constexpr int OptimizeMode_ARRAYSIZE = + FileOptions_OptimizeMode_OptimizeMode_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + OptimizeMode_descriptor() { + return FileOptions_OptimizeMode_descriptor(); + } + template + static inline const std::string& OptimizeMode_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function OptimizeMode_Name."); + return FileOptions_OptimizeMode_Name(enum_t_value); + } + static inline bool OptimizeMode_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + OptimizeMode* value) { + return FileOptions_OptimizeMode_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + kJavaPackageFieldNumber = 1, + kJavaOuterClassnameFieldNumber = 8, + kGoPackageFieldNumber = 11, + kObjcClassPrefixFieldNumber = 36, + kCsharpNamespaceFieldNumber = 37, + kSwiftPrefixFieldNumber = 39, + kPhpClassPrefixFieldNumber = 40, + kPhpNamespaceFieldNumber = 41, + kPhpMetadataNamespaceFieldNumber = 44, + kRubyPackageFieldNumber = 45, + kJavaMultipleFilesFieldNumber = 10, + kJavaGenerateEqualsAndHashFieldNumber = 20, + kJavaStringCheckUtf8FieldNumber = 27, + kCcGenericServicesFieldNumber = 16, + kJavaGenericServicesFieldNumber = 17, + kPyGenericServicesFieldNumber = 18, + kPhpGenericServicesFieldNumber = 42, + kDeprecatedFieldNumber = 23, + kOptimizeForFieldNumber = 9, + kCcEnableArenasFieldNumber = 31, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + // optional string java_package = 1; + bool has_java_package() const; + private: + bool _internal_has_java_package() const; + public: + void clear_java_package(); + const std::string& java_package() const; + template + void set_java_package(ArgT0&& arg0, ArgT... args); + std::string* mutable_java_package(); + PROTOBUF_MUST_USE_RESULT std::string* release_java_package(); + void set_allocated_java_package(std::string* java_package); + private: + const std::string& _internal_java_package() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_java_package(const std::string& value); + std::string* _internal_mutable_java_package(); + public: + + // optional string java_outer_classname = 8; + bool has_java_outer_classname() const; + private: + bool _internal_has_java_outer_classname() const; + public: + void clear_java_outer_classname(); + const std::string& java_outer_classname() const; + template + void set_java_outer_classname(ArgT0&& arg0, ArgT... args); + std::string* mutable_java_outer_classname(); + PROTOBUF_MUST_USE_RESULT std::string* release_java_outer_classname(); + void set_allocated_java_outer_classname(std::string* java_outer_classname); + private: + const std::string& _internal_java_outer_classname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_java_outer_classname(const std::string& value); + std::string* _internal_mutable_java_outer_classname(); + public: + + // optional string go_package = 11; + bool has_go_package() const; + private: + bool _internal_has_go_package() const; + public: + void clear_go_package(); + const std::string& go_package() const; + template + void set_go_package(ArgT0&& arg0, ArgT... args); + std::string* mutable_go_package(); + PROTOBUF_MUST_USE_RESULT std::string* release_go_package(); + void set_allocated_go_package(std::string* go_package); + private: + const std::string& _internal_go_package() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_go_package(const std::string& value); + std::string* _internal_mutable_go_package(); + public: + + // optional string objc_class_prefix = 36; + bool has_objc_class_prefix() const; + private: + bool _internal_has_objc_class_prefix() const; + public: + void clear_objc_class_prefix(); + const std::string& objc_class_prefix() const; + template + void set_objc_class_prefix(ArgT0&& arg0, ArgT... args); + std::string* mutable_objc_class_prefix(); + PROTOBUF_MUST_USE_RESULT std::string* release_objc_class_prefix(); + void set_allocated_objc_class_prefix(std::string* objc_class_prefix); + private: + const std::string& _internal_objc_class_prefix() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_objc_class_prefix(const std::string& value); + std::string* _internal_mutable_objc_class_prefix(); + public: + + // optional string csharp_namespace = 37; + bool has_csharp_namespace() const; + private: + bool _internal_has_csharp_namespace() const; + public: + void clear_csharp_namespace(); + const std::string& csharp_namespace() const; + template + void set_csharp_namespace(ArgT0&& arg0, ArgT... args); + std::string* mutable_csharp_namespace(); + PROTOBUF_MUST_USE_RESULT std::string* release_csharp_namespace(); + void set_allocated_csharp_namespace(std::string* csharp_namespace); + private: + const std::string& _internal_csharp_namespace() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_csharp_namespace(const std::string& value); + std::string* _internal_mutable_csharp_namespace(); + public: + + // optional string swift_prefix = 39; + bool has_swift_prefix() const; + private: + bool _internal_has_swift_prefix() const; + public: + void clear_swift_prefix(); + const std::string& swift_prefix() const; + template + void set_swift_prefix(ArgT0&& arg0, ArgT... args); + std::string* mutable_swift_prefix(); + PROTOBUF_MUST_USE_RESULT std::string* release_swift_prefix(); + void set_allocated_swift_prefix(std::string* swift_prefix); + private: + const std::string& _internal_swift_prefix() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_swift_prefix(const std::string& value); + std::string* _internal_mutable_swift_prefix(); + public: + + // optional string php_class_prefix = 40; + bool has_php_class_prefix() const; + private: + bool _internal_has_php_class_prefix() const; + public: + void clear_php_class_prefix(); + const std::string& php_class_prefix() const; + template + void set_php_class_prefix(ArgT0&& arg0, ArgT... args); + std::string* mutable_php_class_prefix(); + PROTOBUF_MUST_USE_RESULT std::string* release_php_class_prefix(); + void set_allocated_php_class_prefix(std::string* php_class_prefix); + private: + const std::string& _internal_php_class_prefix() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_php_class_prefix(const std::string& value); + std::string* _internal_mutable_php_class_prefix(); + public: + + // optional string php_namespace = 41; + bool has_php_namespace() const; + private: + bool _internal_has_php_namespace() const; + public: + void clear_php_namespace(); + const std::string& php_namespace() const; + template + void set_php_namespace(ArgT0&& arg0, ArgT... args); + std::string* mutable_php_namespace(); + PROTOBUF_MUST_USE_RESULT std::string* release_php_namespace(); + void set_allocated_php_namespace(std::string* php_namespace); + private: + const std::string& _internal_php_namespace() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_php_namespace(const std::string& value); + std::string* _internal_mutable_php_namespace(); + public: + + // optional string php_metadata_namespace = 44; + bool has_php_metadata_namespace() const; + private: + bool _internal_has_php_metadata_namespace() const; + public: + void clear_php_metadata_namespace(); + const std::string& php_metadata_namespace() const; + template + void set_php_metadata_namespace(ArgT0&& arg0, ArgT... args); + std::string* mutable_php_metadata_namespace(); + PROTOBUF_MUST_USE_RESULT std::string* release_php_metadata_namespace(); + void set_allocated_php_metadata_namespace(std::string* php_metadata_namespace); + private: + const std::string& _internal_php_metadata_namespace() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_php_metadata_namespace(const std::string& value); + std::string* _internal_mutable_php_metadata_namespace(); + public: + + // optional string ruby_package = 45; + bool has_ruby_package() const; + private: + bool _internal_has_ruby_package() const; + public: + void clear_ruby_package(); + const std::string& ruby_package() const; + template + void set_ruby_package(ArgT0&& arg0, ArgT... args); + std::string* mutable_ruby_package(); + PROTOBUF_MUST_USE_RESULT std::string* release_ruby_package(); + void set_allocated_ruby_package(std::string* ruby_package); + private: + const std::string& _internal_ruby_package() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_ruby_package(const std::string& value); + std::string* _internal_mutable_ruby_package(); + public: + + // optional bool java_multiple_files = 10 [default = false]; + bool has_java_multiple_files() const; + private: + bool _internal_has_java_multiple_files() const; + public: + void clear_java_multiple_files(); + bool java_multiple_files() const; + void set_java_multiple_files(bool value); + private: + bool _internal_java_multiple_files() const; + void _internal_set_java_multiple_files(bool value); + public: + + // optional bool java_generate_equals_and_hash = 20 [deprecated = true]; + PROTOBUF_DEPRECATED bool has_java_generate_equals_and_hash() const; + private: + bool _internal_has_java_generate_equals_and_hash() const; + public: + PROTOBUF_DEPRECATED void clear_java_generate_equals_and_hash(); + PROTOBUF_DEPRECATED bool java_generate_equals_and_hash() const; + PROTOBUF_DEPRECATED void set_java_generate_equals_and_hash(bool value); + private: + bool _internal_java_generate_equals_and_hash() const; + void _internal_set_java_generate_equals_and_hash(bool value); + public: + + // optional bool java_string_check_utf8 = 27 [default = false]; + bool has_java_string_check_utf8() const; + private: + bool _internal_has_java_string_check_utf8() const; + public: + void clear_java_string_check_utf8(); + bool java_string_check_utf8() const; + void set_java_string_check_utf8(bool value); + private: + bool _internal_java_string_check_utf8() const; + void _internal_set_java_string_check_utf8(bool value); + public: + + // optional bool cc_generic_services = 16 [default = false]; + bool has_cc_generic_services() const; + private: + bool _internal_has_cc_generic_services() const; + public: + void clear_cc_generic_services(); + bool cc_generic_services() const; + void set_cc_generic_services(bool value); + private: + bool _internal_cc_generic_services() const; + void _internal_set_cc_generic_services(bool value); + public: + + // optional bool java_generic_services = 17 [default = false]; + bool has_java_generic_services() const; + private: + bool _internal_has_java_generic_services() const; + public: + void clear_java_generic_services(); + bool java_generic_services() const; + void set_java_generic_services(bool value); + private: + bool _internal_java_generic_services() const; + void _internal_set_java_generic_services(bool value); + public: + + // optional bool py_generic_services = 18 [default = false]; + bool has_py_generic_services() const; + private: + bool _internal_has_py_generic_services() const; + public: + void clear_py_generic_services(); + bool py_generic_services() const; + void set_py_generic_services(bool value); + private: + bool _internal_py_generic_services() const; + void _internal_set_py_generic_services(bool value); + public: + + // optional bool php_generic_services = 42 [default = false]; + bool has_php_generic_services() const; + private: + bool _internal_has_php_generic_services() const; + public: + void clear_php_generic_services(); + bool php_generic_services() const; + void set_php_generic_services(bool value); + private: + bool _internal_php_generic_services() const; + void _internal_set_php_generic_services(bool value); + public: + + // optional bool deprecated = 23 [default = false]; + bool has_deprecated() const; + private: + bool _internal_has_deprecated() const; + public: + void clear_deprecated(); + bool deprecated() const; + void set_deprecated(bool value); + private: + bool _internal_deprecated() const; + void _internal_set_deprecated(bool value); + public: + + // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED]; + bool has_optimize_for() const; + private: + bool _internal_has_optimize_for() const; + public: + void clear_optimize_for(); + PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode optimize_for() const; + void set_optimize_for(PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode value); + private: + PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode _internal_optimize_for() const; + void _internal_set_optimize_for(PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode value); + public: + + // optional bool cc_enable_arenas = 31 [default = true]; + bool has_cc_enable_arenas() const; + private: + bool _internal_has_cc_enable_arenas() const; + public: + void clear_cc_enable_arenas(); + bool cc_enable_arenas() const; + void set_cc_enable_arenas(bool value); + private: + bool _internal_cc_enable_arenas() const; + void _internal_set_cc_enable_arenas(bool value); + public: + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(FileOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.FileOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr java_package_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr java_outer_classname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr go_package_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr objc_class_prefix_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr csharp_namespace_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr swift_prefix_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr php_class_prefix_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr php_namespace_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr php_metadata_namespace_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr ruby_package_; + bool java_multiple_files_; + bool java_generate_equals_and_hash_; + bool java_string_check_utf8_; + bool cc_generic_services_; + bool java_generic_services_; + bool py_generic_services_; + bool php_generic_services_; + bool deprecated_; + int optimize_for_; + bool cc_enable_arenas_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT MessageOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.MessageOptions) */ { + public: + inline MessageOptions() : MessageOptions(nullptr) {} + ~MessageOptions() override; + explicit constexpr MessageOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + MessageOptions(const MessageOptions& from); + MessageOptions(MessageOptions&& from) noexcept + : MessageOptions() { + *this = ::std::move(from); + } + + inline MessageOptions& operator=(const MessageOptions& from) { + CopyFrom(from); + return *this; + } + inline MessageOptions& operator=(MessageOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const MessageOptions& default_instance() { + return *internal_default_instance(); + } + static inline const MessageOptions* internal_default_instance() { + return reinterpret_cast( + &_MessageOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 14; + + friend void swap(MessageOptions& a, MessageOptions& b) { + a.Swap(&b); + } + inline void Swap(MessageOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(MessageOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline MessageOptions* New() const final { + return new MessageOptions(); + } + + MessageOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MessageOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const MessageOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MessageOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.MessageOptions"; + } + protected: + explicit MessageOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + kMessageSetWireFormatFieldNumber = 1, + kNoStandardDescriptorAccessorFieldNumber = 2, + kDeprecatedFieldNumber = 3, + kMapEntryFieldNumber = 7, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + // optional bool message_set_wire_format = 1 [default = false]; + bool has_message_set_wire_format() const; + private: + bool _internal_has_message_set_wire_format() const; + public: + void clear_message_set_wire_format(); + bool message_set_wire_format() const; + void set_message_set_wire_format(bool value); + private: + bool _internal_message_set_wire_format() const; + void _internal_set_message_set_wire_format(bool value); + public: + + // optional bool no_standard_descriptor_accessor = 2 [default = false]; + bool has_no_standard_descriptor_accessor() const; + private: + bool _internal_has_no_standard_descriptor_accessor() const; + public: + void clear_no_standard_descriptor_accessor(); + bool no_standard_descriptor_accessor() const; + void set_no_standard_descriptor_accessor(bool value); + private: + bool _internal_no_standard_descriptor_accessor() const; + void _internal_set_no_standard_descriptor_accessor(bool value); + public: + + // optional bool deprecated = 3 [default = false]; + bool has_deprecated() const; + private: + bool _internal_has_deprecated() const; + public: + void clear_deprecated(); + bool deprecated() const; + void set_deprecated(bool value); + private: + bool _internal_deprecated() const; + void _internal_set_deprecated(bool value); + public: + + // optional bool map_entry = 7; + bool has_map_entry() const; + private: + bool _internal_has_map_entry() const; + public: + void clear_map_entry(); + bool map_entry() const; + void set_map_entry(bool value); + private: + bool _internal_map_entry() const; + void _internal_set_map_entry(bool value); + public: + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(MessageOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.MessageOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + bool message_set_wire_format_; + bool no_standard_descriptor_accessor_; + bool deprecated_; + bool map_entry_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT FieldOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.FieldOptions) */ { + public: + inline FieldOptions() : FieldOptions(nullptr) {} + ~FieldOptions() override; + explicit constexpr FieldOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FieldOptions(const FieldOptions& from); + FieldOptions(FieldOptions&& from) noexcept + : FieldOptions() { + *this = ::std::move(from); + } + + inline FieldOptions& operator=(const FieldOptions& from) { + CopyFrom(from); + return *this; + } + inline FieldOptions& operator=(FieldOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FieldOptions& default_instance() { + return *internal_default_instance(); + } + static inline const FieldOptions* internal_default_instance() { + return reinterpret_cast( + &_FieldOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 15; + + friend void swap(FieldOptions& a, FieldOptions& b) { + a.Swap(&b); + } + inline void Swap(FieldOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FieldOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline FieldOptions* New() const final { + return new FieldOptions(); + } + + FieldOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FieldOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FieldOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FieldOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.FieldOptions"; + } + protected: + explicit FieldOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef FieldOptions_CType CType; + static constexpr CType STRING = + FieldOptions_CType_STRING; + static constexpr CType CORD = + FieldOptions_CType_CORD; + static constexpr CType STRING_PIECE = + FieldOptions_CType_STRING_PIECE; + static inline bool CType_IsValid(int value) { + return FieldOptions_CType_IsValid(value); + } + static constexpr CType CType_MIN = + FieldOptions_CType_CType_MIN; + static constexpr CType CType_MAX = + FieldOptions_CType_CType_MAX; + static constexpr int CType_ARRAYSIZE = + FieldOptions_CType_CType_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + CType_descriptor() { + return FieldOptions_CType_descriptor(); + } + template + static inline const std::string& CType_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function CType_Name."); + return FieldOptions_CType_Name(enum_t_value); + } + static inline bool CType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + CType* value) { + return FieldOptions_CType_Parse(name, value); + } + + typedef FieldOptions_JSType JSType; + static constexpr JSType JS_NORMAL = + FieldOptions_JSType_JS_NORMAL; + static constexpr JSType JS_STRING = + FieldOptions_JSType_JS_STRING; + static constexpr JSType JS_NUMBER = + FieldOptions_JSType_JS_NUMBER; + static inline bool JSType_IsValid(int value) { + return FieldOptions_JSType_IsValid(value); + } + static constexpr JSType JSType_MIN = + FieldOptions_JSType_JSType_MIN; + static constexpr JSType JSType_MAX = + FieldOptions_JSType_JSType_MAX; + static constexpr int JSType_ARRAYSIZE = + FieldOptions_JSType_JSType_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + JSType_descriptor() { + return FieldOptions_JSType_descriptor(); + } + template + static inline const std::string& JSType_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function JSType_Name."); + return FieldOptions_JSType_Name(enum_t_value); + } + static inline bool JSType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + JSType* value) { + return FieldOptions_JSType_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + kCtypeFieldNumber = 1, + kPackedFieldNumber = 2, + kLazyFieldNumber = 5, + kDeprecatedFieldNumber = 3, + kWeakFieldNumber = 10, + kJstypeFieldNumber = 6, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + // optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING]; + bool has_ctype() const; + private: + bool _internal_has_ctype() const; + public: + void clear_ctype(); + PROTOBUF_NAMESPACE_ID::FieldOptions_CType ctype() const; + void set_ctype(PROTOBUF_NAMESPACE_ID::FieldOptions_CType value); + private: + PROTOBUF_NAMESPACE_ID::FieldOptions_CType _internal_ctype() const; + void _internal_set_ctype(PROTOBUF_NAMESPACE_ID::FieldOptions_CType value); + public: + + // optional bool packed = 2; + bool has_packed() const; + private: + bool _internal_has_packed() const; + public: + void clear_packed(); + bool packed() const; + void set_packed(bool value); + private: + bool _internal_packed() const; + void _internal_set_packed(bool value); + public: + + // optional bool lazy = 5 [default = false]; + bool has_lazy() const; + private: + bool _internal_has_lazy() const; + public: + void clear_lazy(); + bool lazy() const; + void set_lazy(bool value); + private: + bool _internal_lazy() const; + void _internal_set_lazy(bool value); + public: + + // optional bool deprecated = 3 [default = false]; + bool has_deprecated() const; + private: + bool _internal_has_deprecated() const; + public: + void clear_deprecated(); + bool deprecated() const; + void set_deprecated(bool value); + private: + bool _internal_deprecated() const; + void _internal_set_deprecated(bool value); + public: + + // optional bool weak = 10 [default = false]; + bool has_weak() const; + private: + bool _internal_has_weak() const; + public: + void clear_weak(); + bool weak() const; + void set_weak(bool value); + private: + bool _internal_weak() const; + void _internal_set_weak(bool value); + public: + + // optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL]; + bool has_jstype() const; + private: + bool _internal_has_jstype() const; + public: + void clear_jstype(); + PROTOBUF_NAMESPACE_ID::FieldOptions_JSType jstype() const; + void set_jstype(PROTOBUF_NAMESPACE_ID::FieldOptions_JSType value); + private: + PROTOBUF_NAMESPACE_ID::FieldOptions_JSType _internal_jstype() const; + void _internal_set_jstype(PROTOBUF_NAMESPACE_ID::FieldOptions_JSType value); + public: + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(FieldOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.FieldOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + int ctype_; + bool packed_; + bool lazy_; + bool deprecated_; + bool weak_; + int jstype_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT OneofOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.OneofOptions) */ { + public: + inline OneofOptions() : OneofOptions(nullptr) {} + ~OneofOptions() override; + explicit constexpr OneofOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + OneofOptions(const OneofOptions& from); + OneofOptions(OneofOptions&& from) noexcept + : OneofOptions() { + *this = ::std::move(from); + } + + inline OneofOptions& operator=(const OneofOptions& from) { + CopyFrom(from); + return *this; + } + inline OneofOptions& operator=(OneofOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const OneofOptions& default_instance() { + return *internal_default_instance(); + } + static inline const OneofOptions* internal_default_instance() { + return reinterpret_cast( + &_OneofOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 16; + + friend void swap(OneofOptions& a, OneofOptions& b) { + a.Swap(&b); + } + inline void Swap(OneofOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(OneofOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline OneofOptions* New() const final { + return new OneofOptions(); + } + + OneofOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const OneofOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const OneofOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(OneofOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.OneofOptions"; + } + protected: + explicit OneofOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(OneofOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.OneofOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT EnumOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.EnumOptions) */ { + public: + inline EnumOptions() : EnumOptions(nullptr) {} + ~EnumOptions() override; + explicit constexpr EnumOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + EnumOptions(const EnumOptions& from); + EnumOptions(EnumOptions&& from) noexcept + : EnumOptions() { + *this = ::std::move(from); + } + + inline EnumOptions& operator=(const EnumOptions& from) { + CopyFrom(from); + return *this; + } + inline EnumOptions& operator=(EnumOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const EnumOptions& default_instance() { + return *internal_default_instance(); + } + static inline const EnumOptions* internal_default_instance() { + return reinterpret_cast( + &_EnumOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 17; + + friend void swap(EnumOptions& a, EnumOptions& b) { + a.Swap(&b); + } + inline void Swap(EnumOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(EnumOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline EnumOptions* New() const final { + return new EnumOptions(); + } + + EnumOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const EnumOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const EnumOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(EnumOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.EnumOptions"; + } + protected: + explicit EnumOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + kAllowAliasFieldNumber = 2, + kDeprecatedFieldNumber = 3, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + // optional bool allow_alias = 2; + bool has_allow_alias() const; + private: + bool _internal_has_allow_alias() const; + public: + void clear_allow_alias(); + bool allow_alias() const; + void set_allow_alias(bool value); + private: + bool _internal_allow_alias() const; + void _internal_set_allow_alias(bool value); + public: + + // optional bool deprecated = 3 [default = false]; + bool has_deprecated() const; + private: + bool _internal_has_deprecated() const; + public: + void clear_deprecated(); + bool deprecated() const; + void set_deprecated(bool value); + private: + bool _internal_deprecated() const; + void _internal_set_deprecated(bool value); + public: + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(EnumOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.EnumOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + bool allow_alias_; + bool deprecated_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT EnumValueOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.EnumValueOptions) */ { + public: + inline EnumValueOptions() : EnumValueOptions(nullptr) {} + ~EnumValueOptions() override; + explicit constexpr EnumValueOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + EnumValueOptions(const EnumValueOptions& from); + EnumValueOptions(EnumValueOptions&& from) noexcept + : EnumValueOptions() { + *this = ::std::move(from); + } + + inline EnumValueOptions& operator=(const EnumValueOptions& from) { + CopyFrom(from); + return *this; + } + inline EnumValueOptions& operator=(EnumValueOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const EnumValueOptions& default_instance() { + return *internal_default_instance(); + } + static inline const EnumValueOptions* internal_default_instance() { + return reinterpret_cast( + &_EnumValueOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 18; + + friend void swap(EnumValueOptions& a, EnumValueOptions& b) { + a.Swap(&b); + } + inline void Swap(EnumValueOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(EnumValueOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline EnumValueOptions* New() const final { + return new EnumValueOptions(); + } + + EnumValueOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const EnumValueOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const EnumValueOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(EnumValueOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.EnumValueOptions"; + } + protected: + explicit EnumValueOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + kDeprecatedFieldNumber = 1, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + // optional bool deprecated = 1 [default = false]; + bool has_deprecated() const; + private: + bool _internal_has_deprecated() const; + public: + void clear_deprecated(); + bool deprecated() const; + void set_deprecated(bool value); + private: + bool _internal_deprecated() const; + void _internal_set_deprecated(bool value); + public: + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(EnumValueOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.EnumValueOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + bool deprecated_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT ServiceOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.ServiceOptions) */ { + public: + inline ServiceOptions() : ServiceOptions(nullptr) {} + ~ServiceOptions() override; + explicit constexpr ServiceOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ServiceOptions(const ServiceOptions& from); + ServiceOptions(ServiceOptions&& from) noexcept + : ServiceOptions() { + *this = ::std::move(from); + } + + inline ServiceOptions& operator=(const ServiceOptions& from) { + CopyFrom(from); + return *this; + } + inline ServiceOptions& operator=(ServiceOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ServiceOptions& default_instance() { + return *internal_default_instance(); + } + static inline const ServiceOptions* internal_default_instance() { + return reinterpret_cast( + &_ServiceOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 19; + + friend void swap(ServiceOptions& a, ServiceOptions& b) { + a.Swap(&b); + } + inline void Swap(ServiceOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ServiceOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline ServiceOptions* New() const final { + return new ServiceOptions(); + } + + ServiceOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ServiceOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ServiceOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ServiceOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.ServiceOptions"; + } + protected: + explicit ServiceOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + kDeprecatedFieldNumber = 33, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + // optional bool deprecated = 33 [default = false]; + bool has_deprecated() const; + private: + bool _internal_has_deprecated() const; + public: + void clear_deprecated(); + bool deprecated() const; + void set_deprecated(bool value); + private: + bool _internal_deprecated() const; + void _internal_set_deprecated(bool value); + public: + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(ServiceOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.ServiceOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + bool deprecated_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT MethodOptions final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.MethodOptions) */ { + public: + inline MethodOptions() : MethodOptions(nullptr) {} + ~MethodOptions() override; + explicit constexpr MethodOptions(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + MethodOptions(const MethodOptions& from); + MethodOptions(MethodOptions&& from) noexcept + : MethodOptions() { + *this = ::std::move(from); + } + + inline MethodOptions& operator=(const MethodOptions& from) { + CopyFrom(from); + return *this; + } + inline MethodOptions& operator=(MethodOptions&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const MethodOptions& default_instance() { + return *internal_default_instance(); + } + static inline const MethodOptions* internal_default_instance() { + return reinterpret_cast( + &_MethodOptions_default_instance_); + } + static constexpr int kIndexInFileMessages = + 20; + + friend void swap(MethodOptions& a, MethodOptions& b) { + a.Swap(&b); + } + inline void Swap(MethodOptions* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(MethodOptions* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline MethodOptions* New() const final { + return new MethodOptions(); + } + + MethodOptions* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MethodOptions& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const MethodOptions& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MethodOptions* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.MethodOptions"; + } + protected: + explicit MethodOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef MethodOptions_IdempotencyLevel IdempotencyLevel; + static constexpr IdempotencyLevel IDEMPOTENCY_UNKNOWN = + MethodOptions_IdempotencyLevel_IDEMPOTENCY_UNKNOWN; + static constexpr IdempotencyLevel NO_SIDE_EFFECTS = + MethodOptions_IdempotencyLevel_NO_SIDE_EFFECTS; + static constexpr IdempotencyLevel IDEMPOTENT = + MethodOptions_IdempotencyLevel_IDEMPOTENT; + static inline bool IdempotencyLevel_IsValid(int value) { + return MethodOptions_IdempotencyLevel_IsValid(value); + } + static constexpr IdempotencyLevel IdempotencyLevel_MIN = + MethodOptions_IdempotencyLevel_IdempotencyLevel_MIN; + static constexpr IdempotencyLevel IdempotencyLevel_MAX = + MethodOptions_IdempotencyLevel_IdempotencyLevel_MAX; + static constexpr int IdempotencyLevel_ARRAYSIZE = + MethodOptions_IdempotencyLevel_IdempotencyLevel_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + IdempotencyLevel_descriptor() { + return MethodOptions_IdempotencyLevel_descriptor(); + } + template + static inline const std::string& IdempotencyLevel_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function IdempotencyLevel_Name."); + return MethodOptions_IdempotencyLevel_Name(enum_t_value); + } + static inline bool IdempotencyLevel_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + IdempotencyLevel* value) { + return MethodOptions_IdempotencyLevel_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + enum : int { + kUninterpretedOptionFieldNumber = 999, + kDeprecatedFieldNumber = 33, + kIdempotencyLevelFieldNumber = 34, + }; + // repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; + int uninterpreted_option_size() const; + private: + int _internal_uninterpreted_option_size() const; + public: + void clear_uninterpreted_option(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption* mutable_uninterpreted_option(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* + mutable_uninterpreted_option(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& _internal_uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _internal_add_uninterpreted_option(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption& uninterpreted_option(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption* add_uninterpreted_option(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& + uninterpreted_option() const; + + // optional bool deprecated = 33 [default = false]; + bool has_deprecated() const; + private: + bool _internal_has_deprecated() const; + public: + void clear_deprecated(); + bool deprecated() const; + void set_deprecated(bool value); + private: + bool _internal_deprecated() const; + void _internal_set_deprecated(bool value); + public: + + // optional .google.protobuf.MethodOptions.IdempotencyLevel idempotency_level = 34 [default = IDEMPOTENCY_UNKNOWN]; + bool has_idempotency_level() const; + private: + bool _internal_has_idempotency_level() const; + public: + void clear_idempotency_level(); + PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel idempotency_level() const; + void set_idempotency_level(PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel value); + private: + PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel _internal_idempotency_level() const; + void _internal_set_idempotency_level(PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel value); + public: + + GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(MethodOptions) + // @@protoc_insertion_point(class_scope:google.protobuf.MethodOptions) + private: + class _Internal; + + ::PROTOBUF_NAMESPACE_ID::internal::ExtensionSet _extensions_; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption > uninterpreted_option_; + bool deprecated_; + int idempotency_level_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT UninterpretedOption_NamePart final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.UninterpretedOption.NamePart) */ { + public: + inline UninterpretedOption_NamePart() : UninterpretedOption_NamePart(nullptr) {} + ~UninterpretedOption_NamePart() override; + explicit constexpr UninterpretedOption_NamePart(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + UninterpretedOption_NamePart(const UninterpretedOption_NamePart& from); + UninterpretedOption_NamePart(UninterpretedOption_NamePart&& from) noexcept + : UninterpretedOption_NamePart() { + *this = ::std::move(from); + } + + inline UninterpretedOption_NamePart& operator=(const UninterpretedOption_NamePart& from) { + CopyFrom(from); + return *this; + } + inline UninterpretedOption_NamePart& operator=(UninterpretedOption_NamePart&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const UninterpretedOption_NamePart& default_instance() { + return *internal_default_instance(); + } + static inline const UninterpretedOption_NamePart* internal_default_instance() { + return reinterpret_cast( + &_UninterpretedOption_NamePart_default_instance_); + } + static constexpr int kIndexInFileMessages = + 21; + + friend void swap(UninterpretedOption_NamePart& a, UninterpretedOption_NamePart& b) { + a.Swap(&b); + } + inline void Swap(UninterpretedOption_NamePart* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(UninterpretedOption_NamePart* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline UninterpretedOption_NamePart* New() const final { + return new UninterpretedOption_NamePart(); + } + + UninterpretedOption_NamePart* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const UninterpretedOption_NamePart& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const UninterpretedOption_NamePart& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(UninterpretedOption_NamePart* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.UninterpretedOption.NamePart"; + } + protected: + explicit UninterpretedOption_NamePart(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNamePartFieldNumber = 1, + kIsExtensionFieldNumber = 2, + }; + // required string name_part = 1; + bool has_name_part() const; + private: + bool _internal_has_name_part() const; + public: + void clear_name_part(); + const std::string& name_part() const; + template + void set_name_part(ArgT0&& arg0, ArgT... args); + std::string* mutable_name_part(); + PROTOBUF_MUST_USE_RESULT std::string* release_name_part(); + void set_allocated_name_part(std::string* name_part); + private: + const std::string& _internal_name_part() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name_part(const std::string& value); + std::string* _internal_mutable_name_part(); + public: + + // required bool is_extension = 2; + bool has_is_extension() const; + private: + bool _internal_has_is_extension() const; + public: + void clear_is_extension(); + bool is_extension() const; + void set_is_extension(bool value); + private: + bool _internal_is_extension() const; + void _internal_set_is_extension(bool value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.UninterpretedOption.NamePart) + private: + class _Internal; + + // helper for ByteSizeLong() + size_t RequiredFieldsByteSizeFallback() const; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_part_; + bool is_extension_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT UninterpretedOption final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.UninterpretedOption) */ { + public: + inline UninterpretedOption() : UninterpretedOption(nullptr) {} + ~UninterpretedOption() override; + explicit constexpr UninterpretedOption(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + UninterpretedOption(const UninterpretedOption& from); + UninterpretedOption(UninterpretedOption&& from) noexcept + : UninterpretedOption() { + *this = ::std::move(from); + } + + inline UninterpretedOption& operator=(const UninterpretedOption& from) { + CopyFrom(from); + return *this; + } + inline UninterpretedOption& operator=(UninterpretedOption&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const UninterpretedOption& default_instance() { + return *internal_default_instance(); + } + static inline const UninterpretedOption* internal_default_instance() { + return reinterpret_cast( + &_UninterpretedOption_default_instance_); + } + static constexpr int kIndexInFileMessages = + 22; + + friend void swap(UninterpretedOption& a, UninterpretedOption& b) { + a.Swap(&b); + } + inline void Swap(UninterpretedOption* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(UninterpretedOption* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline UninterpretedOption* New() const final { + return new UninterpretedOption(); + } + + UninterpretedOption* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const UninterpretedOption& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const UninterpretedOption& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(UninterpretedOption* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.UninterpretedOption"; + } + protected: + explicit UninterpretedOption(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef UninterpretedOption_NamePart NamePart; + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 2, + kIdentifierValueFieldNumber = 3, + kStringValueFieldNumber = 7, + kAggregateValueFieldNumber = 8, + kPositiveIntValueFieldNumber = 4, + kNegativeIntValueFieldNumber = 5, + kDoubleValueFieldNumber = 6, + }; + // repeated .google.protobuf.UninterpretedOption.NamePart name = 2; + int name_size() const; + private: + int _internal_name_size() const; + public: + void clear_name(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* mutable_name(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart >* + mutable_name(); + private: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart& _internal_name(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* _internal_add_name(); + public: + const PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart& name(int index) const; + PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* add_name(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart >& + name() const; + + // optional string identifier_value = 3; + bool has_identifier_value() const; + private: + bool _internal_has_identifier_value() const; + public: + void clear_identifier_value(); + const std::string& identifier_value() const; + template + void set_identifier_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_identifier_value(); + PROTOBUF_MUST_USE_RESULT std::string* release_identifier_value(); + void set_allocated_identifier_value(std::string* identifier_value); + private: + const std::string& _internal_identifier_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_identifier_value(const std::string& value); + std::string* _internal_mutable_identifier_value(); + public: + + // optional bytes string_value = 7; + bool has_string_value() const; + private: + bool _internal_has_string_value() const; + public: + void clear_string_value(); + const std::string& string_value() const; + template + void set_string_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_string_value(); + PROTOBUF_MUST_USE_RESULT std::string* release_string_value(); + void set_allocated_string_value(std::string* string_value); + private: + const std::string& _internal_string_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_string_value(const std::string& value); + std::string* _internal_mutable_string_value(); + public: + + // optional string aggregate_value = 8; + bool has_aggregate_value() const; + private: + bool _internal_has_aggregate_value() const; + public: + void clear_aggregate_value(); + const std::string& aggregate_value() const; + template + void set_aggregate_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_aggregate_value(); + PROTOBUF_MUST_USE_RESULT std::string* release_aggregate_value(); + void set_allocated_aggregate_value(std::string* aggregate_value); + private: + const std::string& _internal_aggregate_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_aggregate_value(const std::string& value); + std::string* _internal_mutable_aggregate_value(); + public: + + // optional uint64 positive_int_value = 4; + bool has_positive_int_value() const; + private: + bool _internal_has_positive_int_value() const; + public: + void clear_positive_int_value(); + ::PROTOBUF_NAMESPACE_ID::uint64 positive_int_value() const; + void set_positive_int_value(::PROTOBUF_NAMESPACE_ID::uint64 value); + private: + ::PROTOBUF_NAMESPACE_ID::uint64 _internal_positive_int_value() const; + void _internal_set_positive_int_value(::PROTOBUF_NAMESPACE_ID::uint64 value); + public: + + // optional int64 negative_int_value = 5; + bool has_negative_int_value() const; + private: + bool _internal_has_negative_int_value() const; + public: + void clear_negative_int_value(); + ::PROTOBUF_NAMESPACE_ID::int64 negative_int_value() const; + void set_negative_int_value(::PROTOBUF_NAMESPACE_ID::int64 value); + private: + ::PROTOBUF_NAMESPACE_ID::int64 _internal_negative_int_value() const; + void _internal_set_negative_int_value(::PROTOBUF_NAMESPACE_ID::int64 value); + public: + + // optional double double_value = 6; + bool has_double_value() const; + private: + bool _internal_has_double_value() const; + public: + void clear_double_value(); + double double_value() const; + void set_double_value(double value); + private: + double _internal_double_value() const; + void _internal_set_double_value(double value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.UninterpretedOption) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart > name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr identifier_value_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr string_value_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr aggregate_value_; + ::PROTOBUF_NAMESPACE_ID::uint64 positive_int_value_; + ::PROTOBUF_NAMESPACE_ID::int64 negative_int_value_; + double double_value_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT SourceCodeInfo_Location final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.SourceCodeInfo.Location) */ { + public: + inline SourceCodeInfo_Location() : SourceCodeInfo_Location(nullptr) {} + ~SourceCodeInfo_Location() override; + explicit constexpr SourceCodeInfo_Location(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SourceCodeInfo_Location(const SourceCodeInfo_Location& from); + SourceCodeInfo_Location(SourceCodeInfo_Location&& from) noexcept + : SourceCodeInfo_Location() { + *this = ::std::move(from); + } + + inline SourceCodeInfo_Location& operator=(const SourceCodeInfo_Location& from) { + CopyFrom(from); + return *this; + } + inline SourceCodeInfo_Location& operator=(SourceCodeInfo_Location&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SourceCodeInfo_Location& default_instance() { + return *internal_default_instance(); + } + static inline const SourceCodeInfo_Location* internal_default_instance() { + return reinterpret_cast( + &_SourceCodeInfo_Location_default_instance_); + } + static constexpr int kIndexInFileMessages = + 23; + + friend void swap(SourceCodeInfo_Location& a, SourceCodeInfo_Location& b) { + a.Swap(&b); + } + inline void Swap(SourceCodeInfo_Location* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SourceCodeInfo_Location* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline SourceCodeInfo_Location* New() const final { + return new SourceCodeInfo_Location(); + } + + SourceCodeInfo_Location* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SourceCodeInfo_Location& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SourceCodeInfo_Location& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SourceCodeInfo_Location* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.SourceCodeInfo.Location"; + } + protected: + explicit SourceCodeInfo_Location(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kPathFieldNumber = 1, + kSpanFieldNumber = 2, + kLeadingDetachedCommentsFieldNumber = 6, + kLeadingCommentsFieldNumber = 3, + kTrailingCommentsFieldNumber = 4, + }; + // repeated int32 path = 1 [packed = true]; + int path_size() const; + private: + int _internal_path_size() const; + public: + void clear_path(); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_path(int index) const; + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + _internal_path() const; + void _internal_add_path(::PROTOBUF_NAMESPACE_ID::int32 value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + _internal_mutable_path(); + public: + ::PROTOBUF_NAMESPACE_ID::int32 path(int index) const; + void set_path(int index, ::PROTOBUF_NAMESPACE_ID::int32 value); + void add_path(::PROTOBUF_NAMESPACE_ID::int32 value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + path() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + mutable_path(); + + // repeated int32 span = 2 [packed = true]; + int span_size() const; + private: + int _internal_span_size() const; + public: + void clear_span(); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_span(int index) const; + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + _internal_span() const; + void _internal_add_span(::PROTOBUF_NAMESPACE_ID::int32 value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + _internal_mutable_span(); + public: + ::PROTOBUF_NAMESPACE_ID::int32 span(int index) const; + void set_span(int index, ::PROTOBUF_NAMESPACE_ID::int32 value); + void add_span(::PROTOBUF_NAMESPACE_ID::int32 value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + span() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + mutable_span(); + + // repeated string leading_detached_comments = 6; + int leading_detached_comments_size() const; + private: + int _internal_leading_detached_comments_size() const; + public: + void clear_leading_detached_comments(); + const std::string& leading_detached_comments(int index) const; + std::string* mutable_leading_detached_comments(int index); + void set_leading_detached_comments(int index, const std::string& value); + void set_leading_detached_comments(int index, std::string&& value); + void set_leading_detached_comments(int index, const char* value); + void set_leading_detached_comments(int index, const char* value, size_t size); + std::string* add_leading_detached_comments(); + void add_leading_detached_comments(const std::string& value); + void add_leading_detached_comments(std::string&& value); + void add_leading_detached_comments(const char* value); + void add_leading_detached_comments(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& leading_detached_comments() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_leading_detached_comments(); + private: + const std::string& _internal_leading_detached_comments(int index) const; + std::string* _internal_add_leading_detached_comments(); + public: + + // optional string leading_comments = 3; + bool has_leading_comments() const; + private: + bool _internal_has_leading_comments() const; + public: + void clear_leading_comments(); + const std::string& leading_comments() const; + template + void set_leading_comments(ArgT0&& arg0, ArgT... args); + std::string* mutable_leading_comments(); + PROTOBUF_MUST_USE_RESULT std::string* release_leading_comments(); + void set_allocated_leading_comments(std::string* leading_comments); + private: + const std::string& _internal_leading_comments() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_leading_comments(const std::string& value); + std::string* _internal_mutable_leading_comments(); + public: + + // optional string trailing_comments = 4; + bool has_trailing_comments() const; + private: + bool _internal_has_trailing_comments() const; + public: + void clear_trailing_comments(); + const std::string& trailing_comments() const; + template + void set_trailing_comments(ArgT0&& arg0, ArgT... args); + std::string* mutable_trailing_comments(); + PROTOBUF_MUST_USE_RESULT std::string* release_trailing_comments(); + void set_allocated_trailing_comments(std::string* trailing_comments); + private: + const std::string& _internal_trailing_comments() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_trailing_comments(const std::string& value); + std::string* _internal_mutable_trailing_comments(); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.SourceCodeInfo.Location) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > path_; + mutable std::atomic _path_cached_byte_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > span_; + mutable std::atomic _span_cached_byte_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField leading_detached_comments_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr leading_comments_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr trailing_comments_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT SourceCodeInfo final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.SourceCodeInfo) */ { + public: + inline SourceCodeInfo() : SourceCodeInfo(nullptr) {} + ~SourceCodeInfo() override; + explicit constexpr SourceCodeInfo(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SourceCodeInfo(const SourceCodeInfo& from); + SourceCodeInfo(SourceCodeInfo&& from) noexcept + : SourceCodeInfo() { + *this = ::std::move(from); + } + + inline SourceCodeInfo& operator=(const SourceCodeInfo& from) { + CopyFrom(from); + return *this; + } + inline SourceCodeInfo& operator=(SourceCodeInfo&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SourceCodeInfo& default_instance() { + return *internal_default_instance(); + } + static inline const SourceCodeInfo* internal_default_instance() { + return reinterpret_cast( + &_SourceCodeInfo_default_instance_); + } + static constexpr int kIndexInFileMessages = + 24; + + friend void swap(SourceCodeInfo& a, SourceCodeInfo& b) { + a.Swap(&b); + } + inline void Swap(SourceCodeInfo* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SourceCodeInfo* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline SourceCodeInfo* New() const final { + return new SourceCodeInfo(); + } + + SourceCodeInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SourceCodeInfo& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SourceCodeInfo& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SourceCodeInfo* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.SourceCodeInfo"; + } + protected: + explicit SourceCodeInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef SourceCodeInfo_Location Location; + + // accessors ------------------------------------------------------- + + enum : int { + kLocationFieldNumber = 1, + }; + // repeated .google.protobuf.SourceCodeInfo.Location location = 1; + int location_size() const; + private: + int _internal_location_size() const; + public: + void clear_location(); + PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* mutable_location(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location >* + mutable_location(); + private: + const PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location& _internal_location(int index) const; + PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* _internal_add_location(); + public: + const PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location& location(int index) const; + PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* add_location(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location >& + location() const; + + // @@protoc_insertion_point(class_scope:google.protobuf.SourceCodeInfo) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location > location_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT GeneratedCodeInfo_Annotation final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.GeneratedCodeInfo.Annotation) */ { + public: + inline GeneratedCodeInfo_Annotation() : GeneratedCodeInfo_Annotation(nullptr) {} + ~GeneratedCodeInfo_Annotation() override; + explicit constexpr GeneratedCodeInfo_Annotation(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + GeneratedCodeInfo_Annotation(const GeneratedCodeInfo_Annotation& from); + GeneratedCodeInfo_Annotation(GeneratedCodeInfo_Annotation&& from) noexcept + : GeneratedCodeInfo_Annotation() { + *this = ::std::move(from); + } + + inline GeneratedCodeInfo_Annotation& operator=(const GeneratedCodeInfo_Annotation& from) { + CopyFrom(from); + return *this; + } + inline GeneratedCodeInfo_Annotation& operator=(GeneratedCodeInfo_Annotation&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const GeneratedCodeInfo_Annotation& default_instance() { + return *internal_default_instance(); + } + static inline const GeneratedCodeInfo_Annotation* internal_default_instance() { + return reinterpret_cast( + &_GeneratedCodeInfo_Annotation_default_instance_); + } + static constexpr int kIndexInFileMessages = + 25; + + friend void swap(GeneratedCodeInfo_Annotation& a, GeneratedCodeInfo_Annotation& b) { + a.Swap(&b); + } + inline void Swap(GeneratedCodeInfo_Annotation* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(GeneratedCodeInfo_Annotation* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline GeneratedCodeInfo_Annotation* New() const final { + return new GeneratedCodeInfo_Annotation(); + } + + GeneratedCodeInfo_Annotation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const GeneratedCodeInfo_Annotation& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const GeneratedCodeInfo_Annotation& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(GeneratedCodeInfo_Annotation* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.GeneratedCodeInfo.Annotation"; + } + protected: + explicit GeneratedCodeInfo_Annotation(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kPathFieldNumber = 1, + kSourceFileFieldNumber = 2, + kBeginFieldNumber = 3, + kEndFieldNumber = 4, + }; + // repeated int32 path = 1 [packed = true]; + int path_size() const; + private: + int _internal_path_size() const; + public: + void clear_path(); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_path(int index) const; + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + _internal_path() const; + void _internal_add_path(::PROTOBUF_NAMESPACE_ID::int32 value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + _internal_mutable_path(); + public: + ::PROTOBUF_NAMESPACE_ID::int32 path(int index) const; + void set_path(int index, ::PROTOBUF_NAMESPACE_ID::int32 value); + void add_path(::PROTOBUF_NAMESPACE_ID::int32 value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& + path() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* + mutable_path(); + + // optional string source_file = 2; + bool has_source_file() const; + private: + bool _internal_has_source_file() const; + public: + void clear_source_file(); + const std::string& source_file() const; + template + void set_source_file(ArgT0&& arg0, ArgT... args); + std::string* mutable_source_file(); + PROTOBUF_MUST_USE_RESULT std::string* release_source_file(); + void set_allocated_source_file(std::string* source_file); + private: + const std::string& _internal_source_file() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_source_file(const std::string& value); + std::string* _internal_mutable_source_file(); + public: + + // optional int32 begin = 3; + bool has_begin() const; + private: + bool _internal_has_begin() const; + public: + void clear_begin(); + ::PROTOBUF_NAMESPACE_ID::int32 begin() const; + void set_begin(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_begin() const; + void _internal_set_begin(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // optional int32 end = 4; + bool has_end() const; + private: + bool _internal_has_end() const; + public: + void clear_end(); + ::PROTOBUF_NAMESPACE_ID::int32 end() const; + void set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_end() const; + void _internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.GeneratedCodeInfo.Annotation) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > path_; + mutable std::atomic _path_cached_byte_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr source_file_; + ::PROTOBUF_NAMESPACE_ID::int32 begin_; + ::PROTOBUF_NAMESPACE_ID::int32 end_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT GeneratedCodeInfo final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.GeneratedCodeInfo) */ { + public: + inline GeneratedCodeInfo() : GeneratedCodeInfo(nullptr) {} + ~GeneratedCodeInfo() override; + explicit constexpr GeneratedCodeInfo(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + GeneratedCodeInfo(const GeneratedCodeInfo& from); + GeneratedCodeInfo(GeneratedCodeInfo&& from) noexcept + : GeneratedCodeInfo() { + *this = ::std::move(from); + } + + inline GeneratedCodeInfo& operator=(const GeneratedCodeInfo& from) { + CopyFrom(from); + return *this; + } + inline GeneratedCodeInfo& operator=(GeneratedCodeInfo&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const { + return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance); + } + inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() { + return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const GeneratedCodeInfo& default_instance() { + return *internal_default_instance(); + } + static inline const GeneratedCodeInfo* internal_default_instance() { + return reinterpret_cast( + &_GeneratedCodeInfo_default_instance_); + } + static constexpr int kIndexInFileMessages = + 26; + + friend void swap(GeneratedCodeInfo& a, GeneratedCodeInfo& b) { + a.Swap(&b); + } + inline void Swap(GeneratedCodeInfo* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(GeneratedCodeInfo* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline GeneratedCodeInfo* New() const final { + return new GeneratedCodeInfo(); + } + + GeneratedCodeInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const GeneratedCodeInfo& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const GeneratedCodeInfo& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(GeneratedCodeInfo* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.GeneratedCodeInfo"; + } + protected: + explicit GeneratedCodeInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef GeneratedCodeInfo_Annotation Annotation; + + // accessors ------------------------------------------------------- + + enum : int { + kAnnotationFieldNumber = 1, + }; + // repeated .google.protobuf.GeneratedCodeInfo.Annotation annotation = 1; + int annotation_size() const; + private: + int _internal_annotation_size() const; + public: + void clear_annotation(); + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* mutable_annotation(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation >* + mutable_annotation(); + private: + const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation& _internal_annotation(int index) const; + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* _internal_add_annotation(); + public: + const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation& annotation(int index) const; + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* add_annotation(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation >& + annotation() const; + + // @@protoc_insertion_point(class_scope:google.protobuf.GeneratedCodeInfo) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation > annotation_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fdescriptor_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// FileDescriptorSet + +// repeated .google.protobuf.FileDescriptorProto file = 1; +inline int FileDescriptorSet::_internal_file_size() const { + return file_.size(); +} +inline int FileDescriptorSet::file_size() const { + return _internal_file_size(); +} +inline void FileDescriptorSet::clear_file() { + file_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::FileDescriptorProto* FileDescriptorSet::mutable_file(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorSet.file) + return file_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >* +FileDescriptorSet::mutable_file() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorSet.file) + return &file_; +} +inline const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& FileDescriptorSet::_internal_file(int index) const { + return file_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::FileDescriptorProto& FileDescriptorSet::file(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorSet.file) + return _internal_file(index); +} +inline PROTOBUF_NAMESPACE_ID::FileDescriptorProto* FileDescriptorSet::_internal_add_file() { + return file_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::FileDescriptorProto* FileDescriptorSet::add_file() { + PROTOBUF_NAMESPACE_ID::FileDescriptorProto* _add = _internal_add_file(); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorSet.file) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FileDescriptorProto >& +FileDescriptorSet::file() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorSet.file) + return file_; +} + +// ------------------------------------------------------------------- + +// FileDescriptorProto + +// optional string name = 1; +inline bool FileDescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool FileDescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void FileDescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& FileDescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileDescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.name) +} +inline std::string* FileDescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.name) + return _s; +} +inline const std::string& FileDescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void FileDescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileDescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileDescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileDescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.name) +} + +// optional string package = 2; +inline bool FileDescriptorProto::_internal_has_package() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool FileDescriptorProto::has_package() const { + return _internal_has_package(); +} +inline void FileDescriptorProto::clear_package() { + package_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000002u; +} +inline const std::string& FileDescriptorProto::package() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.package) + return _internal_package(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileDescriptorProto::set_package(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000002u; + package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.package) +} +inline std::string* FileDescriptorProto::mutable_package() { + std::string* _s = _internal_mutable_package(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.package) + return _s; +} +inline const std::string& FileDescriptorProto::_internal_package() const { + return package_.Get(); +} +inline void FileDescriptorProto::_internal_set_package(const std::string& value) { + _has_bits_[0] |= 0x00000002u; + package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileDescriptorProto::_internal_mutable_package() { + _has_bits_[0] |= 0x00000002u; + return package_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileDescriptorProto::release_package() { + // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.package) + if (!_internal_has_package()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000002u; + return package_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileDescriptorProto::set_allocated_package(std::string* package) { + if (package != nullptr) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + package_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), package, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.package) +} + +// repeated string dependency = 3; +inline int FileDescriptorProto::_internal_dependency_size() const { + return dependency_.size(); +} +inline int FileDescriptorProto::dependency_size() const { + return _internal_dependency_size(); +} +inline void FileDescriptorProto::clear_dependency() { + dependency_.Clear(); +} +inline std::string* FileDescriptorProto::add_dependency() { + std::string* _s = _internal_add_dependency(); + // @@protoc_insertion_point(field_add_mutable:google.protobuf.FileDescriptorProto.dependency) + return _s; +} +inline const std::string& FileDescriptorProto::_internal_dependency(int index) const { + return dependency_.Get(index); +} +inline const std::string& FileDescriptorProto::dependency(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.dependency) + return _internal_dependency(index); +} +inline std::string* FileDescriptorProto::mutable_dependency(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.dependency) + return dependency_.Mutable(index); +} +inline void FileDescriptorProto::set_dependency(int index, const std::string& value) { + dependency_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.dependency) +} +inline void FileDescriptorProto::set_dependency(int index, std::string&& value) { + dependency_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.dependency) +} +inline void FileDescriptorProto::set_dependency(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + dependency_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:google.protobuf.FileDescriptorProto.dependency) +} +inline void FileDescriptorProto::set_dependency(int index, const char* value, size_t size) { + dependency_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:google.protobuf.FileDescriptorProto.dependency) +} +inline std::string* FileDescriptorProto::_internal_add_dependency() { + return dependency_.Add(); +} +inline void FileDescriptorProto::add_dependency(const std::string& value) { + dependency_.Add()->assign(value); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.dependency) +} +inline void FileDescriptorProto::add_dependency(std::string&& value) { + dependency_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.dependency) +} +inline void FileDescriptorProto::add_dependency(const char* value) { + GOOGLE_DCHECK(value != nullptr); + dependency_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:google.protobuf.FileDescriptorProto.dependency) +} +inline void FileDescriptorProto::add_dependency(const char* value, size_t size) { + dependency_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:google.protobuf.FileDescriptorProto.dependency) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +FileDescriptorProto::dependency() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.dependency) + return dependency_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +FileDescriptorProto::mutable_dependency() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.dependency) + return &dependency_; +} + +// repeated int32 public_dependency = 10; +inline int FileDescriptorProto::_internal_public_dependency_size() const { + return public_dependency_.size(); +} +inline int FileDescriptorProto::public_dependency_size() const { + return _internal_public_dependency_size(); +} +inline void FileDescriptorProto::clear_public_dependency() { + public_dependency_.Clear(); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FileDescriptorProto::_internal_public_dependency(int index) const { + return public_dependency_.Get(index); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FileDescriptorProto::public_dependency(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.public_dependency) + return _internal_public_dependency(index); +} +inline void FileDescriptorProto::set_public_dependency(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) { + public_dependency_.Set(index, value); + // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.public_dependency) +} +inline void FileDescriptorProto::_internal_add_public_dependency(::PROTOBUF_NAMESPACE_ID::int32 value) { + public_dependency_.Add(value); +} +inline void FileDescriptorProto::add_public_dependency(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_add_public_dependency(value); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.public_dependency) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +FileDescriptorProto::_internal_public_dependency() const { + return public_dependency_; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +FileDescriptorProto::public_dependency() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.public_dependency) + return _internal_public_dependency(); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +FileDescriptorProto::_internal_mutable_public_dependency() { + return &public_dependency_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +FileDescriptorProto::mutable_public_dependency() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.public_dependency) + return _internal_mutable_public_dependency(); +} + +// repeated int32 weak_dependency = 11; +inline int FileDescriptorProto::_internal_weak_dependency_size() const { + return weak_dependency_.size(); +} +inline int FileDescriptorProto::weak_dependency_size() const { + return _internal_weak_dependency_size(); +} +inline void FileDescriptorProto::clear_weak_dependency() { + weak_dependency_.Clear(); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FileDescriptorProto::_internal_weak_dependency(int index) const { + return weak_dependency_.Get(index); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FileDescriptorProto::weak_dependency(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.weak_dependency) + return _internal_weak_dependency(index); +} +inline void FileDescriptorProto::set_weak_dependency(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) { + weak_dependency_.Set(index, value); + // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.weak_dependency) +} +inline void FileDescriptorProto::_internal_add_weak_dependency(::PROTOBUF_NAMESPACE_ID::int32 value) { + weak_dependency_.Add(value); +} +inline void FileDescriptorProto::add_weak_dependency(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_add_weak_dependency(value); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.weak_dependency) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +FileDescriptorProto::_internal_weak_dependency() const { + return weak_dependency_; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +FileDescriptorProto::weak_dependency() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.weak_dependency) + return _internal_weak_dependency(); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +FileDescriptorProto::_internal_mutable_weak_dependency() { + return &weak_dependency_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +FileDescriptorProto::mutable_weak_dependency() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.weak_dependency) + return _internal_mutable_weak_dependency(); +} + +// repeated .google.protobuf.DescriptorProto message_type = 4; +inline int FileDescriptorProto::_internal_message_type_size() const { + return message_type_.size(); +} +inline int FileDescriptorProto::message_type_size() const { + return _internal_message_type_size(); +} +inline void FileDescriptorProto::clear_message_type() { + message_type_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto* FileDescriptorProto::mutable_message_type(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.message_type) + return message_type_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >* +FileDescriptorProto::mutable_message_type() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.message_type) + return &message_type_; +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto& FileDescriptorProto::_internal_message_type(int index) const { + return message_type_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto& FileDescriptorProto::message_type(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.message_type) + return _internal_message_type(index); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto* FileDescriptorProto::_internal_add_message_type() { + return message_type_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto* FileDescriptorProto::add_message_type() { + PROTOBUF_NAMESPACE_ID::DescriptorProto* _add = _internal_add_message_type(); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.message_type) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >& +FileDescriptorProto::message_type() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.message_type) + return message_type_; +} + +// repeated .google.protobuf.EnumDescriptorProto enum_type = 5; +inline int FileDescriptorProto::_internal_enum_type_size() const { + return enum_type_.size(); +} +inline int FileDescriptorProto::enum_type_size() const { + return _internal_enum_type_size(); +} +inline void FileDescriptorProto::clear_enum_type() { + enum_type_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* FileDescriptorProto::mutable_enum_type(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.enum_type) + return enum_type_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >* +FileDescriptorProto::mutable_enum_type() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.enum_type) + return &enum_type_; +} +inline const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& FileDescriptorProto::_internal_enum_type(int index) const { + return enum_type_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& FileDescriptorProto::enum_type(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.enum_type) + return _internal_enum_type(index); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* FileDescriptorProto::_internal_add_enum_type() { + return enum_type_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* FileDescriptorProto::add_enum_type() { + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* _add = _internal_add_enum_type(); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.enum_type) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >& +FileDescriptorProto::enum_type() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.enum_type) + return enum_type_; +} + +// repeated .google.protobuf.ServiceDescriptorProto service = 6; +inline int FileDescriptorProto::_internal_service_size() const { + return service_.size(); +} +inline int FileDescriptorProto::service_size() const { + return _internal_service_size(); +} +inline void FileDescriptorProto::clear_service() { + service_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* FileDescriptorProto::mutable_service(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.service) + return service_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto >* +FileDescriptorProto::mutable_service() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.service) + return &service_; +} +inline const PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto& FileDescriptorProto::_internal_service(int index) const { + return service_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto& FileDescriptorProto::service(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.service) + return _internal_service(index); +} +inline PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* FileDescriptorProto::_internal_add_service() { + return service_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* FileDescriptorProto::add_service() { + PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto* _add = _internal_add_service(); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.service) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto >& +FileDescriptorProto::service() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.service) + return service_; +} + +// repeated .google.protobuf.FieldDescriptorProto extension = 7; +inline int FileDescriptorProto::_internal_extension_size() const { + return extension_.size(); +} +inline int FileDescriptorProto::extension_size() const { + return _internal_extension_size(); +} +inline void FileDescriptorProto::clear_extension() { + extension_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* FileDescriptorProto::mutable_extension(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.extension) + return extension_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >* +FileDescriptorProto::mutable_extension() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileDescriptorProto.extension) + return &extension_; +} +inline const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& FileDescriptorProto::_internal_extension(int index) const { + return extension_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& FileDescriptorProto::extension(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.extension) + return _internal_extension(index); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* FileDescriptorProto::_internal_add_extension() { + return extension_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* FileDescriptorProto::add_extension() { + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* _add = _internal_add_extension(); + // @@protoc_insertion_point(field_add:google.protobuf.FileDescriptorProto.extension) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >& +FileDescriptorProto::extension() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileDescriptorProto.extension) + return extension_; +} + +// optional .google.protobuf.FileOptions options = 8; +inline bool FileDescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool FileDescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void FileDescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000008u; +} +inline const PROTOBUF_NAMESPACE_ID::FileOptions& FileDescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::FileOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_FileOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::FileOptions& FileDescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.options) + return _internal_options(); +} +inline void FileDescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::FileOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.FileDescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::FileOptions* FileDescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000008u; + PROTOBUF_NAMESPACE_ID::FileOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::FileOptions* FileDescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.options) + _has_bits_[0] &= ~0x00000008u; + PROTOBUF_NAMESPACE_ID::FileOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::FileOptions* FileDescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000008u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::FileOptions* FileDescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::FileOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.options) + return _msg; +} +inline void FileDescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::FileOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.options) +} + +// optional .google.protobuf.SourceCodeInfo source_code_info = 9; +inline bool FileDescriptorProto::_internal_has_source_code_info() const { + bool value = (_has_bits_[0] & 0x00000010u) != 0; + PROTOBUF_ASSUME(!value || source_code_info_ != nullptr); + return value; +} +inline bool FileDescriptorProto::has_source_code_info() const { + return _internal_has_source_code_info(); +} +inline void FileDescriptorProto::clear_source_code_info() { + if (source_code_info_ != nullptr) source_code_info_->Clear(); + _has_bits_[0] &= ~0x00000010u; +} +inline const PROTOBUF_NAMESPACE_ID::SourceCodeInfo& FileDescriptorProto::_internal_source_code_info() const { + const PROTOBUF_NAMESPACE_ID::SourceCodeInfo* p = source_code_info_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_SourceCodeInfo_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::SourceCodeInfo& FileDescriptorProto::source_code_info() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.source_code_info) + return _internal_source_code_info(); +} +inline void FileDescriptorProto::unsafe_arena_set_allocated_source_code_info( + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* source_code_info) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(source_code_info_); + } + source_code_info_ = source_code_info; + if (source_code_info) { + _has_bits_[0] |= 0x00000010u; + } else { + _has_bits_[0] &= ~0x00000010u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.FileDescriptorProto.source_code_info) +} +inline PROTOBUF_NAMESPACE_ID::SourceCodeInfo* FileDescriptorProto::release_source_code_info() { + _has_bits_[0] &= ~0x00000010u; + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* temp = source_code_info_; + source_code_info_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::SourceCodeInfo* FileDescriptorProto::unsafe_arena_release_source_code_info() { + // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.source_code_info) + _has_bits_[0] &= ~0x00000010u; + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* temp = source_code_info_; + source_code_info_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::SourceCodeInfo* FileDescriptorProto::_internal_mutable_source_code_info() { + _has_bits_[0] |= 0x00000010u; + if (source_code_info_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + source_code_info_ = p; + } + return source_code_info_; +} +inline PROTOBUF_NAMESPACE_ID::SourceCodeInfo* FileDescriptorProto::mutable_source_code_info() { + PROTOBUF_NAMESPACE_ID::SourceCodeInfo* _msg = _internal_mutable_source_code_info(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.source_code_info) + return _msg; +} +inline void FileDescriptorProto::set_allocated_source_code_info(PROTOBUF_NAMESPACE_ID::SourceCodeInfo* source_code_info) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete source_code_info_; + } + if (source_code_info) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(source_code_info); + if (message_arena != submessage_arena) { + source_code_info = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, source_code_info, submessage_arena); + } + _has_bits_[0] |= 0x00000010u; + } else { + _has_bits_[0] &= ~0x00000010u; + } + source_code_info_ = source_code_info; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.source_code_info) +} + +// optional string syntax = 12; +inline bool FileDescriptorProto::_internal_has_syntax() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool FileDescriptorProto::has_syntax() const { + return _internal_has_syntax(); +} +inline void FileDescriptorProto::clear_syntax() { + syntax_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000004u; +} +inline const std::string& FileDescriptorProto::syntax() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileDescriptorProto.syntax) + return _internal_syntax(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileDescriptorProto::set_syntax(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000004u; + syntax_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileDescriptorProto.syntax) +} +inline std::string* FileDescriptorProto::mutable_syntax() { + std::string* _s = _internal_mutable_syntax(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileDescriptorProto.syntax) + return _s; +} +inline const std::string& FileDescriptorProto::_internal_syntax() const { + return syntax_.Get(); +} +inline void FileDescriptorProto::_internal_set_syntax(const std::string& value) { + _has_bits_[0] |= 0x00000004u; + syntax_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileDescriptorProto::_internal_mutable_syntax() { + _has_bits_[0] |= 0x00000004u; + return syntax_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileDescriptorProto::release_syntax() { + // @@protoc_insertion_point(field_release:google.protobuf.FileDescriptorProto.syntax) + if (!_internal_has_syntax()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000004u; + return syntax_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileDescriptorProto::set_allocated_syntax(std::string* syntax) { + if (syntax != nullptr) { + _has_bits_[0] |= 0x00000004u; + } else { + _has_bits_[0] &= ~0x00000004u; + } + syntax_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), syntax, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileDescriptorProto.syntax) +} + +// ------------------------------------------------------------------- + +// DescriptorProto_ExtensionRange + +// optional int32 start = 1; +inline bool DescriptorProto_ExtensionRange::_internal_has_start() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool DescriptorProto_ExtensionRange::has_start() const { + return _internal_has_start(); +} +inline void DescriptorProto_ExtensionRange::clear_start() { + start_ = 0; + _has_bits_[0] &= ~0x00000002u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ExtensionRange::_internal_start() const { + return start_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ExtensionRange::start() const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ExtensionRange.start) + return _internal_start(); +} +inline void DescriptorProto_ExtensionRange::_internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000002u; + start_ = value; +} +inline void DescriptorProto_ExtensionRange::set_start(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_start(value); + // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ExtensionRange.start) +} + +// optional int32 end = 2; +inline bool DescriptorProto_ExtensionRange::_internal_has_end() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool DescriptorProto_ExtensionRange::has_end() const { + return _internal_has_end(); +} +inline void DescriptorProto_ExtensionRange::clear_end() { + end_ = 0; + _has_bits_[0] &= ~0x00000004u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ExtensionRange::_internal_end() const { + return end_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ExtensionRange::end() const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ExtensionRange.end) + return _internal_end(); +} +inline void DescriptorProto_ExtensionRange::_internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000004u; + end_ = value; +} +inline void DescriptorProto_ExtensionRange::set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_end(value); + // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ExtensionRange.end) +} + +// optional .google.protobuf.ExtensionRangeOptions options = 3; +inline bool DescriptorProto_ExtensionRange::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool DescriptorProto_ExtensionRange::has_options() const { + return _internal_has_options(); +} +inline void DescriptorProto_ExtensionRange::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000001u; +} +inline const PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions& DescriptorProto_ExtensionRange::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_ExtensionRangeOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions& DescriptorProto_ExtensionRange::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ExtensionRange.options) + return _internal_options(); +} +inline void DescriptorProto_ExtensionRange::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.DescriptorProto.ExtensionRange.options) +} +inline PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* DescriptorProto_ExtensionRange::release_options() { + _has_bits_[0] &= ~0x00000001u; + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* DescriptorProto_ExtensionRange::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.DescriptorProto.ExtensionRange.options) + _has_bits_[0] &= ~0x00000001u; + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* DescriptorProto_ExtensionRange::_internal_mutable_options() { + _has_bits_[0] |= 0x00000001u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* DescriptorProto_ExtensionRange::mutable_options() { + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.ExtensionRange.options) + return _msg; +} +inline void DescriptorProto_ExtensionRange::set_allocated_options(PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.DescriptorProto.ExtensionRange.options) +} + +// ------------------------------------------------------------------- + +// DescriptorProto_ReservedRange + +// optional int32 start = 1; +inline bool DescriptorProto_ReservedRange::_internal_has_start() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool DescriptorProto_ReservedRange::has_start() const { + return _internal_has_start(); +} +inline void DescriptorProto_ReservedRange::clear_start() { + start_ = 0; + _has_bits_[0] &= ~0x00000001u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ReservedRange::_internal_start() const { + return start_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ReservedRange::start() const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ReservedRange.start) + return _internal_start(); +} +inline void DescriptorProto_ReservedRange::_internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000001u; + start_ = value; +} +inline void DescriptorProto_ReservedRange::set_start(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_start(value); + // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ReservedRange.start) +} + +// optional int32 end = 2; +inline bool DescriptorProto_ReservedRange::_internal_has_end() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool DescriptorProto_ReservedRange::has_end() const { + return _internal_has_end(); +} +inline void DescriptorProto_ReservedRange::clear_end() { + end_ = 0; + _has_bits_[0] &= ~0x00000002u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ReservedRange::_internal_end() const { + return end_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 DescriptorProto_ReservedRange::end() const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.ReservedRange.end) + return _internal_end(); +} +inline void DescriptorProto_ReservedRange::_internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000002u; + end_ = value; +} +inline void DescriptorProto_ReservedRange::set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_end(value); + // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.ReservedRange.end) +} + +// ------------------------------------------------------------------- + +// DescriptorProto + +// optional string name = 1; +inline bool DescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool DescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void DescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& DescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void DescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.name) +} +inline std::string* DescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.name) + return _s; +} +inline const std::string& DescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void DescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* DescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* DescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.DescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void DescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.DescriptorProto.name) +} + +// repeated .google.protobuf.FieldDescriptorProto field = 2; +inline int DescriptorProto::_internal_field_size() const { + return field_.size(); +} +inline int DescriptorProto::field_size() const { + return _internal_field_size(); +} +inline void DescriptorProto::clear_field() { + field_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* DescriptorProto::mutable_field(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.field) + return field_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >* +DescriptorProto::mutable_field() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.field) + return &field_; +} +inline const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& DescriptorProto::_internal_field(int index) const { + return field_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& DescriptorProto::field(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.field) + return _internal_field(index); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* DescriptorProto::_internal_add_field() { + return field_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* DescriptorProto::add_field() { + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* _add = _internal_add_field(); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.field) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >& +DescriptorProto::field() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.field) + return field_; +} + +// repeated .google.protobuf.FieldDescriptorProto extension = 6; +inline int DescriptorProto::_internal_extension_size() const { + return extension_.size(); +} +inline int DescriptorProto::extension_size() const { + return _internal_extension_size(); +} +inline void DescriptorProto::clear_extension() { + extension_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* DescriptorProto::mutable_extension(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.extension) + return extension_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >* +DescriptorProto::mutable_extension() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.extension) + return &extension_; +} +inline const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& DescriptorProto::_internal_extension(int index) const { + return extension_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::FieldDescriptorProto& DescriptorProto::extension(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.extension) + return _internal_extension(index); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* DescriptorProto::_internal_add_extension() { + return extension_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* DescriptorProto::add_extension() { + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto* _add = _internal_add_extension(); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.extension) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto >& +DescriptorProto::extension() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.extension) + return extension_; +} + +// repeated .google.protobuf.DescriptorProto nested_type = 3; +inline int DescriptorProto::_internal_nested_type_size() const { + return nested_type_.size(); +} +inline int DescriptorProto::nested_type_size() const { + return _internal_nested_type_size(); +} +inline void DescriptorProto::clear_nested_type() { + nested_type_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto* DescriptorProto::mutable_nested_type(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.nested_type) + return nested_type_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >* +DescriptorProto::mutable_nested_type() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.nested_type) + return &nested_type_; +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto& DescriptorProto::_internal_nested_type(int index) const { + return nested_type_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto& DescriptorProto::nested_type(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.nested_type) + return _internal_nested_type(index); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto* DescriptorProto::_internal_add_nested_type() { + return nested_type_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto* DescriptorProto::add_nested_type() { + PROTOBUF_NAMESPACE_ID::DescriptorProto* _add = _internal_add_nested_type(); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.nested_type) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto >& +DescriptorProto::nested_type() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.nested_type) + return nested_type_; +} + +// repeated .google.protobuf.EnumDescriptorProto enum_type = 4; +inline int DescriptorProto::_internal_enum_type_size() const { + return enum_type_.size(); +} +inline int DescriptorProto::enum_type_size() const { + return _internal_enum_type_size(); +} +inline void DescriptorProto::clear_enum_type() { + enum_type_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* DescriptorProto::mutable_enum_type(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.enum_type) + return enum_type_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >* +DescriptorProto::mutable_enum_type() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.enum_type) + return &enum_type_; +} +inline const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& DescriptorProto::_internal_enum_type(int index) const { + return enum_type_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto& DescriptorProto::enum_type(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.enum_type) + return _internal_enum_type(index); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* DescriptorProto::_internal_add_enum_type() { + return enum_type_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* DescriptorProto::add_enum_type() { + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto* _add = _internal_add_enum_type(); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.enum_type) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto >& +DescriptorProto::enum_type() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.enum_type) + return enum_type_; +} + +// repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5; +inline int DescriptorProto::_internal_extension_range_size() const { + return extension_range_.size(); +} +inline int DescriptorProto::extension_range_size() const { + return _internal_extension_range_size(); +} +inline void DescriptorProto::clear_extension_range() { + extension_range_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* DescriptorProto::mutable_extension_range(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.extension_range) + return extension_range_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange >* +DescriptorProto::mutable_extension_range() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.extension_range) + return &extension_range_; +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange& DescriptorProto::_internal_extension_range(int index) const { + return extension_range_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange& DescriptorProto::extension_range(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.extension_range) + return _internal_extension_range(index); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* DescriptorProto::_internal_add_extension_range() { + return extension_range_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* DescriptorProto::add_extension_range() { + PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange* _add = _internal_add_extension_range(); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.extension_range) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ExtensionRange >& +DescriptorProto::extension_range() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.extension_range) + return extension_range_; +} + +// repeated .google.protobuf.OneofDescriptorProto oneof_decl = 8; +inline int DescriptorProto::_internal_oneof_decl_size() const { + return oneof_decl_.size(); +} +inline int DescriptorProto::oneof_decl_size() const { + return _internal_oneof_decl_size(); +} +inline void DescriptorProto::clear_oneof_decl() { + oneof_decl_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* DescriptorProto::mutable_oneof_decl(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.oneof_decl) + return oneof_decl_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::OneofDescriptorProto >* +DescriptorProto::mutable_oneof_decl() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.oneof_decl) + return &oneof_decl_; +} +inline const PROTOBUF_NAMESPACE_ID::OneofDescriptorProto& DescriptorProto::_internal_oneof_decl(int index) const { + return oneof_decl_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::OneofDescriptorProto& DescriptorProto::oneof_decl(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.oneof_decl) + return _internal_oneof_decl(index); +} +inline PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* DescriptorProto::_internal_add_oneof_decl() { + return oneof_decl_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* DescriptorProto::add_oneof_decl() { + PROTOBUF_NAMESPACE_ID::OneofDescriptorProto* _add = _internal_add_oneof_decl(); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.oneof_decl) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::OneofDescriptorProto >& +DescriptorProto::oneof_decl() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.oneof_decl) + return oneof_decl_; +} + +// optional .google.protobuf.MessageOptions options = 7; +inline bool DescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool DescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void DescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000002u; +} +inline const PROTOBUF_NAMESPACE_ID::MessageOptions& DescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::MessageOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_MessageOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::MessageOptions& DescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.options) + return _internal_options(); +} +inline void DescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::MessageOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.DescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::MessageOptions* DescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::MessageOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::MessageOptions* DescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.DescriptorProto.options) + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::MessageOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::MessageOptions* DescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000002u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::MessageOptions* DescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::MessageOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.options) + return _msg; +} +inline void DescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::MessageOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.DescriptorProto.options) +} + +// repeated .google.protobuf.DescriptorProto.ReservedRange reserved_range = 9; +inline int DescriptorProto::_internal_reserved_range_size() const { + return reserved_range_.size(); +} +inline int DescriptorProto::reserved_range_size() const { + return _internal_reserved_range_size(); +} +inline void DescriptorProto::clear_reserved_range() { + reserved_range_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* DescriptorProto::mutable_reserved_range(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.reserved_range) + return reserved_range_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange >* +DescriptorProto::mutable_reserved_range() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.reserved_range) + return &reserved_range_; +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange& DescriptorProto::_internal_reserved_range(int index) const { + return reserved_range_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange& DescriptorProto::reserved_range(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.reserved_range) + return _internal_reserved_range(index); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* DescriptorProto::_internal_add_reserved_range() { + return reserved_range_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* DescriptorProto::add_reserved_range() { + PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange* _add = _internal_add_reserved_range(); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.reserved_range) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::DescriptorProto_ReservedRange >& +DescriptorProto::reserved_range() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.reserved_range) + return reserved_range_; +} + +// repeated string reserved_name = 10; +inline int DescriptorProto::_internal_reserved_name_size() const { + return reserved_name_.size(); +} +inline int DescriptorProto::reserved_name_size() const { + return _internal_reserved_name_size(); +} +inline void DescriptorProto::clear_reserved_name() { + reserved_name_.Clear(); +} +inline std::string* DescriptorProto::add_reserved_name() { + std::string* _s = _internal_add_reserved_name(); + // @@protoc_insertion_point(field_add_mutable:google.protobuf.DescriptorProto.reserved_name) + return _s; +} +inline const std::string& DescriptorProto::_internal_reserved_name(int index) const { + return reserved_name_.Get(index); +} +inline const std::string& DescriptorProto::reserved_name(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.DescriptorProto.reserved_name) + return _internal_reserved_name(index); +} +inline std::string* DescriptorProto::mutable_reserved_name(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.DescriptorProto.reserved_name) + return reserved_name_.Mutable(index); +} +inline void DescriptorProto::set_reserved_name(int index, const std::string& value) { + reserved_name_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.reserved_name) +} +inline void DescriptorProto::set_reserved_name(int index, std::string&& value) { + reserved_name_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:google.protobuf.DescriptorProto.reserved_name) +} +inline void DescriptorProto::set_reserved_name(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + reserved_name_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:google.protobuf.DescriptorProto.reserved_name) +} +inline void DescriptorProto::set_reserved_name(int index, const char* value, size_t size) { + reserved_name_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:google.protobuf.DescriptorProto.reserved_name) +} +inline std::string* DescriptorProto::_internal_add_reserved_name() { + return reserved_name_.Add(); +} +inline void DescriptorProto::add_reserved_name(const std::string& value) { + reserved_name_.Add()->assign(value); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.reserved_name) +} +inline void DescriptorProto::add_reserved_name(std::string&& value) { + reserved_name_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:google.protobuf.DescriptorProto.reserved_name) +} +inline void DescriptorProto::add_reserved_name(const char* value) { + GOOGLE_DCHECK(value != nullptr); + reserved_name_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:google.protobuf.DescriptorProto.reserved_name) +} +inline void DescriptorProto::add_reserved_name(const char* value, size_t size) { + reserved_name_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:google.protobuf.DescriptorProto.reserved_name) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +DescriptorProto::reserved_name() const { + // @@protoc_insertion_point(field_list:google.protobuf.DescriptorProto.reserved_name) + return reserved_name_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +DescriptorProto::mutable_reserved_name() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.DescriptorProto.reserved_name) + return &reserved_name_; +} + +// ------------------------------------------------------------------- + +// ExtensionRangeOptions + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int ExtensionRangeOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int ExtensionRangeOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void ExtensionRangeOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* ExtensionRangeOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.ExtensionRangeOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +ExtensionRangeOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.ExtensionRangeOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& ExtensionRangeOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& ExtensionRangeOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.ExtensionRangeOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* ExtensionRangeOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* ExtensionRangeOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.ExtensionRangeOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +ExtensionRangeOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.ExtensionRangeOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// FieldDescriptorProto + +// optional string name = 1; +inline bool FieldDescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void FieldDescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& FieldDescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FieldDescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.name) +} +inline std::string* FieldDescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.name) + return _s; +} +inline const std::string& FieldDescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void FieldDescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FieldDescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.name) +} + +// optional int32 number = 3; +inline bool FieldDescriptorProto::_internal_has_number() const { + bool value = (_has_bits_[0] & 0x00000040u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_number() const { + return _internal_has_number(); +} +inline void FieldDescriptorProto::clear_number() { + number_ = 0; + _has_bits_[0] &= ~0x00000040u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FieldDescriptorProto::_internal_number() const { + return number_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FieldDescriptorProto::number() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.number) + return _internal_number(); +} +inline void FieldDescriptorProto::_internal_set_number(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000040u; + number_ = value; +} +inline void FieldDescriptorProto::set_number(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_number(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.number) +} + +// optional .google.protobuf.FieldDescriptorProto.Label label = 4; +inline bool FieldDescriptorProto::_internal_has_label() const { + bool value = (_has_bits_[0] & 0x00000200u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_label() const { + return _internal_has_label(); +} +inline void FieldDescriptorProto::clear_label() { + label_ = 1; + _has_bits_[0] &= ~0x00000200u; +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label FieldDescriptorProto::_internal_label() const { + return static_cast< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label >(label_); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label FieldDescriptorProto::label() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.label) + return _internal_label(); +} +inline void FieldDescriptorProto::_internal_set_label(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label value) { + assert(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label_IsValid(value)); + _has_bits_[0] |= 0x00000200u; + label_ = value; +} +inline void FieldDescriptorProto::set_label(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label value) { + _internal_set_label(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.label) +} + +// optional .google.protobuf.FieldDescriptorProto.Type type = 5; +inline bool FieldDescriptorProto::_internal_has_type() const { + bool value = (_has_bits_[0] & 0x00000400u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_type() const { + return _internal_has_type(); +} +inline void FieldDescriptorProto::clear_type() { + type_ = 1; + _has_bits_[0] &= ~0x00000400u; +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type FieldDescriptorProto::_internal_type() const { + return static_cast< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type >(type_); +} +inline PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type FieldDescriptorProto::type() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.type) + return _internal_type(); +} +inline void FieldDescriptorProto::_internal_set_type(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type value) { + assert(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type_IsValid(value)); + _has_bits_[0] |= 0x00000400u; + type_ = value; +} +inline void FieldDescriptorProto::set_type(PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type value) { + _internal_set_type(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.type) +} + +// optional string type_name = 6; +inline bool FieldDescriptorProto::_internal_has_type_name() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_type_name() const { + return _internal_has_type_name(); +} +inline void FieldDescriptorProto::clear_type_name() { + type_name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000004u; +} +inline const std::string& FieldDescriptorProto::type_name() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.type_name) + return _internal_type_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FieldDescriptorProto::set_type_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000004u; + type_name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.type_name) +} +inline std::string* FieldDescriptorProto::mutable_type_name() { + std::string* _s = _internal_mutable_type_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.type_name) + return _s; +} +inline const std::string& FieldDescriptorProto::_internal_type_name() const { + return type_name_.Get(); +} +inline void FieldDescriptorProto::_internal_set_type_name(const std::string& value) { + _has_bits_[0] |= 0x00000004u; + type_name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::_internal_mutable_type_name() { + _has_bits_[0] |= 0x00000004u; + return type_name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::release_type_name() { + // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.type_name) + if (!_internal_has_type_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000004u; + return type_name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FieldDescriptorProto::set_allocated_type_name(std::string* type_name) { + if (type_name != nullptr) { + _has_bits_[0] |= 0x00000004u; + } else { + _has_bits_[0] &= ~0x00000004u; + } + type_name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), type_name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.type_name) +} + +// optional string extendee = 2; +inline bool FieldDescriptorProto::_internal_has_extendee() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_extendee() const { + return _internal_has_extendee(); +} +inline void FieldDescriptorProto::clear_extendee() { + extendee_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000002u; +} +inline const std::string& FieldDescriptorProto::extendee() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.extendee) + return _internal_extendee(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FieldDescriptorProto::set_extendee(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000002u; + extendee_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.extendee) +} +inline std::string* FieldDescriptorProto::mutable_extendee() { + std::string* _s = _internal_mutable_extendee(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.extendee) + return _s; +} +inline const std::string& FieldDescriptorProto::_internal_extendee() const { + return extendee_.Get(); +} +inline void FieldDescriptorProto::_internal_set_extendee(const std::string& value) { + _has_bits_[0] |= 0x00000002u; + extendee_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::_internal_mutable_extendee() { + _has_bits_[0] |= 0x00000002u; + return extendee_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::release_extendee() { + // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.extendee) + if (!_internal_has_extendee()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000002u; + return extendee_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FieldDescriptorProto::set_allocated_extendee(std::string* extendee) { + if (extendee != nullptr) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + extendee_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), extendee, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.extendee) +} + +// optional string default_value = 7; +inline bool FieldDescriptorProto::_internal_has_default_value() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_default_value() const { + return _internal_has_default_value(); +} +inline void FieldDescriptorProto::clear_default_value() { + default_value_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000008u; +} +inline const std::string& FieldDescriptorProto::default_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.default_value) + return _internal_default_value(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FieldDescriptorProto::set_default_value(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000008u; + default_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.default_value) +} +inline std::string* FieldDescriptorProto::mutable_default_value() { + std::string* _s = _internal_mutable_default_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.default_value) + return _s; +} +inline const std::string& FieldDescriptorProto::_internal_default_value() const { + return default_value_.Get(); +} +inline void FieldDescriptorProto::_internal_set_default_value(const std::string& value) { + _has_bits_[0] |= 0x00000008u; + default_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::_internal_mutable_default_value() { + _has_bits_[0] |= 0x00000008u; + return default_value_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::release_default_value() { + // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.default_value) + if (!_internal_has_default_value()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000008u; + return default_value_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FieldDescriptorProto::set_allocated_default_value(std::string* default_value) { + if (default_value != nullptr) { + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + default_value_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), default_value, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.default_value) +} + +// optional int32 oneof_index = 9; +inline bool FieldDescriptorProto::_internal_has_oneof_index() const { + bool value = (_has_bits_[0] & 0x00000080u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_oneof_index() const { + return _internal_has_oneof_index(); +} +inline void FieldDescriptorProto::clear_oneof_index() { + oneof_index_ = 0; + _has_bits_[0] &= ~0x00000080u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FieldDescriptorProto::_internal_oneof_index() const { + return oneof_index_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 FieldDescriptorProto::oneof_index() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.oneof_index) + return _internal_oneof_index(); +} +inline void FieldDescriptorProto::_internal_set_oneof_index(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000080u; + oneof_index_ = value; +} +inline void FieldDescriptorProto::set_oneof_index(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_oneof_index(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.oneof_index) +} + +// optional string json_name = 10; +inline bool FieldDescriptorProto::_internal_has_json_name() const { + bool value = (_has_bits_[0] & 0x00000010u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_json_name() const { + return _internal_has_json_name(); +} +inline void FieldDescriptorProto::clear_json_name() { + json_name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000010u; +} +inline const std::string& FieldDescriptorProto::json_name() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.json_name) + return _internal_json_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FieldDescriptorProto::set_json_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000010u; + json_name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.json_name) +} +inline std::string* FieldDescriptorProto::mutable_json_name() { + std::string* _s = _internal_mutable_json_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.json_name) + return _s; +} +inline const std::string& FieldDescriptorProto::_internal_json_name() const { + return json_name_.Get(); +} +inline void FieldDescriptorProto::_internal_set_json_name(const std::string& value) { + _has_bits_[0] |= 0x00000010u; + json_name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::_internal_mutable_json_name() { + _has_bits_[0] |= 0x00000010u; + return json_name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FieldDescriptorProto::release_json_name() { + // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.json_name) + if (!_internal_has_json_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000010u; + return json_name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FieldDescriptorProto::set_allocated_json_name(std::string* json_name) { + if (json_name != nullptr) { + _has_bits_[0] |= 0x00000010u; + } else { + _has_bits_[0] &= ~0x00000010u; + } + json_name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), json_name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.json_name) +} + +// optional .google.protobuf.FieldOptions options = 8; +inline bool FieldDescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000020u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool FieldDescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void FieldDescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000020u; +} +inline const PROTOBUF_NAMESPACE_ID::FieldOptions& FieldDescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::FieldOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_FieldOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::FieldOptions& FieldDescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.options) + return _internal_options(); +} +inline void FieldDescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::FieldOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000020u; + } else { + _has_bits_[0] &= ~0x00000020u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.FieldDescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions* FieldDescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000020u; + PROTOBUF_NAMESPACE_ID::FieldOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions* FieldDescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.FieldDescriptorProto.options) + _has_bits_[0] &= ~0x00000020u; + PROTOBUF_NAMESPACE_ID::FieldOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions* FieldDescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000020u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions* FieldDescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::FieldOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldDescriptorProto.options) + return _msg; +} +inline void FieldDescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::FieldOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000020u; + } else { + _has_bits_[0] &= ~0x00000020u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FieldDescriptorProto.options) +} + +// optional bool proto3_optional = 17; +inline bool FieldDescriptorProto::_internal_has_proto3_optional() const { + bool value = (_has_bits_[0] & 0x00000100u) != 0; + return value; +} +inline bool FieldDescriptorProto::has_proto3_optional() const { + return _internal_has_proto3_optional(); +} +inline void FieldDescriptorProto::clear_proto3_optional() { + proto3_optional_ = false; + _has_bits_[0] &= ~0x00000100u; +} +inline bool FieldDescriptorProto::_internal_proto3_optional() const { + return proto3_optional_; +} +inline bool FieldDescriptorProto::proto3_optional() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldDescriptorProto.proto3_optional) + return _internal_proto3_optional(); +} +inline void FieldDescriptorProto::_internal_set_proto3_optional(bool value) { + _has_bits_[0] |= 0x00000100u; + proto3_optional_ = value; +} +inline void FieldDescriptorProto::set_proto3_optional(bool value) { + _internal_set_proto3_optional(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldDescriptorProto.proto3_optional) +} + +// ------------------------------------------------------------------- + +// OneofDescriptorProto + +// optional string name = 1; +inline bool OneofDescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool OneofDescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void OneofDescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& OneofDescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.OneofDescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void OneofDescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.OneofDescriptorProto.name) +} +inline std::string* OneofDescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.OneofDescriptorProto.name) + return _s; +} +inline const std::string& OneofDescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void OneofDescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* OneofDescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* OneofDescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.OneofDescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void OneofDescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.OneofDescriptorProto.name) +} + +// optional .google.protobuf.OneofOptions options = 2; +inline bool OneofDescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool OneofDescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void OneofDescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000002u; +} +inline const PROTOBUF_NAMESPACE_ID::OneofOptions& OneofDescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::OneofOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_OneofOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::OneofOptions& OneofDescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.OneofDescriptorProto.options) + return _internal_options(); +} +inline void OneofDescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::OneofOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.OneofDescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::OneofOptions* OneofDescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::OneofOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::OneofOptions* OneofDescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.OneofDescriptorProto.options) + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::OneofOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::OneofOptions* OneofDescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000002u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::OneofOptions* OneofDescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::OneofOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.OneofDescriptorProto.options) + return _msg; +} +inline void OneofDescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::OneofOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.OneofDescriptorProto.options) +} + +// ------------------------------------------------------------------- + +// EnumDescriptorProto_EnumReservedRange + +// optional int32 start = 1; +inline bool EnumDescriptorProto_EnumReservedRange::_internal_has_start() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool EnumDescriptorProto_EnumReservedRange::has_start() const { + return _internal_has_start(); +} +inline void EnumDescriptorProto_EnumReservedRange::clear_start() { + start_ = 0; + _has_bits_[0] &= ~0x00000001u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 EnumDescriptorProto_EnumReservedRange::_internal_start() const { + return start_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 EnumDescriptorProto_EnumReservedRange::start() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.EnumReservedRange.start) + return _internal_start(); +} +inline void EnumDescriptorProto_EnumReservedRange::_internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000001u; + start_ = value; +} +inline void EnumDescriptorProto_EnumReservedRange::set_start(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_start(value); + // @@protoc_insertion_point(field_set:google.protobuf.EnumDescriptorProto.EnumReservedRange.start) +} + +// optional int32 end = 2; +inline bool EnumDescriptorProto_EnumReservedRange::_internal_has_end() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool EnumDescriptorProto_EnumReservedRange::has_end() const { + return _internal_has_end(); +} +inline void EnumDescriptorProto_EnumReservedRange::clear_end() { + end_ = 0; + _has_bits_[0] &= ~0x00000002u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 EnumDescriptorProto_EnumReservedRange::_internal_end() const { + return end_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 EnumDescriptorProto_EnumReservedRange::end() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.EnumReservedRange.end) + return _internal_end(); +} +inline void EnumDescriptorProto_EnumReservedRange::_internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000002u; + end_ = value; +} +inline void EnumDescriptorProto_EnumReservedRange::set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_end(value); + // @@protoc_insertion_point(field_set:google.protobuf.EnumDescriptorProto.EnumReservedRange.end) +} + +// ------------------------------------------------------------------- + +// EnumDescriptorProto + +// optional string name = 1; +inline bool EnumDescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool EnumDescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void EnumDescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& EnumDescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void EnumDescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.EnumDescriptorProto.name) +} +inline std::string* EnumDescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.name) + return _s; +} +inline const std::string& EnumDescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void EnumDescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* EnumDescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* EnumDescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.EnumDescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void EnumDescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumDescriptorProto.name) +} + +// repeated .google.protobuf.EnumValueDescriptorProto value = 2; +inline int EnumDescriptorProto::_internal_value_size() const { + return value_.size(); +} +inline int EnumDescriptorProto::value_size() const { + return _internal_value_size(); +} +inline void EnumDescriptorProto::clear_value() { + value_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* EnumDescriptorProto::mutable_value(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.value) + return value_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto >* +EnumDescriptorProto::mutable_value() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumDescriptorProto.value) + return &value_; +} +inline const PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto& EnumDescriptorProto::_internal_value(int index) const { + return value_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto& EnumDescriptorProto::value(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.value) + return _internal_value(index); +} +inline PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* EnumDescriptorProto::_internal_add_value() { + return value_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* EnumDescriptorProto::add_value() { + PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto* _add = _internal_add_value(); + // @@protoc_insertion_point(field_add:google.protobuf.EnumDescriptorProto.value) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto >& +EnumDescriptorProto::value() const { + // @@protoc_insertion_point(field_list:google.protobuf.EnumDescriptorProto.value) + return value_; +} + +// optional .google.protobuf.EnumOptions options = 3; +inline bool EnumDescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool EnumDescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void EnumDescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000002u; +} +inline const PROTOBUF_NAMESPACE_ID::EnumOptions& EnumDescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::EnumOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_EnumOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::EnumOptions& EnumDescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.options) + return _internal_options(); +} +inline void EnumDescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::EnumOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.EnumDescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::EnumOptions* EnumDescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::EnumOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::EnumOptions* EnumDescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.EnumDescriptorProto.options) + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::EnumOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::EnumOptions* EnumDescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000002u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::EnumOptions* EnumDescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::EnumOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.options) + return _msg; +} +inline void EnumDescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::EnumOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumDescriptorProto.options) +} + +// repeated .google.protobuf.EnumDescriptorProto.EnumReservedRange reserved_range = 4; +inline int EnumDescriptorProto::_internal_reserved_range_size() const { + return reserved_range_.size(); +} +inline int EnumDescriptorProto::reserved_range_size() const { + return _internal_reserved_range_size(); +} +inline void EnumDescriptorProto::clear_reserved_range() { + reserved_range_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* EnumDescriptorProto::mutable_reserved_range(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.reserved_range) + return reserved_range_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange >* +EnumDescriptorProto::mutable_reserved_range() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumDescriptorProto.reserved_range) + return &reserved_range_; +} +inline const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange& EnumDescriptorProto::_internal_reserved_range(int index) const { + return reserved_range_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange& EnumDescriptorProto::reserved_range(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.reserved_range) + return _internal_reserved_range(index); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* EnumDescriptorProto::_internal_add_reserved_range() { + return reserved_range_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* EnumDescriptorProto::add_reserved_range() { + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange* _add = _internal_add_reserved_range(); + // @@protoc_insertion_point(field_add:google.protobuf.EnumDescriptorProto.reserved_range) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange >& +EnumDescriptorProto::reserved_range() const { + // @@protoc_insertion_point(field_list:google.protobuf.EnumDescriptorProto.reserved_range) + return reserved_range_; +} + +// repeated string reserved_name = 5; +inline int EnumDescriptorProto::_internal_reserved_name_size() const { + return reserved_name_.size(); +} +inline int EnumDescriptorProto::reserved_name_size() const { + return _internal_reserved_name_size(); +} +inline void EnumDescriptorProto::clear_reserved_name() { + reserved_name_.Clear(); +} +inline std::string* EnumDescriptorProto::add_reserved_name() { + std::string* _s = _internal_add_reserved_name(); + // @@protoc_insertion_point(field_add_mutable:google.protobuf.EnumDescriptorProto.reserved_name) + return _s; +} +inline const std::string& EnumDescriptorProto::_internal_reserved_name(int index) const { + return reserved_name_.Get(index); +} +inline const std::string& EnumDescriptorProto::reserved_name(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumDescriptorProto.reserved_name) + return _internal_reserved_name(index); +} +inline std::string* EnumDescriptorProto::mutable_reserved_name(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumDescriptorProto.reserved_name) + return reserved_name_.Mutable(index); +} +inline void EnumDescriptorProto::set_reserved_name(int index, const std::string& value) { + reserved_name_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline void EnumDescriptorProto::set_reserved_name(int index, std::string&& value) { + reserved_name_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline void EnumDescriptorProto::set_reserved_name(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + reserved_name_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline void EnumDescriptorProto::set_reserved_name(int index, const char* value, size_t size) { + reserved_name_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline std::string* EnumDescriptorProto::_internal_add_reserved_name() { + return reserved_name_.Add(); +} +inline void EnumDescriptorProto::add_reserved_name(const std::string& value) { + reserved_name_.Add()->assign(value); + // @@protoc_insertion_point(field_add:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline void EnumDescriptorProto::add_reserved_name(std::string&& value) { + reserved_name_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline void EnumDescriptorProto::add_reserved_name(const char* value) { + GOOGLE_DCHECK(value != nullptr); + reserved_name_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline void EnumDescriptorProto::add_reserved_name(const char* value, size_t size) { + reserved_name_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:google.protobuf.EnumDescriptorProto.reserved_name) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +EnumDescriptorProto::reserved_name() const { + // @@protoc_insertion_point(field_list:google.protobuf.EnumDescriptorProto.reserved_name) + return reserved_name_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +EnumDescriptorProto::mutable_reserved_name() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumDescriptorProto.reserved_name) + return &reserved_name_; +} + +// ------------------------------------------------------------------- + +// EnumValueDescriptorProto + +// optional string name = 1; +inline bool EnumValueDescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool EnumValueDescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void EnumValueDescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& EnumValueDescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumValueDescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void EnumValueDescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.EnumValueDescriptorProto.name) +} +inline std::string* EnumValueDescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumValueDescriptorProto.name) + return _s; +} +inline const std::string& EnumValueDescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void EnumValueDescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* EnumValueDescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* EnumValueDescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.EnumValueDescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void EnumValueDescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumValueDescriptorProto.name) +} + +// optional int32 number = 2; +inline bool EnumValueDescriptorProto::_internal_has_number() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool EnumValueDescriptorProto::has_number() const { + return _internal_has_number(); +} +inline void EnumValueDescriptorProto::clear_number() { + number_ = 0; + _has_bits_[0] &= ~0x00000004u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 EnumValueDescriptorProto::_internal_number() const { + return number_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 EnumValueDescriptorProto::number() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumValueDescriptorProto.number) + return _internal_number(); +} +inline void EnumValueDescriptorProto::_internal_set_number(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000004u; + number_ = value; +} +inline void EnumValueDescriptorProto::set_number(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_number(value); + // @@protoc_insertion_point(field_set:google.protobuf.EnumValueDescriptorProto.number) +} + +// optional .google.protobuf.EnumValueOptions options = 3; +inline bool EnumValueDescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool EnumValueDescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void EnumValueDescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000002u; +} +inline const PROTOBUF_NAMESPACE_ID::EnumValueOptions& EnumValueDescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::EnumValueOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_EnumValueOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::EnumValueOptions& EnumValueDescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumValueDescriptorProto.options) + return _internal_options(); +} +inline void EnumValueDescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::EnumValueOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.EnumValueDescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::EnumValueOptions* EnumValueDescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::EnumValueOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::EnumValueOptions* EnumValueDescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.EnumValueDescriptorProto.options) + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::EnumValueOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::EnumValueOptions* EnumValueDescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000002u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::EnumValueOptions* EnumValueDescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::EnumValueOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumValueDescriptorProto.options) + return _msg; +} +inline void EnumValueDescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::EnumValueOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.EnumValueDescriptorProto.options) +} + +// ------------------------------------------------------------------- + +// ServiceDescriptorProto + +// optional string name = 1; +inline bool ServiceDescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool ServiceDescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void ServiceDescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& ServiceDescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.ServiceDescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ServiceDescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.ServiceDescriptorProto.name) +} +inline std::string* ServiceDescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceDescriptorProto.name) + return _s; +} +inline const std::string& ServiceDescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void ServiceDescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* ServiceDescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* ServiceDescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.ServiceDescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void ServiceDescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.ServiceDescriptorProto.name) +} + +// repeated .google.protobuf.MethodDescriptorProto method = 2; +inline int ServiceDescriptorProto::_internal_method_size() const { + return method_.size(); +} +inline int ServiceDescriptorProto::method_size() const { + return _internal_method_size(); +} +inline void ServiceDescriptorProto::clear_method() { + method_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* ServiceDescriptorProto::mutable_method(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceDescriptorProto.method) + return method_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::MethodDescriptorProto >* +ServiceDescriptorProto::mutable_method() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.ServiceDescriptorProto.method) + return &method_; +} +inline const PROTOBUF_NAMESPACE_ID::MethodDescriptorProto& ServiceDescriptorProto::_internal_method(int index) const { + return method_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::MethodDescriptorProto& ServiceDescriptorProto::method(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.ServiceDescriptorProto.method) + return _internal_method(index); +} +inline PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* ServiceDescriptorProto::_internal_add_method() { + return method_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* ServiceDescriptorProto::add_method() { + PROTOBUF_NAMESPACE_ID::MethodDescriptorProto* _add = _internal_add_method(); + // @@protoc_insertion_point(field_add:google.protobuf.ServiceDescriptorProto.method) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::MethodDescriptorProto >& +ServiceDescriptorProto::method() const { + // @@protoc_insertion_point(field_list:google.protobuf.ServiceDescriptorProto.method) + return method_; +} + +// optional .google.protobuf.ServiceOptions options = 3; +inline bool ServiceDescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool ServiceDescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void ServiceDescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000002u; +} +inline const PROTOBUF_NAMESPACE_ID::ServiceOptions& ServiceDescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::ServiceOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_ServiceOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::ServiceOptions& ServiceDescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.ServiceDescriptorProto.options) + return _internal_options(); +} +inline void ServiceDescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::ServiceOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.ServiceDescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::ServiceOptions* ServiceDescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::ServiceOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::ServiceOptions* ServiceDescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.ServiceDescriptorProto.options) + _has_bits_[0] &= ~0x00000002u; + PROTOBUF_NAMESPACE_ID::ServiceOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::ServiceOptions* ServiceDescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000002u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::ServiceOptions* ServiceDescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::ServiceOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceDescriptorProto.options) + return _msg; +} +inline void ServiceDescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::ServiceOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.ServiceDescriptorProto.options) +} + +// ------------------------------------------------------------------- + +// MethodDescriptorProto + +// optional string name = 1; +inline bool MethodDescriptorProto::_internal_has_name() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool MethodDescriptorProto::has_name() const { + return _internal_has_name(); +} +inline void MethodDescriptorProto::clear_name() { + name_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& MethodDescriptorProto::name() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MethodDescriptorProto::set_name(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.name) +} +inline std::string* MethodDescriptorProto::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.name) + return _s; +} +inline const std::string& MethodDescriptorProto::_internal_name() const { + return name_.Get(); +} +inline void MethodDescriptorProto::_internal_set_name(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* MethodDescriptorProto::_internal_mutable_name() { + _has_bits_[0] |= 0x00000001u; + return name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* MethodDescriptorProto::release_name() { + // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.name) + if (!_internal_has_name()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void MethodDescriptorProto::set_allocated_name(std::string* name) { + if (name != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.name) +} + +// optional string input_type = 2; +inline bool MethodDescriptorProto::_internal_has_input_type() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool MethodDescriptorProto::has_input_type() const { + return _internal_has_input_type(); +} +inline void MethodDescriptorProto::clear_input_type() { + input_type_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000002u; +} +inline const std::string& MethodDescriptorProto::input_type() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.input_type) + return _internal_input_type(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MethodDescriptorProto::set_input_type(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000002u; + input_type_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.input_type) +} +inline std::string* MethodDescriptorProto::mutable_input_type() { + std::string* _s = _internal_mutable_input_type(); + // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.input_type) + return _s; +} +inline const std::string& MethodDescriptorProto::_internal_input_type() const { + return input_type_.Get(); +} +inline void MethodDescriptorProto::_internal_set_input_type(const std::string& value) { + _has_bits_[0] |= 0x00000002u; + input_type_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* MethodDescriptorProto::_internal_mutable_input_type() { + _has_bits_[0] |= 0x00000002u; + return input_type_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* MethodDescriptorProto::release_input_type() { + // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.input_type) + if (!_internal_has_input_type()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000002u; + return input_type_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void MethodDescriptorProto::set_allocated_input_type(std::string* input_type) { + if (input_type != nullptr) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + input_type_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), input_type, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.input_type) +} + +// optional string output_type = 3; +inline bool MethodDescriptorProto::_internal_has_output_type() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool MethodDescriptorProto::has_output_type() const { + return _internal_has_output_type(); +} +inline void MethodDescriptorProto::clear_output_type() { + output_type_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000004u; +} +inline const std::string& MethodDescriptorProto::output_type() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.output_type) + return _internal_output_type(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MethodDescriptorProto::set_output_type(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000004u; + output_type_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.output_type) +} +inline std::string* MethodDescriptorProto::mutable_output_type() { + std::string* _s = _internal_mutable_output_type(); + // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.output_type) + return _s; +} +inline const std::string& MethodDescriptorProto::_internal_output_type() const { + return output_type_.Get(); +} +inline void MethodDescriptorProto::_internal_set_output_type(const std::string& value) { + _has_bits_[0] |= 0x00000004u; + output_type_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* MethodDescriptorProto::_internal_mutable_output_type() { + _has_bits_[0] |= 0x00000004u; + return output_type_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* MethodDescriptorProto::release_output_type() { + // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.output_type) + if (!_internal_has_output_type()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000004u; + return output_type_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void MethodDescriptorProto::set_allocated_output_type(std::string* output_type) { + if (output_type != nullptr) { + _has_bits_[0] |= 0x00000004u; + } else { + _has_bits_[0] &= ~0x00000004u; + } + output_type_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), output_type, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.output_type) +} + +// optional .google.protobuf.MethodOptions options = 4; +inline bool MethodDescriptorProto::_internal_has_options() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + PROTOBUF_ASSUME(!value || options_ != nullptr); + return value; +} +inline bool MethodDescriptorProto::has_options() const { + return _internal_has_options(); +} +inline void MethodDescriptorProto::clear_options() { + if (options_ != nullptr) options_->Clear(); + _has_bits_[0] &= ~0x00000008u; +} +inline const PROTOBUF_NAMESPACE_ID::MethodOptions& MethodDescriptorProto::_internal_options() const { + const PROTOBUF_NAMESPACE_ID::MethodOptions* p = options_; + return p != nullptr ? *p : reinterpret_cast( + PROTOBUF_NAMESPACE_ID::_MethodOptions_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::MethodOptions& MethodDescriptorProto::options() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.options) + return _internal_options(); +} +inline void MethodDescriptorProto::unsafe_arena_set_allocated_options( + PROTOBUF_NAMESPACE_ID::MethodOptions* options) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(options_); + } + options_ = options; + if (options) { + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.MethodDescriptorProto.options) +} +inline PROTOBUF_NAMESPACE_ID::MethodOptions* MethodDescriptorProto::release_options() { + _has_bits_[0] &= ~0x00000008u; + PROTOBUF_NAMESPACE_ID::MethodOptions* temp = options_; + options_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline PROTOBUF_NAMESPACE_ID::MethodOptions* MethodDescriptorProto::unsafe_arena_release_options() { + // @@protoc_insertion_point(field_release:google.protobuf.MethodDescriptorProto.options) + _has_bits_[0] &= ~0x00000008u; + PROTOBUF_NAMESPACE_ID::MethodOptions* temp = options_; + options_ = nullptr; + return temp; +} +inline PROTOBUF_NAMESPACE_ID::MethodOptions* MethodDescriptorProto::_internal_mutable_options() { + _has_bits_[0] |= 0x00000008u; + if (options_ == nullptr) { + auto* p = CreateMaybeMessage(GetArenaForAllocation()); + options_ = p; + } + return options_; +} +inline PROTOBUF_NAMESPACE_ID::MethodOptions* MethodDescriptorProto::mutable_options() { + PROTOBUF_NAMESPACE_ID::MethodOptions* _msg = _internal_mutable_options(); + // @@protoc_insertion_point(field_mutable:google.protobuf.MethodDescriptorProto.options) + return _msg; +} +inline void MethodDescriptorProto::set_allocated_options(PROTOBUF_NAMESPACE_ID::MethodOptions* options) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete options_; + } + if (options) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper::GetOwningArena(options); + if (message_arena != submessage_arena) { + options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, options, submessage_arena); + } + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + options_ = options; + // @@protoc_insertion_point(field_set_allocated:google.protobuf.MethodDescriptorProto.options) +} + +// optional bool client_streaming = 5 [default = false]; +inline bool MethodDescriptorProto::_internal_has_client_streaming() const { + bool value = (_has_bits_[0] & 0x00000010u) != 0; + return value; +} +inline bool MethodDescriptorProto::has_client_streaming() const { + return _internal_has_client_streaming(); +} +inline void MethodDescriptorProto::clear_client_streaming() { + client_streaming_ = false; + _has_bits_[0] &= ~0x00000010u; +} +inline bool MethodDescriptorProto::_internal_client_streaming() const { + return client_streaming_; +} +inline bool MethodDescriptorProto::client_streaming() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.client_streaming) + return _internal_client_streaming(); +} +inline void MethodDescriptorProto::_internal_set_client_streaming(bool value) { + _has_bits_[0] |= 0x00000010u; + client_streaming_ = value; +} +inline void MethodDescriptorProto::set_client_streaming(bool value) { + _internal_set_client_streaming(value); + // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.client_streaming) +} + +// optional bool server_streaming = 6 [default = false]; +inline bool MethodDescriptorProto::_internal_has_server_streaming() const { + bool value = (_has_bits_[0] & 0x00000020u) != 0; + return value; +} +inline bool MethodDescriptorProto::has_server_streaming() const { + return _internal_has_server_streaming(); +} +inline void MethodDescriptorProto::clear_server_streaming() { + server_streaming_ = false; + _has_bits_[0] &= ~0x00000020u; +} +inline bool MethodDescriptorProto::_internal_server_streaming() const { + return server_streaming_; +} +inline bool MethodDescriptorProto::server_streaming() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodDescriptorProto.server_streaming) + return _internal_server_streaming(); +} +inline void MethodDescriptorProto::_internal_set_server_streaming(bool value) { + _has_bits_[0] |= 0x00000020u; + server_streaming_ = value; +} +inline void MethodDescriptorProto::set_server_streaming(bool value) { + _internal_set_server_streaming(value); + // @@protoc_insertion_point(field_set:google.protobuf.MethodDescriptorProto.server_streaming) +} + +// ------------------------------------------------------------------- + +// FileOptions + +// optional string java_package = 1; +inline bool FileOptions::_internal_has_java_package() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool FileOptions::has_java_package() const { + return _internal_has_java_package(); +} +inline void FileOptions::clear_java_package() { + java_package_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& FileOptions::java_package() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_package) + return _internal_java_package(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_java_package(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + java_package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_package) +} +inline std::string* FileOptions::mutable_java_package() { + std::string* _s = _internal_mutable_java_package(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.java_package) + return _s; +} +inline const std::string& FileOptions::_internal_java_package() const { + return java_package_.Get(); +} +inline void FileOptions::_internal_set_java_package(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + java_package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_java_package() { + _has_bits_[0] |= 0x00000001u; + return java_package_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_java_package() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.java_package) + if (!_internal_has_java_package()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return java_package_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_java_package(std::string* java_package) { + if (java_package != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + java_package_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), java_package, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.java_package) +} + +// optional string java_outer_classname = 8; +inline bool FileOptions::_internal_has_java_outer_classname() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool FileOptions::has_java_outer_classname() const { + return _internal_has_java_outer_classname(); +} +inline void FileOptions::clear_java_outer_classname() { + java_outer_classname_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000002u; +} +inline const std::string& FileOptions::java_outer_classname() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_outer_classname) + return _internal_java_outer_classname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_java_outer_classname(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000002u; + java_outer_classname_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_outer_classname) +} +inline std::string* FileOptions::mutable_java_outer_classname() { + std::string* _s = _internal_mutable_java_outer_classname(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.java_outer_classname) + return _s; +} +inline const std::string& FileOptions::_internal_java_outer_classname() const { + return java_outer_classname_.Get(); +} +inline void FileOptions::_internal_set_java_outer_classname(const std::string& value) { + _has_bits_[0] |= 0x00000002u; + java_outer_classname_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_java_outer_classname() { + _has_bits_[0] |= 0x00000002u; + return java_outer_classname_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_java_outer_classname() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.java_outer_classname) + if (!_internal_has_java_outer_classname()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000002u; + return java_outer_classname_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_java_outer_classname(std::string* java_outer_classname) { + if (java_outer_classname != nullptr) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + java_outer_classname_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), java_outer_classname, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.java_outer_classname) +} + +// optional bool java_multiple_files = 10 [default = false]; +inline bool FileOptions::_internal_has_java_multiple_files() const { + bool value = (_has_bits_[0] & 0x00000400u) != 0; + return value; +} +inline bool FileOptions::has_java_multiple_files() const { + return _internal_has_java_multiple_files(); +} +inline void FileOptions::clear_java_multiple_files() { + java_multiple_files_ = false; + _has_bits_[0] &= ~0x00000400u; +} +inline bool FileOptions::_internal_java_multiple_files() const { + return java_multiple_files_; +} +inline bool FileOptions::java_multiple_files() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_multiple_files) + return _internal_java_multiple_files(); +} +inline void FileOptions::_internal_set_java_multiple_files(bool value) { + _has_bits_[0] |= 0x00000400u; + java_multiple_files_ = value; +} +inline void FileOptions::set_java_multiple_files(bool value) { + _internal_set_java_multiple_files(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_multiple_files) +} + +// optional bool java_generate_equals_and_hash = 20 [deprecated = true]; +inline bool FileOptions::_internal_has_java_generate_equals_and_hash() const { + bool value = (_has_bits_[0] & 0x00000800u) != 0; + return value; +} +inline bool FileOptions::has_java_generate_equals_and_hash() const { + return _internal_has_java_generate_equals_and_hash(); +} +inline void FileOptions::clear_java_generate_equals_and_hash() { + java_generate_equals_and_hash_ = false; + _has_bits_[0] &= ~0x00000800u; +} +inline bool FileOptions::_internal_java_generate_equals_and_hash() const { + return java_generate_equals_and_hash_; +} +inline bool FileOptions::java_generate_equals_and_hash() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_generate_equals_and_hash) + return _internal_java_generate_equals_and_hash(); +} +inline void FileOptions::_internal_set_java_generate_equals_and_hash(bool value) { + _has_bits_[0] |= 0x00000800u; + java_generate_equals_and_hash_ = value; +} +inline void FileOptions::set_java_generate_equals_and_hash(bool value) { + _internal_set_java_generate_equals_and_hash(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_generate_equals_and_hash) +} + +// optional bool java_string_check_utf8 = 27 [default = false]; +inline bool FileOptions::_internal_has_java_string_check_utf8() const { + bool value = (_has_bits_[0] & 0x00001000u) != 0; + return value; +} +inline bool FileOptions::has_java_string_check_utf8() const { + return _internal_has_java_string_check_utf8(); +} +inline void FileOptions::clear_java_string_check_utf8() { + java_string_check_utf8_ = false; + _has_bits_[0] &= ~0x00001000u; +} +inline bool FileOptions::_internal_java_string_check_utf8() const { + return java_string_check_utf8_; +} +inline bool FileOptions::java_string_check_utf8() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_string_check_utf8) + return _internal_java_string_check_utf8(); +} +inline void FileOptions::_internal_set_java_string_check_utf8(bool value) { + _has_bits_[0] |= 0x00001000u; + java_string_check_utf8_ = value; +} +inline void FileOptions::set_java_string_check_utf8(bool value) { + _internal_set_java_string_check_utf8(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_string_check_utf8) +} + +// optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = SPEED]; +inline bool FileOptions::_internal_has_optimize_for() const { + bool value = (_has_bits_[0] & 0x00040000u) != 0; + return value; +} +inline bool FileOptions::has_optimize_for() const { + return _internal_has_optimize_for(); +} +inline void FileOptions::clear_optimize_for() { + optimize_for_ = 1; + _has_bits_[0] &= ~0x00040000u; +} +inline PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode FileOptions::_internal_optimize_for() const { + return static_cast< PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode >(optimize_for_); +} +inline PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode FileOptions::optimize_for() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.optimize_for) + return _internal_optimize_for(); +} +inline void FileOptions::_internal_set_optimize_for(PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode value) { + assert(PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode_IsValid(value)); + _has_bits_[0] |= 0x00040000u; + optimize_for_ = value; +} +inline void FileOptions::set_optimize_for(PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode value) { + _internal_set_optimize_for(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.optimize_for) +} + +// optional string go_package = 11; +inline bool FileOptions::_internal_has_go_package() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool FileOptions::has_go_package() const { + return _internal_has_go_package(); +} +inline void FileOptions::clear_go_package() { + go_package_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000004u; +} +inline const std::string& FileOptions::go_package() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.go_package) + return _internal_go_package(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_go_package(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000004u; + go_package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.go_package) +} +inline std::string* FileOptions::mutable_go_package() { + std::string* _s = _internal_mutable_go_package(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.go_package) + return _s; +} +inline const std::string& FileOptions::_internal_go_package() const { + return go_package_.Get(); +} +inline void FileOptions::_internal_set_go_package(const std::string& value) { + _has_bits_[0] |= 0x00000004u; + go_package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_go_package() { + _has_bits_[0] |= 0x00000004u; + return go_package_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_go_package() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.go_package) + if (!_internal_has_go_package()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000004u; + return go_package_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_go_package(std::string* go_package) { + if (go_package != nullptr) { + _has_bits_[0] |= 0x00000004u; + } else { + _has_bits_[0] &= ~0x00000004u; + } + go_package_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), go_package, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.go_package) +} + +// optional bool cc_generic_services = 16 [default = false]; +inline bool FileOptions::_internal_has_cc_generic_services() const { + bool value = (_has_bits_[0] & 0x00002000u) != 0; + return value; +} +inline bool FileOptions::has_cc_generic_services() const { + return _internal_has_cc_generic_services(); +} +inline void FileOptions::clear_cc_generic_services() { + cc_generic_services_ = false; + _has_bits_[0] &= ~0x00002000u; +} +inline bool FileOptions::_internal_cc_generic_services() const { + return cc_generic_services_; +} +inline bool FileOptions::cc_generic_services() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.cc_generic_services) + return _internal_cc_generic_services(); +} +inline void FileOptions::_internal_set_cc_generic_services(bool value) { + _has_bits_[0] |= 0x00002000u; + cc_generic_services_ = value; +} +inline void FileOptions::set_cc_generic_services(bool value) { + _internal_set_cc_generic_services(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.cc_generic_services) +} + +// optional bool java_generic_services = 17 [default = false]; +inline bool FileOptions::_internal_has_java_generic_services() const { + bool value = (_has_bits_[0] & 0x00004000u) != 0; + return value; +} +inline bool FileOptions::has_java_generic_services() const { + return _internal_has_java_generic_services(); +} +inline void FileOptions::clear_java_generic_services() { + java_generic_services_ = false; + _has_bits_[0] &= ~0x00004000u; +} +inline bool FileOptions::_internal_java_generic_services() const { + return java_generic_services_; +} +inline bool FileOptions::java_generic_services() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.java_generic_services) + return _internal_java_generic_services(); +} +inline void FileOptions::_internal_set_java_generic_services(bool value) { + _has_bits_[0] |= 0x00004000u; + java_generic_services_ = value; +} +inline void FileOptions::set_java_generic_services(bool value) { + _internal_set_java_generic_services(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.java_generic_services) +} + +// optional bool py_generic_services = 18 [default = false]; +inline bool FileOptions::_internal_has_py_generic_services() const { + bool value = (_has_bits_[0] & 0x00008000u) != 0; + return value; +} +inline bool FileOptions::has_py_generic_services() const { + return _internal_has_py_generic_services(); +} +inline void FileOptions::clear_py_generic_services() { + py_generic_services_ = false; + _has_bits_[0] &= ~0x00008000u; +} +inline bool FileOptions::_internal_py_generic_services() const { + return py_generic_services_; +} +inline bool FileOptions::py_generic_services() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.py_generic_services) + return _internal_py_generic_services(); +} +inline void FileOptions::_internal_set_py_generic_services(bool value) { + _has_bits_[0] |= 0x00008000u; + py_generic_services_ = value; +} +inline void FileOptions::set_py_generic_services(bool value) { + _internal_set_py_generic_services(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.py_generic_services) +} + +// optional bool php_generic_services = 42 [default = false]; +inline bool FileOptions::_internal_has_php_generic_services() const { + bool value = (_has_bits_[0] & 0x00010000u) != 0; + return value; +} +inline bool FileOptions::has_php_generic_services() const { + return _internal_has_php_generic_services(); +} +inline void FileOptions::clear_php_generic_services() { + php_generic_services_ = false; + _has_bits_[0] &= ~0x00010000u; +} +inline bool FileOptions::_internal_php_generic_services() const { + return php_generic_services_; +} +inline bool FileOptions::php_generic_services() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.php_generic_services) + return _internal_php_generic_services(); +} +inline void FileOptions::_internal_set_php_generic_services(bool value) { + _has_bits_[0] |= 0x00010000u; + php_generic_services_ = value; +} +inline void FileOptions::set_php_generic_services(bool value) { + _internal_set_php_generic_services(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.php_generic_services) +} + +// optional bool deprecated = 23 [default = false]; +inline bool FileOptions::_internal_has_deprecated() const { + bool value = (_has_bits_[0] & 0x00020000u) != 0; + return value; +} +inline bool FileOptions::has_deprecated() const { + return _internal_has_deprecated(); +} +inline void FileOptions::clear_deprecated() { + deprecated_ = false; + _has_bits_[0] &= ~0x00020000u; +} +inline bool FileOptions::_internal_deprecated() const { + return deprecated_; +} +inline bool FileOptions::deprecated() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.deprecated) + return _internal_deprecated(); +} +inline void FileOptions::_internal_set_deprecated(bool value) { + _has_bits_[0] |= 0x00020000u; + deprecated_ = value; +} +inline void FileOptions::set_deprecated(bool value) { + _internal_set_deprecated(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.deprecated) +} + +// optional bool cc_enable_arenas = 31 [default = true]; +inline bool FileOptions::_internal_has_cc_enable_arenas() const { + bool value = (_has_bits_[0] & 0x00080000u) != 0; + return value; +} +inline bool FileOptions::has_cc_enable_arenas() const { + return _internal_has_cc_enable_arenas(); +} +inline void FileOptions::clear_cc_enable_arenas() { + cc_enable_arenas_ = true; + _has_bits_[0] &= ~0x00080000u; +} +inline bool FileOptions::_internal_cc_enable_arenas() const { + return cc_enable_arenas_; +} +inline bool FileOptions::cc_enable_arenas() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.cc_enable_arenas) + return _internal_cc_enable_arenas(); +} +inline void FileOptions::_internal_set_cc_enable_arenas(bool value) { + _has_bits_[0] |= 0x00080000u; + cc_enable_arenas_ = value; +} +inline void FileOptions::set_cc_enable_arenas(bool value) { + _internal_set_cc_enable_arenas(value); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.cc_enable_arenas) +} + +// optional string objc_class_prefix = 36; +inline bool FileOptions::_internal_has_objc_class_prefix() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + return value; +} +inline bool FileOptions::has_objc_class_prefix() const { + return _internal_has_objc_class_prefix(); +} +inline void FileOptions::clear_objc_class_prefix() { + objc_class_prefix_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000008u; +} +inline const std::string& FileOptions::objc_class_prefix() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.objc_class_prefix) + return _internal_objc_class_prefix(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_objc_class_prefix(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000008u; + objc_class_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.objc_class_prefix) +} +inline std::string* FileOptions::mutable_objc_class_prefix() { + std::string* _s = _internal_mutable_objc_class_prefix(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.objc_class_prefix) + return _s; +} +inline const std::string& FileOptions::_internal_objc_class_prefix() const { + return objc_class_prefix_.Get(); +} +inline void FileOptions::_internal_set_objc_class_prefix(const std::string& value) { + _has_bits_[0] |= 0x00000008u; + objc_class_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_objc_class_prefix() { + _has_bits_[0] |= 0x00000008u; + return objc_class_prefix_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_objc_class_prefix() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.objc_class_prefix) + if (!_internal_has_objc_class_prefix()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000008u; + return objc_class_prefix_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_objc_class_prefix(std::string* objc_class_prefix) { + if (objc_class_prefix != nullptr) { + _has_bits_[0] |= 0x00000008u; + } else { + _has_bits_[0] &= ~0x00000008u; + } + objc_class_prefix_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), objc_class_prefix, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.objc_class_prefix) +} + +// optional string csharp_namespace = 37; +inline bool FileOptions::_internal_has_csharp_namespace() const { + bool value = (_has_bits_[0] & 0x00000010u) != 0; + return value; +} +inline bool FileOptions::has_csharp_namespace() const { + return _internal_has_csharp_namespace(); +} +inline void FileOptions::clear_csharp_namespace() { + csharp_namespace_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000010u; +} +inline const std::string& FileOptions::csharp_namespace() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.csharp_namespace) + return _internal_csharp_namespace(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_csharp_namespace(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000010u; + csharp_namespace_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.csharp_namespace) +} +inline std::string* FileOptions::mutable_csharp_namespace() { + std::string* _s = _internal_mutable_csharp_namespace(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.csharp_namespace) + return _s; +} +inline const std::string& FileOptions::_internal_csharp_namespace() const { + return csharp_namespace_.Get(); +} +inline void FileOptions::_internal_set_csharp_namespace(const std::string& value) { + _has_bits_[0] |= 0x00000010u; + csharp_namespace_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_csharp_namespace() { + _has_bits_[0] |= 0x00000010u; + return csharp_namespace_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_csharp_namespace() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.csharp_namespace) + if (!_internal_has_csharp_namespace()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000010u; + return csharp_namespace_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_csharp_namespace(std::string* csharp_namespace) { + if (csharp_namespace != nullptr) { + _has_bits_[0] |= 0x00000010u; + } else { + _has_bits_[0] &= ~0x00000010u; + } + csharp_namespace_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), csharp_namespace, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.csharp_namespace) +} + +// optional string swift_prefix = 39; +inline bool FileOptions::_internal_has_swift_prefix() const { + bool value = (_has_bits_[0] & 0x00000020u) != 0; + return value; +} +inline bool FileOptions::has_swift_prefix() const { + return _internal_has_swift_prefix(); +} +inline void FileOptions::clear_swift_prefix() { + swift_prefix_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000020u; +} +inline const std::string& FileOptions::swift_prefix() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.swift_prefix) + return _internal_swift_prefix(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_swift_prefix(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000020u; + swift_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.swift_prefix) +} +inline std::string* FileOptions::mutable_swift_prefix() { + std::string* _s = _internal_mutable_swift_prefix(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.swift_prefix) + return _s; +} +inline const std::string& FileOptions::_internal_swift_prefix() const { + return swift_prefix_.Get(); +} +inline void FileOptions::_internal_set_swift_prefix(const std::string& value) { + _has_bits_[0] |= 0x00000020u; + swift_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_swift_prefix() { + _has_bits_[0] |= 0x00000020u; + return swift_prefix_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_swift_prefix() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.swift_prefix) + if (!_internal_has_swift_prefix()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000020u; + return swift_prefix_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_swift_prefix(std::string* swift_prefix) { + if (swift_prefix != nullptr) { + _has_bits_[0] |= 0x00000020u; + } else { + _has_bits_[0] &= ~0x00000020u; + } + swift_prefix_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), swift_prefix, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.swift_prefix) +} + +// optional string php_class_prefix = 40; +inline bool FileOptions::_internal_has_php_class_prefix() const { + bool value = (_has_bits_[0] & 0x00000040u) != 0; + return value; +} +inline bool FileOptions::has_php_class_prefix() const { + return _internal_has_php_class_prefix(); +} +inline void FileOptions::clear_php_class_prefix() { + php_class_prefix_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000040u; +} +inline const std::string& FileOptions::php_class_prefix() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.php_class_prefix) + return _internal_php_class_prefix(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_php_class_prefix(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000040u; + php_class_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.php_class_prefix) +} +inline std::string* FileOptions::mutable_php_class_prefix() { + std::string* _s = _internal_mutable_php_class_prefix(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.php_class_prefix) + return _s; +} +inline const std::string& FileOptions::_internal_php_class_prefix() const { + return php_class_prefix_.Get(); +} +inline void FileOptions::_internal_set_php_class_prefix(const std::string& value) { + _has_bits_[0] |= 0x00000040u; + php_class_prefix_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_php_class_prefix() { + _has_bits_[0] |= 0x00000040u; + return php_class_prefix_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_php_class_prefix() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.php_class_prefix) + if (!_internal_has_php_class_prefix()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000040u; + return php_class_prefix_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_php_class_prefix(std::string* php_class_prefix) { + if (php_class_prefix != nullptr) { + _has_bits_[0] |= 0x00000040u; + } else { + _has_bits_[0] &= ~0x00000040u; + } + php_class_prefix_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), php_class_prefix, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.php_class_prefix) +} + +// optional string php_namespace = 41; +inline bool FileOptions::_internal_has_php_namespace() const { + bool value = (_has_bits_[0] & 0x00000080u) != 0; + return value; +} +inline bool FileOptions::has_php_namespace() const { + return _internal_has_php_namespace(); +} +inline void FileOptions::clear_php_namespace() { + php_namespace_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000080u; +} +inline const std::string& FileOptions::php_namespace() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.php_namespace) + return _internal_php_namespace(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_php_namespace(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000080u; + php_namespace_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.php_namespace) +} +inline std::string* FileOptions::mutable_php_namespace() { + std::string* _s = _internal_mutable_php_namespace(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.php_namespace) + return _s; +} +inline const std::string& FileOptions::_internal_php_namespace() const { + return php_namespace_.Get(); +} +inline void FileOptions::_internal_set_php_namespace(const std::string& value) { + _has_bits_[0] |= 0x00000080u; + php_namespace_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_php_namespace() { + _has_bits_[0] |= 0x00000080u; + return php_namespace_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_php_namespace() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.php_namespace) + if (!_internal_has_php_namespace()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000080u; + return php_namespace_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_php_namespace(std::string* php_namespace) { + if (php_namespace != nullptr) { + _has_bits_[0] |= 0x00000080u; + } else { + _has_bits_[0] &= ~0x00000080u; + } + php_namespace_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), php_namespace, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.php_namespace) +} + +// optional string php_metadata_namespace = 44; +inline bool FileOptions::_internal_has_php_metadata_namespace() const { + bool value = (_has_bits_[0] & 0x00000100u) != 0; + return value; +} +inline bool FileOptions::has_php_metadata_namespace() const { + return _internal_has_php_metadata_namespace(); +} +inline void FileOptions::clear_php_metadata_namespace() { + php_metadata_namespace_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000100u; +} +inline const std::string& FileOptions::php_metadata_namespace() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.php_metadata_namespace) + return _internal_php_metadata_namespace(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_php_metadata_namespace(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000100u; + php_metadata_namespace_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.php_metadata_namespace) +} +inline std::string* FileOptions::mutable_php_metadata_namespace() { + std::string* _s = _internal_mutable_php_metadata_namespace(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.php_metadata_namespace) + return _s; +} +inline const std::string& FileOptions::_internal_php_metadata_namespace() const { + return php_metadata_namespace_.Get(); +} +inline void FileOptions::_internal_set_php_metadata_namespace(const std::string& value) { + _has_bits_[0] |= 0x00000100u; + php_metadata_namespace_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_php_metadata_namespace() { + _has_bits_[0] |= 0x00000100u; + return php_metadata_namespace_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_php_metadata_namespace() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.php_metadata_namespace) + if (!_internal_has_php_metadata_namespace()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000100u; + return php_metadata_namespace_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_php_metadata_namespace(std::string* php_metadata_namespace) { + if (php_metadata_namespace != nullptr) { + _has_bits_[0] |= 0x00000100u; + } else { + _has_bits_[0] &= ~0x00000100u; + } + php_metadata_namespace_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), php_metadata_namespace, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.php_metadata_namespace) +} + +// optional string ruby_package = 45; +inline bool FileOptions::_internal_has_ruby_package() const { + bool value = (_has_bits_[0] & 0x00000200u) != 0; + return value; +} +inline bool FileOptions::has_ruby_package() const { + return _internal_has_ruby_package(); +} +inline void FileOptions::clear_ruby_package() { + ruby_package_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000200u; +} +inline const std::string& FileOptions::ruby_package() const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.ruby_package) + return _internal_ruby_package(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void FileOptions::set_ruby_package(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000200u; + ruby_package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.FileOptions.ruby_package) +} +inline std::string* FileOptions::mutable_ruby_package() { + std::string* _s = _internal_mutable_ruby_package(); + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.ruby_package) + return _s; +} +inline const std::string& FileOptions::_internal_ruby_package() const { + return ruby_package_.Get(); +} +inline void FileOptions::_internal_set_ruby_package(const std::string& value) { + _has_bits_[0] |= 0x00000200u; + ruby_package_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* FileOptions::_internal_mutable_ruby_package() { + _has_bits_[0] |= 0x00000200u; + return ruby_package_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* FileOptions::release_ruby_package() { + // @@protoc_insertion_point(field_release:google.protobuf.FileOptions.ruby_package) + if (!_internal_has_ruby_package()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000200u; + return ruby_package_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void FileOptions::set_allocated_ruby_package(std::string* ruby_package) { + if (ruby_package != nullptr) { + _has_bits_[0] |= 0x00000200u; + } else { + _has_bits_[0] &= ~0x00000200u; + } + ruby_package_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ruby_package, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.FileOptions.ruby_package) +} + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int FileOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int FileOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void FileOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* FileOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FileOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +FileOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FileOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& FileOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& FileOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FileOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* FileOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* FileOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.FileOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +FileOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.FileOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// MessageOptions + +// optional bool message_set_wire_format = 1 [default = false]; +inline bool MessageOptions::_internal_has_message_set_wire_format() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool MessageOptions::has_message_set_wire_format() const { + return _internal_has_message_set_wire_format(); +} +inline void MessageOptions::clear_message_set_wire_format() { + message_set_wire_format_ = false; + _has_bits_[0] &= ~0x00000001u; +} +inline bool MessageOptions::_internal_message_set_wire_format() const { + return message_set_wire_format_; +} +inline bool MessageOptions::message_set_wire_format() const { + // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.message_set_wire_format) + return _internal_message_set_wire_format(); +} +inline void MessageOptions::_internal_set_message_set_wire_format(bool value) { + _has_bits_[0] |= 0x00000001u; + message_set_wire_format_ = value; +} +inline void MessageOptions::set_message_set_wire_format(bool value) { + _internal_set_message_set_wire_format(value); + // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.message_set_wire_format) +} + +// optional bool no_standard_descriptor_accessor = 2 [default = false]; +inline bool MessageOptions::_internal_has_no_standard_descriptor_accessor() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool MessageOptions::has_no_standard_descriptor_accessor() const { + return _internal_has_no_standard_descriptor_accessor(); +} +inline void MessageOptions::clear_no_standard_descriptor_accessor() { + no_standard_descriptor_accessor_ = false; + _has_bits_[0] &= ~0x00000002u; +} +inline bool MessageOptions::_internal_no_standard_descriptor_accessor() const { + return no_standard_descriptor_accessor_; +} +inline bool MessageOptions::no_standard_descriptor_accessor() const { + // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.no_standard_descriptor_accessor) + return _internal_no_standard_descriptor_accessor(); +} +inline void MessageOptions::_internal_set_no_standard_descriptor_accessor(bool value) { + _has_bits_[0] |= 0x00000002u; + no_standard_descriptor_accessor_ = value; +} +inline void MessageOptions::set_no_standard_descriptor_accessor(bool value) { + _internal_set_no_standard_descriptor_accessor(value); + // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.no_standard_descriptor_accessor) +} + +// optional bool deprecated = 3 [default = false]; +inline bool MessageOptions::_internal_has_deprecated() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool MessageOptions::has_deprecated() const { + return _internal_has_deprecated(); +} +inline void MessageOptions::clear_deprecated() { + deprecated_ = false; + _has_bits_[0] &= ~0x00000004u; +} +inline bool MessageOptions::_internal_deprecated() const { + return deprecated_; +} +inline bool MessageOptions::deprecated() const { + // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.deprecated) + return _internal_deprecated(); +} +inline void MessageOptions::_internal_set_deprecated(bool value) { + _has_bits_[0] |= 0x00000004u; + deprecated_ = value; +} +inline void MessageOptions::set_deprecated(bool value) { + _internal_set_deprecated(value); + // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.deprecated) +} + +// optional bool map_entry = 7; +inline bool MessageOptions::_internal_has_map_entry() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + return value; +} +inline bool MessageOptions::has_map_entry() const { + return _internal_has_map_entry(); +} +inline void MessageOptions::clear_map_entry() { + map_entry_ = false; + _has_bits_[0] &= ~0x00000008u; +} +inline bool MessageOptions::_internal_map_entry() const { + return map_entry_; +} +inline bool MessageOptions::map_entry() const { + // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.map_entry) + return _internal_map_entry(); +} +inline void MessageOptions::_internal_set_map_entry(bool value) { + _has_bits_[0] |= 0x00000008u; + map_entry_ = value; +} +inline void MessageOptions::set_map_entry(bool value) { + _internal_set_map_entry(value); + // @@protoc_insertion_point(field_set:google.protobuf.MessageOptions.map_entry) +} + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int MessageOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int MessageOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void MessageOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* MessageOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.MessageOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +MessageOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.MessageOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& MessageOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& MessageOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.MessageOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* MessageOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* MessageOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.MessageOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +MessageOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.MessageOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// FieldOptions + +// optional .google.protobuf.FieldOptions.CType ctype = 1 [default = STRING]; +inline bool FieldOptions::_internal_has_ctype() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool FieldOptions::has_ctype() const { + return _internal_has_ctype(); +} +inline void FieldOptions::clear_ctype() { + ctype_ = 0; + _has_bits_[0] &= ~0x00000001u; +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions_CType FieldOptions::_internal_ctype() const { + return static_cast< PROTOBUF_NAMESPACE_ID::FieldOptions_CType >(ctype_); +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions_CType FieldOptions::ctype() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.ctype) + return _internal_ctype(); +} +inline void FieldOptions::_internal_set_ctype(PROTOBUF_NAMESPACE_ID::FieldOptions_CType value) { + assert(PROTOBUF_NAMESPACE_ID::FieldOptions_CType_IsValid(value)); + _has_bits_[0] |= 0x00000001u; + ctype_ = value; +} +inline void FieldOptions::set_ctype(PROTOBUF_NAMESPACE_ID::FieldOptions_CType value) { + _internal_set_ctype(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.ctype) +} + +// optional bool packed = 2; +inline bool FieldOptions::_internal_has_packed() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool FieldOptions::has_packed() const { + return _internal_has_packed(); +} +inline void FieldOptions::clear_packed() { + packed_ = false; + _has_bits_[0] &= ~0x00000002u; +} +inline bool FieldOptions::_internal_packed() const { + return packed_; +} +inline bool FieldOptions::packed() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.packed) + return _internal_packed(); +} +inline void FieldOptions::_internal_set_packed(bool value) { + _has_bits_[0] |= 0x00000002u; + packed_ = value; +} +inline void FieldOptions::set_packed(bool value) { + _internal_set_packed(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.packed) +} + +// optional .google.protobuf.FieldOptions.JSType jstype = 6 [default = JS_NORMAL]; +inline bool FieldOptions::_internal_has_jstype() const { + bool value = (_has_bits_[0] & 0x00000020u) != 0; + return value; +} +inline bool FieldOptions::has_jstype() const { + return _internal_has_jstype(); +} +inline void FieldOptions::clear_jstype() { + jstype_ = 0; + _has_bits_[0] &= ~0x00000020u; +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions_JSType FieldOptions::_internal_jstype() const { + return static_cast< PROTOBUF_NAMESPACE_ID::FieldOptions_JSType >(jstype_); +} +inline PROTOBUF_NAMESPACE_ID::FieldOptions_JSType FieldOptions::jstype() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.jstype) + return _internal_jstype(); +} +inline void FieldOptions::_internal_set_jstype(PROTOBUF_NAMESPACE_ID::FieldOptions_JSType value) { + assert(PROTOBUF_NAMESPACE_ID::FieldOptions_JSType_IsValid(value)); + _has_bits_[0] |= 0x00000020u; + jstype_ = value; +} +inline void FieldOptions::set_jstype(PROTOBUF_NAMESPACE_ID::FieldOptions_JSType value) { + _internal_set_jstype(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.jstype) +} + +// optional bool lazy = 5 [default = false]; +inline bool FieldOptions::_internal_has_lazy() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool FieldOptions::has_lazy() const { + return _internal_has_lazy(); +} +inline void FieldOptions::clear_lazy() { + lazy_ = false; + _has_bits_[0] &= ~0x00000004u; +} +inline bool FieldOptions::_internal_lazy() const { + return lazy_; +} +inline bool FieldOptions::lazy() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.lazy) + return _internal_lazy(); +} +inline void FieldOptions::_internal_set_lazy(bool value) { + _has_bits_[0] |= 0x00000004u; + lazy_ = value; +} +inline void FieldOptions::set_lazy(bool value) { + _internal_set_lazy(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.lazy) +} + +// optional bool deprecated = 3 [default = false]; +inline bool FieldOptions::_internal_has_deprecated() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + return value; +} +inline bool FieldOptions::has_deprecated() const { + return _internal_has_deprecated(); +} +inline void FieldOptions::clear_deprecated() { + deprecated_ = false; + _has_bits_[0] &= ~0x00000008u; +} +inline bool FieldOptions::_internal_deprecated() const { + return deprecated_; +} +inline bool FieldOptions::deprecated() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.deprecated) + return _internal_deprecated(); +} +inline void FieldOptions::_internal_set_deprecated(bool value) { + _has_bits_[0] |= 0x00000008u; + deprecated_ = value; +} +inline void FieldOptions::set_deprecated(bool value) { + _internal_set_deprecated(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.deprecated) +} + +// optional bool weak = 10 [default = false]; +inline bool FieldOptions::_internal_has_weak() const { + bool value = (_has_bits_[0] & 0x00000010u) != 0; + return value; +} +inline bool FieldOptions::has_weak() const { + return _internal_has_weak(); +} +inline void FieldOptions::clear_weak() { + weak_ = false; + _has_bits_[0] &= ~0x00000010u; +} +inline bool FieldOptions::_internal_weak() const { + return weak_; +} +inline bool FieldOptions::weak() const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.weak) + return _internal_weak(); +} +inline void FieldOptions::_internal_set_weak(bool value) { + _has_bits_[0] |= 0x00000010u; + weak_ = value; +} +inline void FieldOptions::set_weak(bool value) { + _internal_set_weak(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldOptions.weak) +} + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int FieldOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int FieldOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void FieldOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* FieldOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +FieldOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FieldOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& FieldOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& FieldOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* FieldOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* FieldOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.FieldOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +FieldOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.FieldOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// OneofOptions + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int OneofOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int OneofOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void OneofOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* OneofOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.OneofOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +OneofOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.OneofOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& OneofOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& OneofOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.OneofOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* OneofOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* OneofOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.OneofOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +OneofOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.OneofOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// EnumOptions + +// optional bool allow_alias = 2; +inline bool EnumOptions::_internal_has_allow_alias() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool EnumOptions::has_allow_alias() const { + return _internal_has_allow_alias(); +} +inline void EnumOptions::clear_allow_alias() { + allow_alias_ = false; + _has_bits_[0] &= ~0x00000001u; +} +inline bool EnumOptions::_internal_allow_alias() const { + return allow_alias_; +} +inline bool EnumOptions::allow_alias() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumOptions.allow_alias) + return _internal_allow_alias(); +} +inline void EnumOptions::_internal_set_allow_alias(bool value) { + _has_bits_[0] |= 0x00000001u; + allow_alias_ = value; +} +inline void EnumOptions::set_allow_alias(bool value) { + _internal_set_allow_alias(value); + // @@protoc_insertion_point(field_set:google.protobuf.EnumOptions.allow_alias) +} + +// optional bool deprecated = 3 [default = false]; +inline bool EnumOptions::_internal_has_deprecated() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool EnumOptions::has_deprecated() const { + return _internal_has_deprecated(); +} +inline void EnumOptions::clear_deprecated() { + deprecated_ = false; + _has_bits_[0] &= ~0x00000002u; +} +inline bool EnumOptions::_internal_deprecated() const { + return deprecated_; +} +inline bool EnumOptions::deprecated() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumOptions.deprecated) + return _internal_deprecated(); +} +inline void EnumOptions::_internal_set_deprecated(bool value) { + _has_bits_[0] |= 0x00000002u; + deprecated_ = value; +} +inline void EnumOptions::set_deprecated(bool value) { + _internal_set_deprecated(value); + // @@protoc_insertion_point(field_set:google.protobuf.EnumOptions.deprecated) +} + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int EnumOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int EnumOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void EnumOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* EnumOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +EnumOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& EnumOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& EnumOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* EnumOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* EnumOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.EnumOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +EnumOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.EnumOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// EnumValueOptions + +// optional bool deprecated = 1 [default = false]; +inline bool EnumValueOptions::_internal_has_deprecated() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool EnumValueOptions::has_deprecated() const { + return _internal_has_deprecated(); +} +inline void EnumValueOptions::clear_deprecated() { + deprecated_ = false; + _has_bits_[0] &= ~0x00000001u; +} +inline bool EnumValueOptions::_internal_deprecated() const { + return deprecated_; +} +inline bool EnumValueOptions::deprecated() const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumValueOptions.deprecated) + return _internal_deprecated(); +} +inline void EnumValueOptions::_internal_set_deprecated(bool value) { + _has_bits_[0] |= 0x00000001u; + deprecated_ = value; +} +inline void EnumValueOptions::set_deprecated(bool value) { + _internal_set_deprecated(value); + // @@protoc_insertion_point(field_set:google.protobuf.EnumValueOptions.deprecated) +} + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int EnumValueOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int EnumValueOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void EnumValueOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* EnumValueOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.EnumValueOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +EnumValueOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.EnumValueOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& EnumValueOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& EnumValueOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.EnumValueOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* EnumValueOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* EnumValueOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.EnumValueOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +EnumValueOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.EnumValueOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// ServiceOptions + +// optional bool deprecated = 33 [default = false]; +inline bool ServiceOptions::_internal_has_deprecated() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool ServiceOptions::has_deprecated() const { + return _internal_has_deprecated(); +} +inline void ServiceOptions::clear_deprecated() { + deprecated_ = false; + _has_bits_[0] &= ~0x00000001u; +} +inline bool ServiceOptions::_internal_deprecated() const { + return deprecated_; +} +inline bool ServiceOptions::deprecated() const { + // @@protoc_insertion_point(field_get:google.protobuf.ServiceOptions.deprecated) + return _internal_deprecated(); +} +inline void ServiceOptions::_internal_set_deprecated(bool value) { + _has_bits_[0] |= 0x00000001u; + deprecated_ = value; +} +inline void ServiceOptions::set_deprecated(bool value) { + _internal_set_deprecated(value); + // @@protoc_insertion_point(field_set:google.protobuf.ServiceOptions.deprecated) +} + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int ServiceOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int ServiceOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void ServiceOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* ServiceOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.ServiceOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +ServiceOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.ServiceOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& ServiceOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& ServiceOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.ServiceOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* ServiceOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* ServiceOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.ServiceOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +ServiceOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.ServiceOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// MethodOptions + +// optional bool deprecated = 33 [default = false]; +inline bool MethodOptions::_internal_has_deprecated() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool MethodOptions::has_deprecated() const { + return _internal_has_deprecated(); +} +inline void MethodOptions::clear_deprecated() { + deprecated_ = false; + _has_bits_[0] &= ~0x00000001u; +} +inline bool MethodOptions::_internal_deprecated() const { + return deprecated_; +} +inline bool MethodOptions::deprecated() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodOptions.deprecated) + return _internal_deprecated(); +} +inline void MethodOptions::_internal_set_deprecated(bool value) { + _has_bits_[0] |= 0x00000001u; + deprecated_ = value; +} +inline void MethodOptions::set_deprecated(bool value) { + _internal_set_deprecated(value); + // @@protoc_insertion_point(field_set:google.protobuf.MethodOptions.deprecated) +} + +// optional .google.protobuf.MethodOptions.IdempotencyLevel idempotency_level = 34 [default = IDEMPOTENCY_UNKNOWN]; +inline bool MethodOptions::_internal_has_idempotency_level() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool MethodOptions::has_idempotency_level() const { + return _internal_has_idempotency_level(); +} +inline void MethodOptions::clear_idempotency_level() { + idempotency_level_ = 0; + _has_bits_[0] &= ~0x00000002u; +} +inline PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel MethodOptions::_internal_idempotency_level() const { + return static_cast< PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel >(idempotency_level_); +} +inline PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel MethodOptions::idempotency_level() const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodOptions.idempotency_level) + return _internal_idempotency_level(); +} +inline void MethodOptions::_internal_set_idempotency_level(PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel value) { + assert(PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel_IsValid(value)); + _has_bits_[0] |= 0x00000002u; + idempotency_level_ = value; +} +inline void MethodOptions::set_idempotency_level(PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel value) { + _internal_set_idempotency_level(value); + // @@protoc_insertion_point(field_set:google.protobuf.MethodOptions.idempotency_level) +} + +// repeated .google.protobuf.UninterpretedOption uninterpreted_option = 999; +inline int MethodOptions::_internal_uninterpreted_option_size() const { + return uninterpreted_option_.size(); +} +inline int MethodOptions::uninterpreted_option_size() const { + return _internal_uninterpreted_option_size(); +} +inline void MethodOptions::clear_uninterpreted_option() { + uninterpreted_option_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* MethodOptions::mutable_uninterpreted_option(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.MethodOptions.uninterpreted_option) + return uninterpreted_option_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >* +MethodOptions::mutable_uninterpreted_option() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.MethodOptions.uninterpreted_option) + return &uninterpreted_option_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& MethodOptions::_internal_uninterpreted_option(int index) const { + return uninterpreted_option_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption& MethodOptions::uninterpreted_option(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.MethodOptions.uninterpreted_option) + return _internal_uninterpreted_option(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* MethodOptions::_internal_add_uninterpreted_option() { + return uninterpreted_option_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption* MethodOptions::add_uninterpreted_option() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption* _add = _internal_add_uninterpreted_option(); + // @@protoc_insertion_point(field_add:google.protobuf.MethodOptions.uninterpreted_option) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption >& +MethodOptions::uninterpreted_option() const { + // @@protoc_insertion_point(field_list:google.protobuf.MethodOptions.uninterpreted_option) + return uninterpreted_option_; +} + +// ------------------------------------------------------------------- + +// UninterpretedOption_NamePart + +// required string name_part = 1; +inline bool UninterpretedOption_NamePart::_internal_has_name_part() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool UninterpretedOption_NamePart::has_name_part() const { + return _internal_has_name_part(); +} +inline void UninterpretedOption_NamePart::clear_name_part() { + name_part_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& UninterpretedOption_NamePart::name_part() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.NamePart.name_part) + return _internal_name_part(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void UninterpretedOption_NamePart::set_name_part(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + name_part_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.NamePart.name_part) +} +inline std::string* UninterpretedOption_NamePart::mutable_name_part() { + std::string* _s = _internal_mutable_name_part(); + // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.NamePart.name_part) + return _s; +} +inline const std::string& UninterpretedOption_NamePart::_internal_name_part() const { + return name_part_.Get(); +} +inline void UninterpretedOption_NamePart::_internal_set_name_part(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + name_part_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption_NamePart::_internal_mutable_name_part() { + _has_bits_[0] |= 0x00000001u; + return name_part_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption_NamePart::release_name_part() { + // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.NamePart.name_part) + if (!_internal_has_name_part()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return name_part_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void UninterpretedOption_NamePart::set_allocated_name_part(std::string* name_part) { + if (name_part != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + name_part_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name_part, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.NamePart.name_part) +} + +// required bool is_extension = 2; +inline bool UninterpretedOption_NamePart::_internal_has_is_extension() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool UninterpretedOption_NamePart::has_is_extension() const { + return _internal_has_is_extension(); +} +inline void UninterpretedOption_NamePart::clear_is_extension() { + is_extension_ = false; + _has_bits_[0] &= ~0x00000002u; +} +inline bool UninterpretedOption_NamePart::_internal_is_extension() const { + return is_extension_; +} +inline bool UninterpretedOption_NamePart::is_extension() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.NamePart.is_extension) + return _internal_is_extension(); +} +inline void UninterpretedOption_NamePart::_internal_set_is_extension(bool value) { + _has_bits_[0] |= 0x00000002u; + is_extension_ = value; +} +inline void UninterpretedOption_NamePart::set_is_extension(bool value) { + _internal_set_is_extension(value); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.NamePart.is_extension) +} + +// ------------------------------------------------------------------- + +// UninterpretedOption + +// repeated .google.protobuf.UninterpretedOption.NamePart name = 2; +inline int UninterpretedOption::_internal_name_size() const { + return name_.size(); +} +inline int UninterpretedOption::name_size() const { + return _internal_name_size(); +} +inline void UninterpretedOption::clear_name() { + name_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* UninterpretedOption::mutable_name(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.name) + return name_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart >* +UninterpretedOption::mutable_name() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.UninterpretedOption.name) + return &name_; +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart& UninterpretedOption::_internal_name(int index) const { + return name_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart& UninterpretedOption::name(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.name) + return _internal_name(index); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* UninterpretedOption::_internal_add_name() { + return name_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* UninterpretedOption::add_name() { + PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart* _add = _internal_add_name(); + // @@protoc_insertion_point(field_add:google.protobuf.UninterpretedOption.name) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart >& +UninterpretedOption::name() const { + // @@protoc_insertion_point(field_list:google.protobuf.UninterpretedOption.name) + return name_; +} + +// optional string identifier_value = 3; +inline bool UninterpretedOption::_internal_has_identifier_value() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool UninterpretedOption::has_identifier_value() const { + return _internal_has_identifier_value(); +} +inline void UninterpretedOption::clear_identifier_value() { + identifier_value_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& UninterpretedOption::identifier_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.identifier_value) + return _internal_identifier_value(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void UninterpretedOption::set_identifier_value(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + identifier_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.identifier_value) +} +inline std::string* UninterpretedOption::mutable_identifier_value() { + std::string* _s = _internal_mutable_identifier_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.identifier_value) + return _s; +} +inline const std::string& UninterpretedOption::_internal_identifier_value() const { + return identifier_value_.Get(); +} +inline void UninterpretedOption::_internal_set_identifier_value(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + identifier_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption::_internal_mutable_identifier_value() { + _has_bits_[0] |= 0x00000001u; + return identifier_value_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption::release_identifier_value() { + // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.identifier_value) + if (!_internal_has_identifier_value()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return identifier_value_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void UninterpretedOption::set_allocated_identifier_value(std::string* identifier_value) { + if (identifier_value != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + identifier_value_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), identifier_value, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.identifier_value) +} + +// optional uint64 positive_int_value = 4; +inline bool UninterpretedOption::_internal_has_positive_int_value() const { + bool value = (_has_bits_[0] & 0x00000008u) != 0; + return value; +} +inline bool UninterpretedOption::has_positive_int_value() const { + return _internal_has_positive_int_value(); +} +inline void UninterpretedOption::clear_positive_int_value() { + positive_int_value_ = uint64_t{0u}; + _has_bits_[0] &= ~0x00000008u; +} +inline ::PROTOBUF_NAMESPACE_ID::uint64 UninterpretedOption::_internal_positive_int_value() const { + return positive_int_value_; +} +inline ::PROTOBUF_NAMESPACE_ID::uint64 UninterpretedOption::positive_int_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.positive_int_value) + return _internal_positive_int_value(); +} +inline void UninterpretedOption::_internal_set_positive_int_value(::PROTOBUF_NAMESPACE_ID::uint64 value) { + _has_bits_[0] |= 0x00000008u; + positive_int_value_ = value; +} +inline void UninterpretedOption::set_positive_int_value(::PROTOBUF_NAMESPACE_ID::uint64 value) { + _internal_set_positive_int_value(value); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.positive_int_value) +} + +// optional int64 negative_int_value = 5; +inline bool UninterpretedOption::_internal_has_negative_int_value() const { + bool value = (_has_bits_[0] & 0x00000010u) != 0; + return value; +} +inline bool UninterpretedOption::has_negative_int_value() const { + return _internal_has_negative_int_value(); +} +inline void UninterpretedOption::clear_negative_int_value() { + negative_int_value_ = int64_t{0}; + _has_bits_[0] &= ~0x00000010u; +} +inline ::PROTOBUF_NAMESPACE_ID::int64 UninterpretedOption::_internal_negative_int_value() const { + return negative_int_value_; +} +inline ::PROTOBUF_NAMESPACE_ID::int64 UninterpretedOption::negative_int_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.negative_int_value) + return _internal_negative_int_value(); +} +inline void UninterpretedOption::_internal_set_negative_int_value(::PROTOBUF_NAMESPACE_ID::int64 value) { + _has_bits_[0] |= 0x00000010u; + negative_int_value_ = value; +} +inline void UninterpretedOption::set_negative_int_value(::PROTOBUF_NAMESPACE_ID::int64 value) { + _internal_set_negative_int_value(value); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.negative_int_value) +} + +// optional double double_value = 6; +inline bool UninterpretedOption::_internal_has_double_value() const { + bool value = (_has_bits_[0] & 0x00000020u) != 0; + return value; +} +inline bool UninterpretedOption::has_double_value() const { + return _internal_has_double_value(); +} +inline void UninterpretedOption::clear_double_value() { + double_value_ = 0; + _has_bits_[0] &= ~0x00000020u; +} +inline double UninterpretedOption::_internal_double_value() const { + return double_value_; +} +inline double UninterpretedOption::double_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.double_value) + return _internal_double_value(); +} +inline void UninterpretedOption::_internal_set_double_value(double value) { + _has_bits_[0] |= 0x00000020u; + double_value_ = value; +} +inline void UninterpretedOption::set_double_value(double value) { + _internal_set_double_value(value); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.double_value) +} + +// optional bytes string_value = 7; +inline bool UninterpretedOption::_internal_has_string_value() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool UninterpretedOption::has_string_value() const { + return _internal_has_string_value(); +} +inline void UninterpretedOption::clear_string_value() { + string_value_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000002u; +} +inline const std::string& UninterpretedOption::string_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.string_value) + return _internal_string_value(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void UninterpretedOption::set_string_value(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000002u; + string_value_.SetBytes(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.string_value) +} +inline std::string* UninterpretedOption::mutable_string_value() { + std::string* _s = _internal_mutable_string_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.string_value) + return _s; +} +inline const std::string& UninterpretedOption::_internal_string_value() const { + return string_value_.Get(); +} +inline void UninterpretedOption::_internal_set_string_value(const std::string& value) { + _has_bits_[0] |= 0x00000002u; + string_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption::_internal_mutable_string_value() { + _has_bits_[0] |= 0x00000002u; + return string_value_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption::release_string_value() { + // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.string_value) + if (!_internal_has_string_value()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000002u; + return string_value_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void UninterpretedOption::set_allocated_string_value(std::string* string_value) { + if (string_value != nullptr) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + string_value_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), string_value, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.string_value) +} + +// optional string aggregate_value = 8; +inline bool UninterpretedOption::_internal_has_aggregate_value() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool UninterpretedOption::has_aggregate_value() const { + return _internal_has_aggregate_value(); +} +inline void UninterpretedOption::clear_aggregate_value() { + aggregate_value_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000004u; +} +inline const std::string& UninterpretedOption::aggregate_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.UninterpretedOption.aggregate_value) + return _internal_aggregate_value(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void UninterpretedOption::set_aggregate_value(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000004u; + aggregate_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.UninterpretedOption.aggregate_value) +} +inline std::string* UninterpretedOption::mutable_aggregate_value() { + std::string* _s = _internal_mutable_aggregate_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.UninterpretedOption.aggregate_value) + return _s; +} +inline const std::string& UninterpretedOption::_internal_aggregate_value() const { + return aggregate_value_.Get(); +} +inline void UninterpretedOption::_internal_set_aggregate_value(const std::string& value) { + _has_bits_[0] |= 0x00000004u; + aggregate_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption::_internal_mutable_aggregate_value() { + _has_bits_[0] |= 0x00000004u; + return aggregate_value_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* UninterpretedOption::release_aggregate_value() { + // @@protoc_insertion_point(field_release:google.protobuf.UninterpretedOption.aggregate_value) + if (!_internal_has_aggregate_value()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000004u; + return aggregate_value_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void UninterpretedOption::set_allocated_aggregate_value(std::string* aggregate_value) { + if (aggregate_value != nullptr) { + _has_bits_[0] |= 0x00000004u; + } else { + _has_bits_[0] &= ~0x00000004u; + } + aggregate_value_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), aggregate_value, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.UninterpretedOption.aggregate_value) +} + +// ------------------------------------------------------------------- + +// SourceCodeInfo_Location + +// repeated int32 path = 1 [packed = true]; +inline int SourceCodeInfo_Location::_internal_path_size() const { + return path_.size(); +} +inline int SourceCodeInfo_Location::path_size() const { + return _internal_path_size(); +} +inline void SourceCodeInfo_Location::clear_path() { + path_.Clear(); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 SourceCodeInfo_Location::_internal_path(int index) const { + return path_.Get(index); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 SourceCodeInfo_Location::path(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.path) + return _internal_path(index); +} +inline void SourceCodeInfo_Location::set_path(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) { + path_.Set(index, value); + // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.path) +} +inline void SourceCodeInfo_Location::_internal_add_path(::PROTOBUF_NAMESPACE_ID::int32 value) { + path_.Add(value); +} +inline void SourceCodeInfo_Location::add_path(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_add_path(value); + // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.Location.path) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +SourceCodeInfo_Location::_internal_path() const { + return path_; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +SourceCodeInfo_Location::path() const { + // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.Location.path) + return _internal_path(); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +SourceCodeInfo_Location::_internal_mutable_path() { + return &path_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +SourceCodeInfo_Location::mutable_path() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.Location.path) + return _internal_mutable_path(); +} + +// repeated int32 span = 2 [packed = true]; +inline int SourceCodeInfo_Location::_internal_span_size() const { + return span_.size(); +} +inline int SourceCodeInfo_Location::span_size() const { + return _internal_span_size(); +} +inline void SourceCodeInfo_Location::clear_span() { + span_.Clear(); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 SourceCodeInfo_Location::_internal_span(int index) const { + return span_.Get(index); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 SourceCodeInfo_Location::span(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.span) + return _internal_span(index); +} +inline void SourceCodeInfo_Location::set_span(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) { + span_.Set(index, value); + // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.span) +} +inline void SourceCodeInfo_Location::_internal_add_span(::PROTOBUF_NAMESPACE_ID::int32 value) { + span_.Add(value); +} +inline void SourceCodeInfo_Location::add_span(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_add_span(value); + // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.Location.span) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +SourceCodeInfo_Location::_internal_span() const { + return span_; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +SourceCodeInfo_Location::span() const { + // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.Location.span) + return _internal_span(); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +SourceCodeInfo_Location::_internal_mutable_span() { + return &span_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +SourceCodeInfo_Location::mutable_span() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.Location.span) + return _internal_mutable_span(); +} + +// optional string leading_comments = 3; +inline bool SourceCodeInfo_Location::_internal_has_leading_comments() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool SourceCodeInfo_Location::has_leading_comments() const { + return _internal_has_leading_comments(); +} +inline void SourceCodeInfo_Location::clear_leading_comments() { + leading_comments_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& SourceCodeInfo_Location::leading_comments() const { + // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.leading_comments) + return _internal_leading_comments(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void SourceCodeInfo_Location::set_leading_comments(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + leading_comments_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.leading_comments) +} +inline std::string* SourceCodeInfo_Location::mutable_leading_comments() { + std::string* _s = _internal_mutable_leading_comments(); + // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.Location.leading_comments) + return _s; +} +inline const std::string& SourceCodeInfo_Location::_internal_leading_comments() const { + return leading_comments_.Get(); +} +inline void SourceCodeInfo_Location::_internal_set_leading_comments(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + leading_comments_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* SourceCodeInfo_Location::_internal_mutable_leading_comments() { + _has_bits_[0] |= 0x00000001u; + return leading_comments_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* SourceCodeInfo_Location::release_leading_comments() { + // @@protoc_insertion_point(field_release:google.protobuf.SourceCodeInfo.Location.leading_comments) + if (!_internal_has_leading_comments()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return leading_comments_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void SourceCodeInfo_Location::set_allocated_leading_comments(std::string* leading_comments) { + if (leading_comments != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + leading_comments_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), leading_comments, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.SourceCodeInfo.Location.leading_comments) +} + +// optional string trailing_comments = 4; +inline bool SourceCodeInfo_Location::_internal_has_trailing_comments() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool SourceCodeInfo_Location::has_trailing_comments() const { + return _internal_has_trailing_comments(); +} +inline void SourceCodeInfo_Location::clear_trailing_comments() { + trailing_comments_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000002u; +} +inline const std::string& SourceCodeInfo_Location::trailing_comments() const { + // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.trailing_comments) + return _internal_trailing_comments(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void SourceCodeInfo_Location::set_trailing_comments(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000002u; + trailing_comments_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.trailing_comments) +} +inline std::string* SourceCodeInfo_Location::mutable_trailing_comments() { + std::string* _s = _internal_mutable_trailing_comments(); + // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.Location.trailing_comments) + return _s; +} +inline const std::string& SourceCodeInfo_Location::_internal_trailing_comments() const { + return trailing_comments_.Get(); +} +inline void SourceCodeInfo_Location::_internal_set_trailing_comments(const std::string& value) { + _has_bits_[0] |= 0x00000002u; + trailing_comments_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* SourceCodeInfo_Location::_internal_mutable_trailing_comments() { + _has_bits_[0] |= 0x00000002u; + return trailing_comments_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* SourceCodeInfo_Location::release_trailing_comments() { + // @@protoc_insertion_point(field_release:google.protobuf.SourceCodeInfo.Location.trailing_comments) + if (!_internal_has_trailing_comments()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000002u; + return trailing_comments_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void SourceCodeInfo_Location::set_allocated_trailing_comments(std::string* trailing_comments) { + if (trailing_comments != nullptr) { + _has_bits_[0] |= 0x00000002u; + } else { + _has_bits_[0] &= ~0x00000002u; + } + trailing_comments_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), trailing_comments, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.SourceCodeInfo.Location.trailing_comments) +} + +// repeated string leading_detached_comments = 6; +inline int SourceCodeInfo_Location::_internal_leading_detached_comments_size() const { + return leading_detached_comments_.size(); +} +inline int SourceCodeInfo_Location::leading_detached_comments_size() const { + return _internal_leading_detached_comments_size(); +} +inline void SourceCodeInfo_Location::clear_leading_detached_comments() { + leading_detached_comments_.Clear(); +} +inline std::string* SourceCodeInfo_Location::add_leading_detached_comments() { + std::string* _s = _internal_add_leading_detached_comments(); + // @@protoc_insertion_point(field_add_mutable:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) + return _s; +} +inline const std::string& SourceCodeInfo_Location::_internal_leading_detached_comments(int index) const { + return leading_detached_comments_.Get(index); +} +inline const std::string& SourceCodeInfo_Location::leading_detached_comments(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) + return _internal_leading_detached_comments(index); +} +inline std::string* SourceCodeInfo_Location::mutable_leading_detached_comments(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) + return leading_detached_comments_.Mutable(index); +} +inline void SourceCodeInfo_Location::set_leading_detached_comments(int index, const std::string& value) { + leading_detached_comments_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline void SourceCodeInfo_Location::set_leading_detached_comments(int index, std::string&& value) { + leading_detached_comments_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline void SourceCodeInfo_Location::set_leading_detached_comments(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + leading_detached_comments_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline void SourceCodeInfo_Location::set_leading_detached_comments(int index, const char* value, size_t size) { + leading_detached_comments_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline std::string* SourceCodeInfo_Location::_internal_add_leading_detached_comments() { + return leading_detached_comments_.Add(); +} +inline void SourceCodeInfo_Location::add_leading_detached_comments(const std::string& value) { + leading_detached_comments_.Add()->assign(value); + // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline void SourceCodeInfo_Location::add_leading_detached_comments(std::string&& value) { + leading_detached_comments_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline void SourceCodeInfo_Location::add_leading_detached_comments(const char* value) { + GOOGLE_DCHECK(value != nullptr); + leading_detached_comments_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline void SourceCodeInfo_Location::add_leading_detached_comments(const char* value, size_t size) { + leading_detached_comments_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +SourceCodeInfo_Location::leading_detached_comments() const { + // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) + return leading_detached_comments_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +SourceCodeInfo_Location::mutable_leading_detached_comments() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.Location.leading_detached_comments) + return &leading_detached_comments_; +} + +// ------------------------------------------------------------------- + +// SourceCodeInfo + +// repeated .google.protobuf.SourceCodeInfo.Location location = 1; +inline int SourceCodeInfo::_internal_location_size() const { + return location_.size(); +} +inline int SourceCodeInfo::location_size() const { + return _internal_location_size(); +} +inline void SourceCodeInfo::clear_location() { + location_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* SourceCodeInfo::mutable_location(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.SourceCodeInfo.location) + return location_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location >* +SourceCodeInfo::mutable_location() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.SourceCodeInfo.location) + return &location_; +} +inline const PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location& SourceCodeInfo::_internal_location(int index) const { + return location_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location& SourceCodeInfo::location(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.SourceCodeInfo.location) + return _internal_location(index); +} +inline PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* SourceCodeInfo::_internal_add_location() { + return location_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* SourceCodeInfo::add_location() { + PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location* _add = _internal_add_location(); + // @@protoc_insertion_point(field_add:google.protobuf.SourceCodeInfo.location) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location >& +SourceCodeInfo::location() const { + // @@protoc_insertion_point(field_list:google.protobuf.SourceCodeInfo.location) + return location_; +} + +// ------------------------------------------------------------------- + +// GeneratedCodeInfo_Annotation + +// repeated int32 path = 1 [packed = true]; +inline int GeneratedCodeInfo_Annotation::_internal_path_size() const { + return path_.size(); +} +inline int GeneratedCodeInfo_Annotation::path_size() const { + return _internal_path_size(); +} +inline void GeneratedCodeInfo_Annotation::clear_path() { + path_.Clear(); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 GeneratedCodeInfo_Annotation::_internal_path(int index) const { + return path_.Get(index); +} +inline ::PROTOBUF_NAMESPACE_ID::int32 GeneratedCodeInfo_Annotation::path(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.path) + return _internal_path(index); +} +inline void GeneratedCodeInfo_Annotation::set_path(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) { + path_.Set(index, value); + // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.path) +} +inline void GeneratedCodeInfo_Annotation::_internal_add_path(::PROTOBUF_NAMESPACE_ID::int32 value) { + path_.Add(value); +} +inline void GeneratedCodeInfo_Annotation::add_path(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_add_path(value); + // @@protoc_insertion_point(field_add:google.protobuf.GeneratedCodeInfo.Annotation.path) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +GeneratedCodeInfo_Annotation::_internal_path() const { + return path_; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >& +GeneratedCodeInfo_Annotation::path() const { + // @@protoc_insertion_point(field_list:google.protobuf.GeneratedCodeInfo.Annotation.path) + return _internal_path(); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +GeneratedCodeInfo_Annotation::_internal_mutable_path() { + return &path_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >* +GeneratedCodeInfo_Annotation::mutable_path() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.GeneratedCodeInfo.Annotation.path) + return _internal_mutable_path(); +} + +// optional string source_file = 2; +inline bool GeneratedCodeInfo_Annotation::_internal_has_source_file() const { + bool value = (_has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool GeneratedCodeInfo_Annotation::has_source_file() const { + return _internal_has_source_file(); +} +inline void GeneratedCodeInfo_Annotation::clear_source_file() { + source_file_.ClearToEmpty(); + _has_bits_[0] &= ~0x00000001u; +} +inline const std::string& GeneratedCodeInfo_Annotation::source_file() const { + // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.source_file) + return _internal_source_file(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void GeneratedCodeInfo_Annotation::set_source_file(ArgT0&& arg0, ArgT... args) { + _has_bits_[0] |= 0x00000001u; + source_file_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.source_file) +} +inline std::string* GeneratedCodeInfo_Annotation::mutable_source_file() { + std::string* _s = _internal_mutable_source_file(); + // @@protoc_insertion_point(field_mutable:google.protobuf.GeneratedCodeInfo.Annotation.source_file) + return _s; +} +inline const std::string& GeneratedCodeInfo_Annotation::_internal_source_file() const { + return source_file_.Get(); +} +inline void GeneratedCodeInfo_Annotation::_internal_set_source_file(const std::string& value) { + _has_bits_[0] |= 0x00000001u; + source_file_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* GeneratedCodeInfo_Annotation::_internal_mutable_source_file() { + _has_bits_[0] |= 0x00000001u; + return source_file_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* GeneratedCodeInfo_Annotation::release_source_file() { + // @@protoc_insertion_point(field_release:google.protobuf.GeneratedCodeInfo.Annotation.source_file) + if (!_internal_has_source_file()) { + return nullptr; + } + _has_bits_[0] &= ~0x00000001u; + return source_file_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void GeneratedCodeInfo_Annotation::set_allocated_source_file(std::string* source_file) { + if (source_file != nullptr) { + _has_bits_[0] |= 0x00000001u; + } else { + _has_bits_[0] &= ~0x00000001u; + } + source_file_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), source_file, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.GeneratedCodeInfo.Annotation.source_file) +} + +// optional int32 begin = 3; +inline bool GeneratedCodeInfo_Annotation::_internal_has_begin() const { + bool value = (_has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool GeneratedCodeInfo_Annotation::has_begin() const { + return _internal_has_begin(); +} +inline void GeneratedCodeInfo_Annotation::clear_begin() { + begin_ = 0; + _has_bits_[0] &= ~0x00000002u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 GeneratedCodeInfo_Annotation::_internal_begin() const { + return begin_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 GeneratedCodeInfo_Annotation::begin() const { + // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.begin) + return _internal_begin(); +} +inline void GeneratedCodeInfo_Annotation::_internal_set_begin(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000002u; + begin_ = value; +} +inline void GeneratedCodeInfo_Annotation::set_begin(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_begin(value); + // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.begin) +} + +// optional int32 end = 4; +inline bool GeneratedCodeInfo_Annotation::_internal_has_end() const { + bool value = (_has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool GeneratedCodeInfo_Annotation::has_end() const { + return _internal_has_end(); +} +inline void GeneratedCodeInfo_Annotation::clear_end() { + end_ = 0; + _has_bits_[0] &= ~0x00000004u; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 GeneratedCodeInfo_Annotation::_internal_end() const { + return end_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 GeneratedCodeInfo_Annotation::end() const { + // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.Annotation.end) + return _internal_end(); +} +inline void GeneratedCodeInfo_Annotation::_internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _has_bits_[0] |= 0x00000004u; + end_ = value; +} +inline void GeneratedCodeInfo_Annotation::set_end(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_end(value); + // @@protoc_insertion_point(field_set:google.protobuf.GeneratedCodeInfo.Annotation.end) +} + +// ------------------------------------------------------------------- + +// GeneratedCodeInfo + +// repeated .google.protobuf.GeneratedCodeInfo.Annotation annotation = 1; +inline int GeneratedCodeInfo::_internal_annotation_size() const { + return annotation_.size(); +} +inline int GeneratedCodeInfo::annotation_size() const { + return _internal_annotation_size(); +} +inline void GeneratedCodeInfo::clear_annotation() { + annotation_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* GeneratedCodeInfo::mutable_annotation(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.GeneratedCodeInfo.annotation) + return annotation_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation >* +GeneratedCodeInfo::mutable_annotation() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.GeneratedCodeInfo.annotation) + return &annotation_; +} +inline const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation& GeneratedCodeInfo::_internal_annotation(int index) const { + return annotation_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation& GeneratedCodeInfo::annotation(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.GeneratedCodeInfo.annotation) + return _internal_annotation(index); +} +inline PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* GeneratedCodeInfo::_internal_add_annotation() { + return annotation_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* GeneratedCodeInfo::add_annotation() { + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation* _add = _internal_add_annotation(); + // @@protoc_insertion_point(field_add:google.protobuf.GeneratedCodeInfo.annotation) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation >& +GeneratedCodeInfo::annotation() const { + // @@protoc_insertion_point(field_list:google.protobuf.GeneratedCodeInfo.annotation) + return annotation_; +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +PROTOBUF_NAMESPACE_OPEN + +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type>() { + return PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Type_descriptor(); +} +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label>() { + return PROTOBUF_NAMESPACE_ID::FieldDescriptorProto_Label_descriptor(); +} +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode>() { + return PROTOBUF_NAMESPACE_ID::FileOptions_OptimizeMode_descriptor(); +} +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::FieldOptions_CType> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::FieldOptions_CType>() { + return PROTOBUF_NAMESPACE_ID::FieldOptions_CType_descriptor(); +} +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::FieldOptions_JSType> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::FieldOptions_JSType>() { + return PROTOBUF_NAMESPACE_ID::FieldOptions_JSType_descriptor(); +} +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel>() { + return PROTOBUF_NAMESPACE_ID::MethodOptions_IdempotencyLevel_descriptor(); +} + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fdescriptor_2eproto diff --git a/external/include/google/protobuf/descriptor.proto b/external/include/google/protobuf/descriptor.proto new file mode 100644 index 0000000..156e410 --- /dev/null +++ b/external/include/google/protobuf/descriptor.proto @@ -0,0 +1,911 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// The messages in this file describe the definitions found in .proto files. +// A valid .proto file can be translated directly to a FileDescriptorProto +// without any other information (e.g. without reading its imports). + + +syntax = "proto2"; + +package google.protobuf; + +option go_package = "google.golang.org/protobuf/types/descriptorpb"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "DescriptorProtos"; +option csharp_namespace = "Google.Protobuf.Reflection"; +option objc_class_prefix = "GPB"; +option cc_enable_arenas = true; + +// descriptor.proto must be optimized for speed because reflection-based +// algorithms don't work during bootstrapping. +option optimize_for = SPEED; + +// The protocol compiler can output a FileDescriptorSet containing the .proto +// files it parses. +message FileDescriptorSet { + repeated FileDescriptorProto file = 1; +} + +// Describes a complete .proto file. +message FileDescriptorProto { + optional string name = 1; // file name, relative to root of source tree + optional string package = 2; // e.g. "foo", "foo.bar", etc. + + // Names of files imported by this file. + repeated string dependency = 3; + // Indexes of the public imported files in the dependency list above. + repeated int32 public_dependency = 10; + // Indexes of the weak imported files in the dependency list. + // For Google-internal migration only. Do not use. + repeated int32 weak_dependency = 11; + + // All top-level definitions in this file. + repeated DescriptorProto message_type = 4; + repeated EnumDescriptorProto enum_type = 5; + repeated ServiceDescriptorProto service = 6; + repeated FieldDescriptorProto extension = 7; + + optional FileOptions options = 8; + + // This field contains optional information about the original source code. + // You may safely remove this entire field without harming runtime + // functionality of the descriptors -- the information is needed only by + // development tools. + optional SourceCodeInfo source_code_info = 9; + + // The syntax of the proto file. + // The supported values are "proto2" and "proto3". + optional string syntax = 12; +} + +// Describes a message type. +message DescriptorProto { + optional string name = 1; + + repeated FieldDescriptorProto field = 2; + repeated FieldDescriptorProto extension = 6; + + repeated DescriptorProto nested_type = 3; + repeated EnumDescriptorProto enum_type = 4; + + message ExtensionRange { + optional int32 start = 1; // Inclusive. + optional int32 end = 2; // Exclusive. + + optional ExtensionRangeOptions options = 3; + } + repeated ExtensionRange extension_range = 5; + + repeated OneofDescriptorProto oneof_decl = 8; + + optional MessageOptions options = 7; + + // Range of reserved tag numbers. Reserved tag numbers may not be used by + // fields or extension ranges in the same message. Reserved ranges may + // not overlap. + message ReservedRange { + optional int32 start = 1; // Inclusive. + optional int32 end = 2; // Exclusive. + } + repeated ReservedRange reserved_range = 9; + // Reserved field names, which may not be used by fields in the same message. + // A given name may only be reserved once. + repeated string reserved_name = 10; +} + +message ExtensionRangeOptions { + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; +} + +// Describes a field within a message. +message FieldDescriptorProto { + enum Type { + // 0 is reserved for errors. + // Order is weird for historical reasons. + TYPE_DOUBLE = 1; + TYPE_FLOAT = 2; + // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if + // negative values are likely. + TYPE_INT64 = 3; + TYPE_UINT64 = 4; + // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if + // negative values are likely. + TYPE_INT32 = 5; + TYPE_FIXED64 = 6; + TYPE_FIXED32 = 7; + TYPE_BOOL = 8; + TYPE_STRING = 9; + // Tag-delimited aggregate. + // Group type is deprecated and not supported in proto3. However, Proto3 + // implementations should still be able to parse the group wire format and + // treat group fields as unknown fields. + TYPE_GROUP = 10; + TYPE_MESSAGE = 11; // Length-delimited aggregate. + + // New in version 2. + TYPE_BYTES = 12; + TYPE_UINT32 = 13; + TYPE_ENUM = 14; + TYPE_SFIXED32 = 15; + TYPE_SFIXED64 = 16; + TYPE_SINT32 = 17; // Uses ZigZag encoding. + TYPE_SINT64 = 18; // Uses ZigZag encoding. + } + + enum Label { + // 0 is reserved for errors + LABEL_OPTIONAL = 1; + LABEL_REQUIRED = 2; + LABEL_REPEATED = 3; + } + + optional string name = 1; + optional int32 number = 3; + optional Label label = 4; + + // If type_name is set, this need not be set. If both this and type_name + // are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP. + optional Type type = 5; + + // For message and enum types, this is the name of the type. If the name + // starts with a '.', it is fully-qualified. Otherwise, C++-like scoping + // rules are used to find the type (i.e. first the nested types within this + // message are searched, then within the parent, on up to the root + // namespace). + optional string type_name = 6; + + // For extensions, this is the name of the type being extended. It is + // resolved in the same manner as type_name. + optional string extendee = 2; + + // For numeric types, contains the original text representation of the value. + // For booleans, "true" or "false". + // For strings, contains the default text contents (not escaped in any way). + // For bytes, contains the C escaped value. All bytes >= 128 are escaped. + // TODO(kenton): Base-64 encode? + optional string default_value = 7; + + // If set, gives the index of a oneof in the containing type's oneof_decl + // list. This field is a member of that oneof. + optional int32 oneof_index = 9; + + // JSON name of this field. The value is set by protocol compiler. If the + // user has set a "json_name" option on this field, that option's value + // will be used. Otherwise, it's deduced from the field's name by converting + // it to camelCase. + optional string json_name = 10; + + optional FieldOptions options = 8; + + // If true, this is a proto3 "optional". When a proto3 field is optional, it + // tracks presence regardless of field type. + // + // When proto3_optional is true, this field must be belong to a oneof to + // signal to old proto3 clients that presence is tracked for this field. This + // oneof is known as a "synthetic" oneof, and this field must be its sole + // member (each proto3 optional field gets its own synthetic oneof). Synthetic + // oneofs exist in the descriptor only, and do not generate any API. Synthetic + // oneofs must be ordered after all "real" oneofs. + // + // For message fields, proto3_optional doesn't create any semantic change, + // since non-repeated message fields always track presence. However it still + // indicates the semantic detail of whether the user wrote "optional" or not. + // This can be useful for round-tripping the .proto file. For consistency we + // give message fields a synthetic oneof also, even though it is not required + // to track presence. This is especially important because the parser can't + // tell if a field is a message or an enum, so it must always create a + // synthetic oneof. + // + // Proto2 optional fields do not set this flag, because they already indicate + // optional with `LABEL_OPTIONAL`. + optional bool proto3_optional = 17; +} + +// Describes a oneof. +message OneofDescriptorProto { + optional string name = 1; + optional OneofOptions options = 2; +} + +// Describes an enum type. +message EnumDescriptorProto { + optional string name = 1; + + repeated EnumValueDescriptorProto value = 2; + + optional EnumOptions options = 3; + + // Range of reserved numeric values. Reserved values may not be used by + // entries in the same enum. Reserved ranges may not overlap. + // + // Note that this is distinct from DescriptorProto.ReservedRange in that it + // is inclusive such that it can appropriately represent the entire int32 + // domain. + message EnumReservedRange { + optional int32 start = 1; // Inclusive. + optional int32 end = 2; // Inclusive. + } + + // Range of reserved numeric values. Reserved numeric values may not be used + // by enum values in the same enum declaration. Reserved ranges may not + // overlap. + repeated EnumReservedRange reserved_range = 4; + + // Reserved enum value names, which may not be reused. A given name may only + // be reserved once. + repeated string reserved_name = 5; +} + +// Describes a value within an enum. +message EnumValueDescriptorProto { + optional string name = 1; + optional int32 number = 2; + + optional EnumValueOptions options = 3; +} + +// Describes a service. +message ServiceDescriptorProto { + optional string name = 1; + repeated MethodDescriptorProto method = 2; + + optional ServiceOptions options = 3; +} + +// Describes a method of a service. +message MethodDescriptorProto { + optional string name = 1; + + // Input and output type names. These are resolved in the same way as + // FieldDescriptorProto.type_name, but must refer to a message type. + optional string input_type = 2; + optional string output_type = 3; + + optional MethodOptions options = 4; + + // Identifies if client streams multiple client messages + optional bool client_streaming = 5 [default = false]; + // Identifies if server streams multiple server messages + optional bool server_streaming = 6 [default = false]; +} + + +// =================================================================== +// Options + +// Each of the definitions above may have "options" attached. These are +// just annotations which may cause code to be generated slightly differently +// or may contain hints for code that manipulates protocol messages. +// +// Clients may define custom options as extensions of the *Options messages. +// These extensions may not yet be known at parsing time, so the parser cannot +// store the values in them. Instead it stores them in a field in the *Options +// message called uninterpreted_option. This field must have the same name +// across all *Options messages. We then use this field to populate the +// extensions when we build a descriptor, at which point all protos have been +// parsed and so all extensions are known. +// +// Extension numbers for custom options may be chosen as follows: +// * For options which will only be used within a single application or +// organization, or for experimental options, use field numbers 50000 +// through 99999. It is up to you to ensure that you do not use the +// same number for multiple options. +// * For options which will be published and used publicly by multiple +// independent entities, e-mail protobuf-global-extension-registry@google.com +// to reserve extension numbers. Simply provide your project name (e.g. +// Objective-C plugin) and your project website (if available) -- there's no +// need to explain how you intend to use them. Usually you only need one +// extension number. You can declare multiple options with only one extension +// number by putting them in a sub-message. See the Custom Options section of +// the docs for examples: +// https://developers.google.com/protocol-buffers/docs/proto#options +// If this turns out to be popular, a web service will be set up +// to automatically assign option numbers. + +message FileOptions { + + // Sets the Java package where classes generated from this .proto will be + // placed. By default, the proto package is used, but this is often + // inappropriate because proto packages do not normally start with backwards + // domain names. + optional string java_package = 1; + + + // Controls the name of the wrapper Java class generated for the .proto file. + // That class will always contain the .proto file's getDescriptor() method as + // well as any top-level extensions defined in the .proto file. + // If java_multiple_files is disabled, then all the other classes from the + // .proto file will be nested inside the single wrapper outer class. + optional string java_outer_classname = 8; + + // If enabled, then the Java code generator will generate a separate .java + // file for each top-level message, enum, and service defined in the .proto + // file. Thus, these types will *not* be nested inside the wrapper class + // named by java_outer_classname. However, the wrapper class will still be + // generated to contain the file's getDescriptor() method as well as any + // top-level extensions defined in the file. + optional bool java_multiple_files = 10 [default = false]; + + // This option does nothing. + optional bool java_generate_equals_and_hash = 20 [deprecated=true]; + + // If set true, then the Java2 code generator will generate code that + // throws an exception whenever an attempt is made to assign a non-UTF-8 + // byte sequence to a string field. + // Message reflection will do the same. + // However, an extension field still accepts non-UTF-8 byte sequences. + // This option has no effect on when used with the lite runtime. + optional bool java_string_check_utf8 = 27 [default = false]; + + + // Generated classes can be optimized for speed or code size. + enum OptimizeMode { + SPEED = 1; // Generate complete code for parsing, serialization, + // etc. + CODE_SIZE = 2; // Use ReflectionOps to implement these methods. + LITE_RUNTIME = 3; // Generate code using MessageLite and the lite runtime. + } + optional OptimizeMode optimize_for = 9 [default = SPEED]; + + // Sets the Go package where structs generated from this .proto will be + // placed. If omitted, the Go package will be derived from the following: + // - The basename of the package import path, if provided. + // - Otherwise, the package statement in the .proto file, if present. + // - Otherwise, the basename of the .proto file, without extension. + optional string go_package = 11; + + + + + // Should generic services be generated in each language? "Generic" services + // are not specific to any particular RPC system. They are generated by the + // main code generators in each language (without additional plugins). + // Generic services were the only kind of service generation supported by + // early versions of google.protobuf. + // + // Generic services are now considered deprecated in favor of using plugins + // that generate code specific to your particular RPC system. Therefore, + // these default to false. Old code which depends on generic services should + // explicitly set them to true. + optional bool cc_generic_services = 16 [default = false]; + optional bool java_generic_services = 17 [default = false]; + optional bool py_generic_services = 18 [default = false]; + optional bool php_generic_services = 42 [default = false]; + + // Is this file deprecated? + // Depending on the target platform, this can emit Deprecated annotations + // for everything in the file, or it will be completely ignored; in the very + // least, this is a formalization for deprecating files. + optional bool deprecated = 23 [default = false]; + + // Enables the use of arenas for the proto messages in this file. This applies + // only to generated classes for C++. + optional bool cc_enable_arenas = 31 [default = true]; + + + // Sets the objective c class prefix which is prepended to all objective c + // generated classes from this .proto. There is no default. + optional string objc_class_prefix = 36; + + // Namespace for generated classes; defaults to the package. + optional string csharp_namespace = 37; + + // By default Swift generators will take the proto package and CamelCase it + // replacing '.' with underscore and use that to prefix the types/symbols + // defined. When this options is provided, they will use this value instead + // to prefix the types/symbols defined. + optional string swift_prefix = 39; + + // Sets the php class prefix which is prepended to all php generated classes + // from this .proto. Default is empty. + optional string php_class_prefix = 40; + + // Use this option to change the namespace of php generated classes. Default + // is empty. When this option is empty, the package name will be used for + // determining the namespace. + optional string php_namespace = 41; + + // Use this option to change the namespace of php generated metadata classes. + // Default is empty. When this option is empty, the proto file name will be + // used for determining the namespace. + optional string php_metadata_namespace = 44; + + // Use this option to change the package of ruby generated classes. Default + // is empty. When this option is not set, the package name will be used for + // determining the ruby package. + optional string ruby_package = 45; + + + // The parser stores options it doesn't recognize here. + // See the documentation for the "Options" section above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. + // See the documentation for the "Options" section above. + extensions 1000 to max; + + reserved 38; +} + +message MessageOptions { + // Set true to use the old proto1 MessageSet wire format for extensions. + // This is provided for backwards-compatibility with the MessageSet wire + // format. You should not use this for any other reason: It's less + // efficient, has fewer features, and is more complicated. + // + // The message must be defined exactly as follows: + // message Foo { + // option message_set_wire_format = true; + // extensions 4 to max; + // } + // Note that the message cannot have any defined fields; MessageSets only + // have extensions. + // + // All extensions of your type must be singular messages; e.g. they cannot + // be int32s, enums, or repeated messages. + // + // Because this is an option, the above two restrictions are not enforced by + // the protocol compiler. + optional bool message_set_wire_format = 1 [default = false]; + + // Disables the generation of the standard "descriptor()" accessor, which can + // conflict with a field of the same name. This is meant to make migration + // from proto1 easier; new code should avoid fields named "descriptor". + optional bool no_standard_descriptor_accessor = 2 [default = false]; + + // Is this message deprecated? + // Depending on the target platform, this can emit Deprecated annotations + // for the message, or it will be completely ignored; in the very least, + // this is a formalization for deprecating messages. + optional bool deprecated = 3 [default = false]; + + reserved 4, 5, 6; + + // Whether the message is an automatically generated map entry type for the + // maps field. + // + // For maps fields: + // map map_field = 1; + // The parsed descriptor looks like: + // message MapFieldEntry { + // option map_entry = true; + // optional KeyType key = 1; + // optional ValueType value = 2; + // } + // repeated MapFieldEntry map_field = 1; + // + // Implementations may choose not to generate the map_entry=true message, but + // use a native map in the target language to hold the keys and values. + // The reflection APIs in such implementations still need to work as + // if the field is a repeated message field. + // + // NOTE: Do not set the option in .proto files. Always use the maps syntax + // instead. The option should only be implicitly set by the proto compiler + // parser. + optional bool map_entry = 7; + + reserved 8; // javalite_serializable + reserved 9; // javanano_as_lite + + + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; +} + +message FieldOptions { + // The ctype option instructs the C++ code generator to use a different + // representation of the field than it normally would. See the specific + // options below. This option is not yet implemented in the open source + // release -- sorry, we'll try to include it in a future version! + optional CType ctype = 1 [default = STRING]; + enum CType { + // Default mode. + STRING = 0; + + CORD = 1; + + STRING_PIECE = 2; + } + // The packed option can be enabled for repeated primitive fields to enable + // a more efficient representation on the wire. Rather than repeatedly + // writing the tag and type for each element, the entire array is encoded as + // a single length-delimited blob. In proto3, only explicit setting it to + // false will avoid using packed encoding. + optional bool packed = 2; + + // The jstype option determines the JavaScript type used for values of the + // field. The option is permitted only for 64 bit integral and fixed types + // (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING + // is represented as JavaScript string, which avoids loss of precision that + // can happen when a large value is converted to a floating point JavaScript. + // Specifying JS_NUMBER for the jstype causes the generated JavaScript code to + // use the JavaScript "number" type. The behavior of the default option + // JS_NORMAL is implementation dependent. + // + // This option is an enum to permit additional types to be added, e.g. + // goog.math.Integer. + optional JSType jstype = 6 [default = JS_NORMAL]; + enum JSType { + // Use the default type. + JS_NORMAL = 0; + + // Use JavaScript strings. + JS_STRING = 1; + + // Use JavaScript numbers. + JS_NUMBER = 2; + } + + // Should this field be parsed lazily? Lazy applies only to message-type + // fields. It means that when the outer message is initially parsed, the + // inner message's contents will not be parsed but instead stored in encoded + // form. The inner message will actually be parsed when it is first accessed. + // + // This is only a hint. Implementations are free to choose whether to use + // eager or lazy parsing regardless of the value of this option. However, + // setting this option true suggests that the protocol author believes that + // using lazy parsing on this field is worth the additional bookkeeping + // overhead typically needed to implement it. + // + // This option does not affect the public interface of any generated code; + // all method signatures remain the same. Furthermore, thread-safety of the + // interface is not affected by this option; const methods remain safe to + // call from multiple threads concurrently, while non-const methods continue + // to require exclusive access. + // + // + // Note that implementations may choose not to check required fields within + // a lazy sub-message. That is, calling IsInitialized() on the outer message + // may return true even if the inner message has missing required fields. + // This is necessary because otherwise the inner message would have to be + // parsed in order to perform the check, defeating the purpose of lazy + // parsing. An implementation which chooses not to check required fields + // must be consistent about it. That is, for any particular sub-message, the + // implementation must either *always* check its required fields, or *never* + // check its required fields, regardless of whether or not the message has + // been parsed. + optional bool lazy = 5 [default = false]; + + // Is this field deprecated? + // Depending on the target platform, this can emit Deprecated annotations + // for accessors, or it will be completely ignored; in the very least, this + // is a formalization for deprecating fields. + optional bool deprecated = 3 [default = false]; + + // For Google-internal migration only. Do not use. + optional bool weak = 10 [default = false]; + + + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; + + reserved 4; // removed jtype +} + +message OneofOptions { + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; +} + +message EnumOptions { + + // Set this option to true to allow mapping different tag names to the same + // value. + optional bool allow_alias = 2; + + // Is this enum deprecated? + // Depending on the target platform, this can emit Deprecated annotations + // for the enum, or it will be completely ignored; in the very least, this + // is a formalization for deprecating enums. + optional bool deprecated = 3 [default = false]; + + reserved 5; // javanano_as_lite + + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; +} + +message EnumValueOptions { + // Is this enum value deprecated? + // Depending on the target platform, this can emit Deprecated annotations + // for the enum value, or it will be completely ignored; in the very least, + // this is a formalization for deprecating enum values. + optional bool deprecated = 1 [default = false]; + + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; +} + +message ServiceOptions { + + // Note: Field numbers 1 through 32 are reserved for Google's internal RPC + // framework. We apologize for hoarding these numbers to ourselves, but + // we were already using them long before we decided to release Protocol + // Buffers. + + // Is this service deprecated? + // Depending on the target platform, this can emit Deprecated annotations + // for the service, or it will be completely ignored; in the very least, + // this is a formalization for deprecating services. + optional bool deprecated = 33 [default = false]; + + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; +} + +message MethodOptions { + + // Note: Field numbers 1 through 32 are reserved for Google's internal RPC + // framework. We apologize for hoarding these numbers to ourselves, but + // we were already using them long before we decided to release Protocol + // Buffers. + + // Is this method deprecated? + // Depending on the target platform, this can emit Deprecated annotations + // for the method, or it will be completely ignored; in the very least, + // this is a formalization for deprecating methods. + optional bool deprecated = 33 [default = false]; + + // Is this method side-effect-free (or safe in HTTP parlance), or idempotent, + // or neither? HTTP based RPC implementation may choose GET verb for safe + // methods, and PUT verb for idempotent methods instead of the default POST. + enum IdempotencyLevel { + IDEMPOTENCY_UNKNOWN = 0; + NO_SIDE_EFFECTS = 1; // implies idempotent + IDEMPOTENT = 2; // idempotent, but may have side effects + } + optional IdempotencyLevel idempotency_level = 34 + [default = IDEMPOTENCY_UNKNOWN]; + + // The parser stores options it doesn't recognize here. See above. + repeated UninterpretedOption uninterpreted_option = 999; + + // Clients can define custom options in extensions of this message. See above. + extensions 1000 to max; +} + + +// A message representing a option the parser does not recognize. This only +// appears in options protos created by the compiler::Parser class. +// DescriptorPool resolves these when building Descriptor objects. Therefore, +// options protos in descriptor objects (e.g. returned by Descriptor::options(), +// or produced by Descriptor::CopyTo()) will never have UninterpretedOptions +// in them. +message UninterpretedOption { + // The name of the uninterpreted option. Each string represents a segment in + // a dot-separated name. is_extension is true iff a segment represents an + // extension (denoted with parentheses in options specs in .proto files). + // E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents + // "foo.(bar.baz).qux". + message NamePart { + required string name_part = 1; + required bool is_extension = 2; + } + repeated NamePart name = 2; + + // The value of the uninterpreted option, in whatever type the tokenizer + // identified it as during parsing. Exactly one of these should be set. + optional string identifier_value = 3; + optional uint64 positive_int_value = 4; + optional int64 negative_int_value = 5; + optional double double_value = 6; + optional bytes string_value = 7; + optional string aggregate_value = 8; +} + +// =================================================================== +// Optional source code info + +// Encapsulates information about the original source file from which a +// FileDescriptorProto was generated. +message SourceCodeInfo { + // A Location identifies a piece of source code in a .proto file which + // corresponds to a particular definition. This information is intended + // to be useful to IDEs, code indexers, documentation generators, and similar + // tools. + // + // For example, say we have a file like: + // message Foo { + // optional string foo = 1; + // } + // Let's look at just the field definition: + // optional string foo = 1; + // ^ ^^ ^^ ^ ^^^ + // a bc de f ghi + // We have the following locations: + // span path represents + // [a,i) [ 4, 0, 2, 0 ] The whole field definition. + // [a,b) [ 4, 0, 2, 0, 4 ] The label (optional). + // [c,d) [ 4, 0, 2, 0, 5 ] The type (string). + // [e,f) [ 4, 0, 2, 0, 1 ] The name (foo). + // [g,h) [ 4, 0, 2, 0, 3 ] The number (1). + // + // Notes: + // - A location may refer to a repeated field itself (i.e. not to any + // particular index within it). This is used whenever a set of elements are + // logically enclosed in a single code segment. For example, an entire + // extend block (possibly containing multiple extension definitions) will + // have an outer location whose path refers to the "extensions" repeated + // field without an index. + // - Multiple locations may have the same path. This happens when a single + // logical declaration is spread out across multiple places. The most + // obvious example is the "extend" block again -- there may be multiple + // extend blocks in the same scope, each of which will have the same path. + // - A location's span is not always a subset of its parent's span. For + // example, the "extendee" of an extension declaration appears at the + // beginning of the "extend" block and is shared by all extensions within + // the block. + // - Just because a location's span is a subset of some other location's span + // does not mean that it is a descendant. For example, a "group" defines + // both a type and a field in a single declaration. Thus, the locations + // corresponding to the type and field and their components will overlap. + // - Code which tries to interpret locations should probably be designed to + // ignore those that it doesn't understand, as more types of locations could + // be recorded in the future. + repeated Location location = 1; + message Location { + // Identifies which part of the FileDescriptorProto was defined at this + // location. + // + // Each element is a field number or an index. They form a path from + // the root FileDescriptorProto to the place where the definition. For + // example, this path: + // [ 4, 3, 2, 7, 1 ] + // refers to: + // file.message_type(3) // 4, 3 + // .field(7) // 2, 7 + // .name() // 1 + // This is because FileDescriptorProto.message_type has field number 4: + // repeated DescriptorProto message_type = 4; + // and DescriptorProto.field has field number 2: + // repeated FieldDescriptorProto field = 2; + // and FieldDescriptorProto.name has field number 1: + // optional string name = 1; + // + // Thus, the above path gives the location of a field name. If we removed + // the last element: + // [ 4, 3, 2, 7 ] + // this path refers to the whole field declaration (from the beginning + // of the label to the terminating semicolon). + repeated int32 path = 1 [packed = true]; + + // Always has exactly three or four elements: start line, start column, + // end line (optional, otherwise assumed same as start line), end column. + // These are packed into a single field for efficiency. Note that line + // and column numbers are zero-based -- typically you will want to add + // 1 to each before displaying to a user. + repeated int32 span = 2 [packed = true]; + + // If this SourceCodeInfo represents a complete declaration, these are any + // comments appearing before and after the declaration which appear to be + // attached to the declaration. + // + // A series of line comments appearing on consecutive lines, with no other + // tokens appearing on those lines, will be treated as a single comment. + // + // leading_detached_comments will keep paragraphs of comments that appear + // before (but not connected to) the current element. Each paragraph, + // separated by empty lines, will be one comment element in the repeated + // field. + // + // Only the comment content is provided; comment markers (e.g. //) are + // stripped out. For block comments, leading whitespace and an asterisk + // will be stripped from the beginning of each line other than the first. + // Newlines are included in the output. + // + // Examples: + // + // optional int32 foo = 1; // Comment attached to foo. + // // Comment attached to bar. + // optional int32 bar = 2; + // + // optional string baz = 3; + // // Comment attached to baz. + // // Another line attached to baz. + // + // // Comment attached to qux. + // // + // // Another line attached to qux. + // optional double qux = 4; + // + // // Detached comment for corge. This is not leading or trailing comments + // // to qux or corge because there are blank lines separating it from + // // both. + // + // // Detached comment for corge paragraph 2. + // + // optional string corge = 5; + // /* Block comment attached + // * to corge. Leading asterisks + // * will be removed. */ + // /* Block comment attached to + // * grault. */ + // optional int32 grault = 6; + // + // // ignored detached comments. + optional string leading_comments = 3; + optional string trailing_comments = 4; + repeated string leading_detached_comments = 6; + } +} + +// Describes the relationship between generated code and its original source +// file. A GeneratedCodeInfo message is associated with only one generated +// source file, but may contain references to different source .proto files. +message GeneratedCodeInfo { + // An Annotation connects some span of text in generated code to an element + // of its generating .proto file. + repeated Annotation annotation = 1; + message Annotation { + // Identifies the element in the original source .proto file. This field + // is formatted the same as SourceCodeInfo.Location.path. + repeated int32 path = 1 [packed = true]; + + // Identifies the filesystem path to the original source .proto. + optional string source_file = 2; + + // Identifies the starting offset in bytes in the generated code + // that relates to the identified object. + optional int32 begin = 3; + + // Identifies the ending offset in bytes in the generated code that + // relates to the identified offset. The end offset should be one past + // the last relevant byte (so the length of the text = end - begin). + optional int32 end = 4; + } +} diff --git a/external/include/google/protobuf/descriptor_database.h b/external/include/google/protobuf/descriptor_database.h new file mode 100644 index 0000000..5fb593e --- /dev/null +++ b/external/include/google/protobuf/descriptor_database.h @@ -0,0 +1,391 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Interface for manipulating databases of descriptors. + +#ifndef GOOGLE_PROTOBUF_DESCRIPTOR_DATABASE_H__ +#define GOOGLE_PROTOBUF_DESCRIPTOR_DATABASE_H__ + +#include +#include +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +// Defined in this file. +class DescriptorDatabase; +class SimpleDescriptorDatabase; +class EncodedDescriptorDatabase; +class DescriptorPoolDatabase; +class MergedDescriptorDatabase; + +// Abstract interface for a database of descriptors. +// +// This is useful if you want to create a DescriptorPool which loads +// descriptors on-demand from some sort of large database. If the database +// is large, it may be inefficient to enumerate every .proto file inside it +// calling DescriptorPool::BuildFile() for each one. Instead, a DescriptorPool +// can be created which wraps a DescriptorDatabase and only builds particular +// descriptors when they are needed. +class PROTOBUF_EXPORT DescriptorDatabase { + public: + inline DescriptorDatabase() {} + virtual ~DescriptorDatabase(); + + // Find a file by file name. Fills in in *output and returns true if found. + // Otherwise, returns false, leaving the contents of *output undefined. + virtual bool FindFileByName(const std::string& filename, + FileDescriptorProto* output) = 0; + + // Find the file that declares the given fully-qualified symbol name. + // If found, fills in *output and returns true, otherwise returns false + // and leaves *output undefined. + virtual bool FindFileContainingSymbol(const std::string& symbol_name, + FileDescriptorProto* output) = 0; + + // Find the file which defines an extension extending the given message type + // with the given field number. If found, fills in *output and returns true, + // otherwise returns false and leaves *output undefined. containing_type + // must be a fully-qualified type name. + virtual bool FindFileContainingExtension(const std::string& containing_type, + int field_number, + FileDescriptorProto* output) = 0; + + // Finds the tag numbers used by all known extensions of + // extendee_type, and appends them to output in an undefined + // order. This method is best-effort: it's not guaranteed that the + // database will find all extensions, and it's not guaranteed that + // FindFileContainingExtension will return true on all of the found + // numbers. Returns true if the search was successful, otherwise + // returns false and leaves output unchanged. + // + // This method has a default implementation that always returns + // false. + virtual bool FindAllExtensionNumbers(const std::string& /* extendee_type */, + std::vector* /* output */) { + return false; + } + + + // Finds the file names and appends them to the output in an + // undefined order. This method is best-effort: it's not guaranteed that the + // database will find all files. Returns true if the database supports + // searching all file names, otherwise returns false and leaves output + // unchanged. + // + // This method has a default implementation that always returns + // false. + virtual bool FindAllFileNames(std::vector* /*output*/) { + return false; + } + + // Finds the package names and appends them to the output in an + // undefined order. This method is best-effort: it's not guaranteed that the + // database will find all packages. Returns true if the database supports + // searching all package names, otherwise returns false and leaves output + // unchanged. + bool FindAllPackageNames(std::vector* output); + + // Finds the message names and appends them to the output in an + // undefined order. This method is best-effort: it's not guaranteed that the + // database will find all messages. Returns true if the database supports + // searching all message names, otherwise returns false and leaves output + // unchanged. + bool FindAllMessageNames(std::vector* output); + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(DescriptorDatabase); +}; + +// A DescriptorDatabase into which you can insert files manually. +// +// FindFileContainingSymbol() is fully-implemented. When you add a file, its +// symbols will be indexed for this purpose. Note that the implementation +// may return false positives, but only if it isn't possible for the symbol +// to be defined in any other file. In particular, if a file defines a symbol +// "Foo", then searching for "Foo.[anything]" will match that file. This way, +// the database does not need to aggressively index all children of a symbol. +// +// FindFileContainingExtension() is mostly-implemented. It works if and only +// if the original FieldDescriptorProto defining the extension has a +// fully-qualified type name in its "extendee" field (i.e. starts with a '.'). +// If the extendee is a relative name, SimpleDescriptorDatabase will not +// attempt to resolve the type, so it will not know what type the extension is +// extending. Therefore, calling FindFileContainingExtension() with the +// extension's containing type will never actually find that extension. Note +// that this is an unlikely problem, as all FileDescriptorProtos created by the +// protocol compiler (as well as ones created by calling +// FileDescriptor::CopyTo()) will always use fully-qualified names for all +// types. You only need to worry if you are constructing FileDescriptorProtos +// yourself, or are calling compiler::Parser directly. +class PROTOBUF_EXPORT SimpleDescriptorDatabase : public DescriptorDatabase { + public: + SimpleDescriptorDatabase(); + ~SimpleDescriptorDatabase() override; + + // Adds the FileDescriptorProto to the database, making a copy. The object + // can be deleted after Add() returns. Returns false if the file conflicted + // with a file already in the database, in which case an error will have + // been written to GOOGLE_LOG(ERROR). + bool Add(const FileDescriptorProto& file); + + // Adds the FileDescriptorProto to the database and takes ownership of it. + bool AddAndOwn(const FileDescriptorProto* file); + + // implements DescriptorDatabase ----------------------------------- + bool FindFileByName(const std::string& filename, + FileDescriptorProto* output) override; + bool FindFileContainingSymbol(const std::string& symbol_name, + FileDescriptorProto* output) override; + bool FindFileContainingExtension(const std::string& containing_type, + int field_number, + FileDescriptorProto* output) override; + bool FindAllExtensionNumbers(const std::string& extendee_type, + std::vector* output) override; + + bool FindAllFileNames(std::vector* output) override; + + private: + // An index mapping file names, symbol names, and extension numbers to + // some sort of values. + template + class DescriptorIndex { + public: + // Helpers to recursively add particular descriptors and all their contents + // to the index. + bool AddFile(const FileDescriptorProto& file, Value value); + bool AddSymbol(const std::string& name, Value value); + bool AddNestedExtensions(const std::string& filename, + const DescriptorProto& message_type, Value value); + bool AddExtension(const std::string& filename, + const FieldDescriptorProto& field, Value value); + + Value FindFile(const std::string& filename); + Value FindSymbol(const std::string& name); + Value FindExtension(const std::string& containing_type, int field_number); + bool FindAllExtensionNumbers(const std::string& containing_type, + std::vector* output); + void FindAllFileNames(std::vector* output); + + private: + std::map by_name_; + std::map by_symbol_; + std::map, Value> by_extension_; + + // Invariant: The by_symbol_ map does not contain any symbols which are + // prefixes of other symbols in the map. For example, "foo.bar" is a + // prefix of "foo.bar.baz" (but is not a prefix of "foo.barbaz"). + // + // This invariant is important because it means that given a symbol name, + // we can find a key in the map which is a prefix of the symbol in O(lg n) + // time, and we know that there is at most one such key. + // + // The prefix lookup algorithm works like so: + // 1) Find the last key in the map which is less than or equal to the + // search key. + // 2) If the found key is a prefix of the search key, then return it. + // Otherwise, there is no match. + // + // I am sure this algorithm has been described elsewhere, but since I + // wasn't able to find it quickly I will instead prove that it works + // myself. The key to the algorithm is that if a match exists, step (1) + // will find it. Proof: + // 1) Define the "search key" to be the key we are looking for, the "found + // key" to be the key found in step (1), and the "match key" to be the + // key which actually matches the search key (i.e. the key we're trying + // to find). + // 2) The found key must be less than or equal to the search key by + // definition. + // 3) The match key must also be less than or equal to the search key + // (because it is a prefix). + // 4) The match key cannot be greater than the found key, because if it + // were, then step (1) of the algorithm would have returned the match + // key instead (since it finds the *greatest* key which is less than or + // equal to the search key). + // 5) Therefore, the found key must be between the match key and the search + // key, inclusive. + // 6) Since the search key must be a sub-symbol of the match key, if it is + // not equal to the match key, then search_key[match_key.size()] must + // be '.'. + // 7) Since '.' sorts before any other character that is valid in a symbol + // name, then if the found key is not equal to the match key, then + // found_key[match_key.size()] must also be '.', because any other value + // would make it sort after the search key. + // 8) Therefore, if the found key is not equal to the match key, then the + // found key must be a sub-symbol of the match key. However, this would + // contradict our map invariant which says that no symbol in the map is + // a sub-symbol of any other. + // 9) Therefore, the found key must match the match key. + // + // The above proof assumes the match key exists. In the case that the + // match key does not exist, then step (1) will return some other symbol. + // That symbol cannot be a super-symbol of the search key since if it were, + // then it would be a match, and we're assuming the match key doesn't exist. + // Therefore, step 2 will correctly return no match. + }; + + DescriptorIndex index_; + std::vector> files_to_delete_; + + // If file is non-NULL, copy it into *output and return true, otherwise + // return false. + bool MaybeCopy(const FileDescriptorProto* file, FileDescriptorProto* output); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(SimpleDescriptorDatabase); +}; + +// Very similar to SimpleDescriptorDatabase, but stores all the descriptors +// as raw bytes and generally tries to use as little memory as possible. +// +// The same caveats regarding FindFileContainingExtension() apply as with +// SimpleDescriptorDatabase. +class PROTOBUF_EXPORT EncodedDescriptorDatabase : public DescriptorDatabase { + public: + EncodedDescriptorDatabase(); + ~EncodedDescriptorDatabase() override; + + // Adds the FileDescriptorProto to the database. The descriptor is provided + // in encoded form. The database does not make a copy of the bytes, nor + // does it take ownership; it's up to the caller to make sure the bytes + // remain valid for the life of the database. Returns false and logs an error + // if the bytes are not a valid FileDescriptorProto or if the file conflicted + // with a file already in the database. + bool Add(const void* encoded_file_descriptor, int size); + + // Like Add(), but makes a copy of the data, so that the caller does not + // need to keep it around. + bool AddCopy(const void* encoded_file_descriptor, int size); + + // Like FindFileContainingSymbol but returns only the name of the file. + bool FindNameOfFileContainingSymbol(const std::string& symbol_name, + std::string* output); + + // implements DescriptorDatabase ----------------------------------- + bool FindFileByName(const std::string& filename, + FileDescriptorProto* output) override; + bool FindFileContainingSymbol(const std::string& symbol_name, + FileDescriptorProto* output) override; + bool FindFileContainingExtension(const std::string& containing_type, + int field_number, + FileDescriptorProto* output) override; + bool FindAllExtensionNumbers(const std::string& extendee_type, + std::vector* output) override; + bool FindAllFileNames(std::vector* output) override; + + private: + class DescriptorIndex; + // Keep DescriptorIndex by pointer to hide the implementation to keep a + // cleaner header. + std::unique_ptr index_; + std::vector files_to_delete_; + + // If encoded_file.first is non-NULL, parse the data into *output and return + // true, otherwise return false. + bool MaybeParse(std::pair encoded_file, + FileDescriptorProto* output); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(EncodedDescriptorDatabase); +}; + +// A DescriptorDatabase that fetches files from a given pool. +class PROTOBUF_EXPORT DescriptorPoolDatabase : public DescriptorDatabase { + public: + explicit DescriptorPoolDatabase(const DescriptorPool& pool); + ~DescriptorPoolDatabase() override; + + // implements DescriptorDatabase ----------------------------------- + bool FindFileByName(const std::string& filename, + FileDescriptorProto* output) override; + bool FindFileContainingSymbol(const std::string& symbol_name, + FileDescriptorProto* output) override; + bool FindFileContainingExtension(const std::string& containing_type, + int field_number, + FileDescriptorProto* output) override; + bool FindAllExtensionNumbers(const std::string& extendee_type, + std::vector* output) override; + + private: + const DescriptorPool& pool_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(DescriptorPoolDatabase); +}; + +// A DescriptorDatabase that wraps two or more others. It first searches the +// first database and, if that fails, tries the second, and so on. +class PROTOBUF_EXPORT MergedDescriptorDatabase : public DescriptorDatabase { + public: + // Merge just two databases. The sources remain property of the caller. + MergedDescriptorDatabase(DescriptorDatabase* source1, + DescriptorDatabase* source2); + // Merge more than two databases. The sources remain property of the caller. + // The vector may be deleted after the constructor returns but the + // DescriptorDatabases need to stick around. + explicit MergedDescriptorDatabase( + const std::vector& sources); + ~MergedDescriptorDatabase() override; + + // implements DescriptorDatabase ----------------------------------- + bool FindFileByName(const std::string& filename, + FileDescriptorProto* output) override; + bool FindFileContainingSymbol(const std::string& symbol_name, + FileDescriptorProto* output) override; + bool FindFileContainingExtension(const std::string& containing_type, + int field_number, + FileDescriptorProto* output) override; + // Merges the results of calling all databases. Returns true iff any + // of the databases returned true. + bool FindAllExtensionNumbers(const std::string& extendee_type, + std::vector* output) override; + + + private: + std::vector sources_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MergedDescriptorDatabase); +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_DESCRIPTOR_DATABASE_H__ diff --git a/external/include/google/protobuf/duration.pb.h b/external/include/google/protobuf/duration.pb.h new file mode 100644 index 0000000..7a5caa0 --- /dev/null +++ b/external/include/google/protobuf/duration.pb.h @@ -0,0 +1,278 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/duration.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fduration_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fduration_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fduration_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fduration_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fduration_2eproto; +PROTOBUF_NAMESPACE_OPEN +class Duration; +struct DurationDefaultTypeInternal; +PROTOBUF_EXPORT extern DurationDefaultTypeInternal _Duration_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Duration* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +// =================================================================== + +class PROTOBUF_EXPORT Duration final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Duration) */ { + public: + inline Duration() : Duration(nullptr) {} + ~Duration() override; + explicit constexpr Duration(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Duration(const Duration& from); + Duration(Duration&& from) noexcept + : Duration() { + *this = ::std::move(from); + } + + inline Duration& operator=(const Duration& from) { + CopyFrom(from); + return *this; + } + inline Duration& operator=(Duration&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Duration& default_instance() { + return *internal_default_instance(); + } + static inline const Duration* internal_default_instance() { + return reinterpret_cast( + &_Duration_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(Duration& a, Duration& b) { + a.Swap(&b); + } + inline void Swap(Duration* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Duration* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Duration* New() const final { + return new Duration(); + } + + Duration* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Duration& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Duration& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Duration* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Duration"; + } + protected: + explicit Duration(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSecondsFieldNumber = 1, + kNanosFieldNumber = 2, + }; + // int64 seconds = 1; + void clear_seconds(); + ::PROTOBUF_NAMESPACE_ID::int64 seconds() const; + void set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value); + private: + ::PROTOBUF_NAMESPACE_ID::int64 _internal_seconds() const; + void _internal_set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value); + public: + + // int32 nanos = 2; + void clear_nanos(); + ::PROTOBUF_NAMESPACE_ID::int32 nanos() const; + void set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_nanos() const; + void _internal_set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Duration) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::int64 seconds_; + ::PROTOBUF_NAMESPACE_ID::int32 nanos_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fduration_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// Duration + +// int64 seconds = 1; +inline void Duration::clear_seconds() { + seconds_ = int64_t{0}; +} +inline ::PROTOBUF_NAMESPACE_ID::int64 Duration::_internal_seconds() const { + return seconds_; +} +inline ::PROTOBUF_NAMESPACE_ID::int64 Duration::seconds() const { + // @@protoc_insertion_point(field_get:google.protobuf.Duration.seconds) + return _internal_seconds(); +} +inline void Duration::_internal_set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value) { + + seconds_ = value; +} +inline void Duration::set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value) { + _internal_set_seconds(value); + // @@protoc_insertion_point(field_set:google.protobuf.Duration.seconds) +} + +// int32 nanos = 2; +inline void Duration::clear_nanos() { + nanos_ = 0; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Duration::_internal_nanos() const { + return nanos_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Duration::nanos() const { + // @@protoc_insertion_point(field_get:google.protobuf.Duration.nanos) + return _internal_nanos(); +} +inline void Duration::_internal_set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value) { + + nanos_ = value; +} +inline void Duration::set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_nanos(value); + // @@protoc_insertion_point(field_set:google.protobuf.Duration.nanos) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fduration_2eproto diff --git a/external/include/google/protobuf/duration.proto b/external/include/google/protobuf/duration.proto new file mode 100644 index 0000000..81c3e36 --- /dev/null +++ b/external/include/google/protobuf/duration.proto @@ -0,0 +1,116 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option cc_enable_arenas = true; +option go_package = "google.golang.org/protobuf/types/known/durationpb"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "DurationProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; + +// A Duration represents a signed, fixed-length span of time represented +// as a count of seconds and fractions of seconds at nanosecond +// resolution. It is independent of any calendar and concepts like "day" +// or "month". It is related to Timestamp in that the difference between +// two Timestamp values is a Duration and it can be added or subtracted +// from a Timestamp. Range is approximately +-10,000 years. +// +// # Examples +// +// Example 1: Compute Duration from two Timestamps in pseudo code. +// +// Timestamp start = ...; +// Timestamp end = ...; +// Duration duration = ...; +// +// duration.seconds = end.seconds - start.seconds; +// duration.nanos = end.nanos - start.nanos; +// +// if (duration.seconds < 0 && duration.nanos > 0) { +// duration.seconds += 1; +// duration.nanos -= 1000000000; +// } else if (duration.seconds > 0 && duration.nanos < 0) { +// duration.seconds -= 1; +// duration.nanos += 1000000000; +// } +// +// Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. +// +// Timestamp start = ...; +// Duration duration = ...; +// Timestamp end = ...; +// +// end.seconds = start.seconds + duration.seconds; +// end.nanos = start.nanos + duration.nanos; +// +// if (end.nanos < 0) { +// end.seconds -= 1; +// end.nanos += 1000000000; +// } else if (end.nanos >= 1000000000) { +// end.seconds += 1; +// end.nanos -= 1000000000; +// } +// +// Example 3: Compute Duration from datetime.timedelta in Python. +// +// td = datetime.timedelta(days=3, minutes=10) +// duration = Duration() +// duration.FromTimedelta(td) +// +// # JSON Mapping +// +// In JSON format, the Duration type is encoded as a string rather than an +// object, where the string ends in the suffix "s" (indicating seconds) and +// is preceded by the number of seconds, with nanoseconds expressed as +// fractional seconds. For example, 3 seconds with 0 nanoseconds should be +// encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should +// be expressed in JSON format as "3.000000001s", and 3 seconds and 1 +// microsecond should be expressed in JSON format as "3.000001s". +// +// +message Duration { + // Signed seconds of the span of time. Must be from -315,576,000,000 + // to +315,576,000,000 inclusive. Note: these bounds are computed from: + // 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years + int64 seconds = 1; + + // Signed fractions of a second at nanosecond resolution of the span + // of time. Durations less than one second are represented with a 0 + // `seconds` field and a positive or negative `nanos` field. For durations + // of one second or more, a non-zero value for the `nanos` field must be + // of the same sign as the `seconds` field. Must be from -999,999,999 + // to +999,999,999 inclusive. + int32 nanos = 2; +} diff --git a/external/include/google/protobuf/dynamic_message.h b/external/include/google/protobuf/dynamic_message.h new file mode 100644 index 0000000..b85e00f --- /dev/null +++ b/external/include/google/protobuf/dynamic_message.h @@ -0,0 +1,225 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Defines an implementation of Message which can emulate types which are not +// known at compile-time. + +#ifndef GOOGLE_PROTOBUF_DYNAMIC_MESSAGE_H__ +#define GOOGLE_PROTOBUF_DYNAMIC_MESSAGE_H__ + +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +namespace google { +namespace protobuf { + +// Defined in other files. +class Descriptor; // descriptor.h +class DescriptorPool; // descriptor.h + +// Constructs implementations of Message which can emulate types which are not +// known at compile-time. +// +// Sometimes you want to be able to manipulate protocol types that you don't +// know about at compile time. It would be nice to be able to construct +// a Message object which implements the message type given by any arbitrary +// Descriptor. DynamicMessage provides this. +// +// As it turns out, a DynamicMessage needs to construct extra +// information about its type in order to operate. Most of this information +// can be shared between all DynamicMessages of the same type. But, caching +// this information in some sort of global map would be a bad idea, since +// the cached information for a particular descriptor could outlive the +// descriptor itself. To avoid this problem, DynamicMessageFactory +// encapsulates this "cache". All DynamicMessages of the same type created +// from the same factory will share the same support data. Any Descriptors +// used with a particular factory must outlive the factory. +class PROTOBUF_EXPORT DynamicMessageFactory : public MessageFactory { + public: + // Construct a DynamicMessageFactory that will search for extensions in + // the DescriptorPool in which the extendee is defined. + DynamicMessageFactory(); + + // Construct a DynamicMessageFactory that will search for extensions in + // the given DescriptorPool. + // + // DEPRECATED: Use CodedInputStream::SetExtensionRegistry() to tell the + // parser to look for extensions in an alternate pool. However, note that + // this is almost never what you want to do. Almost all users should use + // the zero-arg constructor. + DynamicMessageFactory(const DescriptorPool* pool); + + ~DynamicMessageFactory(); + + // Call this to tell the DynamicMessageFactory that if it is given a + // Descriptor d for which: + // d->file()->pool() == DescriptorPool::generated_pool(), + // then it should delegate to MessageFactory::generated_factory() instead + // of constructing a dynamic implementation of the message. In theory there + // is no down side to doing this, so it may become the default in the future. + void SetDelegateToGeneratedFactory(bool enable) { + delegate_to_generated_factory_ = enable; + } + + // implements MessageFactory --------------------------------------- + + // Given a Descriptor, constructs the default (prototype) Message of that + // type. You can then call that message's New() method to construct a + // mutable message of that type. + // + // Calling this method twice with the same Descriptor returns the same + // object. The returned object remains property of the factory and will + // be destroyed when the factory is destroyed. Also, any objects created + // by calling the prototype's New() method share some data with the + // prototype, so these must be destroyed before the DynamicMessageFactory + // is destroyed. + // + // The given descriptor must outlive the returned message, and hence must + // outlive the DynamicMessageFactory. + // + // The method is thread-safe. + const Message* GetPrototype(const Descriptor* type) override; + + private: + const DescriptorPool* pool_; + bool delegate_to_generated_factory_; + + struct TypeInfo; + std::unordered_map prototypes_; + mutable internal::WrappedMutex prototypes_mutex_; + + friend class DynamicMessage; + const Message* GetPrototypeNoLock(const Descriptor* type); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(DynamicMessageFactory); +}; + +// Helper for computing a sorted list of map entries via reflection. +class PROTOBUF_EXPORT DynamicMapSorter { + public: + static std::vector Sort(const Message& message, int map_size, + const Reflection* reflection, + const FieldDescriptor* field) { + std::vector result; + result.reserve(map_size); + RepeatedFieldRef map_field = + reflection->GetRepeatedFieldRef(message, field); + for (auto it = map_field.begin(); it != map_field.end(); ++it) { + result.push_back(&*it); + } + MapEntryMessageComparator comparator(field->message_type()); + std::stable_sort(result.begin(), result.end(), comparator); + // Complain if the keys aren't in ascending order. +#ifndef NDEBUG + for (size_t j = 1; j < static_cast(map_size); j++) { + if (!comparator(result[j - 1], result[j])) { + GOOGLE_LOG(ERROR) << (comparator(result[j], result[j - 1]) + ? "internal error in map key sorting" + : "map keys are not unique"); + } + } +#endif + return result; + } + + private: + class PROTOBUF_EXPORT MapEntryMessageComparator { + public: + explicit MapEntryMessageComparator(const Descriptor* descriptor) + : field_(descriptor->field(0)) {} + + bool operator()(const Message* a, const Message* b) { + const Reflection* reflection = a->GetReflection(); + switch (field_->cpp_type()) { + case FieldDescriptor::CPPTYPE_BOOL: { + bool first = reflection->GetBool(*a, field_); + bool second = reflection->GetBool(*b, field_); + return first < second; + } + case FieldDescriptor::CPPTYPE_INT32: { + int32 first = reflection->GetInt32(*a, field_); + int32 second = reflection->GetInt32(*b, field_); + return first < second; + } + case FieldDescriptor::CPPTYPE_INT64: { + int64 first = reflection->GetInt64(*a, field_); + int64 second = reflection->GetInt64(*b, field_); + return first < second; + } + case FieldDescriptor::CPPTYPE_UINT32: { + uint32 first = reflection->GetUInt32(*a, field_); + uint32 second = reflection->GetUInt32(*b, field_); + return first < second; + } + case FieldDescriptor::CPPTYPE_UINT64: { + uint64 first = reflection->GetUInt64(*a, field_); + uint64 second = reflection->GetUInt64(*b, field_); + return first < second; + } + case FieldDescriptor::CPPTYPE_STRING: { + std::string first = reflection->GetString(*a, field_); + std::string second = reflection->GetString(*b, field_); + return first < second; + } + default: + GOOGLE_LOG(DFATAL) << "Invalid key for map field."; + return true; + } + } + + private: + const FieldDescriptor* field_; + }; +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_DYNAMIC_MESSAGE_H__ diff --git a/external/include/google/protobuf/empty.pb.h b/external/include/google/protobuf/empty.pb.h new file mode 100644 index 0000000..64a3bde --- /dev/null +++ b/external/include/google/protobuf/empty.pb.h @@ -0,0 +1,214 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/empty.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fempty_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fempty_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fempty_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fempty_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fempty_2eproto; +PROTOBUF_NAMESPACE_OPEN +class Empty; +struct EmptyDefaultTypeInternal; +PROTOBUF_EXPORT extern EmptyDefaultTypeInternal _Empty_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Empty* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +// =================================================================== + +class PROTOBUF_EXPORT Empty final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Empty) */ { + public: + inline Empty() : Empty(nullptr) {} + ~Empty() override; + explicit constexpr Empty(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Empty(const Empty& from); + Empty(Empty&& from) noexcept + : Empty() { + *this = ::std::move(from); + } + + inline Empty& operator=(const Empty& from) { + CopyFrom(from); + return *this; + } + inline Empty& operator=(Empty&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Empty& default_instance() { + return *internal_default_instance(); + } + static inline const Empty* internal_default_instance() { + return reinterpret_cast( + &_Empty_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(Empty& a, Empty& b) { + a.Swap(&b); + } + inline void Swap(Empty* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Empty* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Empty* New() const final { + return new Empty(); + } + + Empty* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Empty& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Empty& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Empty* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Empty"; + } + protected: + explicit Empty(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:google.protobuf.Empty) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fempty_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// Empty + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fempty_2eproto diff --git a/external/include/google/protobuf/empty.proto b/external/include/google/protobuf/empty.proto new file mode 100644 index 0000000..5f992de --- /dev/null +++ b/external/include/google/protobuf/empty.proto @@ -0,0 +1,52 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option go_package = "google.golang.org/protobuf/types/known/emptypb"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "EmptyProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; +option cc_enable_arenas = true; + +// A generic empty message that you can re-use to avoid defining duplicated +// empty messages in your APIs. A typical example is to use it as the request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); +// } +// +// The JSON representation for `Empty` is empty JSON object `{}`. +message Empty {} diff --git a/external/include/google/protobuf/extension_set.h b/external/include/google/protobuf/extension_set.h new file mode 100644 index 0000000..e3d1669 --- /dev/null +++ b/external/include/google/protobuf/extension_set.h @@ -0,0 +1,1610 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This header is logically internal, but is made public because it is used +// from protocol-compiler-generated code, which may reside in other components. + +#ifndef GOOGLE_PROTOBUF_EXTENSION_SET_H__ +#define GOOGLE_PROTOBUF_EXTENSION_SET_H__ + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +class Arena; +class Descriptor; // descriptor.h +class FieldDescriptor; // descriptor.h +class DescriptorPool; // descriptor.h +class MessageLite; // message_lite.h +class Message; // message.h +class MessageFactory; // message.h +class UnknownFieldSet; // unknown_field_set.h +namespace internal { +class FieldSkipper; // wire_format_lite.h +} // namespace internal +} // namespace protobuf +} // namespace google + +namespace google { +namespace protobuf { +namespace internal { + +class InternalMetadata; + +// Used to store values of type WireFormatLite::FieldType without having to +// #include wire_format_lite.h. Also, ensures that we use only one byte to +// store these values, which is important to keep the layout of +// ExtensionSet::Extension small. +typedef uint8 FieldType; + +// A function which, given an integer value, returns true if the number +// matches one of the defined values for the corresponding enum type. This +// is used with RegisterEnumExtension, below. +typedef bool EnumValidityFunc(int number); + +// Version of the above which takes an argument. This is needed to deal with +// extensions that are not compiled in. +typedef bool EnumValidityFuncWithArg(const void* arg, int number); + +// Information about a registered extension. +struct ExtensionInfo { + inline ExtensionInfo() {} + inline ExtensionInfo(FieldType type_param, bool isrepeated, bool ispacked) + : type(type_param), + is_repeated(isrepeated), + is_packed(ispacked), + descriptor(NULL) {} + + FieldType type; + bool is_repeated; + bool is_packed; + + struct EnumValidityCheck { + EnumValidityFuncWithArg* func; + const void* arg; + }; + + struct MessageInfo { + const MessageLite* prototype; + }; + + union { + EnumValidityCheck enum_validity_check; + MessageInfo message_info; + }; + + // The descriptor for this extension, if one exists and is known. May be + // NULL. Must not be NULL if the descriptor for the extension does not + // live in the same pool as the descriptor for the containing type. + const FieldDescriptor* descriptor; +}; + +// Abstract interface for an object which looks up extension definitions. Used +// when parsing. +class PROTOBUF_EXPORT ExtensionFinder { + public: + virtual ~ExtensionFinder(); + + // Find the extension with the given containing type and number. + virtual bool Find(int number, ExtensionInfo* output) = 0; +}; + +// Implementation of ExtensionFinder which finds extensions defined in .proto +// files which have been compiled into the binary. +class PROTOBUF_EXPORT GeneratedExtensionFinder : public ExtensionFinder { + public: + GeneratedExtensionFinder(const MessageLite* containing_type) + : containing_type_(containing_type) {} + ~GeneratedExtensionFinder() override {} + + // Returns true and fills in *output if found, otherwise returns false. + bool Find(int number, ExtensionInfo* output) override; + + private: + const MessageLite* containing_type_; +}; + +// A FieldSkipper used for parsing MessageSet. +class MessageSetFieldSkipper; + +// Note: extension_set_heavy.cc defines DescriptorPoolExtensionFinder for +// finding extensions from a DescriptorPool. + +// This is an internal helper class intended for use within the protocol buffer +// library and generated classes. Clients should not use it directly. Instead, +// use the generated accessors such as GetExtension() of the class being +// extended. +// +// This class manages extensions for a protocol message object. The +// message's HasExtension(), GetExtension(), MutableExtension(), and +// ClearExtension() methods are just thin wrappers around the embedded +// ExtensionSet. When parsing, if a tag number is encountered which is +// inside one of the message type's extension ranges, the tag is passed +// off to the ExtensionSet for parsing. Etc. +class PROTOBUF_EXPORT ExtensionSet { + public: + constexpr ExtensionSet(); + explicit ExtensionSet(Arena* arena); + ~ExtensionSet(); + + // These are called at startup by protocol-compiler-generated code to + // register known extensions. The registrations are used by ParseField() + // to look up extensions for parsed field numbers. Note that dynamic parsing + // does not use ParseField(); only protocol-compiler-generated parsing + // methods do. + static void RegisterExtension(const MessageLite* containing_type, int number, + FieldType type, bool is_repeated, + bool is_packed); + static void RegisterEnumExtension(const MessageLite* containing_type, + int number, FieldType type, + bool is_repeated, bool is_packed, + EnumValidityFunc* is_valid); + static void RegisterMessageExtension(const MessageLite* containing_type, + int number, FieldType type, + bool is_repeated, bool is_packed, + const MessageLite* prototype); + + // ================================================================= + + // Add all fields which are currently present to the given vector. This + // is useful to implement Reflection::ListFields(). + void AppendToList(const Descriptor* containing_type, + const DescriptorPool* pool, + std::vector* output) const; + + // ================================================================= + // Accessors + // + // Generated message classes include type-safe templated wrappers around + // these methods. Generally you should use those rather than call these + // directly, unless you are doing low-level memory management. + // + // When calling any of these accessors, the extension number requested + // MUST exist in the DescriptorPool provided to the constructor. Otherwise, + // the method will fail an assert. Normally, though, you would not call + // these directly; you would either call the generated accessors of your + // message class (e.g. GetExtension()) or you would call the accessors + // of the reflection interface. In both cases, it is impossible to + // trigger this assert failure: the generated accessors only accept + // linked-in extension types as parameters, while the Reflection interface + // requires you to provide the FieldDescriptor describing the extension. + // + // When calling any of these accessors, a protocol-compiler-generated + // implementation of the extension corresponding to the number MUST + // be linked in, and the FieldDescriptor used to refer to it MUST be + // the one generated by that linked-in code. Otherwise, the method will + // die on an assert failure. The message objects returned by the message + // accessors are guaranteed to be of the correct linked-in type. + // + // These methods pretty much match Reflection except that: + // - They're not virtual. + // - They identify fields by number rather than FieldDescriptors. + // - They identify enum values using integers rather than descriptors. + // - Strings provide Mutable() in addition to Set() accessors. + + bool Has(int number) const; + int ExtensionSize(int number) const; // Size of a repeated extension. + int NumExtensions() const; // The number of extensions + FieldType ExtensionType(int number) const; + void ClearExtension(int number); + + // singular fields ------------------------------------------------- + + int32 GetInt32(int number, int32 default_value) const; + int64 GetInt64(int number, int64 default_value) const; + uint32 GetUInt32(int number, uint32 default_value) const; + uint64 GetUInt64(int number, uint64 default_value) const; + float GetFloat(int number, float default_value) const; + double GetDouble(int number, double default_value) const; + bool GetBool(int number, bool default_value) const; + int GetEnum(int number, int default_value) const; + const std::string& GetString(int number, + const std::string& default_value) const; + const MessageLite& GetMessage(int number, + const MessageLite& default_value) const; + const MessageLite& GetMessage(int number, const Descriptor* message_type, + MessageFactory* factory) const; + + // |descriptor| may be NULL so long as it is known that the descriptor for + // the extension lives in the same pool as the descriptor for the containing + // type. +#define desc const FieldDescriptor* descriptor // avoid line wrapping + void SetInt32(int number, FieldType type, int32 value, desc); + void SetInt64(int number, FieldType type, int64 value, desc); + void SetUInt32(int number, FieldType type, uint32 value, desc); + void SetUInt64(int number, FieldType type, uint64 value, desc); + void SetFloat(int number, FieldType type, float value, desc); + void SetDouble(int number, FieldType type, double value, desc); + void SetBool(int number, FieldType type, bool value, desc); + void SetEnum(int number, FieldType type, int value, desc); + void SetString(int number, FieldType type, std::string value, desc); + std::string* MutableString(int number, FieldType type, desc); + MessageLite* MutableMessage(int number, FieldType type, + const MessageLite& prototype, desc); + MessageLite* MutableMessage(const FieldDescriptor* descriptor, + MessageFactory* factory); + // Adds the given message to the ExtensionSet, taking ownership of the + // message object. Existing message with the same number will be deleted. + // If "message" is NULL, this is equivalent to "ClearExtension(number)". + void SetAllocatedMessage(int number, FieldType type, + const FieldDescriptor* descriptor, + MessageLite* message); + void UnsafeArenaSetAllocatedMessage(int number, FieldType type, + const FieldDescriptor* descriptor, + MessageLite* message); + PROTOBUF_MUST_USE_RESULT MessageLite* ReleaseMessage( + int number, const MessageLite& prototype); + MessageLite* UnsafeArenaReleaseMessage(int number, + const MessageLite& prototype); + + PROTOBUF_MUST_USE_RESULT MessageLite* ReleaseMessage( + const FieldDescriptor* descriptor, MessageFactory* factory); + MessageLite* UnsafeArenaReleaseMessage(const FieldDescriptor* descriptor, + MessageFactory* factory); +#undef desc + Arena* GetArena() const { return arena_; } + + // repeated fields ------------------------------------------------- + + // Fetches a RepeatedField extension by number; returns |default_value| + // if no such extension exists. User should not touch this directly; it is + // used by the GetRepeatedExtension() method. + const void* GetRawRepeatedField(int number, const void* default_value) const; + // Fetches a mutable version of a RepeatedField extension by number, + // instantiating one if none exists. Similar to above, user should not use + // this directly; it underlies MutableRepeatedExtension(). + void* MutableRawRepeatedField(int number, FieldType field_type, bool packed, + const FieldDescriptor* desc); + + // This is an overload of MutableRawRepeatedField to maintain compatibility + // with old code using a previous API. This version of + // MutableRawRepeatedField() will GOOGLE_CHECK-fail on a missing extension. + // (E.g.: borg/clients/internal/proto1/proto2_reflection.cc.) + void* MutableRawRepeatedField(int number); + + int32 GetRepeatedInt32(int number, int index) const; + int64 GetRepeatedInt64(int number, int index) const; + uint32 GetRepeatedUInt32(int number, int index) const; + uint64 GetRepeatedUInt64(int number, int index) const; + float GetRepeatedFloat(int number, int index) const; + double GetRepeatedDouble(int number, int index) const; + bool GetRepeatedBool(int number, int index) const; + int GetRepeatedEnum(int number, int index) const; + const std::string& GetRepeatedString(int number, int index) const; + const MessageLite& GetRepeatedMessage(int number, int index) const; + + void SetRepeatedInt32(int number, int index, int32 value); + void SetRepeatedInt64(int number, int index, int64 value); + void SetRepeatedUInt32(int number, int index, uint32 value); + void SetRepeatedUInt64(int number, int index, uint64 value); + void SetRepeatedFloat(int number, int index, float value); + void SetRepeatedDouble(int number, int index, double value); + void SetRepeatedBool(int number, int index, bool value); + void SetRepeatedEnum(int number, int index, int value); + void SetRepeatedString(int number, int index, std::string value); + std::string* MutableRepeatedString(int number, int index); + MessageLite* MutableRepeatedMessage(int number, int index); + +#define desc const FieldDescriptor* descriptor // avoid line wrapping + void AddInt32(int number, FieldType type, bool packed, int32 value, desc); + void AddInt64(int number, FieldType type, bool packed, int64 value, desc); + void AddUInt32(int number, FieldType type, bool packed, uint32 value, desc); + void AddUInt64(int number, FieldType type, bool packed, uint64 value, desc); + void AddFloat(int number, FieldType type, bool packed, float value, desc); + void AddDouble(int number, FieldType type, bool packed, double value, desc); + void AddBool(int number, FieldType type, bool packed, bool value, desc); + void AddEnum(int number, FieldType type, bool packed, int value, desc); + void AddString(int number, FieldType type, std::string value, desc); + std::string* AddString(int number, FieldType type, desc); + MessageLite* AddMessage(int number, FieldType type, + const MessageLite& prototype, desc); + MessageLite* AddMessage(const FieldDescriptor* descriptor, + MessageFactory* factory); + void AddAllocatedMessage(const FieldDescriptor* descriptor, + MessageLite* new_entry); +#undef desc + + void RemoveLast(int number); + PROTOBUF_MUST_USE_RESULT MessageLite* ReleaseLast(int number); + void SwapElements(int number, int index1, int index2); + + // ----------------------------------------------------------------- + // TODO(kenton): Hardcore memory management accessors + + // ================================================================= + // convenience methods for implementing methods of Message + // + // These could all be implemented in terms of the other methods of this + // class, but providing them here helps keep the generated code size down. + + void Clear(); + void MergeFrom(const ExtensionSet& other); + void Swap(ExtensionSet* other); + void InternalSwap(ExtensionSet* other); + void SwapExtension(ExtensionSet* other, int number); + void UnsafeShallowSwapExtension(ExtensionSet* other, int number); + bool IsInitialized() const; + + // Parses a single extension from the input. The input should start out + // positioned immediately after the tag. + bool ParseField(uint32 tag, io::CodedInputStream* input, + ExtensionFinder* extension_finder, + FieldSkipper* field_skipper); + + // Specific versions for lite or full messages (constructs the appropriate + // FieldSkipper automatically). |containing_type| is the default + // instance for the containing message; it is used only to look up the + // extension by number. See RegisterExtension(), above. Unlike the other + // methods of ExtensionSet, this only works for generated message types -- + // it looks up extensions registered using RegisterExtension(). + bool ParseField(uint32 tag, io::CodedInputStream* input, + const MessageLite* containing_type); + bool ParseField(uint32 tag, io::CodedInputStream* input, + const Message* containing_type, + UnknownFieldSet* unknown_fields); + bool ParseField(uint32 tag, io::CodedInputStream* input, + const MessageLite* containing_type, + io::CodedOutputStream* unknown_fields); + + // Lite parser + const char* ParseField(uint64 tag, const char* ptr, + const MessageLite* containing_type, + internal::InternalMetadata* metadata, + internal::ParseContext* ctx); + // Full parser + const char* ParseField(uint64 tag, const char* ptr, + const Message* containing_type, + internal::InternalMetadata* metadata, + internal::ParseContext* ctx); + template + const char* ParseMessageSet(const char* ptr, const Msg* containing_type, + InternalMetadata* metadata, + internal::ParseContext* ctx) { + struct MessageSetItem { + const char* _InternalParse(const char* ptr, ParseContext* ctx) { + return me->ParseMessageSetItem(ptr, containing_type, metadata, ctx); + } + ExtensionSet* me; + const Msg* containing_type; + InternalMetadata* metadata; + } item{this, containing_type, metadata}; + while (!ctx->Done(&ptr)) { + uint32 tag; + ptr = ReadTag(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + if (tag == WireFormatLite::kMessageSetItemStartTag) { + ptr = ctx->ParseGroup(&item, ptr, tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + } else { + if (tag == 0 || (tag & 7) == 4) { + ctx->SetLastTag(tag); + return ptr; + } + ptr = ParseField(tag, ptr, containing_type, metadata, ctx); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + } + } + return ptr; + } + + // Parse an entire message in MessageSet format. Such messages have no + // fields, only extensions. + bool ParseMessageSetLite(io::CodedInputStream* input, + ExtensionFinder* extension_finder, + FieldSkipper* field_skipper); + bool ParseMessageSet(io::CodedInputStream* input, + ExtensionFinder* extension_finder, + MessageSetFieldSkipper* field_skipper); + + // Specific versions for lite or full messages (constructs the appropriate + // FieldSkipper automatically). + bool ParseMessageSet(io::CodedInputStream* input, + const MessageLite* containing_type, + std::string* unknown_fields); + bool ParseMessageSet(io::CodedInputStream* input, + const Message* containing_type, + UnknownFieldSet* unknown_fields); + + // Write all extension fields with field numbers in the range + // [start_field_number, end_field_number) + // to the output stream, using the cached sizes computed when ByteSize() was + // last called. Note that the range bounds are inclusive-exclusive. + void SerializeWithCachedSizes(int start_field_number, int end_field_number, + io::CodedOutputStream* output) const { + output->SetCur(_InternalSerialize(start_field_number, end_field_number, + output->Cur(), output->EpsCopy())); + } + + // Same as SerializeWithCachedSizes, but without any bounds checking. + // The caller must ensure that target has sufficient capacity for the + // serialized extensions. + // + // Returns a pointer past the last written byte. + uint8* _InternalSerialize(int start_field_number, int end_field_number, + uint8* target, + io::EpsCopyOutputStream* stream) const { + if (flat_size_ == 0) { + assert(!is_large()); + return target; + } + return _InternalSerializeImpl(start_field_number, end_field_number, target, + stream); + } + + // Like above but serializes in MessageSet format. + void SerializeMessageSetWithCachedSizes(io::CodedOutputStream* output) const { + output->SetCur(InternalSerializeMessageSetWithCachedSizesToArray( + output->Cur(), output->EpsCopy())); + } + uint8* InternalSerializeMessageSetWithCachedSizesToArray( + uint8* target, io::EpsCopyOutputStream* stream) const; + + // For backward-compatibility, versions of two of the above methods that + // serialize deterministically iff SetDefaultSerializationDeterministic() + // has been called. + uint8* SerializeWithCachedSizesToArray(int start_field_number, + int end_field_number, + uint8* target) const; + uint8* SerializeMessageSetWithCachedSizesToArray(uint8* target) const; + + // Returns the total serialized size of all the extensions. + size_t ByteSize() const; + + // Like ByteSize() but uses MessageSet format. + size_t MessageSetByteSize() const; + + // Returns (an estimate of) the total number of bytes used for storing the + // extensions in memory, excluding sizeof(*this). If the ExtensionSet is + // for a lite message (and thus possibly contains lite messages), the results + // are undefined (might work, might crash, might corrupt data, might not even + // be linked in). It's up to the protocol compiler to avoid calling this on + // such ExtensionSets (easy enough since lite messages don't implement + // SpaceUsed()). + size_t SpaceUsedExcludingSelfLong() const; + + // This method just calls SpaceUsedExcludingSelfLong() but it can not be + // inlined because the definition of SpaceUsedExcludingSelfLong() is not + // included in lite runtime and when an inline method refers to it MSVC + // will complain about unresolved symbols when building the lite runtime + // as .dll. + int SpaceUsedExcludingSelf() const; + + private: + // Implementation of _InternalSerialize for non-empty map_. + uint8* _InternalSerializeImpl(int start_field_number, int end_field_number, + uint8* target, + io::EpsCopyOutputStream* stream) const; + // Interface of a lazily parsed singular message extension. + class PROTOBUF_EXPORT LazyMessageExtension { + public: + LazyMessageExtension() {} + virtual ~LazyMessageExtension() {} + + virtual LazyMessageExtension* New(Arena* arena) const = 0; + virtual const MessageLite& GetMessage( + const MessageLite& prototype) const = 0; + virtual MessageLite* MutableMessage(const MessageLite& prototype) = 0; + virtual void SetAllocatedMessage(MessageLite* message) = 0; + virtual void UnsafeArenaSetAllocatedMessage(MessageLite* message) = 0; + virtual PROTOBUF_MUST_USE_RESULT MessageLite* ReleaseMessage( + const MessageLite& prototype) = 0; + virtual MessageLite* UnsafeArenaReleaseMessage( + const MessageLite& prototype) = 0; + + virtual bool IsInitialized() const = 0; + + PROTOBUF_DEPRECATED_MSG("Please use ByteSizeLong() instead") + virtual int ByteSize() const { return internal::ToIntSize(ByteSizeLong()); } + virtual size_t ByteSizeLong() const = 0; + virtual size_t SpaceUsedLong() const = 0; + + virtual void MergeFrom(const LazyMessageExtension& other) = 0; + virtual void Clear() = 0; + + virtual bool ReadMessage(const MessageLite& prototype, + io::CodedInputStream* input) = 0; + virtual const char* _InternalParse(const char* ptr, ParseContext* ctx) = 0; + virtual uint8* WriteMessageToArray( + int number, uint8* target, io::EpsCopyOutputStream* stream) const = 0; + + private: + virtual void UnusedKeyMethod(); // Dummy key method to avoid weak vtable. + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(LazyMessageExtension); + }; + struct Extension { + // The order of these fields packs Extension into 24 bytes when using 8 + // byte alignment. Consider this when adding or removing fields here. + union { + int32 int32_value; + int64 int64_value; + uint32 uint32_value; + uint64 uint64_value; + float float_value; + double double_value; + bool bool_value; + int enum_value; + std::string* string_value; + MessageLite* message_value; + LazyMessageExtension* lazymessage_value; + + RepeatedField* repeated_int32_value; + RepeatedField* repeated_int64_value; + RepeatedField* repeated_uint32_value; + RepeatedField* repeated_uint64_value; + RepeatedField* repeated_float_value; + RepeatedField* repeated_double_value; + RepeatedField* repeated_bool_value; + RepeatedField* repeated_enum_value; + RepeatedPtrField* repeated_string_value; + RepeatedPtrField* repeated_message_value; + }; + + FieldType type; + bool is_repeated; + + // For singular types, indicates if the extension is "cleared". This + // happens when an extension is set and then later cleared by the caller. + // We want to keep the Extension object around for reuse, so instead of + // removing it from the map, we just set is_cleared = true. This has no + // meaning for repeated types; for those, the size of the RepeatedField + // simply becomes zero when cleared. + bool is_cleared : 4; + + // For singular message types, indicates whether lazy parsing is enabled + // for this extension. This field is only valid when type == TYPE_MESSAGE + // and !is_repeated because we only support lazy parsing for singular + // message types currently. If is_lazy = true, the extension is stored in + // lazymessage_value. Otherwise, the extension will be message_value. + bool is_lazy : 4; + + // For repeated types, this indicates if the [packed=true] option is set. + bool is_packed; + + // For packed fields, the size of the packed data is recorded here when + // ByteSize() is called then used during serialization. + // TODO(kenton): Use atomic when C++ supports it. + mutable int cached_size; + + // The descriptor for this extension, if one exists and is known. May be + // NULL. Must not be NULL if the descriptor for the extension does not + // live in the same pool as the descriptor for the containing type. + const FieldDescriptor* descriptor; + + // Some helper methods for operations on a single Extension. + uint8* InternalSerializeFieldWithCachedSizesToArray( + int number, uint8* target, io::EpsCopyOutputStream* stream) const; + uint8* InternalSerializeMessageSetItemWithCachedSizesToArray( + int number, uint8* target, io::EpsCopyOutputStream* stream) const; + size_t ByteSize(int number) const; + size_t MessageSetItemByteSize(int number) const; + void Clear(); + int GetSize() const; + void Free(); + size_t SpaceUsedExcludingSelfLong() const; + bool IsInitialized() const; + }; + + // The Extension struct is small enough to be passed by value, so we use it + // directly as the value type in mappings rather than use pointers. We use + // sorted maps rather than hash-maps because we expect most ExtensionSets will + // only contain a small number of extension. Also, we want AppendToList and + // deterministic serialization to order fields by field number. + + struct KeyValue { + int first; + Extension second; + + struct FirstComparator { + bool operator()(const KeyValue& lhs, const KeyValue& rhs) const { + return lhs.first < rhs.first; + } + bool operator()(const KeyValue& lhs, int key) const { + return lhs.first < key; + } + bool operator()(int key, const KeyValue& rhs) const { + return key < rhs.first; + } + }; + }; + + typedef std::map LargeMap; + + // Wrapper API that switches between flat-map and LargeMap. + + // Finds a key (if present) in the ExtensionSet. + const Extension* FindOrNull(int key) const; + Extension* FindOrNull(int key); + + // Helper-functions that only inspect the LargeMap. + const Extension* FindOrNullInLargeMap(int key) const; + Extension* FindOrNullInLargeMap(int key); + + // Inserts a new (key, Extension) into the ExtensionSet (and returns true), or + // finds the already-existing Extension for that key (returns false). + // The Extension* will point to the new-or-found Extension. + std::pair Insert(int key); + + // Grows the flat_capacity_. + // If flat_capacity_ > kMaximumFlatCapacity, converts to LargeMap. + void GrowCapacity(size_t minimum_new_capacity); + static constexpr uint16 kMaximumFlatCapacity = 256; + bool is_large() const { return flat_capacity_ > kMaximumFlatCapacity; } + + // Removes a key from the ExtensionSet. + void Erase(int key); + + size_t Size() const { + return PROTOBUF_PREDICT_FALSE(is_large()) ? map_.large->size() : flat_size_; + } + + // Similar to std::for_each. + // Each Iterator is decomposed into ->first and ->second fields, so + // that the KeyValueFunctor can be agnostic vis-a-vis KeyValue-vs-std::pair. + template + static KeyValueFunctor ForEach(Iterator begin, Iterator end, + KeyValueFunctor func) { + for (Iterator it = begin; it != end; ++it) func(it->first, it->second); + return std::move(func); + } + + // Applies a functor to the pairs in sorted order. + template + KeyValueFunctor ForEach(KeyValueFunctor func) { + if (PROTOBUF_PREDICT_FALSE(is_large())) { + return ForEach(map_.large->begin(), map_.large->end(), std::move(func)); + } + return ForEach(flat_begin(), flat_end(), std::move(func)); + } + + // Applies a functor to the pairs in sorted order. + template + KeyValueFunctor ForEach(KeyValueFunctor func) const { + if (PROTOBUF_PREDICT_FALSE(is_large())) { + return ForEach(map_.large->begin(), map_.large->end(), std::move(func)); + } + return ForEach(flat_begin(), flat_end(), std::move(func)); + } + + // Merges existing Extension from other_extension + void InternalExtensionMergeFrom(int number, const Extension& other_extension); + + // Returns true and fills field_number and extension if extension is found. + // Note to support packed repeated field compatibility, it also fills whether + // the tag on wire is packed, which can be different from + // extension->is_packed (whether packed=true is specified). + bool FindExtensionInfoFromTag(uint32 tag, ExtensionFinder* extension_finder, + int* field_number, ExtensionInfo* extension, + bool* was_packed_on_wire); + + // Returns true and fills extension if extension is found. + // Note to support packed repeated field compatibility, it also fills whether + // the tag on wire is packed, which can be different from + // extension->is_packed (whether packed=true is specified). + bool FindExtensionInfoFromFieldNumber(int wire_type, int field_number, + ExtensionFinder* extension_finder, + ExtensionInfo* extension, + bool* was_packed_on_wire); + + // Parses a single extension from the input. The input should start out + // positioned immediately after the wire tag. This method is called in + // ParseField() after field number and was_packed_on_wire is extracted from + // the wire tag and ExtensionInfo is found by the field number. + bool ParseFieldWithExtensionInfo(int field_number, bool was_packed_on_wire, + const ExtensionInfo& extension, + io::CodedInputStream* input, + FieldSkipper* field_skipper); + + // Like ParseField(), but this method may parse singular message extensions + // lazily depending on the value of FLAGS_eagerly_parse_message_sets. + bool ParseFieldMaybeLazily(int wire_type, int field_number, + io::CodedInputStream* input, + ExtensionFinder* extension_finder, + MessageSetFieldSkipper* field_skipper); + + // Gets the extension with the given number, creating it if it does not + // already exist. Returns true if the extension did not already exist. + bool MaybeNewExtension(int number, const FieldDescriptor* descriptor, + Extension** result); + + // Gets the repeated extension for the given descriptor, creating it if + // it does not exist. + Extension* MaybeNewRepeatedExtension(const FieldDescriptor* descriptor); + + // Parse a single MessageSet item -- called just after the item group start + // tag has been read. + bool ParseMessageSetItemLite(io::CodedInputStream* input, + ExtensionFinder* extension_finder, + FieldSkipper* field_skipper); + // Parse a single MessageSet item -- called just after the item group start + // tag has been read. + bool ParseMessageSetItem(io::CodedInputStream* input, + ExtensionFinder* extension_finder, + MessageSetFieldSkipper* field_skipper); + + bool FindExtension(int wire_type, uint32 field, + const MessageLite* containing_type, + const internal::ParseContext* /*ctx*/, + ExtensionInfo* extension, bool* was_packed_on_wire) { + GeneratedExtensionFinder finder(containing_type); + return FindExtensionInfoFromFieldNumber(wire_type, field, &finder, + extension, was_packed_on_wire); + } + inline bool FindExtension(int wire_type, uint32 field, + const Message* containing_type, + const internal::ParseContext* ctx, + ExtensionInfo* extension, bool* was_packed_on_wire); + // Used for MessageSet only + const char* ParseFieldMaybeLazily(uint64 tag, const char* ptr, + const MessageLite* containing_type, + internal::InternalMetadata* metadata, + internal::ParseContext* ctx) { + // Lite MessageSet doesn't implement lazy. + return ParseField(tag, ptr, containing_type, metadata, ctx); + } + const char* ParseFieldMaybeLazily(uint64 tag, const char* ptr, + const Message* containing_type, + internal::InternalMetadata* metadata, + internal::ParseContext* ctx); + const char* ParseMessageSetItem(const char* ptr, + const MessageLite* containing_type, + internal::InternalMetadata* metadata, + internal::ParseContext* ctx); + const char* ParseMessageSetItem(const char* ptr, + const Message* containing_type, + internal::InternalMetadata* metadata, + internal::ParseContext* ctx); + + // Implemented in extension_set_inl.h to keep code out of the header file. + template + const char* ParseFieldWithExtensionInfo(int number, bool was_packed_on_wire, + const ExtensionInfo& info, + internal::InternalMetadata* metadata, + const char* ptr, + internal::ParseContext* ctx); + template + const char* ParseMessageSetItemTmpl(const char* ptr, + const Msg* containing_type, + internal::InternalMetadata* metadata, + internal::ParseContext* ctx); + + // Hack: RepeatedPtrFieldBase declares ExtensionSet as a friend. This + // friendship should automatically extend to ExtensionSet::Extension, but + // unfortunately some older compilers (e.g. GCC 3.4.4) do not implement this + // correctly. So, we must provide helpers for calling methods of that + // class. + + // Defined in extension_set_heavy.cc. + static inline size_t RepeatedMessage_SpaceUsedExcludingSelfLong( + RepeatedPtrFieldBase* field); + + KeyValue* flat_begin() { + assert(!is_large()); + return map_.flat; + } + const KeyValue* flat_begin() const { + assert(!is_large()); + return map_.flat; + } + KeyValue* flat_end() { + assert(!is_large()); + return map_.flat + flat_size_; + } + const KeyValue* flat_end() const { + assert(!is_large()); + return map_.flat + flat_size_; + } + + Arena* arena_; + + // Manual memory-management: + // map_.flat is an allocated array of flat_capacity_ elements. + // [map_.flat, map_.flat + flat_size_) is the currently-in-use prefix. + uint16 flat_capacity_; + uint16 flat_size_; + union AllocatedData { + KeyValue* flat; + + // If flat_capacity_ > kMaximumFlatCapacity, switch to LargeMap, + // which guarantees O(n lg n) CPU but larger constant factors. + LargeMap* large; + } map_; + + static void DeleteFlatMap(const KeyValue* flat, uint16 flat_capacity); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ExtensionSet); +}; + +constexpr ExtensionSet::ExtensionSet() + : arena_(nullptr), flat_capacity_(0), flat_size_(0), map_{nullptr} {} + +// These are just for convenience... +inline void ExtensionSet::SetString(int number, FieldType type, + std::string value, + const FieldDescriptor* descriptor) { + MutableString(number, type, descriptor)->assign(std::move(value)); +} +inline void ExtensionSet::SetRepeatedString(int number, int index, + std::string value) { + MutableRepeatedString(number, index)->assign(std::move(value)); +} +inline void ExtensionSet::AddString(int number, FieldType type, + std::string value, + const FieldDescriptor* descriptor) { + AddString(number, type, descriptor)->assign(std::move(value)); +} +// =================================================================== +// Glue for generated extension accessors + +// ------------------------------------------------------------------- +// Template magic + +// First we have a set of classes representing "type traits" for different +// field types. A type traits class knows how to implement basic accessors +// for extensions of a particular type given an ExtensionSet. The signature +// for a type traits class looks like this: +// +// class TypeTraits { +// public: +// typedef ? ConstType; +// typedef ? MutableType; +// // TypeTraits for singular fields and repeated fields will define the +// // symbol "Singular" or "Repeated" respectively. These two symbols will +// // be used in extension accessors to distinguish between singular +// // extensions and repeated extensions. If the TypeTraits for the passed +// // in extension doesn't have the expected symbol defined, it means the +// // user is passing a repeated extension to a singular accessor, or the +// // opposite. In that case the C++ compiler will generate an error +// // message "no matching member function" to inform the user. +// typedef ? Singular +// typedef ? Repeated +// +// static inline ConstType Get(int number, const ExtensionSet& set); +// static inline void Set(int number, ConstType value, ExtensionSet* set); +// static inline MutableType Mutable(int number, ExtensionSet* set); +// +// // Variants for repeated fields. +// static inline ConstType Get(int number, const ExtensionSet& set, +// int index); +// static inline void Set(int number, int index, +// ConstType value, ExtensionSet* set); +// static inline MutableType Mutable(int number, int index, +// ExtensionSet* set); +// static inline void Add(int number, ConstType value, ExtensionSet* set); +// static inline MutableType Add(int number, ExtensionSet* set); +// This is used by the ExtensionIdentifier constructor to register +// the extension at dynamic initialization. +// template +// static void Register(int number, FieldType type, bool is_packed); +// }; +// +// Not all of these methods make sense for all field types. For example, the +// "Mutable" methods only make sense for strings and messages, and the +// repeated methods only make sense for repeated types. So, each type +// traits class implements only the set of methods from this signature that it +// actually supports. This will cause a compiler error if the user tries to +// access an extension using a method that doesn't make sense for its type. +// For example, if "foo" is an extension of type "optional int32", then if you +// try to write code like: +// my_message.MutableExtension(foo) +// you will get a compile error because PrimitiveTypeTraits does not +// have a "Mutable()" method. + +// ------------------------------------------------------------------- +// PrimitiveTypeTraits + +// Since the ExtensionSet has different methods for each primitive type, +// we must explicitly define the methods of the type traits class for each +// known type. +template +class PrimitiveTypeTraits { + public: + typedef Type ConstType; + typedef Type MutableType; + typedef PrimitiveTypeTraits Singular; + + static inline ConstType Get(int number, const ExtensionSet& set, + ConstType default_value); + static inline void Set(int number, FieldType field_type, ConstType value, + ExtensionSet* set); + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterExtension(&ExtendeeT::default_instance(), number, + type, false, is_packed); + } +}; + +template +class RepeatedPrimitiveTypeTraits { + public: + typedef Type ConstType; + typedef Type MutableType; + typedef RepeatedPrimitiveTypeTraits Repeated; + + typedef RepeatedField RepeatedFieldType; + + static inline Type Get(int number, const ExtensionSet& set, int index); + static inline void Set(int number, int index, Type value, ExtensionSet* set); + static inline void Add(int number, FieldType field_type, bool is_packed, + Type value, ExtensionSet* set); + + static inline const RepeatedField& GetRepeated( + int number, const ExtensionSet& set); + static inline RepeatedField* MutableRepeated(int number, + FieldType field_type, + bool is_packed, + ExtensionSet* set); + + static const RepeatedFieldType* GetDefaultRepeatedField(); + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterExtension(&ExtendeeT::default_instance(), number, + type, true, is_packed); + } +}; + +class PROTOBUF_EXPORT RepeatedPrimitiveDefaults { + private: + template + friend class RepeatedPrimitiveTypeTraits; + static const RepeatedPrimitiveDefaults* default_instance(); + RepeatedField default_repeated_field_int32_; + RepeatedField default_repeated_field_int64_; + RepeatedField default_repeated_field_uint32_; + RepeatedField default_repeated_field_uint64_; + RepeatedField default_repeated_field_double_; + RepeatedField default_repeated_field_float_; + RepeatedField default_repeated_field_bool_; +}; + +#define PROTOBUF_DEFINE_PRIMITIVE_TYPE(TYPE, METHOD) \ + template <> \ + inline TYPE PrimitiveTypeTraits::Get( \ + int number, const ExtensionSet& set, TYPE default_value) { \ + return set.Get##METHOD(number, default_value); \ + } \ + template <> \ + inline void PrimitiveTypeTraits::Set(int number, FieldType field_type, \ + TYPE value, ExtensionSet* set) { \ + set->Set##METHOD(number, field_type, value, NULL); \ + } \ + \ + template <> \ + inline TYPE RepeatedPrimitiveTypeTraits::Get( \ + int number, const ExtensionSet& set, int index) { \ + return set.GetRepeated##METHOD(number, index); \ + } \ + template <> \ + inline void RepeatedPrimitiveTypeTraits::Set( \ + int number, int index, TYPE value, ExtensionSet* set) { \ + set->SetRepeated##METHOD(number, index, value); \ + } \ + template <> \ + inline void RepeatedPrimitiveTypeTraits::Add( \ + int number, FieldType field_type, bool is_packed, TYPE value, \ + ExtensionSet* set) { \ + set->Add##METHOD(number, field_type, is_packed, value, NULL); \ + } \ + template <> \ + inline const RepeatedField* \ + RepeatedPrimitiveTypeTraits::GetDefaultRepeatedField() { \ + return &RepeatedPrimitiveDefaults::default_instance() \ + ->default_repeated_field_##TYPE##_; \ + } \ + template <> \ + inline const RepeatedField& \ + RepeatedPrimitiveTypeTraits::GetRepeated(int number, \ + const ExtensionSet& set) { \ + return *reinterpret_cast*>( \ + set.GetRawRepeatedField(number, GetDefaultRepeatedField())); \ + } \ + template <> \ + inline RepeatedField* \ + RepeatedPrimitiveTypeTraits::MutableRepeated( \ + int number, FieldType field_type, bool is_packed, ExtensionSet* set) { \ + return reinterpret_cast*>( \ + set->MutableRawRepeatedField(number, field_type, is_packed, NULL)); \ + } + +PROTOBUF_DEFINE_PRIMITIVE_TYPE(int32, Int32) +PROTOBUF_DEFINE_PRIMITIVE_TYPE(int64, Int64) +PROTOBUF_DEFINE_PRIMITIVE_TYPE(uint32, UInt32) +PROTOBUF_DEFINE_PRIMITIVE_TYPE(uint64, UInt64) +PROTOBUF_DEFINE_PRIMITIVE_TYPE(float, Float) +PROTOBUF_DEFINE_PRIMITIVE_TYPE(double, Double) +PROTOBUF_DEFINE_PRIMITIVE_TYPE(bool, Bool) + +#undef PROTOBUF_DEFINE_PRIMITIVE_TYPE + +// ------------------------------------------------------------------- +// StringTypeTraits + +// Strings support both Set() and Mutable(). +class PROTOBUF_EXPORT StringTypeTraits { + public: + typedef const std::string& ConstType; + typedef std::string* MutableType; + typedef StringTypeTraits Singular; + + static inline const std::string& Get(int number, const ExtensionSet& set, + ConstType default_value) { + return set.GetString(number, default_value); + } + static inline void Set(int number, FieldType field_type, + const std::string& value, ExtensionSet* set) { + set->SetString(number, field_type, value, NULL); + } + static inline std::string* Mutable(int number, FieldType field_type, + ExtensionSet* set) { + return set->MutableString(number, field_type, NULL); + } + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterExtension(&ExtendeeT::default_instance(), number, + type, false, is_packed); + } +}; + +class PROTOBUF_EXPORT RepeatedStringTypeTraits { + public: + typedef const std::string& ConstType; + typedef std::string* MutableType; + typedef RepeatedStringTypeTraits Repeated; + + typedef RepeatedPtrField RepeatedFieldType; + + static inline const std::string& Get(int number, const ExtensionSet& set, + int index) { + return set.GetRepeatedString(number, index); + } + static inline void Set(int number, int index, const std::string& value, + ExtensionSet* set) { + set->SetRepeatedString(number, index, value); + } + static inline std::string* Mutable(int number, int index, ExtensionSet* set) { + return set->MutableRepeatedString(number, index); + } + static inline void Add(int number, FieldType field_type, bool /*is_packed*/, + const std::string& value, ExtensionSet* set) { + set->AddString(number, field_type, value, NULL); + } + static inline std::string* Add(int number, FieldType field_type, + ExtensionSet* set) { + return set->AddString(number, field_type, NULL); + } + static inline const RepeatedPtrField& GetRepeated( + int number, const ExtensionSet& set) { + return *reinterpret_cast*>( + set.GetRawRepeatedField(number, GetDefaultRepeatedField())); + } + + static inline RepeatedPtrField* MutableRepeated( + int number, FieldType field_type, bool is_packed, ExtensionSet* set) { + return reinterpret_cast*>( + set->MutableRawRepeatedField(number, field_type, is_packed, NULL)); + } + + static const RepeatedFieldType* GetDefaultRepeatedField(); + + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterExtension(&ExtendeeT::default_instance(), number, + type, true, is_packed); + } + + private: + static void InitializeDefaultRepeatedFields(); + static void DestroyDefaultRepeatedFields(); +}; + +// ------------------------------------------------------------------- +// EnumTypeTraits + +// ExtensionSet represents enums using integers internally, so we have to +// static_cast around. +template +class EnumTypeTraits { + public: + typedef Type ConstType; + typedef Type MutableType; + typedef EnumTypeTraits Singular; + + static inline ConstType Get(int number, const ExtensionSet& set, + ConstType default_value) { + return static_cast(set.GetEnum(number, default_value)); + } + static inline void Set(int number, FieldType field_type, ConstType value, + ExtensionSet* set) { + GOOGLE_DCHECK(IsValid(value)); + set->SetEnum(number, field_type, value, NULL); + } + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterEnumExtension(&ExtendeeT::default_instance(), number, + type, false, is_packed, IsValid); + } +}; + +template +class RepeatedEnumTypeTraits { + public: + typedef Type ConstType; + typedef Type MutableType; + typedef RepeatedEnumTypeTraits Repeated; + + typedef RepeatedField RepeatedFieldType; + + static inline ConstType Get(int number, const ExtensionSet& set, int index) { + return static_cast(set.GetRepeatedEnum(number, index)); + } + static inline void Set(int number, int index, ConstType value, + ExtensionSet* set) { + GOOGLE_DCHECK(IsValid(value)); + set->SetRepeatedEnum(number, index, value); + } + static inline void Add(int number, FieldType field_type, bool is_packed, + ConstType value, ExtensionSet* set) { + GOOGLE_DCHECK(IsValid(value)); + set->AddEnum(number, field_type, is_packed, value, NULL); + } + static inline const RepeatedField& GetRepeated( + int number, const ExtensionSet& set) { + // Hack: the `Extension` struct stores a RepeatedField for enums. + // RepeatedField cannot implicitly convert to RepeatedField + // so we need to do some casting magic. See message.h for similar + // contortions for non-extension fields. + return *reinterpret_cast*>( + set.GetRawRepeatedField(number, GetDefaultRepeatedField())); + } + + static inline RepeatedField* MutableRepeated(int number, + FieldType field_type, + bool is_packed, + ExtensionSet* set) { + return reinterpret_cast*>( + set->MutableRawRepeatedField(number, field_type, is_packed, NULL)); + } + + static const RepeatedFieldType* GetDefaultRepeatedField() { + // Hack: as noted above, repeated enum fields are internally stored as a + // RepeatedField. We need to be able to instantiate global static + // objects to return as default (empty) repeated fields on non-existent + // extensions. We would not be able to know a-priori all of the enum types + // (values of |Type|) to instantiate all of these, so we just re-use int32's + // default repeated field object. + return reinterpret_cast*>( + RepeatedPrimitiveTypeTraits::GetDefaultRepeatedField()); + } + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterEnumExtension(&ExtendeeT::default_instance(), number, + type, true, is_packed, IsValid); + } +}; + +// ------------------------------------------------------------------- +// MessageTypeTraits + +// ExtensionSet guarantees that when manipulating extensions with message +// types, the implementation used will be the compiled-in class representing +// that type. So, we can static_cast down to the exact type we expect. +template +class MessageTypeTraits { + public: + typedef const Type& ConstType; + typedef Type* MutableType; + typedef MessageTypeTraits Singular; + + static inline ConstType Get(int number, const ExtensionSet& set, + ConstType default_value) { + return static_cast(set.GetMessage(number, default_value)); + } + static inline MutableType Mutable(int number, FieldType field_type, + ExtensionSet* set) { + return static_cast(set->MutableMessage( + number, field_type, Type::default_instance(), NULL)); + } + static inline void SetAllocated(int number, FieldType field_type, + MutableType message, ExtensionSet* set) { + set->SetAllocatedMessage(number, field_type, NULL, message); + } + static inline void UnsafeArenaSetAllocated(int number, FieldType field_type, + MutableType message, + ExtensionSet* set) { + set->UnsafeArenaSetAllocatedMessage(number, field_type, NULL, message); + } + static inline PROTOBUF_MUST_USE_RESULT MutableType + Release(int number, FieldType /* field_type */, ExtensionSet* set) { + return static_cast( + set->ReleaseMessage(number, Type::default_instance())); + } + static inline MutableType UnsafeArenaRelease(int number, + FieldType /* field_type */, + ExtensionSet* set) { + return static_cast( + set->UnsafeArenaReleaseMessage(number, Type::default_instance())); + } + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterMessageExtension(&ExtendeeT::default_instance(), + number, type, false, is_packed, + &Type::default_instance()); + } +}; + +// forward declaration +class RepeatedMessageGenericTypeTraits; + +template +class RepeatedMessageTypeTraits { + public: + typedef const Type& ConstType; + typedef Type* MutableType; + typedef RepeatedMessageTypeTraits Repeated; + + typedef RepeatedPtrField RepeatedFieldType; + + static inline ConstType Get(int number, const ExtensionSet& set, int index) { + return static_cast(set.GetRepeatedMessage(number, index)); + } + static inline MutableType Mutable(int number, int index, ExtensionSet* set) { + return static_cast(set->MutableRepeatedMessage(number, index)); + } + static inline MutableType Add(int number, FieldType field_type, + ExtensionSet* set) { + return static_cast( + set->AddMessage(number, field_type, Type::default_instance(), NULL)); + } + static inline const RepeatedPtrField& GetRepeated( + int number, const ExtensionSet& set) { + // See notes above in RepeatedEnumTypeTraits::GetRepeated(): same + // casting hack applies here, because a RepeatedPtrField + // cannot naturally become a RepeatedPtrType even though Type is + // presumably a message. google::protobuf::Message goes through similar contortions + // with a reinterpret_cast<>. + return *reinterpret_cast*>( + set.GetRawRepeatedField(number, GetDefaultRepeatedField())); + } + static inline RepeatedPtrField* MutableRepeated(int number, + FieldType field_type, + bool is_packed, + ExtensionSet* set) { + return reinterpret_cast*>( + set->MutableRawRepeatedField(number, field_type, is_packed, NULL)); + } + + static const RepeatedFieldType* GetDefaultRepeatedField(); + template + static void Register(int number, FieldType type, bool is_packed) { + ExtensionSet::RegisterMessageExtension(&ExtendeeT::default_instance(), + number, type, true, is_packed, + &Type::default_instance()); + } +}; + +template +inline const typename RepeatedMessageTypeTraits::RepeatedFieldType* +RepeatedMessageTypeTraits::GetDefaultRepeatedField() { + static auto instance = OnShutdownDelete(new RepeatedFieldType); + return instance; +} + +// ------------------------------------------------------------------- +// ExtensionIdentifier + +// This is the type of actual extension objects. E.g. if you have: +// extend Foo { +// optional int32 bar = 1234; +// } +// then "bar" will be defined in C++ as: +// ExtensionIdentifier, 5, false> bar(1234); +// +// Note that we could, in theory, supply the field number as a template +// parameter, and thus make an instance of ExtensionIdentifier have no +// actual contents. However, if we did that, then using an extension +// identifier would not necessarily cause the compiler to output any sort +// of reference to any symbol defined in the extension's .pb.o file. Some +// linkers will actually drop object files that are not explicitly referenced, +// but that would be bad because it would cause this extension to not be +// registered at static initialization, and therefore using it would crash. + +template +class ExtensionIdentifier { + public: + typedef TypeTraitsType TypeTraits; + typedef ExtendeeType Extendee; + + ExtensionIdentifier(int number, typename TypeTraits::ConstType default_value) + : number_(number), default_value_(default_value) { + Register(number); + } + inline int number() const { return number_; } + typename TypeTraits::ConstType default_value() const { + return default_value_; + } + + static void Register(int number) { + TypeTraits::template Register(number, field_type, is_packed); + } + + private: + const int number_; + typename TypeTraits::ConstType default_value_; +}; + +// ------------------------------------------------------------------- +// Generated accessors + +// This macro should be expanded in the context of a generated type which +// has extensions. +// +// We use "_proto_TypeTraits" as a type name below because "TypeTraits" +// causes problems if the class has a nested message or enum type with that +// name and "_TypeTraits" is technically reserved for the C++ library since +// it starts with an underscore followed by a capital letter. +// +// For similar reason, we use "_field_type" and "_is_packed" as parameter names +// below, so that "field_type" and "is_packed" can be used as field names. +#define GOOGLE_PROTOBUF_EXTENSION_ACCESSORS(CLASSNAME) \ + /* Has, Size, Clear */ \ + template \ + inline bool HasExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) const { \ + return _extensions_.Has(id.number()); \ + } \ + \ + template \ + inline void ClearExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) { \ + _extensions_.ClearExtension(id.number()); \ + } \ + \ + template \ + inline int ExtensionSize( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) const { \ + return _extensions_.ExtensionSize(id.number()); \ + } \ + \ + /* Singular accessors */ \ + template \ + inline typename _proto_TypeTraits::Singular::ConstType GetExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) const { \ + return _proto_TypeTraits::Get(id.number(), _extensions_, \ + id.default_value()); \ + } \ + \ + template \ + inline typename _proto_TypeTraits::Singular::MutableType MutableExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) { \ + return _proto_TypeTraits::Mutable(id.number(), _field_type, \ + &_extensions_); \ + } \ + \ + template \ + inline void SetExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id, \ + typename _proto_TypeTraits::Singular::ConstType value) { \ + _proto_TypeTraits::Set(id.number(), _field_type, value, &_extensions_); \ + } \ + \ + template \ + inline void SetAllocatedExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id, \ + typename _proto_TypeTraits::Singular::MutableType value) { \ + _proto_TypeTraits::SetAllocated(id.number(), _field_type, value, \ + &_extensions_); \ + } \ + template \ + inline void UnsafeArenaSetAllocatedExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id, \ + typename _proto_TypeTraits::Singular::MutableType value) { \ + _proto_TypeTraits::UnsafeArenaSetAllocated(id.number(), _field_type, \ + value, &_extensions_); \ + } \ + template \ + inline PROTOBUF_MUST_USE_RESULT \ + typename _proto_TypeTraits::Singular::MutableType \ + ReleaseExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) { \ + return _proto_TypeTraits::Release(id.number(), _field_type, \ + &_extensions_); \ + } \ + template \ + inline typename _proto_TypeTraits::Singular::MutableType \ + UnsafeArenaReleaseExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) { \ + return _proto_TypeTraits::UnsafeArenaRelease(id.number(), _field_type, \ + &_extensions_); \ + } \ + \ + /* Repeated accessors */ \ + template \ + inline typename _proto_TypeTraits::Repeated::ConstType GetExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id, \ + int index) const { \ + return _proto_TypeTraits::Get(id.number(), _extensions_, index); \ + } \ + \ + template \ + inline typename _proto_TypeTraits::Repeated::MutableType MutableExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id, \ + int index) { \ + return _proto_TypeTraits::Mutable(id.number(), index, &_extensions_); \ + } \ + \ + template \ + inline void SetExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id, \ + int index, typename _proto_TypeTraits::Repeated::ConstType value) { \ + _proto_TypeTraits::Set(id.number(), index, value, &_extensions_); \ + } \ + \ + template \ + inline typename _proto_TypeTraits::Repeated::MutableType AddExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) { \ + return _proto_TypeTraits::Add(id.number(), _field_type, &_extensions_); \ + } \ + \ + template \ + inline void AddExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id, \ + typename _proto_TypeTraits::Repeated::ConstType value) { \ + _proto_TypeTraits::Add(id.number(), _field_type, _is_packed, value, \ + &_extensions_); \ + } \ + \ + template \ + inline const typename _proto_TypeTraits::Repeated::RepeatedFieldType& \ + GetRepeatedExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) const { \ + return _proto_TypeTraits::GetRepeated(id.number(), _extensions_); \ + } \ + \ + template \ + inline typename _proto_TypeTraits::Repeated::RepeatedFieldType* \ + MutableRepeatedExtension( \ + const ::PROTOBUF_NAMESPACE_ID::internal::ExtensionIdentifier< \ + CLASSNAME, _proto_TypeTraits, _field_type, _is_packed>& id) { \ + return _proto_TypeTraits::MutableRepeated(id.number(), _field_type, \ + _is_packed, &_extensions_); \ + } + +} // namespace internal + +// Call this function to ensure that this extensions's reflection is linked into +// the binary: +// +// google::protobuf::LinkExtensionReflection(Foo::my_extension); +// +// This will ensure that the following lookup will succeed: +// +// DescriptorPool::generated_pool()->FindExtensionByName("Foo.my_extension"); +// +// This is often relevant for parsing extensions in text mode. +// +// As a side-effect, it will also guarantee that anything else from the same +// .proto file will also be available for lookup in the generated pool. +// +// This function does not actually register the extension, so it does not need +// to be called before the lookup. However it does need to occur in a function +// that cannot be stripped from the binary (ie. it must be reachable from main). +// +// Best practice is to call this function as close as possible to where the +// reflection is actually needed. This function is very cheap to call, so you +// should not need to worry about its runtime overhead except in tight loops (on +// x86-64 it compiles into two "mov" instructions). +template +void LinkExtensionReflection( + const google::protobuf::internal::ExtensionIdentifier< + ExtendeeType, TypeTraitsType, field_type, is_packed>& extension) { + internal::StrongReference(extension); +} + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_EXTENSION_SET_H__ diff --git a/external/include/google/protobuf/extension_set_inl.h b/external/include/google/protobuf/extension_set_inl.h new file mode 100644 index 0000000..074784b --- /dev/null +++ b/external/include/google/protobuf/extension_set_inl.h @@ -0,0 +1,276 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_EXTENSION_SET_INL_H__ +#define GOOGLE_PROTOBUF_EXTENSION_SET_INL_H__ + +#include +#include +#include + +namespace google { +namespace protobuf { +namespace internal { + +template +const char* ExtensionSet::ParseFieldWithExtensionInfo( + int number, bool was_packed_on_wire, const ExtensionInfo& extension, + InternalMetadata* metadata, const char* ptr, internal::ParseContext* ctx) { + if (was_packed_on_wire) { + switch (extension.type) { +#define HANDLE_TYPE(UPPERCASE, CPP_CAMELCASE) \ + case WireFormatLite::TYPE_##UPPERCASE: \ + return internal::Packed##CPP_CAMELCASE##Parser( \ + MutableRawRepeatedField(number, extension.type, extension.is_packed, \ + extension.descriptor), \ + ptr, ctx); + HANDLE_TYPE(INT32, Int32); + HANDLE_TYPE(INT64, Int64); + HANDLE_TYPE(UINT32, UInt32); + HANDLE_TYPE(UINT64, UInt64); + HANDLE_TYPE(SINT32, SInt32); + HANDLE_TYPE(SINT64, SInt64); + HANDLE_TYPE(FIXED32, Fixed32); + HANDLE_TYPE(FIXED64, Fixed64); + HANDLE_TYPE(SFIXED32, SFixed32); + HANDLE_TYPE(SFIXED64, SFixed64); + HANDLE_TYPE(FLOAT, Float); + HANDLE_TYPE(DOUBLE, Double); + HANDLE_TYPE(BOOL, Bool); +#undef HANDLE_TYPE + + case WireFormatLite::TYPE_ENUM: + return internal::PackedEnumParserArg( + MutableRawRepeatedField(number, extension.type, extension.is_packed, + extension.descriptor), + ptr, ctx, extension.enum_validity_check.func, + extension.enum_validity_check.arg, metadata, number); + case WireFormatLite::TYPE_STRING: + case WireFormatLite::TYPE_BYTES: + case WireFormatLite::TYPE_GROUP: + case WireFormatLite::TYPE_MESSAGE: + GOOGLE_LOG(FATAL) << "Non-primitive types can't be packed."; + break; + } + } else { + switch (extension.type) { +#define HANDLE_VARINT_TYPE(UPPERCASE, CPP_CAMELCASE) \ + case WireFormatLite::TYPE_##UPPERCASE: { \ + uint64 value; \ + ptr = VarintParse(ptr, &value); \ + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); \ + if (extension.is_repeated) { \ + Add##CPP_CAMELCASE(number, WireFormatLite::TYPE_##UPPERCASE, \ + extension.is_packed, value, extension.descriptor); \ + } else { \ + Set##CPP_CAMELCASE(number, WireFormatLite::TYPE_##UPPERCASE, value, \ + extension.descriptor); \ + } \ + } break + + HANDLE_VARINT_TYPE(INT32, Int32); + HANDLE_VARINT_TYPE(INT64, Int64); + HANDLE_VARINT_TYPE(UINT32, UInt32); + HANDLE_VARINT_TYPE(UINT64, UInt64); + HANDLE_VARINT_TYPE(BOOL, Bool); +#undef HANDLE_VARINT_TYPE +#define HANDLE_SVARINT_TYPE(UPPERCASE, CPP_CAMELCASE, SIZE) \ + case WireFormatLite::TYPE_##UPPERCASE: { \ + uint64 val; \ + ptr = VarintParse(ptr, &val); \ + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); \ + auto value = WireFormatLite::ZigZagDecode##SIZE(val); \ + if (extension.is_repeated) { \ + Add##CPP_CAMELCASE(number, WireFormatLite::TYPE_##UPPERCASE, \ + extension.is_packed, value, extension.descriptor); \ + } else { \ + Set##CPP_CAMELCASE(number, WireFormatLite::TYPE_##UPPERCASE, value, \ + extension.descriptor); \ + } \ + } break + + HANDLE_SVARINT_TYPE(SINT32, Int32, 32); + HANDLE_SVARINT_TYPE(SINT64, Int64, 64); +#undef HANDLE_SVARINT_TYPE +#define HANDLE_FIXED_TYPE(UPPERCASE, CPP_CAMELCASE, CPPTYPE) \ + case WireFormatLite::TYPE_##UPPERCASE: { \ + auto value = UnalignedLoad(ptr); \ + ptr += sizeof(CPPTYPE); \ + if (extension.is_repeated) { \ + Add##CPP_CAMELCASE(number, WireFormatLite::TYPE_##UPPERCASE, \ + extension.is_packed, value, extension.descriptor); \ + } else { \ + Set##CPP_CAMELCASE(number, WireFormatLite::TYPE_##UPPERCASE, value, \ + extension.descriptor); \ + } \ + } break + + HANDLE_FIXED_TYPE(FIXED32, UInt32, uint32); + HANDLE_FIXED_TYPE(FIXED64, UInt64, uint64); + HANDLE_FIXED_TYPE(SFIXED32, Int32, int32); + HANDLE_FIXED_TYPE(SFIXED64, Int64, int64); + HANDLE_FIXED_TYPE(FLOAT, Float, float); + HANDLE_FIXED_TYPE(DOUBLE, Double, double); +#undef HANDLE_FIXED_TYPE + + case WireFormatLite::TYPE_ENUM: { + uint64 val; + ptr = VarintParse(ptr, &val); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + int value = val; + + if (!extension.enum_validity_check.func( + extension.enum_validity_check.arg, value)) { + WriteVarint(number, val, metadata->mutable_unknown_fields()); + } else if (extension.is_repeated) { + AddEnum(number, WireFormatLite::TYPE_ENUM, extension.is_packed, value, + extension.descriptor); + } else { + SetEnum(number, WireFormatLite::TYPE_ENUM, value, + extension.descriptor); + } + break; + } + + case WireFormatLite::TYPE_BYTES: + case WireFormatLite::TYPE_STRING: { + std::string* value = + extension.is_repeated + ? AddString(number, WireFormatLite::TYPE_STRING, + extension.descriptor) + : MutableString(number, WireFormatLite::TYPE_STRING, + extension.descriptor); + int size = ReadSize(&ptr); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + return ctx->ReadString(ptr, size, value); + } + + case WireFormatLite::TYPE_GROUP: { + MessageLite* value = + extension.is_repeated + ? AddMessage(number, WireFormatLite::TYPE_GROUP, + *extension.message_info.prototype, + extension.descriptor) + : MutableMessage(number, WireFormatLite::TYPE_GROUP, + *extension.message_info.prototype, + extension.descriptor); + uint32 tag = (number << 3) + WireFormatLite::WIRETYPE_START_GROUP; + return ctx->ParseGroup(value, ptr, tag); + } + + case WireFormatLite::TYPE_MESSAGE: { + MessageLite* value = + extension.is_repeated + ? AddMessage(number, WireFormatLite::TYPE_MESSAGE, + *extension.message_info.prototype, + extension.descriptor) + : MutableMessage(number, WireFormatLite::TYPE_MESSAGE, + *extension.message_info.prototype, + extension.descriptor); + return ctx->ParseMessage(value, ptr); + } + } + } + return ptr; +} + +template +const char* ExtensionSet::ParseMessageSetItemTmpl( + const char* ptr, const Msg* containing_type, + internal::InternalMetadata* metadata, internal::ParseContext* ctx) { + std::string payload; + uint32 type_id = 0; + bool payload_read = false; + while (!ctx->Done(&ptr)) { + uint32 tag = static_cast(*ptr++); + if (tag == WireFormatLite::kMessageSetTypeIdTag) { + uint64 tmp; + ptr = ParseBigVarint(ptr, &tmp); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + type_id = tmp; + if (payload_read) { + ExtensionInfo extension; + bool was_packed_on_wire; + if (!FindExtension(2, type_id, containing_type, ctx, &extension, + &was_packed_on_wire)) { + WriteLengthDelimited(type_id, payload, + metadata->mutable_unknown_fields()); + } else { + MessageLite* value = + extension.is_repeated + ? AddMessage(type_id, WireFormatLite::TYPE_MESSAGE, + *extension.message_info.prototype, + extension.descriptor) + : MutableMessage(type_id, WireFormatLite::TYPE_MESSAGE, + *extension.message_info.prototype, + extension.descriptor); + + const char* p; + // We can't use regular parse from string as we have to track + // proper recursion depth and descriptor pools. + ParseContext tmp_ctx(ctx->depth(), false, &p, payload); + tmp_ctx.data().pool = ctx->data().pool; + tmp_ctx.data().factory = ctx->data().factory; + GOOGLE_PROTOBUF_PARSER_ASSERT(value->_InternalParse(p, &tmp_ctx) && + tmp_ctx.EndedAtLimit()); + } + type_id = 0; + } + } else if (tag == WireFormatLite::kMessageSetMessageTag) { + if (type_id != 0) { + ptr = ParseFieldMaybeLazily(static_cast(type_id) * 8 + 2, ptr, + containing_type, metadata, ctx); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + type_id = 0; + } else { + int32 size = ReadSize(&ptr); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + ptr = ctx->ReadString(ptr, size, &payload); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + payload_read = true; + } + } else { + ptr = ReadTag(ptr - 1, &tag); + if (tag == 0 || (tag & 7) == 4) { + ctx->SetLastTag(tag); + return ptr; + } + ptr = ParseField(tag, ptr, containing_type, metadata, ctx); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + } + } + return ptr; +} + +} // namespace internal +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_EXTENSION_SET_INL_H__ diff --git a/external/include/google/protobuf/field_access_listener.h b/external/include/google/protobuf/field_access_listener.h new file mode 100644 index 0000000..660ad73 --- /dev/null +++ b/external/include/google/protobuf/field_access_listener.h @@ -0,0 +1,246 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_FIELD_ACCESS_LISTENER_H__ +#define GOOGLE_PROTOBUF_FIELD_ACCESS_LISTENER_H__ + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + + +namespace google { +namespace protobuf { +namespace internal { +template +struct ResolvedType { + using type = T; +}; +} // namespace internal +// Tracks the events of field accesses for all protos +// that are built with --inject_field_listener_events. This is a global +// interface which you must implement yourself and register with +// RegisterListener() function. All events consist of Descriptors, +// FieldAccessTypes and the underlying storage for tracking the memory which is +// accessed where possible and makes sense. Users are responsible for the +// implementations to be thread safe. +class FieldAccessListener { + public: + FieldAccessListener() = default; + virtual ~FieldAccessListener() = default; + + // The memory annotations of the proto fields that are touched by the + // accessors. They are returned as if the operation completes. + struct DataAnnotation { + DataAnnotation() = default; + DataAnnotation(const void* other_address, size_t other_size) + : address(other_address), size(other_size) {} + const void* address = nullptr; + size_t size = 0; + }; + using AddressInfo = std::vector; + using AddressInfoExtractor = std::function; + + enum class FieldAccessType { + kAdd, // add_(f) + kAddMutable, // add_() + kGet, // () and (i) + kClear, // clear_() + kHas, // has_() + kList, // () + kMutable, // mutable_() + kMutableList, // mutable_() + kRelease, // release_() + kSet, // set_() and set_(i) + kSize, // _size() + }; + + static FieldAccessListener* GetListener(); + + // Registers the field listener, can be called only once, |listener| must + // outlive all proto accesses (in most cases, the lifetime of the program). + static void RegisterListener(FieldAccessListener* listener); + + // All field accessors noted in FieldAccessType have this call. + // |extractor| extracts the address info from the field + virtual void OnFieldAccess(const AddressInfoExtractor& extractor, + const FieldDescriptor* descriptor, + FieldAccessType access_type) = 0; + + // Side effect calls. + virtual void OnDeserializationAccess(const Message* message) = 0; + virtual void OnSerializationAccess(const Message* message) = 0; + virtual void OnReflectionAccess(const Descriptor* descriptor) = 0; + virtual void OnByteSizeAccess(const Message* message) = 0; + // We can probably add more if we need to, like {Merge,Copy}{From}Access. + + // Extracts all the addresses from the underlying fields. + template + AddressInfo ExtractFieldInfo(const T* field_value); + + + private: + template + AddressInfo ExtractFieldInfoSpecific(const T* field_value, + internal::ResolvedType); + + AddressInfo ExtractFieldInfoSpecific(const Message* field_value, + internal::ResolvedType); + + AddressInfo ExtractFieldInfoSpecific(const std::string* field_value, + internal::ResolvedType); + + AddressInfo ExtractFieldInfoSpecific( + const internal::ArenaStringPtr* field_value, + internal::ResolvedType); + + template + AddressInfo ExtractFieldInfoSpecific( + const RepeatedField* field_value, + internal::ResolvedType>); + + template + AddressInfo ExtractFieldInfoSpecific( + const RepeatedPtrField* field_value, + internal::ResolvedType>); + + template + AddressInfo ExtractFieldInfoSpecific(const Map* field_value, + internal::ResolvedType>); + + static internal::once_flag register_once_; + static FieldAccessListener* field_listener_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FieldAccessListener); +}; + +template +inline FieldAccessListener::AddressInfo FieldAccessListener::ExtractFieldInfo( + const T* field_value) { + return ExtractFieldInfoSpecific(field_value, internal::ResolvedType()); +} + + +template +inline FieldAccessListener::AddressInfo +FieldAccessListener::ExtractFieldInfoSpecific(const T* field_value, + internal::ResolvedType) { + static_assert(std::is_trivial::value, + "This overload should be chosen only for trivial types"); + return FieldAccessListener::AddressInfo{FieldAccessListener::DataAnnotation( + static_cast(field_value), sizeof(*field_value))}; +} + +inline FieldAccessListener::AddressInfo +FieldAccessListener::ExtractFieldInfoSpecific( + const std::string* field_value, internal::ResolvedType) { + return FieldAccessListener::AddressInfo{FieldAccessListener::DataAnnotation( + static_cast(field_value->c_str()), field_value->length())}; +} + +inline FieldAccessListener::AddressInfo +FieldAccessListener::ExtractFieldInfoSpecific( + const internal::ArenaStringPtr* field_value, + internal::ResolvedType) { + return FieldAccessListener::ExtractFieldInfoSpecific( + field_value->GetPointer(), internal::ResolvedType()); +} + +template +inline FieldAccessListener::AddressInfo +FieldAccessListener::ExtractFieldInfoSpecific( + const RepeatedField* field_value, + internal::ResolvedType>) { + // TODO(jianzhouzh): This can cause data races. Synchronize this if needed. + FieldAccessListener::AddressInfo address_info; + address_info.reserve(field_value->size()); + for (int i = 0, ie = field_value->size(); i < ie; ++i) { + auto sub = ExtractFieldInfoSpecific(&field_value->Get(i), + internal::ResolvedType()); + address_info.insert(address_info.end(), sub.begin(), sub.end()); + } + return address_info; +} + +template +inline FieldAccessListener::AddressInfo +FieldAccessListener::ExtractFieldInfoSpecific( + const RepeatedPtrField* field_value, + internal::ResolvedType>) { + FieldAccessListener::AddressInfo address_info; + // TODO(jianzhouzh): This can cause data races. Synchronize this if needed. + address_info.reserve(field_value->size()); + for (int i = 0, ie = field_value->size(); i < ie; ++i) { + auto sub = ExtractFieldInfoSpecific(&field_value->Get(i), + internal::ResolvedType()); + address_info.insert(address_info.end(), sub.begin(), sub.end()); + } + return address_info; +} + +template +inline FieldAccessListener::AddressInfo +FieldAccessListener::ExtractFieldInfoSpecific( + const Map* field_value, internal::ResolvedType>) { + // TODO(jianzhouzh): This can cause data races. Synchronize this if needed. + FieldAccessListener::AddressInfo address_info; + address_info.reserve(field_value->size()); + for (auto it = field_value->begin(); it != field_value->end(); ++it) { + auto sub_first = + ExtractFieldInfoSpecific(&it->first, internal::ResolvedType()); + auto sub_second = + ExtractFieldInfoSpecific(&it->second, internal::ResolvedType()); + address_info.insert(address_info.end(), sub_first.begin(), sub_first.end()); + address_info.insert(address_info.end(), sub_second.begin(), + sub_second.end()); + } + return address_info; +} + +inline FieldAccessListener::AddressInfo +FieldAccessListener::ExtractFieldInfoSpecific(const Message* field_value, + internal::ResolvedType) { + // TODO(jianzhouzh): implement and adjust all annotations in the compiler. + return {}; +} + +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_FIELD_ACCESS_LISTENER_H__ diff --git a/external/include/google/protobuf/field_mask.pb.h b/external/include/google/protobuf/field_mask.pb.h new file mode 100644 index 0000000..2c690fa --- /dev/null +++ b/external/include/google/protobuf/field_mask.pb.h @@ -0,0 +1,317 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/field_mask.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ffield_5fmask_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ffield_5fmask_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ffield_5fmask_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2ffield_5fmask_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto; +PROTOBUF_NAMESPACE_OPEN +class FieldMask; +struct FieldMaskDefaultTypeInternal; +PROTOBUF_EXPORT extern FieldMaskDefaultTypeInternal _FieldMask_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::FieldMask* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +// =================================================================== + +class PROTOBUF_EXPORT FieldMask final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.FieldMask) */ { + public: + inline FieldMask() : FieldMask(nullptr) {} + ~FieldMask() override; + explicit constexpr FieldMask(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FieldMask(const FieldMask& from); + FieldMask(FieldMask&& from) noexcept + : FieldMask() { + *this = ::std::move(from); + } + + inline FieldMask& operator=(const FieldMask& from) { + CopyFrom(from); + return *this; + } + inline FieldMask& operator=(FieldMask&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FieldMask& default_instance() { + return *internal_default_instance(); + } + static inline const FieldMask* internal_default_instance() { + return reinterpret_cast( + &_FieldMask_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(FieldMask& a, FieldMask& b) { + a.Swap(&b); + } + inline void Swap(FieldMask* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FieldMask* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline FieldMask* New() const final { + return new FieldMask(); + } + + FieldMask* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FieldMask& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FieldMask& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FieldMask* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.FieldMask"; + } + protected: + explicit FieldMask(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kPathsFieldNumber = 1, + }; + // repeated string paths = 1; + int paths_size() const; + private: + int _internal_paths_size() const; + public: + void clear_paths(); + const std::string& paths(int index) const; + std::string* mutable_paths(int index); + void set_paths(int index, const std::string& value); + void set_paths(int index, std::string&& value); + void set_paths(int index, const char* value); + void set_paths(int index, const char* value, size_t size); + std::string* add_paths(); + void add_paths(const std::string& value); + void add_paths(std::string&& value); + void add_paths(const char* value); + void add_paths(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& paths() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_paths(); + private: + const std::string& _internal_paths(int index) const; + std::string* _internal_add_paths(); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.FieldMask) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField paths_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2ffield_5fmask_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// FieldMask + +// repeated string paths = 1; +inline int FieldMask::_internal_paths_size() const { + return paths_.size(); +} +inline int FieldMask::paths_size() const { + return _internal_paths_size(); +} +inline void FieldMask::clear_paths() { + paths_.Clear(); +} +inline std::string* FieldMask::add_paths() { + std::string* _s = _internal_add_paths(); + // @@protoc_insertion_point(field_add_mutable:google.protobuf.FieldMask.paths) + return _s; +} +inline const std::string& FieldMask::_internal_paths(int index) const { + return paths_.Get(index); +} +inline const std::string& FieldMask::paths(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.FieldMask.paths) + return _internal_paths(index); +} +inline std::string* FieldMask::mutable_paths(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.FieldMask.paths) + return paths_.Mutable(index); +} +inline void FieldMask::set_paths(int index, const std::string& value) { + paths_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:google.protobuf.FieldMask.paths) +} +inline void FieldMask::set_paths(int index, std::string&& value) { + paths_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:google.protobuf.FieldMask.paths) +} +inline void FieldMask::set_paths(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + paths_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:google.protobuf.FieldMask.paths) +} +inline void FieldMask::set_paths(int index, const char* value, size_t size) { + paths_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:google.protobuf.FieldMask.paths) +} +inline std::string* FieldMask::_internal_add_paths() { + return paths_.Add(); +} +inline void FieldMask::add_paths(const std::string& value) { + paths_.Add()->assign(value); + // @@protoc_insertion_point(field_add:google.protobuf.FieldMask.paths) +} +inline void FieldMask::add_paths(std::string&& value) { + paths_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:google.protobuf.FieldMask.paths) +} +inline void FieldMask::add_paths(const char* value) { + GOOGLE_DCHECK(value != nullptr); + paths_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:google.protobuf.FieldMask.paths) +} +inline void FieldMask::add_paths(const char* value, size_t size) { + paths_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:google.protobuf.FieldMask.paths) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +FieldMask::paths() const { + // @@protoc_insertion_point(field_list:google.protobuf.FieldMask.paths) + return paths_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +FieldMask::mutable_paths() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.FieldMask.paths) + return &paths_; +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ffield_5fmask_2eproto diff --git a/external/include/google/protobuf/field_mask.proto b/external/include/google/protobuf/field_mask.proto new file mode 100644 index 0000000..6b5104f --- /dev/null +++ b/external/include/google/protobuf/field_mask.proto @@ -0,0 +1,245 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "FieldMaskProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; +option go_package = "google.golang.org/protobuf/types/known/fieldmaskpb"; +option cc_enable_arenas = true; + +// `FieldMask` represents a set of symbolic field paths, for example: +// +// paths: "f.a" +// paths: "f.b.d" +// +// Here `f` represents a field in some root message, `a` and `b` +// fields in the message found in `f`, and `d` a field found in the +// message in `f.b`. +// +// Field masks are used to specify a subset of fields that should be +// returned by a get operation or modified by an update operation. +// Field masks also have a custom JSON encoding (see below). +// +// # Field Masks in Projections +// +// When used in the context of a projection, a response message or +// sub-message is filtered by the API to only contain those fields as +// specified in the mask. For example, if the mask in the previous +// example is applied to a response message as follows: +// +// f { +// a : 22 +// b { +// d : 1 +// x : 2 +// } +// y : 13 +// } +// z: 8 +// +// The result will not contain specific values for fields x,y and z +// (their value will be set to the default, and omitted in proto text +// output): +// +// +// f { +// a : 22 +// b { +// d : 1 +// } +// } +// +// A repeated field is not allowed except at the last position of a +// paths string. +// +// If a FieldMask object is not present in a get operation, the +// operation applies to all fields (as if a FieldMask of all fields +// had been specified). +// +// Note that a field mask does not necessarily apply to the +// top-level response message. In case of a REST get operation, the +// field mask applies directly to the response, but in case of a REST +// list operation, the mask instead applies to each individual message +// in the returned resource list. In case of a REST custom method, +// other definitions may be used. Where the mask applies will be +// clearly documented together with its declaration in the API. In +// any case, the effect on the returned resource/resources is required +// behavior for APIs. +// +// # Field Masks in Update Operations +// +// A field mask in update operations specifies which fields of the +// targeted resource are going to be updated. The API is required +// to only change the values of the fields as specified in the mask +// and leave the others untouched. If a resource is passed in to +// describe the updated values, the API ignores the values of all +// fields not covered by the mask. +// +// If a repeated field is specified for an update operation, new values will +// be appended to the existing repeated field in the target resource. Note that +// a repeated field is only allowed in the last position of a `paths` string. +// +// If a sub-message is specified in the last position of the field mask for an +// update operation, then new value will be merged into the existing sub-message +// in the target resource. +// +// For example, given the target message: +// +// f { +// b { +// d: 1 +// x: 2 +// } +// c: [1] +// } +// +// And an update message: +// +// f { +// b { +// d: 10 +// } +// c: [2] +// } +// +// then if the field mask is: +// +// paths: ["f.b", "f.c"] +// +// then the result will be: +// +// f { +// b { +// d: 10 +// x: 2 +// } +// c: [1, 2] +// } +// +// An implementation may provide options to override this default behavior for +// repeated and message fields. +// +// In order to reset a field's value to the default, the field must +// be in the mask and set to the default value in the provided resource. +// Hence, in order to reset all fields of a resource, provide a default +// instance of the resource and set all fields in the mask, or do +// not provide a mask as described below. +// +// If a field mask is not present on update, the operation applies to +// all fields (as if a field mask of all fields has been specified). +// Note that in the presence of schema evolution, this may mean that +// fields the client does not know and has therefore not filled into +// the request will be reset to their default. If this is unwanted +// behavior, a specific service may require a client to always specify +// a field mask, producing an error if not. +// +// As with get operations, the location of the resource which +// describes the updated values in the request message depends on the +// operation kind. In any case, the effect of the field mask is +// required to be honored by the API. +// +// ## Considerations for HTTP REST +// +// The HTTP kind of an update operation which uses a field mask must +// be set to PATCH instead of PUT in order to satisfy HTTP semantics +// (PUT must only be used for full updates). +// +// # JSON Encoding of Field Masks +// +// In JSON, a field mask is encoded as a single string where paths are +// separated by a comma. Fields name in each path are converted +// to/from lower-camel naming conventions. +// +// As an example, consider the following message declarations: +// +// message Profile { +// User user = 1; +// Photo photo = 2; +// } +// message User { +// string display_name = 1; +// string address = 2; +// } +// +// In proto a field mask for `Profile` may look as such: +// +// mask { +// paths: "user.display_name" +// paths: "photo" +// } +// +// In JSON, the same mask is represented as below: +// +// { +// mask: "user.displayName,photo" +// } +// +// # Field Masks and Oneof Fields +// +// Field masks treat fields in oneofs just as regular fields. Consider the +// following message: +// +// message SampleMessage { +// oneof test_oneof { +// string name = 4; +// SubMessage sub_message = 9; +// } +// } +// +// The field mask can be: +// +// mask { +// paths: "name" +// } +// +// Or: +// +// mask { +// paths: "sub_message" +// } +// +// Note that oneof type names ("test_oneof" in this case) cannot be used in +// paths. +// +// ## Field Mask Verification +// +// The implementation of any API method which has a FieldMask type field in the +// request should verify the included field paths, and return an +// `INVALID_ARGUMENT` error if any path is unmappable. +message FieldMask { + // The set of field mask paths. + repeated string paths = 1; +} diff --git a/external/include/google/protobuf/generated_enum_reflection.h b/external/include/google/protobuf/generated_enum_reflection.h new file mode 100644 index 0000000..5debc0a --- /dev/null +++ b/external/include/google/protobuf/generated_enum_reflection.h @@ -0,0 +1,98 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: jasonh@google.com (Jason Hsueh) +// +// This header is logically internal, but is made public because it is used +// from protocol-compiler-generated code, which may reside in other components. +// It provides reflection support for generated enums, and is included in +// generated .pb.h files and should have minimal dependencies. The methods are +// implemented in generated_message_reflection.cc. + +#ifndef GOOGLE_PROTOBUF_GENERATED_ENUM_REFLECTION_H__ +#define GOOGLE_PROTOBUF_GENERATED_ENUM_REFLECTION_H__ + +#include + +#include +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +namespace google { +namespace protobuf { +class EnumDescriptor; +} // namespace protobuf +} // namespace google + +namespace google { +namespace protobuf { + +// Returns the EnumDescriptor for enum type E, which must be a +// proto-declared enum type. Code generated by the protocol compiler +// will include specializations of this template for each enum type declared. +template +const EnumDescriptor* GetEnumDescriptor(); + +namespace internal { + +// Helper for EnumType_Parse functions: try to parse the string 'name' as +// an enum name of the given type, returning true and filling in value on +// success, or returning false and leaving value unchanged on failure. +PROTOBUF_EXPORT bool ParseNamedEnum(const EnumDescriptor* descriptor, + ConstStringParam name, int* value); + +template +bool ParseNamedEnum(const EnumDescriptor* descriptor, ConstStringParam name, + EnumType* value) { + int tmp; + if (!ParseNamedEnum(descriptor, name, &tmp)) return false; + *value = static_cast(tmp); + return true; +} + +// Just a wrapper around printing the name of a value. The main point of this +// function is not to be inlined, so that you can do this without including +// descriptor.h. +PROTOBUF_EXPORT const std::string& NameOfEnum(const EnumDescriptor* descriptor, + int value); + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_GENERATED_ENUM_REFLECTION_H__ diff --git a/external/include/google/protobuf/generated_enum_util.h b/external/include/google/protobuf/generated_enum_util.h new file mode 100644 index 0000000..f1002e2 --- /dev/null +++ b/external/include/google/protobuf/generated_enum_util.h @@ -0,0 +1,83 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_GENERATED_ENUM_UTIL_H__ +#define GOOGLE_PROTOBUF_GENERATED_ENUM_UTIL_H__ + +#include + +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +// This type trait can be used to cause templates to only match proto2 enum +// types. +template +struct is_proto_enum : ::std::false_type {}; + +namespace internal { + +// The table entry format for storing enum name-to-value mapping used with lite +// protos. This struct and the following related functions should only be used +// by protobuf generated code. +struct EnumEntry { + StringPiece name; + int value; +}; + +// Looks up a numeric enum value given the string name. +PROTOBUF_EXPORT bool LookUpEnumValue(const EnumEntry* enums, size_t size, + StringPiece name, int* value); + +// Looks up an enum name given the numeric value. +PROTOBUF_EXPORT int LookUpEnumName(const EnumEntry* enums, + const int* sorted_indices, size_t size, + int value); + +// Initializes the list of enum names in std::string form. +PROTOBUF_EXPORT bool InitializeEnumStrings( + const EnumEntry* enums, const int* sorted_indices, size_t size, + internal::ExplicitlyConstructed* enum_strings); + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_GENERATED_ENUM_UTIL_H__ diff --git a/external/include/google/protobuf/generated_message_reflection.h b/external/include/google/protobuf/generated_message_reflection.h new file mode 100644 index 0000000..1771b47 --- /dev/null +++ b/external/include/google/protobuf/generated_message_reflection.h @@ -0,0 +1,326 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This header is logically internal, but is made public because it is used +// from protocol-compiler-generated code, which may reside in other components. + +#ifndef GOOGLE_PROTOBUF_GENERATED_MESSAGE_REFLECTION_H__ +#define GOOGLE_PROTOBUF_GENERATED_MESSAGE_REFLECTION_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +class MapKey; +class MapValueRef; +class MessageLayoutInspector; +class Message; +struct Metadata; +} // namespace protobuf +} // namespace google + +namespace google { +namespace protobuf { +namespace internal { +class DefaultEmptyOneof; +// Defined in other files. +class ExtensionSet; // extension_set.h +class WeakFieldMap; // weak_field_map.h + +// This struct describes the internal layout of the message, hence this is +// used to act on the message reflectively. +// default_instance: The default instance of the message. This is only +// used to obtain pointers to default instances of embedded +// messages, which GetMessage() will return if the particular +// sub-message has not been initialized yet. (Thus, all +// embedded message fields *must* have non-null pointers +// in the default instance.) +// offsets: An array of ints giving the byte offsets. +// For each oneof or weak field, the offset is relative to the +// default_instance. These can be computed at compile time +// using the +// PROTO2_GENERATED_DEFAULT_ONEOF_FIELD_OFFSET() +// macro. For each none oneof field, the offset is related to +// the start of the message object. These can be computed at +// compile time using the +// PROTO2_GENERATED_MESSAGE_FIELD_OFFSET() macro. +// Besides offsets for all fields, this array also contains +// offsets for oneof unions. The offset of the i-th oneof union +// is offsets[descriptor->field_count() + i]. +// has_bit_indices: Mapping from field indexes to their index in the has +// bit array. +// has_bits_offset: Offset in the message of an array of uint32s of size +// descriptor->field_count()/32, rounded up. This is a +// bitfield where each bit indicates whether or not the +// corresponding field of the message has been initialized. +// The bit for field index i is obtained by the expression: +// has_bits[i / 32] & (1 << (i % 32)) +// unknown_fields_offset: Offset in the message of the UnknownFieldSet for +// the message. +// extensions_offset: Offset in the message of the ExtensionSet for the +// message, or -1 if the message type has no extension +// ranges. +// oneof_case_offset: Offset in the message of an array of uint32s of +// size descriptor->oneof_decl_count(). Each uint32 +// indicates what field is set for each oneof. +// object_size: The size of a message object of this type, as measured +// by sizeof(). +// arena_offset: If a message doesn't have a unknown_field_set that stores +// the arena, it must have a direct pointer to the arena. +// weak_field_map_offset: If the message proto has weak fields, this is the +// offset of _weak_field_map_ in the generated proto. Otherwise +// -1. +struct ReflectionSchema { + public: + // Size of a google::protobuf::Message object of this type. + uint32 GetObjectSize() const { return static_cast(object_size_); } + + bool InRealOneof(const FieldDescriptor* field) const { + return field->containing_oneof() && + !field->containing_oneof()->is_synthetic(); + } + + // Offset of a non-oneof field. Getting a field offset is slightly more + // efficient when we know statically that it is not a oneof field. + uint32 GetFieldOffsetNonOneof(const FieldDescriptor* field) const { + GOOGLE_DCHECK(!InRealOneof(field)); + return OffsetValue(offsets_[field->index()], field->type()); + } + + // Offset of any field. + uint32 GetFieldOffset(const FieldDescriptor* field) const { + if (InRealOneof(field)) { + size_t offset = + static_cast(field->containing_type()->field_count() + + field->containing_oneof()->index()); + return OffsetValue(offsets_[offset], field->type()); + } else { + return GetFieldOffsetNonOneof(field); + } + } + + uint32 GetOneofCaseOffset(const OneofDescriptor* oneof_descriptor) const { + return static_cast(oneof_case_offset_) + + static_cast(static_cast(oneof_descriptor->index()) * + sizeof(uint32)); + } + + bool HasHasbits() const { return has_bits_offset_ != -1; } + + // Bit index within the bit array of hasbits. Bit order is low-to-high. + uint32 HasBitIndex(const FieldDescriptor* field) const { + if (has_bits_offset_ == -1) return static_cast(-1); + GOOGLE_DCHECK(HasHasbits()); + return has_bit_indices_[field->index()]; + } + + // Byte offset of the hasbits array. + uint32 HasBitsOffset() const { + GOOGLE_DCHECK(HasHasbits()); + return static_cast(has_bits_offset_); + } + + // The offset of the InternalMetadataWithArena member. + // For Lite this will actually be an InternalMetadataWithArenaLite. + // The schema doesn't contain enough information to distinguish between + // these two cases. + uint32 GetMetadataOffset() const { + return static_cast(metadata_offset_); + } + + // Whether this message has an ExtensionSet. + bool HasExtensionSet() const { return extensions_offset_ != -1; } + + // The offset of the ExtensionSet in this message. + uint32 GetExtensionSetOffset() const { + GOOGLE_DCHECK(HasExtensionSet()); + return static_cast(extensions_offset_); + } + + // The off set of WeakFieldMap when the message contains weak fields. + // The default is 0 for now. + int GetWeakFieldMapOffset() const { return weak_field_map_offset_; } + + bool IsDefaultInstance(const Message& message) const { + return &message == default_instance_; + } + + // Returns a pointer to the default value for this field. The size and type + // of the underlying data depends on the field's type. + const void* GetFieldDefault(const FieldDescriptor* field) const { + return reinterpret_cast(default_instance_) + + OffsetValue(offsets_[field->index()], field->type()); + } + + // Returns true if the field is implicitly backed by LazyField. + bool IsEagerlyVerifiedLazyField(const FieldDescriptor* field) const { + GOOGLE_DCHECK_EQ(field->type(), FieldDescriptor::TYPE_MESSAGE); + (void)field; + return false; + } + + // Returns true if the field's accessor is called by any external code (aka, + // non proto library code). + bool IsFieldUsed(const FieldDescriptor* field) const { + (void)field; + return true; + } + + bool IsFieldStripped(const FieldDescriptor* field) const { + (void)field; + return false; + } + + bool IsMessageStripped(const Descriptor* descriptor) const { + (void)descriptor; + return false; + } + + + bool HasWeakFields() const { return weak_field_map_offset_ > 0; } + + // These members are intended to be private, but we cannot actually make them + // private because this prevents us from using aggregate initialization of + // them, ie. + // + // ReflectionSchema schema = {a, b, c, d, e, ...}; + // private: + const Message* default_instance_; + const uint32* offsets_; + const uint32* has_bit_indices_; + int has_bits_offset_; + int metadata_offset_; + int extensions_offset_; + int oneof_case_offset_; + int object_size_; + int weak_field_map_offset_; + + // We tag offset values to provide additional data about fields (such as + // "unused" or "lazy"). + static uint32 OffsetValue(uint32 v, FieldDescriptor::Type type) { + if (type == FieldDescriptor::TYPE_MESSAGE) { + return v & 0x7FFFFFFEu; + } + return v & 0x7FFFFFFFu; + } +}; + +// Structs that the code generator emits directly to describe a message. +// These should never used directly except to build a ReflectionSchema +// object. +// +// EXPERIMENTAL: these are changing rapidly, and may completely disappear +// or merge with ReflectionSchema. +struct MigrationSchema { + int32 offsets_index; + int32 has_bit_indices_index; + int object_size; +}; + +// This struct tries to reduce unnecessary padding. +// The num_xxx might not be close to their respective pointer, but this saves +// padding. +struct PROTOBUF_EXPORT DescriptorTable { + mutable bool is_initialized; + bool is_eager; + int size; // of serialized descriptor + const char* descriptor; + const char* filename; + once_flag* once; + const DescriptorTable* const* deps; + int num_deps; + int num_messages; + const MigrationSchema* schemas; + const Message* const* default_instances; + const uint32* offsets; + // update the following descriptor arrays. + Metadata* file_level_metadata; + const EnumDescriptor** file_level_enum_descriptors; + const ServiceDescriptor** file_level_service_descriptors; +}; + +enum { + // Tag used on offsets for fields that don't have a real offset. + // For example, weak message fields go into the WeakFieldMap and not in an + // actual field. + kInvalidFieldOffsetTag = 0x40000000u, +}; + +// AssignDescriptors() pulls the compiled FileDescriptor from the DescriptorPool +// and uses it to populate all of the global variables which store pointers to +// the descriptor objects. It also constructs the reflection objects. It is +// called the first time anyone calls descriptor() or GetReflection() on one of +// the types defined in the file. AssignDescriptors() is thread-safe. +void PROTOBUF_EXPORT AssignDescriptors(const DescriptorTable* table, + bool eager = false); + +// Overload used to implement GetMetadataStatic in the generated code. +// See comments in compiler/cpp/internal/file.cc as to why. +// It takes a `Metadata` and returns it to allow for tail calls and reduce +// binary size. +Metadata PROTOBUF_EXPORT AssignDescriptors(const DescriptorTable* (*table)(), + internal::once_flag* once, + const Metadata& metadata); + +// These cannot be in lite so we put them in the reflection. +PROTOBUF_EXPORT void UnknownFieldSetSerializer(const uint8* base, uint32 offset, + uint32 tag, uint32 has_offset, + io::CodedOutputStream* output); + +struct PROTOBUF_EXPORT AddDescriptorsRunner { + explicit AddDescriptorsRunner(const DescriptorTable* table); +}; + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_GENERATED_MESSAGE_REFLECTION_H__ diff --git a/external/include/google/protobuf/generated_message_table_driven.h b/external/include/google/protobuf/generated_message_table_driven.h new file mode 100644 index 0000000..def4a1f --- /dev/null +++ b/external/include/google/protobuf/generated_message_table_driven.h @@ -0,0 +1,346 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_GENERATED_MESSAGE_TABLE_DRIVEN_H__ +#define GOOGLE_PROTOBUF_GENERATED_MESSAGE_TABLE_DRIVEN_H__ + +#include +#include +#include +#include +#include + +// We require C++11 and Clang to use constexpr for variables, as GCC 4.8 +// requires constexpr to be consistent between declarations of variables +// unnecessarily (see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58541). +// VS 2017 Update 3 also supports this usage of constexpr. +#if defined(__clang__) || (defined(_MSC_VER) && _MSC_VER >= 1911) +#define PROTOBUF_CONSTEXPR_VAR constexpr +#else // !__clang__ +#define PROTOBUF_CONSTEXPR_VAR +#endif // !_clang + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +namespace google { +namespace protobuf { +namespace internal { + +// Processing-type masks. +static constexpr const unsigned char kOneofMask = 0x40; +static constexpr const unsigned char kRepeatedMask = 0x20; +// Mask for the raw type: either a WireFormatLite::FieldType or one of the +// ProcessingTypes below, without the oneof or repeated flag. +static constexpr const unsigned char kTypeMask = 0x1f; + +// Wire type masks. +static constexpr const unsigned char kNotPackedMask = 0x10; +static constexpr const unsigned char kInvalidMask = 0x20; + +enum ProcessingTypes { + TYPE_STRING_CORD = 19, + TYPE_STRING_STRING_PIECE = 20, + TYPE_BYTES_CORD = 21, + TYPE_BYTES_STRING_PIECE = 22, + TYPE_MAP = 23, +}; + +static_assert(TYPE_MAP < kRepeatedMask, "Invalid enum"); + +struct PROTOBUF_EXPORT FieldMetadata { + uint32 offset; // offset of this field in the struct + uint32 tag; // field * 8 + wire_type + // byte offset * 8 + bit_offset; + // if the high bit is set then this is the byte offset of the oneof_case + // for this field. + uint32 has_offset; + uint32 type; // the type of this field. + const void* ptr; // auxiliary data + + // From the serializer point of view each fundamental type can occur in + // 4 different ways. For simplicity we treat all combinations as a cartesion + // product although not all combinations are allowed. + enum FieldTypeClass { + kPresence, + kNoPresence, + kRepeated, + kPacked, + kOneOf, + kNumTypeClasses // must be last enum + }; + // C++ protobuf has 20 fundamental types, were we added Cord and StringPiece + // and also distinguish the same types if they have different wire format. + enum { + kCordType = 19, + kStringPieceType = 20, + kNumTypes = 20, + kSpecial = kNumTypes * kNumTypeClasses, + }; + + static int CalculateType(int fundamental_type, FieldTypeClass type_class); +}; + +// TODO(ckennelly): Add a static assertion to ensure that these masks do not +// conflict with wiretypes. + +// ParseTableField is kept small to help simplify instructions for computing +// offsets, as we will always need this information to parse a field. +// Additional data, needed for some types, is stored in +// AuxiliaryParseTableField. +struct ParseTableField { + uint32 offset; + // The presence_index ordinarily represents a has_bit index, but for fields + // inside a oneof it represents the index in _oneof_case_. + uint32 presence_index; + unsigned char normal_wiretype; + unsigned char packed_wiretype; + + // processing_type is given by: + // (FieldDescriptor->type() << 1) | FieldDescriptor->is_packed() + unsigned char processing_type; + + unsigned char tag_size; +}; + +struct ParseTable; + +union AuxiliaryParseTableField { + typedef bool (*EnumValidator)(int); + + // Enums + struct enum_aux { + EnumValidator validator; + }; + enum_aux enums; + // Group, messages + struct message_aux { + // ExplicitlyInitialized -> T requires a reinterpret_cast, which prevents + // the tables from being constructed as a constexpr. We use void to avoid + // the cast. + const void* default_message_void; + const MessageLite* default_message() const { + return static_cast(default_message_void); + } + }; + message_aux messages; + // Strings + struct string_aux { + const void* default_ptr; + const char* field_name; + }; + string_aux strings; + + struct map_aux { + bool (*parse_map)(io::CodedInputStream*, void*); + }; + map_aux maps; + + AuxiliaryParseTableField() = default; + constexpr AuxiliaryParseTableField(AuxiliaryParseTableField::enum_aux e) + : enums(e) {} + constexpr AuxiliaryParseTableField(AuxiliaryParseTableField::message_aux m) + : messages(m) {} + constexpr AuxiliaryParseTableField(AuxiliaryParseTableField::string_aux s) + : strings(s) {} + constexpr AuxiliaryParseTableField(AuxiliaryParseTableField::map_aux m) + : maps(m) {} +}; + +struct ParseTable { + const ParseTableField* fields; + const AuxiliaryParseTableField* aux; + int max_field_number; + // TODO(ckennelly): Do something with this padding. + + // TODO(ckennelly): Vet these for sign extension. + int64 has_bits_offset; + int64 oneof_case_offset; + int64 extension_offset; + int64 arena_offset; + + // ExplicitlyInitialized -> T requires a reinterpret_cast, which prevents + // the tables from being constructed as a constexpr. We use void to avoid + // the cast. + const void* default_instance_void; + const MessageLite* default_instance() const { + return static_cast(default_instance_void); + } + + bool unknown_field_set; +}; + +static_assert(sizeof(ParseTableField) <= 16, "ParseTableField is too large"); +// The tables must be composed of POD components to ensure link-time +// initialization. +static_assert(std::is_standard_layout::value, ""); +static_assert(std::is_trivial::value, ""); +static_assert(std::is_standard_layout::value, ""); +static_assert(std::is_trivial::value, ""); +static_assert( + std::is_standard_layout::value, ""); +static_assert(std::is_trivial::value, ""); +static_assert( + std::is_standard_layout::value, ""); +static_assert(std::is_trivial::value, + ""); +static_assert( + std::is_standard_layout::value, ""); +static_assert(std::is_trivial::value, ""); +static_assert(std::is_standard_layout::value, ""); +static_assert(std::is_trivial::value, ""); + +// TODO(ckennelly): Consolidate these implementations into a single one, using +// dynamic dispatch to the appropriate unknown field handler. +bool MergePartialFromCodedStream(MessageLite* msg, const ParseTable& table, + io::CodedInputStream* input); +bool MergePartialFromCodedStreamLite(MessageLite* msg, const ParseTable& table, + io::CodedInputStream* input); + +template +bool ParseMap(io::CodedInputStream* input, void* map_field) { + typedef typename MapEntryToMapField::MapFieldType MapFieldType; + typedef Map + MapType; + typedef typename Entry::template Parser ParserType; + + ParserType parser(static_cast(map_field)); + return WireFormatLite::ReadMessageNoVirtual(input, &parser); +} + +struct SerializationTable { + int num_fields; + const FieldMetadata* field_table; +}; + +PROTOBUF_EXPORT void SerializeInternal(const uint8* base, + const FieldMetadata* table, + int32 num_fields, + io::CodedOutputStream* output); + +inline void TableSerialize(const MessageLite& msg, + const SerializationTable* table, + io::CodedOutputStream* output) { + const FieldMetadata* field_table = table->field_table; + int num_fields = table->num_fields - 1; + const uint8* base = reinterpret_cast(&msg); + // TODO(gerbens) This skips the first test if we could use the fast + // array serialization path, we should make this + // int cached_size = + // *reinterpret_cast(base + field_table->offset); + // SerializeWithCachedSize(msg, field_table + 1, num_fields, cached_size, ...) + // But we keep conformance with the old way for now. + SerializeInternal(base, field_table + 1, num_fields, output); +} + +PROTOBUF_EXPORT uint8* SerializeInternalToArray(const uint8* base, const FieldMetadata* table, + int32 num_fields, bool is_deterministic, + uint8* buffer); + +inline uint8* TableSerializeToArray(const MessageLite& msg, + const SerializationTable* table, + bool is_deterministic, uint8* buffer) { + const uint8* base = reinterpret_cast(&msg); + const FieldMetadata* field_table = table->field_table + 1; + int num_fields = table->num_fields - 1; + return SerializeInternalToArray(base, field_table, num_fields, + is_deterministic, buffer); +} + +template +struct CompareHelper { + bool operator()(const T& a, const T& b) const { return a < b; } +}; + +template <> +struct CompareHelper { + bool operator()(const ArenaStringPtr& a, const ArenaStringPtr& b) const { + return a.Get() < b.Get(); + } +}; + +struct CompareMapKey { + template + bool operator()(const MapEntryHelper& a, + const MapEntryHelper& b) const { + return Compare(a.key_, b.key_); + } + template + bool Compare(const T& a, const T& b) const { + return CompareHelper()(a, b); + } +}; + +template +void MapFieldSerializer(const uint8* base, uint32 offset, uint32 tag, + uint32 has_offset, io::CodedOutputStream* output) { + typedef MapEntryHelper Entry; + typedef typename MapFieldType::MapType::const_iterator Iter; + + const MapFieldType& map_field = + *reinterpret_cast(base + offset); + const SerializationTable* t = + table + + has_offset; // has_offset is overloaded for maps to mean table offset + if (!output->IsSerializationDeterministic()) { + for (Iter it = map_field.GetMap().begin(); it != map_field.GetMap().end(); + ++it) { + Entry map_entry(*it); + output->WriteVarint32(tag); + output->WriteVarint32(map_entry._cached_size_); + SerializeInternal(reinterpret_cast(&map_entry), + t->field_table, t->num_fields, output); + } + } else { + std::vector v; + for (Iter it = map_field.GetMap().begin(); it != map_field.GetMap().end(); + ++it) { + v.push_back(Entry(*it)); + } + std::sort(v.begin(), v.end(), CompareMapKey()); + for (int i = 0; i < v.size(); i++) { + output->WriteVarint32(tag); + output->WriteVarint32(v[i]._cached_size_); + SerializeInternal(reinterpret_cast(&v[i]), t->field_table, + t->num_fields, output); + } + } +} + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_GENERATED_MESSAGE_TABLE_DRIVEN_H__ diff --git a/external/include/google/protobuf/generated_message_tctable_decl.h b/external/include/google/protobuf/generated_message_tctable_decl.h new file mode 100644 index 0000000..9d2bc40 --- /dev/null +++ b/external/include/google/protobuf/generated_message_tctable_decl.h @@ -0,0 +1,123 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// This file contains declarations needed in generated headers for messages +// that use tail-call table parsing. Everything in this file is for internal +// use only. + +#ifndef GOOGLE_PROTOBUF_GENERATED_MESSAGE_TCTABLE_DECL_H__ +#define GOOGLE_PROTOBUF_GENERATED_MESSAGE_TCTABLE_DECL_H__ + +#include +#include + +#include +#include + +namespace google { +namespace protobuf { +namespace internal { + +// Additional information about this field: +struct TcFieldData { + constexpr TcFieldData() : data(0) {} + constexpr TcFieldData(uint16_t coded_tag, uint8_t hasbit_idx, uint16_t offset) + : data(static_cast(offset) << 48 | + static_cast(hasbit_idx) << 16 | coded_tag) {} + + uint16_t coded_tag() const { return static_cast(data); } + uint8_t hasbit_idx() const { return static_cast(data >> 16); } + uint16_t offset() const { return static_cast(data >> 48); } + + uint64_t data; +}; + +struct TailCallParseTableBase; + +// TailCallParseFunc is the function pointer type used in the tailcall table. +typedef const char* (*TailCallParseFunc)(MessageLite* msg, const char* ptr, + ParseContext* ctx, + const TailCallParseTableBase* table, + uint64_t hasbits, TcFieldData data); + +// Base class for message-level table with info for the tail-call parser. +struct TailCallParseTableBase { + // Common attributes for message layout: + uint16_t has_bits_offset; + uint16_t extension_offset; + uint32_t extension_range_low; + uint32_t extension_range_high; + uint32_t has_bits_required_mask; + const MessageLite* default_instance; + + // Handler for fields which are not handled by table dispatch. + TailCallParseFunc fallback; + + // Table entry for fast-path tailcall dispatch handling. + struct FieldEntry { + // Target function for dispatch: + TailCallParseFunc target; + // Field data used during parse: + TcFieldData bits; + }; + // There is always at least one table entry. + const FieldEntry* table() const { + return reinterpret_cast(this + 1); + } +}; + +static_assert(sizeof(TailCallParseTableBase::FieldEntry) <= 16, + "Field entry is too big."); + +template +struct TailCallParseTable { + TailCallParseTableBase header; + + // Entries for each field. + // + // Fields are indexed by the lowest bits of their field number. The field + // number is masked to fit inside the table. Note that the parsing logic + // generally calls `TailCallParseTableBase::table()` instead of accessing + // this field directly. + TailCallParseTableBase::FieldEntry entries[(1 << kTableSizeLog2)]; +}; + +static_assert(std::is_standard_layout>::value, + "TailCallParseTable must be standard layout."); + +static_assert(offsetof(TailCallParseTable<1>, entries) == + sizeof(TailCallParseTableBase), + "Table entries must be laid out after TailCallParseTableBase."); + +} // namespace internal +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_GENERATED_MESSAGE_TCTABLE_DECL_H__ diff --git a/external/include/google/protobuf/generated_message_tctable_impl.h b/external/include/google/protobuf/generated_message_tctable_impl.h new file mode 100644 index 0000000..07879bd --- /dev/null +++ b/external/include/google/protobuf/generated_message_tctable_impl.h @@ -0,0 +1,260 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_GENERATED_MESSAGE_TCTABLE_IMPL_H__ +#define GOOGLE_PROTOBUF_GENERATED_MESSAGE_TCTABLE_IMPL_H__ + +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +// Must come last: +#include + +namespace google { +namespace protobuf { + +class Message; +class UnknownFieldSet; + +namespace internal { + +// PROTOBUF_TC_PARAM_DECL are the parameters for tailcall functions. +// +// Note that this is performance sensitive: changing the parameters will change +// the registers used by the ABI calling convention, which subsequently affects +// register selection logic inside the function. +#define PROTOBUF_TC_PARAM_DECL \ + ::google::protobuf::MessageLite *msg, const char *ptr, \ + ::google::protobuf::internal::ParseContext *ctx, \ + const ::google::protobuf::internal::TailCallParseTableBase *table, \ + uint64_t hasbits, ::google::protobuf::internal::TcFieldData data + +// PROTOBUF_TC_PARAM_PASS passes values to match PROTOBUF_TC_PARAM_DECL. +#define PROTOBUF_TC_PARAM_PASS msg, ptr, ctx, table, hasbits, data + +class TcParserBase { + public: + static const char* GenericFallback(PROTOBUF_TC_PARAM_DECL); + static const char* GenericFallbackLite(PROTOBUF_TC_PARAM_DECL); + + template + PROTOBUF_NOINLINE static const char* SingularParseMessage( + PROTOBUF_TC_PARAM_DECL) { + if (PROTOBUF_PREDICT_FALSE(static_cast(data.coded_tag()) != 0)) { + return table->fallback(PROTOBUF_TC_PARAM_PASS); + } + ptr += sizeof(TagType); + hasbits |= (uint64_t{1} << data.hasbit_idx()); + auto& field = RefAt(msg, data.offset()); + if (field == nullptr) { + auto arena = ctx->data().arena; + if (Arena::is_arena_constructable::value) { + field = Arena::CreateMessage(arena); + } else { + field = Arena::Create(arena); + } + } + SyncHasbits(msg, hasbits, table); + return ctx->ParseMessage(field, ptr); + } + + template + PROTOBUF_NOINLINE static const char* RepeatedParseMessage( + PROTOBUF_TC_PARAM_DECL) { + if (PROTOBUF_PREDICT_FALSE(static_cast(data.coded_tag()) != 0)) { + return table->fallback(PROTOBUF_TC_PARAM_PASS); + } + ptr += sizeof(TagType); + auto& field = RefAt>(msg, data.offset()); + SyncHasbits(msg, hasbits, table); + ptr = ctx->ParseMessage(field.Add(), ptr); + return ptr; + } + + template + static const char* RepeatedFixed(PROTOBUF_TC_PARAM_DECL); + template + static const char* PackedFixed(PROTOBUF_TC_PARAM_DECL); + + enum VarintDecode { kNoConversion = 0, kZigZag = 1 }; + template + static const char* RepeatedVarint(PROTOBUF_TC_PARAM_DECL); + template + static const char* PackedVarint(PROTOBUF_TC_PARAM_DECL); + + enum Utf8Type { kNoUtf8 = 0, kUtf8 = 1, kUtf8ValidateOnly = 2 }; + template + static const char* SingularString(PROTOBUF_TC_PARAM_DECL); + template + static const char* RepeatedString(PROTOBUF_TC_PARAM_DECL); + + protected: + template + static T& RefAt(void* x, size_t offset) { + T* target = reinterpret_cast(static_cast(x) + offset); + GOOGLE_DCHECK_EQ(0, reinterpret_cast(target) % alignof(T)); + return *target; + } + + static inline PROTOBUF_ALWAYS_INLINE void SyncHasbits( + MessageLite* msg, uint64_t hasbits, const TailCallParseTableBase* table) { + const uint32_t has_bits_offset = table->has_bits_offset; + if (has_bits_offset) { + // Only the first 32 has-bits are updated. Nothing above those is stored, + // but e.g. messages without has-bits update the upper bits. + RefAt(msg, has_bits_offset) = static_cast(hasbits); + } + } + + static inline PROTOBUF_ALWAYS_INLINE const char* Return( + PROTOBUF_TC_PARAM_DECL) { + SyncHasbits(msg, hasbits, table); + return ptr; + } + + static inline PROTOBUF_ALWAYS_INLINE const char* Error( + PROTOBUF_TC_PARAM_DECL) { + SyncHasbits(msg, hasbits, table); + return nullptr; + } + + class ScopedArenaSwap final { + public: + ScopedArenaSwap(MessageLite* msg, ParseContext* ctx) + : ctx_(ctx), saved_(ctx->data().arena) { + ctx_->data().arena = msg->GetArenaForAllocation(); + } + ScopedArenaSwap(const ScopedArenaSwap&) = delete; + ~ScopedArenaSwap() { ctx_->data().arena = saved_; } + + private: + ParseContext* const ctx_; + Arena* const saved_; + }; + + template + static const char* GenericFallbackImpl(PROTOBUF_TC_PARAM_DECL) { +#define CHK_(x) \ + if (PROTOBUF_PREDICT_FALSE(!(x))) return nullptr /* NOLINT */ + + SyncHasbits(msg, hasbits, table); + uint32_t tag; + ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); + CHK_(ptr); + if ((tag & 7) == WireFormatLite::WIRETYPE_END_GROUP || tag == 0) { + ctx->SetLastTag(tag); + return ptr; + } + uint32_t num = tag >> 3; + if (table->extension_range_low <= num && + num <= table->extension_range_high) { + return RefAt(msg, table->extension_offset) + .ParseField(tag, ptr, + static_cast(table->default_instance), + &msg->_internal_metadata_, ctx); + } + return UnknownFieldParse( + tag, msg->_internal_metadata_.mutable_unknown_fields(), + ptr, ctx); +#undef CHK_ + } +}; + +// TcParser implements most of the parsing logic for tailcall tables. +// +// This is templated on lg2(table size), since dispatching depends upon the size +// of the table. The template parameter avoids runtime overhead for computing +// the table entry index. +template +struct TcParser final : TcParserBase { + // Dispatch to the designated parse function + inline PROTOBUF_ALWAYS_INLINE static const char* TagDispatch( + PROTOBUF_TC_PARAM_DECL) { + const auto coded_tag = UnalignedLoad(ptr); + constexpr size_t kIdxMask = ((1 << (kPowerOf2)) - 1); + const size_t idx = (coded_tag >> 3) & kIdxMask; + data = table->table()[idx].bits; + data.data ^= coded_tag; + PROTOBUF_MUSTTAIL return table->table()[idx].target(PROTOBUF_TC_PARAM_PASS); + } + + // We can only safely call from field to next field if the call is optimized + // to a proper tail call. Otherwise we blow through stack. Clang and gcc + // reliably do this optimization in opt mode, but do not perform this in debug + // mode. Luckily the structure of the algorithm is such that it's always + // possible to just return and use the enclosing parse loop as a trampoline. + static const char* TailCall(PROTOBUF_TC_PARAM_DECL) { + constexpr bool always_return = !PROTOBUF_TAILCALL; + if (always_return || !ctx->DataAvailable(ptr)) { + PROTOBUF_MUSTTAIL return Return(PROTOBUF_TC_PARAM_PASS); + } + PROTOBUF_MUSTTAIL return TagDispatch(PROTOBUF_TC_PARAM_PASS); + } + + static const char* ParseLoop(MessageLite* msg, const char* ptr, + ParseContext* ctx, + const TailCallParseTableBase* table) { + ScopedArenaSwap saved(msg, ctx); + const uint32_t has_bits_offset = table->has_bits_offset; + while (!ctx->Done(&ptr)) { + uint64_t hasbits = 0; + if (has_bits_offset) hasbits = RefAt(msg, has_bits_offset); + ptr = TagDispatch(msg, ptr, ctx, table, hasbits, {}); + if (ptr == nullptr) break; + if (ctx->LastTag() != 1) break; // Ended on terminating tag + } + return ptr; + } + + template + static const char* SingularFixed(PROTOBUF_TC_PARAM_DECL); + + template + static const char* SingularVarint(PROTOBUF_TC_PARAM_DECL); +}; + +// Declare helper functions: +#include + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_GENERATED_MESSAGE_TCTABLE_IMPL_H__ diff --git a/external/include/google/protobuf/generated_message_tctable_impl.inc b/external/include/google/protobuf/generated_message_tctable_impl.inc new file mode 100644 index 0000000..e6e5dd5 --- /dev/null +++ b/external/include/google/protobuf/generated_message_tctable_impl.inc @@ -0,0 +1,255 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// clang-format off +#ifdef PROTOBUF_TCT_SOURCE +template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +#else +extern template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedFixed(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<1>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<2>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<3>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<4>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParser<5>::SingularVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::PackedVarint(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::SingularString(PROTOBUF_TC_PARAM_DECL); +extern template const char* TcParserBase::RepeatedString(PROTOBUF_TC_PARAM_DECL); +#endif +// clang-format on diff --git a/external/include/google/protobuf/generated_message_util.h b/external/include/google/protobuf/generated_message_util.h new file mode 100644 index 0000000..94c6c29 --- /dev/null +++ b/external/include/google/protobuf/generated_message_util.h @@ -0,0 +1,212 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This file contains miscellaneous helper code used by generated code -- +// including lite types -- but which should not be used directly by users. + +#ifndef GOOGLE_PROTOBUF_GENERATED_MESSAGE_UTIL_H__ +#define GOOGLE_PROTOBUF_GENERATED_MESSAGE_UTIL_H__ + +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include // Add direct dep on port for pb.cc +#include +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +class Arena; +class Message; + +namespace io { +class CodedInputStream; +} + +namespace internal { + +template +inline To DownCast(From* f) { + return PROTOBUF_NAMESPACE_ID::internal::down_cast(f); +} +template +inline To DownCast(From& f) { + return PROTOBUF_NAMESPACE_ID::internal::down_cast(f); +} + + +// This fastpath inlines a single branch instead of having to make the +// InitProtobufDefaults function call. +// It also generates less inlined code than a function-scope static initializer. +PROTOBUF_EXPORT extern std::atomic init_protobuf_defaults_state; +PROTOBUF_EXPORT void InitProtobufDefaultsSlow(); +PROTOBUF_EXPORT inline void InitProtobufDefaults() { + if (PROTOBUF_PREDICT_FALSE( + !init_protobuf_defaults_state.load(std::memory_order_acquire))) { + InitProtobufDefaultsSlow(); + } +} + +// This used by proto1 +PROTOBUF_EXPORT inline const std::string& GetEmptyString() { + InitProtobufDefaults(); + return GetEmptyStringAlreadyInited(); +} + + +// True if IsInitialized() is true for all elements of t. Type is expected +// to be a RepeatedPtrField. It's useful to have this +// helper here to keep the protobuf compiler from ever having to emit loops in +// IsInitialized() methods. We want the C++ compiler to inline this or not +// as it sees fit. +template +bool AllAreInitialized(const RepeatedPtrField& t) { + for (int i = t.size(); --i >= 0;) { + if (!t.Get(i).IsInitialized()) return false; + } + return true; +} + +// "Weak" variant of AllAreInitialized, used to implement implicit weak fields. +// This version operates on MessageLite to avoid introducing a dependency on the +// concrete message type. +template +bool AllAreInitializedWeak(const RepeatedPtrField& t) { + for (int i = t.size(); --i >= 0;) { + if (!reinterpret_cast(t) + .Get >(i) + .IsInitialized()) { + return false; + } + } + return true; +} + +inline bool IsPresent(const void* base, uint32 hasbit) { + const uint32* has_bits_array = static_cast(base); + return (has_bits_array[hasbit / 32] & (1u << (hasbit & 31))) != 0; +} + +inline bool IsOneofPresent(const void* base, uint32 offset, uint32 tag) { + const uint32* oneof = + reinterpret_cast(static_cast(base) + offset); + return *oneof == tag >> 3; +} + +typedef void (*SpecialSerializer)(const uint8* base, uint32 offset, uint32 tag, + uint32 has_offset, + io::CodedOutputStream* output); + +PROTOBUF_EXPORT void ExtensionSerializer(const uint8* base, uint32 offset, + uint32 tag, uint32 has_offset, + io::CodedOutputStream* output); +PROTOBUF_EXPORT void UnknownFieldSerializerLite(const uint8* base, + uint32 offset, uint32 tag, + uint32 has_offset, + io::CodedOutputStream* output); + +PROTOBUF_EXPORT MessageLite* DuplicateIfNonNullInternal(MessageLite* message); +PROTOBUF_EXPORT MessageLite* GetOwnedMessageInternal(Arena* message_arena, + MessageLite* submessage, + Arena* submessage_arena); +PROTOBUF_EXPORT void GenericSwap(MessageLite* m1, MessageLite* m2); +// We specialize GenericSwap for non-lite messages to benefit from reflection. +PROTOBUF_EXPORT void GenericSwap(Message* m1, Message* m2); + +template +T* DuplicateIfNonNull(T* message) { + // The casts must be reinterpret_cast<> because T might be a forward-declared + // type that the compiler doesn't know is related to MessageLite. + return reinterpret_cast( + DuplicateIfNonNullInternal(reinterpret_cast(message))); +} + +template +T* GetOwnedMessage(Arena* message_arena, T* submessage, + Arena* submessage_arena) { + // The casts must be reinterpret_cast<> because T might be a forward-declared + // type that the compiler doesn't know is related to MessageLite. + return reinterpret_cast(GetOwnedMessageInternal( + message_arena, reinterpret_cast(submessage), + submessage_arena)); +} + +// Hide atomic from the public header and allow easy change to regular int +// on platforms where the atomic might have a perf impact. +class PROTOBUF_EXPORT CachedSize { + public: + int Get() const { return size_.load(std::memory_order_relaxed); } + void Set(int size) { size_.store(size, std::memory_order_relaxed); } + + private: + std::atomic size_{0}; +}; + +PROTOBUF_EXPORT void DestroyMessage(const void* message); +PROTOBUF_EXPORT void DestroyString(const void* s); +// Destroy (not delete) the message +inline void OnShutdownDestroyMessage(const void* ptr) { + OnShutdownRun(DestroyMessage, ptr); +} +// Destroy the string (call std::string destructor) +inline void OnShutdownDestroyString(const std::string* ptr) { + OnShutdownRun(DestroyString, ptr); +} + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_GENERATED_MESSAGE_UTIL_H__ diff --git a/external/include/google/protobuf/has_bits.h b/external/include/google/protobuf/has_bits.h new file mode 100644 index 0000000..66d3cd4 --- /dev/null +++ b/external/include/google/protobuf/has_bits.h @@ -0,0 +1,116 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_HAS_BITS_H__ +#define GOOGLE_PROTOBUF_HAS_BITS_H__ + +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +namespace internal { + +template +class HasBits { + public: + PROTOBUF_NDEBUG_INLINE constexpr HasBits() : has_bits_{} {} + + PROTOBUF_NDEBUG_INLINE void Clear() { + memset(has_bits_, 0, sizeof(has_bits_)); + } + + PROTOBUF_NDEBUG_INLINE uint32& operator[](int index) { + return has_bits_[index]; + } + + PROTOBUF_NDEBUG_INLINE const uint32& operator[](int index) const { + return has_bits_[index]; + } + + bool operator==(const HasBits& rhs) const { + return memcmp(has_bits_, rhs.has_bits_, sizeof(has_bits_)) == 0; + } + + bool operator!=(const HasBits& rhs) const { + return !(*this == rhs); + } + + void Or(const HasBits& rhs) { + for (size_t i = 0; i < doublewords; i++) has_bits_[i] |= rhs[i]; + } + + bool empty() const; + + private: + uint32 has_bits_[doublewords]; +}; + +template <> +inline bool HasBits<1>::empty() const { + return !has_bits_[0]; +} + +template <> +inline bool HasBits<2>::empty() const { + return !(has_bits_[0] | has_bits_[1]); +} + +template <> +inline bool HasBits<3>::empty() const { + return !(has_bits_[0] | has_bits_[1] | has_bits_[2]); +} + +template <> +inline bool HasBits<4>::empty() const { + return !(has_bits_[0] | has_bits_[1] | has_bits_[2] | has_bits_[3]); +} + +template +inline bool HasBits::empty() const { + for (size_t i = 0; i < doublewords; ++i) { + if (has_bits_[i]) return false; + } + return true; +} + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_HAS_BITS_H__ diff --git a/external/include/google/protobuf/implicit_weak_message.h b/external/include/google/protobuf/implicit_weak_message.h new file mode 100644 index 0000000..bfa6a81 --- /dev/null +++ b/external/include/google/protobuf/implicit_weak_message.h @@ -0,0 +1,190 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_IMPLICIT_WEAK_MESSAGE_H__ +#define GOOGLE_PROTOBUF_IMPLICIT_WEAK_MESSAGE_H__ + +#include + +#include +#include +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +// This file is logically internal-only and should only be used by protobuf +// generated code. + +namespace google { +namespace protobuf { +namespace internal { + +// An implementation of MessageLite that treats all data as unknown. This type +// acts as a placeholder for an implicit weak field in the case where the true +// message type does not get linked into the binary. +class PROTOBUF_EXPORT ImplicitWeakMessage : public MessageLite { + public: + ImplicitWeakMessage() {} + explicit ImplicitWeakMessage(Arena* arena) : MessageLite(arena) {} + + static const ImplicitWeakMessage* default_instance(); + + std::string GetTypeName() const override { return ""; } + + MessageLite* New() const override { return new ImplicitWeakMessage; } + MessageLite* New(Arena* arena) const override { + return Arena::CreateMessage(arena); + } + + void Clear() override { data_.clear(); } + + bool IsInitialized() const override { return true; } + + void CheckTypeAndMergeFrom(const MessageLite& other) override { + data_.append(static_cast(other).data_); + } + + const char* _InternalParse(const char* ptr, ParseContext* ctx) final; + + size_t ByteSizeLong() const override { return data_.size(); } + + uint8* _InternalSerialize(uint8* target, + io::EpsCopyOutputStream* stream) const final { + return stream->WriteRaw(data_.data(), static_cast(data_.size()), + target); + } + + int GetCachedSize() const override { return static_cast(data_.size()); } + + typedef void InternalArenaConstructable_; + + private: + std::string data_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ImplicitWeakMessage); +}; + +// A type handler for use with implicit weak repeated message fields. +template +class ImplicitWeakTypeHandler { + public: + typedef MessageLite Type; + static constexpr bool Moveable = false; + + static inline MessageLite* NewFromPrototype(const MessageLite* prototype, + Arena* arena = NULL) { + return prototype->New(arena); + } + + static inline void Delete(MessageLite* value, Arena* arena) { + if (arena == NULL) { + delete value; + } + } + static inline Arena* GetArena(MessageLite* value) { + return value->GetArena(); + } + static inline void* GetMaybeArenaPointer(MessageLite* value) { + return value->GetArena(); + } + static inline void Clear(MessageLite* value) { value->Clear(); } + static void Merge(const MessageLite& from, MessageLite* to) { + to->CheckTypeAndMergeFrom(from); + } +}; + +} // namespace internal + +template +struct WeakRepeatedPtrField { + using TypeHandler = internal::ImplicitWeakTypeHandler; + constexpr WeakRepeatedPtrField() : weak() {} + explicit WeakRepeatedPtrField(Arena* arena) : weak(arena) {} + ~WeakRepeatedPtrField() { weak.template Destroy(); } + + typedef internal::RepeatedPtrIterator iterator; + typedef internal::RepeatedPtrIterator const_iterator; + typedef internal::RepeatedPtrOverPtrsIterator + pointer_iterator; + typedef internal::RepeatedPtrOverPtrsIterator + const_pointer_iterator; + + iterator begin() { return iterator(base().raw_data()); } + const_iterator begin() const { return iterator(base().raw_data()); } + const_iterator cbegin() const { return begin(); } + iterator end() { return begin() + base().size(); } + const_iterator end() const { return begin() + base().size(); } + const_iterator cend() const { return end(); } + pointer_iterator pointer_begin() { + return pointer_iterator(base().raw_mutable_data()); + } + const_pointer_iterator pointer_begin() const { + return const_pointer_iterator(base().raw_mutable_data()); + } + pointer_iterator pointer_end() { + return pointer_iterator(base().raw_mutable_data() + base().size()); + } + const_pointer_iterator pointer_end() const { + return const_pointer_iterator(base().raw_mutable_data() + base().size()); + } + + MessageLite* AddWeak(const MessageLite* prototype) { + return base().AddWeak(prototype); + } + T* Add() { return weak.Add(); } + void Clear() { base().template Clear(); } + void MergeFrom(const WeakRepeatedPtrField& other) { + base().template MergeFrom(other.base()); + } + void InternalSwap(WeakRepeatedPtrField* other) { + base().InternalSwap(&other->base()); + } + + const internal::RepeatedPtrFieldBase& base() const { return weak; } + internal::RepeatedPtrFieldBase& base() { return weak; } + // Union disables running the destructor. Which would create a strong link. + // Instead we explicitly destroy the underlying base through the virtual + // destructor. + union { + RepeatedPtrField weak; + }; +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_IMPLICIT_WEAK_MESSAGE_H__ diff --git a/external/include/google/protobuf/io/coded_stream.h b/external/include/google/protobuf/io/coded_stream.h new file mode 100644 index 0000000..1cf0068 --- /dev/null +++ b/external/include/google/protobuf/io/coded_stream.h @@ -0,0 +1,1738 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This file contains the CodedInputStream and CodedOutputStream classes, +// which wrap a ZeroCopyInputStream or ZeroCopyOutputStream, respectively, +// and allow you to read or write individual pieces of data in various +// formats. In particular, these implement the varint encoding for +// integers, a simple variable-length encoding in which smaller numbers +// take fewer bytes. +// +// Typically these classes will only be used internally by the protocol +// buffer library in order to encode and decode protocol buffers. Clients +// of the library only need to know about this class if they wish to write +// custom message parsing or serialization procedures. +// +// CodedOutputStream example: +// // Write some data to "myfile". First we write a 4-byte "magic number" +// // to identify the file type, then write a length-delimited string. The +// // string is composed of a varint giving the length followed by the raw +// // bytes. +// int fd = open("myfile", O_CREAT | O_WRONLY); +// ZeroCopyOutputStream* raw_output = new FileOutputStream(fd); +// CodedOutputStream* coded_output = new CodedOutputStream(raw_output); +// +// int magic_number = 1234; +// char text[] = "Hello world!"; +// coded_output->WriteLittleEndian32(magic_number); +// coded_output->WriteVarint32(strlen(text)); +// coded_output->WriteRaw(text, strlen(text)); +// +// delete coded_output; +// delete raw_output; +// close(fd); +// +// CodedInputStream example: +// // Read a file created by the above code. +// int fd = open("myfile", O_RDONLY); +// ZeroCopyInputStream* raw_input = new FileInputStream(fd); +// CodedInputStream* coded_input = new CodedInputStream(raw_input); +// +// coded_input->ReadLittleEndian32(&magic_number); +// if (magic_number != 1234) { +// cerr << "File not in expected format." << endl; +// return; +// } +// +// uint32 size; +// coded_input->ReadVarint32(&size); +// +// char* text = new char[size + 1]; +// coded_input->ReadRaw(buffer, size); +// text[size] = '\0'; +// +// delete coded_input; +// delete raw_input; +// close(fd); +// +// cout << "Text is: " << text << endl; +// delete [] text; +// +// For those who are interested, varint encoding is defined as follows: +// +// The encoding operates on unsigned integers of up to 64 bits in length. +// Each byte of the encoded value has the format: +// * bits 0-6: Seven bits of the number being encoded. +// * bit 7: Zero if this is the last byte in the encoding (in which +// case all remaining bits of the number are zero) or 1 if +// more bytes follow. +// The first byte contains the least-significant 7 bits of the number, the +// second byte (if present) contains the next-least-significant 7 bits, +// and so on. So, the binary number 1011000101011 would be encoded in two +// bytes as "10101011 00101100". +// +// In theory, varint could be used to encode integers of any length. +// However, for practicality we set a limit at 64 bits. The maximum encoded +// length of a number is thus 10 bytes. + +#ifndef GOOGLE_PROTOBUF_IO_CODED_STREAM_H__ +#define GOOGLE_PROTOBUF_IO_CODED_STREAM_H__ + + +#include + +#include +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 +// Assuming windows is always little-endian. +#if !defined(PROTOBUF_DISABLE_LITTLE_ENDIAN_OPT_FOR_TEST) +#define PROTOBUF_LITTLE_ENDIAN 1 +#endif +#if defined(_MSC_VER) && _MSC_VER >= 1300 && !defined(__INTEL_COMPILER) +// If MSVC has "/RTCc" set, it will complain about truncating casts at +// runtime. This file contains some intentional truncating casts. +#pragma runtime_checks("c", off) +#endif +#else +#ifdef __APPLE__ +#include // __BYTE_ORDER +#elif defined(__FreeBSD__) +#include // __BYTE_ORDER +#else +#if !defined(__QNX__) +#include // __BYTE_ORDER +#endif +#endif +#if ((defined(__LITTLE_ENDIAN__) && !defined(__BIG_ENDIAN__)) || \ + (defined(__BYTE_ORDER) && __BYTE_ORDER == __LITTLE_ENDIAN)) && \ + !defined(PROTOBUF_DISABLE_LITTLE_ENDIAN_OPT_FOR_TEST) +#define PROTOBUF_LITTLE_ENDIAN 1 +#endif +#endif +#include +#include +#include +#include +#include + + +#include + +namespace google { +namespace protobuf { + +class DescriptorPool; +class MessageFactory; +class ZeroCopyCodedInputStream; + +namespace internal { +void MapTestForceDeterministic(); +class EpsCopyByteStream; +} // namespace internal + +namespace io { + +// Defined in this file. +class CodedInputStream; +class CodedOutputStream; + +// Defined in other files. +class ZeroCopyInputStream; // zero_copy_stream.h +class ZeroCopyOutputStream; // zero_copy_stream.h + +// Class which reads and decodes binary data which is composed of varint- +// encoded integers and fixed-width pieces. Wraps a ZeroCopyInputStream. +// Most users will not need to deal with CodedInputStream. +// +// Most methods of CodedInputStream that return a bool return false if an +// underlying I/O error occurs or if the data is malformed. Once such a +// failure occurs, the CodedInputStream is broken and is no longer useful. +// After a failure, callers also should assume writes to "out" args may have +// occurred, though nothing useful can be determined from those writes. +class PROTOBUF_EXPORT CodedInputStream { + public: + // Create a CodedInputStream that reads from the given ZeroCopyInputStream. + explicit CodedInputStream(ZeroCopyInputStream* input); + + // Create a CodedInputStream that reads from the given flat array. This is + // faster than using an ArrayInputStream. PushLimit(size) is implied by + // this constructor. + explicit CodedInputStream(const uint8* buffer, int size); + + // Destroy the CodedInputStream and position the underlying + // ZeroCopyInputStream at the first unread byte. If an error occurred while + // reading (causing a method to return false), then the exact position of + // the input stream may be anywhere between the last value that was read + // successfully and the stream's byte limit. + ~CodedInputStream(); + + // Return true if this CodedInputStream reads from a flat array instead of + // a ZeroCopyInputStream. + inline bool IsFlat() const; + + // Skips a number of bytes. Returns false if an underlying read error + // occurs. + inline bool Skip(int count); + + // Sets *data to point directly at the unread part of the CodedInputStream's + // underlying buffer, and *size to the size of that buffer, but does not + // advance the stream's current position. This will always either produce + // a non-empty buffer or return false. If the caller consumes any of + // this data, it should then call Skip() to skip over the consumed bytes. + // This may be useful for implementing external fast parsing routines for + // types of data not covered by the CodedInputStream interface. + bool GetDirectBufferPointer(const void** data, int* size); + + // Like GetDirectBufferPointer, but this method is inlined, and does not + // attempt to Refresh() if the buffer is currently empty. + PROTOBUF_ALWAYS_INLINE + void GetDirectBufferPointerInline(const void** data, int* size); + + // Read raw bytes, copying them into the given buffer. + bool ReadRaw(void* buffer, int size); + + // Like ReadRaw, but reads into a string. + bool ReadString(std::string* buffer, int size); + + + // Read a 32-bit little-endian integer. + bool ReadLittleEndian32(uint32* value); + // Read a 64-bit little-endian integer. + bool ReadLittleEndian64(uint64* value); + + // These methods read from an externally provided buffer. The caller is + // responsible for ensuring that the buffer has sufficient space. + // Read a 32-bit little-endian integer. + static const uint8* ReadLittleEndian32FromArray(const uint8* buffer, + uint32* value); + // Read a 64-bit little-endian integer. + static const uint8* ReadLittleEndian64FromArray(const uint8* buffer, + uint64* value); + + // Read an unsigned integer with Varint encoding, truncating to 32 bits. + // Reading a 32-bit value is equivalent to reading a 64-bit one and casting + // it to uint32, but may be more efficient. + bool ReadVarint32(uint32* value); + // Read an unsigned integer with Varint encoding. + bool ReadVarint64(uint64* value); + + // Reads a varint off the wire into an "int". This should be used for reading + // sizes off the wire (sizes of strings, submessages, bytes fields, etc). + // + // The value from the wire is interpreted as unsigned. If its value exceeds + // the representable value of an integer on this platform, instead of + // truncating we return false. Truncating (as performed by ReadVarint32() + // above) is an acceptable approach for fields representing an integer, but + // when we are parsing a size from the wire, truncating the value would result + // in us misparsing the payload. + bool ReadVarintSizeAsInt(int* value); + + // Read a tag. This calls ReadVarint32() and returns the result, or returns + // zero (which is not a valid tag) if ReadVarint32() fails. Also, ReadTag + // (but not ReadTagNoLastTag) updates the last tag value, which can be checked + // with LastTagWas(). + // + // Always inline because this is only called in one place per parse loop + // but it is called for every iteration of said loop, so it should be fast. + // GCC doesn't want to inline this by default. + PROTOBUF_ALWAYS_INLINE uint32 ReadTag() { + return last_tag_ = ReadTagNoLastTag(); + } + + PROTOBUF_ALWAYS_INLINE uint32 ReadTagNoLastTag(); + + // This usually a faster alternative to ReadTag() when cutoff is a manifest + // constant. It does particularly well for cutoff >= 127. The first part + // of the return value is the tag that was read, though it can also be 0 in + // the cases where ReadTag() would return 0. If the second part is true + // then the tag is known to be in [0, cutoff]. If not, the tag either is + // above cutoff or is 0. (There's intentional wiggle room when tag is 0, + // because that can arise in several ways, and for best performance we want + // to avoid an extra "is tag == 0?" check here.) + PROTOBUF_ALWAYS_INLINE + std::pair ReadTagWithCutoff(uint32 cutoff) { + std::pair result = ReadTagWithCutoffNoLastTag(cutoff); + last_tag_ = result.first; + return result; + } + + PROTOBUF_ALWAYS_INLINE + std::pair ReadTagWithCutoffNoLastTag(uint32 cutoff); + + // Usually returns true if calling ReadVarint32() now would produce the given + // value. Will always return false if ReadVarint32() would not return the + // given value. If ExpectTag() returns true, it also advances past + // the varint. For best performance, use a compile-time constant as the + // parameter. + // Always inline because this collapses to a small number of instructions + // when given a constant parameter, but GCC doesn't want to inline by default. + PROTOBUF_ALWAYS_INLINE bool ExpectTag(uint32 expected); + + // Like above, except this reads from the specified buffer. The caller is + // responsible for ensuring that the buffer is large enough to read a varint + // of the expected size. For best performance, use a compile-time constant as + // the expected tag parameter. + // + // Returns a pointer beyond the expected tag if it was found, or NULL if it + // was not. + PROTOBUF_ALWAYS_INLINE + static const uint8* ExpectTagFromArray(const uint8* buffer, uint32 expected); + + // Usually returns true if no more bytes can be read. Always returns false + // if more bytes can be read. If ExpectAtEnd() returns true, a subsequent + // call to LastTagWas() will act as if ReadTag() had been called and returned + // zero, and ConsumedEntireMessage() will return true. + bool ExpectAtEnd(); + + // If the last call to ReadTag() or ReadTagWithCutoff() returned the given + // value, returns true. Otherwise, returns false. + // ReadTagNoLastTag/ReadTagWithCutoffNoLastTag do not preserve the last + // returned value. + // + // This is needed because parsers for some types of embedded messages + // (with field type TYPE_GROUP) don't actually know that they've reached the + // end of a message until they see an ENDGROUP tag, which was actually part + // of the enclosing message. The enclosing message would like to check that + // tag to make sure it had the right number, so it calls LastTagWas() on + // return from the embedded parser to check. + bool LastTagWas(uint32 expected); + void SetLastTag(uint32 tag) { last_tag_ = tag; } + + // When parsing message (but NOT a group), this method must be called + // immediately after MergeFromCodedStream() returns (if it returns true) + // to further verify that the message ended in a legitimate way. For + // example, this verifies that parsing did not end on an end-group tag. + // It also checks for some cases where, due to optimizations, + // MergeFromCodedStream() can incorrectly return true. + bool ConsumedEntireMessage(); + void SetConsumed() { legitimate_message_end_ = true; } + + // Limits ---------------------------------------------------------- + // Limits are used when parsing length-delimited embedded messages. + // After the message's length is read, PushLimit() is used to prevent + // the CodedInputStream from reading beyond that length. Once the + // embedded message has been parsed, PopLimit() is called to undo the + // limit. + + // Opaque type used with PushLimit() and PopLimit(). Do not modify + // values of this type yourself. The only reason that this isn't a + // struct with private internals is for efficiency. + typedef int Limit; + + // Places a limit on the number of bytes that the stream may read, + // starting from the current position. Once the stream hits this limit, + // it will act like the end of the input has been reached until PopLimit() + // is called. + // + // As the names imply, the stream conceptually has a stack of limits. The + // shortest limit on the stack is always enforced, even if it is not the + // top limit. + // + // The value returned by PushLimit() is opaque to the caller, and must + // be passed unchanged to the corresponding call to PopLimit(). + Limit PushLimit(int byte_limit); + + // Pops the last limit pushed by PushLimit(). The input must be the value + // returned by that call to PushLimit(). + void PopLimit(Limit limit); + + // Returns the number of bytes left until the nearest limit on the + // stack is hit, or -1 if no limits are in place. + int BytesUntilLimit() const; + + // Returns current position relative to the beginning of the input stream. + int CurrentPosition() const; + + // Total Bytes Limit ----------------------------------------------- + // To prevent malicious users from sending excessively large messages + // and causing memory exhaustion, CodedInputStream imposes a hard limit on + // the total number of bytes it will read. + + // Sets the maximum number of bytes that this CodedInputStream will read + // before refusing to continue. To prevent servers from allocating enormous + // amounts of memory to hold parsed messages, the maximum message length + // should be limited to the shortest length that will not harm usability. + // The default limit is INT_MAX (~2GB) and apps should set shorter limits + // if possible. An error will always be printed to stderr if the limit is + // reached. + // + // Note: setting a limit less than the current read position is interpreted + // as a limit on the current position. + // + // This is unrelated to PushLimit()/PopLimit(). + void SetTotalBytesLimit(int total_bytes_limit); + + PROTOBUF_DEPRECATED_MSG( + "Please use the single parameter version of SetTotalBytesLimit(). The " + "second parameter is ignored.") + void SetTotalBytesLimit(int total_bytes_limit, int) { + SetTotalBytesLimit(total_bytes_limit); + } + + // The Total Bytes Limit minus the Current Position, or -1 if the total bytes + // limit is INT_MAX. + int BytesUntilTotalBytesLimit() const; + + // Recursion Limit ------------------------------------------------- + // To prevent corrupt or malicious messages from causing stack overflows, + // we must keep track of the depth of recursion when parsing embedded + // messages and groups. CodedInputStream keeps track of this because it + // is the only object that is passed down the stack during parsing. + + // Sets the maximum recursion depth. The default is 100. + void SetRecursionLimit(int limit); + int RecursionBudget() { return recursion_budget_; } + + static int GetDefaultRecursionLimit() { return default_recursion_limit_; } + + // Increments the current recursion depth. Returns true if the depth is + // under the limit, false if it has gone over. + bool IncrementRecursionDepth(); + + // Decrements the recursion depth if possible. + void DecrementRecursionDepth(); + + // Decrements the recursion depth blindly. This is faster than + // DecrementRecursionDepth(). It should be used only if all previous + // increments to recursion depth were successful. + void UnsafeDecrementRecursionDepth(); + + // Shorthand for make_pair(PushLimit(byte_limit), --recursion_budget_). + // Using this can reduce code size and complexity in some cases. The caller + // is expected to check that the second part of the result is non-negative (to + // bail out if the depth of recursion is too high) and, if all is well, to + // later pass the first part of the result to PopLimit() or similar. + std::pair IncrementRecursionDepthAndPushLimit( + int byte_limit); + + // Shorthand for PushLimit(ReadVarint32(&length) ? length : 0). + Limit ReadLengthAndPushLimit(); + + // Helper that is equivalent to: { + // bool result = ConsumedEntireMessage(); + // PopLimit(limit); + // UnsafeDecrementRecursionDepth(); + // return result; } + // Using this can reduce code size and complexity in some cases. + // Do not use unless the current recursion depth is greater than zero. + bool DecrementRecursionDepthAndPopLimit(Limit limit); + + // Helper that is equivalent to: { + // bool result = ConsumedEntireMessage(); + // PopLimit(limit); + // return result; } + // Using this can reduce code size and complexity in some cases. + bool CheckEntireMessageConsumedAndPopLimit(Limit limit); + + // Extension Registry ---------------------------------------------- + // ADVANCED USAGE: 99.9% of people can ignore this section. + // + // By default, when parsing extensions, the parser looks for extension + // definitions in the pool which owns the outer message's Descriptor. + // However, you may call SetExtensionRegistry() to provide an alternative + // pool instead. This makes it possible, for example, to parse a message + // using a generated class, but represent some extensions using + // DynamicMessage. + + // Set the pool used to look up extensions. Most users do not need to call + // this as the correct pool will be chosen automatically. + // + // WARNING: It is very easy to misuse this. Carefully read the requirements + // below. Do not use this unless you are sure you need it. Almost no one + // does. + // + // Let's say you are parsing a message into message object m, and you want + // to take advantage of SetExtensionRegistry(). You must follow these + // requirements: + // + // The given DescriptorPool must contain m->GetDescriptor(). It is not + // sufficient for it to simply contain a descriptor that has the same name + // and content -- it must be the *exact object*. In other words: + // assert(pool->FindMessageTypeByName(m->GetDescriptor()->full_name()) == + // m->GetDescriptor()); + // There are two ways to satisfy this requirement: + // 1) Use m->GetDescriptor()->pool() as the pool. This is generally useless + // because this is the pool that would be used anyway if you didn't call + // SetExtensionRegistry() at all. + // 2) Use a DescriptorPool which has m->GetDescriptor()->pool() as an + // "underlay". Read the documentation for DescriptorPool for more + // information about underlays. + // + // You must also provide a MessageFactory. This factory will be used to + // construct Message objects representing extensions. The factory's + // GetPrototype() MUST return non-NULL for any Descriptor which can be found + // through the provided pool. + // + // If the provided factory might return instances of protocol-compiler- + // generated (i.e. compiled-in) types, or if the outer message object m is + // a generated type, then the given factory MUST have this property: If + // GetPrototype() is given a Descriptor which resides in + // DescriptorPool::generated_pool(), the factory MUST return the same + // prototype which MessageFactory::generated_factory() would return. That + // is, given a descriptor for a generated type, the factory must return an + // instance of the generated class (NOT DynamicMessage). However, when + // given a descriptor for a type that is NOT in generated_pool, the factory + // is free to return any implementation. + // + // The reason for this requirement is that generated sub-objects may be + // accessed via the standard (non-reflection) extension accessor methods, + // and these methods will down-cast the object to the generated class type. + // If the object is not actually of that type, the results would be undefined. + // On the other hand, if an extension is not compiled in, then there is no + // way the code could end up accessing it via the standard accessors -- the + // only way to access the extension is via reflection. When using reflection, + // DynamicMessage and generated messages are indistinguishable, so it's fine + // if these objects are represented using DynamicMessage. + // + // Using DynamicMessageFactory on which you have called + // SetDelegateToGeneratedFactory(true) should be sufficient to satisfy the + // above requirement. + // + // If either pool or factory is NULL, both must be NULL. + // + // Note that this feature is ignored when parsing "lite" messages as they do + // not have descriptors. + void SetExtensionRegistry(const DescriptorPool* pool, + MessageFactory* factory); + + // Get the DescriptorPool set via SetExtensionRegistry(), or NULL if no pool + // has been provided. + const DescriptorPool* GetExtensionPool(); + + // Get the MessageFactory set via SetExtensionRegistry(), or NULL if no + // factory has been provided. + MessageFactory* GetExtensionFactory(); + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CodedInputStream); + + const uint8* buffer_; + const uint8* buffer_end_; // pointer to the end of the buffer. + ZeroCopyInputStream* input_; + int total_bytes_read_; // total bytes read from input_, including + // the current buffer + + // If total_bytes_read_ surpasses INT_MAX, we record the extra bytes here + // so that we can BackUp() on destruction. + int overflow_bytes_; + + // LastTagWas() stuff. + uint32 last_tag_; // result of last ReadTag() or ReadTagWithCutoff(). + + // This is set true by ReadTag{Fallback/Slow}() if it is called when exactly + // at EOF, or by ExpectAtEnd() when it returns true. This happens when we + // reach the end of a message and attempt to read another tag. + bool legitimate_message_end_; + + // See EnableAliasing(). + bool aliasing_enabled_; + + // Limits + Limit current_limit_; // if position = -1, no limit is applied + + // For simplicity, if the current buffer crosses a limit (either a normal + // limit created by PushLimit() or the total bytes limit), buffer_size_ + // only tracks the number of bytes before that limit. This field + // contains the number of bytes after it. Note that this implies that if + // buffer_size_ == 0 and buffer_size_after_limit_ > 0, we know we've + // hit a limit. However, if both are zero, it doesn't necessarily mean + // we aren't at a limit -- the buffer may have ended exactly at the limit. + int buffer_size_after_limit_; + + // Maximum number of bytes to read, period. This is unrelated to + // current_limit_. Set using SetTotalBytesLimit(). + int total_bytes_limit_; + + // Current recursion budget, controlled by IncrementRecursionDepth() and + // similar. Starts at recursion_limit_ and goes down: if this reaches + // -1 we are over budget. + int recursion_budget_; + // Recursion depth limit, set by SetRecursionLimit(). + int recursion_limit_; + + // See SetExtensionRegistry(). + const DescriptorPool* extension_pool_; + MessageFactory* extension_factory_; + + // Private member functions. + + // Fallback when Skip() goes past the end of the current buffer. + bool SkipFallback(int count, int original_buffer_size); + + // Advance the buffer by a given number of bytes. + void Advance(int amount); + + // Back up input_ to the current buffer position. + void BackUpInputToCurrentPosition(); + + // Recomputes the value of buffer_size_after_limit_. Must be called after + // current_limit_ or total_bytes_limit_ changes. + void RecomputeBufferLimits(); + + // Writes an error message saying that we hit total_bytes_limit_. + void PrintTotalBytesLimitError(); + + // Called when the buffer runs out to request more data. Implies an + // Advance(BufferSize()). + bool Refresh(); + + // When parsing varints, we optimize for the common case of small values, and + // then optimize for the case when the varint fits within the current buffer + // piece. The Fallback method is used when we can't use the one-byte + // optimization. The Slow method is yet another fallback when the buffer is + // not large enough. Making the slow path out-of-line speeds up the common + // case by 10-15%. The slow path is fairly uncommon: it only triggers when a + // message crosses multiple buffers. Note: ReadVarint32Fallback() and + // ReadVarint64Fallback() are called frequently and generally not inlined, so + // they have been optimized to avoid "out" parameters. The former returns -1 + // if it fails and the uint32 it read otherwise. The latter has a bool + // indicating success or failure as part of its return type. + int64 ReadVarint32Fallback(uint32 first_byte_or_zero); + int ReadVarintSizeAsIntFallback(); + std::pair ReadVarint64Fallback(); + bool ReadVarint32Slow(uint32* value); + bool ReadVarint64Slow(uint64* value); + int ReadVarintSizeAsIntSlow(); + bool ReadLittleEndian32Fallback(uint32* value); + bool ReadLittleEndian64Fallback(uint64* value); + + // Fallback/slow methods for reading tags. These do not update last_tag_, + // but will set legitimate_message_end_ if we are at the end of the input + // stream. + uint32 ReadTagFallback(uint32 first_byte_or_zero); + uint32 ReadTagSlow(); + bool ReadStringFallback(std::string* buffer, int size); + + // Return the size of the buffer. + int BufferSize() const; + + static const int kDefaultTotalBytesLimit = INT_MAX; + + static int default_recursion_limit_; // 100 by default. + + friend class google::protobuf::ZeroCopyCodedInputStream; + friend class google::protobuf::internal::EpsCopyByteStream; +}; + +// EpsCopyOutputStream wraps a ZeroCopyOutputStream and exposes a new stream, +// which has the property you can write kSlopBytes (16 bytes) from the current +// position without bounds checks. The cursor into the stream is managed by +// the user of the class and is an explicit parameter in the methods. Careful +// use of this class, ie. keep ptr a local variable, eliminates the need to +// for the compiler to sync the ptr value between register and memory. +class PROTOBUF_EXPORT EpsCopyOutputStream { + public: + enum { kSlopBytes = 16 }; + + // Initialize from a stream. + EpsCopyOutputStream(ZeroCopyOutputStream* stream, bool deterministic, + uint8** pp) + : end_(buffer_), + stream_(stream), + is_serialization_deterministic_(deterministic) { + *pp = buffer_; + } + + // Only for array serialization. No overflow protection, end_ will be the + // pointed to the end of the array. When using this the total size is already + // known, so no need to maintain the slop region. + EpsCopyOutputStream(void* data, int size, bool deterministic) + : end_(static_cast(data) + size), + buffer_end_(nullptr), + stream_(nullptr), + is_serialization_deterministic_(deterministic) {} + + // Initialize from stream but with the first buffer already given (eager). + EpsCopyOutputStream(void* data, int size, ZeroCopyOutputStream* stream, + bool deterministic, uint8** pp) + : stream_(stream), is_serialization_deterministic_(deterministic) { + *pp = SetInitialBuffer(data, size); + } + + // Flush everything that's written into the underlying ZeroCopyOutputStream + // and trims the underlying stream to the location of ptr. + uint8* Trim(uint8* ptr); + + // After this it's guaranteed you can safely write kSlopBytes to ptr. This + // will never fail! The underlying stream can produce an error. Use HadError + // to check for errors. + PROTOBUF_MUST_USE_RESULT uint8* EnsureSpace(uint8* ptr) { + if (PROTOBUF_PREDICT_FALSE(ptr >= end_)) { + return EnsureSpaceFallback(ptr); + } + return ptr; + } + + uint8* WriteRaw(const void* data, int size, uint8* ptr) { + if (PROTOBUF_PREDICT_FALSE(end_ - ptr < size)) { + return WriteRawFallback(data, size, ptr); + } + std::memcpy(ptr, data, size); + return ptr + size; + } + // Writes the buffer specified by data, size to the stream. Possibly by + // aliasing the buffer (ie. not copying the data). The caller is responsible + // to make sure the buffer is alive for the duration of the + // ZeroCopyOutputStream. + uint8* WriteRawMaybeAliased(const void* data, int size, uint8* ptr) { + if (aliasing_enabled_) { + return WriteAliasedRaw(data, size, ptr); + } else { + return WriteRaw(data, size, ptr); + } + } + + + uint8* WriteStringMaybeAliased(uint32 num, const std::string& s, uint8* ptr) { + std::ptrdiff_t size = s.size(); + if (PROTOBUF_PREDICT_FALSE( + size >= 128 || end_ - ptr + 16 - TagSize(num << 3) - 1 < size)) { + return WriteStringMaybeAliasedOutline(num, s, ptr); + } + ptr = UnsafeVarint((num << 3) | 2, ptr); + *ptr++ = static_cast(size); + std::memcpy(ptr, s.data(), size); + return ptr + size; + } + uint8* WriteBytesMaybeAliased(uint32 num, const std::string& s, uint8* ptr) { + return WriteStringMaybeAliased(num, s, ptr); + } + + template + PROTOBUF_ALWAYS_INLINE uint8* WriteString(uint32 num, const T& s, + uint8* ptr) { + std::ptrdiff_t size = s.size(); + if (PROTOBUF_PREDICT_FALSE( + size >= 128 || end_ - ptr + 16 - TagSize(num << 3) - 1 < size)) { + return WriteStringOutline(num, s, ptr); + } + ptr = UnsafeVarint((num << 3) | 2, ptr); + *ptr++ = static_cast(size); + std::memcpy(ptr, s.data(), size); + return ptr + size; + } + template + uint8* WriteBytes(uint32 num, const T& s, uint8* ptr) { + return WriteString(num, s, ptr); + } + + template + PROTOBUF_ALWAYS_INLINE uint8* WriteInt32Packed(int num, const T& r, int size, + uint8* ptr) { + return WriteVarintPacked(num, r, size, ptr, Encode64); + } + template + PROTOBUF_ALWAYS_INLINE uint8* WriteUInt32Packed(int num, const T& r, int size, + uint8* ptr) { + return WriteVarintPacked(num, r, size, ptr, Encode32); + } + template + PROTOBUF_ALWAYS_INLINE uint8* WriteSInt32Packed(int num, const T& r, int size, + uint8* ptr) { + return WriteVarintPacked(num, r, size, ptr, ZigZagEncode32); + } + template + PROTOBUF_ALWAYS_INLINE uint8* WriteInt64Packed(int num, const T& r, int size, + uint8* ptr) { + return WriteVarintPacked(num, r, size, ptr, Encode64); + } + template + PROTOBUF_ALWAYS_INLINE uint8* WriteUInt64Packed(int num, const T& r, int size, + uint8* ptr) { + return WriteVarintPacked(num, r, size, ptr, Encode64); + } + template + PROTOBUF_ALWAYS_INLINE uint8* WriteSInt64Packed(int num, const T& r, int size, + uint8* ptr) { + return WriteVarintPacked(num, r, size, ptr, ZigZagEncode64); + } + template + PROTOBUF_ALWAYS_INLINE uint8* WriteEnumPacked(int num, const T& r, int size, + uint8* ptr) { + return WriteVarintPacked(num, r, size, ptr, Encode64); + } + + template + PROTOBUF_ALWAYS_INLINE uint8* WriteFixedPacked(int num, const T& r, + uint8* ptr) { + ptr = EnsureSpace(ptr); + constexpr auto element_size = sizeof(typename T::value_type); + auto size = r.size() * element_size; + ptr = WriteLengthDelim(num, size, ptr); + return WriteRawLittleEndian(r.data(), static_cast(size), + ptr); + } + + // Returns true if there was an underlying I/O error since this object was + // created. + bool HadError() const { return had_error_; } + + // Instructs the EpsCopyOutputStream to allow the underlying + // ZeroCopyOutputStream to hold pointers to the original structure instead of + // copying, if it supports it (i.e. output->AllowsAliasing() is true). If the + // underlying stream does not support aliasing, then enabling it has no + // affect. For now, this only affects the behavior of + // WriteRawMaybeAliased(). + // + // NOTE: It is caller's responsibility to ensure that the chunk of memory + // remains live until all of the data has been consumed from the stream. + void EnableAliasing(bool enabled); + + // See documentation on CodedOutputStream::SetSerializationDeterministic. + void SetSerializationDeterministic(bool value) { + is_serialization_deterministic_ = value; + } + + // See documentation on CodedOutputStream::IsSerializationDeterministic. + bool IsSerializationDeterministic() const { + return is_serialization_deterministic_; + } + + // The number of bytes written to the stream at position ptr, relative to the + // stream's overall position. + int64 ByteCount(uint8* ptr) const; + + + private: + uint8* end_; + uint8* buffer_end_ = buffer_; + uint8 buffer_[2 * kSlopBytes]; + ZeroCopyOutputStream* stream_; + bool had_error_ = false; + bool aliasing_enabled_ = false; // See EnableAliasing(). + bool is_serialization_deterministic_; + + uint8* EnsureSpaceFallback(uint8* ptr); + inline uint8* Next(); + int Flush(uint8* ptr); + std::ptrdiff_t GetSize(uint8* ptr) const { + GOOGLE_DCHECK(ptr <= end_ + kSlopBytes); // NOLINT + return end_ + kSlopBytes - ptr; + } + + uint8* Error() { + had_error_ = true; + // We use the patch buffer to always guarantee space to write to. + end_ = buffer_ + kSlopBytes; + return buffer_; + } + + static constexpr int TagSize(uint32 tag) { + return (tag < (1 << 7)) ? 1 + : (tag < (1 << 14)) ? 2 + : (tag < (1 << 21)) ? 3 + : (tag < (1 << 28)) ? 4 + : 5; + } + + PROTOBUF_ALWAYS_INLINE uint8* WriteTag(uint32 num, uint32 wt, uint8* ptr) { + GOOGLE_DCHECK(ptr < end_); // NOLINT + return UnsafeVarint((num << 3) | wt, ptr); + } + + PROTOBUF_ALWAYS_INLINE uint8* WriteLengthDelim(int num, uint32 size, + uint8* ptr) { + ptr = WriteTag(num, 2, ptr); + return UnsafeWriteSize(size, ptr); + } + + uint8* WriteRawFallback(const void* data, int size, uint8* ptr); + + uint8* WriteAliasedRaw(const void* data, int size, uint8* ptr); + + uint8* WriteStringMaybeAliasedOutline(uint32 num, const std::string& s, + uint8* ptr); + uint8* WriteStringOutline(uint32 num, const std::string& s, uint8* ptr); + + template + PROTOBUF_ALWAYS_INLINE uint8* WriteVarintPacked(int num, const T& r, int size, + uint8* ptr, const E& encode) { + ptr = EnsureSpace(ptr); + ptr = WriteLengthDelim(num, size, ptr); + auto it = r.data(); + auto end = it + r.size(); + do { + ptr = EnsureSpace(ptr); + ptr = UnsafeVarint(encode(*it++), ptr); + } while (it < end); + return ptr; + } + + static uint32 Encode32(uint32 v) { return v; } + static uint64 Encode64(uint64 v) { return v; } + static uint32 ZigZagEncode32(int32 v) { + return (static_cast(v) << 1) ^ static_cast(v >> 31); + } + static uint64 ZigZagEncode64(int64 v) { + return (static_cast(v) << 1) ^ static_cast(v >> 63); + } + + template + PROTOBUF_ALWAYS_INLINE static uint8* UnsafeVarint(T value, uint8* ptr) { + static_assert(std::is_unsigned::value, + "Varint serialization must be unsigned"); + ptr[0] = static_cast(value); + if (value < 0x80) { + return ptr + 1; + } + // Turn on continuation bit in the byte we just wrote. + ptr[0] |= static_cast(0x80); + value >>= 7; + ptr[1] = static_cast(value); + if (value < 0x80) { + return ptr + 2; + } + ptr += 2; + do { + // Turn on continuation bit in the byte we just wrote. + ptr[-1] |= static_cast(0x80); + value >>= 7; + *ptr = static_cast(value); + ++ptr; + } while (value >= 0x80); + return ptr; + } + + PROTOBUF_ALWAYS_INLINE static uint8* UnsafeWriteSize(uint32 value, + uint8* ptr) { + while (PROTOBUF_PREDICT_FALSE(value >= 0x80)) { + *ptr = static_cast(value | 0x80); + value >>= 7; + ++ptr; + } + *ptr++ = static_cast(value); + return ptr; + } + + template + uint8* WriteRawLittleEndian(const void* data, int size, uint8* ptr); +#ifndef PROTOBUF_LITTLE_ENDIAN + uint8* WriteRawLittleEndian32(const void* data, int size, uint8* ptr); + uint8* WriteRawLittleEndian64(const void* data, int size, uint8* ptr); +#endif + + // These methods are for CodedOutputStream. Ideally they should be private + // but to match current behavior of CodedOutputStream as close as possible + // we allow it some functionality. + public: + uint8* SetInitialBuffer(void* data, int size) { + auto ptr = static_cast(data); + if (size > kSlopBytes) { + end_ = ptr + size - kSlopBytes; + buffer_end_ = nullptr; + return ptr; + } else { + end_ = buffer_ + size; + buffer_end_ = ptr; + return buffer_; + } + } + + private: + // Needed by CodedOutputStream HadError. HadError needs to flush the patch + // buffers to ensure there is no error as of yet. + uint8* FlushAndResetBuffer(uint8*); + + // The following functions mimic the old CodedOutputStream behavior as close + // as possible. They flush the current state to the stream, behave as + // the old CodedOutputStream and then return to normal operation. + bool Skip(int count, uint8** pp); + bool GetDirectBufferPointer(void** data, int* size, uint8** pp); + uint8* GetDirectBufferForNBytesAndAdvance(int size, uint8** pp); + + friend class CodedOutputStream; +}; + +template <> +inline uint8* EpsCopyOutputStream::WriteRawLittleEndian<1>(const void* data, + int size, + uint8* ptr) { + return WriteRaw(data, size, ptr); +} +template <> +inline uint8* EpsCopyOutputStream::WriteRawLittleEndian<4>(const void* data, + int size, + uint8* ptr) { +#ifdef PROTOBUF_LITTLE_ENDIAN + return WriteRaw(data, size, ptr); +#else + return WriteRawLittleEndian32(data, size, ptr); +#endif +} +template <> +inline uint8* EpsCopyOutputStream::WriteRawLittleEndian<8>(const void* data, + int size, + uint8* ptr) { +#ifdef PROTOBUF_LITTLE_ENDIAN + return WriteRaw(data, size, ptr); +#else + return WriteRawLittleEndian64(data, size, ptr); +#endif +} + +// Class which encodes and writes binary data which is composed of varint- +// encoded integers and fixed-width pieces. Wraps a ZeroCopyOutputStream. +// Most users will not need to deal with CodedOutputStream. +// +// Most methods of CodedOutputStream which return a bool return false if an +// underlying I/O error occurs. Once such a failure occurs, the +// CodedOutputStream is broken and is no longer useful. The Write* methods do +// not return the stream status, but will invalidate the stream if an error +// occurs. The client can probe HadError() to determine the status. +// +// Note that every method of CodedOutputStream which writes some data has +// a corresponding static "ToArray" version. These versions write directly +// to the provided buffer, returning a pointer past the last written byte. +// They require that the buffer has sufficient capacity for the encoded data. +// This allows an optimization where we check if an output stream has enough +// space for an entire message before we start writing and, if there is, we +// call only the ToArray methods to avoid doing bound checks for each +// individual value. +// i.e., in the example above: +// +// CodedOutputStream* coded_output = new CodedOutputStream(raw_output); +// int magic_number = 1234; +// char text[] = "Hello world!"; +// +// int coded_size = sizeof(magic_number) + +// CodedOutputStream::VarintSize32(strlen(text)) + +// strlen(text); +// +// uint8* buffer = +// coded_output->GetDirectBufferForNBytesAndAdvance(coded_size); +// if (buffer != nullptr) { +// // The output stream has enough space in the buffer: write directly to +// // the array. +// buffer = CodedOutputStream::WriteLittleEndian32ToArray(magic_number, +// buffer); +// buffer = CodedOutputStream::WriteVarint32ToArray(strlen(text), buffer); +// buffer = CodedOutputStream::WriteRawToArray(text, strlen(text), buffer); +// } else { +// // Make bound-checked writes, which will ask the underlying stream for +// // more space as needed. +// coded_output->WriteLittleEndian32(magic_number); +// coded_output->WriteVarint32(strlen(text)); +// coded_output->WriteRaw(text, strlen(text)); +// } +// +// delete coded_output; +class PROTOBUF_EXPORT CodedOutputStream { + public: + // Create an CodedOutputStream that writes to the given ZeroCopyOutputStream. + explicit CodedOutputStream(ZeroCopyOutputStream* stream) + : CodedOutputStream(stream, true) {} + CodedOutputStream(ZeroCopyOutputStream* stream, bool do_eager_refresh); + + // Destroy the CodedOutputStream and position the underlying + // ZeroCopyOutputStream immediately after the last byte written. + ~CodedOutputStream(); + + // Returns true if there was an underlying I/O error since this object was + // created. On should call Trim before this function in order to catch all + // errors. + bool HadError() { + cur_ = impl_.FlushAndResetBuffer(cur_); + GOOGLE_DCHECK(cur_); + return impl_.HadError(); + } + + // Trims any unused space in the underlying buffer so that its size matches + // the number of bytes written by this stream. The underlying buffer will + // automatically be trimmed when this stream is destroyed; this call is only + // necessary if the underlying buffer is accessed *before* the stream is + // destroyed. + void Trim() { cur_ = impl_.Trim(cur_); } + + // Skips a number of bytes, leaving the bytes unmodified in the underlying + // buffer. Returns false if an underlying write error occurs. This is + // mainly useful with GetDirectBufferPointer(). + // Note of caution, the skipped bytes may contain uninitialized data. The + // caller must make sure that the skipped bytes are properly initialized, + // otherwise you might leak bytes from your heap. + bool Skip(int count) { return impl_.Skip(count, &cur_); } + + // Sets *data to point directly at the unwritten part of the + // CodedOutputStream's underlying buffer, and *size to the size of that + // buffer, but does not advance the stream's current position. This will + // always either produce a non-empty buffer or return false. If the caller + // writes any data to this buffer, it should then call Skip() to skip over + // the consumed bytes. This may be useful for implementing external fast + // serialization routines for types of data not covered by the + // CodedOutputStream interface. + bool GetDirectBufferPointer(void** data, int* size) { + return impl_.GetDirectBufferPointer(data, size, &cur_); + } + + // If there are at least "size" bytes available in the current buffer, + // returns a pointer directly into the buffer and advances over these bytes. + // The caller may then write directly into this buffer (e.g. using the + // *ToArray static methods) rather than go through CodedOutputStream. If + // there are not enough bytes available, returns NULL. The return pointer is + // invalidated as soon as any other non-const method of CodedOutputStream + // is called. + inline uint8* GetDirectBufferForNBytesAndAdvance(int size) { + return impl_.GetDirectBufferForNBytesAndAdvance(size, &cur_); + } + + // Write raw bytes, copying them from the given buffer. + void WriteRaw(const void* buffer, int size) { + cur_ = impl_.WriteRaw(buffer, size, cur_); + } + // Like WriteRaw() but will try to write aliased data if aliasing is + // turned on. + void WriteRawMaybeAliased(const void* data, int size); + // Like WriteRaw() but writing directly to the target array. + // This is _not_ inlined, as the compiler often optimizes memcpy into inline + // copy loops. Since this gets called by every field with string or bytes + // type, inlining may lead to a significant amount of code bloat, with only a + // minor performance gain. + static uint8* WriteRawToArray(const void* buffer, int size, uint8* target); + + // Equivalent to WriteRaw(str.data(), str.size()). + void WriteString(const std::string& str); + // Like WriteString() but writing directly to the target array. + static uint8* WriteStringToArray(const std::string& str, uint8* target); + // Write the varint-encoded size of str followed by str. + static uint8* WriteStringWithSizeToArray(const std::string& str, + uint8* target); + + + // Write a 32-bit little-endian integer. + void WriteLittleEndian32(uint32 value) { + cur_ = impl_.EnsureSpace(cur_); + SetCur(WriteLittleEndian32ToArray(value, Cur())); + } + // Like WriteLittleEndian32() but writing directly to the target array. + static uint8* WriteLittleEndian32ToArray(uint32 value, uint8* target); + // Write a 64-bit little-endian integer. + void WriteLittleEndian64(uint64 value) { + cur_ = impl_.EnsureSpace(cur_); + SetCur(WriteLittleEndian64ToArray(value, Cur())); + } + // Like WriteLittleEndian64() but writing directly to the target array. + static uint8* WriteLittleEndian64ToArray(uint64 value, uint8* target); + + // Write an unsigned integer with Varint encoding. Writing a 32-bit value + // is equivalent to casting it to uint64 and writing it as a 64-bit value, + // but may be more efficient. + void WriteVarint32(uint32 value); + // Like WriteVarint32() but writing directly to the target array. + static uint8* WriteVarint32ToArray(uint32 value, uint8* target); + // Like WriteVarint32() but writing directly to the target array, and with the + // less common-case paths being out of line rather than inlined. + static uint8* WriteVarint32ToArrayOutOfLine(uint32 value, uint8* target); + // Write an unsigned integer with Varint encoding. + void WriteVarint64(uint64 value); + // Like WriteVarint64() but writing directly to the target array. + static uint8* WriteVarint64ToArray(uint64 value, uint8* target); + + // Equivalent to WriteVarint32() except when the value is negative, + // in which case it must be sign-extended to a full 10 bytes. + void WriteVarint32SignExtended(int32 value); + // Like WriteVarint32SignExtended() but writing directly to the target array. + static uint8* WriteVarint32SignExtendedToArray(int32 value, uint8* target); + + // This is identical to WriteVarint32(), but optimized for writing tags. + // In particular, if the input is a compile-time constant, this method + // compiles down to a couple instructions. + // Always inline because otherwise the aforementioned optimization can't work, + // but GCC by default doesn't want to inline this. + void WriteTag(uint32 value); + // Like WriteTag() but writing directly to the target array. + PROTOBUF_ALWAYS_INLINE + static uint8* WriteTagToArray(uint32 value, uint8* target); + + // Returns the number of bytes needed to encode the given value as a varint. + static size_t VarintSize32(uint32 value); + // Returns the number of bytes needed to encode the given value as a varint. + static size_t VarintSize64(uint64 value); + + // If negative, 10 bytes. Otherwise, same as VarintSize32(). + static size_t VarintSize32SignExtended(int32 value); + + // Compile-time equivalent of VarintSize32(). + template + struct StaticVarintSize32 { + static const size_t value = (Value < (1 << 7)) ? 1 + : (Value < (1 << 14)) ? 2 + : (Value < (1 << 21)) ? 3 + : (Value < (1 << 28)) ? 4 + : 5; + }; + + // Returns the total number of bytes written since this object was created. + int ByteCount() const { + return static_cast(impl_.ByteCount(cur_) - start_count_); + } + + // Instructs the CodedOutputStream to allow the underlying + // ZeroCopyOutputStream to hold pointers to the original structure instead of + // copying, if it supports it (i.e. output->AllowsAliasing() is true). If the + // underlying stream does not support aliasing, then enabling it has no + // affect. For now, this only affects the behavior of + // WriteRawMaybeAliased(). + // + // NOTE: It is caller's responsibility to ensure that the chunk of memory + // remains live until all of the data has been consumed from the stream. + void EnableAliasing(bool enabled) { impl_.EnableAliasing(enabled); } + + // Indicate to the serializer whether the user wants derministic + // serialization. The default when this is not called comes from the global + // default, controlled by SetDefaultSerializationDeterministic. + // + // What deterministic serialization means is entirely up to the driver of the + // serialization process (i.e. the caller of methods like WriteVarint32). In + // the case of serializing a proto buffer message using one of the methods of + // MessageLite, this means that for a given binary equal messages will always + // be serialized to the same bytes. This implies: + // + // * Repeated serialization of a message will return the same bytes. + // + // * Different processes running the same binary (including on different + // machines) will serialize equal messages to the same bytes. + // + // Note that this is *not* canonical across languages. It is also unstable + // across different builds with intervening message definition changes, due to + // unknown fields. Users who need canonical serialization (e.g. persistent + // storage in a canonical form, fingerprinting) should define their own + // canonicalization specification and implement the serializer using + // reflection APIs rather than relying on this API. + void SetSerializationDeterministic(bool value) { + impl_.SetSerializationDeterministic(value); + } + + // Return whether the user wants deterministic serialization. See above. + bool IsSerializationDeterministic() const { + return impl_.IsSerializationDeterministic(); + } + + static bool IsDefaultSerializationDeterministic() { + return default_serialization_deterministic_.load( + std::memory_order_relaxed) != 0; + } + + template + void Serialize(const Func& func); + + uint8* Cur() const { return cur_; } + void SetCur(uint8* ptr) { cur_ = ptr; } + EpsCopyOutputStream* EpsCopy() { return &impl_; } + + private: + EpsCopyOutputStream impl_; + uint8* cur_; + int64 start_count_; + static std::atomic default_serialization_deterministic_; + + // See above. Other projects may use "friend" to allow them to call this. + // After SetDefaultSerializationDeterministic() completes, all protocol + // buffer serializations will be deterministic by default. Thread safe. + // However, the meaning of "after" is subtle here: to be safe, each thread + // that wants deterministic serialization by default needs to call + // SetDefaultSerializationDeterministic() or ensure on its own that another + // thread has done so. + friend void internal::MapTestForceDeterministic(); + static void SetDefaultSerializationDeterministic() { + default_serialization_deterministic_.store(true, std::memory_order_relaxed); + } + // REQUIRES: value >= 0x80, and that (value & 7f) has been written to *target. + static uint8* WriteVarint32ToArrayOutOfLineHelper(uint32 value, uint8* target); + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CodedOutputStream); +}; + +// inline methods ==================================================== +// The vast majority of varints are only one byte. These inline +// methods optimize for that case. + +inline bool CodedInputStream::ReadVarint32(uint32* value) { + uint32 v = 0; + if (PROTOBUF_PREDICT_TRUE(buffer_ < buffer_end_)) { + v = *buffer_; + if (v < 0x80) { + *value = v; + Advance(1); + return true; + } + } + int64 result = ReadVarint32Fallback(v); + *value = static_cast(result); + return result >= 0; +} + +inline bool CodedInputStream::ReadVarint64(uint64* value) { + if (PROTOBUF_PREDICT_TRUE(buffer_ < buffer_end_) && *buffer_ < 0x80) { + *value = *buffer_; + Advance(1); + return true; + } + std::pair p = ReadVarint64Fallback(); + *value = p.first; + return p.second; +} + +inline bool CodedInputStream::ReadVarintSizeAsInt(int* value) { + if (PROTOBUF_PREDICT_TRUE(buffer_ < buffer_end_)) { + int v = *buffer_; + if (v < 0x80) { + *value = v; + Advance(1); + return true; + } + } + *value = ReadVarintSizeAsIntFallback(); + return *value >= 0; +} + +// static +inline const uint8* CodedInputStream::ReadLittleEndian32FromArray( + const uint8* buffer, uint32* value) { +#if defined(PROTOBUF_LITTLE_ENDIAN) + memcpy(value, buffer, sizeof(*value)); + return buffer + sizeof(*value); +#else + *value = (static_cast(buffer[0])) | + (static_cast(buffer[1]) << 8) | + (static_cast(buffer[2]) << 16) | + (static_cast(buffer[3]) << 24); + return buffer + sizeof(*value); +#endif +} +// static +inline const uint8* CodedInputStream::ReadLittleEndian64FromArray( + const uint8* buffer, uint64* value) { +#if defined(PROTOBUF_LITTLE_ENDIAN) + memcpy(value, buffer, sizeof(*value)); + return buffer + sizeof(*value); +#else + uint32 part0 = (static_cast(buffer[0])) | + (static_cast(buffer[1]) << 8) | + (static_cast(buffer[2]) << 16) | + (static_cast(buffer[3]) << 24); + uint32 part1 = (static_cast(buffer[4])) | + (static_cast(buffer[5]) << 8) | + (static_cast(buffer[6]) << 16) | + (static_cast(buffer[7]) << 24); + *value = static_cast(part0) | (static_cast(part1) << 32); + return buffer + sizeof(*value); +#endif +} + +inline bool CodedInputStream::ReadLittleEndian32(uint32* value) { +#if defined(PROTOBUF_LITTLE_ENDIAN) + if (PROTOBUF_PREDICT_TRUE(BufferSize() >= static_cast(sizeof(*value)))) { + buffer_ = ReadLittleEndian32FromArray(buffer_, value); + return true; + } else { + return ReadLittleEndian32Fallback(value); + } +#else + return ReadLittleEndian32Fallback(value); +#endif +} + +inline bool CodedInputStream::ReadLittleEndian64(uint64* value) { +#if defined(PROTOBUF_LITTLE_ENDIAN) + if (PROTOBUF_PREDICT_TRUE(BufferSize() >= static_cast(sizeof(*value)))) { + buffer_ = ReadLittleEndian64FromArray(buffer_, value); + return true; + } else { + return ReadLittleEndian64Fallback(value); + } +#else + return ReadLittleEndian64Fallback(value); +#endif +} + +inline uint32 CodedInputStream::ReadTagNoLastTag() { + uint32 v = 0; + if (PROTOBUF_PREDICT_TRUE(buffer_ < buffer_end_)) { + v = *buffer_; + if (v < 0x80) { + Advance(1); + return v; + } + } + v = ReadTagFallback(v); + return v; +} + +inline std::pair CodedInputStream::ReadTagWithCutoffNoLastTag( + uint32 cutoff) { + // In performance-sensitive code we can expect cutoff to be a compile-time + // constant, and things like "cutoff >= kMax1ByteVarint" to be evaluated at + // compile time. + uint32 first_byte_or_zero = 0; + if (PROTOBUF_PREDICT_TRUE(buffer_ < buffer_end_)) { + // Hot case: buffer_ non_empty, buffer_[0] in [1, 128). + // TODO(gpike): Is it worth rearranging this? E.g., if the number of fields + // is large enough then is it better to check for the two-byte case first? + first_byte_or_zero = buffer_[0]; + if (static_cast(buffer_[0]) > 0) { + const uint32 kMax1ByteVarint = 0x7f; + uint32 tag = buffer_[0]; + Advance(1); + return std::make_pair(tag, cutoff >= kMax1ByteVarint || tag <= cutoff); + } + // Other hot case: cutoff >= 0x80, buffer_ has at least two bytes available, + // and tag is two bytes. The latter is tested by bitwise-and-not of the + // first byte and the second byte. + if (cutoff >= 0x80 && PROTOBUF_PREDICT_TRUE(buffer_ + 1 < buffer_end_) && + PROTOBUF_PREDICT_TRUE((buffer_[0] & ~buffer_[1]) >= 0x80)) { + const uint32 kMax2ByteVarint = (0x7f << 7) + 0x7f; + uint32 tag = (1u << 7) * buffer_[1] + (buffer_[0] - 0x80); + Advance(2); + // It might make sense to test for tag == 0 now, but it is so rare that + // that we don't bother. A varint-encoded 0 should be one byte unless + // the encoder lost its mind. The second part of the return value of + // this function is allowed to be either true or false if the tag is 0, + // so we don't have to check for tag == 0. We may need to check whether + // it exceeds cutoff. + bool at_or_below_cutoff = cutoff >= kMax2ByteVarint || tag <= cutoff; + return std::make_pair(tag, at_or_below_cutoff); + } + } + // Slow path + const uint32 tag = ReadTagFallback(first_byte_or_zero); + return std::make_pair(tag, static_cast(tag - 1) < cutoff); +} + +inline bool CodedInputStream::LastTagWas(uint32 expected) { + return last_tag_ == expected; +} + +inline bool CodedInputStream::ConsumedEntireMessage() { + return legitimate_message_end_; +} + +inline bool CodedInputStream::ExpectTag(uint32 expected) { + if (expected < (1 << 7)) { + if (PROTOBUF_PREDICT_TRUE(buffer_ < buffer_end_) && + buffer_[0] == expected) { + Advance(1); + return true; + } else { + return false; + } + } else if (expected < (1 << 14)) { + if (PROTOBUF_PREDICT_TRUE(BufferSize() >= 2) && + buffer_[0] == static_cast(expected | 0x80) && + buffer_[1] == static_cast(expected >> 7)) { + Advance(2); + return true; + } else { + return false; + } + } else { + // Don't bother optimizing for larger values. + return false; + } +} + +inline const uint8* CodedInputStream::ExpectTagFromArray(const uint8* buffer, + uint32 expected) { + if (expected < (1 << 7)) { + if (buffer[0] == expected) { + return buffer + 1; + } + } else if (expected < (1 << 14)) { + if (buffer[0] == static_cast(expected | 0x80) && + buffer[1] == static_cast(expected >> 7)) { + return buffer + 2; + } + } + return nullptr; +} + +inline void CodedInputStream::GetDirectBufferPointerInline(const void** data, + int* size) { + *data = buffer_; + *size = static_cast(buffer_end_ - buffer_); +} + +inline bool CodedInputStream::ExpectAtEnd() { + // If we are at a limit we know no more bytes can be read. Otherwise, it's + // hard to say without calling Refresh(), and we'd rather not do that. + + if (buffer_ == buffer_end_ && ((buffer_size_after_limit_ != 0) || + (total_bytes_read_ == current_limit_))) { + last_tag_ = 0; // Pretend we called ReadTag()... + legitimate_message_end_ = true; // ... and it hit EOF. + return true; + } else { + return false; + } +} + +inline int CodedInputStream::CurrentPosition() const { + return total_bytes_read_ - (BufferSize() + buffer_size_after_limit_); +} + +inline void CodedInputStream::Advance(int amount) { buffer_ += amount; } + +inline void CodedInputStream::SetRecursionLimit(int limit) { + recursion_budget_ += limit - recursion_limit_; + recursion_limit_ = limit; +} + +inline bool CodedInputStream::IncrementRecursionDepth() { + --recursion_budget_; + return recursion_budget_ >= 0; +} + +inline void CodedInputStream::DecrementRecursionDepth() { + if (recursion_budget_ < recursion_limit_) ++recursion_budget_; +} + +inline void CodedInputStream::UnsafeDecrementRecursionDepth() { + assert(recursion_budget_ < recursion_limit_); + ++recursion_budget_; +} + +inline void CodedInputStream::SetExtensionRegistry(const DescriptorPool* pool, + MessageFactory* factory) { + extension_pool_ = pool; + extension_factory_ = factory; +} + +inline const DescriptorPool* CodedInputStream::GetExtensionPool() { + return extension_pool_; +} + +inline MessageFactory* CodedInputStream::GetExtensionFactory() { + return extension_factory_; +} + +inline int CodedInputStream::BufferSize() const { + return static_cast(buffer_end_ - buffer_); +} + +inline CodedInputStream::CodedInputStream(ZeroCopyInputStream* input) + : buffer_(nullptr), + buffer_end_(nullptr), + input_(input), + total_bytes_read_(0), + overflow_bytes_(0), + last_tag_(0), + legitimate_message_end_(false), + aliasing_enabled_(false), + current_limit_(kint32max), + buffer_size_after_limit_(0), + total_bytes_limit_(kDefaultTotalBytesLimit), + recursion_budget_(default_recursion_limit_), + recursion_limit_(default_recursion_limit_), + extension_pool_(nullptr), + extension_factory_(nullptr) { + // Eagerly Refresh() so buffer space is immediately available. + Refresh(); +} + +inline CodedInputStream::CodedInputStream(const uint8* buffer, int size) + : buffer_(buffer), + buffer_end_(buffer + size), + input_(nullptr), + total_bytes_read_(size), + overflow_bytes_(0), + last_tag_(0), + legitimate_message_end_(false), + aliasing_enabled_(false), + current_limit_(size), + buffer_size_after_limit_(0), + total_bytes_limit_(kDefaultTotalBytesLimit), + recursion_budget_(default_recursion_limit_), + recursion_limit_(default_recursion_limit_), + extension_pool_(nullptr), + extension_factory_(nullptr) { + // Note that setting current_limit_ == size is important to prevent some + // code paths from trying to access input_ and segfaulting. +} + +inline bool CodedInputStream::IsFlat() const { return input_ == nullptr; } + +inline bool CodedInputStream::Skip(int count) { + if (count < 0) return false; // security: count is often user-supplied + + const int original_buffer_size = BufferSize(); + + if (count <= original_buffer_size) { + // Just skipping within the current buffer. Easy. + Advance(count); + return true; + } + + return SkipFallback(count, original_buffer_size); +} + +inline uint8* CodedOutputStream::WriteVarint32ToArray(uint32 value, + uint8* target) { + return EpsCopyOutputStream::UnsafeVarint(value, target); +} + +inline uint8* CodedOutputStream::WriteVarint32ToArrayOutOfLine(uint32 value, + uint8* target) { + target[0] = static_cast(value); + if (value < 0x80) { + return target + 1; + } else { + return WriteVarint32ToArrayOutOfLineHelper(value, target); + } +} + +inline uint8* CodedOutputStream::WriteVarint64ToArray(uint64 value, + uint8* target) { + return EpsCopyOutputStream::UnsafeVarint(value, target); +} + +inline void CodedOutputStream::WriteVarint32SignExtended(int32 value) { + WriteVarint64(static_cast(value)); +} + +inline uint8* CodedOutputStream::WriteVarint32SignExtendedToArray( + int32 value, uint8* target) { + return WriteVarint64ToArray(static_cast(value), target); +} + +inline uint8* CodedOutputStream::WriteLittleEndian32ToArray(uint32 value, + uint8* target) { +#if defined(PROTOBUF_LITTLE_ENDIAN) + memcpy(target, &value, sizeof(value)); +#else + target[0] = static_cast(value); + target[1] = static_cast(value >> 8); + target[2] = static_cast(value >> 16); + target[3] = static_cast(value >> 24); +#endif + return target + sizeof(value); +} + +inline uint8* CodedOutputStream::WriteLittleEndian64ToArray(uint64 value, + uint8* target) { +#if defined(PROTOBUF_LITTLE_ENDIAN) + memcpy(target, &value, sizeof(value)); +#else + uint32 part0 = static_cast(value); + uint32 part1 = static_cast(value >> 32); + + target[0] = static_cast(part0); + target[1] = static_cast(part0 >> 8); + target[2] = static_cast(part0 >> 16); + target[3] = static_cast(part0 >> 24); + target[4] = static_cast(part1); + target[5] = static_cast(part1 >> 8); + target[6] = static_cast(part1 >> 16); + target[7] = static_cast(part1 >> 24); +#endif + return target + sizeof(value); +} + +inline void CodedOutputStream::WriteVarint32(uint32 value) { + cur_ = impl_.EnsureSpace(cur_); + SetCur(WriteVarint32ToArray(value, Cur())); +} + +inline void CodedOutputStream::WriteVarint64(uint64 value) { + cur_ = impl_.EnsureSpace(cur_); + SetCur(WriteVarint64ToArray(value, Cur())); +} + +inline void CodedOutputStream::WriteTag(uint32 value) { WriteVarint32(value); } + +inline uint8* CodedOutputStream::WriteTagToArray(uint32 value, uint8* target) { + return WriteVarint32ToArray(value, target); +} + +inline size_t CodedOutputStream::VarintSize32(uint32 value) { + // This computes value == 0 ? 1 : floor(log2(value)) / 7 + 1 + // Use an explicit multiplication to implement the divide of + // a number in the 1..31 range. + // Explicit OR 0x1 to avoid calling Bits::Log2FloorNonZero(0), which is + // undefined. + uint32 log2value = Bits::Log2FloorNonZero(value | 0x1); + return static_cast((log2value * 9 + 73) / 64); +} + +inline size_t CodedOutputStream::VarintSize64(uint64 value) { + // This computes value == 0 ? 1 : floor(log2(value)) / 7 + 1 + // Use an explicit multiplication to implement the divide of + // a number in the 1..63 range. + // Explicit OR 0x1 to avoid calling Bits::Log2FloorNonZero(0), which is + // undefined. + uint32 log2value = Bits::Log2FloorNonZero64(value | 0x1); + return static_cast((log2value * 9 + 73) / 64); +} + +inline size_t CodedOutputStream::VarintSize32SignExtended(int32 value) { + if (value < 0) { + return 10; // TODO(kenton): Make this a symbolic constant. + } else { + return VarintSize32(static_cast(value)); + } +} + +inline void CodedOutputStream::WriteString(const std::string& str) { + WriteRaw(str.data(), static_cast(str.size())); +} + +inline void CodedOutputStream::WriteRawMaybeAliased(const void* data, + int size) { + cur_ = impl_.WriteRawMaybeAliased(data, size, cur_); +} + +inline uint8* CodedOutputStream::WriteRawToArray(const void* data, int size, + uint8* target) { + memcpy(target, data, size); + return target + size; +} + +inline uint8* CodedOutputStream::WriteStringToArray(const std::string& str, + uint8* target) { + return WriteRawToArray(str.data(), static_cast(str.size()), target); +} + +} // namespace io +} // namespace protobuf +} // namespace google + +#if defined(_MSC_VER) && _MSC_VER >= 1300 && !defined(__INTEL_COMPILER) +#pragma runtime_checks("c", restore) +#endif // _MSC_VER && !defined(__INTEL_COMPILER) + +#include + +#endif // GOOGLE_PROTOBUF_IO_CODED_STREAM_H__ diff --git a/external/include/google/protobuf/io/gzip_stream.h b/external/include/google/protobuf/io/gzip_stream.h new file mode 100644 index 0000000..b1ce1d3 --- /dev/null +++ b/external/include/google/protobuf/io/gzip_stream.h @@ -0,0 +1,202 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: brianolson@google.com (Brian Olson) +// +// This file contains the definition for classes GzipInputStream and +// GzipOutputStream. +// +// GzipInputStream decompresses data from an underlying +// ZeroCopyInputStream and provides the decompressed data as a +// ZeroCopyInputStream. +// +// GzipOutputStream is an ZeroCopyOutputStream that compresses data to +// an underlying ZeroCopyOutputStream. + +#ifndef GOOGLE_PROTOBUF_IO_GZIP_STREAM_H__ +#define GOOGLE_PROTOBUF_IO_GZIP_STREAM_H__ + + +#include +#include +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace io { + +// A ZeroCopyInputStream that reads compressed data through zlib +class PROTOBUF_EXPORT GzipInputStream : public ZeroCopyInputStream { + public: + // Format key for constructor + enum Format { + // zlib will autodetect gzip header or deflate stream + AUTO = 0, + + // GZIP streams have some extra header data for file attributes. + GZIP = 1, + + // Simpler zlib stream format. + ZLIB = 2, + }; + + // buffer_size and format may be -1 for default of 64kB and GZIP format + explicit GzipInputStream(ZeroCopyInputStream* sub_stream, + Format format = AUTO, int buffer_size = -1); + virtual ~GzipInputStream(); + + // Return last error message or NULL if no error. + inline const char* ZlibErrorMessage() const { return zcontext_.msg; } + inline int ZlibErrorCode() const { return zerror_; } + + // implements ZeroCopyInputStream ---------------------------------- + bool Next(const void** data, int* size); + void BackUp(int count); + bool Skip(int count); + int64_t ByteCount() const; + + private: + Format format_; + + ZeroCopyInputStream* sub_stream_; + + z_stream zcontext_; + int zerror_; + + void* output_buffer_; + void* output_position_; + size_t output_buffer_length_; + int64 byte_count_; + + int Inflate(int flush); + void DoNextOutput(const void** data, int* size); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(GzipInputStream); +}; + +class PROTOBUF_EXPORT GzipOutputStream : public ZeroCopyOutputStream { + public: + // Format key for constructor + enum Format { + // GZIP streams have some extra header data for file attributes. + GZIP = 1, + + // Simpler zlib stream format. + ZLIB = 2, + }; + + struct PROTOBUF_EXPORT Options { + // Defaults to GZIP. + Format format; + + // What size buffer to use internally. Defaults to 64kB. + int buffer_size; + + // A number between 0 and 9, where 0 is no compression and 9 is best + // compression. Defaults to Z_DEFAULT_COMPRESSION (see zlib.h). + int compression_level; + + // Defaults to Z_DEFAULT_STRATEGY. Can also be set to Z_FILTERED, + // Z_HUFFMAN_ONLY, or Z_RLE. See the documentation for deflateInit2 in + // zlib.h for definitions of these constants. + int compression_strategy; + + Options(); // Initializes with default values. + }; + + // Create a GzipOutputStream with default options. + explicit GzipOutputStream(ZeroCopyOutputStream* sub_stream); + + // Create a GzipOutputStream with the given options. + GzipOutputStream(ZeroCopyOutputStream* sub_stream, const Options& options); + + virtual ~GzipOutputStream(); + + // Return last error message or NULL if no error. + inline const char* ZlibErrorMessage() const { return zcontext_.msg; } + inline int ZlibErrorCode() const { return zerror_; } + + // Flushes data written so far to zipped data in the underlying stream. + // It is the caller's responsibility to flush the underlying stream if + // necessary. + // Compression may be less efficient stopping and starting around flushes. + // Returns true if no error. + // + // Please ensure that block size is > 6. Here is an excerpt from the zlib + // doc that explains why: + // + // In the case of a Z_FULL_FLUSH or Z_SYNC_FLUSH, make sure that avail_out + // is greater than six to avoid repeated flush markers due to + // avail_out == 0 on return. + bool Flush(); + + // Writes out all data and closes the gzip stream. + // It is the caller's responsibility to close the underlying stream if + // necessary. + // Returns true if no error. + bool Close(); + + // implements ZeroCopyOutputStream --------------------------------- + bool Next(void** data, int* size); + void BackUp(int count); + int64_t ByteCount() const; + + private: + ZeroCopyOutputStream* sub_stream_; + // Result from calling Next() on sub_stream_ + void* sub_data_; + int sub_data_size_; + + z_stream zcontext_; + int zerror_; + void* input_buffer_; + size_t input_buffer_length_; + + // Shared constructor code. + void Init(ZeroCopyOutputStream* sub_stream, const Options& options); + + // Do some compression. + // Takes zlib flush mode. + // Returns zlib error code. + int Deflate(int flush); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(GzipOutputStream); +}; + +} // namespace io +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_IO_GZIP_STREAM_H__ diff --git a/external/include/google/protobuf/io/io_win32.h b/external/include/google/protobuf/io/io_win32.h new file mode 100644 index 0000000..7d11dc2 --- /dev/null +++ b/external/include/google/protobuf/io/io_win32.h @@ -0,0 +1,139 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: laszlocsomor@google.com (Laszlo Csomor) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. + +// This file contains the declarations for Windows implementations of +// commonly used POSIX functions such as open(2) and access(2), as well +// as macro definitions for flags of these functions. +// +// By including this file you'll redefine open/access/etc. to +// ::google::protobuf::io::win32::{open/access/etc.}. +// Make sure you don't include a header that attempts to redeclare or +// redefine these functions, that'll lead to confusing compilation +// errors. It's best to #include this file as the last one to ensure that. +// +// This file is only used on Windows, it's empty on other platforms. + +#ifndef GOOGLE_PROTOBUF_IO_IO_WIN32_H__ +#define GOOGLE_PROTOBUF_IO_IO_WIN32_H__ + +#if defined(_WIN32) + +#include +#include + +#include +#include + +// Compilers on Windows other than MSVC (e.g. Cygwin, MinGW32) define the +// following functions already, except for mkdir. +namespace google { +namespace protobuf { +namespace io { +namespace win32 { + +PROTOBUF_EXPORT FILE* fopen(const char* path, const char* mode); +PROTOBUF_EXPORT int access(const char* path, int mode); +PROTOBUF_EXPORT int chdir(const char* path); +PROTOBUF_EXPORT int close(int fd); +PROTOBUF_EXPORT int dup(int fd); +PROTOBUF_EXPORT int dup2(int fd1, int fd2); +PROTOBUF_EXPORT int mkdir(const char* path, int _mode); +PROTOBUF_EXPORT int open(const char* path, int flags, int mode = 0); +PROTOBUF_EXPORT int read(int fd, void* buffer, size_t size); +PROTOBUF_EXPORT int setmode(int fd, int mode); +PROTOBUF_EXPORT int stat(const char* path, struct _stat* buffer); +PROTOBUF_EXPORT int write(int fd, const void* buffer, size_t size); +PROTOBUF_EXPORT std::wstring testonly_utf8_to_winpath(const char* path); + +enum class ExpandWildcardsResult { + kSuccess = 0, + kErrorNoMatchingFile = 1, + kErrorInputPathConversion = 2, + kErrorOutputPathConversion = 3, +}; + +// Expand wildcards in a path pattern, feed the result to a consumer function. +// +// `path` must be a valid, Windows-style path. It may be absolute, or relative +// to the current working directory, and it may contain wildcards ("*" and "?") +// in the last path segment. This function passes all matching file names to +// `consume`. The resulting paths may not be absolute nor normalized. +// +// The function returns a value from `ExpandWildcardsResult`. +PROTOBUF_EXPORT ExpandWildcardsResult ExpandWildcards( + const std::string& path, std::function consume); + +namespace strings { + +// Convert from UTF-16 to Active-Code-Page-encoded or to UTF-8-encoded text. +PROTOBUF_EXPORT bool wcs_to_mbs(const wchar_t* s, std::string* out, + bool outUtf8); + +// Convert from Active-Code-Page-encoded or UTF-8-encoded text to UTF-16. +PROTOBUF_EXPORT bool mbs_to_wcs(const char* s, std::wstring* out, bool inUtf8); + +// Convert from UTF-8-encoded text to UTF-16. +PROTOBUF_EXPORT bool utf8_to_wcs(const char* input, std::wstring* out); + +// Convert from UTF-16-encoded text to UTF-8. +PROTOBUF_EXPORT bool wcs_to_utf8(const wchar_t* input, std::string* out); + +} // namespace strings + +} // namespace win32 +} // namespace io +} // namespace protobuf +} // namespace google + +#ifndef W_OK +#define W_OK 02 // not defined by MSVC for whatever reason +#endif + +#ifndef F_OK +#define F_OK 00 // not defined by MSVC for whatever reason +#endif + +#ifndef STDIN_FILENO +#define STDIN_FILENO 0 +#endif + +#ifndef STDOUT_FILENO +#define STDOUT_FILENO 1 +#endif + +#include + +#endif // defined(_WIN32) + +#endif // GOOGLE_PROTOBUF_IO_IO_WIN32_H__ diff --git a/external/include/google/protobuf/io/printer.h b/external/include/google/protobuf/io/printer.h new file mode 100644 index 0000000..904b818 --- /dev/null +++ b/external/include/google/protobuf/io/printer.h @@ -0,0 +1,385 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Utility class for writing text to a ZeroCopyOutputStream. + +#ifndef GOOGLE_PROTOBUF_IO_PRINTER_H__ +#define GOOGLE_PROTOBUF_IO_PRINTER_H__ + + +#include +#include +#include + +#include +#include + +namespace google { +namespace protobuf { +namespace io { + +class ZeroCopyOutputStream; // zero_copy_stream.h + +// Records annotations about a Printer's output. +class PROTOBUF_EXPORT AnnotationCollector { + public: + // Annotation is a offset range and a payload pair. + typedef std::pair, std::string> Annotation; + + // Records that the bytes in file_path beginning with begin_offset and ending + // before end_offset are associated with the SourceCodeInfo-style path. + virtual void AddAnnotation(size_t begin_offset, size_t end_offset, + const std::string& file_path, + const std::vector& path) = 0; + + // TODO(gerbens) I don't see why we need virtuals here. Just a vector of + // range, payload pairs stored in a context should suffice. + virtual void AddAnnotationNew(Annotation& /* a */) {} + + virtual ~AnnotationCollector() {} +}; + +// Records annotations about a Printer's output to the given protocol buffer, +// assuming that the buffer has an ::Annotation message exposing path, +// source_file, begin and end fields. +template +class AnnotationProtoCollector : public AnnotationCollector { + public: + // annotation_proto is the protocol buffer to which new Annotations should be + // added. It is not owned by the AnnotationProtoCollector. + explicit AnnotationProtoCollector(AnnotationProto* annotation_proto) + : annotation_proto_(annotation_proto) {} + + // Override for AnnotationCollector::AddAnnotation. + virtual void AddAnnotation(size_t begin_offset, size_t end_offset, + const std::string& file_path, + const std::vector& path) { + typename AnnotationProto::Annotation* annotation = + annotation_proto_->add_annotation(); + for (int i = 0; i < path.size(); ++i) { + annotation->add_path(path[i]); + } + annotation->set_source_file(file_path); + annotation->set_begin(begin_offset); + annotation->set_end(end_offset); + } + // Override for AnnotationCollector::AddAnnotation. + virtual void AddAnnotationNew(Annotation& a) { + auto* annotation = annotation_proto_->add_annotation(); + annotation->ParseFromString(a.second); + annotation->set_begin(a.first.first); + annotation->set_end(a.first.second); + } + + private: + // The protocol buffer to which new annotations should be added. + AnnotationProto* const annotation_proto_; +}; + +// This simple utility class assists in code generation. It basically +// allows the caller to define a set of variables and then output some +// text with variable substitutions. Example usage: +// +// Printer printer(output, '$'); +// map vars; +// vars["name"] = "Bob"; +// printer.Print(vars, "My name is $name$."); +// +// The above writes "My name is Bob." to the output stream. +// +// Printer aggressively enforces correct usage, crashing (with assert failures) +// in the case of undefined variables in debug builds. This helps greatly in +// debugging code which uses it. +// +// If a Printer is constructed with an AnnotationCollector, it will provide it +// with annotations that connect the Printer's output to paths that can identify +// various descriptors. In the above example, if person_ is a descriptor that +// identifies Bob, we can associate the output string "My name is Bob." with +// a source path pointing to that descriptor with: +// +// printer.Annotate("name", person_); +// +// The AnnotationCollector will be sent an annotation linking the output range +// covering "Bob" to the logical path provided by person_. Tools may use +// this association to (for example) link "Bob" in the output back to the +// source file that defined the person_ descriptor identifying Bob. +// +// Annotate can only examine variables substituted during the last call to +// Print. It is invalid to refer to a variable that was used multiple times +// in a single Print call. +// +// In full generality, one may specify a range of output text using a beginning +// substitution variable and an ending variable. The resulting annotation will +// span from the first character of the substituted value for the beginning +// variable to the last character of the substituted value for the ending +// variable. For example, the Annotate call above is equivalent to this one: +// +// printer.Annotate("name", "name", person_); +// +// This is useful if multiple variables combine to form a single span of output +// that should be annotated with the same source path. For example: +// +// Printer printer(output, '$'); +// map vars; +// vars["first"] = "Alice"; +// vars["last"] = "Smith"; +// printer.Print(vars, "My name is $first$ $last$."); +// printer.Annotate("first", "last", person_); +// +// This code would associate the span covering "Alice Smith" in the output with +// the person_ descriptor. +// +// Note that the beginning variable must come before (or overlap with, in the +// case of zero-sized substitution values) the ending variable. +// +// It is also sometimes useful to use variables with zero-sized values as +// markers. This avoids issues with multiple references to the same variable +// and also allows annotation ranges to span literal text from the Print +// templates: +// +// Printer printer(output, '$'); +// map vars; +// vars["foo"] = "bar"; +// vars["function"] = "call"; +// vars["mark"] = ""; +// printer.Print(vars, "$function$($foo$,$foo$)$mark$"); +// printer.Annotate("function", "mark", call_); +// +// This code associates the span covering "call(bar,bar)" in the output with the +// call_ descriptor. + +class PROTOBUF_EXPORT Printer { + public: + // Create a printer that writes text to the given output stream. Use the + // given character as the delimiter for variables. + Printer(ZeroCopyOutputStream* output, char variable_delimiter); + + // Create a printer that writes text to the given output stream. Use the + // given character as the delimiter for variables. If annotation_collector + // is not null, Printer will provide it with annotations about code written + // to the stream. annotation_collector is not owned by Printer. + Printer(ZeroCopyOutputStream* output, char variable_delimiter, + AnnotationCollector* annotation_collector); + + ~Printer(); + + // Link a substitution variable emitted by the last call to Print to the + // object described by descriptor. + template + void Annotate(const char* varname, const SomeDescriptor* descriptor) { + Annotate(varname, varname, descriptor); + } + + // Link the output range defined by the substitution variables as emitted by + // the last call to Print to the object described by descriptor. The range + // begins at begin_varname's value and ends after the last character of the + // value substituted for end_varname. + template + void Annotate(const char* begin_varname, const char* end_varname, + const SomeDescriptor* descriptor) { + if (annotation_collector_ == NULL) { + // Annotations aren't turned on for this Printer, so don't pay the cost + // of building the location path. + return; + } + std::vector path; + descriptor->GetLocationPath(&path); + Annotate(begin_varname, end_varname, descriptor->file()->name(), path); + } + + // Link a substitution variable emitted by the last call to Print to the file + // with path file_name. + void Annotate(const char* varname, const std::string& file_name) { + Annotate(varname, varname, file_name); + } + + // Link the output range defined by the substitution variables as emitted by + // the last call to Print to the file with path file_name. The range begins + // at begin_varname's value and ends after the last character of the value + // substituted for end_varname. + void Annotate(const char* begin_varname, const char* end_varname, + const std::string& file_name) { + if (annotation_collector_ == NULL) { + // Annotations aren't turned on for this Printer. + return; + } + std::vector empty_path; + Annotate(begin_varname, end_varname, file_name, empty_path); + } + + // Print some text after applying variable substitutions. If a particular + // variable in the text is not defined, this will crash. Variables to be + // substituted are identified by their names surrounded by delimiter + // characters (as given to the constructor). The variable bindings are + // defined by the given map. + void Print(const std::map& variables, + const char* text); + + // Like the first Print(), except the substitutions are given as parameters. + template + void Print(const char* text, const Args&... args) { + std::map vars; + PrintInternal(&vars, text, args...); + } + + // Indent text by two spaces. After calling Indent(), two spaces will be + // inserted at the beginning of each line of text. Indent() may be called + // multiple times to produce deeper indents. + void Indent(); + + // Reduces the current indent level by two spaces, or crashes if the indent + // level is zero. + void Outdent(); + + // Write a string to the output buffer. + // This method does not look for newlines to add indentation. + void PrintRaw(const std::string& data); + + // Write a zero-delimited string to output buffer. + // This method does not look for newlines to add indentation. + void PrintRaw(const char* data); + + // Write some bytes to the output buffer. + // This method does not look for newlines to add indentation. + void WriteRaw(const char* data, int size); + + // FormatInternal is a helper function not meant to use directly, use + // compiler::cpp::Formatter instead. This function is meant to support + // formatting text using named variables (eq. "$foo$) from a lookup map (vars) + // and variables directly supplied by arguments (eq "$1$" meaning first + // argument which is the zero index element of args). + void FormatInternal(const std::vector& args, + const std::map& vars, + const char* format); + + // True if any write to the underlying stream failed. (We don't just + // crash in this case because this is an I/O failure, not a programming + // error.) + bool failed() const { return failed_; } + + private: + // Link the output range defined by the substitution variables as emitted by + // the last call to Print to the object found at the SourceCodeInfo-style path + // in a file with path file_path. The range begins at the start of + // begin_varname's value and ends after the last character of the value + // substituted for end_varname. Note that begin_varname and end_varname + // may refer to the same variable. + void Annotate(const char* begin_varname, const char* end_varname, + const std::string& file_path, const std::vector& path); + + // Base case + void PrintInternal(std::map* vars, + const char* text) { + Print(*vars, text); + } + + template + void PrintInternal(std::map* vars, const char* text, + const char* key, const std::string& value, + const Args&... args) { + (*vars)[key] = value; + PrintInternal(vars, text, args...); + } + + // Copy size worth of bytes from data to buffer_. + void CopyToBuffer(const char* data, int size); + + void push_back(char c) { + if (failed_) return; + if (buffer_size_ == 0) { + if (!Next()) return; + } + *buffer_++ = c; + buffer_size_--; + offset_++; + } + + bool Next(); + + inline void IndentIfAtStart(); + const char* WriteVariable( + const std::vector& args, + const std::map& vars, const char* format, + int* arg_index, + std::vector* annotations); + + const char variable_delimiter_; + + ZeroCopyOutputStream* const output_; + char* buffer_; + int buffer_size_; + // The current position, in bytes, in the output stream. This is equivalent + // to the total number of bytes that have been written so far. This value is + // used to calculate annotation ranges in the substitutions_ map below. + size_t offset_; + + std::string indent_; + bool at_start_of_line_; + bool failed_; + + // A map from variable name to [start, end) offsets in the output buffer. + // These refer to the offsets used for a variable after the last call to + // Print. If a variable was used more than once, the entry used in + // this map is set to a negative-length span. For singly-used variables, the + // start offset is the beginning of the substitution; the end offset is the + // last byte of the substitution plus one (such that (end - start) is the + // length of the substituted string). + std::map > substitutions_; + + // Keeps track of the keys in substitutions_ that need to be updated when + // indents are inserted. These are keys that refer to the beginning of the + // current line. + std::vector line_start_variables_; + + // Returns true and sets range to the substitution range in the output for + // varname if varname was used once in the last call to Print. If varname + // was not used, or if it was used multiple times, returns false (and + // fails a debug assertion). + bool GetSubstitutionRange(const char* varname, + std::pair* range); + + // If non-null, annotation_collector_ is used to store annotations about + // generated code. + AnnotationCollector* const annotation_collector_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Printer); +}; + +} // namespace io +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_IO_PRINTER_H__ diff --git a/external/include/google/protobuf/io/strtod.h b/external/include/google/protobuf/io/strtod.h new file mode 100644 index 0000000..38f544a --- /dev/null +++ b/external/include/google/protobuf/io/strtod.h @@ -0,0 +1,55 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// A locale-independent version of strtod(), used to parse floating +// point default values in .proto files, where the decimal separator +// is always a dot. + +#ifndef GOOGLE_PROTOBUF_IO_STRTOD_H__ +#define GOOGLE_PROTOBUF_IO_STRTOD_H__ + +namespace google { +namespace protobuf { +namespace io { + +// A locale-independent version of the standard strtod(), which always +// uses a dot as the decimal separator. +double NoLocaleStrtod(const char* str, char** endptr); + +// Casts a double value to a float value. If the value is outside of the +// representable range of float, it will be converted to positive or negative +// infinity. +float SafeDoubleToFloat(double value); + +} // namespace io +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_IO_STRTOD_H__ diff --git a/external/include/google/protobuf/io/tokenizer.h b/external/include/google/protobuf/io/tokenizer.h new file mode 100644 index 0000000..3be00f1 --- /dev/null +++ b/external/include/google/protobuf/io/tokenizer.h @@ -0,0 +1,413 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Class for parsing tokenized text from a ZeroCopyInputStream. + +#ifndef GOOGLE_PROTOBUF_IO_TOKENIZER_H__ +#define GOOGLE_PROTOBUF_IO_TOKENIZER_H__ + + +#include +#include + +#include +#include +#include + +namespace google { +namespace protobuf { +namespace io { + +class ZeroCopyInputStream; // zero_copy_stream.h + +// Defined in this file. +class ErrorCollector; +class Tokenizer; + +// By "column number", the proto compiler refers to a count of the number +// of bytes before a given byte, except that a tab character advances to +// the next multiple of 8 bytes. Note in particular that column numbers +// are zero-based, while many user interfaces use one-based column numbers. +typedef int ColumnNumber; + +// Abstract interface for an object which collects the errors that occur +// during parsing. A typical implementation might simply print the errors +// to stdout. +class PROTOBUF_EXPORT ErrorCollector { + public: + inline ErrorCollector() {} + virtual ~ErrorCollector(); + + // Indicates that there was an error in the input at the given line and + // column numbers. The numbers are zero-based, so you may want to add + // 1 to each before printing them. + virtual void AddError(int line, ColumnNumber column, + const std::string& message) = 0; + + // Indicates that there was a warning in the input at the given line and + // column numbers. The numbers are zero-based, so you may want to add + // 1 to each before printing them. + virtual void AddWarning(int /* line */, ColumnNumber /* column */, + const std::string& /* message */) {} + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ErrorCollector); +}; + +// This class converts a stream of raw text into a stream of tokens for +// the protocol definition parser to parse. The tokens recognized are +// similar to those that make up the C language; see the TokenType enum for +// precise descriptions. Whitespace and comments are skipped. By default, +// C- and C++-style comments are recognized, but other styles can be used by +// calling set_comment_style(). +class PROTOBUF_EXPORT Tokenizer { + public: + // Construct a Tokenizer that reads and tokenizes text from the given + // input stream and writes errors to the given error_collector. + // The caller keeps ownership of input and error_collector. + Tokenizer(ZeroCopyInputStream* input, ErrorCollector* error_collector); + ~Tokenizer(); + + enum TokenType { + TYPE_START, // Next() has not yet been called. + TYPE_END, // End of input reached. "text" is empty. + + TYPE_IDENTIFIER, // A sequence of letters, digits, and underscores, not + // starting with a digit. It is an error for a number + // to be followed by an identifier with no space in + // between. + TYPE_INTEGER, // A sequence of digits representing an integer. Normally + // the digits are decimal, but a prefix of "0x" indicates + // a hex number and a leading zero indicates octal, just + // like with C numeric literals. A leading negative sign + // is NOT included in the token; it's up to the parser to + // interpret the unary minus operator on its own. + TYPE_FLOAT, // A floating point literal, with a fractional part and/or + // an exponent. Always in decimal. Again, never + // negative. + TYPE_STRING, // A quoted sequence of escaped characters. Either single + // or double quotes can be used, but they must match. + // A string literal cannot cross a line break. + TYPE_SYMBOL, // Any other printable character, like '!' or '+'. + // Symbols are always a single character, so "!+$%" is + // four tokens. + }; + + // Structure representing a token read from the token stream. + struct Token { + TokenType type; + std::string text; // The exact text of the token as it appeared in + // the input. e.g. tokens of TYPE_STRING will still + // be escaped and in quotes. + + // "line" and "column" specify the position of the first character of + // the token within the input stream. They are zero-based. + int line; + ColumnNumber column; + ColumnNumber end_column; + }; + + // Get the current token. This is updated when Next() is called. Before + // the first call to Next(), current() has type TYPE_START and no contents. + const Token& current(); + + // Return the previous token -- i.e. what current() returned before the + // previous call to Next(). + const Token& previous(); + + // Advance to the next token. Returns false if the end of the input is + // reached. + bool Next(); + + // Like Next(), but also collects comments which appear between the previous + // and next tokens. + // + // Comments which appear to be attached to the previous token are stored + // in *prev_tailing_comments. Comments which appear to be attached to the + // next token are stored in *next_leading_comments. Comments appearing in + // between which do not appear to be attached to either will be added to + // detached_comments. Any of these parameters can be NULL to simply discard + // the comments. + // + // A series of line comments appearing on consecutive lines, with no other + // tokens appearing on those lines, will be treated as a single comment. + // + // Only the comment content is returned; comment markers (e.g. //) are + // stripped out. For block comments, leading whitespace and an asterisk will + // be stripped from the beginning of each line other than the first. Newlines + // are included in the output. + // + // Examples: + // + // optional int32 foo = 1; // Comment attached to foo. + // // Comment attached to bar. + // optional int32 bar = 2; + // + // optional string baz = 3; + // // Comment attached to baz. + // // Another line attached to baz. + // + // // Comment attached to qux. + // // + // // Another line attached to qux. + // optional double qux = 4; + // + // // Detached comment. This is not attached to qux or corge + // // because there are blank lines separating it from both. + // + // optional string corge = 5; + // /* Block comment attached + // * to corge. Leading asterisks + // * will be removed. */ + // /* Block comment attached to + // * grault. */ + // optional int32 grault = 6; + bool NextWithComments(std::string* prev_trailing_comments, + std::vector* detached_comments, + std::string* next_leading_comments); + + // Parse helpers --------------------------------------------------- + + // Parses a TYPE_FLOAT token. This never fails, so long as the text actually + // comes from a TYPE_FLOAT token parsed by Tokenizer. If it doesn't, the + // result is undefined (possibly an assert failure). + static double ParseFloat(const std::string& text); + + // Parses a TYPE_STRING token. This never fails, so long as the text actually + // comes from a TYPE_STRING token parsed by Tokenizer. If it doesn't, the + // result is undefined (possibly an assert failure). + static void ParseString(const std::string& text, std::string* output); + + // Identical to ParseString, but appends to output. + static void ParseStringAppend(const std::string& text, std::string* output); + + // Parses a TYPE_INTEGER token. Returns false if the result would be + // greater than max_value. Otherwise, returns true and sets *output to the + // result. If the text is not from a Token of type TYPE_INTEGER originally + // parsed by a Tokenizer, the result is undefined (possibly an assert + // failure). + static bool ParseInteger(const std::string& text, uint64 max_value, + uint64* output); + + // Options --------------------------------------------------------- + + // Set true to allow floats to be suffixed with the letter 'f'. Tokens + // which would otherwise be integers but which have the 'f' suffix will be + // forced to be interpreted as floats. For all other purposes, the 'f' is + // ignored. + void set_allow_f_after_float(bool value) { allow_f_after_float_ = value; } + + // Valid values for set_comment_style(). + enum CommentStyle { + // Line comments begin with "//", block comments are delimited by "/*" and + // "*/". + CPP_COMMENT_STYLE, + // Line comments begin with "#". No way to write block comments. + SH_COMMENT_STYLE + }; + + // Sets the comment style. + void set_comment_style(CommentStyle style) { comment_style_ = style; } + + // Whether to require whitespace between a number and a field name. + // Default is true. Do not use this; for Google-internal cleanup only. + void set_require_space_after_number(bool require) { + require_space_after_number_ = require; + } + + // Whether to allow string literals to span multiple lines. Default is false. + // Do not use this; for Google-internal cleanup only. + void set_allow_multiline_strings(bool allow) { + allow_multiline_strings_ = allow; + } + + // External helper: validate an identifier. + static bool IsIdentifier(const std::string& text); + + // ----------------------------------------------------------------- + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Tokenizer); + + Token current_; // Returned by current(). + Token previous_; // Returned by previous(). + + ZeroCopyInputStream* input_; + ErrorCollector* error_collector_; + + char current_char_; // == buffer_[buffer_pos_], updated by NextChar(). + const char* buffer_; // Current buffer returned from input_. + int buffer_size_; // Size of buffer_. + int buffer_pos_; // Current position within the buffer. + bool read_error_; // Did we previously encounter a read error? + + // Line and column number of current_char_ within the whole input stream. + int line_; + ColumnNumber column_; + + // String to which text should be appended as we advance through it. + // Call RecordTo(&str) to start recording and StopRecording() to stop. + // E.g. StartToken() calls RecordTo(¤t_.text). record_start_ is the + // position within the current buffer where recording started. + std::string* record_target_; + int record_start_; + + // Options. + bool allow_f_after_float_; + CommentStyle comment_style_; + bool require_space_after_number_; + bool allow_multiline_strings_; + + // Since we count columns we need to interpret tabs somehow. We'll take + // the standard 8-character definition for lack of any way to do better. + // This must match the documentation of ColumnNumber. + static const int kTabWidth = 8; + + // ----------------------------------------------------------------- + // Helper methods. + + // Consume this character and advance to the next one. + void NextChar(); + + // Read a new buffer from the input. + void Refresh(); + + inline void RecordTo(std::string* target); + inline void StopRecording(); + + // Called when the current character is the first character of a new + // token (not including whitespace or comments). + inline void StartToken(); + // Called when the current character is the first character after the + // end of the last token. After this returns, current_.text will + // contain all text consumed since StartToken() was called. + inline void EndToken(); + + // Convenience method to add an error at the current line and column. + void AddError(const std::string& message) { + error_collector_->AddError(line_, column_, message); + } + + // ----------------------------------------------------------------- + // The following four methods are used to consume tokens of specific + // types. They are actually used to consume all characters *after* + // the first, since the calling function consumes the first character + // in order to decide what kind of token is being read. + + // Read and consume a string, ending when the given delimiter is + // consumed. + void ConsumeString(char delimiter); + + // Read and consume a number, returning TYPE_FLOAT or TYPE_INTEGER + // depending on what was read. This needs to know if the first + // character was a zero in order to correctly recognize hex and octal + // numbers. + // It also needs to know if the first character was a . to parse floating + // point correctly. + TokenType ConsumeNumber(bool started_with_zero, bool started_with_dot); + + // Consume the rest of a line. + void ConsumeLineComment(std::string* content); + // Consume until "*/". + void ConsumeBlockComment(std::string* content); + + enum NextCommentStatus { + // Started a line comment. + LINE_COMMENT, + + // Started a block comment. + BLOCK_COMMENT, + + // Consumed a slash, then realized it wasn't a comment. current_ has + // been filled in with a slash token. The caller should return it. + SLASH_NOT_COMMENT, + + // We do not appear to be starting a comment here. + NO_COMMENT + }; + + // If we're at the start of a new comment, consume it and return what kind + // of comment it is. + NextCommentStatus TryConsumeCommentStart(); + + // ----------------------------------------------------------------- + // These helper methods make the parsing code more readable. The + // "character classes" referred to are defined at the top of the .cc file. + // Basically it is a C++ class with one method: + // static bool InClass(char c); + // The method returns true if c is a member of this "class", like "Letter" + // or "Digit". + + // Returns true if the current character is of the given character + // class, but does not consume anything. + template + inline bool LookingAt(); + + // If the current character is in the given class, consume it and return + // true. Otherwise return false. + // e.g. TryConsumeOne() + template + inline bool TryConsumeOne(); + + // Like above, but try to consume the specific character indicated. + inline bool TryConsume(char c); + + // Consume zero or more of the given character class. + template + inline void ConsumeZeroOrMore(); + + // Consume one or more of the given character class or log the given + // error message. + // e.g. ConsumeOneOrMore("Expected digits."); + template + inline void ConsumeOneOrMore(const char* error); +}; + +// inline methods ==================================================== +inline const Tokenizer::Token& Tokenizer::current() { return current_; } + +inline const Tokenizer::Token& Tokenizer::previous() { return previous_; } + +inline void Tokenizer::ParseString(const std::string& text, + std::string* output) { + output->clear(); + ParseStringAppend(text, output); +} + +} // namespace io +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_IO_TOKENIZER_H__ diff --git a/external/include/google/protobuf/io/zero_copy_stream.h b/external/include/google/protobuf/io/zero_copy_stream.h new file mode 100644 index 0000000..d3bd6da --- /dev/null +++ b/external/include/google/protobuf/io/zero_copy_stream.h @@ -0,0 +1,253 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This file contains the ZeroCopyInputStream and ZeroCopyOutputStream +// interfaces, which represent abstract I/O streams to and from which +// protocol buffers can be read and written. For a few simple +// implementations of these interfaces, see zero_copy_stream_impl.h. +// +// These interfaces are different from classic I/O streams in that they +// try to minimize the amount of data copying that needs to be done. +// To accomplish this, responsibility for allocating buffers is moved to +// the stream object, rather than being the responsibility of the caller. +// So, the stream can return a buffer which actually points directly into +// the final data structure where the bytes are to be stored, and the caller +// can interact directly with that buffer, eliminating an intermediate copy +// operation. +// +// As an example, consider the common case in which you are reading bytes +// from an array that is already in memory (or perhaps an mmap()ed file). +// With classic I/O streams, you would do something like: +// char buffer[BUFFER_SIZE]; +// input->Read(buffer, BUFFER_SIZE); +// DoSomething(buffer, BUFFER_SIZE); +// Then, the stream basically just calls memcpy() to copy the data from +// the array into your buffer. With a ZeroCopyInputStream, you would do +// this instead: +// const void* buffer; +// int size; +// input->Next(&buffer, &size); +// DoSomething(buffer, size); +// Here, no copy is performed. The input stream returns a pointer directly +// into the backing array, and the caller ends up reading directly from it. +// +// If you want to be able to read the old-fashion way, you can create +// a CodedInputStream or CodedOutputStream wrapping these objects and use +// their ReadRaw()/WriteRaw() methods. These will, of course, add a copy +// step, but Coded*Stream will handle buffering so at least it will be +// reasonably efficient. +// +// ZeroCopyInputStream example: +// // Read in a file and print its contents to stdout. +// int fd = open("myfile", O_RDONLY); +// ZeroCopyInputStream* input = new FileInputStream(fd); +// +// const void* buffer; +// int size; +// while (input->Next(&buffer, &size)) { +// cout.write(buffer, size); +// } +// +// delete input; +// close(fd); +// +// ZeroCopyOutputStream example: +// // Copy the contents of "infile" to "outfile", using plain read() for +// // "infile" but a ZeroCopyOutputStream for "outfile". +// int infd = open("infile", O_RDONLY); +// int outfd = open("outfile", O_WRONLY); +// ZeroCopyOutputStream* output = new FileOutputStream(outfd); +// +// void* buffer; +// int size; +// while (output->Next(&buffer, &size)) { +// int bytes = read(infd, buffer, size); +// if (bytes < size) { +// // Reached EOF. +// output->BackUp(size - bytes); +// break; +// } +// } +// +// delete output; +// close(infd); +// close(outfd); + +#ifndef GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_H__ +#define GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_H__ + + +#include + +#include +#include + + +namespace google { +namespace protobuf { +namespace io { + +// Defined in this file. +class ZeroCopyInputStream; +class ZeroCopyOutputStream; + +// Abstract interface similar to an input stream but designed to minimize +// copying. +class PROTOBUF_EXPORT ZeroCopyInputStream { + public: + ZeroCopyInputStream() {} + virtual ~ZeroCopyInputStream() {} + + // Obtains a chunk of data from the stream. + // + // Preconditions: + // * "size" and "data" are not NULL. + // + // Postconditions: + // * If the returned value is false, there is no more data to return or + // an error occurred. All errors are permanent. + // * Otherwise, "size" points to the actual number of bytes read and "data" + // points to a pointer to a buffer containing these bytes. + // * Ownership of this buffer remains with the stream, and the buffer + // remains valid only until some other method of the stream is called + // or the stream is destroyed. + // * It is legal for the returned buffer to have zero size, as long + // as repeatedly calling Next() eventually yields a buffer with non-zero + // size. + virtual bool Next(const void** data, int* size) = 0; + + // Backs up a number of bytes, so that the next call to Next() returns + // data again that was already returned by the last call to Next(). This + // is useful when writing procedures that are only supposed to read up + // to a certain point in the input, then return. If Next() returns a + // buffer that goes beyond what you wanted to read, you can use BackUp() + // to return to the point where you intended to finish. + // + // Preconditions: + // * The last method called must have been Next(). + // * count must be less than or equal to the size of the last buffer + // returned by Next(). + // + // Postconditions: + // * The last "count" bytes of the last buffer returned by Next() will be + // pushed back into the stream. Subsequent calls to Next() will return + // the same data again before producing new data. + virtual void BackUp(int count) = 0; + + // Skips a number of bytes. Returns false if the end of the stream is + // reached or some input error occurred. In the end-of-stream case, the + // stream is advanced to the end of the stream (so ByteCount() will return + // the total size of the stream). + virtual bool Skip(int count) = 0; + + // Returns the total number of bytes read since this object was created. + virtual int64_t ByteCount() const = 0; + + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ZeroCopyInputStream); +}; + +// Abstract interface similar to an output stream but designed to minimize +// copying. +class PROTOBUF_EXPORT ZeroCopyOutputStream { + public: + ZeroCopyOutputStream() {} + virtual ~ZeroCopyOutputStream() {} + + // Obtains a buffer into which data can be written. Any data written + // into this buffer will eventually (maybe instantly, maybe later on) + // be written to the output. + // + // Preconditions: + // * "size" and "data" are not NULL. + // + // Postconditions: + // * If the returned value is false, an error occurred. All errors are + // permanent. + // * Otherwise, "size" points to the actual number of bytes in the buffer + // and "data" points to the buffer. + // * Ownership of this buffer remains with the stream, and the buffer + // remains valid only until some other method of the stream is called + // or the stream is destroyed. + // * Any data which the caller stores in this buffer will eventually be + // written to the output (unless BackUp() is called). + // * It is legal for the returned buffer to have zero size, as long + // as repeatedly calling Next() eventually yields a buffer with non-zero + // size. + virtual bool Next(void** data, int* size) = 0; + + // Backs up a number of bytes, so that the end of the last buffer returned + // by Next() is not actually written. This is needed when you finish + // writing all the data you want to write, but the last buffer was bigger + // than you needed. You don't want to write a bunch of garbage after the + // end of your data, so you use BackUp() to back up. + // + // Preconditions: + // * The last method called must have been Next(). + // * count must be less than or equal to the size of the last buffer + // returned by Next(). + // * The caller must not have written anything to the last "count" bytes + // of that buffer. + // + // Postconditions: + // * The last "count" bytes of the last buffer returned by Next() will be + // ignored. + virtual void BackUp(int count) = 0; + + // Returns the total number of bytes written since this object was created. + virtual int64_t ByteCount() const = 0; + + // Write a given chunk of data to the output. Some output streams may + // implement this in a way that avoids copying. Check AllowsAliasing() before + // calling WriteAliasedRaw(). It will GOOGLE_CHECK fail if WriteAliasedRaw() is + // called on a stream that does not allow aliasing. + // + // NOTE: It is caller's responsibility to ensure that the chunk of memory + // remains live until all of the data has been consumed from the stream. + virtual bool WriteAliasedRaw(const void* data, int size); + virtual bool AllowsAliasing() const { return false; } + + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ZeroCopyOutputStream); +}; + +} // namespace io +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_H__ diff --git a/external/include/google/protobuf/io/zero_copy_stream_impl.h b/external/include/google/protobuf/io/zero_copy_stream_impl.h new file mode 100644 index 0000000..0206e38 --- /dev/null +++ b/external/include/google/protobuf/io/zero_copy_stream_impl.h @@ -0,0 +1,327 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This file contains common implementations of the interfaces defined in +// zero_copy_stream.h which are only included in the full (non-lite) +// protobuf library. These implementations include Unix file descriptors +// and C++ iostreams. See also: zero_copy_stream_impl_lite.h + +#ifndef GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_IMPL_H__ +#define GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_IMPL_H__ + + +#include +#include + +#include +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace io { + +// =================================================================== + +// A ZeroCopyInputStream which reads from a file descriptor. +// +// FileInputStream is preferred over using an ifstream with IstreamInputStream. +// The latter will introduce an extra layer of buffering, harming performance. +// Also, it's conceivable that FileInputStream could someday be enhanced +// to use zero-copy file descriptors on OSs which support them. +class PROTOBUF_EXPORT FileInputStream : public ZeroCopyInputStream { + public: + // Creates a stream that reads from the given Unix file descriptor. + // If a block_size is given, it specifies the number of bytes that + // should be read and returned with each call to Next(). Otherwise, + // a reasonable default is used. + explicit FileInputStream(int file_descriptor, int block_size = -1); + + // Flushes any buffers and closes the underlying file. Returns false if + // an error occurs during the process; use GetErrno() to examine the error. + // Even if an error occurs, the file descriptor is closed when this returns. + bool Close(); + + // By default, the file descriptor is not closed when the stream is + // destroyed. Call SetCloseOnDelete(true) to change that. WARNING: + // This leaves no way for the caller to detect if close() fails. If + // detecting close() errors is important to you, you should arrange + // to close the descriptor yourself. + void SetCloseOnDelete(bool value) { copying_input_.SetCloseOnDelete(value); } + + // If an I/O error has occurred on this file descriptor, this is the + // errno from that error. Otherwise, this is zero. Once an error + // occurs, the stream is broken and all subsequent operations will + // fail. + int GetErrno() const { return copying_input_.GetErrno(); } + + // implements ZeroCopyInputStream ---------------------------------- + bool Next(const void** data, int* size) override; + void BackUp(int count) override; + bool Skip(int count) override; + int64_t ByteCount() const override; + + private: + class PROTOBUF_EXPORT CopyingFileInputStream : public CopyingInputStream { + public: + CopyingFileInputStream(int file_descriptor); + ~CopyingFileInputStream() override; + + bool Close(); + void SetCloseOnDelete(bool value) { close_on_delete_ = value; } + int GetErrno() const { return errno_; } + + // implements CopyingInputStream --------------------------------- + int Read(void* buffer, int size) override; + int Skip(int count) override; + + private: + // The file descriptor. + const int file_; + bool close_on_delete_; + bool is_closed_; + + // The errno of the I/O error, if one has occurred. Otherwise, zero. + int errno_; + + // Did we try to seek once and fail? If so, we assume this file descriptor + // doesn't support seeking and won't try again. + bool previous_seek_failed_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CopyingFileInputStream); + }; + + CopyingFileInputStream copying_input_; + CopyingInputStreamAdaptor impl_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FileInputStream); +}; + +// =================================================================== + +// A ZeroCopyOutputStream which writes to a file descriptor. +// +// FileOutputStream is preferred over using an ofstream with +// OstreamOutputStream. The latter will introduce an extra layer of buffering, +// harming performance. Also, it's conceivable that FileOutputStream could +// someday be enhanced to use zero-copy file descriptors on OSs which +// support them. +class PROTOBUF_EXPORT FileOutputStream : public CopyingOutputStreamAdaptor { + public: + // Creates a stream that writes to the given Unix file descriptor. + // If a block_size is given, it specifies the size of the buffers + // that should be returned by Next(). Otherwise, a reasonable default + // is used. + explicit FileOutputStream(int file_descriptor, int block_size = -1); + + ~FileOutputStream() override; + + // Flushes any buffers and closes the underlying file. Returns false if + // an error occurs during the process; use GetErrno() to examine the error. + // Even if an error occurs, the file descriptor is closed when this returns. + bool Close(); + + // By default, the file descriptor is not closed when the stream is + // destroyed. Call SetCloseOnDelete(true) to change that. WARNING: + // This leaves no way for the caller to detect if close() fails. If + // detecting close() errors is important to you, you should arrange + // to close the descriptor yourself. + void SetCloseOnDelete(bool value) { copying_output_.SetCloseOnDelete(value); } + + // If an I/O error has occurred on this file descriptor, this is the + // errno from that error. Otherwise, this is zero. Once an error + // occurs, the stream is broken and all subsequent operations will + // fail. + int GetErrno() const { return copying_output_.GetErrno(); } + + private: + class PROTOBUF_EXPORT CopyingFileOutputStream : public CopyingOutputStream { + public: + CopyingFileOutputStream(int file_descriptor); + ~CopyingFileOutputStream() override; + + bool Close(); + void SetCloseOnDelete(bool value) { close_on_delete_ = value; } + int GetErrno() const { return errno_; } + + // implements CopyingOutputStream -------------------------------- + bool Write(const void* buffer, int size) override; + + private: + // The file descriptor. + const int file_; + bool close_on_delete_; + bool is_closed_; + + // The errno of the I/O error, if one has occurred. Otherwise, zero. + int errno_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CopyingFileOutputStream); + }; + + CopyingFileOutputStream copying_output_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FileOutputStream); +}; + +// =================================================================== + +// A ZeroCopyInputStream which reads from a C++ istream. +// +// Note that for reading files (or anything represented by a file descriptor), +// FileInputStream is more efficient. +class PROTOBUF_EXPORT IstreamInputStream : public ZeroCopyInputStream { + public: + // Creates a stream that reads from the given C++ istream. + // If a block_size is given, it specifies the number of bytes that + // should be read and returned with each call to Next(). Otherwise, + // a reasonable default is used. + explicit IstreamInputStream(std::istream* stream, int block_size = -1); + + // implements ZeroCopyInputStream ---------------------------------- + bool Next(const void** data, int* size) override; + void BackUp(int count) override; + bool Skip(int count) override; + int64_t ByteCount() const override; + + private: + class PROTOBUF_EXPORT CopyingIstreamInputStream : public CopyingInputStream { + public: + CopyingIstreamInputStream(std::istream* input); + ~CopyingIstreamInputStream() override; + + // implements CopyingInputStream --------------------------------- + int Read(void* buffer, int size) override; + // (We use the default implementation of Skip().) + + private: + // The stream. + std::istream* input_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CopyingIstreamInputStream); + }; + + CopyingIstreamInputStream copying_input_; + CopyingInputStreamAdaptor impl_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(IstreamInputStream); +}; + +// =================================================================== + +// A ZeroCopyOutputStream which writes to a C++ ostream. +// +// Note that for writing files (or anything represented by a file descriptor), +// FileOutputStream is more efficient. +class PROTOBUF_EXPORT OstreamOutputStream : public ZeroCopyOutputStream { + public: + // Creates a stream that writes to the given C++ ostream. + // If a block_size is given, it specifies the size of the buffers + // that should be returned by Next(). Otherwise, a reasonable default + // is used. + explicit OstreamOutputStream(std::ostream* stream, int block_size = -1); + ~OstreamOutputStream() override; + + // implements ZeroCopyOutputStream --------------------------------- + bool Next(void** data, int* size) override; + void BackUp(int count) override; + int64_t ByteCount() const override; + + private: + class PROTOBUF_EXPORT CopyingOstreamOutputStream + : public CopyingOutputStream { + public: + CopyingOstreamOutputStream(std::ostream* output); + ~CopyingOstreamOutputStream() override; + + // implements CopyingOutputStream -------------------------------- + bool Write(const void* buffer, int size) override; + + private: + // The stream. + std::ostream* output_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CopyingOstreamOutputStream); + }; + + CopyingOstreamOutputStream copying_output_; + CopyingOutputStreamAdaptor impl_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(OstreamOutputStream); +}; + +// =================================================================== + +// A ZeroCopyInputStream which reads from several other streams in sequence. +// ConcatenatingInputStream is unable to distinguish between end-of-stream +// and read errors in the underlying streams, so it assumes any errors mean +// end-of-stream. So, if the underlying streams fail for any other reason, +// ConcatenatingInputStream may do odd things. It is suggested that you do +// not use ConcatenatingInputStream on streams that might produce read errors +// other than end-of-stream. +class PROTOBUF_EXPORT ConcatenatingInputStream : public ZeroCopyInputStream { + public: + // All streams passed in as well as the array itself must remain valid + // until the ConcatenatingInputStream is destroyed. + ConcatenatingInputStream(ZeroCopyInputStream* const streams[], int count); + ~ConcatenatingInputStream() override = default; + + // implements ZeroCopyInputStream ---------------------------------- + bool Next(const void** data, int* size) override; + void BackUp(int count) override; + bool Skip(int count) override; + int64_t ByteCount() const override; + + + private: + // As streams are retired, streams_ is incremented and count_ is + // decremented. + ZeroCopyInputStream* const* streams_; + int stream_count_; + int64 bytes_retired_; // Bytes read from previous streams. + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ConcatenatingInputStream); +}; + +// =================================================================== + +} // namespace io +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_IMPL_H__ diff --git a/external/include/google/protobuf/io/zero_copy_stream_impl_lite.h b/external/include/google/protobuf/io/zero_copy_stream_impl_lite.h new file mode 100644 index 0000000..cfe81d2 --- /dev/null +++ b/external/include/google/protobuf/io/zero_copy_stream_impl_lite.h @@ -0,0 +1,408 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This file contains common implementations of the interfaces defined in +// zero_copy_stream.h which are included in the "lite" protobuf library. +// These implementations cover I/O on raw arrays and strings, as well as +// adaptors which make it easy to implement streams based on traditional +// streams. Of course, many users will probably want to write their own +// implementations of these interfaces specific to the particular I/O +// abstractions they prefer to use, but these should cover the most common +// cases. + +#ifndef GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_IMPL_LITE_H__ +#define GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_IMPL_LITE_H__ + + +#include +#include +#include + +#include +#include +#include +#include + + +#include + +namespace google { +namespace protobuf { +namespace io { + +// =================================================================== + +// A ZeroCopyInputStream backed by an in-memory array of bytes. +class PROTOBUF_EXPORT ArrayInputStream : public ZeroCopyInputStream { + public: + // Create an InputStream that returns the bytes pointed to by "data". + // "data" remains the property of the caller but must remain valid until + // the stream is destroyed. If a block_size is given, calls to Next() + // will return data blocks no larger than the given size. Otherwise, the + // first call to Next() returns the entire array. block_size is mainly + // useful for testing; in production you would probably never want to set + // it. + ArrayInputStream(const void* data, int size, int block_size = -1); + ~ArrayInputStream() override = default; + + // implements ZeroCopyInputStream ---------------------------------- + bool Next(const void** data, int* size) override; + void BackUp(int count) override; + bool Skip(int count) override; + int64_t ByteCount() const override; + + + private: + const uint8* const data_; // The byte array. + const int size_; // Total size of the array. + const int block_size_; // How many bytes to return at a time. + + int position_; + int last_returned_size_; // How many bytes we returned last time Next() + // was called (used for error checking only). + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ArrayInputStream); +}; + +// =================================================================== + +// A ZeroCopyOutputStream backed by an in-memory array of bytes. +class PROTOBUF_EXPORT ArrayOutputStream : public ZeroCopyOutputStream { + public: + // Create an OutputStream that writes to the bytes pointed to by "data". + // "data" remains the property of the caller but must remain valid until + // the stream is destroyed. If a block_size is given, calls to Next() + // will return data blocks no larger than the given size. Otherwise, the + // first call to Next() returns the entire array. block_size is mainly + // useful for testing; in production you would probably never want to set + // it. + ArrayOutputStream(void* data, int size, int block_size = -1); + ~ArrayOutputStream() override = default; + + // implements ZeroCopyOutputStream --------------------------------- + bool Next(void** data, int* size) override; + void BackUp(int count) override; + int64_t ByteCount() const override; + + private: + uint8* const data_; // The byte array. + const int size_; // Total size of the array. + const int block_size_; // How many bytes to return at a time. + + int position_; + int last_returned_size_; // How many bytes we returned last time Next() + // was called (used for error checking only). + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ArrayOutputStream); +}; + +// =================================================================== + +// A ZeroCopyOutputStream which appends bytes to a string. +class PROTOBUF_EXPORT StringOutputStream : public ZeroCopyOutputStream { + public: + // Create a StringOutputStream which appends bytes to the given string. + // The string remains property of the caller, but it is mutated in arbitrary + // ways and MUST NOT be accessed in any way until you're done with the + // stream. Either be sure there's no further usage, or (safest) destroy the + // stream before using the contents. + // + // Hint: If you call target->reserve(n) before creating the stream, + // the first call to Next() will return at least n bytes of buffer + // space. + explicit StringOutputStream(std::string* target); + ~StringOutputStream() override = default; + + // implements ZeroCopyOutputStream --------------------------------- + bool Next(void** data, int* size) override; + void BackUp(int count) override; + int64_t ByteCount() const override; + + private: + static constexpr size_t kMinimumSize = 16; + + std::string* target_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(StringOutputStream); +}; + +// Note: There is no StringInputStream. Instead, just create an +// ArrayInputStream as follows: +// ArrayInputStream input(str.data(), str.size()); + +// =================================================================== + +// A generic traditional input stream interface. +// +// Lots of traditional input streams (e.g. file descriptors, C stdio +// streams, and C++ iostreams) expose an interface where every read +// involves copying bytes into a buffer. If you want to take such an +// interface and make a ZeroCopyInputStream based on it, simply implement +// CopyingInputStream and then use CopyingInputStreamAdaptor. +// +// CopyingInputStream implementations should avoid buffering if possible. +// CopyingInputStreamAdaptor does its own buffering and will read data +// in large blocks. +class PROTOBUF_EXPORT CopyingInputStream { + public: + virtual ~CopyingInputStream() {} + + // Reads up to "size" bytes into the given buffer. Returns the number of + // bytes read. Read() waits until at least one byte is available, or + // returns zero if no bytes will ever become available (EOF), or -1 if a + // permanent read error occurred. + virtual int Read(void* buffer, int size) = 0; + + // Skips the next "count" bytes of input. Returns the number of bytes + // actually skipped. This will always be exactly equal to "count" unless + // EOF was reached or a permanent read error occurred. + // + // The default implementation just repeatedly calls Read() into a scratch + // buffer. + virtual int Skip(int count); +}; + +// A ZeroCopyInputStream which reads from a CopyingInputStream. This is +// useful for implementing ZeroCopyInputStreams that read from traditional +// streams. Note that this class is not really zero-copy. +// +// If you want to read from file descriptors or C++ istreams, this is +// already implemented for you: use FileInputStream or IstreamInputStream +// respectively. +class PROTOBUF_EXPORT CopyingInputStreamAdaptor : public ZeroCopyInputStream { + public: + // Creates a stream that reads from the given CopyingInputStream. + // If a block_size is given, it specifies the number of bytes that + // should be read and returned with each call to Next(). Otherwise, + // a reasonable default is used. The caller retains ownership of + // copying_stream unless SetOwnsCopyingStream(true) is called. + explicit CopyingInputStreamAdaptor(CopyingInputStream* copying_stream, + int block_size = -1); + ~CopyingInputStreamAdaptor() override; + + // Call SetOwnsCopyingStream(true) to tell the CopyingInputStreamAdaptor to + // delete the underlying CopyingInputStream when it is destroyed. + void SetOwnsCopyingStream(bool value) { owns_copying_stream_ = value; } + + // implements ZeroCopyInputStream ---------------------------------- + bool Next(const void** data, int* size) override; + void BackUp(int count) override; + bool Skip(int count) override; + int64_t ByteCount() const override; + + private: + // Insures that buffer_ is not NULL. + void AllocateBufferIfNeeded(); + // Frees the buffer and resets buffer_used_. + void FreeBuffer(); + + // The underlying copying stream. + CopyingInputStream* copying_stream_; + bool owns_copying_stream_; + + // True if we have seen a permanent error from the underlying stream. + bool failed_; + + // The current position of copying_stream_, relative to the point where + // we started reading. + int64 position_; + + // Data is read into this buffer. It may be NULL if no buffer is currently + // in use. Otherwise, it points to an array of size buffer_size_. + std::unique_ptr buffer_; + const int buffer_size_; + + // Number of valid bytes currently in the buffer (i.e. the size last + // returned by Next()). 0 <= buffer_used_ <= buffer_size_. + int buffer_used_; + + // Number of bytes in the buffer which were backed up over by a call to + // BackUp(). These need to be returned again. + // 0 <= backup_bytes_ <= buffer_used_ + int backup_bytes_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CopyingInputStreamAdaptor); +}; + +// =================================================================== + +// A generic traditional output stream interface. +// +// Lots of traditional output streams (e.g. file descriptors, C stdio +// streams, and C++ iostreams) expose an interface where every write +// involves copying bytes from a buffer. If you want to take such an +// interface and make a ZeroCopyOutputStream based on it, simply implement +// CopyingOutputStream and then use CopyingOutputStreamAdaptor. +// +// CopyingOutputStream implementations should avoid buffering if possible. +// CopyingOutputStreamAdaptor does its own buffering and will write data +// in large blocks. +class PROTOBUF_EXPORT CopyingOutputStream { + public: + virtual ~CopyingOutputStream() {} + + // Writes "size" bytes from the given buffer to the output. Returns true + // if successful, false on a write error. + virtual bool Write(const void* buffer, int size) = 0; +}; + +// A ZeroCopyOutputStream which writes to a CopyingOutputStream. This is +// useful for implementing ZeroCopyOutputStreams that write to traditional +// streams. Note that this class is not really zero-copy. +// +// If you want to write to file descriptors or C++ ostreams, this is +// already implemented for you: use FileOutputStream or OstreamOutputStream +// respectively. +class PROTOBUF_EXPORT CopyingOutputStreamAdaptor : public ZeroCopyOutputStream { + public: + // Creates a stream that writes to the given Unix file descriptor. + // If a block_size is given, it specifies the size of the buffers + // that should be returned by Next(). Otherwise, a reasonable default + // is used. + explicit CopyingOutputStreamAdaptor(CopyingOutputStream* copying_stream, + int block_size = -1); + ~CopyingOutputStreamAdaptor() override; + + // Writes all pending data to the underlying stream. Returns false if a + // write error occurred on the underlying stream. (The underlying + // stream itself is not necessarily flushed.) + bool Flush(); + + // Call SetOwnsCopyingStream(true) to tell the CopyingOutputStreamAdaptor to + // delete the underlying CopyingOutputStream when it is destroyed. + void SetOwnsCopyingStream(bool value) { owns_copying_stream_ = value; } + + // implements ZeroCopyOutputStream --------------------------------- + bool Next(void** data, int* size) override; + void BackUp(int count) override; + int64_t ByteCount() const override; + bool WriteAliasedRaw(const void* data, int size) override; + bool AllowsAliasing() const override { return true; } + + private: + // Write the current buffer, if it is present. + bool WriteBuffer(); + // Insures that buffer_ is not NULL. + void AllocateBufferIfNeeded(); + // Frees the buffer. + void FreeBuffer(); + + // The underlying copying stream. + CopyingOutputStream* copying_stream_; + bool owns_copying_stream_; + + // True if we have seen a permanent error from the underlying stream. + bool failed_; + + // The current position of copying_stream_, relative to the point where + // we started writing. + int64 position_; + + // Data is written from this buffer. It may be NULL if no buffer is + // currently in use. Otherwise, it points to an array of size buffer_size_. + std::unique_ptr buffer_; + const int buffer_size_; + + // Number of valid bytes currently in the buffer (i.e. the size last + // returned by Next()). When BackUp() is called, we just reduce this. + // 0 <= buffer_used_ <= buffer_size_. + int buffer_used_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CopyingOutputStreamAdaptor); +}; + +// =================================================================== + +// A ZeroCopyInputStream which wraps some other stream and limits it to +// a particular byte count. +class PROTOBUF_EXPORT LimitingInputStream : public ZeroCopyInputStream { + public: + LimitingInputStream(ZeroCopyInputStream* input, int64 limit); + ~LimitingInputStream() override; + + // implements ZeroCopyInputStream ---------------------------------- + bool Next(const void** data, int* size) override; + void BackUp(int count) override; + bool Skip(int count) override; + int64_t ByteCount() const override; + + + private: + ZeroCopyInputStream* input_; + int64 limit_; // Decreases as we go, becomes negative if we overshoot. + int64 prior_bytes_read_; // Bytes read on underlying stream at construction + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(LimitingInputStream); +}; + + +// =================================================================== + +// mutable_string_data() and as_string_data() are workarounds to improve +// the performance of writing new data to an existing string. Unfortunately +// the methods provided by the string class are suboptimal, and using memcpy() +// is mildly annoying because it requires its pointer args to be non-NULL even +// if we ask it to copy 0 bytes. Furthermore, string_as_array() has the +// property that it always returns NULL if its arg is the empty string, exactly +// what we want to avoid if we're using it in conjunction with memcpy()! +// With C++11, the desired memcpy() boils down to memcpy(..., &(*s)[0], size), +// where s is a string*. Without C++11, &(*s)[0] is not guaranteed to be safe, +// so we use string_as_array(), and live with the extra logic that tests whether +// *s is empty. + +// Return a pointer to mutable characters underlying the given string. The +// return value is valid until the next time the string is resized. We +// trust the caller to treat the return value as an array of length s->size(). +inline char* mutable_string_data(std::string* s) { + // This should be simpler & faster than string_as_array() because the latter + // is guaranteed to return NULL when *s is empty, so it has to check for that. + return &(*s)[0]; +} + +// as_string_data(s) is equivalent to +// ({ char* p = mutable_string_data(s); make_pair(p, p != NULL); }) +// Sometimes it's faster: in some scenarios p cannot be NULL, and then the +// code can avoid that check. +inline std::pair as_string_data(std::string* s) { + char* p = mutable_string_data(s); + return std::make_pair(p, true); +} + +} // namespace io +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_IO_ZERO_COPY_STREAM_IMPL_LITE_H__ diff --git a/external/include/google/protobuf/map.h b/external/include/google/protobuf/map.h new file mode 100644 index 0000000..df84e1e --- /dev/null +++ b/external/include/google/protobuf/map.h @@ -0,0 +1,1364 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// This file defines the map container and its helpers to support protobuf maps. +// +// The Map and MapIterator types are provided by this header file. +// Please avoid using other types defined here, unless they are public +// types within Map or MapIterator, such as Map::value_type. + +#ifndef GOOGLE_PROTOBUF_MAP_H__ +#define GOOGLE_PROTOBUF_MAP_H__ + +#include +#include +#include +#include // To support Visual Studio 2008 +#include +#include +#include +#include + +#if defined(__cpp_lib_string_view) +#include +#endif // defined(__cpp_lib_string_view) + +#include +#include +#include +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +namespace google { +namespace protobuf { + +template +class Map; + +class MapIterator; + +template +struct is_proto_enum; + +namespace internal { +template +class MapFieldLite; + +template +class MapField; + +template +class TypeDefinedMapFieldBase; + +class DynamicMapField; + +class GeneratedMessageReflection; + +// re-implement std::allocator to use arena allocator for memory allocation. +// Used for Map implementation. Users should not use this class +// directly. +template +class MapAllocator { + public: + using value_type = U; + using pointer = value_type*; + using const_pointer = const value_type*; + using reference = value_type&; + using const_reference = const value_type&; + using size_type = size_t; + using difference_type = ptrdiff_t; + + constexpr MapAllocator() : arena_(nullptr) {} + explicit constexpr MapAllocator(Arena* arena) : arena_(arena) {} + template + MapAllocator(const MapAllocator& allocator) // NOLINT(runtime/explicit) + : arena_(allocator.arena()) {} + + pointer allocate(size_type n, const void* /* hint */ = nullptr) { + // If arena is not given, malloc needs to be called which doesn't + // construct element object. + if (arena_ == nullptr) { + return static_cast(::operator new(n * sizeof(value_type))); + } else { + return reinterpret_cast( + Arena::CreateArray(arena_, n * sizeof(value_type))); + } + } + + void deallocate(pointer p, size_type n) { + if (arena_ == nullptr) { +#if defined(__GXX_DELETE_WITH_SIZE__) || defined(__cpp_sized_deallocation) + ::operator delete(p, n * sizeof(value_type)); +#else + (void)n; + ::operator delete(p); +#endif + } + } + +#if !defined(GOOGLE_PROTOBUF_OS_APPLE) && !defined(GOOGLE_PROTOBUF_OS_NACL) && \ + !defined(GOOGLE_PROTOBUF_OS_EMSCRIPTEN) + template + void construct(NodeType* p, Args&&... args) { + // Clang 3.6 doesn't compile static casting to void* directly. (Issue + // #1266) According C++ standard 5.2.9/1: "The static_cast operator shall + // not cast away constness". So first the maybe const pointer is casted to + // const void* and after the const void* is const casted. + new (const_cast(static_cast(p))) + NodeType(std::forward(args)...); + } + + template + void destroy(NodeType* p) { + p->~NodeType(); + } +#else + void construct(pointer p, const_reference t) { new (p) value_type(t); } + + void destroy(pointer p) { p->~value_type(); } +#endif + + template + struct rebind { + using other = MapAllocator; + }; + + template + bool operator==(const MapAllocator& other) const { + return arena_ == other.arena_; + } + + template + bool operator!=(const MapAllocator& other) const { + return arena_ != other.arena_; + } + + // To support Visual Studio 2008 + size_type max_size() const { + // parentheses around (std::...:max) prevents macro warning of max() + return (std::numeric_limits::max)(); + } + + // To support gcc-4.4, which does not properly + // support templated friend classes + Arena* arena() const { return arena_; } + + private: + using DestructorSkippable_ = void; + Arena* arena_; +}; + +template +using KeyForTree = + typename std::conditional::value, T, + std::reference_wrapper>::type; + +// Default case: Not transparent. +// We use std::hash/std::less and all the lookup functions +// only accept `key_type`. +template +struct TransparentSupport { + using hash = std::hash; + using less = std::less; + + static bool Equals(const key_type& a, const key_type& b) { return a == b; } + + template + using key_arg = key_type; +}; + +#if defined(__cpp_lib_string_view) +// If std::string_view is available, we add transparent support for std::string +// keys. We use std::hash as it supports the input types we +// care about. The lookup functions accept arbitrary `K`. This will include any +// key type that is convertible to std::string_view. +template <> +struct TransparentSupport { + static std::string_view ImplicitConvert(std::string_view str) { return str; } + // If the element is not convertible to std::string_view, try to convert to + // std::string first. + // The template makes this overload lose resolution when both have the same + // rank otherwise. + template + static std::string_view ImplicitConvert(const std::string& str) { + return str; + } + + struct hash : private std::hash { + using is_transparent = void; + + template + size_t operator()(const T& str) const { + return base()(ImplicitConvert(str)); + } + + private: + const std::hash& base() const { return *this; } + }; + struct less { + using is_transparent = void; + + template + bool operator()(const T& t, const U& u) const { + return ImplicitConvert(t) < ImplicitConvert(u); + } + }; + + template + static bool Equals(const T& t, const U& u) { + return ImplicitConvert(t) == ImplicitConvert(u); + } + + template + using key_arg = K; +}; +#endif // defined(__cpp_lib_string_view) + +template +using TreeForMap = + std::map, void*, typename TransparentSupport::less, + MapAllocator, void*>>>; + +inline bool TableEntryIsEmpty(void* const* table, size_t b) { + return table[b] == nullptr; +} +inline bool TableEntryIsNonEmptyList(void* const* table, size_t b) { + return table[b] != nullptr && table[b] != table[b ^ 1]; +} +inline bool TableEntryIsTree(void* const* table, size_t b) { + return !TableEntryIsEmpty(table, b) && !TableEntryIsNonEmptyList(table, b); +} +inline bool TableEntryIsList(void* const* table, size_t b) { + return !TableEntryIsTree(table, b); +} + +// This captures all numeric types. +inline size_t MapValueSpaceUsedExcludingSelfLong(bool) { return 0; } +inline size_t MapValueSpaceUsedExcludingSelfLong(const std::string& str) { + return StringSpaceUsedExcludingSelfLong(str); +} +template ().SpaceUsedLong())> +size_t MapValueSpaceUsedExcludingSelfLong(const T& message) { + return message.SpaceUsedLong() - sizeof(T); +} + +constexpr size_t kGlobalEmptyTableSize = 1; +PROTOBUF_EXPORT extern void* const kGlobalEmptyTable[kGlobalEmptyTableSize]; + +// Space used for the table, trees, and nodes. +// Does not include the indirect space used. Eg the data of a std::string. +template +PROTOBUF_NOINLINE size_t SpaceUsedInTable(void** table, size_t num_buckets, + size_t num_elements, + size_t sizeof_node) { + size_t size = 0; + // The size of the table. + size += sizeof(void*) * num_buckets; + // All the nodes. + size += sizeof_node * num_elements; + // For each tree, count the overhead of the those nodes. + // Two buckets at a time because we only care about trees. + for (size_t b = 0; b < num_buckets; b += 2) { + if (internal::TableEntryIsTree(table, b)) { + using Tree = TreeForMap; + Tree* tree = static_cast(table[b]); + // Estimated cost of the red-black tree nodes, 3 pointers plus a + // bool (plus alignment, so 4 pointers). + size += tree->size() * + (sizeof(typename Tree::value_type) + sizeof(void*) * 4); + } + } + return size; +} + +template ::value || + !std::is_scalar::value>::type> +size_t SpaceUsedInValues(const Map* map) { + size_t size = 0; + for (const auto& v : *map) { + size += internal::MapValueSpaceUsedExcludingSelfLong(v.first) + + internal::MapValueSpaceUsedExcludingSelfLong(v.second); + } + return size; +} + +inline size_t SpaceUsedInValues(const void*) { return 0; } + +} // namespace internal + +// This is the class for Map's internal value_type. Instead of using +// std::pair as value_type, we use this class which provides us more control of +// its process of construction and destruction. +template +struct MapPair { + using first_type = const Key; + using second_type = T; + + MapPair(const Key& other_first, const T& other_second) + : first(other_first), second(other_second) {} + explicit MapPair(const Key& other_first) : first(other_first), second() {} + explicit MapPair(Key&& other_first) + : first(std::move(other_first)), second() {} + MapPair(const MapPair& other) : first(other.first), second(other.second) {} + + ~MapPair() {} + + // Implicitly convertible to std::pair of compatible types. + template + operator std::pair() const { // NOLINT(runtime/explicit) + return std::pair(first, second); + } + + const Key first; + T second; + + private: + friend class Arena; + friend class Map; +}; + +// Map is an associative container type used to store protobuf map +// fields. Each Map instance may or may not use a different hash function, a +// different iteration order, and so on. E.g., please don't examine +// implementation details to decide if the following would work: +// Map m0, m1; +// m0[0] = m1[0] = m0[1] = m1[1] = 0; +// assert(m0.begin()->first == m1.begin()->first); // Bug! +// +// Map's interface is similar to std::unordered_map, except that Map is not +// designed to play well with exceptions. +template +class Map { + public: + using key_type = Key; + using mapped_type = T; + using value_type = MapPair; + + using pointer = value_type*; + using const_pointer = const value_type*; + using reference = value_type&; + using const_reference = const value_type&; + + using size_type = size_t; + using hasher = typename internal::TransparentSupport::hash; + + constexpr Map() : elements_(nullptr) {} + explicit Map(Arena* arena) : elements_(arena) {} + + Map(const Map& other) : Map() { insert(other.begin(), other.end()); } + + Map(Map&& other) noexcept : Map() { + if (other.arena() != nullptr) { + *this = other; + } else { + swap(other); + } + } + + Map& operator=(Map&& other) noexcept { + if (this != &other) { + if (arena() != other.arena()) { + *this = other; + } else { + swap(other); + } + } + return *this; + } + + template + Map(const InputIt& first, const InputIt& last) : Map() { + insert(first, last); + } + + ~Map() {} + + private: + using Allocator = internal::MapAllocator; + + // InnerMap is a generic hash-based map. It doesn't contain any + // protocol-buffer-specific logic. It is a chaining hash map with the + // additional feature that some buckets can be converted to use an ordered + // container. This ensures O(lg n) bounds on find, insert, and erase, while + // avoiding the overheads of ordered containers most of the time. + // + // The implementation doesn't need the full generality of unordered_map, + // and it doesn't have it. More bells and whistles can be added as needed. + // Some implementation details: + // 1. The hash function has type hasher and the equality function + // equal_to. We inherit from hasher to save space + // (empty-base-class optimization). + // 2. The number of buckets is a power of two. + // 3. Buckets are converted to trees in pairs: if we convert bucket b then + // buckets b and b^1 will share a tree. Invariant: buckets b and b^1 have + // the same non-null value iff they are sharing a tree. (An alternative + // implementation strategy would be to have a tag bit per bucket.) + // 4. As is typical for hash_map and such, the Keys and Values are always + // stored in linked list nodes. Pointers to elements are never invalidated + // until the element is deleted. + // 5. The trees' payload type is pointer to linked-list node. Tree-converting + // a bucket doesn't copy Key-Value pairs. + // 6. Once we've tree-converted a bucket, it is never converted back. However, + // the items a tree contains may wind up assigned to trees or lists upon a + // rehash. + // 7. The code requires no C++ features from C++14 or later. + // 8. Mutations to a map do not invalidate the map's iterators, pointers to + // elements, or references to elements. + // 9. Except for erase(iterator), any non-const method can reorder iterators. + // 10. InnerMap uses KeyForTree when using the Tree representation, which + // is either `Key`, if Key is a scalar, or `reference_wrapper` + // otherwise. This avoids unnecessary copies of string keys, for example. + class InnerMap : private hasher { + public: + explicit constexpr InnerMap(Arena* arena) + : hasher(), + num_elements_(0), + num_buckets_(internal::kGlobalEmptyTableSize), + seed_(0), + index_of_first_non_null_(internal::kGlobalEmptyTableSize), + table_(const_cast(internal::kGlobalEmptyTable)), + alloc_(arena) {} + + ~InnerMap() { + if (alloc_.arena() == nullptr && + num_buckets_ != internal::kGlobalEmptyTableSize) { + clear(); + Dealloc(table_, num_buckets_); + } + } + + private: + enum { kMinTableSize = 8 }; + + // Linked-list nodes, as one would expect for a chaining hash table. + struct Node { + value_type kv; + Node* next; + }; + + // Trees. The payload type is a copy of Key, so that we can query the tree + // with Keys that are not in any particular data structure. + // The value is a void* pointing to Node. We use void* instead of Node* to + // avoid code bloat. That way there is only one instantiation of the tree + // class per key type. + using Tree = internal::TreeForMap; + using TreeIterator = typename Tree::iterator; + + static Node* NodeFromTreeIterator(TreeIterator it) { + return static_cast(it->second); + } + + // iterator and const_iterator are instantiations of iterator_base. + template + class iterator_base { + public: + using reference = KeyValueType&; + using pointer = KeyValueType*; + + // Invariants: + // node_ is always correct. This is handy because the most common + // operations are operator* and operator-> and they only use node_. + // When node_ is set to a non-null value, all the other non-const fields + // are updated to be correct also, but those fields can become stale + // if the underlying map is modified. When those fields are needed they + // are rechecked, and updated if necessary. + iterator_base() : node_(nullptr), m_(nullptr), bucket_index_(0) {} + + explicit iterator_base(const InnerMap* m) : m_(m) { + SearchFrom(m->index_of_first_non_null_); + } + + // Any iterator_base can convert to any other. This is overkill, and we + // rely on the enclosing class to use it wisely. The standard "iterator + // can convert to const_iterator" is OK but the reverse direction is not. + template + explicit iterator_base(const iterator_base& it) + : node_(it.node_), m_(it.m_), bucket_index_(it.bucket_index_) {} + + iterator_base(Node* n, const InnerMap* m, size_type index) + : node_(n), m_(m), bucket_index_(index) {} + + iterator_base(TreeIterator tree_it, const InnerMap* m, size_type index) + : node_(NodeFromTreeIterator(tree_it)), m_(m), bucket_index_(index) { + // Invariant: iterators that use buckets with trees have an even + // bucket_index_. + GOOGLE_DCHECK_EQ(bucket_index_ % 2, 0u); + } + + // Advance through buckets, looking for the first that isn't empty. + // If nothing non-empty is found then leave node_ == nullptr. + void SearchFrom(size_type start_bucket) { + GOOGLE_DCHECK(m_->index_of_first_non_null_ == m_->num_buckets_ || + m_->table_[m_->index_of_first_non_null_] != nullptr); + node_ = nullptr; + for (bucket_index_ = start_bucket; bucket_index_ < m_->num_buckets_; + bucket_index_++) { + if (m_->TableEntryIsNonEmptyList(bucket_index_)) { + node_ = static_cast(m_->table_[bucket_index_]); + break; + } else if (m_->TableEntryIsTree(bucket_index_)) { + Tree* tree = static_cast(m_->table_[bucket_index_]); + GOOGLE_DCHECK(!tree->empty()); + node_ = NodeFromTreeIterator(tree->begin()); + break; + } + } + } + + reference operator*() const { return node_->kv; } + pointer operator->() const { return &(operator*()); } + + friend bool operator==(const iterator_base& a, const iterator_base& b) { + return a.node_ == b.node_; + } + friend bool operator!=(const iterator_base& a, const iterator_base& b) { + return a.node_ != b.node_; + } + + iterator_base& operator++() { + if (node_->next == nullptr) { + TreeIterator tree_it; + const bool is_list = revalidate_if_necessary(&tree_it); + if (is_list) { + SearchFrom(bucket_index_ + 1); + } else { + GOOGLE_DCHECK_EQ(bucket_index_ & 1, 0u); + Tree* tree = static_cast(m_->table_[bucket_index_]); + if (++tree_it == tree->end()) { + SearchFrom(bucket_index_ + 2); + } else { + node_ = NodeFromTreeIterator(tree_it); + } + } + } else { + node_ = node_->next; + } + return *this; + } + + iterator_base operator++(int /* unused */) { + iterator_base tmp = *this; + ++*this; + return tmp; + } + + // Assumes node_ and m_ are correct and non-null, but other fields may be + // stale. Fix them as needed. Then return true iff node_ points to a + // Node in a list. If false is returned then *it is modified to be + // a valid iterator for node_. + bool revalidate_if_necessary(TreeIterator* it) { + GOOGLE_DCHECK(node_ != nullptr && m_ != nullptr); + // Force bucket_index_ to be in range. + bucket_index_ &= (m_->num_buckets_ - 1); + // Common case: the bucket we think is relevant points to node_. + if (m_->table_[bucket_index_] == static_cast(node_)) return true; + // Less common: the bucket is a linked list with node_ somewhere in it, + // but not at the head. + if (m_->TableEntryIsNonEmptyList(bucket_index_)) { + Node* l = static_cast(m_->table_[bucket_index_]); + while ((l = l->next) != nullptr) { + if (l == node_) { + return true; + } + } + } + // Well, bucket_index_ still might be correct, but probably + // not. Revalidate just to be sure. This case is rare enough that we + // don't worry about potential optimizations, such as having a custom + // find-like method that compares Node* instead of the key. + iterator_base i(m_->find(node_->kv.first, it)); + bucket_index_ = i.bucket_index_; + return m_->TableEntryIsList(bucket_index_); + } + + Node* node_; + const InnerMap* m_; + size_type bucket_index_; + }; + + public: + using iterator = iterator_base; + using const_iterator = iterator_base; + + Arena* arena() const { return alloc_.arena(); } + + void Swap(InnerMap* other) { + std::swap(num_elements_, other->num_elements_); + std::swap(num_buckets_, other->num_buckets_); + std::swap(seed_, other->seed_); + std::swap(index_of_first_non_null_, other->index_of_first_non_null_); + std::swap(table_, other->table_); + std::swap(alloc_, other->alloc_); + } + + iterator begin() { return iterator(this); } + iterator end() { return iterator(); } + const_iterator begin() const { return const_iterator(this); } + const_iterator end() const { return const_iterator(); } + + void clear() { + for (size_type b = 0; b < num_buckets_; b++) { + if (TableEntryIsNonEmptyList(b)) { + Node* node = static_cast(table_[b]); + table_[b] = nullptr; + do { + Node* next = node->next; + DestroyNode(node); + node = next; + } while (node != nullptr); + } else if (TableEntryIsTree(b)) { + Tree* tree = static_cast(table_[b]); + GOOGLE_DCHECK(table_[b] == table_[b + 1] && (b & 1) == 0); + table_[b] = table_[b + 1] = nullptr; + typename Tree::iterator tree_it = tree->begin(); + do { + Node* node = NodeFromTreeIterator(tree_it); + typename Tree::iterator next = tree_it; + ++next; + tree->erase(tree_it); + DestroyNode(node); + tree_it = next; + } while (tree_it != tree->end()); + DestroyTree(tree); + b++; + } + } + num_elements_ = 0; + index_of_first_non_null_ = num_buckets_; + } + + const hasher& hash_function() const { return *this; } + + static size_type max_size() { + return static_cast(1) << (sizeof(void**) >= 8 ? 60 : 28); + } + size_type size() const { return num_elements_; } + bool empty() const { return size() == 0; } + + template + iterator find(const K& k) { + return iterator(FindHelper(k).first); + } + + template + const_iterator find(const K& k) const { + return FindHelper(k).first; + } + + // Insert the key into the map, if not present. In that case, the value will + // be value initialized. + template + std::pair insert(K&& k) { + std::pair p = FindHelper(k); + // Case 1: key was already present. + if (p.first.node_ != nullptr) + return std::make_pair(iterator(p.first), false); + // Case 2: insert. + if (ResizeIfLoadIsOutOfRange(num_elements_ + 1)) { + p = FindHelper(k); + } + const size_type b = p.second; // bucket number + Node* node; + // If K is not key_type, make the conversion to key_type explicit. + using TypeToInit = typename std::conditional< + std::is_same::type, key_type>::value, K&&, + key_type>::type; + if (alloc_.arena() == nullptr) { + node = new Node{value_type(static_cast(std::forward(k))), + nullptr}; + } else { + node = Alloc(1); + Arena::CreateInArenaStorage( + const_cast(&node->kv.first), alloc_.arena(), + static_cast(std::forward(k))); + Arena::CreateInArenaStorage(&node->kv.second, alloc_.arena()); + } + + iterator result = InsertUnique(b, node); + ++num_elements_; + return std::make_pair(result, true); + } + + template + value_type& operator[](K&& k) { + return *insert(std::forward(k)).first; + } + + void erase(iterator it) { + GOOGLE_DCHECK_EQ(it.m_, this); + typename Tree::iterator tree_it; + const bool is_list = it.revalidate_if_necessary(&tree_it); + size_type b = it.bucket_index_; + Node* const item = it.node_; + if (is_list) { + GOOGLE_DCHECK(TableEntryIsNonEmptyList(b)); + Node* head = static_cast(table_[b]); + head = EraseFromLinkedList(item, head); + table_[b] = static_cast(head); + } else { + GOOGLE_DCHECK(TableEntryIsTree(b)); + Tree* tree = static_cast(table_[b]); + tree->erase(tree_it); + if (tree->empty()) { + // Force b to be the minimum of b and b ^ 1. This is important + // only because we want index_of_first_non_null_ to be correct. + b &= ~static_cast(1); + DestroyTree(tree); + table_[b] = table_[b + 1] = nullptr; + } + } + DestroyNode(item); + --num_elements_; + if (PROTOBUF_PREDICT_FALSE(b == index_of_first_non_null_)) { + while (index_of_first_non_null_ < num_buckets_ && + table_[index_of_first_non_null_] == nullptr) { + ++index_of_first_non_null_; + } + } + } + + size_t SpaceUsedInternal() const { + return internal::SpaceUsedInTable(table_, num_buckets_, + num_elements_, sizeof(Node)); + } + + private: + const_iterator find(const Key& k, TreeIterator* it) const { + return FindHelper(k, it).first; + } + template + std::pair FindHelper(const K& k) const { + return FindHelper(k, nullptr); + } + template + std::pair FindHelper(const K& k, + TreeIterator* it) const { + size_type b = BucketNumber(k); + if (TableEntryIsNonEmptyList(b)) { + Node* node = static_cast(table_[b]); + do { + if (internal::TransparentSupport::Equals(node->kv.first, k)) { + return std::make_pair(const_iterator(node, this, b), b); + } else { + node = node->next; + } + } while (node != nullptr); + } else if (TableEntryIsTree(b)) { + GOOGLE_DCHECK_EQ(table_[b], table_[b ^ 1]); + b &= ~static_cast(1); + Tree* tree = static_cast(table_[b]); + auto tree_it = tree->find(k); + if (tree_it != tree->end()) { + if (it != nullptr) *it = tree_it; + return std::make_pair(const_iterator(tree_it, this, b), b); + } + } + return std::make_pair(end(), b); + } + + // Insert the given Node in bucket b. If that would make bucket b too big, + // and bucket b is not a tree, create a tree for buckets b and b^1 to share. + // Requires count(*KeyPtrFromNodePtr(node)) == 0 and that b is the correct + // bucket. num_elements_ is not modified. + iterator InsertUnique(size_type b, Node* node) { + GOOGLE_DCHECK(index_of_first_non_null_ == num_buckets_ || + table_[index_of_first_non_null_] != nullptr); + // In practice, the code that led to this point may have already + // determined whether we are inserting into an empty list, a short list, + // or whatever. But it's probably cheap enough to recompute that here; + // it's likely that we're inserting into an empty or short list. + iterator result; + GOOGLE_DCHECK(find(node->kv.first) == end()); + if (TableEntryIsEmpty(b)) { + result = InsertUniqueInList(b, node); + } else if (TableEntryIsNonEmptyList(b)) { + if (PROTOBUF_PREDICT_FALSE(TableEntryIsTooLong(b))) { + TreeConvert(b); + result = InsertUniqueInTree(b, node); + GOOGLE_DCHECK_EQ(result.bucket_index_, b & ~static_cast(1)); + } else { + // Insert into a pre-existing list. This case cannot modify + // index_of_first_non_null_, so we skip the code to update it. + return InsertUniqueInList(b, node); + } + } else { + // Insert into a pre-existing tree. This case cannot modify + // index_of_first_non_null_, so we skip the code to update it. + return InsertUniqueInTree(b, node); + } + // parentheses around (std::min) prevents macro expansion of min(...) + index_of_first_non_null_ = + (std::min)(index_of_first_non_null_, result.bucket_index_); + return result; + } + + // Returns whether we should insert after the head of the list. For + // non-optimized builds, we randomly decide whether to insert right at the + // head of the list or just after the head. This helps add a little bit of + // non-determinism to the map ordering. + bool ShouldInsertAfterHead(void* node) { +#ifdef NDEBUG + (void)node; + return false; +#else + // Doing modulo with a prime mixes the bits more. + return (reinterpret_cast(node) ^ seed_) % 13 > 6; +#endif + } + + // Helper for InsertUnique. Handles the case where bucket b is a + // not-too-long linked list. + iterator InsertUniqueInList(size_type b, Node* node) { + if (table_[b] != nullptr && ShouldInsertAfterHead(node)) { + Node* first = static_cast(table_[b]); + node->next = first->next; + first->next = node; + return iterator(node, this, b); + } + + node->next = static_cast(table_[b]); + table_[b] = static_cast(node); + return iterator(node, this, b); + } + + // Helper for InsertUnique. Handles the case where bucket b points to a + // Tree. + iterator InsertUniqueInTree(size_type b, Node* node) { + GOOGLE_DCHECK_EQ(table_[b], table_[b ^ 1]); + // Maintain the invariant that node->next is null for all Nodes in Trees. + node->next = nullptr; + return iterator( + static_cast(table_[b])->insert({node->kv.first, node}).first, + this, b & ~static_cast(1)); + } + + // Returns whether it did resize. Currently this is only used when + // num_elements_ increases, though it could be used in other situations. + // It checks for load too low as well as load too high: because any number + // of erases can occur between inserts, the load could be as low as 0 here. + // Resizing to a lower size is not always helpful, but failing to do so can + // destroy the expected big-O bounds for some operations. By having the + // policy that sometimes we resize down as well as up, clients can easily + // keep O(size()) = O(number of buckets) if they want that. + bool ResizeIfLoadIsOutOfRange(size_type new_size) { + const size_type kMaxMapLoadTimes16 = 12; // controls RAM vs CPU tradeoff + const size_type hi_cutoff = num_buckets_ * kMaxMapLoadTimes16 / 16; + const size_type lo_cutoff = hi_cutoff / 4; + // We don't care how many elements are in trees. If a lot are, + // we may resize even though there are many empty buckets. In + // practice, this seems fine. + if (PROTOBUF_PREDICT_FALSE(new_size >= hi_cutoff)) { + if (num_buckets_ <= max_size() / 2) { + Resize(num_buckets_ * 2); + return true; + } + } else if (PROTOBUF_PREDICT_FALSE(new_size <= lo_cutoff && + num_buckets_ > kMinTableSize)) { + size_type lg2_of_size_reduction_factor = 1; + // It's possible we want to shrink a lot here... size() could even be 0. + // So, estimate how much to shrink by making sure we don't shrink so + // much that we would need to grow the table after a few inserts. + const size_type hypothetical_size = new_size * 5 / 4 + 1; + while ((hypothetical_size << lg2_of_size_reduction_factor) < + hi_cutoff) { + ++lg2_of_size_reduction_factor; + } + size_type new_num_buckets = std::max( + kMinTableSize, num_buckets_ >> lg2_of_size_reduction_factor); + if (new_num_buckets != num_buckets_) { + Resize(new_num_buckets); + return true; + } + } + return false; + } + + // Resize to the given number of buckets. + void Resize(size_t new_num_buckets) { + if (num_buckets_ == internal::kGlobalEmptyTableSize) { + // This is the global empty array. + // Just overwrite with a new one. No need to transfer or free anything. + num_buckets_ = index_of_first_non_null_ = kMinTableSize; + table_ = CreateEmptyTable(num_buckets_); + seed_ = Seed(); + return; + } + + GOOGLE_DCHECK_GE(new_num_buckets, kMinTableSize); + void** const old_table = table_; + const size_type old_table_size = num_buckets_; + num_buckets_ = new_num_buckets; + table_ = CreateEmptyTable(num_buckets_); + const size_type start = index_of_first_non_null_; + index_of_first_non_null_ = num_buckets_; + for (size_type i = start; i < old_table_size; i++) { + if (internal::TableEntryIsNonEmptyList(old_table, i)) { + TransferList(old_table, i); + } else if (internal::TableEntryIsTree(old_table, i)) { + TransferTree(old_table, i++); + } + } + Dealloc(old_table, old_table_size); + } + + void TransferList(void* const* table, size_type index) { + Node* node = static_cast(table[index]); + do { + Node* next = node->next; + InsertUnique(BucketNumber(node->kv.first), node); + node = next; + } while (node != nullptr); + } + + void TransferTree(void* const* table, size_type index) { + Tree* tree = static_cast(table[index]); + typename Tree::iterator tree_it = tree->begin(); + do { + InsertUnique(BucketNumber(std::cref(tree_it->first).get()), + NodeFromTreeIterator(tree_it)); + } while (++tree_it != tree->end()); + DestroyTree(tree); + } + + Node* EraseFromLinkedList(Node* item, Node* head) { + if (head == item) { + return head->next; + } else { + head->next = EraseFromLinkedList(item, head->next); + return head; + } + } + + bool TableEntryIsEmpty(size_type b) const { + return internal::TableEntryIsEmpty(table_, b); + } + bool TableEntryIsNonEmptyList(size_type b) const { + return internal::TableEntryIsNonEmptyList(table_, b); + } + bool TableEntryIsTree(size_type b) const { + return internal::TableEntryIsTree(table_, b); + } + bool TableEntryIsList(size_type b) const { + return internal::TableEntryIsList(table_, b); + } + + void TreeConvert(size_type b) { + GOOGLE_DCHECK(!TableEntryIsTree(b) && !TableEntryIsTree(b ^ 1)); + Tree* tree = + Arena::Create(alloc_.arena(), typename Tree::key_compare(), + typename Tree::allocator_type(alloc_)); + size_type count = CopyListToTree(b, tree) + CopyListToTree(b ^ 1, tree); + GOOGLE_DCHECK_EQ(count, tree->size()); + table_[b] = table_[b ^ 1] = static_cast(tree); + } + + // Copy a linked list in the given bucket to a tree. + // Returns the number of things it copied. + size_type CopyListToTree(size_type b, Tree* tree) { + size_type count = 0; + Node* node = static_cast(table_[b]); + while (node != nullptr) { + tree->insert({node->kv.first, node}); + ++count; + Node* next = node->next; + node->next = nullptr; + node = next; + } + return count; + } + + // Return whether table_[b] is a linked list that seems awfully long. + // Requires table_[b] to point to a non-empty linked list. + bool TableEntryIsTooLong(size_type b) { + const size_type kMaxLength = 8; + size_type count = 0; + Node* node = static_cast(table_[b]); + do { + ++count; + node = node->next; + } while (node != nullptr); + // Invariant: no linked list ever is more than kMaxLength in length. + GOOGLE_DCHECK_LE(count, kMaxLength); + return count >= kMaxLength; + } + + template + size_type BucketNumber(const K& k) const { + // We xor the hash value against the random seed so that we effectively + // have a random hash function. + uint64 h = hash_function()(k) ^ seed_; + + // We use the multiplication method to determine the bucket number from + // the hash value. The constant kPhi (suggested by Knuth) is roughly + // (sqrt(5) - 1) / 2 * 2^64. + constexpr uint64 kPhi = uint64{0x9e3779b97f4a7c15}; + return ((kPhi * h) >> 32) & (num_buckets_ - 1); + } + + // Return a power of two no less than max(kMinTableSize, n). + // Assumes either n < kMinTableSize or n is a power of two. + size_type TableSize(size_type n) { + return n < static_cast(kMinTableSize) + ? static_cast(kMinTableSize) + : n; + } + + // Use alloc_ to allocate an array of n objects of type U. + template + U* Alloc(size_type n) { + using alloc_type = typename Allocator::template rebind::other; + return alloc_type(alloc_).allocate(n); + } + + // Use alloc_ to deallocate an array of n objects of type U. + template + void Dealloc(U* t, size_type n) { + using alloc_type = typename Allocator::template rebind::other; + alloc_type(alloc_).deallocate(t, n); + } + + void DestroyNode(Node* node) { + if (alloc_.arena() == nullptr) { + delete node; + } + } + + void DestroyTree(Tree* tree) { + if (alloc_.arena() == nullptr) { + delete tree; + } + } + + void** CreateEmptyTable(size_type n) { + GOOGLE_DCHECK(n >= kMinTableSize); + GOOGLE_DCHECK_EQ(n & (n - 1), 0); + void** result = Alloc(n); + memset(result, 0, n * sizeof(result[0])); + return result; + } + + // Return a randomish value. + size_type Seed() const { + // We get a little bit of randomness from the address of the map. The + // lower bits are not very random, due to alignment, so we discard them + // and shift the higher bits into their place. + size_type s = reinterpret_cast(this) >> 12; +#if defined(__x86_64__) && defined(__GNUC__) && \ + !defined(GOOGLE_PROTOBUF_NO_RDTSC) + uint32 hi, lo; + asm volatile("rdtsc" : "=a"(lo), "=d"(hi)); + s += ((static_cast(hi) << 32) | lo); +#endif + return s; + } + + friend class Arena; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + + size_type num_elements_; + size_type num_buckets_; + size_type seed_; + size_type index_of_first_non_null_; + void** table_; // an array with num_buckets_ entries + Allocator alloc_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(InnerMap); + }; // end of class InnerMap + + template + using key_arg = typename internal::TransparentSupport< + key_type>::template key_arg; + + public: + // Iterators + class const_iterator { + using InnerIt = typename InnerMap::const_iterator; + + public: + using iterator_category = std::forward_iterator_tag; + using value_type = typename Map::value_type; + using difference_type = ptrdiff_t; + using pointer = const value_type*; + using reference = const value_type&; + + const_iterator() {} + explicit const_iterator(const InnerIt& it) : it_(it) {} + + const_reference operator*() const { return *it_; } + const_pointer operator->() const { return &(operator*()); } + + const_iterator& operator++() { + ++it_; + return *this; + } + const_iterator operator++(int) { return const_iterator(it_++); } + + friend bool operator==(const const_iterator& a, const const_iterator& b) { + return a.it_ == b.it_; + } + friend bool operator!=(const const_iterator& a, const const_iterator& b) { + return !(a == b); + } + + private: + InnerIt it_; + }; + + class iterator { + using InnerIt = typename InnerMap::iterator; + + public: + using iterator_category = std::forward_iterator_tag; + using value_type = typename Map::value_type; + using difference_type = ptrdiff_t; + using pointer = value_type*; + using reference = value_type&; + + iterator() {} + explicit iterator(const InnerIt& it) : it_(it) {} + + reference operator*() const { return *it_; } + pointer operator->() const { return &(operator*()); } + + iterator& operator++() { + ++it_; + return *this; + } + iterator operator++(int) { return iterator(it_++); } + + // Allow implicit conversion to const_iterator. + operator const_iterator() const { // NOLINT(runtime/explicit) + return const_iterator(typename InnerMap::const_iterator(it_)); + } + + friend bool operator==(const iterator& a, const iterator& b) { + return a.it_ == b.it_; + } + friend bool operator!=(const iterator& a, const iterator& b) { + return !(a == b); + } + + private: + friend class Map; + + InnerIt it_; + }; + + iterator begin() { return iterator(elements_.begin()); } + iterator end() { return iterator(elements_.end()); } + const_iterator begin() const { return const_iterator(elements_.begin()); } + const_iterator end() const { return const_iterator(elements_.end()); } + const_iterator cbegin() const { return begin(); } + const_iterator cend() const { return end(); } + + // Capacity + size_type size() const { return elements_.size(); } + bool empty() const { return size() == 0; } + + // Element access + template + T& operator[](const key_arg& key) { + return elements_[key].second; + } + template < + typename K = key_type, + // Disable for integral types to reduce code bloat. + typename = typename std::enable_if::value>::type> + T& operator[](key_arg&& key) { + return elements_[std::forward(key)].second; + } + + template + const T& at(const key_arg& key) const { + const_iterator it = find(key); + GOOGLE_CHECK(it != end()) << "key not found: " << static_cast(key); + return it->second; + } + + template + T& at(const key_arg& key) { + iterator it = find(key); + GOOGLE_CHECK(it != end()) << "key not found: " << static_cast(key); + return it->second; + } + + // Lookup + template + size_type count(const key_arg& key) const { + return find(key) == end() ? 0 : 1; + } + + template + const_iterator find(const key_arg& key) const { + return const_iterator(elements_.find(key)); + } + template + iterator find(const key_arg& key) { + return iterator(elements_.find(key)); + } + + template + bool contains(const key_arg& key) const { + return find(key) != end(); + } + + template + std::pair equal_range( + const key_arg& key) const { + const_iterator it = find(key); + if (it == end()) { + return std::pair(it, it); + } else { + const_iterator begin = it++; + return std::pair(begin, it); + } + } + + template + std::pair equal_range(const key_arg& key) { + iterator it = find(key); + if (it == end()) { + return std::pair(it, it); + } else { + iterator begin = it++; + return std::pair(begin, it); + } + } + + // insert + std::pair insert(const value_type& value) { + std::pair p = + elements_.insert(value.first); + if (p.second) { + p.first->second = value.second; + } + return std::pair(iterator(p.first), p.second); + } + template + void insert(InputIt first, InputIt last) { + for (InputIt it = first; it != last; ++it) { + iterator exist_it = find(it->first); + if (exist_it == end()) { + operator[](it->first) = it->second; + } + } + } + void insert(std::initializer_list values) { + insert(values.begin(), values.end()); + } + + // Erase and clear + template + size_type erase(const key_arg& key) { + iterator it = find(key); + if (it == end()) { + return 0; + } else { + erase(it); + return 1; + } + } + iterator erase(iterator pos) { + iterator i = pos++; + elements_.erase(i.it_); + return pos; + } + void erase(iterator first, iterator last) { + while (first != last) { + first = erase(first); + } + } + void clear() { elements_.clear(); } + + // Assign + Map& operator=(const Map& other) { + if (this != &other) { + clear(); + insert(other.begin(), other.end()); + } + return *this; + } + + void swap(Map& other) { + if (arena() == other.arena()) { + InternalSwap(other); + } else { + // TODO(zuguang): optimize this. The temporary copy can be allocated + // in the same arena as the other message, and the "other = copy" can + // be replaced with the fast-path swap above. + Map copy = *this; + *this = other; + other = copy; + } + } + + void InternalSwap(Map& other) { elements_.Swap(&other.elements_); } + + // Access to hasher. Currently this returns a copy, but it may + // be modified to return a const reference in the future. + hasher hash_function() const { return elements_.hash_function(); } + + size_t SpaceUsedExcludingSelfLong() const { + if (empty()) return 0; + return elements_.SpaceUsedInternal() + internal::SpaceUsedInValues(this); + } + + private: + Arena* arena() const { return elements_.arena(); } + InnerMap elements_; + + friend class Arena; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + template + friend class internal::MapFieldLite; +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_MAP_H__ diff --git a/external/include/google/protobuf/map_entry.h b/external/include/google/protobuf/map_entry.h new file mode 100644 index 0000000..87bc000 --- /dev/null +++ b/external/include/google/protobuf/map_entry.h @@ -0,0 +1,160 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_MAP_ENTRY_H__ +#define GOOGLE_PROTOBUF_MAP_ENTRY_H__ + +#include +#include +#include +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +class Arena; +namespace internal { +template +class MapField; +} +} // namespace protobuf +} // namespace google + +namespace google { +namespace protobuf { +namespace internal { + +// MapEntry is the returned google::protobuf::Message when calling AddMessage of +// google::protobuf::Reflection. In order to let it work with generated message +// reflection, its in-memory type is the same as generated message with the same +// fields. However, in order to decide the in-memory type of key/value, we need +// to know both their cpp type in generated api and proto type. In +// implementation, all in-memory types have related wire format functions to +// support except ArenaStringPtr. Therefore, we need to define another type with +// supporting wire format functions. Since this type is only used as return type +// of MapEntry accessors, it's named MapEntry accessor type. +// +// cpp type: the type visible to users in public API. +// proto type: WireFormatLite::FieldType of the field. +// in-memory type: type of the data member used to stored this field. +// MapEntry accessor type: type used in MapEntry getters/mutators to access the +// field. +// +// cpp type | proto type | in-memory type | MapEntry accessor type +// int32 TYPE_INT32 int32 int32 +// int32 TYPE_FIXED32 int32 int32 +// string TYPE_STRING ArenaStringPtr string +// FooEnum TYPE_ENUM int int +// FooMessage TYPE_MESSAGE FooMessage* FooMessage +// +// The in-memory types of primitive types can be inferred from its proto type, +// while we need to explicitly specify the cpp type if proto type is +// TYPE_MESSAGE to infer the in-memory type. +template +class MapEntry : public MapEntryImpl { + public: + constexpr MapEntry() : _internal_metadata_() {} + explicit MapEntry(Arena* arena) + : MapEntryImpl(arena), + _internal_metadata_(arena) {} + ~MapEntry() { + Message::_internal_metadata_.template Delete(); + _internal_metadata_.Delete(); + } + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + + typedef typename MapEntryImpl::KeyTypeHandler KeyTypeHandler; + typedef + typename MapEntryImpl::ValueTypeHandler ValueTypeHandler; + size_t SpaceUsedLong() const override { + size_t size = sizeof(Derived); + size += KeyTypeHandler::SpaceUsedInMapEntryLong(this->key_); + size += ValueTypeHandler::SpaceUsedInMapEntryLong(this->value_); + return size; + } + + InternalMetadata _internal_metadata_; + + private: + friend class ::PROTOBUF_NAMESPACE_ID::Arena; + template + friend class internal::MapField; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MapEntry); +}; + +// Specialization for the full runtime +template +struct MapEntryHelper< + MapEntry > + : MapEntryHelper< + MapEntryLite > { + explicit MapEntryHelper(const MapPair& map_pair) + : MapEntryHelper< + MapEntryLite >( + map_pair) {} +}; + +template +struct DeconstructMapEntry > { + typedef K Key; + typedef V Value; + static constexpr WireFormatLite::FieldType kKeyFieldType = key; + static constexpr WireFormatLite::FieldType kValueFieldType = value; +}; + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_MAP_ENTRY_H__ diff --git a/external/include/google/protobuf/map_entry_lite.h b/external/include/google/protobuf/map_entry_lite.h new file mode 100644 index 0000000..609d025 --- /dev/null +++ b/external/include/google/protobuf/map_entry_lite.h @@ -0,0 +1,656 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_MAP_ENTRY_LITE_H__ +#define GOOGLE_PROTOBUF_MAP_ENTRY_LITE_H__ + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +namespace internal { +template +class MapEntry; +template +class MapFieldLite; +} // namespace internal +} // namespace protobuf +} // namespace google + +namespace google { +namespace protobuf { +namespace internal { + +// MoveHelper::Move is used to set *dest. It copies *src, or moves it (in +// the C++11 sense), or swaps it. *src is left in a sane state for +// subsequent destruction, but shouldn't be used for anything. +template +struct MoveHelper { // primitives + static void Move(T* src, T* dest) { *dest = *src; } +}; + +template +struct MoveHelper { // enums + static void Move(T* src, T* dest) { *dest = *src; } + // T is an enum here, so allow conversions to and from int. + static void Move(T* src, int* dest) { *dest = static_cast(*src); } + static void Move(int* src, T* dest) { *dest = static_cast(*src); } +}; + +template +struct MoveHelper { // messages + static void Move(T* src, T* dest) { dest->Swap(src); } +}; + +template +struct MoveHelper { // strings and similar + static void Move(T* src, T* dest) { + *dest = std::move(*src); + } +}; + +// Functions for operating on a map entry. Does not contain any representation +// (this class is not intended to be instantiated). +template +struct MapEntryFuncs { + typedef MapTypeHandler KeyTypeHandler; + typedef MapTypeHandler ValueTypeHandler; + static const int kKeyFieldNumber = 1; + static const int kValueFieldNumber = 2; + + static uint8* InternalSerialize(int field_number, const Key& key, + const Value& value, uint8* ptr, + io::EpsCopyOutputStream* stream) { + ptr = stream->EnsureSpace(ptr); + ptr = WireFormatLite::WriteTagToArray( + field_number, WireFormatLite::WIRETYPE_LENGTH_DELIMITED, ptr); + ptr = io::CodedOutputStream::WriteVarint32ToArray(GetCachedSize(key, value), + ptr); + + ptr = KeyTypeHandler::Write(kKeyFieldNumber, key, ptr, stream); + return ValueTypeHandler::Write(kValueFieldNumber, value, ptr, stream); + } + + static size_t ByteSizeLong(const Key& key, const Value& value) { + // Tags for key and value will both be one byte (field numbers 1 and 2). + size_t inner_length = + 2 + KeyTypeHandler::ByteSize(key) + ValueTypeHandler::ByteSize(value); + return inner_length + io::CodedOutputStream::VarintSize32( + static_cast(inner_length)); + } + + static int GetCachedSize(const Key& key, const Value& value) { + // Tags for key and value will both be one byte (field numbers 1 and 2). + return 2 + KeyTypeHandler::GetCachedSize(key) + + ValueTypeHandler::GetCachedSize(value); + } +}; + +// MapEntryImpl is used to implement parsing and serialization of map entries. +// It uses Curious Recursive Template Pattern (CRTP) to provide the type of +// the eventual code to the template code. +template +class MapEntryImpl : public Base { + public: + typedef MapEntryFuncs Funcs; + + protected: + // Provide utilities to parse/serialize key/value. Provide utilities to + // manipulate internal stored type. + typedef MapTypeHandler KeyTypeHandler; + typedef MapTypeHandler ValueTypeHandler; + + // Define internal memory layout. Strings and messages are stored as + // pointers, while other types are stored as values. + typedef typename KeyTypeHandler::TypeOnMemory KeyOnMemory; + typedef typename ValueTypeHandler::TypeOnMemory ValueOnMemory; + + // Enum type cannot be used for MapTypeHandler::Read. Define a type + // which will replace Enum with int. + typedef typename KeyTypeHandler::MapEntryAccessorType KeyMapEntryAccessorType; + typedef + typename ValueTypeHandler::MapEntryAccessorType ValueMapEntryAccessorType; + + // Constants for field number. + static const int kKeyFieldNumber = 1; + static const int kValueFieldNumber = 2; + + // Constants for field tag. + static const uint8 kKeyTag = + GOOGLE_PROTOBUF_WIRE_FORMAT_MAKE_TAG(kKeyFieldNumber, KeyTypeHandler::kWireType); + static const uint8 kValueTag = GOOGLE_PROTOBUF_WIRE_FORMAT_MAKE_TAG( + kValueFieldNumber, ValueTypeHandler::kWireType); + static const size_t kTagSize = 1; + + public: + // Work-around for a compiler bug (see repeated_field.h). + typedef void MapEntryHasMergeTypeTrait; + typedef Derived EntryType; + typedef Key EntryKeyType; + typedef Value EntryValueType; + static const WireFormatLite::FieldType kEntryKeyFieldType = kKeyFieldType; + static const WireFormatLite::FieldType kEntryValueFieldType = kValueFieldType; + + constexpr MapEntryImpl() + : key_(KeyTypeHandler::Constinit()), + value_(ValueTypeHandler::Constinit()), + _has_bits_{} {} + + explicit MapEntryImpl(Arena* arena) + : Base(arena), + key_(KeyTypeHandler::Constinit()), + value_(ValueTypeHandler::Constinit()), + _has_bits_{} {} + + ~MapEntryImpl() { + if (Base::GetArenaForAllocation() != NULL) return; + KeyTypeHandler::DeleteNoArena(key_); + ValueTypeHandler::DeleteNoArena(value_); + } + + // accessors ====================================================== + + virtual inline const KeyMapEntryAccessorType& key() const { + return KeyTypeHandler::GetExternalReference(key_); + } + virtual inline const ValueMapEntryAccessorType& value() const { + return ValueTypeHandler::DefaultIfNotInitialized(value_); + } + inline KeyMapEntryAccessorType* mutable_key() { + set_has_key(); + return KeyTypeHandler::EnsureMutable(&key_, Base::GetArenaForAllocation()); + } + inline ValueMapEntryAccessorType* mutable_value() { + set_has_value(); + return ValueTypeHandler::EnsureMutable(&value_, + Base::GetArenaForAllocation()); + } + + // implements MessageLite ========================================= + + // MapEntryImpl is for implementation only and this function isn't called + // anywhere. Just provide a fake implementation here for MessageLite. + std::string GetTypeName() const override { return ""; } + + void CheckTypeAndMergeFrom(const MessageLite& other) override { + MergeFromInternal(*::google::protobuf::internal::DownCast(&other)); + } + + const char* _InternalParse(const char* ptr, ParseContext* ctx) final { + while (!ctx->Done(&ptr)) { + uint32 tag; + ptr = ReadTag(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + if (tag == kKeyTag) { + set_has_key(); + KeyMapEntryAccessorType* key = mutable_key(); + ptr = KeyTypeHandler::Read(ptr, ctx, key); + if (!Derived::ValidateKey(key)) return nullptr; + } else if (tag == kValueTag) { + set_has_value(); + ValueMapEntryAccessorType* value = mutable_value(); + ptr = ValueTypeHandler::Read(ptr, ctx, value); + if (!Derived::ValidateValue(value)) return nullptr; + } else { + if (tag == 0 || WireFormatLite::GetTagWireType(tag) == + WireFormatLite::WIRETYPE_END_GROUP) { + ctx->SetLastTag(tag); + return ptr; + } + ptr = UnknownFieldParse(tag, static_cast(nullptr), ptr, + ctx); + } + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + } + return ptr; + } + + size_t ByteSizeLong() const override { + size_t size = 0; + size += kTagSize + static_cast(KeyTypeHandler::ByteSize(key())); + size += kTagSize + static_cast(ValueTypeHandler::ByteSize(value())); + return size; + } + + ::google::protobuf::uint8* _InternalSerialize(::google::protobuf::uint8* ptr, + io::EpsCopyOutputStream* stream) const override { + ptr = KeyTypeHandler::Write(kKeyFieldNumber, key(), ptr, stream); + return ValueTypeHandler::Write(kValueFieldNumber, value(), ptr, stream); + } + + // Don't override SerializeWithCachedSizesToArray. Use MessageLite's. + + int GetCachedSize() const override { + int size = 0; + size += has_key() ? static_cast(kTagSize) + + KeyTypeHandler::GetCachedSize(key()) + : 0; + size += has_value() ? static_cast(kTagSize) + + ValueTypeHandler::GetCachedSize(value()) + : 0; + return size; + } + + bool IsInitialized() const override { + return ValueTypeHandler::IsInitialized(value_); + } + + Base* New() const override { + Derived* entry = new Derived; + return entry; + } + + Base* New(Arena* arena) const override { + Derived* entry = Arena::CreateMessage(arena); + return entry; + } + + protected: + // We can't declare this function directly here as it would hide the other + // overload (const Message&). + void MergeFromInternal(const MapEntryImpl& from) { + if (from._has_bits_[0]) { + if (from.has_key()) { + KeyTypeHandler::EnsureMutable(&key_, Base::GetArenaForAllocation()); + KeyTypeHandler::Merge(from.key(), &key_, Base::GetArenaForAllocation()); + set_has_key(); + } + if (from.has_value()) { + ValueTypeHandler::EnsureMutable(&value_, Base::GetArenaForAllocation()); + ValueTypeHandler::Merge(from.value(), &value_, + Base::GetArenaForAllocation()); + set_has_value(); + } + } + } + + public: + void Clear() override { + KeyTypeHandler::Clear(&key_, Base::GetArenaForAllocation()); + ValueTypeHandler::Clear(&value_, Base::GetArenaForAllocation()); + clear_has_key(); + clear_has_value(); + } + + // Parsing using MergePartialFromCodedStream, above, is not as + // efficient as it could be. This helper class provides a speedier way. + template + class Parser { + public: + explicit Parser(MapField* mf) : mf_(mf), map_(mf->MutableMap()) {} + ~Parser() { + if (entry_ != nullptr && entry_->GetArenaForAllocation() == nullptr) + delete entry_; + } + + // This does what the typical MergePartialFromCodedStream() is expected to + // do, with the additional side-effect that if successful (i.e., if true is + // going to be its return value) it inserts the key-value pair into map_. + bool MergePartialFromCodedStream(io::CodedInputStream* input) { + // Look for the expected thing: a key and then a value. If it fails, + // invoke the enclosing class's MergePartialFromCodedStream, or return + // false if that would be pointless. + if (input->ExpectTag(kKeyTag)) { + if (!KeyTypeHandler::Read(input, &key_)) { + return false; + } + // Peek at the next byte to see if it is kValueTag. If not, bail out. + const void* data; + int size; + input->GetDirectBufferPointerInline(&data, &size); + // We could use memcmp here, but we don't bother. The tag is one byte. + static_assert(kTagSize == 1, "tag size must be 1"); + if (size > 0 && *reinterpret_cast(data) == kValueTag) { + typename Map::size_type map_size = map_->size(); + value_ptr_ = &(*map_)[key_]; + if (PROTOBUF_PREDICT_TRUE(map_size != map_->size())) { + // We created a new key-value pair. Fill in the value. + typedef + typename MapIf::type T; + input->Skip(kTagSize); // Skip kValueTag. + if (!ValueTypeHandler::Read(input, + reinterpret_cast(value_ptr_))) { + map_->erase(key_); // Failure! Undo insertion. + return false; + } + if (input->ExpectAtEnd()) return true; + return ReadBeyondKeyValuePair(input); + } + } + } else { + key_ = Key(); + } + + NewEntry(); + *entry_->mutable_key() = key_; + const bool result = entry_->MergePartialFromCodedStream(input); + if (result) UseKeyAndValueFromEntry(); + return result; + } + + const char* _InternalParse(const char* ptr, ParseContext* ctx) { + if (PROTOBUF_PREDICT_TRUE(!ctx->Done(&ptr) && *ptr == kKeyTag)) { + ptr = KeyTypeHandler::Read(ptr + 1, ctx, &key_); + if (PROTOBUF_PREDICT_FALSE(!ptr || !Derived::ValidateKey(&key_))) { + return nullptr; + } + if (PROTOBUF_PREDICT_TRUE(!ctx->Done(&ptr) && *ptr == kValueTag)) { + typename Map::size_type map_size = map_->size(); + value_ptr_ = &(*map_)[key_]; + if (PROTOBUF_PREDICT_TRUE(map_size != map_->size())) { + using T = + typename MapIf::type; + ptr = ValueTypeHandler::Read(ptr + 1, ctx, + reinterpret_cast(value_ptr_)); + if (PROTOBUF_PREDICT_FALSE(!ptr || + !Derived::ValidateValue(value_ptr_))) { + map_->erase(key_); // Failure! Undo insertion. + return nullptr; + } + if (PROTOBUF_PREDICT_TRUE(ctx->Done(&ptr))) return ptr; + if (!ptr) return nullptr; + NewEntry(); + ValueMover::Move(value_ptr_, entry_->mutable_value()); + map_->erase(key_); + goto move_key; + } + } else { + if (!ptr) return nullptr; + } + NewEntry(); + move_key: + KeyMover::Move(&key_, entry_->mutable_key()); + } else { + if (!ptr) return nullptr; + NewEntry(); + } + ptr = entry_->_InternalParse(ptr, ctx); + if (ptr) UseKeyAndValueFromEntry(); + return ptr; + } + + template + const char* ParseWithEnumValidation(const char* ptr, ParseContext* ctx, + bool (*is_valid)(int), uint32 field_num, + InternalMetadata* metadata) { + auto entry = NewEntry(); + ptr = entry->_InternalParse(ptr, ctx); + if (!ptr) return nullptr; + if (is_valid(entry->value())) { + UseKeyAndValueFromEntry(); + } else { + WriteLengthDelimited(field_num, entry->SerializeAsString(), + metadata->mutable_unknown_fields()); + } + return ptr; + } + + MapEntryImpl* NewEntry() { return entry_ = mf_->NewEntry(); } + + const Key& key() const { return key_; } + const Value& value() const { return *value_ptr_; } + + const Key& entry_key() const { return entry_->key(); } + const Value& entry_value() const { return entry_->value(); } + + private: + void UseKeyAndValueFromEntry() { + // Update key_ in case we need it later (because key() is called). + // This is potentially inefficient, especially if the key is + // expensive to copy (e.g., a long string), but this is a cold + // path, so it's not a big deal. + key_ = entry_->key(); + value_ptr_ = &(*map_)[key_]; + ValueMover::Move(entry_->mutable_value(), value_ptr_); + } + + // After reading a key and value successfully, and inserting that data + // into map_, we are not at the end of the input. This is unusual, but + // allowed by the spec. + bool ReadBeyondKeyValuePair(io::CodedInputStream* input) PROTOBUF_COLD { + NewEntry(); + ValueMover::Move(value_ptr_, entry_->mutable_value()); + map_->erase(key_); + KeyMover::Move(&key_, entry_->mutable_key()); + const bool result = entry_->MergePartialFromCodedStream(input); + if (result) UseKeyAndValueFromEntry(); + return result; + } + + typedef MoveHelper + KeyMover; + typedef MoveHelper + ValueMover; + + MapField* const mf_; + Map* const map_; + Key key_; + Value* value_ptr_; + MapEntryImpl* entry_ = nullptr; + }; + + protected: + void set_has_key() { _has_bits_[0] |= 0x00000001u; } + bool has_key() const { return (_has_bits_[0] & 0x00000001u) != 0; } + void clear_has_key() { _has_bits_[0] &= ~0x00000001u; } + void set_has_value() { _has_bits_[0] |= 0x00000002u; } + bool has_value() const { return (_has_bits_[0] & 0x00000002u) != 0; } + void clear_has_value() { _has_bits_[0] &= ~0x00000002u; } + + public: + inline Arena* GetArena() const { return Base::GetArena(); } + + public: // Needed for constructing tables + KeyOnMemory key_; + ValueOnMemory value_; + uint32 _has_bits_[1]; + + private: + friend class ::PROTOBUF_NAMESPACE_ID::Arena; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + template + friend class internal::MapEntry; + template + friend class internal::MapFieldLite; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MapEntryImpl); +}; + +template +class MapEntryLite : public MapEntryImpl { + public: + typedef MapEntryImpl + SuperType; + constexpr MapEntryLite() {} + explicit MapEntryLite(Arena* arena) : SuperType(arena) {} + ~MapEntryLite() { MessageLite::_internal_metadata_.template Delete(); } + void MergeFrom(const MapEntryLite& other) { MergeFromInternal(other); } + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MapEntryLite); +}; +// The completely unprincipled and unwieldy use of template parameters in +// the map code necessitates wrappers to make the code a little bit more +// manageable. +template +struct DeconstructMapEntry; + +template +struct DeconstructMapEntry > { + typedef K Key; + typedef V Value; + static const WireFormatLite::FieldType kKeyFieldType = key; + static const WireFormatLite::FieldType kValueFieldType = value; +}; + +// Helpers for deterministic serialization ============================= + +// This struct can be used with any generic sorting algorithm. If the Key +// type is relatively small and easy to copy then copying Keys into an +// array of SortItems can be beneficial. Then all the data the sorting +// algorithm needs to touch is in that one array. +template +struct SortItem { + SortItem() {} + explicit SortItem(PtrToKeyValuePair p) : first(p->first), second(p) {} + + Key first; + PtrToKeyValuePair second; +}; + +template +struct CompareByFirstField { + bool operator()(const T& a, const T& b) const { return a.first < b.first; } +}; + +template +struct CompareByDerefFirst { + bool operator()(const T& a, const T& b) const { return a->first < b->first; } +}; + +// Helper for table driven serialization + +template +struct FromHelper { + template + static const T& From(const T& x) { + return x; + } +}; + +template <> +struct FromHelper { + static ArenaStringPtr From(const std::string& x) { + ArenaStringPtr res; + TaggedPtr ptr; + ptr.Set(const_cast(&x)); + res.UnsafeSetTaggedPointer(ptr); + return res; + } +}; +template <> +struct FromHelper { + static ArenaStringPtr From(const std::string& x) { + ArenaStringPtr res; + TaggedPtr ptr; + ptr.Set(const_cast(&x)); + res.UnsafeSetTaggedPointer(ptr); + return res; + } +}; +template <> +struct FromHelper { + template + static T* From(const T& x) { + return const_cast(&x); + } +}; + +template +struct MapEntryHelper; + +template +struct MapEntryHelper< + MapEntryLite > { + // Provide utilities to parse/serialize key/value. Provide utilities to + // manipulate internal stored type. + typedef MapTypeHandler KeyTypeHandler; + typedef MapTypeHandler ValueTypeHandler; + + // Define internal memory layout. Strings and messages are stored as + // pointers, while other types are stored as values. + typedef typename KeyTypeHandler::TypeOnMemory KeyOnMemory; + typedef typename ValueTypeHandler::TypeOnMemory ValueOnMemory; + + explicit MapEntryHelper(const MapPair& map_pair) + : _has_bits_(3), + _cached_size_(2 + KeyTypeHandler::GetCachedSize(map_pair.first) + + ValueTypeHandler::GetCachedSize(map_pair.second)), + key_(FromHelper::From(map_pair.first)), + value_(FromHelper::From(map_pair.second)) {} + + // Purposely not following the style guide naming. These are the names + // the proto compiler would generate given the map entry descriptor. + // The proto compiler generates the offsets in this struct as if this was + // a regular message. This way the table driven code barely notices it's + // dealing with a map field. + uint32 _has_bits_; // NOLINT + uint32 _cached_size_; // NOLINT + KeyOnMemory key_; // NOLINT + ValueOnMemory value_; // NOLINT +}; + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_MAP_ENTRY_LITE_H__ diff --git a/external/include/google/protobuf/map_field.h b/external/include/google/protobuf/map_field.h new file mode 100644 index 0000000..7f52cc7 --- /dev/null +++ b/external/include/google/protobuf/map_field.h @@ -0,0 +1,919 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_MAP_FIELD_H__ +#define GOOGLE_PROTOBUF_MAP_FIELD_H__ + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +class DynamicMessage; +class MapIterator; + +#define TYPE_CHECK(EXPECTEDTYPE, METHOD) \ + if (type() != EXPECTEDTYPE) { \ + GOOGLE_LOG(FATAL) << "Protocol Buffer map usage error:\n" \ + << METHOD << " type does not match\n" \ + << " Expected : " \ + << FieldDescriptor::CppTypeName(EXPECTEDTYPE) << "\n" \ + << " Actual : " << FieldDescriptor::CppTypeName(type()); \ + } + +// MapKey is an union type for representing any possible +// map key. +class PROTOBUF_EXPORT MapKey { + public: + MapKey() : type_() {} + MapKey(const MapKey& other) : type_() { CopyFrom(other); } + + MapKey& operator=(const MapKey& other) { + CopyFrom(other); + return *this; + } + + ~MapKey() { + if (type_ == FieldDescriptor::CPPTYPE_STRING) { + val_.string_value_.Destruct(); + } + } + + FieldDescriptor::CppType type() const { + if (type_ == FieldDescriptor::CppType()) { + GOOGLE_LOG(FATAL) << "Protocol Buffer map usage error:\n" + << "MapKey::type MapKey is not initialized. " + << "Call set methods to initialize MapKey."; + } + return type_; + } + + void SetInt64Value(int64 value) { + SetType(FieldDescriptor::CPPTYPE_INT64); + val_.int64_value_ = value; + } + void SetUInt64Value(uint64 value) { + SetType(FieldDescriptor::CPPTYPE_UINT64); + val_.uint64_value_ = value; + } + void SetInt32Value(int32 value) { + SetType(FieldDescriptor::CPPTYPE_INT32); + val_.int32_value_ = value; + } + void SetUInt32Value(uint32 value) { + SetType(FieldDescriptor::CPPTYPE_UINT32); + val_.uint32_value_ = value; + } + void SetBoolValue(bool value) { + SetType(FieldDescriptor::CPPTYPE_BOOL); + val_.bool_value_ = value; + } + void SetStringValue(std::string val) { + SetType(FieldDescriptor::CPPTYPE_STRING); + *val_.string_value_.get_mutable() = std::move(val); + } + + int64 GetInt64Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_INT64, "MapKey::GetInt64Value"); + return val_.int64_value_; + } + uint64 GetUInt64Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_UINT64, "MapKey::GetUInt64Value"); + return val_.uint64_value_; + } + int32 GetInt32Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_INT32, "MapKey::GetInt32Value"); + return val_.int32_value_; + } + uint32 GetUInt32Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_UINT32, "MapKey::GetUInt32Value"); + return val_.uint32_value_; + } + bool GetBoolValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_BOOL, "MapKey::GetBoolValue"); + return val_.bool_value_; + } + const std::string& GetStringValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_STRING, "MapKey::GetStringValue"); + return val_.string_value_.get(); + } + + bool operator<(const MapKey& other) const { + if (type_ != other.type_) { + // We could define a total order that handles this case, but + // there currently no need. So, for now, fail. + GOOGLE_LOG(FATAL) << "Unsupported: type mismatch"; + } + switch (type()) { + case FieldDescriptor::CPPTYPE_DOUBLE: + case FieldDescriptor::CPPTYPE_FLOAT: + case FieldDescriptor::CPPTYPE_ENUM: + case FieldDescriptor::CPPTYPE_MESSAGE: + GOOGLE_LOG(FATAL) << "Unsupported"; + return false; + case FieldDescriptor::CPPTYPE_STRING: + return val_.string_value_.get() < other.val_.string_value_.get(); + case FieldDescriptor::CPPTYPE_INT64: + return val_.int64_value_ < other.val_.int64_value_; + case FieldDescriptor::CPPTYPE_INT32: + return val_.int32_value_ < other.val_.int32_value_; + case FieldDescriptor::CPPTYPE_UINT64: + return val_.uint64_value_ < other.val_.uint64_value_; + case FieldDescriptor::CPPTYPE_UINT32: + return val_.uint32_value_ < other.val_.uint32_value_; + case FieldDescriptor::CPPTYPE_BOOL: + return val_.bool_value_ < other.val_.bool_value_; + } + return false; + } + + bool operator==(const MapKey& other) const { + if (type_ != other.type_) { + // To be consistent with operator<, we don't allow this either. + GOOGLE_LOG(FATAL) << "Unsupported: type mismatch"; + } + switch (type()) { + case FieldDescriptor::CPPTYPE_DOUBLE: + case FieldDescriptor::CPPTYPE_FLOAT: + case FieldDescriptor::CPPTYPE_ENUM: + case FieldDescriptor::CPPTYPE_MESSAGE: + GOOGLE_LOG(FATAL) << "Unsupported"; + break; + case FieldDescriptor::CPPTYPE_STRING: + return val_.string_value_.get() == other.val_.string_value_.get(); + case FieldDescriptor::CPPTYPE_INT64: + return val_.int64_value_ == other.val_.int64_value_; + case FieldDescriptor::CPPTYPE_INT32: + return val_.int32_value_ == other.val_.int32_value_; + case FieldDescriptor::CPPTYPE_UINT64: + return val_.uint64_value_ == other.val_.uint64_value_; + case FieldDescriptor::CPPTYPE_UINT32: + return val_.uint32_value_ == other.val_.uint32_value_; + case FieldDescriptor::CPPTYPE_BOOL: + return val_.bool_value_ == other.val_.bool_value_; + } + GOOGLE_LOG(FATAL) << "Can't get here."; + return false; + } + + void CopyFrom(const MapKey& other) { + SetType(other.type()); + switch (type_) { + case FieldDescriptor::CPPTYPE_DOUBLE: + case FieldDescriptor::CPPTYPE_FLOAT: + case FieldDescriptor::CPPTYPE_ENUM: + case FieldDescriptor::CPPTYPE_MESSAGE: + GOOGLE_LOG(FATAL) << "Unsupported"; + break; + case FieldDescriptor::CPPTYPE_STRING: + *val_.string_value_.get_mutable() = other.val_.string_value_.get(); + break; + case FieldDescriptor::CPPTYPE_INT64: + val_.int64_value_ = other.val_.int64_value_; + break; + case FieldDescriptor::CPPTYPE_INT32: + val_.int32_value_ = other.val_.int32_value_; + break; + case FieldDescriptor::CPPTYPE_UINT64: + val_.uint64_value_ = other.val_.uint64_value_; + break; + case FieldDescriptor::CPPTYPE_UINT32: + val_.uint32_value_ = other.val_.uint32_value_; + break; + case FieldDescriptor::CPPTYPE_BOOL: + val_.bool_value_ = other.val_.bool_value_; + break; + } + } + + private: + template + friend class internal::TypeDefinedMapFieldBase; + friend class ::PROTOBUF_NAMESPACE_ID::MapIterator; + friend class internal::DynamicMapField; + + union KeyValue { + KeyValue() {} + internal::ExplicitlyConstructed string_value_; + int64 int64_value_; + int32 int32_value_; + uint64 uint64_value_; + uint32 uint32_value_; + bool bool_value_; + } val_; + + void SetType(FieldDescriptor::CppType type) { + if (type_ == type) return; + if (type_ == FieldDescriptor::CPPTYPE_STRING) { + val_.string_value_.Destruct(); + } + type_ = type; + if (type_ == FieldDescriptor::CPPTYPE_STRING) { + val_.string_value_.DefaultConstruct(); + } + } + + // type_ is 0 or a valid FieldDescriptor::CppType. + // Use "CppType()" to indicate zero. + FieldDescriptor::CppType type_; +}; + +} // namespace protobuf +} // namespace google +namespace std { +template <> +struct hash<::PROTOBUF_NAMESPACE_ID::MapKey> { + size_t operator()(const ::PROTOBUF_NAMESPACE_ID::MapKey& map_key) const { + switch (map_key.type()) { + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_DOUBLE: + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_FLOAT: + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_ENUM: + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_MESSAGE: + GOOGLE_LOG(FATAL) << "Unsupported"; + break; + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_STRING: + return hash()(map_key.GetStringValue()); + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_INT64: { + auto value = map_key.GetInt64Value(); + return hash()(value); + } + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_INT32: { + auto value = map_key.GetInt32Value(); + return hash()(map_key.GetInt32Value()); + } + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_UINT64: { + auto value = map_key.GetUInt64Value(); + return hash()(map_key.GetUInt64Value()); + } + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_UINT32: { + auto value = map_key.GetUInt32Value(); + return hash()(map_key.GetUInt32Value()); + } + case ::PROTOBUF_NAMESPACE_ID::FieldDescriptor::CPPTYPE_BOOL: { + return hash()(map_key.GetBoolValue()); + } + } + GOOGLE_LOG(FATAL) << "Can't get here."; + return 0; + } + bool operator()(const ::PROTOBUF_NAMESPACE_ID::MapKey& map_key1, + const ::PROTOBUF_NAMESPACE_ID::MapKey& map_key2) const { + return map_key1 < map_key2; + } +}; +} // namespace std + +namespace google { +namespace protobuf { +namespace internal { + +class ContendedMapCleanTest; +class GeneratedMessageReflection; +class MapFieldAccessor; + +// This class provides access to map field using reflection, which is the same +// as those provided for RepeatedPtrField. It is used for internal +// reflection implementation only. Users should never use this directly. +class PROTOBUF_EXPORT MapFieldBase { + public: + MapFieldBase() + : arena_(NULL), repeated_field_(NULL), state_(STATE_MODIFIED_MAP) {} + + // This constructor is for constant initialized global instances. + // It uses a linker initialized mutex, so it is not compatible with regular + // runtime instances. + // Except in MSVC, where we can't have a constinit mutex. + explicit constexpr MapFieldBase(ConstantInitialized) + : arena_(nullptr), + repeated_field_(nullptr), + mutex_(GOOGLE_PROTOBUF_LINKER_INITIALIZED), + state_(STATE_MODIFIED_MAP) {} + explicit MapFieldBase(Arena* arena) + : arena_(arena), repeated_field_(nullptr), state_(STATE_MODIFIED_MAP) {} + virtual ~MapFieldBase(); + + // Returns reference to internal repeated field. Data written using + // Map's api prior to calling this function is guarantted to be + // included in repeated field. + const RepeatedPtrFieldBase& GetRepeatedField() const; + + // Like above. Returns mutable pointer to the internal repeated field. + RepeatedPtrFieldBase* MutableRepeatedField(); + + // Pure virtual map APIs for Map Reflection. + virtual bool ContainsMapKey(const MapKey& map_key) const = 0; + virtual bool InsertOrLookupMapValue(const MapKey& map_key, + MapValueRef* val) = 0; + virtual bool LookupMapValue(const MapKey& map_key, + MapValueConstRef* val) const = 0; + bool LookupMapValue(const MapKey&, MapValueRef*) const = delete; + + // Returns whether changes to the map are reflected in the repeated field. + bool IsRepeatedFieldValid() const; + // Insures operations after won't get executed before calling this. + bool IsMapValid() const; + virtual bool DeleteMapValue(const MapKey& map_key) = 0; + virtual bool EqualIterator(const MapIterator& a, + const MapIterator& b) const = 0; + virtual void MapBegin(MapIterator* map_iter) const = 0; + virtual void MapEnd(MapIterator* map_iter) const = 0; + virtual void MergeFrom(const MapFieldBase& other) = 0; + virtual void Swap(MapFieldBase* other); + virtual void UnsafeShallowSwap(MapFieldBase* other); + // Sync Map with repeated field and returns the size of map. + virtual int size() const = 0; + virtual void Clear() = 0; + + // Returns the number of bytes used by the repeated field, excluding + // sizeof(*this) + size_t SpaceUsedExcludingSelfLong() const; + + int SpaceUsedExcludingSelf() const { + return internal::ToIntSize(SpaceUsedExcludingSelfLong()); + } + + protected: + // Gets the size of space used by map field. + virtual size_t SpaceUsedExcludingSelfNoLock() const; + + // Synchronizes the content in Map to RepeatedPtrField if there is any change + // to Map after last synchronization. + void SyncRepeatedFieldWithMap() const; + virtual void SyncRepeatedFieldWithMapNoLock() const; + + // Synchronizes the content in RepeatedPtrField to Map if there is any change + // to RepeatedPtrField after last synchronization. + void SyncMapWithRepeatedField() const; + virtual void SyncMapWithRepeatedFieldNoLock() const {} + + // Tells MapFieldBase that there is new change to Map. + void SetMapDirty(); + + // Tells MapFieldBase that there is new change to RepeatedPtrField. + void SetRepeatedDirty(); + + // Provides derived class the access to repeated field. + void* MutableRepeatedPtrField() const; + + void InternalSwap(MapFieldBase* other); + + // Support thread sanitizer (tsan) by making const / mutable races + // more apparent. If one thread calls MutableAccess() while another + // thread calls either ConstAccess() or MutableAccess(), on the same + // MapFieldBase-derived object, and there is no synchronization going + // on between them, tsan will alert. +#if defined(__SANITIZE_THREAD__) || defined(THREAD_SANITIZER) + void ConstAccess() const { GOOGLE_CHECK_EQ(seq1_, seq2_); } + void MutableAccess() { + if (seq1_ & 1) { + seq2_ = ++seq1_; + } else { + seq1_ = ++seq2_; + } + } + unsigned int seq1_ = 0, seq2_ = 0; +#else + void ConstAccess() const {} + void MutableAccess() {} +#endif + enum State { + STATE_MODIFIED_MAP = 0, // map has newly added data that has not been + // synchronized to repeated field + STATE_MODIFIED_REPEATED = 1, // repeated field has newly added data that + // has not been synchronized to map + CLEAN = 2, // data in map and repeated field are same + }; + + Arena* arena_; + mutable RepeatedPtrField* repeated_field_; + + mutable internal::WrappedMutex + mutex_; // The thread to synchronize map and repeated field + // needs to get lock first; + mutable std::atomic state_; + + private: + friend class ContendedMapCleanTest; + friend class GeneratedMessageReflection; + friend class MapFieldAccessor; + friend class ::PROTOBUF_NAMESPACE_ID::Reflection; + friend class ::PROTOBUF_NAMESPACE_ID::DynamicMessage; + + // Virtual helper methods for MapIterator. MapIterator doesn't have the + // type helper for key and value. Call these help methods to deal with + // different types. Real helper methods are implemented in + // TypeDefinedMapFieldBase. + friend class ::PROTOBUF_NAMESPACE_ID::MapIterator; + // Allocate map<...>::iterator for MapIterator. + virtual void InitializeIterator(MapIterator* map_iter) const = 0; + + // DeleteIterator() is called by the destructor of MapIterator only. + // It deletes map<...>::iterator for MapIterator. + virtual void DeleteIterator(MapIterator* map_iter) const = 0; + + // Copy the map<...>::iterator from other_iterator to + // this_iterator. + virtual void CopyIterator(MapIterator* this_iterator, + const MapIterator& other_iterator) const = 0; + + // IncreaseIterator() is called by operator++() of MapIterator only. + // It implements the ++ operator of MapIterator. + virtual void IncreaseIterator(MapIterator* map_iter) const = 0; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MapFieldBase); +}; + +// This class provides common Map Reflection implementations for generated +// message and dynamic message. +template +class TypeDefinedMapFieldBase : public MapFieldBase { + public: + TypeDefinedMapFieldBase() {} + + // This constructor is for constant initialized global instances. + // It uses a linker initialized mutex, so it is not compatible with regular + // runtime instances. + explicit constexpr TypeDefinedMapFieldBase(ConstantInitialized tag) + : MapFieldBase(tag) {} + explicit TypeDefinedMapFieldBase(Arena* arena) : MapFieldBase(arena) {} + ~TypeDefinedMapFieldBase() override {} + void MapBegin(MapIterator* map_iter) const override; + void MapEnd(MapIterator* map_iter) const override; + bool EqualIterator(const MapIterator& a, const MapIterator& b) const override; + + virtual const Map& GetMap() const = 0; + virtual Map* MutableMap() = 0; + + protected: + typename Map::const_iterator& InternalGetIterator( + const MapIterator* map_iter) const; + + private: + void InitializeIterator(MapIterator* map_iter) const override; + void DeleteIterator(MapIterator* map_iter) const override; + void CopyIterator(MapIterator* this_iteratorm, + const MapIterator& that_iterator) const override; + void IncreaseIterator(MapIterator* map_iter) const override; + + virtual void SetMapIteratorValue(MapIterator* map_iter) const = 0; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(TypeDefinedMapFieldBase); +}; + +// This class provides access to map field using generated api. It is used for +// internal generated message implementation only. Users should never use this +// directly. +template +class MapField : public TypeDefinedMapFieldBase { + // Provide utilities to parse/serialize key/value. Provide utilities to + // manipulate internal stored type. + typedef MapTypeHandler KeyTypeHandler; + typedef MapTypeHandler ValueTypeHandler; + + // Define message type for internal repeated field. + typedef Derived EntryType; + + // Define abbreviation for parent MapFieldLite + typedef MapFieldLite + MapFieldLiteType; + + // Enum needs to be handled differently from other types because it has + // different exposed type in Map's api and repeated field's api. For + // details see the comment in the implementation of + // SyncMapWithRepeatedFieldNoLock. + static constexpr bool kIsValueEnum = ValueTypeHandler::kIsEnum; + typedef typename MapIf::type CastValueType; + + public: + typedef typename Derived::SuperType EntryTypeTrait; + typedef Map MapType; + + MapField() {} + + // This constructor is for constant initialized global instances. + // It uses a linker initialized mutex, so it is not compatible with regular + // runtime instances. + explicit constexpr MapField(ConstantInitialized tag) + : TypeDefinedMapFieldBase(tag), impl_() {} + explicit MapField(Arena* arena) + : TypeDefinedMapFieldBase(arena), impl_(arena) {} + + // Implement MapFieldBase + bool ContainsMapKey(const MapKey& map_key) const override; + bool InsertOrLookupMapValue(const MapKey& map_key, MapValueRef* val) override; + bool LookupMapValue(const MapKey& map_key, + MapValueConstRef* val) const override; + bool LookupMapValue(const MapKey&, MapValueRef*) const = delete; + bool DeleteMapValue(const MapKey& map_key) override; + + const Map& GetMap() const override { + MapFieldBase::SyncMapWithRepeatedField(); + return impl_.GetMap(); + } + + Map* MutableMap() override { + MapFieldBase::SyncMapWithRepeatedField(); + Map* result = impl_.MutableMap(); + MapFieldBase::SetMapDirty(); + return result; + } + + int size() const override; + void Clear() override; + void MergeFrom(const MapFieldBase& other) override; + void Swap(MapFieldBase* other) override; + void UnsafeShallowSwap(MapFieldBase* other) override; + void InternalSwap(MapField* other); + + // Used in the implementation of parsing. Caller should take the ownership iff + // arena_ is NULL. + EntryType* NewEntry() const { return impl_.NewEntry(); } + // Used in the implementation of serializing enum value type. Caller should + // take the ownership iff arena_ is NULL. + EntryType* NewEnumEntryWrapper(const Key& key, const T t) const { + return impl_.NewEnumEntryWrapper(key, t); + } + // Used in the implementation of serializing other value types. Caller should + // take the ownership iff arena_ is NULL. + EntryType* NewEntryWrapper(const Key& key, const T& t) const { + return impl_.NewEntryWrapper(key, t); + } + + const char* _InternalParse(const char* ptr, ParseContext* ctx) { + return impl_._InternalParse(ptr, ctx); + } + template + const char* ParseWithEnumValidation(const char* ptr, ParseContext* ctx, + bool (*is_valid)(int), uint32 field_num, + InternalMetadata* metadata) { + return impl_.template ParseWithEnumValidation( + ptr, ctx, is_valid, field_num, metadata); + } + + private: + MapFieldLiteType impl_; + + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + + // Implements MapFieldBase + void SyncRepeatedFieldWithMapNoLock() const override; + void SyncMapWithRepeatedFieldNoLock() const override; + size_t SpaceUsedExcludingSelfNoLock() const override; + + void SetMapIteratorValue(MapIterator* map_iter) const override; + + friend class ::PROTOBUF_NAMESPACE_ID::Arena; + friend class MapFieldStateTest; // For testing, it needs raw access to impl_ + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MapField); +}; + +template +bool AllAreInitialized( + const MapField& field) { + const auto& t = field.GetMap(); + for (typename Map::const_iterator it = t.begin(); it != t.end(); + ++it) { + if (!it->second.IsInitialized()) return false; + } + return true; +} + +template +struct MapEntryToMapField< + MapEntry> { + typedef MapField MapFieldType; +}; + +class PROTOBUF_EXPORT DynamicMapField + : public TypeDefinedMapFieldBase { + public: + explicit DynamicMapField(const Message* default_entry); + DynamicMapField(const Message* default_entry, Arena* arena); + ~DynamicMapField() override; + + // Implement MapFieldBase + bool ContainsMapKey(const MapKey& map_key) const override; + bool InsertOrLookupMapValue(const MapKey& map_key, MapValueRef* val) override; + bool LookupMapValue(const MapKey& map_key, + MapValueConstRef* val) const override; + bool LookupMapValue(const MapKey&, MapValueRef*) const = delete; + bool DeleteMapValue(const MapKey& map_key) override; + void MergeFrom(const MapFieldBase& other) override; + void Swap(MapFieldBase* other) override; + void UnsafeShallowSwap(MapFieldBase* other) override { Swap(other); } + + const Map& GetMap() const override; + Map* MutableMap() override; + + int size() const override; + void Clear() override; + + private: + Map map_; + const Message* default_entry_; + + void AllocateMapValue(MapValueRef* map_val); + + // Implements MapFieldBase + void SyncRepeatedFieldWithMapNoLock() const override; + void SyncMapWithRepeatedFieldNoLock() const override; + size_t SpaceUsedExcludingSelfNoLock() const override; + void SetMapIteratorValue(MapIterator* map_iter) const override; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(DynamicMapField); +}; + +} // namespace internal + +// MapValueConstRef points to a map value. Users can NOT modify +// the map value. +class PROTOBUF_EXPORT MapValueConstRef { + public: + MapValueConstRef() : data_(nullptr), type_() {} + + int64 GetInt64Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_INT64, + "MapValueConstRef::GetInt64Value"); + return *reinterpret_cast(data_); + } + uint64 GetUInt64Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_UINT64, + "MapValueConstRef::GetUInt64Value"); + return *reinterpret_cast(data_); + } + int32 GetInt32Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_INT32, + "MapValueConstRef::GetInt32Value"); + return *reinterpret_cast(data_); + } + uint32 GetUInt32Value() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_UINT32, + "MapValueConstRef::GetUInt32Value"); + return *reinterpret_cast(data_); + } + bool GetBoolValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_BOOL, "MapValueConstRef::GetBoolValue"); + return *reinterpret_cast(data_); + } + int GetEnumValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_ENUM, "MapValueConstRef::GetEnumValue"); + return *reinterpret_cast(data_); + } + const std::string& GetStringValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_STRING, + "MapValueConstRef::GetStringValue"); + return *reinterpret_cast(data_); + } + float GetFloatValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_FLOAT, + "MapValueConstRef::GetFloatValue"); + return *reinterpret_cast(data_); + } + double GetDoubleValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_DOUBLE, + "MapValueConstRef::GetDoubleValue"); + return *reinterpret_cast(data_); + } + + const Message& GetMessageValue() const { + TYPE_CHECK(FieldDescriptor::CPPTYPE_MESSAGE, + "MapValueConstRef::GetMessageValue"); + return *reinterpret_cast(data_); + } + + protected: + // data_ point to a map value. MapValueConstRef does not + // own this value. + void* data_; + // type_ is 0 or a valid FieldDescriptor::CppType. + // Use "CppType()" to indicate zero. + FieldDescriptor::CppType type_; + + FieldDescriptor::CppType type() const { + if (type_ == FieldDescriptor::CppType() || data_ == nullptr) { + GOOGLE_LOG(FATAL) + << "Protocol Buffer map usage error:\n" + << "MapValueConstRef::type MapValueConstRef is not initialized."; + } + return type_; + } + + private: + template + friend class internal::MapField; + template + friend class internal::TypeDefinedMapFieldBase; + friend class ::PROTOBUF_NAMESPACE_ID::MapIterator; + friend class Reflection; + friend class internal::DynamicMapField; + + void SetType(FieldDescriptor::CppType type) { type_ = type; } + void SetValue(const void* val) { data_ = const_cast(val); } + void CopyFrom(const MapValueConstRef& other) { + type_ = other.type_; + data_ = other.data_; + } +}; + +// MapValueRef points to a map value. Users are able to modify +// the map value. +class PROTOBUF_EXPORT MapValueRef final : public MapValueConstRef { + public: + MapValueRef() {} + + void SetInt64Value(int64 value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_INT64, "MapValueRef::SetInt64Value"); + *reinterpret_cast(data_) = value; + } + void SetUInt64Value(uint64 value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_UINT64, "MapValueRef::SetUInt64Value"); + *reinterpret_cast(data_) = value; + } + void SetInt32Value(int32 value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_INT32, "MapValueRef::SetInt32Value"); + *reinterpret_cast(data_) = value; + } + void SetUInt32Value(uint32 value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_UINT32, "MapValueRef::SetUInt32Value"); + *reinterpret_cast(data_) = value; + } + void SetBoolValue(bool value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_BOOL, "MapValueRef::SetBoolValue"); + *reinterpret_cast(data_) = value; + } + // TODO(jieluo) - Checks that enum is member. + void SetEnumValue(int value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_ENUM, "MapValueRef::SetEnumValue"); + *reinterpret_cast(data_) = value; + } + void SetStringValue(const std::string& value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_STRING, "MapValueRef::SetStringValue"); + *reinterpret_cast(data_) = value; + } + void SetFloatValue(float value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_FLOAT, "MapValueRef::SetFloatValue"); + *reinterpret_cast(data_) = value; + } + void SetDoubleValue(double value) { + TYPE_CHECK(FieldDescriptor::CPPTYPE_DOUBLE, "MapValueRef::SetDoubleValue"); + *reinterpret_cast(data_) = value; + } + + Message* MutableMessageValue() { + TYPE_CHECK(FieldDescriptor::CPPTYPE_MESSAGE, + "MapValueRef::MutableMessageValue"); + return reinterpret_cast(data_); + } + + private: + friend class internal::DynamicMapField; + + // Only used in DynamicMapField + void DeleteData() { + switch (type_) { +#define HANDLE_TYPE(CPPTYPE, TYPE) \ + case FieldDescriptor::CPPTYPE_##CPPTYPE: { \ + delete reinterpret_cast(data_); \ + break; \ + } + HANDLE_TYPE(INT32, int32); + HANDLE_TYPE(INT64, int64); + HANDLE_TYPE(UINT32, uint32); + HANDLE_TYPE(UINT64, uint64); + HANDLE_TYPE(DOUBLE, double); + HANDLE_TYPE(FLOAT, float); + HANDLE_TYPE(BOOL, bool); + HANDLE_TYPE(STRING, std::string); + HANDLE_TYPE(ENUM, int32); + HANDLE_TYPE(MESSAGE, Message); +#undef HANDLE_TYPE + } + } +}; + +#undef TYPE_CHECK + +class PROTOBUF_EXPORT MapIterator { + public: + MapIterator(Message* message, const FieldDescriptor* field) { + const Reflection* reflection = message->GetReflection(); + map_ = reflection->MutableMapData(message, field); + key_.SetType(field->message_type()->FindFieldByName("key")->cpp_type()); + value_.SetType(field->message_type()->FindFieldByName("value")->cpp_type()); + map_->InitializeIterator(this); + } + MapIterator(const MapIterator& other) { + map_ = other.map_; + map_->InitializeIterator(this); + map_->CopyIterator(this, other); + } + ~MapIterator() { map_->DeleteIterator(this); } + MapIterator& operator=(const MapIterator& other) { + map_ = other.map_; + map_->CopyIterator(this, other); + return *this; + } + friend bool operator==(const MapIterator& a, const MapIterator& b) { + return a.map_->EqualIterator(a, b); + } + friend bool operator!=(const MapIterator& a, const MapIterator& b) { + return !a.map_->EqualIterator(a, b); + } + MapIterator& operator++() { + map_->IncreaseIterator(this); + return *this; + } + MapIterator operator++(int) { + // iter_ is copied from Map<...>::iterator, no need to + // copy from its self again. Use the same implementation + // with operator++() + map_->IncreaseIterator(this); + return *this; + } + const MapKey& GetKey() { return key_; } + const MapValueRef& GetValueRef() { return value_; } + MapValueRef* MutableValueRef() { + map_->SetMapDirty(); + return &value_; + } + + private: + template + friend class internal::TypeDefinedMapFieldBase; + friend class internal::DynamicMapField; + template + friend class internal::MapField; + + // reinterpret_cast from heap-allocated Map<...>::iterator*. MapIterator owns + // the iterator. It is allocated by MapField<...>::InitializeIterator() called + // in constructor and deleted by MapField<...>::DeleteIterator() called in + // destructor. + void* iter_; + // Point to a MapField to call helper methods implemented in MapField. + // MapIterator does not own this object. + internal::MapFieldBase* map_; + MapKey key_; + MapValueRef value_; +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_MAP_FIELD_H__ diff --git a/external/include/google/protobuf/map_field_inl.h b/external/include/google/protobuf/map_field_inl.h new file mode 100644 index 0000000..a42b4fc --- /dev/null +++ b/external/include/google/protobuf/map_field_inl.h @@ -0,0 +1,375 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_MAP_FIELD_INL_H__ +#define GOOGLE_PROTOBUF_MAP_FIELD_INL_H__ + +#include + +#include +#include +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +namespace internal { +// UnwrapMapKey template +template +T UnwrapMapKey(const MapKey& map_key); +template <> +inline int32 UnwrapMapKey(const MapKey& map_key) { + return map_key.GetInt32Value(); +} +template <> +inline uint32 UnwrapMapKey(const MapKey& map_key) { + return map_key.GetUInt32Value(); +} +template <> +inline int64 UnwrapMapKey(const MapKey& map_key) { + return map_key.GetInt64Value(); +} +template <> +inline uint64 UnwrapMapKey(const MapKey& map_key) { + return map_key.GetUInt64Value(); +} +template <> +inline bool UnwrapMapKey(const MapKey& map_key) { + return map_key.GetBoolValue(); +} +template <> +inline std::string UnwrapMapKey(const MapKey& map_key) { + return map_key.GetStringValue(); +} + +// SetMapKey template +template +inline void SetMapKey(MapKey* map_key, const T& value); +template <> +inline void SetMapKey(MapKey* map_key, const int32& value) { + map_key->SetInt32Value(value); +} +template <> +inline void SetMapKey(MapKey* map_key, const uint32& value) { + map_key->SetUInt32Value(value); +} +template <> +inline void SetMapKey(MapKey* map_key, const int64& value) { + map_key->SetInt64Value(value); +} +template <> +inline void SetMapKey(MapKey* map_key, const uint64& value) { + map_key->SetUInt64Value(value); +} +template <> +inline void SetMapKey(MapKey* map_key, const bool& value) { + map_key->SetBoolValue(value); +} +template <> +inline void SetMapKey(MapKey* map_key, const std::string& value) { + map_key->SetStringValue(value); +} + +// ------------------------TypeDefinedMapFieldBase--------------- +template +typename Map::const_iterator& +TypeDefinedMapFieldBase::InternalGetIterator( + const MapIterator* map_iter) const { + return *reinterpret_cast::const_iterator*>( + map_iter->iter_); +} + +template +void TypeDefinedMapFieldBase::MapBegin(MapIterator* map_iter) const { + InternalGetIterator(map_iter) = GetMap().begin(); + SetMapIteratorValue(map_iter); +} + +template +void TypeDefinedMapFieldBase::MapEnd(MapIterator* map_iter) const { + InternalGetIterator(map_iter) = GetMap().end(); +} + +template +bool TypeDefinedMapFieldBase::EqualIterator( + const MapIterator& a, const MapIterator& b) const { + return InternalGetIterator(&a) == InternalGetIterator(&b); +} + +template +void TypeDefinedMapFieldBase::IncreaseIterator( + MapIterator* map_iter) const { + ++InternalGetIterator(map_iter); + SetMapIteratorValue(map_iter); +} + +template +void TypeDefinedMapFieldBase::InitializeIterator( + MapIterator* map_iter) const { + map_iter->iter_ = new typename Map::const_iterator; + GOOGLE_CHECK(map_iter->iter_ != NULL); +} + +template +void TypeDefinedMapFieldBase::DeleteIterator( + MapIterator* map_iter) const { + delete reinterpret_cast::const_iterator*>( + map_iter->iter_); +} + +template +void TypeDefinedMapFieldBase::CopyIterator( + MapIterator* this_iter, const MapIterator& that_iter) const { + InternalGetIterator(this_iter) = InternalGetIterator(&that_iter); + this_iter->key_.SetType(that_iter.key_.type()); + // MapValueRef::type() fails when containing data is null. However, if + // this_iter points to MapEnd, data can be null. + this_iter->value_.SetType( + static_cast(that_iter.value_.type_)); + SetMapIteratorValue(this_iter); +} + +// ---------------------------------------------------------------------- + +template +int MapField::size() const { + MapFieldBase::SyncMapWithRepeatedField(); + return static_cast(impl_.GetMap().size()); +} + +template +void MapField::Clear() { + if (this->MapFieldBase::repeated_field_ != nullptr) { + RepeatedPtrField* repeated_field = + reinterpret_cast*>( + this->MapFieldBase::repeated_field_); + repeated_field->Clear(); + } + + impl_.MutableMap()->clear(); + // Data in map and repeated field are both empty, but we can't set status + // CLEAN. Because clear is a generated API, we cannot invalidate previous + // reference to map. + MapFieldBase::SetMapDirty(); +} + +template +void MapField::SetMapIteratorValue(MapIterator* map_iter) + const { + const Map& map = impl_.GetMap(); + typename Map::const_iterator iter = + TypeDefinedMapFieldBase::InternalGetIterator(map_iter); + if (iter == map.end()) return; + SetMapKey(&map_iter->key_, iter->first); + map_iter->value_.SetValue(&iter->second); +} + +template +bool MapField::ContainsMapKey( + const MapKey& map_key) const { + const Map& map = impl_.GetMap(); + const Key& key = UnwrapMapKey(map_key); + typename Map::const_iterator iter = map.find(key); + return iter != map.end(); +} + +template +bool MapField::InsertOrLookupMapValue(const MapKey& map_key, + MapValueRef* val) { + // Always use mutable map because users may change the map value by + // MapValueRef. + Map* map = MutableMap(); + const Key& key = UnwrapMapKey(map_key); + typename Map::iterator iter = map->find(key); + if (map->end() == iter) { + val->SetValue(&((*map)[key])); + return true; + } + // Key is already in the map. Make sure (*map)[key] is not called. + // [] may reorder the map and iterators. + val->SetValue(&(iter->second)); + return false; +} + +template +bool MapField::LookupMapValue( + const MapKey& map_key, MapValueConstRef* val) const { + const Map& map = GetMap(); + const Key& key = UnwrapMapKey(map_key); + typename Map::const_iterator iter = map.find(key); + if (map.end() == iter) { + return false; + } + // Key is already in the map. Make sure (*map)[key] is not called. + // [] may reorder the map and iterators. + val->SetValue(&(iter->second)); + return true; +} + +template +bool MapField::DeleteMapValue( + const MapKey& map_key) { + const Key& key = UnwrapMapKey(map_key); + return MutableMap()->erase(key); +} + +template +void MapField::MergeFrom( + const MapFieldBase& other) { + MapFieldBase::SyncMapWithRepeatedField(); + const MapField& other_field = static_cast(other); + other_field.SyncMapWithRepeatedField(); + impl_.MergeFrom(other_field.impl_); + MapFieldBase::SetMapDirty(); +} + +template +void MapField::Swap( + MapFieldBase* other) { + MapFieldBase::Swap(other); + MapField* other_field = down_cast(other); + impl_.Swap(&other_field->impl_); +} + +template +void MapField::UnsafeShallowSwap(MapFieldBase* other) { + InternalSwap(down_cast(other)); +} + +template +void MapField::InternalSwap( + MapField* other) { + MapFieldBase::InternalSwap(other); + impl_.InternalSwap(&other->impl_); +} + +template +void MapField::SyncRepeatedFieldWithMapNoLock() const { + if (this->MapFieldBase::repeated_field_ == NULL) { + this->MapFieldBase::repeated_field_ = + Arena::CreateMessage >( + this->MapFieldBase::arena_); + } + const Map& map = impl_.GetMap(); + RepeatedPtrField* repeated_field = + reinterpret_cast*>( + this->MapFieldBase::repeated_field_); + + repeated_field->Clear(); + + // The only way we can get at this point is through reflection and the + // only way we can get the reflection object is by having called GetReflection + // on the encompassing field. So that type must have existed and hence we + // know that this MapEntry default_type has also already been constructed. + // So it's safe to just call internal_default_instance(). + const Message* default_entry = Derived::internal_default_instance(); + for (typename Map::const_iterator it = map.begin(); it != map.end(); + ++it) { + EntryType* new_entry = + down_cast(default_entry->New(this->MapFieldBase::arena_)); + repeated_field->AddAllocated(new_entry); + (*new_entry->mutable_key()) = it->first; + (*new_entry->mutable_value()) = it->second; + } +} + +template +void MapField::SyncMapWithRepeatedFieldNoLock() const { + Map* map = const_cast(this)->impl_.MutableMap(); + RepeatedPtrField* repeated_field = + reinterpret_cast*>( + this->MapFieldBase::repeated_field_); + GOOGLE_CHECK(this->MapFieldBase::repeated_field_ != NULL); + map->clear(); + for (typename RepeatedPtrField::iterator it = + repeated_field->begin(); + it != repeated_field->end(); ++it) { + // Cast is needed because Map's api and internal storage is different when + // value is enum. For enum, we cannot cast an int to enum. Thus, we have to + // copy value. For other types, they have same exposed api type and internal + // stored type. We should not introduce value copy for them. We achieve this + // by casting to value for enum while casting to reference for other types. + (*map)[it->key()] = static_cast(it->value()); + } +} + +template +size_t MapField::SpaceUsedExcludingSelfNoLock() const { + size_t size = 0; + if (this->MapFieldBase::repeated_field_ != NULL) { + size += this->MapFieldBase::repeated_field_->SpaceUsedExcludingSelfLong(); + } + size += impl_.GetMap().SpaceUsedExcludingSelfLong(); + + return size; +} +} // namespace internal +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_MAP_FIELD_INL_H__ diff --git a/external/include/google/protobuf/map_field_lite.h b/external/include/google/protobuf/map_field_lite.h new file mode 100644 index 0000000..46658d4 --- /dev/null +++ b/external/include/google/protobuf/map_field_lite.h @@ -0,0 +1,184 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_MAP_FIELD_LITE_H__ +#define GOOGLE_PROTOBUF_MAP_FIELD_LITE_H__ + +#include +#include +#include +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +namespace internal { + +// This class provides access to map field using generated api. It is used for +// internal generated message implementation only. Users should never use this +// directly. +template +class MapFieldLite { + // Define message type for internal repeated field. + typedef Derived EntryType; + + public: + typedef Map MapType; + typedef EntryType EntryTypeTrait; + + constexpr MapFieldLite() {} + + explicit MapFieldLite(Arena* arena) : map_(arena) {} + + // Accessors + const Map& GetMap() const { return map_; } + Map* MutableMap() { return &map_; } + + // Convenient methods for generated message implementation. + int size() const { return static_cast(map_.size()); } + void Clear() { return map_.clear(); } + void MergeFrom(const MapFieldLite& other) { + for (typename Map::const_iterator it = other.map_.begin(); + it != other.map_.end(); ++it) { + map_[it->first] = it->second; + } + } + void Swap(MapFieldLite* other) { map_.swap(other->map_); } + void InternalSwap(MapFieldLite* other) { map_.InternalSwap(other->map_); } + + // Used in the implementation of parsing. Caller should take the ownership iff + // arena_ is NULL. + EntryType* NewEntry() const { + return Arena::CreateMessage(map_.arena()); + } + // Used in the implementation of serializing enum value type. Caller should + // take the ownership iff arena_ is NULL. + EntryType* NewEnumEntryWrapper(const Key& key, const T t) const { + return EntryType::EnumWrap(key, t, map_.arena_); + } + // Used in the implementation of serializing other value types. Caller should + // take the ownership iff arena_ is NULL. + EntryType* NewEntryWrapper(const Key& key, const T& t) const { + return EntryType::Wrap(key, t, map_.arena_); + } + + const char* _InternalParse(const char* ptr, ParseContext* ctx) { + typename Derived::template Parser> parser(this); + return parser._InternalParse(ptr, ctx); + } + + template + const char* ParseWithEnumValidation(const char* ptr, ParseContext* ctx, + bool (*is_valid)(int), uint32 field_num, + InternalMetadata* metadata) { + typename Derived::template Parser> parser(this); + return parser.template ParseWithEnumValidation( + ptr, ctx, is_valid, field_num, metadata); + } + + private: + typedef void DestructorSkippable_; + + Map map_; + + friend class ::PROTOBUF_NAMESPACE_ID::Arena; +}; + +template +struct EnumParseWrapper { + const char* _InternalParse(const char* ptr, ParseContext* ctx) { + return map_field->template ParseWithEnumValidation( + ptr, ctx, is_valid, field_num, metadata); + } + T* map_field; + bool (*is_valid)(int); + uint32 field_num; + InternalMetadata* metadata; +}; + +// Helper function because the typenames of maps are horrendous to print. This +// leverages compiler type deduction, to keep all type data out of the +// generated code +template +EnumParseWrapper InitEnumParseWrapper( + T* map_field, bool (*is_valid)(int), uint32 field_num, + InternalMetadata* metadata) { + return EnumParseWrapper{map_field, is_valid, field_num, + metadata}; +} + +// True if IsInitialized() is true for value field in all elements of t. T is +// expected to be message. It's useful to have this helper here to keep the +// protobuf compiler from ever having to emit loops in IsInitialized() methods. +// We want the C++ compiler to inline this or not as it sees fit. +template +bool AllAreInitialized(const MapFieldLite& field) { + const auto& t = field.GetMap(); + for (typename Map::const_iterator it = t.begin(); it != t.end(); + ++it) { + if (!it->second.IsInitialized()) return false; + } + return true; +} + +template +struct MapEntryToMapField : MapEntryToMapField {}; + +template +struct MapEntryToMapField< + MapEntryLite> { + typedef MapFieldLite< + MapEntryLite, Key, Value, + kKeyFieldType, kValueFieldType> + MapFieldType; +}; + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_MAP_FIELD_LITE_H__ diff --git a/external/include/google/protobuf/map_type_handler.h b/external/include/google/protobuf/map_type_handler.h new file mode 100644 index 0000000..e718790 --- /dev/null +++ b/external/include/google/protobuf/map_type_handler.h @@ -0,0 +1,688 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_TYPE_HANDLER_H__ +#define GOOGLE_PROTOBUF_TYPE_HANDLER_H__ + +#include +#include +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +namespace internal { + +// Used for compile time type selection. MapIf::type will be TrueType if Flag is +// true and FalseType otherwise. +template +struct MapIf; + +template +struct MapIf { + typedef TrueType type; +}; + +template +struct MapIf { + typedef FalseType type; +}; + +template +class MapArenaMessageCreator { + public: + // Use arena to create message if Type is arena constructable. Otherwise, + // create the message on heap. + static inline Type* CreateMessage(Arena* arena); +}; +template +class MapArenaMessageCreator { + public: + static inline Type* CreateMessage(Arena* arena) { + return Arena::CreateMessage(arena); + } +}; +template +class MapArenaMessageCreator { + public: + static inline Type* CreateMessage(Arena* arena) { + return Arena::Create(arena); + } +}; + +// Define constants for given wire field type +template +class MapWireFieldTypeTraits {}; + +#define TYPE_TRAITS(FieldType, CType, WireFormatType, IsMessage, IsEnum) \ + template \ + class MapWireFieldTypeTraits { \ + public: \ + static const bool kIsMessage = IsMessage; \ + static const bool kIsEnum = IsEnum; \ + typedef typename MapIf::type TypeOnMemory; \ + typedef typename MapIf::type MapEntryAccessorType; \ + static const WireFormatLite::WireType kWireType = \ + WireFormatLite::WIRETYPE_##WireFormatType; \ + }; + +TYPE_TRAITS(MESSAGE, Type, LENGTH_DELIMITED, true, false) +TYPE_TRAITS(STRING, ArenaStringPtr, LENGTH_DELIMITED, false, false) +TYPE_TRAITS(BYTES, ArenaStringPtr, LENGTH_DELIMITED, false, false) +TYPE_TRAITS(INT64, int64, VARINT, false, false) +TYPE_TRAITS(UINT64, uint64, VARINT, false, false) +TYPE_TRAITS(INT32, int32, VARINT, false, false) +TYPE_TRAITS(UINT32, uint32, VARINT, false, false) +TYPE_TRAITS(SINT64, int64, VARINT, false, false) +TYPE_TRAITS(SINT32, int32, VARINT, false, false) +TYPE_TRAITS(ENUM, int, VARINT, false, true) +TYPE_TRAITS(DOUBLE, double, FIXED64, false, false) +TYPE_TRAITS(FLOAT, float, FIXED32, false, false) +TYPE_TRAITS(FIXED64, uint64, FIXED64, false, false) +TYPE_TRAITS(FIXED32, uint32, FIXED32, false, false) +TYPE_TRAITS(SFIXED64, int64, FIXED64, false, false) +TYPE_TRAITS(SFIXED32, int32, FIXED32, false, false) +TYPE_TRAITS(BOOL, bool, VARINT, false, false) + +#undef TYPE_TRAITS + +template +class MapTypeHandler {}; + +template +class MapTypeHandler { + public: + // Enum type cannot be used for MapTypeHandler::Read. Define a type which will + // replace Enum with int. + typedef typename MapWireFieldTypeTraits::MapEntryAccessorType + MapEntryAccessorType; + // Internal stored type in MapEntryLite for given wire field type. + typedef typename MapWireFieldTypeTraits::TypeOnMemory TypeOnMemory; + // Corresponding wire type for field type. + static constexpr WireFormatLite::WireType kWireType = + MapWireFieldTypeTraits::kWireType; + // Whether wire type is for message. + static constexpr bool kIsMessage = + MapWireFieldTypeTraits::kIsMessage; + // Whether wire type is for enum. + static constexpr bool kIsEnum = + MapWireFieldTypeTraits::kIsEnum; + + // Functions used in parsing and serialization. =================== + static inline size_t ByteSize(const MapEntryAccessorType& value); + static inline int GetCachedSize(const MapEntryAccessorType& value); + static inline bool Read(io::CodedInputStream* input, + MapEntryAccessorType* value); + static inline const char* Read(const char* ptr, ParseContext* ctx, + MapEntryAccessorType* value); + + static inline uint8* Write(int field, const MapEntryAccessorType& value, + uint8* ptr, io::EpsCopyOutputStream* stream); + + // Functions to manipulate data on memory. ======================== + static inline const Type& GetExternalReference(const Type* value); + static inline void DeleteNoArena(const Type* x); + static inline void Merge(const Type& from, Type** to, Arena* arena); + static inline void Clear(Type** value, Arena* arena); + static constexpr TypeOnMemory Constinit(); + + static inline Type* EnsureMutable(Type** value, Arena* arena); + // SpaceUsedInMapEntry: Return bytes used by value in MapEntry, excluding + // those already calculate in sizeof(MapField). + static inline size_t SpaceUsedInMapEntryLong(const Type* value); + // Return default instance if value is not initialized when calling const + // reference accessor. + static inline const Type& DefaultIfNotInitialized(const Type* value); + // Check if all required fields have values set. + static inline bool IsInitialized(Type* value); +}; + +#define MAP_HANDLER(FieldType) \ + template \ + class MapTypeHandler { \ + public: \ + typedef typename MapWireFieldTypeTraits::MapEntryAccessorType \ + MapEntryAccessorType; \ + typedef typename MapWireFieldTypeTraits::TypeOnMemory TypeOnMemory; \ + static const WireFormatLite::WireType kWireType = \ + MapWireFieldTypeTraits::kWireType; \ + static const bool kIsMessage = \ + MapWireFieldTypeTraits::kIsMessage; \ + static const bool kIsEnum = \ + MapWireFieldTypeTraits::kIsEnum; \ + static inline int ByteSize(const MapEntryAccessorType& value); \ + static inline int GetCachedSize(const MapEntryAccessorType& value); \ + static inline bool Read(io::CodedInputStream* input, \ + MapEntryAccessorType* value); \ + static inline const char* Read(const char* begin, ParseContext* ctx, \ + MapEntryAccessorType* value); \ + static inline uint8* Write(int field, const MapEntryAccessorType& value, \ + uint8* ptr, io::EpsCopyOutputStream* stream); \ + static inline const MapEntryAccessorType& GetExternalReference( \ + const TypeOnMemory& value); \ + static inline void DeleteNoArena(const TypeOnMemory& x); \ + static inline void Merge(const MapEntryAccessorType& from, \ + TypeOnMemory* to, Arena* arena); \ + static inline void Clear(TypeOnMemory* value, Arena* arena); \ + static inline size_t SpaceUsedInMapEntryLong(const TypeOnMemory& value); \ + static inline const MapEntryAccessorType& DefaultIfNotInitialized( \ + const TypeOnMemory& value); \ + static inline bool IsInitialized(const TypeOnMemory& value); \ + static void DeleteNoArena(TypeOnMemory& value); \ + static constexpr TypeOnMemory Constinit(); \ + static inline MapEntryAccessorType* EnsureMutable(TypeOnMemory* value, \ + Arena* arena); \ + }; +MAP_HANDLER(STRING) +MAP_HANDLER(BYTES) +MAP_HANDLER(INT64) +MAP_HANDLER(UINT64) +MAP_HANDLER(INT32) +MAP_HANDLER(UINT32) +MAP_HANDLER(SINT64) +MAP_HANDLER(SINT32) +MAP_HANDLER(ENUM) +MAP_HANDLER(DOUBLE) +MAP_HANDLER(FLOAT) +MAP_HANDLER(FIXED64) +MAP_HANDLER(FIXED32) +MAP_HANDLER(SFIXED64) +MAP_HANDLER(SFIXED32) +MAP_HANDLER(BOOL) +#undef MAP_HANDLER + +template +inline size_t MapTypeHandler::ByteSize( + const MapEntryAccessorType& value) { + return WireFormatLite::MessageSizeNoVirtual(value); +} + +#define GOOGLE_PROTOBUF_BYTE_SIZE(FieldType, DeclaredType) \ + template \ + inline int MapTypeHandler::ByteSize( \ + const MapEntryAccessorType& value) { \ + return static_cast(WireFormatLite::DeclaredType##Size(value)); \ + } + +GOOGLE_PROTOBUF_BYTE_SIZE(STRING, String) +GOOGLE_PROTOBUF_BYTE_SIZE(BYTES, Bytes) +GOOGLE_PROTOBUF_BYTE_SIZE(INT64, Int64) +GOOGLE_PROTOBUF_BYTE_SIZE(UINT64, UInt64) +GOOGLE_PROTOBUF_BYTE_SIZE(INT32, Int32) +GOOGLE_PROTOBUF_BYTE_SIZE(UINT32, UInt32) +GOOGLE_PROTOBUF_BYTE_SIZE(SINT64, SInt64) +GOOGLE_PROTOBUF_BYTE_SIZE(SINT32, SInt32) +GOOGLE_PROTOBUF_BYTE_SIZE(ENUM, Enum) + +#undef GOOGLE_PROTOBUF_BYTE_SIZE + +#define FIXED_BYTE_SIZE(FieldType, DeclaredType) \ + template \ + inline int MapTypeHandler::ByteSize( \ + const MapEntryAccessorType& /* value */) { \ + return WireFormatLite::k##DeclaredType##Size; \ + } + +FIXED_BYTE_SIZE(DOUBLE, Double) +FIXED_BYTE_SIZE(FLOAT, Float) +FIXED_BYTE_SIZE(FIXED64, Fixed64) +FIXED_BYTE_SIZE(FIXED32, Fixed32) +FIXED_BYTE_SIZE(SFIXED64, SFixed64) +FIXED_BYTE_SIZE(SFIXED32, SFixed32) +FIXED_BYTE_SIZE(BOOL, Bool) + +#undef FIXED_BYTE_SIZE + +template +inline int MapTypeHandler::GetCachedSize( + const MapEntryAccessorType& value) { + return static_cast(WireFormatLite::LengthDelimitedSize( + static_cast(value.GetCachedSize()))); +} + +#define GET_CACHED_SIZE(FieldType, DeclaredType) \ + template \ + inline int \ + MapTypeHandler::GetCachedSize( \ + const MapEntryAccessorType& value) { \ + return static_cast(WireFormatLite::DeclaredType##Size(value)); \ + } + +GET_CACHED_SIZE(STRING, String) +GET_CACHED_SIZE(BYTES, Bytes) +GET_CACHED_SIZE(INT64, Int64) +GET_CACHED_SIZE(UINT64, UInt64) +GET_CACHED_SIZE(INT32, Int32) +GET_CACHED_SIZE(UINT32, UInt32) +GET_CACHED_SIZE(SINT64, SInt64) +GET_CACHED_SIZE(SINT32, SInt32) +GET_CACHED_SIZE(ENUM, Enum) + +#undef GET_CACHED_SIZE + +#define GET_FIXED_CACHED_SIZE(FieldType, DeclaredType) \ + template \ + inline int \ + MapTypeHandler::GetCachedSize( \ + const MapEntryAccessorType& /* value */) { \ + return WireFormatLite::k##DeclaredType##Size; \ + } + +GET_FIXED_CACHED_SIZE(DOUBLE, Double) +GET_FIXED_CACHED_SIZE(FLOAT, Float) +GET_FIXED_CACHED_SIZE(FIXED64, Fixed64) +GET_FIXED_CACHED_SIZE(FIXED32, Fixed32) +GET_FIXED_CACHED_SIZE(SFIXED64, SFixed64) +GET_FIXED_CACHED_SIZE(SFIXED32, SFixed32) +GET_FIXED_CACHED_SIZE(BOOL, Bool) + +#undef GET_FIXED_CACHED_SIZE + +template +inline uint8* MapTypeHandler::Write( + int field, const MapEntryAccessorType& value, uint8* ptr, + io::EpsCopyOutputStream* stream) { + ptr = stream->EnsureSpace(ptr); + return WireFormatLite::InternalWriteMessage(field, value, ptr, stream); +} + +#define WRITE_METHOD(FieldType, DeclaredType) \ + template \ + inline uint8* MapTypeHandler::Write( \ + int field, const MapEntryAccessorType& value, uint8* ptr, \ + io::EpsCopyOutputStream* stream) { \ + ptr = stream->EnsureSpace(ptr); \ + return stream->Write##DeclaredType(field, value, ptr); \ + } + +WRITE_METHOD(STRING, String) +WRITE_METHOD(BYTES, Bytes) + +#undef WRITE_METHOD +#define WRITE_METHOD(FieldType, DeclaredType) \ + template \ + inline uint8* MapTypeHandler::Write( \ + int field, const MapEntryAccessorType& value, uint8* ptr, \ + io::EpsCopyOutputStream* stream) { \ + ptr = stream->EnsureSpace(ptr); \ + return WireFormatLite::Write##DeclaredType##ToArray(field, value, ptr); \ + } + +WRITE_METHOD(INT64, Int64) +WRITE_METHOD(UINT64, UInt64) +WRITE_METHOD(INT32, Int32) +WRITE_METHOD(UINT32, UInt32) +WRITE_METHOD(SINT64, SInt64) +WRITE_METHOD(SINT32, SInt32) +WRITE_METHOD(ENUM, Enum) +WRITE_METHOD(DOUBLE, Double) +WRITE_METHOD(FLOAT, Float) +WRITE_METHOD(FIXED64, Fixed64) +WRITE_METHOD(FIXED32, Fixed32) +WRITE_METHOD(SFIXED64, SFixed64) +WRITE_METHOD(SFIXED32, SFixed32) +WRITE_METHOD(BOOL, Bool) + +#undef WRITE_METHOD + +template +inline bool MapTypeHandler::Read( + io::CodedInputStream* input, MapEntryAccessorType* value) { + return WireFormatLite::ReadMessageNoVirtual(input, value); +} + +template +inline bool MapTypeHandler::Read( + io::CodedInputStream* input, MapEntryAccessorType* value) { + return WireFormatLite::ReadString(input, value); +} + +template +inline bool MapTypeHandler::Read( + io::CodedInputStream* input, MapEntryAccessorType* value) { + return WireFormatLite::ReadBytes(input, value); +} + +template +const char* MapTypeHandler::Read( + const char* ptr, ParseContext* ctx, MapEntryAccessorType* value) { + return ctx->ParseMessage(value, ptr); +} + +template +const char* MapTypeHandler::Read( + const char* ptr, ParseContext* ctx, MapEntryAccessorType* value) { + int size = ReadSize(&ptr); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + return ctx->ReadString(ptr, size, value); +} + +template +const char* MapTypeHandler::Read( + const char* ptr, ParseContext* ctx, MapEntryAccessorType* value) { + int size = ReadSize(&ptr); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + return ctx->ReadString(ptr, size, value); +} + +inline const char* ReadINT64(const char* ptr, int64* value) { + return VarintParse(ptr, reinterpret_cast(value)); +} +inline const char* ReadUINT64(const char* ptr, uint64* value) { + return VarintParse(ptr, value); +} +inline const char* ReadINT32(const char* ptr, int32* value) { + return VarintParse(ptr, reinterpret_cast(value)); +} +inline const char* ReadUINT32(const char* ptr, uint32* value) { + return VarintParse(ptr, value); +} +inline const char* ReadSINT64(const char* ptr, int64* value) { + *value = ReadVarintZigZag64(&ptr); + return ptr; +} +inline const char* ReadSINT32(const char* ptr, int32* value) { + *value = ReadVarintZigZag32(&ptr); + return ptr; +} +template +inline const char* ReadENUM(const char* ptr, E* value) { + *value = static_cast(ReadVarint32(&ptr)); + return ptr; +} +inline const char* ReadBOOL(const char* ptr, bool* value) { + *value = static_cast(ReadVarint32(&ptr)); + return ptr; +} + +template +inline const char* ReadUnaligned(const char* ptr, F* value) { + *value = UnalignedLoad(ptr); + return ptr + sizeof(F); +} +inline const char* ReadFLOAT(const char* ptr, float* value) { + return ReadUnaligned(ptr, value); +} +inline const char* ReadDOUBLE(const char* ptr, double* value) { + return ReadUnaligned(ptr, value); +} +inline const char* ReadFIXED64(const char* ptr, uint64* value) { + return ReadUnaligned(ptr, value); +} +inline const char* ReadFIXED32(const char* ptr, uint32* value) { + return ReadUnaligned(ptr, value); +} +inline const char* ReadSFIXED64(const char* ptr, int64* value) { + return ReadUnaligned(ptr, value); +} +inline const char* ReadSFIXED32(const char* ptr, int32* value) { + return ReadUnaligned(ptr, value); +} + +#define READ_METHOD(FieldType) \ + template \ + inline bool MapTypeHandler::Read( \ + io::CodedInputStream* input, MapEntryAccessorType* value) { \ + return WireFormatLite::ReadPrimitive( \ + input, value); \ + } \ + template \ + const char* MapTypeHandler::Read( \ + const char* begin, ParseContext* ctx, MapEntryAccessorType* value) { \ + (void)ctx; \ + return Read##FieldType(begin, value); \ + } + +READ_METHOD(INT64) +READ_METHOD(UINT64) +READ_METHOD(INT32) +READ_METHOD(UINT32) +READ_METHOD(SINT64) +READ_METHOD(SINT32) +READ_METHOD(ENUM) +READ_METHOD(DOUBLE) +READ_METHOD(FLOAT) +READ_METHOD(FIXED64) +READ_METHOD(FIXED32) +READ_METHOD(SFIXED64) +READ_METHOD(SFIXED32) +READ_METHOD(BOOL) + +#undef READ_METHOD + +// Definition for message handler + +template +inline const Type& +MapTypeHandler::GetExternalReference( + const Type* value) { + return *value; +} + +template +inline size_t MapTypeHandler::SpaceUsedInMapEntryLong(const Type* value) { + return value->SpaceUsedLong(); +} + +template +inline void MapTypeHandler::Clear( + Type** value, Arena* /* arena */) { + if (*value != NULL) (*value)->Clear(); +} +template +inline void MapTypeHandler::Merge( + const Type& from, Type** to, Arena* /* arena */) { + (*to)->MergeFrom(from); +} + +template +void MapTypeHandler::DeleteNoArena( + const Type* ptr) { + delete ptr; +} + +template +constexpr auto MapTypeHandler::Constinit() + -> TypeOnMemory { + return nullptr; +} + +template +inline Type* MapTypeHandler::EnsureMutable( + Type** value, Arena* arena) { + if (*value == NULL) { + *value = MapArenaMessageCreator< + Type, + Arena::is_arena_constructable::type::value>::CreateMessage(arena); + } + return *value; +} + +template +inline const Type& +MapTypeHandler::DefaultIfNotInitialized( + const Type* value) { + return value != NULL ? *value : *Type::internal_default_instance(); +} + +template +inline bool MapTypeHandler::IsInitialized( + Type* value) { + return value ? value->IsInitialized() : false; +} + +// Definition for string/bytes handler + +#define STRING_OR_BYTES_HANDLER_FUNCTIONS(FieldType) \ + template \ + inline const typename MapTypeHandler::MapEntryAccessorType& \ + MapTypeHandler::GetExternalReference(const TypeOnMemory& value) { \ + return value.Get(); \ + } \ + template \ + inline size_t \ + MapTypeHandler::SpaceUsedInMapEntryLong(const TypeOnMemory& value) { \ + return sizeof(value); \ + } \ + template \ + inline void MapTypeHandler::Clear( \ + TypeOnMemory* value, Arena* /* arena */) { \ + value->ClearToEmpty(); \ + } \ + template \ + inline void MapTypeHandler::Merge( \ + const MapEntryAccessorType& from, TypeOnMemory* to, Arena* arena) { \ + to->Set(&internal::GetEmptyStringAlreadyInited(), from, arena); \ + } \ + template \ + void MapTypeHandler::DeleteNoArena( \ + TypeOnMemory& value) { \ + value.DestroyNoArena(&internal::GetEmptyStringAlreadyInited()); \ + } \ + template \ + constexpr auto \ + MapTypeHandler::Constinit() \ + ->TypeOnMemory { \ + return TypeOnMemory(&internal::fixed_address_empty_string); \ + } \ + template \ + inline typename MapTypeHandler::MapEntryAccessorType* \ + MapTypeHandler::EnsureMutable( \ + TypeOnMemory* value, Arena* arena) { \ + return value->Mutable(ArenaStringPtr::EmptyDefault{}, arena); \ + } \ + template \ + inline const typename MapTypeHandler::MapEntryAccessorType& \ + MapTypeHandler::DefaultIfNotInitialized(const TypeOnMemory& value) { \ + return value.Get(); \ + } \ + template \ + inline bool \ + MapTypeHandler::IsInitialized( \ + const TypeOnMemory& /* value */) { \ + return true; \ + } +STRING_OR_BYTES_HANDLER_FUNCTIONS(STRING) +STRING_OR_BYTES_HANDLER_FUNCTIONS(BYTES) +#undef STRING_OR_BYTES_HANDLER_FUNCTIONS + +#define PRIMITIVE_HANDLER_FUNCTIONS(FieldType) \ + template \ + inline const typename MapTypeHandler::MapEntryAccessorType& \ + MapTypeHandler::GetExternalReference(const TypeOnMemory& value) { \ + return value; \ + } \ + template \ + inline size_t MapTypeHandler:: \ + SpaceUsedInMapEntryLong(const TypeOnMemory& /* value */) { \ + return 0; \ + } \ + template \ + inline void MapTypeHandler::Clear( \ + TypeOnMemory* value, Arena* /* arena */) { \ + *value = 0; \ + } \ + template \ + inline void MapTypeHandler::Merge( \ + const MapEntryAccessorType& from, TypeOnMemory* to, \ + Arena* /* arena */) { \ + *to = from; \ + } \ + template \ + inline void MapTypeHandler::DeleteNoArena(TypeOnMemory& /* x */) {} \ + template \ + constexpr auto \ + MapTypeHandler::Constinit() \ + ->TypeOnMemory { \ + return 0; \ + } \ + template \ + inline typename MapTypeHandler::MapEntryAccessorType* \ + MapTypeHandler::EnsureMutable( \ + TypeOnMemory* value, Arena* /* arena */) { \ + return value; \ + } \ + template \ + inline const typename MapTypeHandler::MapEntryAccessorType& \ + MapTypeHandler::DefaultIfNotInitialized(const TypeOnMemory& value) { \ + return value; \ + } \ + template \ + inline bool \ + MapTypeHandler::IsInitialized( \ + const TypeOnMemory& /* value */) { \ + return true; \ + } +PRIMITIVE_HANDLER_FUNCTIONS(INT64) +PRIMITIVE_HANDLER_FUNCTIONS(UINT64) +PRIMITIVE_HANDLER_FUNCTIONS(INT32) +PRIMITIVE_HANDLER_FUNCTIONS(UINT32) +PRIMITIVE_HANDLER_FUNCTIONS(SINT64) +PRIMITIVE_HANDLER_FUNCTIONS(SINT32) +PRIMITIVE_HANDLER_FUNCTIONS(ENUM) +PRIMITIVE_HANDLER_FUNCTIONS(DOUBLE) +PRIMITIVE_HANDLER_FUNCTIONS(FLOAT) +PRIMITIVE_HANDLER_FUNCTIONS(FIXED64) +PRIMITIVE_HANDLER_FUNCTIONS(FIXED32) +PRIMITIVE_HANDLER_FUNCTIONS(SFIXED64) +PRIMITIVE_HANDLER_FUNCTIONS(SFIXED32) +PRIMITIVE_HANDLER_FUNCTIONS(BOOL) +#undef PRIMITIVE_HANDLER_FUNCTIONS + +} // namespace internal +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_TYPE_HANDLER_H__ diff --git a/external/include/google/protobuf/message.h b/external/include/google/protobuf/message.h new file mode 100644 index 0000000..df8e895 --- /dev/null +++ b/external/include/google/protobuf/message.h @@ -0,0 +1,1430 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Defines Message, the abstract interface implemented by non-lite +// protocol message objects. Although it's possible to implement this +// interface manually, most users will use the protocol compiler to +// generate implementations. +// +// Example usage: +// +// Say you have a message defined as: +// +// message Foo { +// optional string text = 1; +// repeated int32 numbers = 2; +// } +// +// Then, if you used the protocol compiler to generate a class from the above +// definition, you could use it like so: +// +// std::string data; // Will store a serialized version of the message. +// +// { +// // Create a message and serialize it. +// Foo foo; +// foo.set_text("Hello World!"); +// foo.add_numbers(1); +// foo.add_numbers(5); +// foo.add_numbers(42); +// +// foo.SerializeToString(&data); +// } +// +// { +// // Parse the serialized message and check that it contains the +// // correct data. +// Foo foo; +// foo.ParseFromString(data); +// +// assert(foo.text() == "Hello World!"); +// assert(foo.numbers_size() == 3); +// assert(foo.numbers(0) == 1); +// assert(foo.numbers(1) == 5); +// assert(foo.numbers(2) == 42); +// } +// +// { +// // Same as the last block, but do it dynamically via the Message +// // reflection interface. +// Message* foo = new Foo; +// const Descriptor* descriptor = foo->GetDescriptor(); +// +// // Get the descriptors for the fields we're interested in and verify +// // their types. +// const FieldDescriptor* text_field = descriptor->FindFieldByName("text"); +// assert(text_field != nullptr); +// assert(text_field->type() == FieldDescriptor::TYPE_STRING); +// assert(text_field->label() == FieldDescriptor::LABEL_OPTIONAL); +// const FieldDescriptor* numbers_field = descriptor-> +// FindFieldByName("numbers"); +// assert(numbers_field != nullptr); +// assert(numbers_field->type() == FieldDescriptor::TYPE_INT32); +// assert(numbers_field->label() == FieldDescriptor::LABEL_REPEATED); +// +// // Parse the message. +// foo->ParseFromString(data); +// +// // Use the reflection interface to examine the contents. +// const Reflection* reflection = foo->GetReflection(); +// assert(reflection->GetString(*foo, text_field) == "Hello World!"); +// assert(reflection->FieldSize(*foo, numbers_field) == 3); +// assert(reflection->GetRepeatedInt32(*foo, numbers_field, 0) == 1); +// assert(reflection->GetRepeatedInt32(*foo, numbers_field, 1) == 5); +// assert(reflection->GetRepeatedInt32(*foo, numbers_field, 2) == 42); +// +// delete foo; +// } + +#ifndef GOOGLE_PROTOBUF_MESSAGE_H__ +#define GOOGLE_PROTOBUF_MESSAGE_H__ + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + + +#define GOOGLE_PROTOBUF_HAS_ONEOF +#define GOOGLE_PROTOBUF_HAS_ARENAS + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +// Defined in this file. +class Message; +class Reflection; +class MessageFactory; + +// Defined in other files. +class AssignDescriptorsHelper; +class DynamicMessageFactory; +class GeneratedMessageReflectionTestHelper; +class MapKey; +class MapValueConstRef; +class MapValueRef; +class MapIterator; +class MapReflectionTester; + +namespace internal { +struct DescriptorTable; +class MapFieldBase; +class SwapFieldHelper; +} +class UnknownFieldSet; // unknown_field_set.h +namespace io { +class ZeroCopyInputStream; // zero_copy_stream.h +class ZeroCopyOutputStream; // zero_copy_stream.h +class CodedInputStream; // coded_stream.h +class CodedOutputStream; // coded_stream.h +} // namespace io +namespace python { +class MapReflectionFriend; // scalar_map_container.h +class MessageReflectionFriend; +} +namespace expr { +class CelMapReflectionFriend; // field_backed_map_impl.cc +} + +namespace internal { +class MapFieldPrinterHelper; // text_format.cc +} +namespace util { +class MessageDifferencer; +} + + +namespace internal { +class ReflectionAccessor; // message.cc +class ReflectionOps; // reflection_ops.h +class MapKeySorter; // wire_format.cc +class WireFormat; // wire_format.h +class MapFieldReflectionTest; // map_test.cc +} // namespace internal + +template +class RepeatedField; // repeated_field.h + +template +class RepeatedPtrField; // repeated_field.h + +// A container to hold message metadata. +struct Metadata { + const Descriptor* descriptor; + const Reflection* reflection; +}; + +namespace internal { +template +inline To* GetPointerAtOffset(Message* message, uint32 offset) { + return reinterpret_cast(reinterpret_cast(message) + offset); +} + +template +const To* GetConstPointerAtOffset(const Message* message, uint32 offset) { + return reinterpret_cast(reinterpret_cast(message) + + offset); +} + +template +const To& GetConstRefAtOffset(const Message& message, uint32 offset) { + return *GetConstPointerAtOffset(&message, offset); +} + +bool CreateUnknownEnumValues(const FieldDescriptor* field); +} // namespace internal + +// Abstract interface for protocol messages. +// +// See also MessageLite, which contains most every-day operations. Message +// adds descriptors and reflection on top of that. +// +// The methods of this class that are virtual but not pure-virtual have +// default implementations based on reflection. Message classes which are +// optimized for speed will want to override these with faster implementations, +// but classes optimized for code size may be happy with keeping them. See +// the optimize_for option in descriptor.proto. +// +// Users must not derive from this class. Only the protocol compiler and +// the internal library are allowed to create subclasses. +class PROTOBUF_EXPORT Message : public MessageLite { + public: + constexpr Message() {} + + // Basic Operations ------------------------------------------------ + + // Construct a new instance of the same type. Ownership is passed to the + // caller. (This is also defined in MessageLite, but is defined again here + // for return-type covariance.) + Message* New() const override = 0; + + // Construct a new instance on the arena. Ownership is passed to the caller + // if arena is a nullptr. Default implementation allows for API compatibility + // during the Arena transition. + Message* New(Arena* arena) const override { + Message* message = New(); + if (arena != nullptr) { + arena->Own(message); + } + return message; + } + + // Make this message into a copy of the given message. The given message + // must have the same descriptor, but need not necessarily be the same class. + // By default this is just implemented as "Clear(); MergeFrom(from);". + virtual void CopyFrom(const Message& from); + + // Merge the fields from the given message into this message. Singular + // fields will be overwritten, if specified in from, except for embedded + // messages which will be merged. Repeated fields will be concatenated. + // The given message must be of the same type as this message (i.e. the + // exact same class). + virtual void MergeFrom(const Message& from); + + // Verifies that IsInitialized() returns true. GOOGLE_CHECK-fails otherwise, with + // a nice error message. + void CheckInitialized() const; + + // Slowly build a list of all required fields that are not set. + // This is much, much slower than IsInitialized() as it is implemented + // purely via reflection. Generally, you should not call this unless you + // have already determined that an error exists by calling IsInitialized(). + void FindInitializationErrors(std::vector* errors) const; + + // Like FindInitializationErrors, but joins all the strings, delimited by + // commas, and returns them. + std::string InitializationErrorString() const override; + + // Clears all unknown fields from this message and all embedded messages. + // Normally, if unknown tag numbers are encountered when parsing a message, + // the tag and value are stored in the message's UnknownFieldSet and + // then written back out when the message is serialized. This allows servers + // which simply route messages to other servers to pass through messages + // that have new field definitions which they don't yet know about. However, + // this behavior can have security implications. To avoid it, call this + // method after parsing. + // + // See Reflection::GetUnknownFields() for more on unknown fields. + virtual void DiscardUnknownFields(); + + // Computes (an estimate of) the total number of bytes currently used for + // storing the message in memory. The default implementation calls the + // Reflection object's SpaceUsed() method. + // + // SpaceUsed() is noticeably slower than ByteSize(), as it is implemented + // using reflection (rather than the generated code implementation for + // ByteSize()). Like ByteSize(), its CPU time is linear in the number of + // fields defined for the proto. + virtual size_t SpaceUsedLong() const; + + PROTOBUF_DEPRECATED_MSG("Please use SpaceUsedLong() instead") + int SpaceUsed() const { return internal::ToIntSize(SpaceUsedLong()); } + + // Debugging & Testing---------------------------------------------- + + // Generates a human readable form of this message, useful for debugging + // and other purposes. + std::string DebugString() const; + // Like DebugString(), but with less whitespace. + std::string ShortDebugString() const; + // Like DebugString(), but do not escape UTF-8 byte sequences. + std::string Utf8DebugString() const; + // Convenience function useful in GDB. Prints DebugString() to stdout. + void PrintDebugString() const; + + // Reflection-based methods ---------------------------------------- + // These methods are pure-virtual in MessageLite, but Message provides + // reflection-based default implementations. + + std::string GetTypeName() const override; + void Clear() override; + + // Returns whether all required fields have been set. Note that required + // fields no longer exist starting in proto3. + bool IsInitialized() const override; + + void CheckTypeAndMergeFrom(const MessageLite& other) override; + // Reflective parser + const char* _InternalParse(const char* ptr, + internal::ParseContext* ctx) override; + size_t ByteSizeLong() const override; + uint8* _InternalSerialize(uint8* target, + io::EpsCopyOutputStream* stream) const override; + + private: + // This is called only by the default implementation of ByteSize(), to + // update the cached size. If you override ByteSize(), you do not need + // to override this. If you do not override ByteSize(), you MUST override + // this; the default implementation will crash. + // + // The method is private because subclasses should never call it; only + // override it. Yes, C++ lets you do that. Crazy, huh? + virtual void SetCachedSize(int size) const; + + public: + // Introspection --------------------------------------------------- + + + // Get a non-owning pointer to a Descriptor for this message's type. This + // describes what fields the message contains, the types of those fields, etc. + // This object remains property of the Message. + const Descriptor* GetDescriptor() const { return GetMetadata().descriptor; } + + // Get a non-owning pointer to the Reflection interface for this Message, + // which can be used to read and modify the fields of the Message dynamically + // (in other words, without knowing the message type at compile time). This + // object remains property of the Message. + const Reflection* GetReflection() const { return GetMetadata().reflection; } + + protected: + // Get a struct containing the metadata for the Message, which is used in turn + // to implement GetDescriptor() and GetReflection() above. + virtual Metadata GetMetadata() const = 0; + + struct ClassData { + // Note: The order of arguments (to, then from) is chosen so that the ABI + // of this function is the same as the CopyFrom method. That is, the + // hidden "this" parameter comes first. + void (*copy_to_from)(Message* to, const Message& from_msg); + void (*merge_to_from)(Message* to, const Message& from_msg); + }; + // GetClassData() returns a pointer to a ClassData struct which + // exists in global memory and is unique to each subclass. This uniqueness + // property is used in order to quickly determine whether two messages are + // of the same type. + // TODO(jorg): change to pure virtual + virtual const ClassData* GetClassData() const { return nullptr; } + + // CopyWithSizeCheck calls Clear() and then MergeFrom(), and in debug + // builds, checks that calling Clear() on the destination message doesn't + // alter the size of the source. It assumes the messages are known to be + // of the same type, and thus uses GetClassData(). + static void CopyWithSizeCheck(Message* to, const Message& from); + + inline explicit Message(Arena* arena, bool is_message_owned = false) + : MessageLite(arena, is_message_owned) {} + + + protected: + static uint64 GetInvariantPerBuild(uint64 salt); + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Message); +}; + +namespace internal { +// Forward-declare interfaces used to implement RepeatedFieldRef. +// These are protobuf internals that users shouldn't care about. +class RepeatedFieldAccessor; +} // namespace internal + +// Forward-declare RepeatedFieldRef templates. The second type parameter is +// used for SFINAE tricks. Users should ignore it. +template +class RepeatedFieldRef; + +template +class MutableRepeatedFieldRef; + +// This interface contains methods that can be used to dynamically access +// and modify the fields of a protocol message. Their semantics are +// similar to the accessors the protocol compiler generates. +// +// To get the Reflection for a given Message, call Message::GetReflection(). +// +// This interface is separate from Message only for efficiency reasons; +// the vast majority of implementations of Message will share the same +// implementation of Reflection (GeneratedMessageReflection, +// defined in generated_message.h), and all Messages of a particular class +// should share the same Reflection object (though you should not rely on +// the latter fact). +// +// There are several ways that these methods can be used incorrectly. For +// example, any of the following conditions will lead to undefined +// results (probably assertion failures): +// - The FieldDescriptor is not a field of this message type. +// - The method called is not appropriate for the field's type. For +// each field type in FieldDescriptor::TYPE_*, there is only one +// Get*() method, one Set*() method, and one Add*() method that is +// valid for that type. It should be obvious which (except maybe +// for TYPE_BYTES, which are represented using strings in C++). +// - A Get*() or Set*() method for singular fields is called on a repeated +// field. +// - GetRepeated*(), SetRepeated*(), or Add*() is called on a non-repeated +// field. +// - The Message object passed to any method is not of the right type for +// this Reflection object (i.e. message.GetReflection() != reflection). +// +// You might wonder why there is not any abstract representation for a field +// of arbitrary type. E.g., why isn't there just a "GetField()" method that +// returns "const Field&", where "Field" is some class with accessors like +// "GetInt32Value()". The problem is that someone would have to deal with +// allocating these Field objects. For generated message classes, having to +// allocate space for an additional object to wrap every field would at least +// double the message's memory footprint, probably worse. Allocating the +// objects on-demand, on the other hand, would be expensive and prone to +// memory leaks. So, instead we ended up with this flat interface. +class PROTOBUF_EXPORT Reflection final { + public: + // Get the UnknownFieldSet for the message. This contains fields which + // were seen when the Message was parsed but were not recognized according + // to the Message's definition. + const UnknownFieldSet& GetUnknownFields(const Message& message) const; + // Get a mutable pointer to the UnknownFieldSet for the message. This + // contains fields which were seen when the Message was parsed but were not + // recognized according to the Message's definition. + UnknownFieldSet* MutableUnknownFields(Message* message) const; + + // Estimate the amount of memory used by the message object. + size_t SpaceUsedLong(const Message& message) const; + + PROTOBUF_DEPRECATED_MSG("Please use SpaceUsedLong() instead") + int SpaceUsed(const Message& message) const { + return internal::ToIntSize(SpaceUsedLong(message)); + } + + // Check if the given non-repeated field is set. + bool HasField(const Message& message, const FieldDescriptor* field) const; + + // Get the number of elements of a repeated field. + int FieldSize(const Message& message, const FieldDescriptor* field) const; + + // Clear the value of a field, so that HasField() returns false or + // FieldSize() returns zero. + void ClearField(Message* message, const FieldDescriptor* field) const; + + // Check if the oneof is set. Returns true if any field in oneof + // is set, false otherwise. + bool HasOneof(const Message& message, + const OneofDescriptor* oneof_descriptor) const; + + void ClearOneof(Message* message, + const OneofDescriptor* oneof_descriptor) const; + + // Returns the field descriptor if the oneof is set. nullptr otherwise. + const FieldDescriptor* GetOneofFieldDescriptor( + const Message& message, const OneofDescriptor* oneof_descriptor) const; + + // Removes the last element of a repeated field. + // We don't provide a way to remove any element other than the last + // because it invites inefficient use, such as O(n^2) filtering loops + // that should have been O(n). If you want to remove an element other + // than the last, the best way to do it is to re-arrange the elements + // (using Swap()) so that the one you want removed is at the end, then + // call RemoveLast(). + void RemoveLast(Message* message, const FieldDescriptor* field) const; + // Removes the last element of a repeated message field, and returns the + // pointer to the caller. Caller takes ownership of the returned pointer. + PROTOBUF_MUST_USE_RESULT Message* ReleaseLast( + Message* message, const FieldDescriptor* field) const; + + // Swap the complete contents of two messages. + void Swap(Message* message1, Message* message2) const; + + // Swap fields listed in fields vector of two messages. + void SwapFields(Message* message1, Message* message2, + const std::vector& fields) const; + + // Swap two elements of a repeated field. + void SwapElements(Message* message, const FieldDescriptor* field, int index1, + int index2) const; + + // List all fields of the message which are currently set, except for unknown + // fields, but including extension known to the parser (i.e. compiled in). + // Singular fields will only be listed if HasField(field) would return true + // and repeated fields will only be listed if FieldSize(field) would return + // non-zero. Fields (both normal fields and extension fields) will be listed + // ordered by field number. + // Use Reflection::GetUnknownFields() or message.unknown_fields() to also get + // access to fields/extensions unknown to the parser. + void ListFields(const Message& message, + std::vector* output) const; + + // Singular field getters ------------------------------------------ + // These get the value of a non-repeated field. They return the default + // value for fields that aren't set. + + int32 GetInt32(const Message& message, const FieldDescriptor* field) const; + int64 GetInt64(const Message& message, const FieldDescriptor* field) const; + uint32 GetUInt32(const Message& message, const FieldDescriptor* field) const; + uint64 GetUInt64(const Message& message, const FieldDescriptor* field) const; + float GetFloat(const Message& message, const FieldDescriptor* field) const; + double GetDouble(const Message& message, const FieldDescriptor* field) const; + bool GetBool(const Message& message, const FieldDescriptor* field) const; + std::string GetString(const Message& message, + const FieldDescriptor* field) const; + const EnumValueDescriptor* GetEnum(const Message& message, + const FieldDescriptor* field) const; + + // GetEnumValue() returns an enum field's value as an integer rather than + // an EnumValueDescriptor*. If the integer value does not correspond to a + // known value descriptor, a new value descriptor is created. (Such a value + // will only be present when the new unknown-enum-value semantics are enabled + // for a message.) + int GetEnumValue(const Message& message, const FieldDescriptor* field) const; + + // See MutableMessage() for the meaning of the "factory" parameter. + const Message& GetMessage(const Message& message, + const FieldDescriptor* field, + MessageFactory* factory = nullptr) const; + + // Get a string value without copying, if possible. + // + // GetString() necessarily returns a copy of the string. This can be + // inefficient when the std::string is already stored in a std::string object + // in the underlying message. GetStringReference() will return a reference to + // the underlying std::string in this case. Otherwise, it will copy the + // string into *scratch and return that. + // + // Note: It is perfectly reasonable and useful to write code like: + // str = reflection->GetStringReference(message, field, &str); + // This line would ensure that only one copy of the string is made + // regardless of the field's underlying representation. When initializing + // a newly-constructed string, though, it's just as fast and more + // readable to use code like: + // std::string str = reflection->GetString(message, field); + const std::string& GetStringReference(const Message& message, + const FieldDescriptor* field, + std::string* scratch) const; + + + // Singular field mutators ----------------------------------------- + // These mutate the value of a non-repeated field. + + void SetInt32(Message* message, const FieldDescriptor* field, + int32 value) const; + void SetInt64(Message* message, const FieldDescriptor* field, + int64 value) const; + void SetUInt32(Message* message, const FieldDescriptor* field, + uint32 value) const; + void SetUInt64(Message* message, const FieldDescriptor* field, + uint64 value) const; + void SetFloat(Message* message, const FieldDescriptor* field, + float value) const; + void SetDouble(Message* message, const FieldDescriptor* field, + double value) const; + void SetBool(Message* message, const FieldDescriptor* field, + bool value) const; + void SetString(Message* message, const FieldDescriptor* field, + std::string value) const; + void SetEnum(Message* message, const FieldDescriptor* field, + const EnumValueDescriptor* value) const; + // Set an enum field's value with an integer rather than EnumValueDescriptor. + // For proto3 this is just setting the enum field to the value specified, for + // proto2 it's more complicated. If value is a known enum value the field is + // set as usual. If the value is unknown then it is added to the unknown field + // set. Note this matches the behavior of parsing unknown enum values. + // If multiple calls with unknown values happen than they are all added to the + // unknown field set in order of the calls. + void SetEnumValue(Message* message, const FieldDescriptor* field, + int value) const; + + // Get a mutable pointer to a field with a message type. If a MessageFactory + // is provided, it will be used to construct instances of the sub-message; + // otherwise, the default factory is used. If the field is an extension that + // does not live in the same pool as the containing message's descriptor (e.g. + // it lives in an overlay pool), then a MessageFactory must be provided. + // If you have no idea what that meant, then you probably don't need to worry + // about it (don't provide a MessageFactory). WARNING: If the + // FieldDescriptor is for a compiled-in extension, then + // factory->GetPrototype(field->message_type()) MUST return an instance of + // the compiled-in class for this type, NOT DynamicMessage. + Message* MutableMessage(Message* message, const FieldDescriptor* field, + MessageFactory* factory = nullptr) const; + + // Replaces the message specified by 'field' with the already-allocated object + // sub_message, passing ownership to the message. If the field contained a + // message, that message is deleted. If sub_message is nullptr, the field is + // cleared. + void SetAllocatedMessage(Message* message, Message* sub_message, + const FieldDescriptor* field) const; + + // Similar to `SetAllocatedMessage`, but omits all internal safety and + // ownership checks. This method should only be used when the objects are on + // the same arena or paired with a call to `UnsafeArenaReleaseMessage`. + void UnsafeArenaSetAllocatedMessage(Message* message, Message* sub_message, + const FieldDescriptor* field) const; + + // Releases the message specified by 'field' and returns the pointer, + // ReleaseMessage() will return the message the message object if it exists. + // Otherwise, it may or may not return nullptr. In any case, if the return + // value is non-null, the caller takes ownership of the pointer. + // If the field existed (HasField() is true), then the returned pointer will + // be the same as the pointer returned by MutableMessage(). + // This function has the same effect as ClearField(). + PROTOBUF_MUST_USE_RESULT Message* ReleaseMessage( + Message* message, const FieldDescriptor* field, + MessageFactory* factory = nullptr) const; + + // Similar to `ReleaseMessage`, but omits all internal safety and ownership + // checks. This method should only be used when the objects are on the same + // arena or paired with a call to `UnsafeArenaSetAllocatedMessage`. + Message* UnsafeArenaReleaseMessage(Message* message, + const FieldDescriptor* field, + MessageFactory* factory = nullptr) const; + + + // Repeated field getters ------------------------------------------ + // These get the value of one element of a repeated field. + + int32 GetRepeatedInt32(const Message& message, const FieldDescriptor* field, + int index) const; + int64 GetRepeatedInt64(const Message& message, const FieldDescriptor* field, + int index) const; + uint32 GetRepeatedUInt32(const Message& message, const FieldDescriptor* field, + int index) const; + uint64 GetRepeatedUInt64(const Message& message, const FieldDescriptor* field, + int index) const; + float GetRepeatedFloat(const Message& message, const FieldDescriptor* field, + int index) const; + double GetRepeatedDouble(const Message& message, const FieldDescriptor* field, + int index) const; + bool GetRepeatedBool(const Message& message, const FieldDescriptor* field, + int index) const; + std::string GetRepeatedString(const Message& message, + const FieldDescriptor* field, int index) const; + const EnumValueDescriptor* GetRepeatedEnum(const Message& message, + const FieldDescriptor* field, + int index) const; + // GetRepeatedEnumValue() returns an enum field's value as an integer rather + // than an EnumValueDescriptor*. If the integer value does not correspond to a + // known value descriptor, a new value descriptor is created. (Such a value + // will only be present when the new unknown-enum-value semantics are enabled + // for a message.) + int GetRepeatedEnumValue(const Message& message, const FieldDescriptor* field, + int index) const; + const Message& GetRepeatedMessage(const Message& message, + const FieldDescriptor* field, + int index) const; + + // See GetStringReference(), above. + const std::string& GetRepeatedStringReference(const Message& message, + const FieldDescriptor* field, + int index, + std::string* scratch) const; + + + // Repeated field mutators ----------------------------------------- + // These mutate the value of one element of a repeated field. + + void SetRepeatedInt32(Message* message, const FieldDescriptor* field, + int index, int32 value) const; + void SetRepeatedInt64(Message* message, const FieldDescriptor* field, + int index, int64 value) const; + void SetRepeatedUInt32(Message* message, const FieldDescriptor* field, + int index, uint32 value) const; + void SetRepeatedUInt64(Message* message, const FieldDescriptor* field, + int index, uint64 value) const; + void SetRepeatedFloat(Message* message, const FieldDescriptor* field, + int index, float value) const; + void SetRepeatedDouble(Message* message, const FieldDescriptor* field, + int index, double value) const; + void SetRepeatedBool(Message* message, const FieldDescriptor* field, + int index, bool value) const; + void SetRepeatedString(Message* message, const FieldDescriptor* field, + int index, std::string value) const; + void SetRepeatedEnum(Message* message, const FieldDescriptor* field, + int index, const EnumValueDescriptor* value) const; + // Set an enum field's value with an integer rather than EnumValueDescriptor. + // For proto3 this is just setting the enum field to the value specified, for + // proto2 it's more complicated. If value is a known enum value the field is + // set as usual. If the value is unknown then it is added to the unknown field + // set. Note this matches the behavior of parsing unknown enum values. + // If multiple calls with unknown values happen than they are all added to the + // unknown field set in order of the calls. + void SetRepeatedEnumValue(Message* message, const FieldDescriptor* field, + int index, int value) const; + // Get a mutable pointer to an element of a repeated field with a message + // type. + Message* MutableRepeatedMessage(Message* message, + const FieldDescriptor* field, + int index) const; + + + // Repeated field adders ------------------------------------------- + // These add an element to a repeated field. + + void AddInt32(Message* message, const FieldDescriptor* field, + int32 value) const; + void AddInt64(Message* message, const FieldDescriptor* field, + int64 value) const; + void AddUInt32(Message* message, const FieldDescriptor* field, + uint32 value) const; + void AddUInt64(Message* message, const FieldDescriptor* field, + uint64 value) const; + void AddFloat(Message* message, const FieldDescriptor* field, + float value) const; + void AddDouble(Message* message, const FieldDescriptor* field, + double value) const; + void AddBool(Message* message, const FieldDescriptor* field, + bool value) const; + void AddString(Message* message, const FieldDescriptor* field, + std::string value) const; + void AddEnum(Message* message, const FieldDescriptor* field, + const EnumValueDescriptor* value) const; + // Add an integer value to a repeated enum field rather than + // EnumValueDescriptor. For proto3 this is just setting the enum field to the + // value specified, for proto2 it's more complicated. If value is a known enum + // value the field is set as usual. If the value is unknown then it is added + // to the unknown field set. Note this matches the behavior of parsing unknown + // enum values. If multiple calls with unknown values happen than they are all + // added to the unknown field set in order of the calls. + void AddEnumValue(Message* message, const FieldDescriptor* field, + int value) const; + // See MutableMessage() for comments on the "factory" parameter. + Message* AddMessage(Message* message, const FieldDescriptor* field, + MessageFactory* factory = nullptr) const; + + // Appends an already-allocated object 'new_entry' to the repeated field + // specified by 'field' passing ownership to the message. + void AddAllocatedMessage(Message* message, const FieldDescriptor* field, + Message* new_entry) const; + + + // Get a RepeatedFieldRef object that can be used to read the underlying + // repeated field. The type parameter T must be set according to the + // field's cpp type. The following table shows the mapping from cpp type + // to acceptable T. + // + // field->cpp_type() T + // CPPTYPE_INT32 int32 + // CPPTYPE_UINT32 uint32 + // CPPTYPE_INT64 int64 + // CPPTYPE_UINT64 uint64 + // CPPTYPE_DOUBLE double + // CPPTYPE_FLOAT float + // CPPTYPE_BOOL bool + // CPPTYPE_ENUM generated enum type or int32 + // CPPTYPE_STRING std::string + // CPPTYPE_MESSAGE generated message type or google::protobuf::Message + // + // A RepeatedFieldRef object can be copied and the resulted object will point + // to the same repeated field in the same message. The object can be used as + // long as the message is not destroyed. + // + // Note that to use this method users need to include the header file + // "reflection.h" (which defines the RepeatedFieldRef class templates). + template + RepeatedFieldRef GetRepeatedFieldRef(const Message& message, + const FieldDescriptor* field) const; + + // Like GetRepeatedFieldRef() but return an object that can also be used + // manipulate the underlying repeated field. + template + MutableRepeatedFieldRef GetMutableRepeatedFieldRef( + Message* message, const FieldDescriptor* field) const; + + // DEPRECATED. Please use Get(Mutable)RepeatedFieldRef() for repeated field + // access. The following repeated field accessors will be removed in the + // future. + // + // Repeated field accessors ------------------------------------------------- + // The methods above, e.g. GetRepeatedInt32(msg, fd, index), provide singular + // access to the data in a RepeatedField. The methods below provide aggregate + // access by exposing the RepeatedField object itself with the Message. + // Applying these templates to inappropriate types will lead to an undefined + // reference at link time (e.g. GetRepeatedField<***double>), or possibly a + // template matching error at compile time (e.g. GetRepeatedPtrField). + // + // Usage example: my_doubs = refl->GetRepeatedField(msg, fd); + + // DEPRECATED. Please use GetRepeatedFieldRef(). + // + // for T = Cord and all protobuf scalar types except enums. + template + PROTOBUF_DEPRECATED_MSG("Please use GetRepeatedFieldRef() instead") + const RepeatedField& GetRepeatedField(const Message& msg, + const FieldDescriptor* d) const { + return GetRepeatedFieldInternal(msg, d); + } + + // DEPRECATED. Please use GetMutableRepeatedFieldRef(). + // + // for T = Cord and all protobuf scalar types except enums. + template + PROTOBUF_DEPRECATED_MSG("Please use GetMutableRepeatedFieldRef() instead") + RepeatedField* MutableRepeatedField(Message* msg, + const FieldDescriptor* d) const { + return MutableRepeatedFieldInternal(msg, d); + } + + // DEPRECATED. Please use GetRepeatedFieldRef(). + // + // for T = std::string, google::protobuf::internal::StringPieceField + // google::protobuf::Message & descendants. + template + PROTOBUF_DEPRECATED_MSG("Please use GetRepeatedFieldRef() instead") + const RepeatedPtrField& GetRepeatedPtrField( + const Message& msg, const FieldDescriptor* d) const { + return GetRepeatedPtrFieldInternal(msg, d); + } + + // DEPRECATED. Please use GetMutableRepeatedFieldRef(). + // + // for T = std::string, google::protobuf::internal::StringPieceField + // google::protobuf::Message & descendants. + template + PROTOBUF_DEPRECATED_MSG("Please use GetMutableRepeatedFieldRef() instead") + RepeatedPtrField* MutableRepeatedPtrField(Message* msg, + const FieldDescriptor* d) const { + return MutableRepeatedPtrFieldInternal(msg, d); + } + + // Extensions ---------------------------------------------------------------- + + // Try to find an extension of this message type by fully-qualified field + // name. Returns nullptr if no extension is known for this name or number. + const FieldDescriptor* FindKnownExtensionByName( + const std::string& name) const; + + // Try to find an extension of this message type by field number. + // Returns nullptr if no extension is known for this name or number. + const FieldDescriptor* FindKnownExtensionByNumber(int number) const; + + // Feature Flags ------------------------------------------------------------- + + // Does this message support storing arbitrary integer values in enum fields? + // If |true|, GetEnumValue/SetEnumValue and associated repeated-field versions + // take arbitrary integer values, and the legacy GetEnum() getter will + // dynamically create an EnumValueDescriptor for any integer value without + // one. If |false|, setting an unknown enum value via the integer-based + // setters results in undefined behavior (in practice, GOOGLE_DCHECK-fails). + // + // Generic code that uses reflection to handle messages with enum fields + // should check this flag before using the integer-based setter, and either + // downgrade to a compatible value or use the UnknownFieldSet if not. For + // example: + // + // int new_value = GetValueFromApplicationLogic(); + // if (reflection->SupportsUnknownEnumValues()) { + // reflection->SetEnumValue(message, field, new_value); + // } else { + // if (field_descriptor->enum_type()-> + // FindValueByNumber(new_value) != nullptr) { + // reflection->SetEnumValue(message, field, new_value); + // } else if (emit_unknown_enum_values) { + // reflection->MutableUnknownFields(message)->AddVarint( + // field->number(), new_value); + // } else { + // // convert value to a compatible/default value. + // new_value = CompatibleDowngrade(new_value); + // reflection->SetEnumValue(message, field, new_value); + // } + // } + bool SupportsUnknownEnumValues() const; + + // Returns the MessageFactory associated with this message. This can be + // useful for determining if a message is a generated message or not, for + // example: + // if (message->GetReflection()->GetMessageFactory() == + // google::protobuf::MessageFactory::generated_factory()) { + // // This is a generated message. + // } + // It can also be used to create more messages of this type, though + // Message::New() is an easier way to accomplish this. + MessageFactory* GetMessageFactory() const; + + private: + template + const RepeatedField& GetRepeatedFieldInternal( + const Message& message, const FieldDescriptor* field) const; + template + RepeatedField* MutableRepeatedFieldInternal( + Message* message, const FieldDescriptor* field) const; + template + const RepeatedPtrField& GetRepeatedPtrFieldInternal( + const Message& message, const FieldDescriptor* field) const; + template + RepeatedPtrField* MutableRepeatedPtrFieldInternal( + Message* message, const FieldDescriptor* field) const; + // Obtain a pointer to a Repeated Field Structure and do some type checking: + // on field->cpp_type(), + // on field->field_option().ctype() (if ctype >= 0) + // of field->message_type() (if message_type != nullptr). + // We use 2 routine rather than 4 (const vs mutable) x (scalar vs pointer). + void* MutableRawRepeatedField(Message* message, const FieldDescriptor* field, + FieldDescriptor::CppType, int ctype, + const Descriptor* message_type) const; + + const void* GetRawRepeatedField(const Message& message, + const FieldDescriptor* field, + FieldDescriptor::CppType cpptype, int ctype, + const Descriptor* message_type) const; + + // The following methods are used to implement (Mutable)RepeatedFieldRef. + // A Ref object will store a raw pointer to the repeated field data (obtained + // from RepeatedFieldData()) and a pointer to a Accessor (obtained from + // RepeatedFieldAccessor) which will be used to access the raw data. + + // Returns a raw pointer to the repeated field + // + // "cpp_type" and "message_type" are deduced from the type parameter T passed + // to Get(Mutable)RepeatedFieldRef. If T is a generated message type, + // "message_type" should be set to its descriptor. Otherwise "message_type" + // should be set to nullptr. Implementations of this method should check + // whether "cpp_type"/"message_type" is consistent with the actual type of the + // field. We use 1 routine rather than 2 (const vs mutable) because it is + // protected and it doesn't change the message. + void* RepeatedFieldData(Message* message, const FieldDescriptor* field, + FieldDescriptor::CppType cpp_type, + const Descriptor* message_type) const; + + // The returned pointer should point to a singleton instance which implements + // the RepeatedFieldAccessor interface. + const internal::RepeatedFieldAccessor* RepeatedFieldAccessor( + const FieldDescriptor* field) const; + + // Lists all fields of the message which are currently set, except for unknown + // fields and stripped fields. See ListFields for details. + void ListFieldsOmitStripped( + const Message& message, + std::vector* output) const; + + bool IsMessageStripped(const Descriptor* descriptor) const { + return schema_.IsMessageStripped(descriptor); + } + + friend class TextFormat; + + void ListFieldsMayFailOnStripped( + const Message& message, bool should_fail, + std::vector* output) const; + + // Returns true if the message field is backed by a LazyField. + // + // A message field may be backed by a LazyField without the user annotation + // ([lazy = true]). While the user-annotated LazyField is lazily verified on + // first touch (i.e. failure on access rather than parsing if the LazyField is + // not initialized), the inferred LazyField is eagerly verified to avoid lazy + // parsing error at the cost of lower efficiency. When reflecting a message + // field, use this API instead of checking field->options().lazy(). + bool IsLazyField(const FieldDescriptor* field) const { + return IsLazilyVerifiedLazyField(field) || + IsEagerlyVerifiedLazyField(field); + } + + bool IsLazilyVerifiedLazyField(const FieldDescriptor* field) const; + bool IsEagerlyVerifiedLazyField(const FieldDescriptor* field) const; + + friend class FastReflectionMessageMutator; + + const Descriptor* const descriptor_; + const internal::ReflectionSchema schema_; + const DescriptorPool* const descriptor_pool_; + MessageFactory* const message_factory_; + + // Last non weak field index. This is an optimization when most weak fields + // are at the end of the containing message. If a message proto doesn't + // contain weak fields, then this field equals descriptor_->field_count(). + int last_non_weak_field_index_; + + template + friend class RepeatedFieldRef; + template + friend class MutableRepeatedFieldRef; + friend class ::PROTOBUF_NAMESPACE_ID::MessageLayoutInspector; + friend class ::PROTOBUF_NAMESPACE_ID::AssignDescriptorsHelper; + friend class DynamicMessageFactory; + friend class GeneratedMessageReflectionTestHelper; + friend class python::MapReflectionFriend; + friend class python::MessageReflectionFriend; + friend class util::MessageDifferencer; +#define GOOGLE_PROTOBUF_HAS_CEL_MAP_REFLECTION_FRIEND + friend class expr::CelMapReflectionFriend; + friend class internal::MapFieldReflectionTest; + friend class internal::MapKeySorter; + friend class internal::WireFormat; + friend class internal::ReflectionOps; + friend class internal::SwapFieldHelper; + // Needed for implementing text format for map. + friend class internal::MapFieldPrinterHelper; + + Reflection(const Descriptor* descriptor, + const internal::ReflectionSchema& schema, + const DescriptorPool* pool, MessageFactory* factory); + + // Special version for specialized implementations of string. We can't + // call MutableRawRepeatedField directly here because we don't have access to + // FieldOptions::* which are defined in descriptor.pb.h. Including that + // file here is not possible because it would cause a circular include cycle. + // We use 1 routine rather than 2 (const vs mutable) because it is private + // and mutable a repeated string field doesn't change the message. + void* MutableRawRepeatedString(Message* message, const FieldDescriptor* field, + bool is_string) const; + + friend class MapReflectionTester; + // Returns true if key is in map. Returns false if key is not in map field. + bool ContainsMapKey(const Message& message, const FieldDescriptor* field, + const MapKey& key) const; + + // If key is in map field: Saves the value pointer to val and returns + // false. If key in not in map field: Insert the key into map, saves + // value pointer to val and returns true. Users are able to modify the + // map value by MapValueRef. + bool InsertOrLookupMapValue(Message* message, const FieldDescriptor* field, + const MapKey& key, MapValueRef* val) const; + + // If key is in map field: Saves the value pointer to val and returns true. + // Returns false if key is not in map field. Users are NOT able to modify + // the value by MapValueConstRef. + bool LookupMapValue(const Message& message, const FieldDescriptor* field, + const MapKey& key, MapValueConstRef* val) const; + bool LookupMapValue(const Message&, const FieldDescriptor*, const MapKey&, + MapValueRef*) const = delete; + + // Delete and returns true if key is in the map field. Returns false + // otherwise. + bool DeleteMapValue(Message* message, const FieldDescriptor* field, + const MapKey& key) const; + + // Returns a MapIterator referring to the first element in the map field. + // If the map field is empty, this function returns the same as + // reflection::MapEnd. Mutation to the field may invalidate the iterator. + MapIterator MapBegin(Message* message, const FieldDescriptor* field) const; + + // Returns a MapIterator referring to the theoretical element that would + // follow the last element in the map field. It does not point to any + // real element. Mutation to the field may invalidate the iterator. + MapIterator MapEnd(Message* message, const FieldDescriptor* field) const; + + // Get the number of pair of a map field. The result may be + // different from FieldSize which can have duplicate keys. + int MapSize(const Message& message, const FieldDescriptor* field) const; + + // Help method for MapIterator. + friend class MapIterator; + friend class WireFormatForMapFieldTest; + internal::MapFieldBase* MutableMapData(Message* message, + const FieldDescriptor* field) const; + + const internal::MapFieldBase* GetMapData(const Message& message, + const FieldDescriptor* field) const; + + template + const T& GetRawNonOneof(const Message& message, + const FieldDescriptor* field) const; + template + T* MutableRawNonOneof(Message* message, const FieldDescriptor* field) const; + + template + const Type& GetRaw(const Message& message, + const FieldDescriptor* field) const; + template + inline Type* MutableRaw(Message* message, const FieldDescriptor* field) const; + template + const Type& DefaultRaw(const FieldDescriptor* field) const; + + const Message* GetDefaultMessageInstance(const FieldDescriptor* field) const; + + inline const uint32* GetHasBits(const Message& message) const; + inline uint32* MutableHasBits(Message* message) const; + inline uint32 GetOneofCase(const Message& message, + const OneofDescriptor* oneof_descriptor) const; + inline uint32* MutableOneofCase( + Message* message, const OneofDescriptor* oneof_descriptor) const; + inline bool HasExtensionSet(const Message& /* message */) const { + return schema_.HasExtensionSet(); + } + const internal::ExtensionSet& GetExtensionSet(const Message& message) const; + internal::ExtensionSet* MutableExtensionSet(Message* message) const; + + inline const internal::InternalMetadata& GetInternalMetadata( + const Message& message) const; + + internal::InternalMetadata* MutableInternalMetadata(Message* message) const; + + inline bool HasBit(const Message& message, + const FieldDescriptor* field) const; + inline void SetBit(Message* message, const FieldDescriptor* field) const; + inline void ClearBit(Message* message, const FieldDescriptor* field) const; + inline void SwapBit(Message* message1, Message* message2, + const FieldDescriptor* field) const; + + // Shallow-swap fields listed in fields vector of two messages. It is the + // caller's responsibility to make sure shallow swap is safe. + void UnsafeShallowSwapFields( + Message* message1, Message* message2, + const std::vector& fields) const; + + // This function only swaps the field. Should swap corresponding has_bit + // before or after using this function. + void SwapField(Message* message1, Message* message2, + const FieldDescriptor* field) const; + + // Unsafe but shallow version of SwapField. + void UnsafeShallowSwapField(Message* message1, Message* message2, + const FieldDescriptor* field) const; + + template + void SwapFieldsImpl(Message* message1, Message* message2, + const std::vector& fields) const; + + void SwapOneofField(Message* message1, Message* message2, + const OneofDescriptor* oneof_descriptor) const; + + // Unsafe but shallow version of SwapOneofField. + void UnsafeShallowSwapOneofField( + Message* message1, Message* message2, + const OneofDescriptor* oneof_descriptor) const; + + inline bool HasOneofField(const Message& message, + const FieldDescriptor* field) const; + inline void SetOneofCase(Message* message, + const FieldDescriptor* field) const; + inline void ClearOneofField(Message* message, + const FieldDescriptor* field) const; + + template + inline const Type& GetField(const Message& message, + const FieldDescriptor* field) const; + template + inline void SetField(Message* message, const FieldDescriptor* field, + const Type& value) const; + template + inline Type* MutableField(Message* message, + const FieldDescriptor* field) const; + template + inline const Type& GetRepeatedField(const Message& message, + const FieldDescriptor* field, + int index) const; + template + inline const Type& GetRepeatedPtrField(const Message& message, + const FieldDescriptor* field, + int index) const; + template + inline void SetRepeatedField(Message* message, const FieldDescriptor* field, + int index, Type value) const; + template + inline Type* MutableRepeatedField(Message* message, + const FieldDescriptor* field, + int index) const; + template + inline void AddField(Message* message, const FieldDescriptor* field, + const Type& value) const; + template + inline Type* AddField(Message* message, const FieldDescriptor* field) const; + + int GetExtensionNumberOrDie(const Descriptor* type) const; + + // Internal versions of EnumValue API perform no checking. Called after checks + // by public methods. + void SetEnumValueInternal(Message* message, const FieldDescriptor* field, + int value) const; + void SetRepeatedEnumValueInternal(Message* message, + const FieldDescriptor* field, int index, + int value) const; + void AddEnumValueInternal(Message* message, const FieldDescriptor* field, + int value) const; + + friend inline // inline so nobody can call this function. + void + RegisterAllTypesInternal(const Metadata* file_level_metadata, int size); + friend inline const char* ParseLenDelim(int field_number, + const FieldDescriptor* field, + Message* msg, + const Reflection* reflection, + const char* ptr, + internal::ParseContext* ctx); + friend inline const char* ParsePackedField(const FieldDescriptor* field, + Message* msg, + const Reflection* reflection, + const char* ptr, + internal::ParseContext* ctx); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Reflection); +}; + +// Abstract interface for a factory for message objects. +class PROTOBUF_EXPORT MessageFactory { + public: + inline MessageFactory() {} + virtual ~MessageFactory(); + + // Given a Descriptor, gets or constructs the default (prototype) Message + // of that type. You can then call that message's New() method to construct + // a mutable message of that type. + // + // Calling this method twice with the same Descriptor returns the same + // object. The returned object remains property of the factory. Also, any + // objects created by calling the prototype's New() method share some data + // with the prototype, so these must be destroyed before the MessageFactory + // is destroyed. + // + // The given descriptor must outlive the returned message, and hence must + // outlive the MessageFactory. + // + // Some implementations do not support all types. GetPrototype() will + // return nullptr if the descriptor passed in is not supported. + // + // This method may or may not be thread-safe depending on the implementation. + // Each implementation should document its own degree thread-safety. + virtual const Message* GetPrototype(const Descriptor* type) = 0; + + // Gets a MessageFactory which supports all generated, compiled-in messages. + // In other words, for any compiled-in type FooMessage, the following is true: + // MessageFactory::generated_factory()->GetPrototype( + // FooMessage::descriptor()) == FooMessage::default_instance() + // This factory supports all types which are found in + // DescriptorPool::generated_pool(). If given a descriptor from any other + // pool, GetPrototype() will return nullptr. (You can also check if a + // descriptor is for a generated message by checking if + // descriptor->file()->pool() == DescriptorPool::generated_pool().) + // + // This factory is 100% thread-safe; calling GetPrototype() does not modify + // any shared data. + // + // This factory is a singleton. The caller must not delete the object. + static MessageFactory* generated_factory(); + + // For internal use only: Registers a .proto file at static initialization + // time, to be placed in generated_factory. The first time GetPrototype() + // is called with a descriptor from this file, |register_messages| will be + // called, with the file name as the parameter. It must call + // InternalRegisterGeneratedMessage() (below) to register each message type + // in the file. This strange mechanism is necessary because descriptors are + // built lazily, so we can't register types by their descriptor until we + // know that the descriptor exists. |filename| must be a permanent string. + static void InternalRegisterGeneratedFile( + const google::protobuf::internal::DescriptorTable* table); + + // For internal use only: Registers a message type. Called only by the + // functions which are registered with InternalRegisterGeneratedFile(), + // above. + static void InternalRegisterGeneratedMessage(const Descriptor* descriptor, + const Message* prototype); + + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageFactory); +}; + +#define DECLARE_GET_REPEATED_FIELD(TYPE) \ + template <> \ + PROTOBUF_EXPORT const RepeatedField& \ + Reflection::GetRepeatedFieldInternal( \ + const Message& message, const FieldDescriptor* field) const; \ + \ + template <> \ + PROTOBUF_EXPORT RepeatedField* \ + Reflection::MutableRepeatedFieldInternal( \ + Message * message, const FieldDescriptor* field) const; + +DECLARE_GET_REPEATED_FIELD(int32) +DECLARE_GET_REPEATED_FIELD(int64) +DECLARE_GET_REPEATED_FIELD(uint32) +DECLARE_GET_REPEATED_FIELD(uint64) +DECLARE_GET_REPEATED_FIELD(float) +DECLARE_GET_REPEATED_FIELD(double) +DECLARE_GET_REPEATED_FIELD(bool) + +#undef DECLARE_GET_REPEATED_FIELD + +// Tries to downcast this message to a generated message type. Returns nullptr +// if this class is not an instance of T. This works even if RTTI is disabled. +// +// This also has the effect of creating a strong reference to T that will +// prevent the linker from stripping it out at link time. This can be important +// if you are using a DynamicMessageFactory that delegates to the generated +// factory. +template +const T* DynamicCastToGenerated(const Message* from) { + // Compile-time assert that T is a generated type that has a + // default_instance() accessor, but avoid actually calling it. + const T& (*get_default_instance)() = &T::default_instance; + (void)get_default_instance; + + // Compile-time assert that T is a subclass of google::protobuf::Message. + const Message* unused = static_cast(nullptr); + (void)unused; + +#if PROTOBUF_RTTI + return dynamic_cast(from); +#else + bool ok = from != nullptr && + T::default_instance().GetReflection() == from->GetReflection(); + return ok ? down_cast(from) : nullptr; +#endif +} + +template +T* DynamicCastToGenerated(Message* from) { + const Message* message_const = from; + return const_cast(DynamicCastToGenerated(message_const)); +} + +// Call this function to ensure that this message's reflection is linked into +// the binary: +// +// google::protobuf::LinkMessageReflection(); +// +// This will ensure that the following lookup will succeed: +// +// DescriptorPool::generated_pool()->FindMessageTypeByName("FooMessage"); +// +// As a side-effect, it will also guarantee that anything else from the same +// .proto file will also be available for lookup in the generated pool. +// +// This function does not actually register the message, so it does not need +// to be called before the lookup. However it does need to occur in a function +// that cannot be stripped from the binary (ie. it must be reachable from main). +// +// Best practice is to call this function as close as possible to where the +// reflection is actually needed. This function is very cheap to call, so you +// should not need to worry about its runtime overhead except in the tightest +// of loops (on x86-64 it compiles into two "mov" instructions). +template +void LinkMessageReflection() { + internal::StrongReference(T::default_instance); +} + +// ============================================================================= +// Implementation details for {Get,Mutable}RawRepeatedPtrField. We provide +// specializations for , and and +// handle everything else with the default template which will match any type +// having a method with signature "static const google::protobuf::Descriptor* +// descriptor()". Such a type presumably is a descendant of google::protobuf::Message. + +template <> +inline const RepeatedPtrField& +Reflection::GetRepeatedPtrFieldInternal( + const Message& message, const FieldDescriptor* field) const { + return *static_cast*>( + MutableRawRepeatedString(const_cast(&message), field, true)); +} + +template <> +inline RepeatedPtrField* +Reflection::MutableRepeatedPtrFieldInternal( + Message* message, const FieldDescriptor* field) const { + return static_cast*>( + MutableRawRepeatedString(message, field, true)); +} + + +// ----- + +template <> +inline const RepeatedPtrField& Reflection::GetRepeatedPtrFieldInternal( + const Message& message, const FieldDescriptor* field) const { + return *static_cast*>(GetRawRepeatedField( + message, field, FieldDescriptor::CPPTYPE_MESSAGE, -1, nullptr)); +} + +template <> +inline RepeatedPtrField* Reflection::MutableRepeatedPtrFieldInternal( + Message* message, const FieldDescriptor* field) const { + return static_cast*>(MutableRawRepeatedField( + message, field, FieldDescriptor::CPPTYPE_MESSAGE, -1, nullptr)); +} + +template +inline const RepeatedPtrField& Reflection::GetRepeatedPtrFieldInternal( + const Message& message, const FieldDescriptor* field) const { + return *static_cast*>( + GetRawRepeatedField(message, field, FieldDescriptor::CPPTYPE_MESSAGE, -1, + PB::default_instance().GetDescriptor())); +} + +template +inline RepeatedPtrField* Reflection::MutableRepeatedPtrFieldInternal( + Message* message, const FieldDescriptor* field) const { + return static_cast*>( + MutableRawRepeatedField(message, field, FieldDescriptor::CPPTYPE_MESSAGE, + -1, PB::default_instance().GetDescriptor())); +} + +template +const Type& Reflection::DefaultRaw(const FieldDescriptor* field) const { + return *reinterpret_cast(schema_.GetFieldDefault(field)); +} +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_MESSAGE_H__ diff --git a/external/include/google/protobuf/message_lite.h b/external/include/google/protobuf/message_lite.h new file mode 100644 index 0000000..f82bd0c --- /dev/null +++ b/external/include/google/protobuf/message_lite.h @@ -0,0 +1,640 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Authors: wink@google.com (Wink Saville), +// kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Defines MessageLite, the abstract interface implemented by all (lite +// and non-lite) protocol message objects. + +#ifndef GOOGLE_PROTOBUF_MESSAGE_LITE_H__ +#define GOOGLE_PROTOBUF_MESSAGE_LITE_H__ + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +template +class RepeatedPtrField; + +class FastReflectionMessageMutator; +class FastReflectionStringSetter; +class Reflection; + +namespace io { + +class CodedInputStream; +class CodedOutputStream; +class ZeroCopyInputStream; +class ZeroCopyOutputStream; + +} // namespace io +namespace internal { + +class SwapFieldHelper; + +// Tag type used to invoke the constinit constructor overload of some classes. +// Such constructors are internal implementation details of the library. +struct ConstantInitialized { + explicit ConstantInitialized() = default; +}; + +// See parse_context.h for explanation +class ParseContext; + +class ExtensionSet; +class LazyField; +class RepeatedPtrFieldBase; +class TcParserBase; +class WireFormatLite; +class WeakFieldMap; + +template +class GenericTypeHandler; // defined in repeated_field.h + +// We compute sizes as size_t but cache them as int. This function converts a +// computed size to a cached size. Since we don't proceed with serialization +// if the total size was > INT_MAX, it is not important what this function +// returns for inputs > INT_MAX. However this case should not error or +// GOOGLE_CHECK-fail, because the full size_t resolution is still returned from +// ByteSizeLong() and checked against INT_MAX; we can catch the overflow +// there. +inline int ToCachedSize(size_t size) { return static_cast(size); } + +// We mainly calculate sizes in terms of size_t, but some functions that +// compute sizes return "int". These int sizes are expected to always be +// positive. This function is more efficient than casting an int to size_t +// directly on 64-bit platforms because it avoids making the compiler emit a +// sign extending instruction, which we don't want and don't want to pay for. +inline size_t FromIntSize(int size) { + // Convert to unsigned before widening so sign extension is not necessary. + return static_cast(size); +} + +// For cases where a legacy function returns an integer size. We GOOGLE_DCHECK() +// that the conversion will fit within an integer; if this is false then we +// are losing information. +inline int ToIntSize(size_t size) { + GOOGLE_DCHECK_LE(size, static_cast(INT_MAX)); + return static_cast(size); +} + +// This type wraps a variable whose constructor and destructor are explicitly +// called. It is particularly useful for a global variable, without its +// constructor and destructor run on start and end of the program lifetime. +// This circumvents the initial construction order fiasco, while keeping +// the address of the empty string a compile time constant. +// +// Pay special attention to the initialization state of the object. +// 1. The object is "uninitialized" to begin with. +// 2. Call Construct() or DefaultConstruct() only if the object is +// uninitialized. After the call, the object becomes "initialized". +// 3. Call get() and get_mutable() only if the object is initialized. +// 4. Call Destruct() only if the object is initialized. +// After the call, the object becomes uninitialized. +template +class ExplicitlyConstructed { + public: + void DefaultConstruct() { new (&union_) T(); } + + template + void Construct(Args&&... args) { + new (&union_) T(std::forward(args)...); + } + + void Destruct() { get_mutable()->~T(); } + + constexpr const T& get() const { return reinterpret_cast(union_); } + T* get_mutable() { return reinterpret_cast(&union_); } + + private: + // Prefer c++14 aligned_storage, but for compatibility this will do. + union AlignedUnion { + alignas(T) char space[sizeof(T)]; + int64 align_to_int64; + void* align_to_ptr; + } union_; +}; + +// Default empty string object. Don't use this directly. Instead, call +// GetEmptyString() to get the reference. +PROTOBUF_EXPORT extern ExplicitlyConstructed + fixed_address_empty_string; + + +PROTOBUF_EXPORT constexpr const std::string& GetEmptyStringAlreadyInited() { + return fixed_address_empty_string.get(); +} + +PROTOBUF_EXPORT size_t StringSpaceUsedExcludingSelfLong(const std::string& str); + +} // namespace internal + +// Interface to light weight protocol messages. +// +// This interface is implemented by all protocol message objects. Non-lite +// messages additionally implement the Message interface, which is a +// subclass of MessageLite. Use MessageLite instead when you only need +// the subset of features which it supports -- namely, nothing that uses +// descriptors or reflection. You can instruct the protocol compiler +// to generate classes which implement only MessageLite, not the full +// Message interface, by adding the following line to the .proto file: +// +// option optimize_for = LITE_RUNTIME; +// +// This is particularly useful on resource-constrained systems where +// the full protocol buffers runtime library is too big. +// +// Note that on non-constrained systems (e.g. servers) when you need +// to link in lots of protocol definitions, a better way to reduce +// total code footprint is to use optimize_for = CODE_SIZE. This +// will make the generated code smaller while still supporting all the +// same features (at the expense of speed). optimize_for = LITE_RUNTIME +// is best when you only have a small number of message types linked +// into your binary, in which case the size of the protocol buffers +// runtime itself is the biggest problem. +// +// Users must not derive from this class. Only the protocol compiler and +// the internal library are allowed to create subclasses. +class PROTOBUF_EXPORT MessageLite { + public: + constexpr MessageLite() {} + virtual ~MessageLite() = default; + + // Basic Operations ------------------------------------------------ + + // Get the name of this message type, e.g. "foo.bar.BazProto". + virtual std::string GetTypeName() const = 0; + + // Construct a new instance of the same type. Ownership is passed to the + // caller. + virtual MessageLite* New() const = 0; + + // Construct a new instance on the arena. Ownership is passed to the caller + // if arena is a NULL. Default implementation for backwards compatibility. + virtual MessageLite* New(Arena* arena) const; + + // Same as GetOwningArena. + Arena* GetArena() const { return GetOwningArena(); } + + // Get a pointer that may be equal to this message's arena, or may not be. + // If the value returned by this method is equal to some arena pointer, then + // this message is on that arena; however, if this message is on some arena, + // this method may or may not return that arena's pointer. As a tradeoff, + // this method may be more efficient than GetArena(). The intent is to allow + // underlying representations that use e.g. tagged pointers to sometimes + // store the arena pointer directly, and sometimes in a more indirect way, + // and allow a fastpath comparison against the arena pointer when it's easy + // to obtain. + void* GetMaybeArenaPointer() const { + return _internal_metadata_.raw_arena_ptr(); + } + + // Clear all fields of the message and set them to their default values. + // Clear() avoids freeing memory, assuming that any memory allocated + // to hold parts of the message will be needed again to hold the next + // message. If you actually want to free the memory used by a Message, + // you must delete it. + virtual void Clear() = 0; + + // Quickly check if all required fields have values set. + virtual bool IsInitialized() const = 0; + + // This is not implemented for Lite messages -- it just returns "(cannot + // determine missing fields for lite message)". However, it is implemented + // for full messages. See message.h. + virtual std::string InitializationErrorString() const; + + // If |other| is the exact same class as this, calls MergeFrom(). Otherwise, + // results are undefined (probably crash). + virtual void CheckTypeAndMergeFrom(const MessageLite& other) = 0; + + // These methods return a human-readable summary of the message. Note that + // since the MessageLite interface does not support reflection, there is very + // little information that these methods can provide. They are shadowed by + // methods of the same name on the Message interface which provide much more + // information. The methods here are intended primarily to facilitate code + // reuse for logic that needs to interoperate with both full and lite protos. + // + // The format of the returned string is subject to change, so please do not + // assume it will remain stable over time. + std::string DebugString() const; + std::string ShortDebugString() const { return DebugString(); } + // MessageLite::DebugString is already Utf8 Safe. This is to add compatibility + // with Message. + std::string Utf8DebugString() const { return DebugString(); } + + // Parsing --------------------------------------------------------- + // Methods for parsing in protocol buffer format. Most of these are + // just simple wrappers around MergeFromCodedStream(). Clear() will be + // called before merging the input. + + // Fill the message with a protocol buffer parsed from the given input + // stream. Returns false on a read error or if the input is in the wrong + // format. A successful return does not indicate the entire input is + // consumed, ensure you call ConsumedEntireMessage() to check that if + // applicable. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParseFromCodedStream( + io::CodedInputStream* input); + // Like ParseFromCodedStream(), but accepts messages that are missing + // required fields. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParsePartialFromCodedStream( + io::CodedInputStream* input); + // Read a protocol buffer from the given zero-copy input stream. If + // successful, the entire input will be consumed. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParseFromZeroCopyStream( + io::ZeroCopyInputStream* input); + // Like ParseFromZeroCopyStream(), but accepts messages that are missing + // required fields. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParsePartialFromZeroCopyStream( + io::ZeroCopyInputStream* input); + // Parse a protocol buffer from a file descriptor. If successful, the entire + // input will be consumed. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParseFromFileDescriptor( + int file_descriptor); + // Like ParseFromFileDescriptor(), but accepts messages that are missing + // required fields. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParsePartialFromFileDescriptor( + int file_descriptor); + // Parse a protocol buffer from a C++ istream. If successful, the entire + // input will be consumed. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParseFromIstream(std::istream* input); + // Like ParseFromIstream(), but accepts messages that are missing + // required fields. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParsePartialFromIstream( + std::istream* input); + // Read a protocol buffer from the given zero-copy input stream, expecting + // the message to be exactly "size" bytes long. If successful, exactly + // this many bytes will have been consumed from the input. + bool MergePartialFromBoundedZeroCopyStream(io::ZeroCopyInputStream* input, + int size); + // Like ParseFromBoundedZeroCopyStream(), but accepts messages that are + // missing required fields. + bool MergeFromBoundedZeroCopyStream(io::ZeroCopyInputStream* input, int size); + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParseFromBoundedZeroCopyStream( + io::ZeroCopyInputStream* input, int size); + // Like ParseFromBoundedZeroCopyStream(), but accepts messages that are + // missing required fields. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParsePartialFromBoundedZeroCopyStream( + io::ZeroCopyInputStream* input, int size); + // Parses a protocol buffer contained in a string. Returns true on success. + // This function takes a string in the (non-human-readable) binary wire + // format, matching the encoding output by MessageLite::SerializeToString(). + // If you'd like to convert a human-readable string into a protocol buffer + // object, see google::protobuf::TextFormat::ParseFromString(). + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParseFromString(ConstStringParam data); + // Like ParseFromString(), but accepts messages that are missing + // required fields. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParsePartialFromString( + ConstStringParam data); + // Parse a protocol buffer contained in an array of bytes. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParseFromArray(const void* data, + int size); + // Like ParseFromArray(), but accepts messages that are missing + // required fields. + PROTOBUF_ATTRIBUTE_REINITIALIZES bool ParsePartialFromArray(const void* data, + int size); + + + // Reads a protocol buffer from the stream and merges it into this + // Message. Singular fields read from the what is + // already in the Message and repeated fields are appended to those + // already present. + // + // It is the responsibility of the caller to call input->LastTagWas() + // (for groups) or input->ConsumedEntireMessage() (for non-groups) after + // this returns to verify that the message's end was delimited correctly. + // + // ParseFromCodedStream() is implemented as Clear() followed by + // MergeFromCodedStream(). + bool MergeFromCodedStream(io::CodedInputStream* input); + + // Like MergeFromCodedStream(), but succeeds even if required fields are + // missing in the input. + // + // MergeFromCodedStream() is just implemented as MergePartialFromCodedStream() + // followed by IsInitialized(). + bool MergePartialFromCodedStream(io::CodedInputStream* input); + + // Merge a protocol buffer contained in a string. + bool MergeFromString(ConstStringParam data); + + + // Serialization --------------------------------------------------- + // Methods for serializing in protocol buffer format. Most of these + // are just simple wrappers around ByteSize() and SerializeWithCachedSizes(). + + // Write a protocol buffer of this message to the given output. Returns + // false on a write error. If the message is missing required fields, + // this may GOOGLE_CHECK-fail. + bool SerializeToCodedStream(io::CodedOutputStream* output) const; + // Like SerializeToCodedStream(), but allows missing required fields. + bool SerializePartialToCodedStream(io::CodedOutputStream* output) const; + // Write the message to the given zero-copy output stream. All required + // fields must be set. + bool SerializeToZeroCopyStream(io::ZeroCopyOutputStream* output) const; + // Like SerializeToZeroCopyStream(), but allows missing required fields. + bool SerializePartialToZeroCopyStream(io::ZeroCopyOutputStream* output) const; + // Serialize the message and store it in the given string. All required + // fields must be set. + bool SerializeToString(std::string* output) const; + // Like SerializeToString(), but allows missing required fields. + bool SerializePartialToString(std::string* output) const; + // Serialize the message and store it in the given byte array. All required + // fields must be set. + bool SerializeToArray(void* data, int size) const; + // Like SerializeToArray(), but allows missing required fields. + bool SerializePartialToArray(void* data, int size) const; + + // Make a string encoding the message. Is equivalent to calling + // SerializeToString() on a string and using that. Returns the empty + // string if SerializeToString() would have returned an error. + // Note: If you intend to generate many such strings, you may + // reduce heap fragmentation by instead re-using the same string + // object with calls to SerializeToString(). + std::string SerializeAsString() const; + // Like SerializeAsString(), but allows missing required fields. + std::string SerializePartialAsString() const; + + // Serialize the message and write it to the given file descriptor. All + // required fields must be set. + bool SerializeToFileDescriptor(int file_descriptor) const; + // Like SerializeToFileDescriptor(), but allows missing required fields. + bool SerializePartialToFileDescriptor(int file_descriptor) const; + // Serialize the message and write it to the given C++ ostream. All + // required fields must be set. + bool SerializeToOstream(std::ostream* output) const; + // Like SerializeToOstream(), but allows missing required fields. + bool SerializePartialToOstream(std::ostream* output) const; + + // Like SerializeToString(), but appends to the data to the string's + // existing contents. All required fields must be set. + bool AppendToString(std::string* output) const; + // Like AppendToString(), but allows missing required fields. + bool AppendPartialToString(std::string* output) const; + + + // Computes the serialized size of the message. This recursively calls + // ByteSizeLong() on all embedded messages. + // + // ByteSizeLong() is generally linear in the number of fields defined for the + // proto. + virtual size_t ByteSizeLong() const = 0; + + // Legacy ByteSize() API. + PROTOBUF_DEPRECATED_MSG("Please use ByteSizeLong() instead") + int ByteSize() const { return internal::ToIntSize(ByteSizeLong()); } + + // Serializes the message without recomputing the size. The message must not + // have changed since the last call to ByteSize(), and the value returned by + // ByteSize must be non-negative. Otherwise the results are undefined. + void SerializeWithCachedSizes(io::CodedOutputStream* output) const { + output->SetCur(_InternalSerialize(output->Cur(), output->EpsCopy())); + } + + // Functions below here are not part of the public interface. It isn't + // enforced, but they should be treated as private, and will be private + // at some future time. Unfortunately the implementation of the "friend" + // keyword in GCC is broken at the moment, but we expect it will be fixed. + + // Like SerializeWithCachedSizes, but writes directly to *target, returning + // a pointer to the byte immediately after the last byte written. "target" + // must point at a byte array of at least ByteSize() bytes. Whether to use + // deterministic serialization, e.g., maps in sorted order, is determined by + // CodedOutputStream::IsDefaultSerializationDeterministic(). + uint8* SerializeWithCachedSizesToArray(uint8* target) const; + + // Returns the result of the last call to ByteSize(). An embedded message's + // size is needed both to serialize it (because embedded messages are + // length-delimited) and to compute the outer message's size. Caching + // the size avoids computing it multiple times. + // + // ByteSize() does not automatically use the cached size when available + // because this would require invalidating it every time the message was + // modified, which would be too hard and expensive. (E.g. if a deeply-nested + // sub-message is changed, all of its parents' cached sizes would need to be + // invalidated, which is too much work for an otherwise inlined setter + // method.) + virtual int GetCachedSize() const = 0; + + virtual const char* _InternalParse(const char* /*ptr*/, + internal::ParseContext* /*ctx*/) { + return nullptr; + } + + protected: + template + static T* CreateMaybeMessage(Arena* arena) { + return Arena::CreateMaybeMessage(arena); + } + + inline explicit MessageLite(Arena* arena, bool is_message_owned = false) + : _internal_metadata_(arena, is_message_owned) {} + + // Returns the arena, if any, that directly owns this message and its internal + // memory (Arena::Own is different in that the arena doesn't directly own the + // internal memory). This method is used in proto's implementation for + // swapping, moving and setting allocated, for deciding whether the ownership + // of this message or its internal memory could be changed. + Arena* GetOwningArena() const { return _internal_metadata_.owning_arena(); } + + // Returns the arena, used for allocating internal objects(e.g., child + // messages, etc), or owning incoming objects (e.g., set allocated). + Arena* GetArenaForAllocation() const { return _internal_metadata_.arena(); } + + internal::InternalMetadata _internal_metadata_; + + public: + enum ParseFlags { + kMerge = 0, + kParse = 1, + kMergePartial = 2, + kParsePartial = 3, + kMergeWithAliasing = 4, + kParseWithAliasing = 5, + kMergePartialWithAliasing = 6, + kParsePartialWithAliasing = 7 + }; + + template + bool ParseFrom(const T& input); + + // Fast path when conditions match (ie. non-deterministic) + // uint8* _InternalSerialize(uint8* ptr) const; + virtual uint8* _InternalSerialize(uint8* ptr, + io::EpsCopyOutputStream* stream) const = 0; + + // Identical to IsInitialized() except that it logs an error message. + bool IsInitializedWithErrors() const { + if (IsInitialized()) return true; + LogInitializationErrorMessage(); + return false; + } + + private: + // TODO(gerbens) make this a pure abstract function + virtual const void* InternalGetTable() const { return NULL; } + + friend class FastReflectionMessageMutator; + friend class FastReflectionStringSetter; + friend class Message; + friend class Reflection; + friend class internal::ExtensionSet; + friend class internal::LazyField; + friend class internal::SwapFieldHelper; + friend class internal::TcParserBase; + friend class internal::WeakFieldMap; + friend class internal::WireFormatLite; + + template + friend class Arena::InternalHelper; + template + friend class internal::GenericTypeHandler; + + void LogInitializationErrorMessage() const; + + bool MergeFromImpl(io::CodedInputStream* input, ParseFlags parse_flags); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessageLite); +}; + +namespace internal { + +template +bool MergeFromImpl(StringPiece input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); +extern template bool MergeFromImpl(StringPiece input, + MessageLite* msg, + MessageLite::ParseFlags parse_flags); +extern template bool MergeFromImpl(StringPiece input, + MessageLite* msg, + MessageLite::ParseFlags parse_flags); + +template +bool MergeFromImpl(io::ZeroCopyInputStream* input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); +extern template bool MergeFromImpl(io::ZeroCopyInputStream* input, + MessageLite* msg, + MessageLite::ParseFlags parse_flags); +extern template bool MergeFromImpl(io::ZeroCopyInputStream* input, + MessageLite* msg, + MessageLite::ParseFlags parse_flags); + +struct BoundedZCIS { + io::ZeroCopyInputStream* zcis; + int limit; +}; + +template +bool MergeFromImpl(BoundedZCIS input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); +extern template bool MergeFromImpl(BoundedZCIS input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); +extern template bool MergeFromImpl(BoundedZCIS input, MessageLite* msg, + MessageLite::ParseFlags parse_flags); + +template +struct SourceWrapper; + +template +bool MergeFromImpl(const SourceWrapper& input, MessageLite* msg, + MessageLite::ParseFlags parse_flags) { + return input.template MergeInto(msg, parse_flags); +} + +} // namespace internal + +template +bool MessageLite::ParseFrom(const T& input) { + if (flags & kParse) Clear(); + constexpr bool alias = (flags & kMergeWithAliasing) != 0; + return internal::MergeFromImpl(input, this, flags); +} + +// =================================================================== +// Shutdown support. + + +// Shut down the entire protocol buffers library, deleting all static-duration +// objects allocated by the library or by generated .pb.cc files. +// +// There are two reasons you might want to call this: +// * You use a draconian definition of "memory leak" in which you expect +// every single malloc() to have a corresponding free(), even for objects +// which live until program exit. +// * You are writing a dynamically-loaded library which needs to clean up +// after itself when the library is unloaded. +// +// It is safe to call this multiple times. However, it is not safe to use +// any other part of the protocol buffers library after +// ShutdownProtobufLibrary() has been called. Furthermore this call is not +// thread safe, user needs to synchronize multiple calls. +PROTOBUF_EXPORT void ShutdownProtobufLibrary(); + +namespace internal { + +// Register a function to be called when ShutdownProtocolBuffers() is called. +PROTOBUF_EXPORT void OnShutdown(void (*func)()); +// Run an arbitrary function on an arg +PROTOBUF_EXPORT void OnShutdownRun(void (*f)(const void*), const void* arg); + +template +T* OnShutdownDelete(T* p) { + OnShutdownRun([](const void* pp) { delete static_cast(pp); }, p); + return p; +} + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_MESSAGE_LITE_H__ diff --git a/external/include/google/protobuf/metadata.h b/external/include/google/protobuf/metadata.h new file mode 100644 index 0000000..4e89648 --- /dev/null +++ b/external/include/google/protobuf/metadata.h @@ -0,0 +1,36 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_METADATA_H__ +#define GOOGLE_PROTOBUF_METADATA_H__ + +// TODO(b/151117630): Remove this file and all instances where it gets imported. + +#endif // GOOGLE_PROTOBUF_METADATA_H__ diff --git a/external/include/google/protobuf/metadata_lite.h b/external/include/google/protobuf/metadata_lite.h new file mode 100644 index 0000000..0b90f28 --- /dev/null +++ b/external/include/google/protobuf/metadata_lite.h @@ -0,0 +1,270 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_METADATA_LITE_H__ +#define GOOGLE_PROTOBUF_METADATA_LITE_H__ + +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { +namespace internal { + +// This is the representation for messages that support arena allocation. It +// uses a tagged pointer to either store the owning Arena pointer, if there are +// no unknown fields, or a pointer to a block of memory with both the owning +// Arena pointer and the UnknownFieldSet, if there are unknown fields. Besides, +// it also uses the tag to distinguish whether the owning Arena pointer is also +// used by sub-structure allocation. This optimization allows for +// "zero-overhead" storage of the Arena pointer, relative to the above baseline +// implementation. +// +// The tagged pointer uses the least two significant bits to disambiguate cases. +// It uses bit 0 == 0 to indicate an arena pointer and bit 0 == 1 to indicate a +// UFS+Arena-container pointer. Besides it uses bit 1 == 0 to indicate arena +// allocation and bit 1 == 1 to indicate heap allocation. +class InternalMetadata { + public: + constexpr InternalMetadata() : ptr_(0) {} + explicit InternalMetadata(Arena* arena, bool is_message_owned = false) + : ptr_(is_message_owned + ? reinterpret_cast(arena) | kMessageOwnedArenaTagMask + : reinterpret_cast(arena)) { + GOOGLE_DCHECK(!is_message_owned || arena != nullptr); + } + + ~InternalMetadata() { + if (HasMessageOwnedArenaTag()) { + delete arena(); + } + } + + template + void Delete() { + // Note that Delete<> should be called not more than once. + if (have_unknown_fields()) { + DeleteOutOfLineHelper(); + } + } + + PROTOBUF_NDEBUG_INLINE Arena* owning_arena() const { + return HasMessageOwnedArenaTag() ? nullptr : arena(); + } + + PROTOBUF_NDEBUG_INLINE Arena* arena() const { + if (PROTOBUF_PREDICT_FALSE(have_unknown_fields())) { + return PtrValue()->arena; + } else { + return PtrValue(); + } + } + + PROTOBUF_NDEBUG_INLINE bool have_unknown_fields() const { + return HasUnknownFieldsTag(); + } + + PROTOBUF_NDEBUG_INLINE void* raw_arena_ptr() const { + return reinterpret_cast(ptr_); + } + + template + PROTOBUF_NDEBUG_INLINE const T& unknown_fields( + const T& (*default_instance)()) const { + if (PROTOBUF_PREDICT_FALSE(have_unknown_fields())) { + return PtrValue>()->unknown_fields; + } else { + return default_instance(); + } + } + + template + PROTOBUF_NDEBUG_INLINE T* mutable_unknown_fields() { + if (PROTOBUF_PREDICT_TRUE(have_unknown_fields())) { + return &PtrValue>()->unknown_fields; + } else { + return mutable_unknown_fields_slow(); + } + } + + template + PROTOBUF_NDEBUG_INLINE void Swap(InternalMetadata* other) { + // Semantics here are that we swap only the unknown fields, not the arena + // pointer. We cannot simply swap ptr_ with other->ptr_ because we need to + // maintain our own arena ptr. Also, our ptr_ and other's ptr_ may be in + // different states (direct arena pointer vs. container with UFS) so we + // cannot simply swap ptr_ and then restore the arena pointers. We reuse + // UFS's swap implementation instead. + if (have_unknown_fields() || other->have_unknown_fields()) { + DoSwap(other->mutable_unknown_fields()); + } + } + + PROTOBUF_NDEBUG_INLINE void InternalSwap(InternalMetadata* other) { + std::swap(ptr_, other->ptr_); + } + + template + PROTOBUF_NDEBUG_INLINE void MergeFrom(const InternalMetadata& other) { + if (other.have_unknown_fields()) { + DoMergeFrom(other.unknown_fields(nullptr)); + } + } + + template + PROTOBUF_NDEBUG_INLINE void Clear() { + if (have_unknown_fields()) { + DoClear(); + } + } + + private: + intptr_t ptr_; + + // Tagged pointer implementation. + static constexpr intptr_t kUnknownFieldsTagMask = 1; + static constexpr intptr_t kMessageOwnedArenaTagMask = 2; + static constexpr intptr_t kPtrTagMask = + kUnknownFieldsTagMask | kMessageOwnedArenaTagMask; + static constexpr intptr_t kPtrValueMask = ~kPtrTagMask; + + // Accessors for pointer tag and pointer value. + PROTOBUF_ALWAYS_INLINE bool HasUnknownFieldsTag() const { + return ptr_ & kUnknownFieldsTagMask; + } + PROTOBUF_ALWAYS_INLINE bool HasMessageOwnedArenaTag() const { + return ptr_ & kMessageOwnedArenaTagMask; + } + + template + U* PtrValue() const { + return reinterpret_cast(ptr_ & kPtrValueMask); + } + + // If ptr_'s tag is kTagContainer, it points to an instance of this struct. + struct ContainerBase { + Arena* arena; + }; + + template + struct Container : public ContainerBase { + T unknown_fields; + }; + + template + PROTOBUF_NOINLINE void DeleteOutOfLineHelper() { + if (arena() == NULL) { + delete PtrValue>(); + } + } + + template + PROTOBUF_NOINLINE T* mutable_unknown_fields_slow() { + Arena* my_arena = arena(); + Container* container = Arena::Create>(my_arena); + intptr_t message_owned_arena_tag = ptr_ & kMessageOwnedArenaTagMask; + // Two-step assignment works around a bug in clang's static analyzer: + // https://bugs.llvm.org/show_bug.cgi?id=34198. + ptr_ = reinterpret_cast(container); + ptr_ |= kUnknownFieldsTagMask | message_owned_arena_tag; + container->arena = my_arena; + return &(container->unknown_fields); + } + + // Templated functions. + + template + PROTOBUF_NOINLINE void DoClear() { + mutable_unknown_fields()->Clear(); + } + + template + PROTOBUF_NOINLINE void DoMergeFrom(const T& other) { + mutable_unknown_fields()->MergeFrom(other); + } + + template + PROTOBUF_NOINLINE void DoSwap(T* other) { + mutable_unknown_fields()->Swap(other); + } +}; + +// String Template specializations. + +template <> +PROTOBUF_EXPORT void InternalMetadata::DoClear(); +template <> +PROTOBUF_EXPORT void InternalMetadata::DoMergeFrom( + const std::string& other); +template <> +PROTOBUF_EXPORT void InternalMetadata::DoSwap(std::string* other); + +// This helper RAII class is needed to efficiently parse unknown fields. We +// should only call mutable_unknown_fields if there are actual unknown fields. +// The obvious thing to just use a stack string and swap it at the end of +// the parse won't work, because the destructor of StringOutputStream needs to +// be called before we can modify the string (it check-fails). Using +// LiteUnknownFieldSetter setter(&_internal_metadata_); +// StringOutputStream stream(setter.buffer()); +// guarantees that the string is only swapped after stream is destroyed. +class PROTOBUF_EXPORT LiteUnknownFieldSetter { + public: + explicit LiteUnknownFieldSetter(InternalMetadata* metadata) + : metadata_(metadata) { + if (metadata->have_unknown_fields()) { + buffer_.swap(*metadata->mutable_unknown_fields()); + } + } + ~LiteUnknownFieldSetter() { + if (!buffer_.empty()) + metadata_->mutable_unknown_fields()->swap(buffer_); + } + std::string* buffer() { return &buffer_; } + + private: + InternalMetadata* metadata_; + std::string buffer_; +}; + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_METADATA_LITE_H__ diff --git a/external/include/google/protobuf/parse_context.h b/external/include/google/protobuf/parse_context.h new file mode 100644 index 0000000..d858191 --- /dev/null +++ b/external/include/google/protobuf/parse_context.h @@ -0,0 +1,931 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_PARSE_CONTEXT_H__ +#define GOOGLE_PROTOBUF_PARSE_CONTEXT_H__ + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + + +namespace google { +namespace protobuf { + +class UnknownFieldSet; +class DescriptorPool; +class MessageFactory; + +namespace internal { + +// Template code below needs to know about the existence of these functions. +PROTOBUF_EXPORT void WriteVarint(uint32 num, uint64 val, std::string* s); +PROTOBUF_EXPORT void WriteLengthDelimited(uint32 num, StringPiece val, + std::string* s); +// Inline because it is just forwarding to s->WriteVarint +inline void WriteVarint(uint32 num, uint64 val, UnknownFieldSet* s); +inline void WriteLengthDelimited(uint32 num, StringPiece val, + UnknownFieldSet* s); + + +// The basic abstraction the parser is designed for is a slight modification +// of the ZeroCopyInputStream (ZCIS) abstraction. A ZCIS presents a serialized +// stream as a series of buffers that concatenate to the full stream. +// Pictorially a ZCIS presents a stream in chunks like so +// [---------------------------------------------------------------] +// [---------------------] chunk 1 +// [----------------------------] chunk 2 +// chunk 3 [--------------] +// +// Where the '-' represent the bytes which are vertically lined up with the +// bytes of the stream. The proto parser requires its input to be presented +// similarly with the extra +// property that each chunk has kSlopBytes past its end that overlaps with the +// first kSlopBytes of the next chunk, or if there is no next chunk at least its +// still valid to read those bytes. Again, pictorially, we now have +// +// [---------------------------------------------------------------] +// [-------------------....] chunk 1 +// [------------------------....] chunk 2 +// chunk 3 [------------------..**] +// chunk 4 [--****] +// Here '-' mean the bytes of the stream or chunk and '.' means bytes past the +// chunk that match up with the start of the next chunk. Above each chunk has +// 4 '.' after the chunk. In the case these 'overflow' bytes represents bytes +// past the stream, indicated by '*' above, their values are unspecified. It is +// still legal to read them (ie. should not segfault). Reading past the +// end should be detected by the user and indicated as an error. +// +// The reason for this, admittedly, unconventional invariant is to ruthlessly +// optimize the protobuf parser. Having an overlap helps in two important ways. +// Firstly it alleviates having to performing bounds checks if a piece of code +// is guaranteed to not read more than kSlopBytes. Secondly, and more +// importantly, the protobuf wireformat is such that reading a key/value pair is +// always less than 16 bytes. This removes the need to change to next buffer in +// the middle of reading primitive values. Hence there is no need to store and +// load the current position. + +class PROTOBUF_EXPORT EpsCopyInputStream { + public: + enum { kSlopBytes = 16, kMaxCordBytesToCopy = 512 }; + + explicit EpsCopyInputStream(bool enable_aliasing) + : aliasing_(enable_aliasing ? kOnPatch : kNoAliasing) {} + + void BackUp(const char* ptr) { + GOOGLE_DCHECK(ptr <= buffer_end_ + kSlopBytes); + int count; + if (next_chunk_ == buffer_) { + count = static_cast(buffer_end_ + kSlopBytes - ptr); + } else { + count = size_ + static_cast(buffer_end_ - ptr); + } + if (count > 0) StreamBackUp(count); + } + + // If return value is negative it's an error + PROTOBUF_MUST_USE_RESULT int PushLimit(const char* ptr, int limit) { + GOOGLE_DCHECK(limit >= 0 && limit <= INT_MAX - kSlopBytes); + // This add is safe due to the invariant above, because + // ptr - buffer_end_ <= kSlopBytes. + limit += static_cast(ptr - buffer_end_); + limit_end_ = buffer_end_ + (std::min)(0, limit); + auto old_limit = limit_; + limit_ = limit; + return old_limit - limit; + } + + PROTOBUF_MUST_USE_RESULT bool PopLimit(int delta) { + if (PROTOBUF_PREDICT_FALSE(!EndedAtLimit())) return false; + limit_ = limit_ + delta; + // TODO(gerbens) We could remove this line and hoist the code to + // DoneFallback. Study the perf/bin-size effects. + limit_end_ = buffer_end_ + (std::min)(0, limit_); + return true; + } + + PROTOBUF_MUST_USE_RESULT const char* Skip(const char* ptr, int size) { + if (size <= buffer_end_ + kSlopBytes - ptr) { + return ptr + size; + } + return SkipFallback(ptr, size); + } + PROTOBUF_MUST_USE_RESULT const char* ReadString(const char* ptr, int size, + std::string* s) { + if (size <= buffer_end_ + kSlopBytes - ptr) { + s->assign(ptr, size); + return ptr + size; + } + return ReadStringFallback(ptr, size, s); + } + PROTOBUF_MUST_USE_RESULT const char* AppendString(const char* ptr, int size, + std::string* s) { + if (size <= buffer_end_ + kSlopBytes - ptr) { + s->append(ptr, size); + return ptr + size; + } + return AppendStringFallback(ptr, size, s); + } + // Implemented in arenastring.cc + PROTOBUF_MUST_USE_RESULT const char* ReadArenaString(const char* ptr, + ArenaStringPtr* s, + Arena* arena); + + template + PROTOBUF_MUST_USE_RESULT const char* ReadRepeatedFixed(const char* ptr, + Tag expected_tag, + RepeatedField* out); + + template + PROTOBUF_MUST_USE_RESULT const char* ReadPackedFixed(const char* ptr, + int size, + RepeatedField* out); + template + PROTOBUF_MUST_USE_RESULT const char* ReadPackedVarint(const char* ptr, + Add add); + + uint32 LastTag() const { return last_tag_minus_1_ + 1; } + bool ConsumeEndGroup(uint32 start_tag) { + bool res = last_tag_minus_1_ == start_tag; + last_tag_minus_1_ = 0; + return res; + } + bool EndedAtLimit() const { return last_tag_minus_1_ == 0; } + bool EndedAtEndOfStream() const { return last_tag_minus_1_ == 1; } + void SetLastTag(uint32 tag) { last_tag_minus_1_ = tag - 1; } + void SetEndOfStream() { last_tag_minus_1_ = 1; } + bool IsExceedingLimit(const char* ptr) { + return ptr > limit_end_ && + (next_chunk_ == nullptr || ptr - buffer_end_ > limit_); + } + int BytesUntilLimit(const char* ptr) const { + return limit_ + static_cast(buffer_end_ - ptr); + } + // Returns true if more data is available, if false is returned one has to + // call Done for further checks. + bool DataAvailable(const char* ptr) { return ptr < limit_end_; } + + protected: + // Returns true is limit (either an explicit limit or end of stream) is + // reached. It aligns *ptr across buffer seams. + // If limit is exceeded it returns true and ptr is set to null. + bool DoneWithCheck(const char** ptr, int d) { + GOOGLE_DCHECK(*ptr); + if (PROTOBUF_PREDICT_TRUE(*ptr < limit_end_)) return false; + int overrun = static_cast(*ptr - buffer_end_); + GOOGLE_DCHECK_LE(overrun, kSlopBytes); // Guaranteed by parse loop. + if (overrun == + limit_) { // No need to flip buffers if we ended on a limit. + // If we actually overrun the buffer and next_chunk_ is null. It means + // the stream ended and we passed the stream end. + if (overrun > 0 && next_chunk_ == nullptr) *ptr = nullptr; + return true; + } + auto res = DoneFallback(overrun, d); + *ptr = res.first; + return res.second; + } + + const char* InitFrom(StringPiece flat) { + overall_limit_ = 0; + if (flat.size() > kSlopBytes) { + limit_ = kSlopBytes; + limit_end_ = buffer_end_ = flat.data() + flat.size() - kSlopBytes; + next_chunk_ = buffer_; + if (aliasing_ == kOnPatch) aliasing_ = kNoDelta; + return flat.data(); + } else { + std::memcpy(buffer_, flat.data(), flat.size()); + limit_ = 0; + limit_end_ = buffer_end_ = buffer_ + flat.size(); + next_chunk_ = nullptr; + if (aliasing_ == kOnPatch) { + aliasing_ = reinterpret_cast(flat.data()) - + reinterpret_cast(buffer_); + } + return buffer_; + } + } + + const char* InitFrom(io::ZeroCopyInputStream* zcis); + + const char* InitFrom(io::ZeroCopyInputStream* zcis, int limit) { + if (limit == -1) return InitFrom(zcis); + overall_limit_ = limit; + auto res = InitFrom(zcis); + limit_ = limit - static_cast(buffer_end_ - res); + limit_end_ = buffer_end_ + (std::min)(0, limit_); + return res; + } + + private: + const char* limit_end_; // buffer_end_ + min(limit_, 0) + const char* buffer_end_; + const char* next_chunk_; + int size_; + int limit_; // relative to buffer_end_; + io::ZeroCopyInputStream* zcis_ = nullptr; + char buffer_[2 * kSlopBytes] = {}; + enum { kNoAliasing = 0, kOnPatch = 1, kNoDelta = 2 }; + std::uintptr_t aliasing_ = kNoAliasing; + // This variable is used to communicate how the parse ended, in order to + // completely verify the parsed data. A wire-format parse can end because of + // one of the following conditions: + // 1) A parse can end on a pushed limit. + // 2) A parse can end on End Of Stream (EOS). + // 3) A parse can end on 0 tag (only valid for toplevel message). + // 4) A parse can end on an end-group tag. + // This variable should always be set to 0, which indicates case 1. If the + // parse terminated due to EOS (case 2), it's set to 1. In case the parse + // ended due to a terminating tag (case 3 and 4) it's set to (tag - 1). + // This var doesn't really belong in EpsCopyInputStream and should be part of + // the ParseContext, but case 2 is most easily and optimally implemented in + // DoneFallback. + uint32 last_tag_minus_1_ = 0; + int overall_limit_ = INT_MAX; // Overall limit independent of pushed limits. + // Pretty random large number that seems like a safe allocation on most + // systems. TODO(gerbens) do we need to set this as build flag? + enum { kSafeStringSize = 50000000 }; + + // Advances to next buffer chunk returns a pointer to the same logical place + // in the stream as set by overrun. Overrun indicates the position in the slop + // region the parse was left (0 <= overrun <= kSlopBytes). Returns true if at + // limit, at which point the returned pointer maybe null if there was an + // error. The invariant of this function is that it's guaranteed that + // kSlopBytes bytes can be accessed from the returned ptr. This function might + // advance more buffers than one in the underlying ZeroCopyInputStream. + std::pair DoneFallback(int overrun, int depth); + // Advances to the next buffer, at most one call to Next() on the underlying + // ZeroCopyInputStream is made. This function DOES NOT match the returned + // pointer to where in the slop region the parse ends, hence no overrun + // parameter. This is useful for string operations where you always copy + // to the end of the buffer (including the slop region). + const char* Next(); + // overrun is the location in the slop region the stream currently is + // (0 <= overrun <= kSlopBytes). To prevent flipping to the next buffer of + // the ZeroCopyInputStream in the case the parse will end in the last + // kSlopBytes of the current buffer. depth is the current depth of nested + // groups (or negative if the use case does not need careful tracking). + inline const char* NextBuffer(int overrun, int depth); + const char* SkipFallback(const char* ptr, int size); + const char* AppendStringFallback(const char* ptr, int size, std::string* str); + const char* ReadStringFallback(const char* ptr, int size, std::string* str); + bool StreamNext(const void** data) { + bool res = zcis_->Next(data, &size_); + if (res) overall_limit_ -= size_; + return res; + } + void StreamBackUp(int count) { + zcis_->BackUp(count); + overall_limit_ += count; + } + + template + const char* AppendSize(const char* ptr, int size, const A& append) { + int chunk_size = buffer_end_ + kSlopBytes - ptr; + do { + GOOGLE_DCHECK(size > chunk_size); + if (next_chunk_ == nullptr) return nullptr; + append(ptr, chunk_size); + ptr += chunk_size; + size -= chunk_size; + // TODO(gerbens) Next calls NextBuffer which generates buffers with + // overlap and thus incurs cost of copying the slop regions. This is not + // necessary for reading strings. We should just call Next buffers. + if (limit_ <= kSlopBytes) return nullptr; + ptr = Next(); + if (ptr == nullptr) return nullptr; // passed the limit + ptr += kSlopBytes; + chunk_size = buffer_end_ + kSlopBytes - ptr; + } while (size > chunk_size); + append(ptr, size); + return ptr + size; + } + + // AppendUntilEnd appends data until a limit (either a PushLimit or end of + // stream. Normal payloads are from length delimited fields which have an + // explicit size. Reading until limit only comes when the string takes + // the place of a protobuf, ie RawMessage/StringRawMessage, lazy fields and + // implicit weak messages. We keep these methods private and friend them. + template + const char* AppendUntilEnd(const char* ptr, const A& append) { + if (ptr - buffer_end_ > limit_) return nullptr; + while (limit_ > kSlopBytes) { + size_t chunk_size = buffer_end_ + kSlopBytes - ptr; + append(ptr, chunk_size); + ptr = Next(); + if (ptr == nullptr) return limit_end_; + ptr += kSlopBytes; + } + auto end = buffer_end_ + limit_; + GOOGLE_DCHECK(end >= ptr); + append(ptr, end - ptr); + return end; + } + + PROTOBUF_MUST_USE_RESULT const char* AppendString(const char* ptr, + std::string* str) { + return AppendUntilEnd( + ptr, [str](const char* p, ptrdiff_t s) { str->append(p, s); }); + } + friend class ImplicitWeakMessage; +}; + +// ParseContext holds all data that is global to the entire parse. Most +// importantly it contains the input stream, but also recursion depth and also +// stores the end group tag, in case a parser ended on a endgroup, to verify +// matching start/end group tags. +class PROTOBUF_EXPORT ParseContext : public EpsCopyInputStream { + public: + struct Data { + const DescriptorPool* pool = nullptr; + MessageFactory* factory = nullptr; + Arena* arena = nullptr; + }; + + template + ParseContext(int depth, bool aliasing, const char** start, T&&... args) + : EpsCopyInputStream(aliasing), depth_(depth) { + *start = InitFrom(std::forward(args)...); + } + + void TrackCorrectEnding() { group_depth_ = 0; } + + bool Done(const char** ptr) { return DoneWithCheck(ptr, group_depth_); } + + int depth() const { return depth_; } + + Data& data() { return data_; } + const Data& data() const { return data_; } + + template + PROTOBUF_MUST_USE_RESULT const char* ParseMessage(T* msg, const char* ptr); + // We outline when the type is generic and we go through a virtual + const char* ParseMessage(MessageLite* msg, const char* ptr); + const char* ParseMessage(Message* msg, const char* ptr); + + template + PROTOBUF_MUST_USE_RESULT PROTOBUF_NDEBUG_INLINE const char* ParseGroup( + T* msg, const char* ptr, uint32 tag) { + if (--depth_ < 0) return nullptr; + group_depth_++; + ptr = msg->_InternalParse(ptr, this); + group_depth_--; + depth_++; + if (PROTOBUF_PREDICT_FALSE(!ConsumeEndGroup(tag))) return nullptr; + return ptr; + } + + private: + // Out-of-line routine to save space in ParseContext::ParseMessage + // int old; + // ptr = ReadSizeAndPushLimitAndDepth(ptr, &old) + // is equivalent to: + // int size = ReadSize(&ptr); + // if (!ptr) return nullptr; + // int old = PushLimit(ptr, size); + // if (--depth_ < 0) return nullptr; + PROTOBUF_MUST_USE_RESULT const char* ReadSizeAndPushLimitAndDepth( + const char* ptr, int* old_limit); + + // The context keeps an internal stack to keep track of the recursive + // part of the parse state. + // Current depth of the active parser, depth counts down. + // This is used to limit recursion depth (to prevent overflow on malicious + // data), but is also used to index in stack_ to store the current state. + int depth_; + // Unfortunately necessary for the fringe case of ending on 0 or end-group tag + // in the last kSlopBytes of a ZeroCopyInputStream chunk. + int group_depth_ = INT_MIN; + Data data_; +}; + +template +bool ExpectTag(const char* ptr) { + if (tag < 128) { + return *ptr == static_cast(tag); + } else { + static_assert(tag < 128 * 128, "We only expect tags for 1 or 2 bytes"); + char buf[2] = {static_cast(tag | 0x80), static_cast(tag >> 7)}; + return std::memcmp(ptr, buf, 2) == 0; + } +} + +template +struct EndianHelper; + +template <> +struct EndianHelper<1> { + static uint8 Load(const void* p) { return *static_cast(p); } +}; + +template <> +struct EndianHelper<2> { + static uint16 Load(const void* p) { + uint16 tmp; + std::memcpy(&tmp, p, 2); +#ifndef PROTOBUF_LITTLE_ENDIAN + tmp = bswap_16(tmp); +#endif + return tmp; + } +}; + +template <> +struct EndianHelper<4> { + static uint32 Load(const void* p) { + uint32 tmp; + std::memcpy(&tmp, p, 4); +#ifndef PROTOBUF_LITTLE_ENDIAN + tmp = bswap_32(tmp); +#endif + return tmp; + } +}; + +template <> +struct EndianHelper<8> { + static uint64 Load(const void* p) { + uint64 tmp; + std::memcpy(&tmp, p, 8); +#ifndef PROTOBUF_LITTLE_ENDIAN + tmp = bswap_64(tmp); +#endif + return tmp; + } +}; + +template +T UnalignedLoad(const char* p) { + auto tmp = EndianHelper::Load(p); + T res; + memcpy(&res, &tmp, sizeof(T)); + return res; +} + +PROTOBUF_EXPORT +std::pair VarintParseSlow32(const char* p, uint32 res); +PROTOBUF_EXPORT +std::pair VarintParseSlow64(const char* p, uint32 res); + +inline const char* VarintParseSlow(const char* p, uint32 res, uint32* out) { + auto tmp = VarintParseSlow32(p, res); + *out = tmp.second; + return tmp.first; +} + +inline const char* VarintParseSlow(const char* p, uint32 res, uint64* out) { + auto tmp = VarintParseSlow64(p, res); + *out = tmp.second; + return tmp.first; +} + +template +PROTOBUF_MUST_USE_RESULT const char* VarintParse(const char* p, T* out) { + auto ptr = reinterpret_cast(p); + uint32 res = ptr[0]; + if (!(res & 0x80)) { + *out = res; + return p + 1; + } + uint32 byte = ptr[1]; + res += (byte - 1) << 7; + if (!(byte & 0x80)) { + *out = res; + return p + 2; + } + return VarintParseSlow(p, res, out); +} + +// Used for tags, could read up to 5 bytes which must be available. +// Caller must ensure its safe to call. + +PROTOBUF_EXPORT +std::pair ReadTagFallback(const char* p, uint32 res); + +// Same as ParseVarint but only accept 5 bytes at most. +inline const char* ReadTag(const char* p, uint32* out, uint32 /*max_tag*/ = 0) { + uint32 res = static_cast(p[0]); + if (res < 128) { + *out = res; + return p + 1; + } + uint32 second = static_cast(p[1]); + res += (second - 1) << 7; + if (second < 128) { + *out = res; + return p + 2; + } + auto tmp = ReadTagFallback(p, res); + *out = tmp.second; + return tmp.first; +} + +// Decode 2 consecutive bytes of a varint and returns the value, shifted left +// by 1. It simultaneous updates *ptr to *ptr + 1 or *ptr + 2 depending if the +// first byte's continuation bit is set. +// If bit 15 of return value is set (equivalent to the continuation bits of both +// bytes being set) the varint continues, otherwise the parse is done. On x86 +// movsx eax, dil +// add edi, eax +// adc [rsi], 1 +// add eax, eax +// and eax, edi +inline uint32 DecodeTwoBytes(const char** ptr) { + uint32 value = UnalignedLoad(*ptr); + // Sign extend the low byte continuation bit + uint32_t x = static_cast(value); + // This add is an amazing operation, it cancels the low byte continuation bit + // from y transferring it to the carry. Simultaneously it also shifts the 7 + // LSB left by one tightly against high byte varint bits. Hence value now + // contains the unpacked value shifted left by 1. + value += x; + // Use the carry to update the ptr appropriately. + *ptr += value < x ? 2 : 1; + return value & (x + x); // Mask out the high byte iff no continuation +} + +// More efficient varint parsing for big varints +inline const char* ParseBigVarint(const char* p, uint64* out) { + auto pnew = p; + auto tmp = DecodeTwoBytes(&pnew); + uint64 res = tmp >> 1; + if (PROTOBUF_PREDICT_TRUE(std::int16_t(tmp) >= 0)) { + *out = res; + return pnew; + } + for (std::uint32_t i = 1; i < 5; i++) { + pnew = p + 2 * i; + tmp = DecodeTwoBytes(&pnew); + res += (static_cast(tmp) - 2) << (14 * i - 1); + if (PROTOBUF_PREDICT_TRUE(std::int16_t(tmp) >= 0)) { + *out = res; + return pnew; + } + } + return nullptr; +} + +PROTOBUF_EXPORT +std::pair ReadSizeFallback(const char* p, uint32 first); +// Used for tags, could read up to 5 bytes which must be available. Additionally +// it makes sure the unsigned value fits a int32, otherwise returns nullptr. +// Caller must ensure its safe to call. +inline uint32 ReadSize(const char** pp) { + auto p = *pp; + uint32 res = static_cast(p[0]); + if (res < 128) { + *pp = p + 1; + return res; + } + auto x = ReadSizeFallback(p, res); + *pp = x.first; + return x.second; +} + +// Some convenience functions to simplify the generated parse loop code. +// Returning the value and updating the buffer pointer allows for nicer +// function composition. We rely on the compiler to inline this. +// Also in debug compiles having local scoped variables tend to generated +// stack frames that scale as O(num fields). +inline uint64 ReadVarint64(const char** p) { + uint64 tmp; + *p = VarintParse(*p, &tmp); + return tmp; +} + +inline uint32 ReadVarint32(const char** p) { + uint32 tmp; + *p = VarintParse(*p, &tmp); + return tmp; +} + +inline int64 ReadVarintZigZag64(const char** p) { + uint64 tmp; + *p = VarintParse(*p, &tmp); + return WireFormatLite::ZigZagDecode64(tmp); +} + +inline int32 ReadVarintZigZag32(const char** p) { + uint64 tmp; + *p = VarintParse(*p, &tmp); + return WireFormatLite::ZigZagDecode32(static_cast(tmp)); +} + +template +PROTOBUF_MUST_USE_RESULT const char* ParseContext::ParseMessage( + T* msg, const char* ptr) { + int old; + ptr = ReadSizeAndPushLimitAndDepth(ptr, &old); + ptr = ptr ? msg->_InternalParse(ptr, this) : nullptr; + depth_++; + if (!PopLimit(old)) return nullptr; + return ptr; +} + +template +const char* EpsCopyInputStream::ReadRepeatedFixed(const char* ptr, + Tag expected_tag, + RepeatedField* out) { + do { + out->Add(UnalignedLoad(ptr)); + ptr += sizeof(T); + if (PROTOBUF_PREDICT_FALSE(ptr >= limit_end_)) return ptr; + } while (UnalignedLoad(ptr) == expected_tag && (ptr += sizeof(Tag))); + return ptr; +} + +template +const char* EpsCopyInputStream::ReadPackedFixed(const char* ptr, int size, + RepeatedField* out) { + int nbytes = buffer_end_ + kSlopBytes - ptr; + while (size > nbytes) { + int num = nbytes / sizeof(T); + int old_entries = out->size(); + out->Reserve(old_entries + num); + int block_size = num * sizeof(T); + auto dst = out->AddNAlreadyReserved(num); +#ifdef PROTOBUF_LITTLE_ENDIAN + std::memcpy(dst, ptr, block_size); +#else + for (int i = 0; i < num; i++) + dst[i] = UnalignedLoad(ptr + i * sizeof(T)); +#endif + size -= block_size; + if (limit_ <= kSlopBytes) return nullptr; + ptr = Next(); + if (ptr == nullptr) return nullptr; + ptr += kSlopBytes - (nbytes - block_size); + nbytes = buffer_end_ + kSlopBytes - ptr; + } + int num = size / sizeof(T); + int old_entries = out->size(); + out->Reserve(old_entries + num); + int block_size = num * sizeof(T); + auto dst = out->AddNAlreadyReserved(num); +#ifdef PROTOBUF_LITTLE_ENDIAN + std::memcpy(dst, ptr, block_size); +#else + for (int i = 0; i < num; i++) dst[i] = UnalignedLoad(ptr + i * sizeof(T)); +#endif + ptr += block_size; + if (size != block_size) return nullptr; + return ptr; +} + +template +const char* ReadPackedVarintArray(const char* ptr, const char* end, Add add) { + while (ptr < end) { + uint64 varint; + ptr = VarintParse(ptr, &varint); + if (ptr == nullptr) return nullptr; + add(varint); + } + return ptr; +} + +template +const char* EpsCopyInputStream::ReadPackedVarint(const char* ptr, Add add) { + int size = ReadSize(&ptr); + if (ptr == nullptr) return nullptr; + int chunk_size = buffer_end_ - ptr; + while (size > chunk_size) { + ptr = ReadPackedVarintArray(ptr, buffer_end_, add); + if (ptr == nullptr) return nullptr; + int overrun = ptr - buffer_end_; + GOOGLE_DCHECK(overrun >= 0 && overrun <= kSlopBytes); + if (size - chunk_size <= kSlopBytes) { + // The current buffer contains all the information needed, we don't need + // to flip buffers. However we must parse from a buffer with enough space + // so we are not prone to a buffer overflow. + char buf[kSlopBytes + 10] = {}; + std::memcpy(buf, buffer_end_, kSlopBytes); + GOOGLE_CHECK_LE(size - chunk_size, kSlopBytes); + auto end = buf + (size - chunk_size); + auto res = ReadPackedVarintArray(buf + overrun, end, add); + if (res == nullptr || res != end) return nullptr; + return buffer_end_ + (res - buf); + } + size -= overrun + chunk_size; + GOOGLE_DCHECK_GT(size, 0); + // We must flip buffers + if (limit_ <= kSlopBytes) return nullptr; + ptr = Next(); + if (ptr == nullptr) return nullptr; + ptr += overrun; + chunk_size = buffer_end_ - ptr; + } + auto end = ptr + size; + ptr = ReadPackedVarintArray(ptr, end, add); + return end == ptr ? ptr : nullptr; +} + +// Helper for verification of utf8 +PROTOBUF_EXPORT +bool VerifyUTF8(StringPiece s, const char* field_name); + +inline bool VerifyUTF8(const std::string* s, const char* field_name) { + return VerifyUTF8(*s, field_name); +} + +// All the string parsers with or without UTF checking and for all CTypes. +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* InlineGreedyStringParser( + std::string* s, const char* ptr, ParseContext* ctx); + + +// Add any of the following lines to debug which parse function is failing. + +#define GOOGLE_PROTOBUF_ASSERT_RETURN(predicate, ret) \ + if (!(predicate)) { \ + /* ::raise(SIGINT); */ \ + /* GOOGLE_LOG(ERROR) << "Parse failure"; */ \ + return ret; \ + } + +#define GOOGLE_PROTOBUF_PARSER_ASSERT(predicate) \ + GOOGLE_PROTOBUF_ASSERT_RETURN(predicate, nullptr) + +template +PROTOBUF_MUST_USE_RESULT const char* FieldParser(uint64 tag, T& field_parser, + const char* ptr, + ParseContext* ctx) { + uint32 number = tag >> 3; + GOOGLE_PROTOBUF_PARSER_ASSERT(number != 0); + using WireType = internal::WireFormatLite::WireType; + switch (tag & 7) { + case WireType::WIRETYPE_VARINT: { + uint64 value; + ptr = VarintParse(ptr, &value); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + field_parser.AddVarint(number, value); + break; + } + case WireType::WIRETYPE_FIXED64: { + uint64 value = UnalignedLoad(ptr); + ptr += 8; + field_parser.AddFixed64(number, value); + break; + } + case WireType::WIRETYPE_LENGTH_DELIMITED: { + ptr = field_parser.ParseLengthDelimited(number, ptr, ctx); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + case WireType::WIRETYPE_START_GROUP: { + ptr = field_parser.ParseGroup(number, ptr, ctx); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + case WireType::WIRETYPE_END_GROUP: { + GOOGLE_LOG(FATAL) << "Can't happen"; + break; + } + case WireType::WIRETYPE_FIXED32: { + uint32 value = UnalignedLoad(ptr); + ptr += 4; + field_parser.AddFixed32(number, value); + break; + } + default: + return nullptr; + } + return ptr; +} + +template +PROTOBUF_MUST_USE_RESULT const char* WireFormatParser(T& field_parser, + const char* ptr, + ParseContext* ctx) { + while (!ctx->Done(&ptr)) { + uint32 tag; + ptr = ReadTag(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (tag == 0 || (tag & 7) == 4) { + ctx->SetLastTag(tag); + return ptr; + } + ptr = FieldParser(tag, field_parser, ptr, ctx); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + } + return ptr; +} + +// The packed parsers parse repeated numeric primitives directly into the +// corresponding field + +// These are packed varints +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedInt32Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedUInt32Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedInt64Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedUInt64Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedSInt32Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedSInt64Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedEnumParser( + void* object, const char* ptr, ParseContext* ctx); + +template +PROTOBUF_MUST_USE_RESULT const char* PackedEnumParser( + void* object, const char* ptr, ParseContext* ctx, bool (*is_valid)(int), + InternalMetadata* metadata, int field_num) { + return ctx->ReadPackedVarint( + ptr, [object, is_valid, metadata, field_num](uint64 val) { + if (is_valid(val)) { + static_cast*>(object)->Add(val); + } else { + WriteVarint(field_num, val, metadata->mutable_unknown_fields()); + } + }); +} + +template +PROTOBUF_MUST_USE_RESULT const char* PackedEnumParserArg( + void* object, const char* ptr, ParseContext* ctx, + bool (*is_valid)(const void*, int), const void* data, + InternalMetadata* metadata, int field_num) { + return ctx->ReadPackedVarint( + ptr, [object, is_valid, data, metadata, field_num](uint64 val) { + if (is_valid(data, val)) { + static_cast*>(object)->Add(val); + } else { + WriteVarint(field_num, val, metadata->mutable_unknown_fields()); + } + }); +} + +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedBoolParser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedFixed32Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedSFixed32Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedFixed64Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedSFixed64Parser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedFloatParser( + void* object, const char* ptr, ParseContext* ctx); +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* PackedDoubleParser( + void* object, const char* ptr, ParseContext* ctx); + +// This is the only recursive parser. +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* UnknownGroupLiteParse( + std::string* unknown, const char* ptr, ParseContext* ctx); +// This is a helper to for the UnknownGroupLiteParse but is actually also +// useful in the generated code. It uses overload on std::string* vs +// UnknownFieldSet* to make the generated code isomorphic between full and lite. +PROTOBUF_EXPORT PROTOBUF_MUST_USE_RESULT const char* UnknownFieldParse( + uint32 tag, std::string* unknown, const char* ptr, ParseContext* ctx); + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_PARSE_CONTEXT_H__ diff --git a/external/include/google/protobuf/port.h b/external/include/google/protobuf/port.h new file mode 100644 index 0000000..4c09eb1 --- /dev/null +++ b/external/include/google/protobuf/port.h @@ -0,0 +1,40 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// A common header that is included across all protobuf headers. We do our best +// to avoid #defining any macros here; instead we generally put macros in +// port_def.inc and port_undef.inc so they are not visible from outside of +// protobuf. + +#ifndef GOOGLE_PROTOBUF_PORT_H__ +#define GOOGLE_PROTOBUF_PORT_H__ + + +#endif // GOOGLE_PROTOBUF_PORT_H__ diff --git a/external/include/google/protobuf/port_def.inc b/external/include/google/protobuf/port_def.inc new file mode 100644 index 0000000..82e98d9 --- /dev/null +++ b/external/include/google/protobuf/port_def.inc @@ -0,0 +1,709 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// This file defines common macros that are used in protobuf. +// +// To hide these definitions from the outside world (and to prevent collisions +// if more than one version of protobuf is #included in the same project) you +// must follow this pattern when #including port_def.inc in a header file: +// +// #include "other_header.h" +// #include "message.h" +// // etc. +// +// #include "port_def.inc" // MUST be last header included +// +// // Definitions for this header. +// +// #include "port_undef.inc" +// +// This is a textual header with no include guard, because we want to +// detect/prohibit anytime it is #included twice without a corresponding +// #undef. + +// The definitions in this file are intended to be portable across Clang, +// GCC, and MSVC. Function-like macros are usable without an #ifdef guard. +// Syntax macros (for example, attributes) are always defined, although +// they may be empty. + +// Portable fallbacks for C++20 feature test macros: +// https://en.cppreference.com/w/cpp/feature_test +#ifndef __has_cpp_attribute +#define __has_cpp_attribute(x) 0 +#define PROTOBUF_has_cpp_attribute_DEFINED_ +#endif + +// Portable fallback for Clang's __has_feature macro: +// https://clang.llvm.org/docs/LanguageExtensions.html#has-feature-and-has-extension +#ifndef __has_feature +#define __has_feature(x) 0 +#define PROTOBUF_has_feature_DEFINED_ +#endif + +// Portable fallback for Clang's __has_warning macro: +#ifndef __has_warning +#define __has_warning(x) 0 +#define PROTOBUF_has_warning_DEFINED_ +#endif + +// Portable fallbacks for the __has_attribute macro (GCC and Clang): +// https://clang.llvm.org/docs/LanguageExtensions.html#has-attribute +// https://gcc.gnu.org/onlinedocs/cpp/_005f_005fhas_005fattribute.html +#ifndef __has_attribute +#define __has_attribute(x) 0 +#define PROTOBUF_has_attribute_DEFINED_ +#endif + +// Portable fallback for __has_builtin (GCC and Clang): +// https://clang.llvm.org/docs/LanguageExtensions.html#has-builtin +// https://gcc.gnu.org/onlinedocs/cpp/_005f_005fhas_005fbuiltin.html +#ifndef __has_builtin +#define __has_builtin(x) 0 +#define PROTOBUF_has_builtin_DEFINED_ +#endif + +// Portable check for GCC minimum version: +// https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html +#if defined(__GNUC__) && defined(__GNUC_MINOR__) \ + && defined(__GNUC_PATCHLEVEL__) +# define PROTOBUF_GNUC_MIN(x, y) \ + (__GNUC__ > (x) || __GNUC__ == (x) && __GNUC_MINOR__ >= (y)) +#else +# define PROTOBUF_GNUC_MIN(x, y) 0 +#endif + +// Future versions of protobuf will include breaking changes to some APIs. +// This macro can be set to enable these API changes ahead of time, so that +// user code can be updated before upgrading versions of protobuf. +// #define PROTOBUF_FUTURE_BREAKING_CHANGES 1 + +#ifdef PROTOBUF_VERSION +#error PROTOBUF_VERSION was previously defined +#endif +#define PROTOBUF_VERSION 3017003 + +#ifdef PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC +#error PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC was previously defined +#endif +#define PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC 3017000 + +#ifdef PROTOBUF_MIN_PROTOC_VERSION +#error PROTOBUF_MIN_PROTOC_VERSION was previously defined +#endif +#define PROTOBUF_MIN_PROTOC_VERSION 3017000 + +#ifdef PROTOBUF_VERSION_SUFFIX +#error PROTOBUF_VERSION_SUFFIX was previously defined +#endif +#define PROTOBUF_VERSION_SUFFIX "" + +#if defined(PROTOBUF_NAMESPACE) || defined(PROTOBUF_NAMESPACE_ID) +#error PROTOBUF_NAMESPACE or PROTOBUF_NAMESPACE_ID was previously defined +#endif +#define PROTOBUF_NAMESPACE "google::protobuf" +#define PROTOBUF_NAMESPACE_ID google::protobuf +#define PROTOBUF_NAMESPACE_OPEN \ + namespace google { \ + namespace protobuf { +#define PROTOBUF_NAMESPACE_CLOSE \ + } /* namespace protobuf */ \ + } /* namespace google */ + +#ifdef PROTOBUF_ALWAYS_INLINE +#error PROTOBUF_ALWAYS_INLINE was previously defined +#endif +// For functions we want to force inline. +#if defined(PROTOBUF_NO_INLINE) +# define PROTOBUF_ALWAYS_INLINE +#elif PROTOBUF_GNUC_MIN(3, 1) +# define PROTOBUF_ALWAYS_INLINE __attribute__((always_inline)) +#elif defined(_MSC_VER) +# define PROTOBUF_ALWAYS_INLINE __forceinline +#else +# define PROTOBUF_ALWAYS_INLINE +#endif + +#ifdef PROTOBUF_NDEBUG_INLINE +#error PROTOBUF_NDEBUG_INLINE was previously defined +#endif +// Avoid excessive inlining in non-optimized builds. Without other optimizations +// the inlining is not going to provide benefits anyway and the huge resulting +// functions, especially in the proto-generated serialization functions, produce +// stack frames so large that many tests run into stack overflows (b/32192897). +#if defined(NDEBUG) || (defined(_MSC_VER) && !defined(_DEBUG)) +# define PROTOBUF_NDEBUG_INLINE PROTOBUF_ALWAYS_INLINE +#else +# define PROTOBUF_NDEBUG_INLINE +#endif + +// Note that PROTOBUF_NOINLINE is an attribute applied to functions, to prevent +// them from being inlined by the compiler. This is different from +// PROTOBUF_NO_INLINE, which is a user-supplied macro that disables forced +// inlining by PROTOBUF_(ALWAYS|NDEBUG)_INLINE. +#ifdef PROTOBUF_NOINLINE +#error PROTOBUF_NOINLINE was previously defined +#endif +#if PROTOBUF_GNUC_MIN(3, 1) +# define PROTOBUF_NOINLINE __attribute__((noinline)) +#elif defined(_MSC_VER) +// Seems to have been around since at least Visual Studio 2005 +# define PROTOBUF_NOINLINE __declspec(noinline) +#endif + +#ifdef PROTOBUF_MUSTTAIL +#error PROTOBUF_MUSTTAIL was previously defined +#endif +#ifdef PROTOBUF_TAILCALL +#error PROTOBUF_TAILCALL was previously defined +#endif +#if __has_cpp_attribute(clang::musttail) && \ + !defined(_ARCH_PPC) && !defined(__wasm__) +# ifndef PROTO2_OPENSOURCE +// Compilation fails on powerpc64le: b/187985113 +# endif +#define PROTOBUF_MUSTTAIL [[clang::musttail]] +#define PROTOBUF_TAILCALL true +#else +#define PROTOBUF_MUSTTAIL +#define PROTOBUF_TAILCALL false +#endif + +#ifdef PROTOBUF_EXCLUSIVE_LOCKS_REQUIRED +#error PROTOBUF_EXCLUSIVE_LOCKS_REQUIRED was previously defined +#endif +#if __has_attribute(exclusive_locks_required) +#define PROTOBUF_EXCLUSIVE_LOCKS_REQUIRED(...) \ + __attribute__((exclusive_locks_required(__VA_ARGS__))) +#else +#define PROTOBUF_EXCLUSIVE_LOCKS_REQUIRED(...) +#endif + +#ifdef PROTOBUF_NO_THREAD_SAFETY_ANALYSIS +#error PROTOBUF_NO_THREAD_SAFETY_ANALYSIS was previously defined +#endif +#if __has_attribute(no_thread_safety_analysis) +#define PROTOBUF_NO_THREAD_SAFETY_ANALYSIS \ + __attribute__((no_thread_safety_analysis)) +#else +#define PROTOBUF_NO_THREAD_SAFETY_ANALYSIS +#endif + +#ifdef PROTOBUF_GUARDED_BY +#error PROTOBUF_GUARDED_BY was previously defined +#endif +#if __has_attribute(guarded_by) +#define PROTOBUF_GUARDED_BY(x) __attribute__((guarded_by(x))) +#else +#define PROTOBUF_GUARDED_BY(x) +#endif + +#ifdef PROTOBUF_LOCKS_EXCLUDED +#error PROTOBUF_LOCKS_EXCLUDED was previously defined +#endif +#if __has_attribute(locks_excluded) +#define PROTOBUF_LOCKS_EXCLUDED(...) \ + __attribute__((locks_excluded(__VA_ARGS__))) +#else +#define PROTOBUF_LOCKS_EXCLUDED(...) +#endif + +#ifdef PROTOBUF_COLD +#error PROTOBUF_COLD was previously defined +#endif +#if __has_attribute(cold) || PROTOBUF_GNUC_MIN(4, 3) +# define PROTOBUF_COLD __attribute__((cold)) +#else +# define PROTOBUF_COLD +#endif + +#ifdef PROTOBUF_SECTION_VARIABLE +#error PROTOBUF_SECTION_VARIABLE was previously defined +#endif +#define PROTOBUF_SECTION_VARIABLE(x) + +#if defined(PROTOBUF_DEPRECATED) +#error PROTOBUF_DEPRECATED was previously defined +#endif +#if defined(PROTOBUF_DEPRECATED_MSG) +#error PROTOBUF_DEPRECATED_MSG was previously defined +#endif +#if __has_attribute(deprecated) || PROTOBUF_GNUC_MIN(3, 0) +# define PROTOBUF_DEPRECATED __attribute__((deprecated)) +# define PROTOBUF_DEPRECATED_MSG(msg) __attribute__((deprecated(msg))) +#elif defined(_MSC_VER) +# define PROTOBUF_DEPRECATED __declspec(deprecated) +# define PROTOBUF_DEPRECATED_MSG(msg) __declspec(deprecated(msg)) +#else +# define PROTOBUF_DEPRECATED +# define PROTOBUF_DEPRECATED_MSG(msg) +#endif + +#if defined(PROTOBUF_DEPRECATED_ENUM) +#error PROTOBUF_DEPRECATED_ENUM was previously defined +#endif +#if defined(__clang__) || PROTOBUF_GNUC_MIN(6, 0) +// https://gcc.gnu.org/gcc-6/changes.html +# define PROTOBUF_DEPRECATED_ENUM __attribute__((deprecated)) +#else +# define PROTOBUF_DEPRECATED_ENUM +#endif + +#ifdef PROTOBUF_FUNC_ALIGN +#error PROTOBUF_FUNC_ALIGN was previously defined +#endif +#if __has_attribute(aligned) || PROTOBUF_GNUC_MIN(4, 3) +#define PROTOBUF_FUNC_ALIGN(bytes) __attribute__((aligned(bytes))) +#else +#define PROTOBUF_FUNC_ALIGN(bytes) +#endif + +#ifdef PROTOBUF_RETURNS_NONNULL +#error PROTOBUF_RETURNS_NONNULL was previously defined +#endif +#if __has_attribute(returns_nonnull) || PROTOBUF_GNUC_MIN(4, 9) +#define PROTOBUF_RETURNS_NONNULL __attribute__((returns_nonnull)) +#else +#define PROTOBUF_RETURNS_NONNULL +#endif + +#ifdef PROTOBUF_ATTRIBUTE_REINITIALIZES +#error PROTOBUF_ATTRIBUTE_REINITIALIZES was previously defined +#endif +#if __has_cpp_attribute(clang::reinitializes) +#define PROTOBUF_ATTRIBUTE_REINITIALIZES [[clang::reinitializes]] +#else +#define PROTOBUF_ATTRIBUTE_REINITIALIZES +#endif + +// The minimum library version which works with the current version of the +// headers. +#define GOOGLE_PROTOBUF_MIN_LIBRARY_VERSION 3017000 + +#ifdef PROTOBUF_RTTI +#error PROTOBUF_RTTI was previously defined +#endif +#if defined(GOOGLE_PROTOBUF_NO_RTTI) && GOOGLE_PROTOBUF_NO_RTTI +#define PROTOBUF_RTTI 0 +#elif __has_feature(cxx_rtti) +#define PROTOBUF_RTTI 1 +#elif defined(__cxx_rtti) +// https://en.cppreference.com/w/User:D41D8CD98F/feature_testing_macros#C.2B.2B98 +#define PROTOBUF_RTTI 1 +#else +#define PROTOBUF_RTTI 0 +#endif + +// Returns the offset of the given field within the given aggregate type. +// This is equivalent to the ANSI C offsetof() macro. However, according +// to the C++ standard, offsetof() only works on POD types, and GCC +// enforces this requirement with a warning. In practice, this rule is +// unnecessarily strict; there is probably no compiler or platform on +// which the offsets of the direct fields of a class are non-constant. +// Fields inherited from superclasses *can* have non-constant offsets, +// but that's not what this macro will be used for. +#ifdef PROTOBUF_FIELD_OFFSET +#error PROTOBUF_FIELD_OFFSET was previously defined +#endif +#if defined(__clang__) +// For Clang we use __builtin_offsetof() and suppress the warning, +// to avoid Control Flow Integrity and UBSan vptr sanitizers from +// crashing while trying to validate the invalid reinterpret_casts. +#define PROTOBUF_FIELD_OFFSET(TYPE, FIELD) \ + _Pragma("clang diagnostic push") \ + _Pragma("clang diagnostic ignored \"-Winvalid-offsetof\"") \ + __builtin_offsetof(TYPE, FIELD) \ + _Pragma("clang diagnostic pop") +#elif PROTOBUF_GNUC_MIN(4, 8) +#define PROTOBUF_FIELD_OFFSET(TYPE, FIELD) __builtin_offsetof(TYPE, FIELD) +#else // defined(__clang__) +// Note that we calculate relative to the pointer value 16 here since if we +// just use zero, GCC complains about dereferencing a NULL pointer. We +// choose 16 rather than some other number just in case the compiler would +// be confused by an unaligned pointer. +#define PROTOBUF_FIELD_OFFSET(TYPE, FIELD) \ + static_cast< ::google::protobuf::uint32>(reinterpret_cast( \ + &reinterpret_cast(16)->FIELD) - \ + reinterpret_cast(16)) +#endif + +#ifdef PROTOBUF_EXPORT +#error PROTOBUF_EXPORT was previously defined +#endif + +#if defined(PROTOBUF_USE_DLLS) && defined(_MSC_VER) +# if defined(LIBPROTOBUF_EXPORTS) +# define PROTOBUF_EXPORT __declspec(dllexport) +# define PROTOBUF_EXPORT_TEMPLATE_DECLARE +# define PROTOBUF_EXPORT_TEMPLATE_DEFINE __declspec(dllexport) +# else +# define PROTOBUF_EXPORT __declspec(dllimport) +# define PROTOBUF_EXPORT_TEMPLATE_DECLARE +# define PROTOBUF_EXPORT_TEMPLATE_DEFINE __declspec(dllimport) +# endif // defined(LIBPROTOBUF_EXPORTS) +#elif defined(PROTOBUF_USE_DLLS) && defined(LIBPROTOBUF_EXPORTS) +# define PROTOBUF_EXPORT __attribute__((visibility("default"))) +# define PROTOBUF_EXPORT_TEMPLATE_DECLARE __attribute__((visibility("default"))) +# define PROTOBUF_EXPORT_TEMPLATE_DEFINE +#else +# define PROTOBUF_EXPORT +# define PROTOBUF_EXPORT_TEMPLATE_DECLARE +# define PROTOBUF_EXPORT_TEMPLATE_DEFINE +#endif + +#ifdef PROTOC_EXPORT +#error PROTOC_EXPORT was previously defined +#endif + +#if defined(PROTOBUF_USE_DLLS) && defined(_MSC_VER) +# if defined(LIBPROTOC_EXPORTS) +# define PROTOC_EXPORT __declspec(dllexport) +# else +# define PROTOC_EXPORT __declspec(dllimport) +# endif // defined(LIBPROTOC_EXPORTS) +#elif defined(PROTOBUF_USE_DLLS) && defined(LIBPROTOBUF_EXPORTS) +# define PROTOC_EXPORT __attribute__((visibility("default"))) +#else +# define PROTOC_EXPORT +#endif + +#if defined(PROTOBUF_PREDICT_TRUE) || defined(PROTOBUF_PREDICT_FALSE) +#error PROTOBUF_PREDICT_(TRUE|FALSE) was previously defined +#endif +#if PROTOBUF_GNUC_MIN(3, 0) +# define PROTOBUF_PREDICT_TRUE(x) (__builtin_expect(!!(x), 1)) +# define PROTOBUF_PREDICT_FALSE(x) (__builtin_expect((x), 0)) +#else +# define PROTOBUF_PREDICT_TRUE(x) (x) +# define PROTOBUF_PREDICT_FALSE(x) (x) +#endif + +#ifdef PROTOBUF_MUST_USE_RESULT +#error PROTOBUF_MUST_USE_RESULT was previously defined +#endif +# define PROTOBUF_MUST_USE_RESULT + +#ifdef PROTOBUF_MUST_USE_EXTRACT_RESULT +#error PROTOBUF_MUST_USE_EXTRACT_RESULT was previously defined +#endif + +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE +#error PROTOBUF_FORCE_COPY_IN_RELEASE was previously defined +#endif + +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP +#error PROTOBUF_FORCE_COPY_IN_SWAP was previously defined +#endif + +#ifdef PROTOBUF_FALLTHROUGH_INTENDED +#error PROTOBUF_FALLTHROUGH_INTENDED was previously defined +#endif +#if __has_feature(cxx_attributes) && __has_warning("-Wimplicit-fallthrough") +#define PROTOBUF_FALLTHROUGH_INTENDED [[clang::fallthrough]] +#elif PROTOBUF_GNUC_MIN(7, 0) +#define PROTOBUF_FALLTHROUGH_INTENDED [[gnu::fallthrough]] +#else +#define PROTOBUF_FALLTHROUGH_INTENDED +#endif + +// PROTOBUF_ASSUME(pred) tells the compiler that it can assume pred is true. To +// be safe, we also validate the assumption with a GOOGLE_DCHECK in unoptimized +// builds. The macro does not do anything useful if the compiler does not +// support __builtin_assume. +#ifdef PROTOBUF_ASSUME +#error PROTOBUF_ASSUME was previously defined +#endif +#if __has_builtin(__builtin_assume) +#define PROTOBUF_ASSUME(pred) \ + GOOGLE_DCHECK(pred); \ + __builtin_assume(pred) +#else +#define PROTOBUF_ASSUME(pred) GOOGLE_DCHECK(pred) +#endif + +// Specify memory alignment for structs, classes, etc. +// Use like: +// class PROTOBUF_ALIGNAS(16) MyClass { ... } +// PROTOBUF_ALIGNAS(16) int array[4]; +// +// In most places you can use the C++11 keyword "alignas", which is preferred. +// +// But compilers have trouble mixing __attribute__((...)) syntax with +// alignas(...) syntax. +// +// Doesn't work in clang or gcc: +// struct alignas(16) __attribute__((packed)) S { char c; }; +// Works in clang but not gcc: +// struct __attribute__((packed)) alignas(16) S2 { char c; }; +// Works in clang and gcc: +// struct alignas(16) S3 { char c; } __attribute__((packed)); +// +// There are also some attributes that must be specified *before* a class +// definition: visibility (used for exporting functions/classes) is one of +// these attributes. This means that it is not possible to use alignas() with a +// class that is marked as exported. +#ifdef PROTOBUF_ALIGNAS +#error PROTOBUF_ALIGNAS was previously defined +#endif +#if defined(_MSC_VER) +#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment)) +#elif PROTOBUF_GNUC_MIN(3, 0) +#define PROTOBUF_ALIGNAS(byte_alignment) \ + __attribute__((aligned(byte_alignment))) +#else +#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment) +#endif + +#ifdef PROTOBUF_FINAL +#error PROTOBUF_FINAL was previously defined +#endif +#define PROTOBUF_FINAL final + +#ifdef PROTOBUF_THREAD_LOCAL +#error PROTOBUF_THREAD_LOCAL was previously defined +#endif +#if defined(_MSC_VER) +#define PROTOBUF_THREAD_LOCAL __declspec(thread) +#else +#define PROTOBUF_THREAD_LOCAL __thread +#endif + +// For enabling message owned arena, one major blocker is semantic change from +// moving to copying when there is ownership transfer (e.g., move ctor, swap, +// set allocated, release). This change not only causes performance regression +// but also breaks users code (e.g., dangling reference). For top-level +// messages, since it owns the arena, we can mitigate the issue by transferring +// ownership of arena. However, we cannot do that for nested messages. In order +// to tell how many usages of nested messages affected by message owned arena, +// we need to simulate the arena ownership. +// This experiment is purely for the purpose of gathering data. All code guarded +// by this flag is supposed to be removed after this experiment. +#define PROTOBUF_MESSAGE_OWNED_ARENA_EXPERIMENT +#ifdef PROTOBUF_CONSTINIT +#error PROTOBUF_CONSTINIT was previously defined +#endif +#if defined(__cpp_constinit) && !PROTOBUF_GNUC_MIN(3, 0) && !defined(_MSC_VER) +// Our use of constinit does not yet work with GCC: +// https://github.com/protocolbuffers/protobuf/issues/8310 +// Does not work yet with Visual Studio 2019 Update 16.10 +#define PROTOBUF_CONSTINIT constinit +#elif __has_cpp_attribute(clang::require_constant_initialization) +#define PROTOBUF_CONSTINIT [[clang::require_constant_initialization]] +#else +#define PROTOBUF_CONSTINIT +#endif + +// Some globals with an empty non-trivial destructor are annotated with +// no_destroy for performance reasons. It reduces the cost of these globals in +// non-opt mode and under sanitizers. +#ifdef PROTOBUF_ATTRIBUTE_NO_DESTROY +#error PROTOBUF_ATTRIBUTE_NO_DESTROY was previously defined +#endif +#if __has_cpp_attribute(clang::no_destroy) +#define PROTOBUF_ATTRIBUTE_NO_DESTROY [[clang::no_destroy]] +#else +#define PROTOBUF_ATTRIBUTE_NO_DESTROY +#endif + +// Protobuf extensions and reflection require registration of the protos linked +// in the binary. Not until everything is registered does the runtime have a +// complete view on all protos. When code is using reflection or extensions +// in between registration calls this can lead to surprising behavior. By +// having the registration run first we mitigate this scenario. +// Highest priority is 101. We use 102 to allow code that really wants to +// higher priority to still beat us. +#ifdef PROTOBUF_ATTRIBUTE_INIT_PRIORITY +#error PROTOBUF_ATTRIBUTE_INIT_PRIORITY was previously defined +#endif +#if PROTOBUF_GNUC_MIN(3, 0) && (!defined(__APPLE__) || defined(__clang__)) +#define PROTOBUF_ATTRIBUTE_INIT_PRIORITY __attribute__((init_priority((102)))) +#else +#define PROTOBUF_ATTRIBUTE_INIT_PRIORITY +#endif + +#ifdef PROTOBUF_PRAGMA_INIT_SEG +#error PROTOBUF_PRAGMA_INIT_SEG was previously defined +#endif +#if _MSC_VER +#define PROTOBUF_PRAGMA_INIT_SEG __pragma(init_seg(lib)) +#else +#define PROTOBUF_PRAGMA_INIT_SEG +#endif + +#ifdef PROTOBUF_ATTRIBUTE_WEAK +#error PROTOBUF_ATTRIBUTE_WEAK was previously defined +#endif +#if __has_attribute(weak) && !defined(__MINGW32__) +#define PROTOBUF_ATTRIBUTE_WEAK __attribute__((weak)) +#else +#define PROTOBUF_ATTRIBUTE_WEAK +#endif + +// Macros to detect sanitizers. +#ifdef PROTOBUF_ASAN +#error PROTOBUF_ASAN was previously defined +#endif +#ifdef PROTOBUF_MSAN +#error PROTOBUF_MSAN was previously defined +#endif +#ifdef PROTOBUF_TSAN +#error PROTOBUF_TSAN was previously defined +#endif +#if defined(__clang__) +# if __has_feature(address_sanitizer) +# define PROTOBUF_ASAN 1 +# endif +# if __has_feature(thread_sanitizer) +# define PROTOBUF_TSAN 1 +# endif +# if __has_feature(memory_sanitizer) +# define PROTOBUF_MSAN 1 +# endif +#elif PROTOBUF_GNUC_MIN(3, 0) +# define PROTOBUF_ASAN __SANITIZE_ADDRESS__ +# define PROTOBUF_TSAN __SANITIZE_THREAD__ +#endif + +#ifdef PROTOBUF_UNUSED +#error PROTOBUF_UNUSED was previously defined +#endif +#if __has_cpp_attribute(unused) || \ + (PROTOBUF_GNUC_MIN(3, 0) && !defined(__clang__)) +#define PROTOBUF_UNUSED __attribute__((__unused__)) +#else +#define PROTOBUF_UNUSED +#endif + +// Windows declares several inconvenient macro names. We #undef them and then +// restore them in port_undef.inc. +#ifdef _MSC_VER +#pragma push_macro("CREATE_NEW") +#undef CREATE_NEW +#pragma push_macro("DELETE") +#undef DELETE +#pragma push_macro("DOUBLE_CLICK") +#undef DOUBLE_CLICK +#pragma push_macro("ERROR") +#undef ERROR +#pragma push_macro("ERROR_BUSY") +#undef ERROR_BUSY +#pragma push_macro("ERROR_INSTALL_FAILED") +#undef ERROR_INSTALL_FAILED +#pragma push_macro("ERROR_NOT_FOUND") +#undef ERROR_NOT_FOUND +#pragma push_macro("GetMessage") +#undef GetMessage +#pragma push_macro("IGNORE") +#undef IGNORE +#pragma push_macro("IN") +#undef IN +#pragma push_macro("INPUT_KEYBOARD") +#undef INPUT_KEYBOARD +#pragma push_macro("NO_ERROR") +#undef NO_ERROR +#pragma push_macro("OUT") +#undef OUT +#pragma push_macro("OPTIONAL") +#undef OPTIONAL +#pragma push_macro("min") +#undef min +#pragma push_macro("max") +#undef max +#pragma push_macro("NEAR") +#undef NEAR +#pragma push_macro("NO_DATA") +#undef NO_DATA +#pragma push_macro("REASON_UNKNOWN") +#undef REASON_UNKNOWN +#pragma push_macro("SERVICE_DISABLED") +#undef SERVICE_DISABLED +#pragma push_macro("SEVERITY_ERROR") +#undef SEVERITY_ERROR +#pragma push_macro("STRICT") +#undef STRICT +#pragma push_macro("timezone") +#undef timezone +#endif // _MSC_VER + +#if defined(__clang__) || PROTOBUF_GNUC_MIN(3, 0) || defined(_MSC_VER) +// Don't let Objective-C Macros interfere with proto identifiers with the same +// name. +#pragma push_macro("DEBUG") +#undef DEBUG +#endif // defined(__clang__) || PROTOBUF_GNUC_MIN(3, 0) || defined(_MSC_VER) + +#if defined(__clang__) +#pragma clang diagnostic push +// TODO(gerbens) ideally we cleanup the code. But a cursory try shows many +// violations. So let's ignore for now. +#pragma clang diagnostic ignored "-Wshorten-64-to-32" +#elif PROTOBUF_GNUC_MIN(3, 0) +// GCC does not allow disabling diagnostics within an expression: +// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60875, so we disable this one +// globally even though it's only used for PROTOBUF_FIELD_OFFSET. +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Winvalid-offsetof" +#endif + +// Silence some MSVC warnings in all our code. +#if _MSC_VER +#pragma warning(push) +// For non-trivial unions +#pragma warning(disable : 4582) +#pragma warning(disable : 4583) +// For init_seg(lib) +#pragma warning(disable : 4073) +// To silence the fact that we will pop this push from another file +#pragma warning(disable : 5031) +#endif + +// We don't want code outside port_def doing complex testing, so +// remove our portable condition test macros to nudge folks away from +// using it themselves. +#ifdef PROTOBUF_has_cpp_attribute_DEFINED_ +# undef __has_cpp_attribute +# undef PROTOBUF_has_cpp_attribute_DEFINED_ +#endif +#ifdef PROTOBUF_has_feature_DEFINED_ +# undef __has_feature +# undef PROTOBUF_has_feature_DEFINED_ +#endif +#ifdef PROTOBUF_has_warning_DEFINED_ +# undef __has_warning +# undef PROTOBUF_has_warning_DEFINED_ +#endif +#ifdef PROTOBUF_has_attribute_DEFINED_ +# undef __has_attribute +# undef PROTOBUF_has_attribute_DEFINED_ +#endif +#ifdef PROTOBUF_has_builtin_DEFINED_ +# undef __has_builtin +# undef PROTOBUF_has_builtin_DEFINED_ +#endif +#undef PROTOBUF_GNUC_MIN diff --git a/external/include/google/protobuf/port_undef.inc b/external/include/google/protobuf/port_undef.inc new file mode 100644 index 0000000..4e956d4 --- /dev/null +++ b/external/include/google/protobuf/port_undef.inc @@ -0,0 +1,134 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// #undefs all macros defined in port_def.inc. See comments in port_def.inc +// for more info. + +#ifndef PROTOBUF_NAMESPACE +#error "port_undef.inc must be included after port_def.inc" +#endif +#undef PROTOBUF_NAMESPACE +#undef PROTOBUF_NAMESPACE_ID +#undef PROTOBUF_ALWAYS_INLINE +#undef PROTOBUF_NDEBUG_INLINE +#undef PROTOBUF_MUSTTAIL +#undef PROTOBUF_TAILCALL +#undef PROTOBUF_COLD +#undef PROTOBUF_NOINLINE +#undef PROTOBUF_SECTION_VARIABLE +#undef PROTOBUF_DEPRECATED +#undef PROTOBUF_DEPRECATED_ENUM +#undef PROTOBUF_DEPRECATED_MSG +#undef PROTOBUF_FUNC_ALIGN +#undef PROTOBUF_RETURNS_NONNULL +#undef PROTOBUF_ATTRIBUTE_REINITIALIZES +#undef PROTOBUF_RTTI +#undef PROTOBUF_VERSION +#undef PROTOBUF_VERSION_SUFFIX +#undef PROTOBUF_FIELD_OFFSET +#undef PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC +#undef PROTOBUF_MIN_PROTOC_VERSION +#undef PROTOBUF_PREDICT_TRUE +#undef PROTOBUF_PREDICT_FALSE +#undef PROTOBUF_FALLTHROUGH_INTENDED +#undef PROTOBUF_EXPORT +#undef PROTOC_EXPORT +#undef PROTOBUF_MUST_USE_RESULT +#undef PROTOBUF_MUST_USE_EXTRACT_RESULT +#undef PROTOBUF_FORCE_COPY_IN_RELEASE +#undef PROTOBUF_FORCE_COPY_IN_SWAP +#undef PROTOBUF_NAMESPACE_OPEN +#undef PROTOBUF_NAMESPACE_CLOSE +#undef PROTOBUF_UNUSED +#undef PROTOBUF_ASSUME +#undef PROTOBUF_EXPORT_TEMPLATE_DECLARE +#undef PROTOBUF_EXPORT_TEMPLATE_DEFINE +#undef PROTOBUF_ALIGNAS +#undef PROTOBUF_FINAL +#undef PROTOBUF_THREAD_LOCAL +#undef PROTOBUF_MESSAGE_OWNED_ARENA_EXPERIMENT +#undef PROTOBUF_CONSTINIT +#undef PROTOBUF_ATTRIBUTE_WEAK +#undef PROTOBUF_ATTRIBUTE_NO_DESTROY +#undef PROTOBUF_ATTRIBUTE_INIT_PRIORITY +#undef PROTOBUF_PRAGMA_INIT_SEG +#undef PROTOBUF_ASAN +#undef PROTOBUF_MSAN +#undef PROTOBUF_TSAN +#undef PROTOBUF_EXCLUSIVE_LOCKS_REQUIRED +#undef PROTOBUF_LOCKS_EXCLUDED +#undef PROTOBUF_NO_THREAD_SAFETY_ANALYSIS +#undef PROTOBUF_GUARDED_BY + +#ifdef PROTOBUF_FUTURE_BREAKING_CHANGES +#undef PROTOBUF_FUTURE_BREAKING_CHANGES +#endif + +// Restore macro that may have been #undef'd in port_def.inc. +#ifdef _MSC_VER +#pragma pop_macro("CREATE_NEW") +#pragma pop_macro("DELETE") +#pragma pop_macro("DOUBLE_CLICK") +#pragma pop_macro("ERROR") +#pragma pop_macro("ERROR_BUSY") +#pragma pop_macro("ERROR_INSTALL_FAILED") +#pragma pop_macro("ERROR_NOT_FOUND") +#pragma pop_macro("GetMessage") +#pragma pop_macro("IGNORE") +#pragma pop_macro("IN") +#pragma pop_macro("INPUT_KEYBOARD") +#pragma pop_macro("OUT") +#pragma pop_macro("OPTIONAL") +#pragma pop_macro("min") +#pragma pop_macro("max") +#pragma pop_macro("NEAR") +#pragma pop_macro("NO_DATA") +#pragma pop_macro("NO_ERROR") +#pragma pop_macro("REASON_UNKNOWN") +#pragma pop_macro("SERVICE_DISABLED") +#pragma pop_macro("SEVERITY_ERROR") +#pragma pop_macro("STRICT") +#pragma pop_macro("timezone") +#endif + +#if defined(__clang__) || defined(__GNUC__) || defined(_MSC_VER) +#pragma pop_macro("DEBUG") +#endif // defined(__clang__) || defined(__GNUC__) || defined(_MSC_VER) + +#if defined(__clang__) +#pragma clang diagnostic pop +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#endif + +// Pop the warning(push) from port_def.inc +#if _MSC_VER +#pragma warning(pop) +#endif diff --git a/external/include/google/protobuf/reflection.h b/external/include/google/protobuf/reflection.h new file mode 100644 index 0000000..af8eb00 --- /dev/null +++ b/external/include/google/protobuf/reflection.h @@ -0,0 +1,563 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// This header defines the RepeatedFieldRef class template used to access +// repeated fields with protobuf reflection API. +#ifndef GOOGLE_PROTOBUF_REFLECTION_H__ +#define GOOGLE_PROTOBUF_REFLECTION_H__ + +#include + +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +namespace google { +namespace protobuf { +namespace internal { +template +struct RefTypeTraits; +} // namespace internal + +template +RepeatedFieldRef Reflection::GetRepeatedFieldRef( + const Message& message, const FieldDescriptor* field) const { + return RepeatedFieldRef(message, field); +} + +template +MutableRepeatedFieldRef Reflection::GetMutableRepeatedFieldRef( + Message* message, const FieldDescriptor* field) const { + return MutableRepeatedFieldRef(message, field); +} + +// RepeatedFieldRef definition for non-message types. +template +class RepeatedFieldRef< + T, typename std::enable_if::value>::type> { + typedef typename internal::RefTypeTraits::iterator IteratorType; + typedef typename internal::RefTypeTraits::AccessorType AccessorType; + + public: + bool empty() const { return accessor_->IsEmpty(data_); } + int size() const { return accessor_->Size(data_); } + T Get(int index) const { return accessor_->template Get(data_, index); } + + typedef IteratorType iterator; + typedef IteratorType const_iterator; + typedef T value_type; + typedef T& reference; + typedef const T& const_reference; + typedef int size_type; + typedef ptrdiff_t difference_type; + + iterator begin() const { return iterator(data_, accessor_, true); } + iterator end() const { return iterator(data_, accessor_, false); } + + private: + friend class Reflection; + RepeatedFieldRef(const Message& message, const FieldDescriptor* field) { + const Reflection* reflection = message.GetReflection(); + data_ = reflection->RepeatedFieldData(const_cast(&message), field, + internal::RefTypeTraits::cpp_type, + NULL); + accessor_ = reflection->RepeatedFieldAccessor(field); + } + + const void* data_; + const AccessorType* accessor_; +}; + +// MutableRepeatedFieldRef definition for non-message types. +template +class MutableRepeatedFieldRef< + T, typename std::enable_if::value>::type> { + typedef typename internal::RefTypeTraits::AccessorType AccessorType; + + public: + bool empty() const { return accessor_->IsEmpty(data_); } + int size() const { return accessor_->Size(data_); } + T Get(int index) const { return accessor_->template Get(data_, index); } + + void Set(int index, const T& value) const { + accessor_->template Set(data_, index, value); + } + void Add(const T& value) const { accessor_->template Add(data_, value); } + void RemoveLast() const { accessor_->RemoveLast(data_); } + void SwapElements(int index1, int index2) const { + accessor_->SwapElements(data_, index1, index2); + } + void Clear() const { accessor_->Clear(data_); } + + void Swap(const MutableRepeatedFieldRef& other) const { + accessor_->Swap(data_, other.accessor_, other.data_); + } + + template + void MergeFrom(const Container& container) const { + typedef typename Container::const_iterator Iterator; + for (Iterator it = container.begin(); it != container.end(); ++it) { + Add(*it); + } + } + template + void CopyFrom(const Container& container) const { + Clear(); + MergeFrom(container); + } + + private: + friend class Reflection; + MutableRepeatedFieldRef(Message* message, const FieldDescriptor* field) { + const Reflection* reflection = message->GetReflection(); + data_ = reflection->RepeatedFieldData( + message, field, internal::RefTypeTraits::cpp_type, NULL); + accessor_ = reflection->RepeatedFieldAccessor(field); + } + + void* data_; + const AccessorType* accessor_; +}; + +// RepeatedFieldRef definition for message types. +template +class RepeatedFieldRef< + T, typename std::enable_if::value>::type> { + typedef typename internal::RefTypeTraits::iterator IteratorType; + typedef typename internal::RefTypeTraits::AccessorType AccessorType; + + public: + bool empty() const { return accessor_->IsEmpty(data_); } + int size() const { return accessor_->Size(data_); } + // This method returns a reference to the underlying message object if it + // exists. If a message object doesn't exist (e.g., data stored in serialized + // form), scratch_space will be filled with the data and a reference to it + // will be returned. + // + // Example: + // RepeatedFieldRef h = ... + // unique_ptr scratch_space(h.NewMessage()); + // const Message& item = h.Get(index, scratch_space.get()); + const T& Get(int index, T* scratch_space) const { + return *static_cast(accessor_->Get(data_, index, scratch_space)); + } + // Create a new message of the same type as the messages stored in this + // repeated field. Caller takes ownership of the returned object. + T* NewMessage() const { return static_cast(default_instance_->New()); } + + typedef IteratorType iterator; + typedef IteratorType const_iterator; + typedef T value_type; + typedef T& reference; + typedef const T& const_reference; + typedef int size_type; + typedef ptrdiff_t difference_type; + + iterator begin() const { + return iterator(data_, accessor_, true, NewMessage()); + } + iterator end() const { + // The end iterator must not be dereferenced, no need for scratch space. + return iterator(data_, accessor_, false, nullptr); + } + + private: + friend class Reflection; + RepeatedFieldRef(const Message& message, const FieldDescriptor* field) { + const Reflection* reflection = message.GetReflection(); + data_ = reflection->RepeatedFieldData( + const_cast(&message), field, + internal::RefTypeTraits::cpp_type, + internal::RefTypeTraits::GetMessageFieldDescriptor()); + accessor_ = reflection->RepeatedFieldAccessor(field); + default_instance_ = + reflection->GetMessageFactory()->GetPrototype(field->message_type()); + } + + const void* data_; + const AccessorType* accessor_; + const Message* default_instance_; +}; + +// MutableRepeatedFieldRef definition for message types. +template +class MutableRepeatedFieldRef< + T, typename std::enable_if::value>::type> { + typedef typename internal::RefTypeTraits::AccessorType AccessorType; + + public: + bool empty() const { return accessor_->IsEmpty(data_); } + int size() const { return accessor_->Size(data_); } + // See comments for RepeatedFieldRef::Get() + const T& Get(int index, T* scratch_space) const { + return *static_cast(accessor_->Get(data_, index, scratch_space)); + } + // Create a new message of the same type as the messages stored in this + // repeated field. Caller takes ownership of the returned object. + T* NewMessage() const { return static_cast(default_instance_->New()); } + + void Set(int index, const T& value) const { + accessor_->Set(data_, index, &value); + } + void Add(const T& value) const { accessor_->Add(data_, &value); } + void RemoveLast() const { accessor_->RemoveLast(data_); } + void SwapElements(int index1, int index2) const { + accessor_->SwapElements(data_, index1, index2); + } + void Clear() const { accessor_->Clear(data_); } + + void Swap(const MutableRepeatedFieldRef& other) const { + accessor_->Swap(data_, other.accessor_, other.data_); + } + + template + void MergeFrom(const Container& container) const { + typedef typename Container::const_iterator Iterator; + for (Iterator it = container.begin(); it != container.end(); ++it) { + Add(*it); + } + } + template + void CopyFrom(const Container& container) const { + Clear(); + MergeFrom(container); + } + + private: + friend class Reflection; + MutableRepeatedFieldRef(Message* message, const FieldDescriptor* field) { + const Reflection* reflection = message->GetReflection(); + data_ = reflection->RepeatedFieldData( + message, field, internal::RefTypeTraits::cpp_type, + internal::RefTypeTraits::GetMessageFieldDescriptor()); + accessor_ = reflection->RepeatedFieldAccessor(field); + default_instance_ = + reflection->GetMessageFactory()->GetPrototype(field->message_type()); + } + + void* data_; + const AccessorType* accessor_; + const Message* default_instance_; +}; + +namespace internal { +// Interfaces used to implement reflection RepeatedFieldRef API. +// Reflection::GetRepeatedAccessor() should return a pointer to an singleton +// object that implements the below interface. +// +// This interface passes/returns values using void pointers. The actual type +// of the value depends on the field's cpp_type. Following is a mapping from +// cpp_type to the type that should be used in this interface: +// +// field->cpp_type() T Actual type of void* +// CPPTYPE_INT32 int32 int32 +// CPPTYPE_UINT32 uint32 uint32 +// CPPTYPE_INT64 int64 int64 +// CPPTYPE_UINT64 uint64 uint64 +// CPPTYPE_DOUBLE double double +// CPPTYPE_FLOAT float float +// CPPTYPE_BOOL bool bool +// CPPTYPE_ENUM generated enum type int32 +// CPPTYPE_STRING string std::string +// CPPTYPE_MESSAGE generated message type google::protobuf::Message +// or google::protobuf::Message +// +// Note that for enums we use int32 in the interface. +// +// You can map from T to the actual type using RefTypeTraits: +// typedef RefTypeTraits::AccessorValueType ActualType; +class PROTOBUF_EXPORT RepeatedFieldAccessor { + public: + // Typedefs for clarity. + typedef void Field; + typedef void Value; + typedef void Iterator; + + virtual bool IsEmpty(const Field* data) const = 0; + virtual int Size(const Field* data) const = 0; + // Depends on the underlying representation of the repeated field, this + // method can return a pointer to the underlying object if such an object + // exists, or fill the data into scratch_space and return scratch_space. + // Callers of this method must ensure scratch_space is a valid pointer + // to a mutable object of the correct type. + virtual const Value* Get(const Field* data, int index, + Value* scratch_space) const = 0; + + virtual void Clear(Field* data) const = 0; + virtual void Set(Field* data, int index, const Value* value) const = 0; + virtual void Add(Field* data, const Value* value) const = 0; + virtual void RemoveLast(Field* data) const = 0; + virtual void SwapElements(Field* data, int index1, int index2) const = 0; + virtual void Swap(Field* data, const RepeatedFieldAccessor* other_mutator, + Field* other_data) const = 0; + + // Create an iterator that points at the beginning of the repeated field. + virtual Iterator* BeginIterator(const Field* data) const = 0; + // Create an iterator that points at the end of the repeated field. + virtual Iterator* EndIterator(const Field* data) const = 0; + // Make a copy of an iterator and return the new copy. + virtual Iterator* CopyIterator(const Field* data, + const Iterator* iterator) const = 0; + // Move an iterator to point to the next element. + virtual Iterator* AdvanceIterator(const Field* data, + Iterator* iterator) const = 0; + // Compare whether two iterators point to the same element. + virtual bool EqualsIterator(const Field* data, const Iterator* a, + const Iterator* b) const = 0; + // Delete an iterator created by BeginIterator(), EndIterator() and + // CopyIterator(). + virtual void DeleteIterator(const Field* data, Iterator* iterator) const = 0; + // Like Get() but for iterators. + virtual const Value* GetIteratorValue(const Field* data, + const Iterator* iterator, + Value* scratch_space) const = 0; + + // Templated methods that make using this interface easier for non-message + // types. + template + T Get(const Field* data, int index) const { + typedef typename RefTypeTraits::AccessorValueType ActualType; + ActualType scratch_space; + return static_cast(*reinterpret_cast( + Get(data, index, static_cast(&scratch_space)))); + } + + template + void Set(Field* data, int index, const ValueType& value) const { + typedef typename RefTypeTraits::AccessorValueType ActualType; + // In this RepeatedFieldAccessor interface we pass/return data using + // raw pointers. Type of the data these raw pointers point to should + // be ActualType. Here we have a ValueType object and want a ActualType + // pointer. We can't cast a ValueType pointer to an ActualType pointer + // directly because their type might be different (for enums ValueType + // may be a generated enum type while ActualType is int32). To be safe + // we make a copy to get a temporary ActualType object and use it. + ActualType tmp = static_cast(value); + Set(data, index, static_cast(&tmp)); + } + + template + void Add(Field* data, const ValueType& value) const { + typedef typename RefTypeTraits::AccessorValueType ActualType; + // In this RepeatedFieldAccessor interface we pass/return data using + // raw pointers. Type of the data these raw pointers point to should + // be ActualType. Here we have a ValueType object and want a ActualType + // pointer. We can't cast a ValueType pointer to an ActualType pointer + // directly because their type might be different (for enums ValueType + // may be a generated enum type while ActualType is int32). To be safe + // we make a copy to get a temporary ActualType object and use it. + ActualType tmp = static_cast(value); + Add(data, static_cast(&tmp)); + } + + protected: + // We want the destructor to be completely trivial as to allow it to be + // a function local static. Hence we make it non-virtual and protected, + // this class only live as part of a global singleton and should not be + // deleted. + ~RepeatedFieldAccessor() = default; +}; + +// Implement (Mutable)RepeatedFieldRef::iterator +template +class RepeatedFieldRefIterator + : public std::iterator { + typedef typename RefTypeTraits::AccessorValueType AccessorValueType; + typedef typename RefTypeTraits::IteratorValueType IteratorValueType; + typedef typename RefTypeTraits::IteratorPointerType IteratorPointerType; + + public: + // Constructor for non-message fields. + RepeatedFieldRefIterator(const void* data, + const RepeatedFieldAccessor* accessor, bool begin) + : data_(data), + accessor_(accessor), + iterator_(begin ? accessor->BeginIterator(data) + : accessor->EndIterator(data)), + // The end iterator must not be dereferenced, no need for scratch space. + scratch_space_(begin ? new AccessorValueType : nullptr) {} + // Constructor for message fields. + RepeatedFieldRefIterator(const void* data, + const RepeatedFieldAccessor* accessor, bool begin, + AccessorValueType* scratch_space) + : data_(data), + accessor_(accessor), + iterator_(begin ? accessor->BeginIterator(data) + : accessor->EndIterator(data)), + scratch_space_(scratch_space) {} + ~RepeatedFieldRefIterator() { accessor_->DeleteIterator(data_, iterator_); } + RepeatedFieldRefIterator operator++(int) { + RepeatedFieldRefIterator tmp(*this); + iterator_ = accessor_->AdvanceIterator(data_, iterator_); + return tmp; + } + RepeatedFieldRefIterator& operator++() { + iterator_ = accessor_->AdvanceIterator(data_, iterator_); + return *this; + } + IteratorValueType operator*() const { + return static_cast( + *static_cast(accessor_->GetIteratorValue( + data_, iterator_, scratch_space_.get()))); + } + IteratorPointerType operator->() const { + return static_cast( + accessor_->GetIteratorValue(data_, iterator_, scratch_space_.get())); + } + bool operator!=(const RepeatedFieldRefIterator& other) const { + assert(data_ == other.data_); + assert(accessor_ == other.accessor_); + return !accessor_->EqualsIterator(data_, iterator_, other.iterator_); + } + bool operator==(const RepeatedFieldRefIterator& other) const { + return !this->operator!=(other); + } + + RepeatedFieldRefIterator(const RepeatedFieldRefIterator& other) + : data_(other.data_), + accessor_(other.accessor_), + iterator_(accessor_->CopyIterator(data_, other.iterator_)) {} + RepeatedFieldRefIterator& operator=(const RepeatedFieldRefIterator& other) { + if (this != &other) { + accessor_->DeleteIterator(data_, iterator_); + data_ = other.data_; + accessor_ = other.accessor_; + iterator_ = accessor_->CopyIterator(data_, other.iterator_); + } + return *this; + } + + protected: + const void* data_; + const RepeatedFieldAccessor* accessor_; + void* iterator_; + std::unique_ptr scratch_space_; +}; + +// TypeTraits that maps the type parameter T of RepeatedFieldRef or +// MutableRepeatedFieldRef to corresponding iterator type, +// RepeatedFieldAccessor type, etc. +template +struct PrimitiveTraits { + static constexpr bool is_primitive = false; +}; +#define DEFINE_PRIMITIVE(TYPE, type) \ + template <> \ + struct PrimitiveTraits { \ + static const bool is_primitive = true; \ + static const FieldDescriptor::CppType cpp_type = \ + FieldDescriptor::CPPTYPE_##TYPE; \ + }; +DEFINE_PRIMITIVE(INT32, int32) +DEFINE_PRIMITIVE(UINT32, uint32) +DEFINE_PRIMITIVE(INT64, int64) +DEFINE_PRIMITIVE(UINT64, uint64) +DEFINE_PRIMITIVE(FLOAT, float) +DEFINE_PRIMITIVE(DOUBLE, double) +DEFINE_PRIMITIVE(BOOL, bool) +#undef DEFINE_PRIMITIVE + +template +struct RefTypeTraits< + T, typename std::enable_if::is_primitive>::type> { + typedef RepeatedFieldRefIterator iterator; + typedef RepeatedFieldAccessor AccessorType; + typedef T AccessorValueType; + typedef T IteratorValueType; + typedef T* IteratorPointerType; + static constexpr FieldDescriptor::CppType cpp_type = + PrimitiveTraits::cpp_type; + static const Descriptor* GetMessageFieldDescriptor() { return NULL; } +}; + +template +struct RefTypeTraits< + T, typename std::enable_if::value>::type> { + typedef RepeatedFieldRefIterator iterator; + typedef RepeatedFieldAccessor AccessorType; + // We use int32 for repeated enums in RepeatedFieldAccessor. + typedef int32 AccessorValueType; + typedef T IteratorValueType; + typedef int32* IteratorPointerType; + static constexpr FieldDescriptor::CppType cpp_type = + FieldDescriptor::CPPTYPE_ENUM; + static const Descriptor* GetMessageFieldDescriptor() { return NULL; } +}; + +template +struct RefTypeTraits< + T, typename std::enable_if::value>::type> { + typedef RepeatedFieldRefIterator iterator; + typedef RepeatedFieldAccessor AccessorType; + typedef std::string AccessorValueType; + typedef const std::string IteratorValueType; + typedef const std::string* IteratorPointerType; + static constexpr FieldDescriptor::CppType cpp_type = + FieldDescriptor::CPPTYPE_STRING; + static const Descriptor* GetMessageFieldDescriptor() { return NULL; } +}; + +template +struct MessageDescriptorGetter { + static const Descriptor* get() { + return T::default_instance().GetDescriptor(); + } +}; +template <> +struct MessageDescriptorGetter { + static const Descriptor* get() { return NULL; } +}; + +template +struct RefTypeTraits< + T, typename std::enable_if::value>::type> { + typedef RepeatedFieldRefIterator iterator; + typedef RepeatedFieldAccessor AccessorType; + typedef Message AccessorValueType; + typedef const T& IteratorValueType; + typedef const T* IteratorPointerType; + static constexpr FieldDescriptor::CppType cpp_type = + FieldDescriptor::CPPTYPE_MESSAGE; + static const Descriptor* GetMessageFieldDescriptor() { + return MessageDescriptorGetter::get(); + } +}; +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_REFLECTION_H__ diff --git a/external/include/google/protobuf/reflection_ops.h b/external/include/google/protobuf/reflection_ops.h new file mode 100644 index 0000000..fb98714 --- /dev/null +++ b/external/include/google/protobuf/reflection_ops.h @@ -0,0 +1,91 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// This header is logically internal, but is made public because it is used +// from protocol-compiler-generated code, which may reside in other components. + +#ifndef GOOGLE_PROTOBUF_REFLECTION_OPS_H__ +#define GOOGLE_PROTOBUF_REFLECTION_OPS_H__ + +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +namespace google { +namespace protobuf { +namespace internal { + +// Basic operations that can be performed using reflection. +// These can be used as a cheap way to implement the corresponding +// methods of the Message interface, though they are likely to be +// slower than implementations tailored for the specific message type. +// +// This class should stay limited to operations needed to implement +// the Message interface. +// +// This class is really a namespace that contains only static methods. +class PROTOBUF_EXPORT ReflectionOps { + public: + static void Copy(const Message& from, Message* to); + static void Merge(const Message& from, Message* to); + static void Clear(Message* message); + static bool IsInitialized(const Message& message); + static bool IsInitialized(const Message& message, bool check_fields, + bool check_descendants); + static void DiscardUnknownFields(Message* message); + + // Finds all unset required fields in the message and adds their full + // paths (e.g. "foo.bar[5].baz") to *names. "prefix" will be attached to + // the front of each name. + static void FindInitializationErrors(const Message& message, + const std::string& prefix, + std::vector* errors); + + private: + // All methods are static. No need to construct. + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ReflectionOps); +}; + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_REFLECTION_OPS_H__ diff --git a/external/include/google/protobuf/repeated_field.h b/external/include/google/protobuf/repeated_field.h new file mode 100644 index 0000000..3e3f601 --- /dev/null +++ b/external/include/google/protobuf/repeated_field.h @@ -0,0 +1,2919 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// RepeatedField and RepeatedPtrField are used by generated protocol message +// classes to manipulate repeated fields. These classes are very similar to +// STL's vector, but include a number of optimizations found to be useful +// specifically in the case of Protocol Buffers. RepeatedPtrField is +// particularly different from STL vector as it manages ownership of the +// pointers that it contains. +// +// Typically, clients should not need to access RepeatedField objects directly, +// but should instead use the accessor functions generated automatically by the +// protocol compiler. + +#ifndef GOOGLE_PROTOBUF_REPEATED_FIELD_H__ +#define GOOGLE_PROTOBUF_REPEATED_FIELD_H__ + +#include +#ifdef _MSC_VER +// This is required for min/max on VS2013 only. +#include +#endif + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + + +// Must be included last. +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +class Message; +class Reflection; + +template +struct WeakRepeatedPtrField; + +namespace internal { + +class MergePartialFromCodedStreamHelper; +class SwapFieldHelper; + +// kRepeatedFieldLowerClampLimit is the smallest size that will be allocated +// when growing a repeated field. +constexpr int kRepeatedFieldLowerClampLimit = 4; + +// kRepeatedFieldUpperClampLimit is the lowest signed integer value that +// overflows when multiplied by 2 (which is undefined behavior). Sizes above +// this will clamp to the maximum int value instead of following exponential +// growth when growing a repeated field. +constexpr int kRepeatedFieldUpperClampLimit = + (std::numeric_limits::max() / 2) + 1; + +// A utility function for logging that doesn't need any template types. +void LogIndexOutOfBounds(int index, int size); + +template +inline int CalculateReserve(Iter begin, Iter end, std::forward_iterator_tag) { + return static_cast(std::distance(begin, end)); +} + +template +inline int CalculateReserve(Iter /*begin*/, Iter /*end*/, + std::input_iterator_tag /*unused*/) { + return -1; +} + +template +inline int CalculateReserve(Iter begin, Iter end) { + typedef typename std::iterator_traits::iterator_category Category; + return CalculateReserve(begin, end, Category()); +} + +// Swaps two blocks of memory of size sizeof(T). +template +inline void SwapBlock(char* p, char* q) { + T tmp; + memcpy(&tmp, p, sizeof(T)); + memcpy(p, q, sizeof(T)); + memcpy(q, &tmp, sizeof(T)); +} + +// Swaps two blocks of memory of size kSize: +// template void memswap(char* p, char* q); + +template +inline typename std::enable_if<(kSize == 0), void>::type memswap(char*, char*) { +} + +#define PROTO_MEMSWAP_DEF_SIZE(reg_type, max_size) \ + template \ + typename std::enable_if<(kSize >= sizeof(reg_type) && kSize < (max_size)), \ + void>::type \ + memswap(char* p, char* q) { \ + SwapBlock(p, q); \ + memswap(p + sizeof(reg_type), \ + q + sizeof(reg_type)); \ + } + +PROTO_MEMSWAP_DEF_SIZE(uint8, 2) +PROTO_MEMSWAP_DEF_SIZE(uint16, 4) +PROTO_MEMSWAP_DEF_SIZE(uint32, 8) + +#ifdef __SIZEOF_INT128__ +PROTO_MEMSWAP_DEF_SIZE(uint64, 16) +PROTO_MEMSWAP_DEF_SIZE(__uint128_t, (1u << 31)) +#else +PROTO_MEMSWAP_DEF_SIZE(uint64, (1u << 31)) +#endif + +#undef PROTO_MEMSWAP_DEF_SIZE + +} // namespace internal + +// RepeatedField is used to represent repeated fields of a primitive type (in +// other words, everything except strings and nested Messages). Most users will +// not ever use a RepeatedField directly; they will use the get-by-index, +// set-by-index, and add accessors that are generated for all repeated fields. +template +class RepeatedField final { + static_assert( + alignof(Arena) >= alignof(Element), + "We only support types that have an alignment smaller than Arena"); + + public: + constexpr RepeatedField(); + explicit RepeatedField(Arena* arena); + + RepeatedField(const RepeatedField& other); + + template ())>::value>::type> + RepeatedField(Iter begin, Iter end); + + ~RepeatedField(); + + RepeatedField& operator=(const RepeatedField& other); + + RepeatedField(RepeatedField&& other) noexcept; + RepeatedField& operator=(RepeatedField&& other) noexcept; + + bool empty() const; + int size() const; + + const Element& Get(int index) const; + Element* Mutable(int index); + + const Element& operator[](int index) const { return Get(index); } + Element& operator[](int index) { return *Mutable(index); } + + const Element& at(int index) const; + Element& at(int index); + + void Set(int index, const Element& value); + void Add(const Element& value); + // Appends a new element and return a pointer to it. + // The new element is uninitialized if |Element| is a POD type. + Element* Add(); + // Append elements in the range [begin, end) after reserving + // the appropriate number of elements. + template + void Add(Iter begin, Iter end); + + // Remove the last element in the array. + void RemoveLast(); + + // Extract elements with indices in "[start .. start+num-1]". + // Copy them into "elements[0 .. num-1]" if "elements" is not NULL. + // Caution: implementation also moves elements with indices [start+num ..]. + // Calling this routine inside a loop can cause quadratic behavior. + void ExtractSubrange(int start, int num, Element* elements); + + void Clear(); + void MergeFrom(const RepeatedField& other); + void CopyFrom(const RepeatedField& other); + + // Replaces the contents with RepeatedField(begin, end). + template + void Assign(Iter begin, Iter end); + + // Reserve space to expand the field to at least the given size. If the + // array is grown, it will always be at least doubled in size. + void Reserve(int new_size); + + // Resize the RepeatedField to a new, smaller size. This is O(1). + void Truncate(int new_size); + + void AddAlreadyReserved(const Element& value); + // Appends a new element and return a pointer to it. + // The new element is uninitialized if |Element| is a POD type. + // Should be called only if Capacity() > Size(). + Element* AddAlreadyReserved(); + Element* AddNAlreadyReserved(int elements); + int Capacity() const; + + // Like STL resize. Uses value to fill appended elements. + // Like Truncate() if new_size <= size(), otherwise this is + // O(new_size - size()). + void Resize(int new_size, const Element& value); + + // Gets the underlying array. This pointer is possibly invalidated by + // any add or remove operation. + Element* mutable_data(); + const Element* data() const; + + // Swap entire contents with "other". If they are separate arenas then, copies + // data between each other. + void Swap(RepeatedField* other); + + // Swap entire contents with "other". Should be called only if the caller can + // guarantee that both repeated fields are on the same arena or are on the + // heap. Swapping between different arenas is disallowed and caught by a + // GOOGLE_DCHECK (see API docs for details). + void UnsafeArenaSwap(RepeatedField* other); + + // Swap two elements. + void SwapElements(int index1, int index2); + + // STL-like iterator support + typedef Element* iterator; + typedef const Element* const_iterator; + typedef Element value_type; + typedef value_type& reference; + typedef const value_type& const_reference; + typedef value_type* pointer; + typedef const value_type* const_pointer; + typedef int size_type; + typedef ptrdiff_t difference_type; + + iterator begin(); + const_iterator begin() const; + const_iterator cbegin() const; + iterator end(); + const_iterator end() const; + const_iterator cend() const; + + // Reverse iterator support + typedef std::reverse_iterator const_reverse_iterator; + typedef std::reverse_iterator reverse_iterator; + reverse_iterator rbegin() { return reverse_iterator(end()); } + const_reverse_iterator rbegin() const { + return const_reverse_iterator(end()); + } + reverse_iterator rend() { return reverse_iterator(begin()); } + const_reverse_iterator rend() const { + return const_reverse_iterator(begin()); + } + + // Returns the number of bytes used by the repeated field, excluding + // sizeof(*this) + size_t SpaceUsedExcludingSelfLong() const; + + int SpaceUsedExcludingSelf() const { + return internal::ToIntSize(SpaceUsedExcludingSelfLong()); + } + + // Removes the element referenced by position. + // + // Returns an iterator to the element immediately following the removed + // element. + // + // Invalidates all iterators at or after the removed element, including end(). + iterator erase(const_iterator position); + + // Removes the elements in the range [first, last). + // + // Returns an iterator to the element immediately following the removed range. + // + // Invalidates all iterators at or after the removed range, including end(). + iterator erase(const_iterator first, const_iterator last); + + // Get the Arena on which this RepeatedField stores its elements. + inline Arena* GetArena() const { + return (total_size_ == 0) ? static_cast(arena_or_elements_) + : rep()->arena; + } + + // For internal use only. + // + // This is public due to it being called by generated code. + inline void InternalSwap(RepeatedField* other); + + private: + static constexpr int kInitialSize = 0; + // A note on the representation here (see also comment below for + // RepeatedPtrFieldBase's struct Rep): + // + // We maintain the same sizeof(RepeatedField) as before we added arena support + // so that we do not degrade performance by bloating memory usage. Directly + // adding an arena_ element to RepeatedField is quite costly. By using + // indirection in this way, we keep the same size when the RepeatedField is + // empty (common case), and add only an 8-byte header to the elements array + // when non-empty. We make sure to place the size fields directly in the + // RepeatedField class to avoid costly cache misses due to the indirection. + int current_size_; + int total_size_; + struct Rep { + Arena* arena; + // Here we declare a huge array as a way of approximating C's "flexible + // array member" feature without relying on undefined behavior. + Element elements[(std::numeric_limits::max() - 2 * sizeof(Arena*)) / + sizeof(Element)]; + }; + static constexpr size_t kRepHeaderSize = offsetof(Rep, elements); + + // If total_size_ == 0 this points to an Arena otherwise it points to the + // elements member of a Rep struct. Using this invariant allows the storage of + // the arena pointer without an extra allocation in the constructor. + void* arena_or_elements_; + + // Return pointer to elements array. + // pre-condition: the array must have been allocated. + Element* elements() const { + GOOGLE_DCHECK_GT(total_size_, 0); + // Because of above pre-condition this cast is safe. + return unsafe_elements(); + } + + // Return pointer to elements array if it exists otherwise either null or + // a invalid pointer is returned. This only happens for empty repeated fields, + // where you can't dereference this pointer anyway (it's empty). + Element* unsafe_elements() const { + return static_cast(arena_or_elements_); + } + + // Return pointer to the Rep struct. + // pre-condition: the Rep must have been allocated, ie elements() is safe. + Rep* rep() const { + char* addr = reinterpret_cast(elements()) - offsetof(Rep, elements); + return reinterpret_cast(addr); + } + + friend class Arena; + typedef void InternalArenaConstructable_; + + // Move the contents of |from| into |to|, possibly clobbering |from| in the + // process. For primitive types this is just a memcpy(), but it could be + // specialized for non-primitive types to, say, swap each element instead. + void MoveArray(Element* to, Element* from, int size); + + // Copy the elements of |from| into |to|. + void CopyArray(Element* to, const Element* from, int size); + + // Internal helper to delete all elements and deallocate the storage. + void InternalDeallocate(Rep* rep, int size) { + if (rep != NULL) { + Element* e = &rep->elements[0]; + if (!std::is_trivial::value) { + Element* limit = &rep->elements[size]; + for (; e < limit; e++) { + e->~Element(); + } + } + if (rep->arena == NULL) { +#if defined(__GXX_DELETE_WITH_SIZE__) || defined(__cpp_sized_deallocation) + const size_t bytes = size * sizeof(*e) + kRepHeaderSize; + ::operator delete(static_cast(rep), bytes); +#else + ::operator delete(static_cast(rep)); +#endif + } + } + } + + // This class is a performance wrapper around RepeatedField::Add(const T&) + // function. In general unless a RepeatedField is a local stack variable LLVM + // has a hard time optimizing Add. The machine code tends to be + // loop: + // mov %size, dword ptr [%repeated_field] // load + // cmp %size, dword ptr [%repeated_field + 4] + // jae fallback + // mov %buffer, qword ptr [%repeated_field + 8] + // mov dword [%buffer + %size * 4], %value + // inc %size // increment + // mov dword ptr [%repeated_field], %size // store + // jmp loop + // + // This puts a load/store in each iteration of the important loop variable + // size. It's a pretty bad compile that happens even in simple cases, but + // largely the presence of the fallback path disturbs the compilers mem-to-reg + // analysis. + // + // This class takes ownership of a repeated field for the duration of it's + // lifetime. The repeated field should not be accessed during this time, ie. + // only access through this class is allowed. This class should always be a + // function local stack variable. Intended use + // + // void AddSequence(const int* begin, const int* end, RepeatedField* out) + // { + // RepeatedFieldAdder adder(out); // Take ownership of out + // for (auto it = begin; it != end; ++it) { + // adder.Add(*it); + // } + // } + // + // Typically due to the fact adder is a local stack variable. The compiler + // will be successful in mem-to-reg transformation and the machine code will + // be loop: cmp %size, %capacity jae fallback mov dword ptr [%buffer + %size * + // 4], %val inc %size jmp loop + // + // The first version executes at 7 cycles per iteration while the second + // version near 1 or 2 cycles. + template ::value> + class FastAdderImpl { + public: + explicit FastAdderImpl(RepeatedField* rf) : repeated_field_(rf) { + index_ = repeated_field_->current_size_; + capacity_ = repeated_field_->total_size_; + buffer_ = repeated_field_->unsafe_elements(); + } + ~FastAdderImpl() { repeated_field_->current_size_ = index_; } + + void Add(Element val) { + if (index_ == capacity_) { + repeated_field_->current_size_ = index_; + repeated_field_->Reserve(index_ + 1); + capacity_ = repeated_field_->total_size_; + buffer_ = repeated_field_->unsafe_elements(); + } + buffer_[index_++] = val; + } + + private: + RepeatedField* repeated_field_; + int index_; + int capacity_; + Element* buffer_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FastAdderImpl); + }; + + // FastAdder is a wrapper for adding fields. The specialization above handles + // POD types more efficiently than RepeatedField. + template + class FastAdderImpl { + public: + explicit FastAdderImpl(RepeatedField* rf) : repeated_field_(rf) {} + void Add(const Element& val) { repeated_field_->Add(val); } + + private: + RepeatedField* repeated_field_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FastAdderImpl); + }; + + using FastAdder = FastAdderImpl<>; + + friend class TestRepeatedFieldHelper; + friend class ::google::protobuf::internal::ParseContext; +}; + +namespace internal { +template +class RepeatedPtrIterator; +template +class RepeatedPtrOverPtrsIterator; +} // namespace internal + +namespace internal { + +// This is a helper template to copy an array of elements efficiently when they +// have a trivial copy constructor, and correctly otherwise. This really +// shouldn't be necessary, but our compiler doesn't optimize std::copy very +// effectively. +template ::value> +struct ElementCopier { + void operator()(Element* to, const Element* from, int array_size); +}; + +} // namespace internal + +namespace internal { + +// type-traits helper for RepeatedPtrFieldBase: we only want to invoke +// arena-related "copy if on different arena" behavior if the necessary methods +// exist on the contained type. In particular, we rely on MergeFrom() existing +// as a general proxy for the fact that a copy will work, and we also provide a +// specific override for std::string*. +template +struct TypeImplementsMergeBehaviorProbeForMergeFrom { + typedef char HasMerge; + typedef long HasNoMerge; + + // We accept either of: + // - void MergeFrom(const T& other) + // - bool MergeFrom(const T& other) + // + // We mangle these names a bit to avoid compatibility issues in 'unclean' + // include environments that may have, e.g., "#define test ..." (yes, this + // exists). + template + struct CheckType; + template + static HasMerge Check(CheckType*); + template + static HasMerge Check(CheckType*); + template + static HasNoMerge Check(...); + + // Resolves to either std::true_type or std::false_type. + typedef std::integral_constant(0)) == sizeof(HasMerge))> + type; +}; + +template +struct TypeImplementsMergeBehavior + : TypeImplementsMergeBehaviorProbeForMergeFrom {}; + + +template <> +struct TypeImplementsMergeBehavior { + typedef std::true_type type; +}; + +template +struct IsMovable + : std::integral_constant::value && + std::is_move_assignable::value> {}; + +// This is the common base class for RepeatedPtrFields. It deals only in void* +// pointers. Users should not use this interface directly. +// +// The methods of this interface correspond to the methods of RepeatedPtrField, +// but may have a template argument called TypeHandler. Its signature is: +// class TypeHandler { +// public: +// typedef MyType Type; +// static Type* New(); +// static Type* NewFromPrototype(const Type* prototype, +// Arena* arena); +// static void Delete(Type*); +// static void Clear(Type*); +// static void Merge(const Type& from, Type* to); +// +// // Only needs to be implemented if SpaceUsedExcludingSelf() is called. +// static int SpaceUsedLong(const Type&); +// }; +class PROTOBUF_EXPORT RepeatedPtrFieldBase { + protected: + constexpr RepeatedPtrFieldBase(); + explicit RepeatedPtrFieldBase(Arena* arena); + ~RepeatedPtrFieldBase() { +#ifndef NDEBUG + // Try to trigger segfault / asan failure in non-opt builds. If arena_ + // lifetime has ended before the destructor. + if (arena_) (void)arena_->SpaceAllocated(); +#endif + } + + // Must be called from destructor. + template + void Destroy(); + + bool empty() const; + int size() const; + + template + const typename TypeHandler::Type& at(int index) const; + template + typename TypeHandler::Type& at(int index); + + template + typename TypeHandler::Type* Mutable(int index); + template + void Delete(int index); + template + typename TypeHandler::Type* Add(typename TypeHandler::Type* prototype = NULL); + + public: + // The next few methods are public so that they can be called from generated + // code when implicit weak fields are used, but they should never be called by + // application code. + + template + const typename TypeHandler::Type& Get(int index) const; + + // Creates and adds an element using the given prototype, without introducing + // a link-time dependency on the concrete message type. This method is used to + // implement implicit weak fields. The prototype may be NULL, in which case an + // ImplicitWeakMessage will be used as a placeholder. + MessageLite* AddWeak(const MessageLite* prototype); + + template + void Clear(); + + template + void MergeFrom(const RepeatedPtrFieldBase& other); + + inline void InternalSwap(RepeatedPtrFieldBase* other); + + protected: + template < + typename TypeHandler, + typename std::enable_if::type* = nullptr> + void Add(typename TypeHandler::Type&& value); + + template + void RemoveLast(); + template + void CopyFrom(const RepeatedPtrFieldBase& other); + + void CloseGap(int start, int num); + + void Reserve(int new_size); + + int Capacity() const; + + template + static inline typename TypeHandler::Type* copy( + typename TypeHandler::Type* value) { + auto* new_value = TypeHandler::NewFromPrototype(value, nullptr); + TypeHandler::Merge(*value, new_value); + return new_value; + } + + // Used for constructing iterators. + void* const* raw_data() const; + void** raw_mutable_data() const; + + template + typename TypeHandler::Type** mutable_data(); + template + const typename TypeHandler::Type* const* data() const; + + template + PROTOBUF_NDEBUG_INLINE void Swap(RepeatedPtrFieldBase* other); + + void SwapElements(int index1, int index2); + + template + size_t SpaceUsedExcludingSelfLong() const; + + // Advanced memory management -------------------------------------- + + // Like Add(), but if there are no cleared objects to use, returns NULL. + template + typename TypeHandler::Type* AddFromCleared(); + + template + void AddAllocated(typename TypeHandler::Type* value) { + typename TypeImplementsMergeBehavior::type t; + AddAllocatedInternal(value, t); + } + + template + void UnsafeArenaAddAllocated(typename TypeHandler::Type* value); + + template + PROTOBUF_MUST_USE_RESULT typename TypeHandler::Type* ReleaseLast() { + typename TypeImplementsMergeBehavior::type t; + return ReleaseLastInternal(t); + } + + // Releases last element and returns it, but does not do out-of-arena copy. + // And just returns the raw pointer to the contained element in the arena. + template + typename TypeHandler::Type* UnsafeArenaReleaseLast(); + + int ClearedCount() const; + template + void AddCleared(typename TypeHandler::Type* value); + template + PROTOBUF_MUST_USE_RESULT typename TypeHandler::Type* ReleaseCleared(); + + template + void AddAllocatedInternal(typename TypeHandler::Type* value, std::true_type); + template + void AddAllocatedInternal(typename TypeHandler::Type* value, std::false_type); + + template + PROTOBUF_NOINLINE void AddAllocatedSlowWithCopy( + typename TypeHandler::Type* value, Arena* value_arena, Arena* my_arena); + template + PROTOBUF_NOINLINE void AddAllocatedSlowWithoutCopy( + typename TypeHandler::Type* value); + + template + typename TypeHandler::Type* ReleaseLastInternal(std::true_type); + template + typename TypeHandler::Type* ReleaseLastInternal(std::false_type); + + template + PROTOBUF_NOINLINE void SwapFallback(RepeatedPtrFieldBase* other); + + inline Arena* GetArena() const { return arena_; } + + private: + static constexpr int kInitialSize = 0; + // A few notes on internal representation: + // + // We use an indirected approach, with struct Rep, to keep + // sizeof(RepeatedPtrFieldBase) equivalent to what it was before arena support + // was added, namely, 3 8-byte machine words on x86-64. An instance of Rep is + // allocated only when the repeated field is non-empty, and it is a + // dynamically-sized struct (the header is directly followed by elements[]). + // We place arena_ and current_size_ directly in the object to avoid cache + // misses due to the indirection, because these fields are checked frequently. + // Placing all fields directly in the RepeatedPtrFieldBase instance costs + // significant performance for memory-sensitive workloads. + Arena* arena_; + int current_size_; + int total_size_; + struct Rep { + int allocated_size; + // Here we declare a huge array as a way of approximating C's "flexible + // array member" feature without relying on undefined behavior. + void* elements[(std::numeric_limits::max() - 2 * sizeof(int)) / + sizeof(void*)]; + }; + static constexpr size_t kRepHeaderSize = offsetof(Rep, elements); + Rep* rep_; + + template + static inline typename TypeHandler::Type* cast(void* element) { + return reinterpret_cast(element); + } + template + static inline const typename TypeHandler::Type* cast(const void* element) { + return reinterpret_cast(element); + } + + // Non-templated inner function to avoid code duplication. Takes a function + // pointer to the type-specific (templated) inner allocate/merge loop. + void MergeFromInternal(const RepeatedPtrFieldBase& other, + void (RepeatedPtrFieldBase::*inner_loop)(void**, + void**, int, + int)); + + template + PROTOBUF_NOINLINE void MergeFromInnerLoop(void** our_elems, + void** other_elems, int length, + int already_allocated); + + // Internal helper: extend array space if necessary to contain |extend_amount| + // more elements, and return a pointer to the element immediately following + // the old list of elements. This interface factors out common behavior from + // Reserve() and MergeFrom() to reduce code size. |extend_amount| must be > 0. + void** InternalExtend(int extend_amount); + + // Internal helper for Add: add "obj" as the next element in the + // array, including potentially resizing the array with Reserve if + // needed + void* AddOutOfLineHelper(void* obj); + + // The reflection implementation needs to call protected methods directly, + // reinterpreting pointers as being to Message instead of a specific Message + // subclass. + friend class ::PROTOBUF_NAMESPACE_ID::Reflection; + friend class ::PROTOBUF_NAMESPACE_ID::internal::SwapFieldHelper; + + // ExtensionSet stores repeated message extensions as + // RepeatedPtrField, but non-lite ExtensionSets need to implement + // SpaceUsedLong(), and thus need to call SpaceUsedExcludingSelfLong() + // reinterpreting MessageLite as Message. ExtensionSet also needs to make use + // of AddFromCleared(), which is not part of the public interface. + friend class ExtensionSet; + + // The MapFieldBase implementation needs to call protected methods directly, + // reinterpreting pointers as being to Message instead of a specific Message + // subclass. + friend class MapFieldBase; + friend class MapFieldBaseStub; + + // The table-driven MergePartialFromCodedStream implementation needs to + // operate on RepeatedPtrField. + friend class MergePartialFromCodedStreamHelper; + friend class AccessorHelper; + template + friend struct google::protobuf::WeakRepeatedPtrField; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(RepeatedPtrFieldBase); +}; + +template +class GenericTypeHandler { + public: + typedef GenericType Type; + using Movable = IsMovable; + + static inline GenericType* New(Arena* arena) { + return Arena::CreateMaybeMessage(arena); + } + static inline GenericType* New(Arena* arena, GenericType&& value) { + return Arena::Create(arena, std::move(value)); + } + static inline GenericType* NewFromPrototype(const GenericType* prototype, + Arena* arena = NULL); + static inline void Delete(GenericType* value, Arena* arena) { + if (arena == NULL) { + delete value; + } + } + static inline Arena* GetOwningArena(GenericType* value) { + return Arena::GetOwningArena(value); + } + + static inline void Clear(GenericType* value) { value->Clear(); } + PROTOBUF_NOINLINE + static void Merge(const GenericType& from, GenericType* to); + static inline size_t SpaceUsedLong(const GenericType& value) { + return value.SpaceUsedLong(); + } +}; + +template +GenericType* GenericTypeHandler::NewFromPrototype( + const GenericType* /* prototype */, Arena* arena) { + return New(arena); +} +template +void GenericTypeHandler::Merge(const GenericType& from, + GenericType* to) { + to->MergeFrom(from); +} + +// NewFromPrototype() and Merge() are not defined inline here, as we will need +// to do a virtual function dispatch anyways to go from Message* to call +// New/Merge. +template <> +MessageLite* GenericTypeHandler::NewFromPrototype( + const MessageLite* prototype, Arena* arena); +template <> +inline Arena* GenericTypeHandler::GetOwningArena( + MessageLite* value) { + return value->GetOwningArena(); +} +template <> +void GenericTypeHandler::Merge(const MessageLite& from, + MessageLite* to); +template <> +inline void GenericTypeHandler::Clear(std::string* value) { + value->clear(); +} +template <> +void GenericTypeHandler::Merge(const std::string& from, + std::string* to); + +// Message specialization bodies defined in message.cc. This split is necessary +// to allow proto2-lite (which includes this header) to be independent of +// Message. +template <> +PROTOBUF_EXPORT Message* GenericTypeHandler::NewFromPrototype( + const Message* prototype, Arena* arena); +template <> +PROTOBUF_EXPORT Arena* GenericTypeHandler::GetOwningArena( + Message* value); + +class StringTypeHandler { + public: + typedef std::string Type; + using Movable = IsMovable; + + static inline std::string* New(Arena* arena) { + return Arena::Create(arena); + } + static inline std::string* New(Arena* arena, std::string&& value) { + return Arena::Create(arena, std::move(value)); + } + static inline std::string* NewFromPrototype(const std::string*, + Arena* arena) { + return New(arena); + } + static inline Arena* GetOwningArena(std::string*) { return nullptr; } + static inline void Delete(std::string* value, Arena* arena) { + if (arena == NULL) { + delete value; + } + } + static inline void Clear(std::string* value) { value->clear(); } + static inline void Merge(const std::string& from, std::string* to) { + *to = from; + } + static size_t SpaceUsedLong(const std::string& value) { + return sizeof(value) + StringSpaceUsedExcludingSelfLong(value); + } +}; + +} // namespace internal + +// RepeatedPtrField is like RepeatedField, but used for repeated strings or +// Messages. +template +class RepeatedPtrField final : private internal::RepeatedPtrFieldBase { + public: + constexpr RepeatedPtrField(); + explicit RepeatedPtrField(Arena* arena); + + RepeatedPtrField(const RepeatedPtrField& other); + + template ())>::value>::type> + RepeatedPtrField(Iter begin, Iter end); + + ~RepeatedPtrField(); + + RepeatedPtrField& operator=(const RepeatedPtrField& other); + + RepeatedPtrField(RepeatedPtrField&& other) noexcept; + RepeatedPtrField& operator=(RepeatedPtrField&& other) noexcept; + + bool empty() const; + int size() const; + + const Element& Get(int index) const; + Element* Mutable(int index); + Element* Add(); + void Add(Element&& value); + // Append elements in the range [begin, end) after reserving + // the appropriate number of elements. + template + void Add(Iter begin, Iter end); + + const Element& operator[](int index) const { return Get(index); } + Element& operator[](int index) { return *Mutable(index); } + + const Element& at(int index) const; + Element& at(int index); + + // Remove the last element in the array. + // Ownership of the element is retained by the array. + void RemoveLast(); + + // Delete elements with indices in the range [start .. start+num-1]. + // Caution: implementation moves all elements with indices [start+num .. ]. + // Calling this routine inside a loop can cause quadratic behavior. + void DeleteSubrange(int start, int num); + + void Clear(); + void MergeFrom(const RepeatedPtrField& other); + void CopyFrom(const RepeatedPtrField& other); + + // Replaces the contents with RepeatedPtrField(begin, end). + template + void Assign(Iter begin, Iter end); + + // Reserve space to expand the field to at least the given size. This only + // resizes the pointer array; it doesn't allocate any objects. If the + // array is grown, it will always be at least doubled in size. + void Reserve(int new_size); + + int Capacity() const; + + // Gets the underlying array. This pointer is possibly invalidated by + // any add or remove operation. + Element** mutable_data(); + const Element* const* data() const; + + // Swap entire contents with "other". If they are on separate arenas, then + // copies data. + void Swap(RepeatedPtrField* other); + + // Swap entire contents with "other". Caller should guarantee that either both + // fields are on the same arena or both are on the heap. Swapping between + // different arenas with this function is disallowed and is caught via + // GOOGLE_DCHECK. + void UnsafeArenaSwap(RepeatedPtrField* other); + + // Swap two elements. + void SwapElements(int index1, int index2); + + // STL-like iterator support + typedef internal::RepeatedPtrIterator iterator; + typedef internal::RepeatedPtrIterator const_iterator; + typedef Element value_type; + typedef value_type& reference; + typedef const value_type& const_reference; + typedef value_type* pointer; + typedef const value_type* const_pointer; + typedef int size_type; + typedef ptrdiff_t difference_type; + + iterator begin(); + const_iterator begin() const; + const_iterator cbegin() const; + iterator end(); + const_iterator end() const; + const_iterator cend() const; + + // Reverse iterator support + typedef std::reverse_iterator const_reverse_iterator; + typedef std::reverse_iterator reverse_iterator; + reverse_iterator rbegin() { return reverse_iterator(end()); } + const_reverse_iterator rbegin() const { + return const_reverse_iterator(end()); + } + reverse_iterator rend() { return reverse_iterator(begin()); } + const_reverse_iterator rend() const { + return const_reverse_iterator(begin()); + } + + // Custom STL-like iterator that iterates over and returns the underlying + // pointers to Element rather than Element itself. + typedef internal::RepeatedPtrOverPtrsIterator + pointer_iterator; + typedef internal::RepeatedPtrOverPtrsIterator + const_pointer_iterator; + pointer_iterator pointer_begin(); + const_pointer_iterator pointer_begin() const; + pointer_iterator pointer_end(); + const_pointer_iterator pointer_end() const; + + // Returns (an estimate of) the number of bytes used by the repeated field, + // excluding sizeof(*this). + size_t SpaceUsedExcludingSelfLong() const; + + int SpaceUsedExcludingSelf() const { + return internal::ToIntSize(SpaceUsedExcludingSelfLong()); + } + + // Advanced memory management -------------------------------------- + // When hardcore memory management becomes necessary -- as it sometimes + // does here at Google -- the following methods may be useful. + + // Add an already-allocated object, passing ownership to the + // RepeatedPtrField. + // + // Note that some special behavior occurs with respect to arenas: + // + // (i) if this field holds submessages, the new submessage will be copied if + // the original is in an arena and this RepeatedPtrField is either in a + // different arena, or on the heap. + // (ii) if this field holds strings, the passed-in string *must* be + // heap-allocated, not arena-allocated. There is no way to dynamically check + // this at runtime, so User Beware. + void AddAllocated(Element* value); + + // Remove the last element and return it, passing ownership to the caller. + // Requires: size() > 0 + // + // If this RepeatedPtrField is on an arena, an object copy is required to pass + // ownership back to the user (for compatible semantics). Use + // UnsafeArenaReleaseLast() if this behavior is undesired. + PROTOBUF_MUST_USE_RESULT Element* ReleaseLast(); + + // Add an already-allocated object, skipping arena-ownership checks. The user + // must guarantee that the given object is in the same arena as this + // RepeatedPtrField. + // It is also useful in legacy code that uses temporary ownership to avoid + // copies. Example: + // RepeatedPtrField temp_field; + // temp_field.AddAllocated(new T); + // ... // Do something with temp_field + // temp_field.ExtractSubrange(0, temp_field.size(), nullptr); + // If you put temp_field on the arena this fails, because the ownership + // transfers to the arena at the "AddAllocated" call and is not released + // anymore causing a double delete. UnsafeArenaAddAllocated prevents this. + void UnsafeArenaAddAllocated(Element* value); + + // Remove the last element and return it. Works only when operating on an + // arena. The returned pointer is to the original object in the arena, hence + // has the arena's lifetime. + // Requires: current_size_ > 0 + Element* UnsafeArenaReleaseLast(); + + // Extract elements with indices in the range "[start .. start+num-1]". + // The caller assumes ownership of the extracted elements and is responsible + // for deleting them when they are no longer needed. + // If "elements" is non-NULL, then pointers to the extracted elements + // are stored in "elements[0 .. num-1]" for the convenience of the caller. + // If "elements" is NULL, then the caller must use some other mechanism + // to perform any further operations (like deletion) on these elements. + // Caution: implementation also moves elements with indices [start+num ..]. + // Calling this routine inside a loop can cause quadratic behavior. + // + // Memory copying behavior is identical to ReleaseLast(), described above: if + // this RepeatedPtrField is on an arena, an object copy is performed for each + // returned element, so that all returned element pointers are to + // heap-allocated copies. If this copy is not desired, the user should call + // UnsafeArenaExtractSubrange(). + void ExtractSubrange(int start, int num, Element** elements); + + // Identical to ExtractSubrange() described above, except that when this + // repeated field is on an arena, no object copies are performed. Instead, the + // raw object pointers are returned. Thus, if on an arena, the returned + // objects must not be freed, because they will not be heap-allocated objects. + void UnsafeArenaExtractSubrange(int start, int num, Element** elements); + + // When elements are removed by calls to RemoveLast() or Clear(), they + // are not actually freed. Instead, they are cleared and kept so that + // they can be reused later. This can save lots of CPU time when + // repeatedly reusing a protocol message for similar purposes. + // + // Hardcore programs may choose to manipulate these cleared objects + // to better optimize memory management using the following routines. + + // Get the number of cleared objects that are currently being kept + // around for reuse. + int ClearedCount() const; + // Add an element to the pool of cleared objects, passing ownership to + // the RepeatedPtrField. The element must be cleared prior to calling + // this method. + // + // This method cannot be called when the repeated field is on an arena or when + // |value| is; both cases will trigger a GOOGLE_DCHECK-failure. + void AddCleared(Element* value); + // Remove a single element from the cleared pool and return it, passing + // ownership to the caller. The element is guaranteed to be cleared. + // Requires: ClearedCount() > 0 + // + // + // This method cannot be called when the repeated field is on an arena; doing + // so will trigger a GOOGLE_DCHECK-failure. + PROTOBUF_MUST_USE_RESULT Element* ReleaseCleared(); + + // Removes the element referenced by position. + // + // Returns an iterator to the element immediately following the removed + // element. + // + // Invalidates all iterators at or after the removed element, including end(). + iterator erase(const_iterator position); + + // Removes the elements in the range [first, last). + // + // Returns an iterator to the element immediately following the removed range. + // + // Invalidates all iterators at or after the removed range, including end(). + iterator erase(const_iterator first, const_iterator last); + + // Gets the arena on which this RepeatedPtrField stores its elements. + inline Arena* GetArena() const; + + // For internal use only. + // + // This is public due to it being called by generated code. + void InternalSwap(RepeatedPtrField* other) { + internal::RepeatedPtrFieldBase::InternalSwap(other); + } + + private: + // Note: RepeatedPtrField SHOULD NOT be subclassed by users. + class TypeHandler; + + // Implementations for ExtractSubrange(). The copying behavior must be + // included only if the type supports the necessary operations (e.g., + // MergeFrom()), so we must resolve this at compile time. ExtractSubrange() + // uses SFINAE to choose one of the below implementations. + void ExtractSubrangeInternal(int start, int num, Element** elements, + std::true_type); + void ExtractSubrangeInternal(int start, int num, Element** elements, + std::false_type); + + friend class Arena; + + template + friend struct WeakRepeatedPtrField; + + typedef void InternalArenaConstructable_; + +}; + +// implementation ==================================================== + +template +constexpr RepeatedField::RepeatedField() + : current_size_(0), total_size_(0), arena_or_elements_(nullptr) {} + +template +inline RepeatedField::RepeatedField(Arena* arena) + : current_size_(0), total_size_(0), arena_or_elements_(arena) {} + +template +inline RepeatedField::RepeatedField(const RepeatedField& other) + : current_size_(0), total_size_(0), arena_or_elements_(nullptr) { + if (other.current_size_ != 0) { + Reserve(other.size()); + AddNAlreadyReserved(other.size()); + CopyArray(Mutable(0), &other.Get(0), other.size()); + } +} + +template +template +RepeatedField::RepeatedField(Iter begin, Iter end) + : current_size_(0), total_size_(0), arena_or_elements_(nullptr) { + Add(begin, end); +} + +template +RepeatedField::~RepeatedField() { +#ifndef NDEBUG + // Try to trigger segfault / asan failure in non-opt builds. If arena_ + // lifetime has ended before the destructor. + auto arena = GetArena(); + if (arena) (void)arena->SpaceAllocated(); +#endif + if (total_size_ > 0) { + InternalDeallocate(rep(), total_size_); + } +} + +template +inline RepeatedField& RepeatedField::operator=( + const RepeatedField& other) { + if (this != &other) CopyFrom(other); + return *this; +} + +template +inline RepeatedField::RepeatedField(RepeatedField&& other) noexcept + : RepeatedField() { + // We don't just call Swap(&other) here because it would perform 3 copies if + // other is on an arena. This field can't be on an arena because arena + // construction always uses the Arena* accepting constructor. + if (other.GetArena()) { + CopyFrom(other); + } else { + InternalSwap(&other); + } +} + +template +inline RepeatedField& RepeatedField::operator=( + RepeatedField&& other) noexcept { + // We don't just call Swap(&other) here because it would perform 3 copies if + // the two fields are on different arenas. + if (this != &other) { + if (this->GetArena() != other.GetArena()) { + CopyFrom(other); + } else { + InternalSwap(&other); + } + } + return *this; +} + +template +inline bool RepeatedField::empty() const { + return current_size_ == 0; +} + +template +inline int RepeatedField::size() const { + return current_size_; +} + +template +inline int RepeatedField::Capacity() const { + return total_size_; +} + +template +inline void RepeatedField::AddAlreadyReserved(const Element& value) { + GOOGLE_DCHECK_LT(current_size_, total_size_); + elements()[current_size_++] = value; +} + +template +inline Element* RepeatedField::AddAlreadyReserved() { + GOOGLE_DCHECK_LT(current_size_, total_size_); + return &elements()[current_size_++]; +} + +template +inline Element* RepeatedField::AddNAlreadyReserved(int n) { + GOOGLE_DCHECK_GE(total_size_ - current_size_, n) + << total_size_ << ", " << current_size_; + // Warning: sometimes people call this when n == 0 and total_size_ == 0. In + // this case the return pointer points to a zero size array (n == 0). Hence + // we can just use unsafe_elements(), because the user cannot dereference the + // pointer anyway. + Element* ret = unsafe_elements() + current_size_; + current_size_ += n; + return ret; +} + +template +inline void RepeatedField::Resize(int new_size, const Element& value) { + GOOGLE_DCHECK_GE(new_size, 0); + if (new_size > current_size_) { + Reserve(new_size); + std::fill(&elements()[current_size_], &elements()[new_size], value); + } + current_size_ = new_size; +} + +template +inline const Element& RepeatedField::Get(int index) const { + GOOGLE_DCHECK_GE(index, 0); + GOOGLE_DCHECK_LT(index, current_size_); + return elements()[index]; +} + +template +inline const Element& RepeatedField::at(int index) const { + GOOGLE_CHECK_GE(index, 0); + GOOGLE_CHECK_LT(index, current_size_); + return elements()[index]; +} + +template +inline Element& RepeatedField::at(int index) { + GOOGLE_CHECK_GE(index, 0); + GOOGLE_CHECK_LT(index, current_size_); + return elements()[index]; +} + +template +inline Element* RepeatedField::Mutable(int index) { + GOOGLE_DCHECK_GE(index, 0); + GOOGLE_DCHECK_LT(index, current_size_); + return &elements()[index]; +} + +template +inline void RepeatedField::Set(int index, const Element& value) { + GOOGLE_DCHECK_GE(index, 0); + GOOGLE_DCHECK_LT(index, current_size_); + elements()[index] = value; +} + +template +inline void RepeatedField::Add(const Element& value) { + uint32 size = current_size_; + if (static_cast(size) == total_size_) { + // value could reference an element of the array. Reserving new space will + // invalidate the reference. So we must make a copy first. + auto tmp = value; + Reserve(total_size_ + 1); + elements()[size] = std::move(tmp); + } else { + elements()[size] = value; + } + current_size_ = size + 1; +} + +template +inline Element* RepeatedField::Add() { + uint32 size = current_size_; + if (static_cast(size) == total_size_) Reserve(total_size_ + 1); + auto ptr = &elements()[size]; + current_size_ = size + 1; + return ptr; +} + +template +template +inline void RepeatedField::Add(Iter begin, Iter end) { + int reserve = internal::CalculateReserve(begin, end); + if (reserve != -1) { + if (reserve == 0) { + return; + } + + Reserve(reserve + size()); + // TODO(ckennelly): The compiler loses track of the buffer freshly + // allocated by Reserve() by the time we call elements, so it cannot + // guarantee that elements does not alias [begin(), end()). + // + // If restrict is available, annotating the pointer obtained from elements() + // causes this to lower to memcpy instead of memmove. + std::copy(begin, end, elements() + size()); + current_size_ = reserve + size(); + } else { + FastAdder fast_adder(this); + for (; begin != end; ++begin) fast_adder.Add(*begin); + } +} + +template +inline void RepeatedField::RemoveLast() { + GOOGLE_DCHECK_GT(current_size_, 0); + current_size_--; +} + +template +void RepeatedField::ExtractSubrange(int start, int num, + Element* elements) { + GOOGLE_DCHECK_GE(start, 0); + GOOGLE_DCHECK_GE(num, 0); + GOOGLE_DCHECK_LE(start + num, this->current_size_); + + // Save the values of the removed elements if requested. + if (elements != NULL) { + for (int i = 0; i < num; ++i) elements[i] = this->Get(i + start); + } + + // Slide remaining elements down to fill the gap. + if (num > 0) { + for (int i = start + num; i < this->current_size_; ++i) + this->Set(i - num, this->Get(i)); + this->Truncate(this->current_size_ - num); + } +} + +template +inline void RepeatedField::Clear() { + current_size_ = 0; +} + +template +inline void RepeatedField::MergeFrom(const RepeatedField& other) { + GOOGLE_DCHECK_NE(&other, this); + if (other.current_size_ != 0) { + int existing_size = size(); + Reserve(existing_size + other.size()); + AddNAlreadyReserved(other.size()); + CopyArray(Mutable(existing_size), &other.Get(0), other.size()); + } +} + +template +inline void RepeatedField::CopyFrom(const RepeatedField& other) { + if (&other == this) return; + Clear(); + MergeFrom(other); +} + +template +template +inline void RepeatedField::Assign(Iter begin, Iter end) { + Clear(); + Add(begin, end); +} + +template +inline typename RepeatedField::iterator RepeatedField::erase( + const_iterator position) { + return erase(position, position + 1); +} + +template +inline typename RepeatedField::iterator RepeatedField::erase( + const_iterator first, const_iterator last) { + size_type first_offset = first - cbegin(); + if (first != last) { + Truncate(std::copy(last, cend(), begin() + first_offset) - cbegin()); + } + return begin() + first_offset; +} + +template +inline Element* RepeatedField::mutable_data() { + return unsafe_elements(); +} + +template +inline const Element* RepeatedField::data() const { + return unsafe_elements(); +} + +template +inline void RepeatedField::InternalSwap(RepeatedField* other) { + GOOGLE_DCHECK(this != other); + + // Swap all fields at once. + static_assert(std::is_standard_layout>::value, + "offsetof() requires standard layout before c++17"); + internal::memswaparena_or_elements_) - + offsetof(RepeatedField, current_size_)>( + reinterpret_cast(this) + offsetof(RepeatedField, current_size_), + reinterpret_cast(other) + offsetof(RepeatedField, current_size_)); +} + +template +void RepeatedField::Swap(RepeatedField* other) { + if (this == other) return; +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && GetArena() == other->GetArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + RepeatedField temp(other->GetArena()); + temp.MergeFrom(*this); + CopyFrom(*other); + other->UnsafeArenaSwap(&temp); + } +} + +template +void RepeatedField::UnsafeArenaSwap(RepeatedField* other) { + if (this == other) return; + InternalSwap(other); +} + +template +void RepeatedField::SwapElements(int index1, int index2) { + using std::swap; // enable ADL with fallback + swap(elements()[index1], elements()[index2]); +} + +template +inline typename RepeatedField::iterator +RepeatedField::begin() { + return unsafe_elements(); +} +template +inline typename RepeatedField::const_iterator +RepeatedField::begin() const { + return unsafe_elements(); +} +template +inline typename RepeatedField::const_iterator +RepeatedField::cbegin() const { + return unsafe_elements(); +} +template +inline typename RepeatedField::iterator RepeatedField::end() { + return unsafe_elements() + current_size_; +} +template +inline typename RepeatedField::const_iterator +RepeatedField::end() const { + return unsafe_elements() + current_size_; +} +template +inline typename RepeatedField::const_iterator +RepeatedField::cend() const { + return unsafe_elements() + current_size_; +} + +template +inline size_t RepeatedField::SpaceUsedExcludingSelfLong() const { + return total_size_ > 0 ? (total_size_ * sizeof(Element) + kRepHeaderSize) : 0; +} + +namespace internal { +// Returns the new size for a reserved field based on its 'total_size' and the +// requested 'new_size'. The result is clamped to the closed interval: +// [internal::kMinRepeatedFieldAllocationSize, +// std::numeric_limits::max()] +// Requires: +// new_size > total_size && +// (total_size == 0 || +// total_size >= kRepeatedFieldLowerClampLimit) +inline int CalculateReserveSize(int total_size, int new_size) { + if (new_size < kRepeatedFieldLowerClampLimit) { + // Clamp to smallest allowed size. + return kRepeatedFieldLowerClampLimit; + } + if (total_size < kRepeatedFieldUpperClampLimit) { + return std::max(total_size * 2, new_size); + } else { + // Clamp to largest allowed size. + GOOGLE_DCHECK_GT(new_size, kRepeatedFieldUpperClampLimit); + return std::numeric_limits::max(); + } +} +} // namespace internal + +// Avoid inlining of Reserve(): new, copy, and delete[] lead to a significant +// amount of code bloat. +template +void RepeatedField::Reserve(int new_size) { + if (total_size_ >= new_size) return; + Rep* old_rep = total_size_ > 0 ? rep() : NULL; + Rep* new_rep; + Arena* arena = GetArena(); + new_size = internal::CalculateReserveSize(total_size_, new_size); + GOOGLE_DCHECK_LE( + static_cast(new_size), + (std::numeric_limits::max() - kRepHeaderSize) / sizeof(Element)) + << "Requested size is too large to fit into size_t."; + size_t bytes = + kRepHeaderSize + sizeof(Element) * static_cast(new_size); + if (arena == NULL) { + new_rep = static_cast(::operator new(bytes)); + } else { + new_rep = reinterpret_cast(Arena::CreateArray(arena, bytes)); + } + new_rep->arena = arena; + int old_total_size = total_size_; + // Already known: new_size >= internal::kMinRepeatedFieldAllocationSize + // Maintain invariant: + // total_size_ == 0 || + // total_size_ >= internal::kMinRepeatedFieldAllocationSize + total_size_ = new_size; + arena_or_elements_ = new_rep->elements; + // Invoke placement-new on newly allocated elements. We shouldn't have to do + // this, since Element is supposed to be POD, but a previous version of this + // code allocated storage with "new Element[size]" and some code uses + // RepeatedField with non-POD types, relying on constructor invocation. If + // Element has a trivial constructor (e.g., int32), gcc (tested with -O2) + // completely removes this loop because the loop body is empty, so this has no + // effect unless its side-effects are required for correctness. + // Note that we do this before MoveArray() below because Element's copy + // assignment implementation will want an initialized instance first. + Element* e = &elements()[0]; + Element* limit = e + total_size_; + for (; e < limit; e++) { + new (e) Element; + } + if (current_size_ > 0) { + MoveArray(&elements()[0], old_rep->elements, current_size_); + } + + // Likewise, we need to invoke destructors on the old array. + InternalDeallocate(old_rep, old_total_size); + +} + +template +inline void RepeatedField::Truncate(int new_size) { + GOOGLE_DCHECK_LE(new_size, current_size_); + if (current_size_ > 0) { + current_size_ = new_size; + } +} + +template +inline void RepeatedField::MoveArray(Element* to, Element* from, + int array_size) { + CopyArray(to, from, array_size); +} + +template +inline void RepeatedField::CopyArray(Element* to, const Element* from, + int array_size) { + internal::ElementCopier()(to, from, array_size); +} + +namespace internal { + +template +void ElementCopier::operator()(Element* to, + const Element* from, + int array_size) { + std::copy(from, from + array_size, to); +} + +template +struct ElementCopier { + void operator()(Element* to, const Element* from, int array_size) { + memcpy(to, from, static_cast(array_size) * sizeof(Element)); + } +}; + +} // namespace internal + + +// ------------------------------------------------------------------- + +namespace internal { + +constexpr RepeatedPtrFieldBase::RepeatedPtrFieldBase() + : arena_(NULL), current_size_(0), total_size_(0), rep_(NULL) {} + +inline RepeatedPtrFieldBase::RepeatedPtrFieldBase(Arena* arena) + : arena_(arena), current_size_(0), total_size_(0), rep_(NULL) {} + +template +void RepeatedPtrFieldBase::Destroy() { + if (rep_ != NULL && arena_ == NULL) { + int n = rep_->allocated_size; + void* const* elements = rep_->elements; + for (int i = 0; i < n; i++) { + TypeHandler::Delete(cast(elements[i]), NULL); + } +#if defined(__GXX_DELETE_WITH_SIZE__) || defined(__cpp_sized_deallocation) + const size_t size = total_size_ * sizeof(elements[0]) + kRepHeaderSize; + ::operator delete(static_cast(rep_), size); +#else + ::operator delete(static_cast(rep_)); +#endif + } + rep_ = NULL; +} + +template +inline void RepeatedPtrFieldBase::Swap(RepeatedPtrFieldBase* other) { +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && GetArena() == other->GetArena()) { +#else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + SwapFallback(other); + } +} + +template +void RepeatedPtrFieldBase::SwapFallback(RepeatedPtrFieldBase* other) { +#ifdef PROTOBUF_FORCE_COPY_IN_SWAP + GOOGLE_DCHECK(GetArena() == nullptr || other->GetArena() != GetArena()); +#else // PROTOBUF_FORCE_COPY_IN_SWAP + GOOGLE_DCHECK(other->GetArena() != GetArena()); +#endif // !PROTOBUF_FORCE_COPY_IN_SWAP + + // Copy semantics in this case. We try to improve efficiency by placing the + // temporary on |other|'s arena so that messages are copied twice rather than + // three times. + RepeatedPtrFieldBase temp(other->GetArena()); + temp.MergeFrom(*this); + this->Clear(); + this->MergeFrom(*other); + other->InternalSwap(&temp); + temp.Destroy(); // Frees rep_ if `other` had no arena. +} + +inline bool RepeatedPtrFieldBase::empty() const { return current_size_ == 0; } + +inline int RepeatedPtrFieldBase::size() const { return current_size_; } + +template +inline const typename TypeHandler::Type& RepeatedPtrFieldBase::Get( + int index) const { + GOOGLE_DCHECK_GE(index, 0); + GOOGLE_DCHECK_LT(index, current_size_); + return *cast(rep_->elements[index]); +} + +template +inline const typename TypeHandler::Type& RepeatedPtrFieldBase::at( + int index) const { + GOOGLE_CHECK_GE(index, 0); + GOOGLE_CHECK_LT(index, current_size_); + return *cast(rep_->elements[index]); +} + +template +inline typename TypeHandler::Type& RepeatedPtrFieldBase::at(int index) { + GOOGLE_CHECK_GE(index, 0); + GOOGLE_CHECK_LT(index, current_size_); + return *cast(rep_->elements[index]); +} + +template +inline typename TypeHandler::Type* RepeatedPtrFieldBase::Mutable(int index) { + GOOGLE_DCHECK_GE(index, 0); + GOOGLE_DCHECK_LT(index, current_size_); + return cast(rep_->elements[index]); +} + +template +inline void RepeatedPtrFieldBase::Delete(int index) { + GOOGLE_DCHECK_GE(index, 0); + GOOGLE_DCHECK_LT(index, current_size_); + TypeHandler::Delete(cast(rep_->elements[index]), arena_); +} + +template +inline typename TypeHandler::Type* RepeatedPtrFieldBase::Add( + typename TypeHandler::Type* prototype) { + if (rep_ != NULL && current_size_ < rep_->allocated_size) { + return cast(rep_->elements[current_size_++]); + } + typename TypeHandler::Type* result = + TypeHandler::NewFromPrototype(prototype, arena_); + return reinterpret_cast( + AddOutOfLineHelper(result)); +} + +template ::type*> +inline void RepeatedPtrFieldBase::Add(typename TypeHandler::Type&& value) { + if (rep_ != NULL && current_size_ < rep_->allocated_size) { + *cast(rep_->elements[current_size_++]) = std::move(value); + return; + } + if (!rep_ || rep_->allocated_size == total_size_) { + Reserve(total_size_ + 1); + } + ++rep_->allocated_size; + typename TypeHandler::Type* result = + TypeHandler::New(arena_, std::move(value)); + rep_->elements[current_size_++] = result; +} + +template +inline void RepeatedPtrFieldBase::RemoveLast() { + GOOGLE_DCHECK_GT(current_size_, 0); + TypeHandler::Clear(cast(rep_->elements[--current_size_])); +} + +template +void RepeatedPtrFieldBase::Clear() { + const int n = current_size_; + GOOGLE_DCHECK_GE(n, 0); + if (n > 0) { + void* const* elements = rep_->elements; + int i = 0; + do { + TypeHandler::Clear(cast(elements[i++])); + } while (i < n); + current_size_ = 0; + } +} + +// To avoid unnecessary code duplication and reduce binary size, we use a +// layered approach to implementing MergeFrom(). The toplevel method is +// templated, so we get a small thunk per concrete message type in the binary. +// This calls a shared implementation with most of the logic, passing a function +// pointer to another type-specific piece of code that calls the object-allocate +// and merge handlers. +template +inline void RepeatedPtrFieldBase::MergeFrom(const RepeatedPtrFieldBase& other) { + GOOGLE_DCHECK_NE(&other, this); + if (other.current_size_ == 0) return; + MergeFromInternal(other, + &RepeatedPtrFieldBase::MergeFromInnerLoop); +} + +inline void RepeatedPtrFieldBase::MergeFromInternal( + const RepeatedPtrFieldBase& other, + void (RepeatedPtrFieldBase::*inner_loop)(void**, void**, int, int)) { + // Note: wrapper has already guaranteed that other.rep_ != NULL here. + int other_size = other.current_size_; + void** other_elements = other.rep_->elements; + void** new_elements = InternalExtend(other_size); + int allocated_elems = rep_->allocated_size - current_size_; + (this->*inner_loop)(new_elements, other_elements, other_size, + allocated_elems); + current_size_ += other_size; + if (rep_->allocated_size < current_size_) { + rep_->allocated_size = current_size_; + } +} + +// Merges other_elems to our_elems. +template +void RepeatedPtrFieldBase::MergeFromInnerLoop(void** our_elems, + void** other_elems, int length, + int already_allocated) { + if (already_allocated < length) { + Arena* arena = GetArena(); + typename TypeHandler::Type* elem_prototype = + reinterpret_cast(other_elems[0]); + for (int i = already_allocated; i < length; i++) { + // Allocate a new empty element that we'll merge into below + typename TypeHandler::Type* new_elem = + TypeHandler::NewFromPrototype(elem_prototype, arena); + our_elems[i] = new_elem; + } + } + // Main loop that does the actual merging + for (int i = 0; i < length; i++) { + // Already allocated: use existing element. + typename TypeHandler::Type* other_elem = + reinterpret_cast(other_elems[i]); + typename TypeHandler::Type* new_elem = + reinterpret_cast(our_elems[i]); + TypeHandler::Merge(*other_elem, new_elem); + } +} + +template +inline void RepeatedPtrFieldBase::CopyFrom(const RepeatedPtrFieldBase& other) { + if (&other == this) return; + RepeatedPtrFieldBase::Clear(); + RepeatedPtrFieldBase::MergeFrom(other); +} + +inline int RepeatedPtrFieldBase::Capacity() const { return total_size_; } + +inline void* const* RepeatedPtrFieldBase::raw_data() const { + return rep_ ? rep_->elements : NULL; +} + +inline void** RepeatedPtrFieldBase::raw_mutable_data() const { + return rep_ ? const_cast(rep_->elements) : NULL; +} + +template +inline typename TypeHandler::Type** RepeatedPtrFieldBase::mutable_data() { + // TODO(kenton): Breaks C++ aliasing rules. We should probably remove this + // method entirely. + return reinterpret_cast(raw_mutable_data()); +} + +template +inline const typename TypeHandler::Type* const* RepeatedPtrFieldBase::data() + const { + // TODO(kenton): Breaks C++ aliasing rules. We should probably remove this + // method entirely. + return reinterpret_cast(raw_data()); +} + +inline void RepeatedPtrFieldBase::SwapElements(int index1, int index2) { + using std::swap; // enable ADL with fallback + swap(rep_->elements[index1], rep_->elements[index2]); +} + +template +inline size_t RepeatedPtrFieldBase::SpaceUsedExcludingSelfLong() const { + size_t allocated_bytes = static_cast(total_size_) * sizeof(void*); + if (rep_ != NULL) { + for (int i = 0; i < rep_->allocated_size; ++i) { + allocated_bytes += + TypeHandler::SpaceUsedLong(*cast(rep_->elements[i])); + } + allocated_bytes += kRepHeaderSize; + } + return allocated_bytes; +} + +template +inline typename TypeHandler::Type* RepeatedPtrFieldBase::AddFromCleared() { + if (rep_ != NULL && current_size_ < rep_->allocated_size) { + return cast(rep_->elements[current_size_++]); + } else { + return NULL; + } +} + +// AddAllocated version that implements arena-safe copying behavior. +template +void RepeatedPtrFieldBase::AddAllocatedInternal( + typename TypeHandler::Type* value, std::true_type) { + Arena* element_arena = + reinterpret_cast(TypeHandler::GetOwningArena(value)); + Arena* arena = GetArena(); + if (arena == element_arena && rep_ && rep_->allocated_size < total_size_) { + // Fast path: underlying arena representation (tagged pointer) is equal to + // our arena pointer, and we can add to array without resizing it (at least + // one slot that is not allocated). + void** elems = rep_->elements; + if (current_size_ < rep_->allocated_size) { + // Make space at [current] by moving first allocated element to end of + // allocated list. + elems[rep_->allocated_size] = elems[current_size_]; + } + elems[current_size_] = value; + current_size_ = current_size_ + 1; + rep_->allocated_size = rep_->allocated_size + 1; + } else { + AddAllocatedSlowWithCopy(value, element_arena, arena); + } +} + +// Slowpath handles all cases, copying if necessary. +template +void RepeatedPtrFieldBase::AddAllocatedSlowWithCopy( + // Pass value_arena and my_arena to avoid duplicate virtual call (value) or + // load (mine). + typename TypeHandler::Type* value, Arena* value_arena, Arena* my_arena) { +#ifdef PROTOBUF_INTERNAL_USE_MUST_USE_RESULT + GOOGLE_DCHECK(value_arena == nullptr || value_arena == my_arena); +#endif // PROTOBUF_INTERNAL_USE_MUST_USE_RESULT + // Ensure that either the value is in the same arena, or if not, we do the + // appropriate thing: Own() it (if it's on heap and we're in an arena) or copy + // it to our arena/heap (otherwise). + if (my_arena != NULL && value_arena == NULL) { + my_arena->Own(value); + } else if (my_arena != value_arena) { + typename TypeHandler::Type* new_value = + TypeHandler::NewFromPrototype(value, my_arena); + TypeHandler::Merge(*value, new_value); + TypeHandler::Delete(value, value_arena); + value = new_value; + } + + UnsafeArenaAddAllocated(value); +} + +// AddAllocated version that does not implement arena-safe copying behavior. +template +void RepeatedPtrFieldBase::AddAllocatedInternal( + typename TypeHandler::Type* value, std::false_type) { + if (rep_ && rep_->allocated_size < total_size_) { + // Fast path: underlying arena representation (tagged pointer) is equal to + // our arena pointer, and we can add to array without resizing it (at least + // one slot that is not allocated). + void** elems = rep_->elements; + if (current_size_ < rep_->allocated_size) { + // Make space at [current] by moving first allocated element to end of + // allocated list. + elems[rep_->allocated_size] = elems[current_size_]; + } + elems[current_size_] = value; + current_size_ = current_size_ + 1; + ++rep_->allocated_size; + } else { + UnsafeArenaAddAllocated(value); + } +} + +template +void RepeatedPtrFieldBase::UnsafeArenaAddAllocated( + typename TypeHandler::Type* value) { + // Make room for the new pointer. + if (!rep_ || current_size_ == total_size_) { + // The array is completely full with no cleared objects, so grow it. + Reserve(total_size_ + 1); + ++rep_->allocated_size; + } else if (rep_->allocated_size == total_size_) { + // There is no more space in the pointer array because it contains some + // cleared objects awaiting reuse. We don't want to grow the array in this + // case because otherwise a loop calling AddAllocated() followed by Clear() + // would leak memory. + TypeHandler::Delete(cast(rep_->elements[current_size_]), + arena_); + } else if (current_size_ < rep_->allocated_size) { + // We have some cleared objects. We don't care about their order, so we + // can just move the first one to the end to make space. + rep_->elements[rep_->allocated_size] = rep_->elements[current_size_]; + ++rep_->allocated_size; + } else { + // There are no cleared objects. + ++rep_->allocated_size; + } + + rep_->elements[current_size_++] = value; +} + +// ReleaseLast() for types that implement merge/copy behavior. +template +inline typename TypeHandler::Type* RepeatedPtrFieldBase::ReleaseLastInternal( + std::true_type) { + // First, release an element. + typename TypeHandler::Type* result = UnsafeArenaReleaseLast(); + // Now perform a copy if we're on an arena. + Arena* arena = GetArena(); + + typename TypeHandler::Type* new_result; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + new_result = copy(result); + if (arena == nullptr) delete result; +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + new_result = (arena == nullptr) ? result : copy(result); +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return new_result; +} + +// ReleaseLast() for types that *do not* implement merge/copy behavior -- this +// is the same as UnsafeArenaReleaseLast(). Note that we GOOGLE_DCHECK-fail if we're on +// an arena, since the user really should implement the copy operation in this +// case. +template +inline typename TypeHandler::Type* RepeatedPtrFieldBase::ReleaseLastInternal( + std::false_type) { + GOOGLE_DCHECK(GetArena() == nullptr) + << "ReleaseLast() called on a RepeatedPtrField that is on an arena, " + << "with a type that does not implement MergeFrom. This is unsafe; " + << "please implement MergeFrom for your type."; + return UnsafeArenaReleaseLast(); +} + +template +inline typename TypeHandler::Type* +RepeatedPtrFieldBase::UnsafeArenaReleaseLast() { + GOOGLE_DCHECK_GT(current_size_, 0); + typename TypeHandler::Type* result = + cast(rep_->elements[--current_size_]); + --rep_->allocated_size; + if (current_size_ < rep_->allocated_size) { + // There are cleared elements on the end; replace the removed element + // with the last allocated element. + rep_->elements[current_size_] = rep_->elements[rep_->allocated_size]; + } + return result; +} + +inline int RepeatedPtrFieldBase::ClearedCount() const { + return rep_ ? (rep_->allocated_size - current_size_) : 0; +} + +template +inline void RepeatedPtrFieldBase::AddCleared( + typename TypeHandler::Type* value) { + GOOGLE_DCHECK(GetArena() == NULL) + << "AddCleared() can only be used on a RepeatedPtrField not on an arena."; + GOOGLE_DCHECK(TypeHandler::GetOwningArena(value) == nullptr) + << "AddCleared() can only accept values not on an arena."; + if (!rep_ || rep_->allocated_size == total_size_) { + Reserve(total_size_ + 1); + } + rep_->elements[rep_->allocated_size++] = value; +} + +template +inline typename TypeHandler::Type* RepeatedPtrFieldBase::ReleaseCleared() { + GOOGLE_DCHECK(GetArena() == NULL) + << "ReleaseCleared() can only be used on a RepeatedPtrField not on " + << "an arena."; + GOOGLE_DCHECK(GetArena() == NULL); + GOOGLE_DCHECK(rep_ != NULL); + GOOGLE_DCHECK_GT(rep_->allocated_size, current_size_); + return cast(rep_->elements[--rep_->allocated_size]); +} + +} // namespace internal + +// ------------------------------------------------------------------- + +template +class RepeatedPtrField::TypeHandler + : public internal::GenericTypeHandler {}; + +template <> +class RepeatedPtrField::TypeHandler + : public internal::StringTypeHandler {}; + +template +constexpr RepeatedPtrField::RepeatedPtrField() + : RepeatedPtrFieldBase() {} + +template +inline RepeatedPtrField::RepeatedPtrField(Arena* arena) + : RepeatedPtrFieldBase(arena) {} + +template +inline RepeatedPtrField::RepeatedPtrField( + const RepeatedPtrField& other) + : RepeatedPtrFieldBase() { + MergeFrom(other); +} + +template +template +inline RepeatedPtrField::RepeatedPtrField(Iter begin, Iter end) { + Add(begin, end); +} + +template +RepeatedPtrField::~RepeatedPtrField() { + Destroy(); +} + +template +inline RepeatedPtrField& RepeatedPtrField::operator=( + const RepeatedPtrField& other) { + if (this != &other) CopyFrom(other); + return *this; +} + +template +inline RepeatedPtrField::RepeatedPtrField( + RepeatedPtrField&& other) noexcept + : RepeatedPtrField() { + // We don't just call Swap(&other) here because it would perform 3 copies if + // other is on an arena. This field can't be on an arena because arena + // construction always uses the Arena* accepting constructor. + if (other.GetArena()) { + CopyFrom(other); + } else { + InternalSwap(&other); + } +} + +template +inline RepeatedPtrField& RepeatedPtrField::operator=( + RepeatedPtrField&& other) noexcept { + // We don't just call Swap(&other) here because it would perform 3 copies if + // the two fields are on different arenas. + if (this != &other) { + if (this->GetArena() != other.GetArena()) { + CopyFrom(other); + } else { + InternalSwap(&other); + } + } + return *this; +} + +template +inline bool RepeatedPtrField::empty() const { + return RepeatedPtrFieldBase::empty(); +} + +template +inline int RepeatedPtrField::size() const { + return RepeatedPtrFieldBase::size(); +} + +template +inline const Element& RepeatedPtrField::Get(int index) const { + return RepeatedPtrFieldBase::Get(index); +} + +template +inline const Element& RepeatedPtrField::at(int index) const { + return RepeatedPtrFieldBase::at(index); +} + +template +inline Element& RepeatedPtrField::at(int index) { + return RepeatedPtrFieldBase::at(index); +} + + +template +inline Element* RepeatedPtrField::Mutable(int index) { + return RepeatedPtrFieldBase::Mutable(index); +} + +template +inline Element* RepeatedPtrField::Add() { + return RepeatedPtrFieldBase::Add(); +} + +template +inline void RepeatedPtrField::Add(Element&& value) { + RepeatedPtrFieldBase::Add(std::move(value)); +} + +template +template +inline void RepeatedPtrField::Add(Iter begin, Iter end) { + int reserve = internal::CalculateReserve(begin, end); + if (reserve != -1) { + Reserve(size() + reserve); + } + for (; begin != end; ++begin) { + *Add() = *begin; + } +} + +template +inline void RepeatedPtrField::RemoveLast() { + RepeatedPtrFieldBase::RemoveLast(); +} + +template +inline void RepeatedPtrField::DeleteSubrange(int start, int num) { + GOOGLE_DCHECK_GE(start, 0); + GOOGLE_DCHECK_GE(num, 0); + GOOGLE_DCHECK_LE(start + num, size()); + for (int i = 0; i < num; ++i) { + RepeatedPtrFieldBase::Delete(start + i); + } + UnsafeArenaExtractSubrange(start, num, nullptr); +} + +template +inline void RepeatedPtrField::ExtractSubrange(int start, int num, + Element** elements) { + typename internal::TypeImplementsMergeBehavior< + typename TypeHandler::Type>::type t; + ExtractSubrangeInternal(start, num, elements, t); +} + +// ExtractSubrange() implementation for types that implement merge/copy +// behavior. +template +inline void RepeatedPtrField::ExtractSubrangeInternal( + int start, int num, Element** elements, std::true_type) { + GOOGLE_DCHECK_GE(start, 0); + GOOGLE_DCHECK_GE(num, 0); + GOOGLE_DCHECK_LE(start + num, size()); + + if (num == 0) return; + +#ifdef PROTOBUF_MUST_USE_EXTRACT_RESULT + GOOGLE_DCHECK_NE(elements, nullptr) + << "Releasing elements without transferring ownership is an unsafe " + "operation. Use UnsafeArenaExtractSubrange."; +#endif + if (elements == nullptr) { + CloseGap(start, num); + return; + } + + Arena* arena = GetArena(); +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + // Always copy. + for (int i = 0; i < num; ++i) { + elements[i] = copy( + RepeatedPtrFieldBase::Mutable(i + start)); + } + if (arena == nullptr) { + for (int i = 0; i < num; ++i) { + delete RepeatedPtrFieldBase::Mutable(i + start); + } + } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + // If we're on an arena, we perform a copy for each element so that the + // returned elements are heap-allocated. Otherwise, just forward it. + if (arena != nullptr) { + for (int i = 0; i < num; ++i) { + elements[i] = copy( + RepeatedPtrFieldBase::Mutable(i + start)); + } + } else { + for (int i = 0; i < num; ++i) { + elements[i] = RepeatedPtrFieldBase::Mutable(i + start); + } + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + CloseGap(start, num); +} + +// ExtractSubrange() implementation for types that do not implement merge/copy +// behavior. +template +inline void RepeatedPtrField::ExtractSubrangeInternal( + int start, int num, Element** elements, std::false_type) { + // This case is identical to UnsafeArenaExtractSubrange(). However, since + // ExtractSubrange() must return heap-allocated objects by contract, and we + // cannot fulfill this contract if we are an on arena, we must GOOGLE_DCHECK() that + // we are not on an arena. + GOOGLE_DCHECK(GetArena() == NULL) + << "ExtractSubrange() when arena is non-NULL is only supported when " + << "the Element type supplies a MergeFrom() operation to make copies."; + UnsafeArenaExtractSubrange(start, num, elements); +} + +template +inline void RepeatedPtrField::UnsafeArenaExtractSubrange( + int start, int num, Element** elements) { + GOOGLE_DCHECK_GE(start, 0); + GOOGLE_DCHECK_GE(num, 0); + GOOGLE_DCHECK_LE(start + num, size()); + + if (num > 0) { + // Save the values of the removed elements if requested. + if (elements != NULL) { + for (int i = 0; i < num; ++i) { + elements[i] = RepeatedPtrFieldBase::Mutable(i + start); + } + } + CloseGap(start, num); + } +} + +template +inline void RepeatedPtrField::Clear() { + RepeatedPtrFieldBase::Clear(); +} + +template +inline void RepeatedPtrField::MergeFrom( + const RepeatedPtrField& other) { + RepeatedPtrFieldBase::MergeFrom(other); +} + +template +inline void RepeatedPtrField::CopyFrom(const RepeatedPtrField& other) { + RepeatedPtrFieldBase::CopyFrom(other); +} + +template +template +inline void RepeatedPtrField::Assign(Iter begin, Iter end) { + Clear(); + Add(begin, end); +} + +template +inline typename RepeatedPtrField::iterator +RepeatedPtrField::erase(const_iterator position) { + return erase(position, position + 1); +} + +template +inline typename RepeatedPtrField::iterator +RepeatedPtrField::erase(const_iterator first, const_iterator last) { + size_type pos_offset = std::distance(cbegin(), first); + size_type last_offset = std::distance(cbegin(), last); + DeleteSubrange(pos_offset, last_offset - pos_offset); + return begin() + pos_offset; +} + +template +inline Element** RepeatedPtrField::mutable_data() { + return RepeatedPtrFieldBase::mutable_data(); +} + +template +inline const Element* const* RepeatedPtrField::data() const { + return RepeatedPtrFieldBase::data(); +} + +template +inline void RepeatedPtrField::Swap(RepeatedPtrField* other) { + if (this == other) return; + RepeatedPtrFieldBase::Swap(other); +} + +template +inline void RepeatedPtrField::UnsafeArenaSwap( + RepeatedPtrField* other) { + if (this == other) return; + RepeatedPtrFieldBase::InternalSwap(other); +} + +template +inline void RepeatedPtrField::SwapElements(int index1, int index2) { + RepeatedPtrFieldBase::SwapElements(index1, index2); +} + +template +inline Arena* RepeatedPtrField::GetArena() const { + return RepeatedPtrFieldBase::GetArena(); +} + +template +inline size_t RepeatedPtrField::SpaceUsedExcludingSelfLong() const { + return RepeatedPtrFieldBase::SpaceUsedExcludingSelfLong(); +} + +template +inline void RepeatedPtrField::AddAllocated(Element* value) { + RepeatedPtrFieldBase::AddAllocated(value); +} + +template +inline void RepeatedPtrField::UnsafeArenaAddAllocated(Element* value) { + RepeatedPtrFieldBase::UnsafeArenaAddAllocated(value); +} + +template +inline Element* RepeatedPtrField::ReleaseLast() { + return RepeatedPtrFieldBase::ReleaseLast(); +} + +template +inline Element* RepeatedPtrField::UnsafeArenaReleaseLast() { + return RepeatedPtrFieldBase::UnsafeArenaReleaseLast(); +} + +template +inline int RepeatedPtrField::ClearedCount() const { + return RepeatedPtrFieldBase::ClearedCount(); +} + +template +inline void RepeatedPtrField::AddCleared(Element* value) { + return RepeatedPtrFieldBase::AddCleared(value); +} + +template +inline Element* RepeatedPtrField::ReleaseCleared() { + return RepeatedPtrFieldBase::ReleaseCleared(); +} + +template +inline void RepeatedPtrField::Reserve(int new_size) { + return RepeatedPtrFieldBase::Reserve(new_size); +} + +template +inline int RepeatedPtrField::Capacity() const { + return RepeatedPtrFieldBase::Capacity(); +} + +// ------------------------------------------------------------------- + +namespace internal { + +// STL-like iterator implementation for RepeatedPtrField. You should not +// refer to this class directly; use RepeatedPtrField::iterator instead. +// +// The iterator for RepeatedPtrField, RepeatedPtrIterator, is +// very similar to iterator_ptr in util/gtl/iterator_adaptors.h, +// but adds random-access operators and is modified to wrap a void** base +// iterator (since RepeatedPtrField stores its array as a void* array and +// casting void** to T** would violate C++ aliasing rules). +// +// This code based on net/proto/proto-array-internal.h by Jeffrey Yasskin +// (jyasskin@google.com). +template +class RepeatedPtrIterator { + public: + using iterator = RepeatedPtrIterator; + using iterator_category = std::random_access_iterator_tag; + using value_type = typename std::remove_const::type; + using difference_type = std::ptrdiff_t; + using pointer = Element*; + using reference = Element&; + + RepeatedPtrIterator() : it_(NULL) {} + explicit RepeatedPtrIterator(void* const* it) : it_(it) {} + + // Allow "upcasting" from RepeatedPtrIterator to + // RepeatedPtrIterator. + template + RepeatedPtrIterator(const RepeatedPtrIterator& other) + : it_(other.it_) { + // Force a compiler error if the other type is not convertible to ours. + if (false) { + implicit_cast(static_cast(nullptr)); + } + } + + // dereferenceable + reference operator*() const { return *reinterpret_cast(*it_); } + pointer operator->() const { return &(operator*()); } + + // {inc,dec}rementable + iterator& operator++() { + ++it_; + return *this; + } + iterator operator++(int) { return iterator(it_++); } + iterator& operator--() { + --it_; + return *this; + } + iterator operator--(int) { return iterator(it_--); } + + // equality_comparable + bool operator==(const iterator& x) const { return it_ == x.it_; } + bool operator!=(const iterator& x) const { return it_ != x.it_; } + + // less_than_comparable + bool operator<(const iterator& x) const { return it_ < x.it_; } + bool operator<=(const iterator& x) const { return it_ <= x.it_; } + bool operator>(const iterator& x) const { return it_ > x.it_; } + bool operator>=(const iterator& x) const { return it_ >= x.it_; } + + // addable, subtractable + iterator& operator+=(difference_type d) { + it_ += d; + return *this; + } + friend iterator operator+(iterator it, const difference_type d) { + it += d; + return it; + } + friend iterator operator+(const difference_type d, iterator it) { + it += d; + return it; + } + iterator& operator-=(difference_type d) { + it_ -= d; + return *this; + } + friend iterator operator-(iterator it, difference_type d) { + it -= d; + return it; + } + + // indexable + reference operator[](difference_type d) const { return *(*this + d); } + + // random access iterator + difference_type operator-(const iterator& x) const { return it_ - x.it_; } + + private: + template + friend class RepeatedPtrIterator; + + // The internal iterator. + void* const* it_; +}; + +// Provide an iterator that operates on pointers to the underlying objects +// rather than the objects themselves as RepeatedPtrIterator does. +// Consider using this when working with stl algorithms that change +// the array. +// The VoidPtr template parameter holds the type-agnostic pointer value +// referenced by the iterator. It should either be "void *" for a mutable +// iterator, or "const void* const" for a constant iterator. +template +class RepeatedPtrOverPtrsIterator { + public: + using iterator = RepeatedPtrOverPtrsIterator; + using iterator_category = std::random_access_iterator_tag; + using value_type = typename std::remove_const::type; + using difference_type = std::ptrdiff_t; + using pointer = Element*; + using reference = Element&; + + RepeatedPtrOverPtrsIterator() : it_(NULL) {} + explicit RepeatedPtrOverPtrsIterator(VoidPtr* it) : it_(it) {} + + // dereferenceable + reference operator*() const { return *reinterpret_cast(it_); } + pointer operator->() const { return &(operator*()); } + + // {inc,dec}rementable + iterator& operator++() { + ++it_; + return *this; + } + iterator operator++(int) { return iterator(it_++); } + iterator& operator--() { + --it_; + return *this; + } + iterator operator--(int) { return iterator(it_--); } + + // equality_comparable + bool operator==(const iterator& x) const { return it_ == x.it_; } + bool operator!=(const iterator& x) const { return it_ != x.it_; } + + // less_than_comparable + bool operator<(const iterator& x) const { return it_ < x.it_; } + bool operator<=(const iterator& x) const { return it_ <= x.it_; } + bool operator>(const iterator& x) const { return it_ > x.it_; } + bool operator>=(const iterator& x) const { return it_ >= x.it_; } + + // addable, subtractable + iterator& operator+=(difference_type d) { + it_ += d; + return *this; + } + friend iterator operator+(iterator it, difference_type d) { + it += d; + return it; + } + friend iterator operator+(difference_type d, iterator it) { + it += d; + return it; + } + iterator& operator-=(difference_type d) { + it_ -= d; + return *this; + } + friend iterator operator-(iterator it, difference_type d) { + it -= d; + return it; + } + + // indexable + reference operator[](difference_type d) const { return *(*this + d); } + + // random access iterator + difference_type operator-(const iterator& x) const { return it_ - x.it_; } + + private: + template + friend class RepeatedPtrIterator; + + // The internal iterator. + VoidPtr* it_; +}; + +void RepeatedPtrFieldBase::InternalSwap(RepeatedPtrFieldBase* other) { + GOOGLE_DCHECK(this != other); + + // Swap all fields at once. + static_assert(std::is_standard_layout::value, + "offsetof() requires standard layout before c++17"); + internal::memswaprep_) - + offsetof(RepeatedPtrFieldBase, arena_)>( + reinterpret_cast(this) + offsetof(RepeatedPtrFieldBase, arena_), + reinterpret_cast(other) + offsetof(RepeatedPtrFieldBase, arena_)); +} + +} // namespace internal + +template +inline typename RepeatedPtrField::iterator +RepeatedPtrField::begin() { + return iterator(raw_data()); +} +template +inline typename RepeatedPtrField::const_iterator +RepeatedPtrField::begin() const { + return iterator(raw_data()); +} +template +inline typename RepeatedPtrField::const_iterator +RepeatedPtrField::cbegin() const { + return begin(); +} +template +inline typename RepeatedPtrField::iterator +RepeatedPtrField::end() { + return iterator(raw_data() + size()); +} +template +inline typename RepeatedPtrField::const_iterator +RepeatedPtrField::end() const { + return iterator(raw_data() + size()); +} +template +inline typename RepeatedPtrField::const_iterator +RepeatedPtrField::cend() const { + return end(); +} + +template +inline typename RepeatedPtrField::pointer_iterator +RepeatedPtrField::pointer_begin() { + return pointer_iterator(raw_mutable_data()); +} +template +inline typename RepeatedPtrField::const_pointer_iterator +RepeatedPtrField::pointer_begin() const { + return const_pointer_iterator(const_cast(raw_data())); +} +template +inline typename RepeatedPtrField::pointer_iterator +RepeatedPtrField::pointer_end() { + return pointer_iterator(raw_mutable_data() + size()); +} +template +inline typename RepeatedPtrField::const_pointer_iterator +RepeatedPtrField::pointer_end() const { + return const_pointer_iterator( + const_cast(raw_data() + size())); +} + +// Iterators and helper functions that follow the spirit of the STL +// std::back_insert_iterator and std::back_inserter but are tailor-made +// for RepeatedField and RepeatedPtrField. Typical usage would be: +// +// std::copy(some_sequence.begin(), some_sequence.end(), +// RepeatedFieldBackInserter(proto.mutable_sequence())); +// +// Ported by johannes from util/gtl/proto-array-iterators.h + +namespace internal { +// A back inserter for RepeatedField objects. +template +class RepeatedFieldBackInsertIterator + : public std::iterator { + public: + explicit RepeatedFieldBackInsertIterator( + RepeatedField* const mutable_field) + : field_(mutable_field) {} + RepeatedFieldBackInsertIterator& operator=(const T& value) { + field_->Add(value); + return *this; + } + RepeatedFieldBackInsertIterator& operator*() { return *this; } + RepeatedFieldBackInsertIterator& operator++() { return *this; } + RepeatedFieldBackInsertIterator& operator++(int /* unused */) { + return *this; + } + + private: + RepeatedField* field_; +}; + +// A back inserter for RepeatedPtrField objects. +template +class RepeatedPtrFieldBackInsertIterator + : public std::iterator { + public: + RepeatedPtrFieldBackInsertIterator(RepeatedPtrField* const mutable_field) + : field_(mutable_field) {} + RepeatedPtrFieldBackInsertIterator& operator=(const T& value) { + *field_->Add() = value; + return *this; + } + RepeatedPtrFieldBackInsertIterator& operator=( + const T* const ptr_to_value) { + *field_->Add() = *ptr_to_value; + return *this; + } + RepeatedPtrFieldBackInsertIterator& operator=(T&& value) { + *field_->Add() = std::move(value); + return *this; + } + RepeatedPtrFieldBackInsertIterator& operator*() { return *this; } + RepeatedPtrFieldBackInsertIterator& operator++() { return *this; } + RepeatedPtrFieldBackInsertIterator& operator++(int /* unused */) { + return *this; + } + + private: + RepeatedPtrField* field_; +}; + +// A back inserter for RepeatedPtrFields that inserts by transferring ownership +// of a pointer. +template +class AllocatedRepeatedPtrFieldBackInsertIterator + : public std::iterator { + public: + explicit AllocatedRepeatedPtrFieldBackInsertIterator( + RepeatedPtrField* const mutable_field) + : field_(mutable_field) {} + AllocatedRepeatedPtrFieldBackInsertIterator& operator=( + T* const ptr_to_value) { + field_->AddAllocated(ptr_to_value); + return *this; + } + AllocatedRepeatedPtrFieldBackInsertIterator& operator*() { return *this; } + AllocatedRepeatedPtrFieldBackInsertIterator& operator++() { return *this; } + AllocatedRepeatedPtrFieldBackInsertIterator& operator++(int /* unused */) { + return *this; + } + + private: + RepeatedPtrField* field_; +}; + +// Almost identical to AllocatedRepeatedPtrFieldBackInsertIterator. This one +// uses the UnsafeArenaAddAllocated instead. +template +class UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator + : public std::iterator { + public: + explicit UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator( + RepeatedPtrField* const mutable_field) + : field_(mutable_field) {} + UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator& operator=( + T const* const ptr_to_value) { + field_->UnsafeArenaAddAllocated(const_cast(ptr_to_value)); + return *this; + } + UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator& operator*() { + return *this; + } + UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator& operator++() { + return *this; + } + UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator& operator++( + int /* unused */) { + return *this; + } + + private: + RepeatedPtrField* field_; +}; + +} // namespace internal + +// Provides a back insert iterator for RepeatedField instances, +// similar to std::back_inserter(). +template +internal::RepeatedFieldBackInsertIterator RepeatedFieldBackInserter( + RepeatedField* const mutable_field) { + return internal::RepeatedFieldBackInsertIterator(mutable_field); +} + +// Provides a back insert iterator for RepeatedPtrField instances, +// similar to std::back_inserter(). +template +internal::RepeatedPtrFieldBackInsertIterator RepeatedPtrFieldBackInserter( + RepeatedPtrField* const mutable_field) { + return internal::RepeatedPtrFieldBackInsertIterator(mutable_field); +} + +// Special back insert iterator for RepeatedPtrField instances, just in +// case someone wants to write generic template code that can access both +// RepeatedFields and RepeatedPtrFields using a common name. +template +internal::RepeatedPtrFieldBackInsertIterator RepeatedFieldBackInserter( + RepeatedPtrField* const mutable_field) { + return internal::RepeatedPtrFieldBackInsertIterator(mutable_field); +} + +// Provides a back insert iterator for RepeatedPtrField instances +// similar to std::back_inserter() which transfers the ownership while +// copying elements. +template +internal::AllocatedRepeatedPtrFieldBackInsertIterator +AllocatedRepeatedPtrFieldBackInserter( + RepeatedPtrField* const mutable_field) { + return internal::AllocatedRepeatedPtrFieldBackInsertIterator( + mutable_field); +} + +// Similar to AllocatedRepeatedPtrFieldBackInserter, using +// UnsafeArenaAddAllocated instead of AddAllocated. +// This is slightly faster if that matters. It is also useful in legacy code +// that uses temporary ownership to avoid copies. Example: +// RepeatedPtrField temp_field; +// temp_field.AddAllocated(new T); +// ... // Do something with temp_field +// temp_field.ExtractSubrange(0, temp_field.size(), nullptr); +// If you put temp_field on the arena this fails, because the ownership +// transfers to the arena at the "AddAllocated" call and is not released anymore +// causing a double delete. Using UnsafeArenaAddAllocated prevents this. +template +internal::UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator +UnsafeArenaAllocatedRepeatedPtrFieldBackInserter( + RepeatedPtrField* const mutable_field) { + return internal::UnsafeArenaAllocatedRepeatedPtrFieldBackInsertIterator( + mutable_field); +} + +// Extern declarations of common instantiations to reduce library bloat. +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE RepeatedField; +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE RepeatedField; +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE RepeatedField; +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE RepeatedField; +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE RepeatedField; +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE RepeatedField; +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE RepeatedField; +extern template class PROTOBUF_EXPORT_TEMPLATE_DECLARE + RepeatedPtrField; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_REPEATED_FIELD_H__ diff --git a/external/include/google/protobuf/service.h b/external/include/google/protobuf/service.h new file mode 100644 index 0000000..b18a803 --- /dev/null +++ b/external/include/google/protobuf/service.h @@ -0,0 +1,293 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// DEPRECATED: This module declares the abstract interfaces underlying proto2 +// RPC services. These are intended to be independent of any particular RPC +// implementation, so that proto2 services can be used on top of a variety +// of implementations. Starting with version 2.3.0, RPC implementations should +// not try to build on these, but should instead provide code generator plugins +// which generate code specific to the particular RPC implementation. This way +// the generated code can be more appropriate for the implementation in use +// and can avoid unnecessary layers of indirection. +// +// +// When you use the protocol compiler to compile a service definition, it +// generates two classes: An abstract interface for the service (with +// methods matching the service definition) and a "stub" implementation. +// A stub is just a type-safe wrapper around an RpcChannel which emulates a +// local implementation of the service. +// +// For example, the service definition: +// service MyService { +// rpc Foo(MyRequest) returns(MyResponse); +// } +// will generate abstract interface "MyService" and class "MyService::Stub". +// You could implement a MyService as follows: +// class MyServiceImpl : public MyService { +// public: +// MyServiceImpl() {} +// ~MyServiceImpl() {} +// +// // implements MyService --------------------------------------- +// +// void Foo(google::protobuf::RpcController* controller, +// const MyRequest* request, +// MyResponse* response, +// Closure* done) { +// // ... read request and fill in response ... +// done->Run(); +// } +// }; +// You would then register an instance of MyServiceImpl with your RPC server +// implementation. (How to do that depends on the implementation.) +// +// To call a remote MyServiceImpl, first you need an RpcChannel connected to it. +// How to construct a channel depends, again, on your RPC implementation. +// Here we use a hypothetical "MyRpcChannel" as an example: +// MyRpcChannel channel("rpc:hostname:1234/myservice"); +// MyRpcController controller; +// MyServiceImpl::Stub stub(&channel); +// FooRequest request; +// FooResponse response; +// +// // ... fill in request ... +// +// stub.Foo(&controller, request, &response, NewCallback(HandleResponse)); +// +// On Thread-Safety: +// +// Different RPC implementations may make different guarantees about what +// threads they may run callbacks on, and what threads the application is +// allowed to use to call the RPC system. Portable software should be ready +// for callbacks to be called on any thread, but should not try to call the +// RPC system from any thread except for the ones on which it received the +// callbacks. Realistically, though, simple software will probably want to +// use a single-threaded RPC system while high-end software will want to +// use multiple threads. RPC implementations should provide multiple +// choices. + +#ifndef GOOGLE_PROTOBUF_SERVICE_H__ +#define GOOGLE_PROTOBUF_SERVICE_H__ + +#include +#include +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +#include + +namespace google { +namespace protobuf { + +// Defined in this file. +class Service; +class RpcController; +class RpcChannel; + +// Defined in other files. +class Descriptor; // descriptor.h +class ServiceDescriptor; // descriptor.h +class MethodDescriptor; // descriptor.h +class Message; // message.h + +// Abstract base interface for protocol-buffer-based RPC services. Services +// themselves are abstract interfaces (implemented either by servers or as +// stubs), but they subclass this base interface. The methods of this +// interface can be used to call the methods of the Service without knowing +// its exact type at compile time (analogous to Reflection). +class PROTOBUF_EXPORT Service { + public: + inline Service() {} + virtual ~Service(); + + // When constructing a stub, you may pass STUB_OWNS_CHANNEL as the second + // parameter to the constructor to tell it to delete its RpcChannel when + // destroyed. + enum ChannelOwnership { STUB_OWNS_CHANNEL, STUB_DOESNT_OWN_CHANNEL }; + + // Get the ServiceDescriptor describing this service and its methods. + virtual const ServiceDescriptor* GetDescriptor() = 0; + + // Call a method of the service specified by MethodDescriptor. This is + // normally implemented as a simple switch() that calls the standard + // definitions of the service's methods. + // + // Preconditions: + // * method->service() == GetDescriptor() + // * request and response are of the exact same classes as the objects + // returned by GetRequestPrototype(method) and + // GetResponsePrototype(method). + // * After the call has started, the request must not be modified and the + // response must not be accessed at all until "done" is called. + // * "controller" is of the correct type for the RPC implementation being + // used by this Service. For stubs, the "correct type" depends on the + // RpcChannel which the stub is using. Server-side Service + // implementations are expected to accept whatever type of RpcController + // the server-side RPC implementation uses. + // + // Postconditions: + // * "done" will be called when the method is complete. This may be + // before CallMethod() returns or it may be at some point in the future. + // * If the RPC succeeded, "response" contains the response returned by + // the server. + // * If the RPC failed, "response"'s contents are undefined. The + // RpcController can be queried to determine if an error occurred and + // possibly to get more information about the error. + virtual void CallMethod(const MethodDescriptor* method, + RpcController* controller, const Message* request, + Message* response, Closure* done) = 0; + + // CallMethod() requires that the request and response passed in are of a + // particular subclass of Message. GetRequestPrototype() and + // GetResponsePrototype() get the default instances of these required types. + // You can then call Message::New() on these instances to construct mutable + // objects which you can then pass to CallMethod(). + // + // Example: + // const MethodDescriptor* method = + // service->GetDescriptor()->FindMethodByName("Foo"); + // Message* request = stub->GetRequestPrototype (method)->New(); + // Message* response = stub->GetResponsePrototype(method)->New(); + // request->ParseFromString(input); + // service->CallMethod(method, *request, response, callback); + virtual const Message& GetRequestPrototype( + const MethodDescriptor* method) const = 0; + virtual const Message& GetResponsePrototype( + const MethodDescriptor* method) const = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Service); +}; + +// An RpcController mediates a single method call. The primary purpose of +// the controller is to provide a way to manipulate settings specific to the +// RPC implementation and to find out about RPC-level errors. +// +// The methods provided by the RpcController interface are intended to be a +// "least common denominator" set of features which we expect all +// implementations to support. Specific implementations may provide more +// advanced features (e.g. deadline propagation). +class PROTOBUF_EXPORT RpcController { + public: + inline RpcController() {} + virtual ~RpcController(); + + // Client-side methods --------------------------------------------- + // These calls may be made from the client side only. Their results + // are undefined on the server side (may crash). + + // Resets the RpcController to its initial state so that it may be reused in + // a new call. Must not be called while an RPC is in progress. + virtual void Reset() = 0; + + // After a call has finished, returns true if the call failed. The possible + // reasons for failure depend on the RPC implementation. Failed() must not + // be called before a call has finished. If Failed() returns true, the + // contents of the response message are undefined. + virtual bool Failed() const = 0; + + // If Failed() is true, returns a human-readable description of the error. + virtual std::string ErrorText() const = 0; + + // Advises the RPC system that the caller desires that the RPC call be + // canceled. The RPC system may cancel it immediately, may wait awhile and + // then cancel it, or may not even cancel the call at all. If the call is + // canceled, the "done" callback will still be called and the RpcController + // will indicate that the call failed at that time. + virtual void StartCancel() = 0; + + // Server-side methods --------------------------------------------- + // These calls may be made from the server side only. Their results + // are undefined on the client side (may crash). + + // Causes Failed() to return true on the client side. "reason" will be + // incorporated into the message returned by ErrorText(). If you find + // you need to return machine-readable information about failures, you + // should incorporate it into your response protocol buffer and should + // NOT call SetFailed(). + virtual void SetFailed(const std::string& reason) = 0; + + // If true, indicates that the client canceled the RPC, so the server may + // as well give up on replying to it. The server should still call the + // final "done" callback. + virtual bool IsCanceled() const = 0; + + // Asks that the given callback be called when the RPC is canceled. The + // callback will always be called exactly once. If the RPC completes without + // being canceled, the callback will be called after completion. If the RPC + // has already been canceled when NotifyOnCancel() is called, the callback + // will be called immediately. + // + // NotifyOnCancel() must be called no more than once per request. + virtual void NotifyOnCancel(Closure* callback) = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(RpcController); +}; + +// Abstract interface for an RPC channel. An RpcChannel represents a +// communication line to a Service which can be used to call that Service's +// methods. The Service may be running on another machine. Normally, you +// should not call an RpcChannel directly, but instead construct a stub Service +// wrapping it. Example: +// RpcChannel* channel = new MyRpcChannel("remotehost.example.com:1234"); +// MyService* service = new MyService::Stub(channel); +// service->MyMethod(request, &response, callback); +class PROTOBUF_EXPORT RpcChannel { + public: + inline RpcChannel() {} + virtual ~RpcChannel(); + + // Call the given method of the remote service. The signature of this + // procedure looks the same as Service::CallMethod(), but the requirements + // are less strict in one important way: the request and response objects + // need not be of any specific class as long as their descriptors are + // method->input_type() and method->output_type(). + virtual void CallMethod(const MethodDescriptor* method, + RpcController* controller, const Message* request, + Message* response, Closure* done) = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(RpcChannel); +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_SERVICE_H__ diff --git a/external/include/google/protobuf/source_context.pb.h b/external/include/google/protobuf/source_context.pb.h new file mode 100644 index 0000000..8e49a7b --- /dev/null +++ b/external/include/google/protobuf/source_context.pb.h @@ -0,0 +1,278 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/source_context.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fsource_5fcontext_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fsource_5fcontext_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fsource_5fcontext_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fsource_5fcontext_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto; +PROTOBUF_NAMESPACE_OPEN +class SourceContext; +struct SourceContextDefaultTypeInternal; +PROTOBUF_EXPORT extern SourceContextDefaultTypeInternal _SourceContext_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::SourceContext* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +// =================================================================== + +class PROTOBUF_EXPORT SourceContext final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.SourceContext) */ { + public: + inline SourceContext() : SourceContext(nullptr) {} + ~SourceContext() override; + explicit constexpr SourceContext(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SourceContext(const SourceContext& from); + SourceContext(SourceContext&& from) noexcept + : SourceContext() { + *this = ::std::move(from); + } + + inline SourceContext& operator=(const SourceContext& from) { + CopyFrom(from); + return *this; + } + inline SourceContext& operator=(SourceContext&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SourceContext& default_instance() { + return *internal_default_instance(); + } + static inline const SourceContext* internal_default_instance() { + return reinterpret_cast( + &_SourceContext_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(SourceContext& a, SourceContext& b) { + a.Swap(&b); + } + inline void Swap(SourceContext* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SourceContext* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline SourceContext* New() const final { + return new SourceContext(); + } + + SourceContext* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SourceContext& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SourceContext& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SourceContext* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.SourceContext"; + } + protected: + explicit SourceContext(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFileNameFieldNumber = 1, + }; + // string file_name = 1; + void clear_file_name(); + const std::string& file_name() const; + template + void set_file_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_file_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_file_name(); + void set_allocated_file_name(std::string* file_name); + private: + const std::string& _internal_file_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_file_name(const std::string& value); + std::string* _internal_mutable_file_name(); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.SourceContext) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr file_name_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fsource_5fcontext_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// SourceContext + +// string file_name = 1; +inline void SourceContext::clear_file_name() { + file_name_.ClearToEmpty(); +} +inline const std::string& SourceContext::file_name() const { + // @@protoc_insertion_point(field_get:google.protobuf.SourceContext.file_name) + return _internal_file_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void SourceContext::set_file_name(ArgT0&& arg0, ArgT... args) { + + file_name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.SourceContext.file_name) +} +inline std::string* SourceContext::mutable_file_name() { + std::string* _s = _internal_mutable_file_name(); + // @@protoc_insertion_point(field_mutable:google.protobuf.SourceContext.file_name) + return _s; +} +inline const std::string& SourceContext::_internal_file_name() const { + return file_name_.Get(); +} +inline void SourceContext::_internal_set_file_name(const std::string& value) { + + file_name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* SourceContext::_internal_mutable_file_name() { + + return file_name_.Mutable(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* SourceContext::release_file_name() { + // @@protoc_insertion_point(field_release:google.protobuf.SourceContext.file_name) + return file_name_.Release(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); +} +inline void SourceContext::set_allocated_file_name(std::string* file_name) { + if (file_name != nullptr) { + + } else { + + } + file_name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), file_name, + GetArenaForAllocation()); + // @@protoc_insertion_point(field_set_allocated:google.protobuf.SourceContext.file_name) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fsource_5fcontext_2eproto diff --git a/external/include/google/protobuf/source_context.proto b/external/include/google/protobuf/source_context.proto new file mode 100644 index 0000000..06bfc43 --- /dev/null +++ b/external/include/google/protobuf/source_context.proto @@ -0,0 +1,48 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "SourceContextProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; +option go_package = "google.golang.org/protobuf/types/known/sourcecontextpb"; + +// `SourceContext` represents information about the source of a +// protobuf element, like the file in which it is defined. +message SourceContext { + // The path-qualified name of the .proto file that contained the associated + // protobuf element. For example: `"google/protobuf/source_context.proto"`. + string file_name = 1; +} diff --git a/external/include/google/protobuf/struct.pb.h b/external/include/google/protobuf/struct.pb.h new file mode 100644 index 0000000..a9c3eba --- /dev/null +++ b/external/include/google/protobuf/struct.pb.h @@ -0,0 +1,1161 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/struct.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fstruct_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fstruct_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fstruct_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fstruct_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fstruct_2eproto; +PROTOBUF_NAMESPACE_OPEN +class ListValue; +struct ListValueDefaultTypeInternal; +PROTOBUF_EXPORT extern ListValueDefaultTypeInternal _ListValue_default_instance_; +class Struct; +struct StructDefaultTypeInternal; +PROTOBUF_EXPORT extern StructDefaultTypeInternal _Struct_default_instance_; +class Struct_FieldsEntry_DoNotUse; +struct Struct_FieldsEntry_DoNotUseDefaultTypeInternal; +PROTOBUF_EXPORT extern Struct_FieldsEntry_DoNotUseDefaultTypeInternal _Struct_FieldsEntry_DoNotUse_default_instance_; +class Value; +struct ValueDefaultTypeInternal; +PROTOBUF_EXPORT extern ValueDefaultTypeInternal _Value_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::ListValue* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Struct* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Struct_FieldsEntry_DoNotUse* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Value* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +enum NullValue : int { + NULL_VALUE = 0, + NullValue_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(), + NullValue_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max() +}; +PROTOBUF_EXPORT bool NullValue_IsValid(int value); +constexpr NullValue NullValue_MIN = NULL_VALUE; +constexpr NullValue NullValue_MAX = NULL_VALUE; +constexpr int NullValue_ARRAYSIZE = NullValue_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* NullValue_descriptor(); +template +inline const std::string& NullValue_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function NullValue_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + NullValue_descriptor(), enum_t_value); +} +inline bool NullValue_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, NullValue* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + NullValue_descriptor(), name, value); +} +// =================================================================== + +class Struct_FieldsEntry_DoNotUse : public ::PROTOBUF_NAMESPACE_ID::internal::MapEntry { +public: + typedef ::PROTOBUF_NAMESPACE_ID::internal::MapEntry SuperType; + Struct_FieldsEntry_DoNotUse(); + explicit constexpr Struct_FieldsEntry_DoNotUse( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + explicit Struct_FieldsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena); + void MergeFrom(const Struct_FieldsEntry_DoNotUse& other); + static const Struct_FieldsEntry_DoNotUse* internal_default_instance() { return reinterpret_cast(&_Struct_FieldsEntry_DoNotUse_default_instance_); } + static bool ValidateKey(std::string* s) { + return ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast(s->size()), ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::PARSE, "google.protobuf.Struct.FieldsEntry.key"); + } + static bool ValidateValue(void*) { return true; } + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; +}; + +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT Struct final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Struct) */ { + public: + inline Struct() : Struct(nullptr) {} + ~Struct() override; + explicit constexpr Struct(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Struct(const Struct& from); + Struct(Struct&& from) noexcept + : Struct() { + *this = ::std::move(from); + } + + inline Struct& operator=(const Struct& from) { + CopyFrom(from); + return *this; + } + inline Struct& operator=(Struct&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Struct& default_instance() { + return *internal_default_instance(); + } + static inline const Struct* internal_default_instance() { + return reinterpret_cast( + &_Struct_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(Struct& a, Struct& b) { + a.Swap(&b); + } + inline void Swap(Struct* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Struct* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Struct* New() const final { + return new Struct(); + } + + Struct* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Struct& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Struct& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Struct* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Struct"; + } + protected: + explicit Struct(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + + // accessors ------------------------------------------------------- + + enum : int { + kFieldsFieldNumber = 1, + }; + // map fields = 1; + int fields_size() const; + private: + int _internal_fields_size() const; + public: + void clear_fields(); + private: + const ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >& + _internal_fields() const; + ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >* + _internal_mutable_fields(); + public: + const ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >& + fields() const; + ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >* + mutable_fields(); + + // @@protoc_insertion_point(class_scope:google.protobuf.Struct) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::internal::MapField< + Struct_FieldsEntry_DoNotUse, + std::string, PROTOBUF_NAMESPACE_ID::Value, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_STRING, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE> fields_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fstruct_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT Value final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Value) */ { + public: + inline Value() : Value(nullptr) {} + ~Value() override; + explicit constexpr Value(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Value(const Value& from); + Value(Value&& from) noexcept + : Value() { + *this = ::std::move(from); + } + + inline Value& operator=(const Value& from) { + CopyFrom(from); + return *this; + } + inline Value& operator=(Value&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Value& default_instance() { + return *internal_default_instance(); + } + enum KindCase { + kNullValue = 1, + kNumberValue = 2, + kStringValue = 3, + kBoolValue = 4, + kStructValue = 5, + kListValue = 6, + KIND_NOT_SET = 0, + }; + + static inline const Value* internal_default_instance() { + return reinterpret_cast( + &_Value_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + friend void swap(Value& a, Value& b) { + a.Swap(&b); + } + inline void Swap(Value* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Value* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Value* New() const final { + return new Value(); + } + + Value* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Value& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Value& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Value* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Value"; + } + protected: + explicit Value(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNullValueFieldNumber = 1, + kNumberValueFieldNumber = 2, + kStringValueFieldNumber = 3, + kBoolValueFieldNumber = 4, + kStructValueFieldNumber = 5, + kListValueFieldNumber = 6, + }; + // .google.protobuf.NullValue null_value = 1; + bool has_null_value() const; + private: + bool _internal_has_null_value() const; + public: + void clear_null_value(); + PROTOBUF_NAMESPACE_ID::NullValue null_value() const; + void set_null_value(PROTOBUF_NAMESPACE_ID::NullValue value); + private: + PROTOBUF_NAMESPACE_ID::NullValue _internal_null_value() const; + void _internal_set_null_value(PROTOBUF_NAMESPACE_ID::NullValue value); + public: + + // double number_value = 2; + bool has_number_value() const; + private: + bool _internal_has_number_value() const; + public: + void clear_number_value(); + double number_value() const; + void set_number_value(double value); + private: + double _internal_number_value() const; + void _internal_set_number_value(double value); + public: + + // string string_value = 3; + bool has_string_value() const; + private: + bool _internal_has_string_value() const; + public: + void clear_string_value(); + const std::string& string_value() const; + template + void set_string_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_string_value(); + PROTOBUF_MUST_USE_RESULT std::string* release_string_value(); + void set_allocated_string_value(std::string* string_value); + private: + const std::string& _internal_string_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_string_value(const std::string& value); + std::string* _internal_mutable_string_value(); + public: + + // bool bool_value = 4; + bool has_bool_value() const; + private: + bool _internal_has_bool_value() const; + public: + void clear_bool_value(); + bool bool_value() const; + void set_bool_value(bool value); + private: + bool _internal_bool_value() const; + void _internal_set_bool_value(bool value); + public: + + // .google.protobuf.Struct struct_value = 5; + bool has_struct_value() const; + private: + bool _internal_has_struct_value() const; + public: + void clear_struct_value(); + const PROTOBUF_NAMESPACE_ID::Struct& struct_value() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::Struct* release_struct_value(); + PROTOBUF_NAMESPACE_ID::Struct* mutable_struct_value(); + void set_allocated_struct_value(PROTOBUF_NAMESPACE_ID::Struct* struct_value); + private: + const PROTOBUF_NAMESPACE_ID::Struct& _internal_struct_value() const; + PROTOBUF_NAMESPACE_ID::Struct* _internal_mutable_struct_value(); + public: + void unsafe_arena_set_allocated_struct_value( + PROTOBUF_NAMESPACE_ID::Struct* struct_value); + PROTOBUF_NAMESPACE_ID::Struct* unsafe_arena_release_struct_value(); + + // .google.protobuf.ListValue list_value = 6; + bool has_list_value() const; + private: + bool _internal_has_list_value() const; + public: + void clear_list_value(); + const PROTOBUF_NAMESPACE_ID::ListValue& list_value() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::ListValue* release_list_value(); + PROTOBUF_NAMESPACE_ID::ListValue* mutable_list_value(); + void set_allocated_list_value(PROTOBUF_NAMESPACE_ID::ListValue* list_value); + private: + const PROTOBUF_NAMESPACE_ID::ListValue& _internal_list_value() const; + PROTOBUF_NAMESPACE_ID::ListValue* _internal_mutable_list_value(); + public: + void unsafe_arena_set_allocated_list_value( + PROTOBUF_NAMESPACE_ID::ListValue* list_value); + PROTOBUF_NAMESPACE_ID::ListValue* unsafe_arena_release_list_value(); + + void clear_kind(); + KindCase kind_case() const; + // @@protoc_insertion_point(class_scope:google.protobuf.Value) + private: + class _Internal; + void set_has_null_value(); + void set_has_number_value(); + void set_has_string_value(); + void set_has_bool_value(); + void set_has_struct_value(); + void set_has_list_value(); + + inline bool has_kind() const; + inline void clear_has_kind(); + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + union KindUnion { + constexpr KindUnion() : _constinit_{} {} + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; + int null_value_; + double number_value_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr string_value_; + bool bool_value_; + PROTOBUF_NAMESPACE_ID::Struct* struct_value_; + PROTOBUF_NAMESPACE_ID::ListValue* list_value_; + } kind_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1]; + + friend struct ::TableStruct_google_2fprotobuf_2fstruct_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT ListValue final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.ListValue) */ { + public: + inline ListValue() : ListValue(nullptr) {} + ~ListValue() override; + explicit constexpr ListValue(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ListValue(const ListValue& from); + ListValue(ListValue&& from) noexcept + : ListValue() { + *this = ::std::move(from); + } + + inline ListValue& operator=(const ListValue& from) { + CopyFrom(from); + return *this; + } + inline ListValue& operator=(ListValue&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ListValue& default_instance() { + return *internal_default_instance(); + } + static inline const ListValue* internal_default_instance() { + return reinterpret_cast( + &_ListValue_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + friend void swap(ListValue& a, ListValue& b) { + a.Swap(&b); + } + inline void Swap(ListValue* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ListValue* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline ListValue* New() const final { + return new ListValue(); + } + + ListValue* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ListValue& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ListValue& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ListValue* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.ListValue"; + } + protected: + explicit ListValue(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kValuesFieldNumber = 1, + }; + // repeated .google.protobuf.Value values = 1; + int values_size() const; + private: + int _internal_values_size() const; + public: + void clear_values(); + PROTOBUF_NAMESPACE_ID::Value* mutable_values(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Value >* + mutable_values(); + private: + const PROTOBUF_NAMESPACE_ID::Value& _internal_values(int index) const; + PROTOBUF_NAMESPACE_ID::Value* _internal_add_values(); + public: + const PROTOBUF_NAMESPACE_ID::Value& values(int index) const; + PROTOBUF_NAMESPACE_ID::Value* add_values(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Value >& + values() const; + + // @@protoc_insertion_point(class_scope:google.protobuf.ListValue) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Value > values_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2fstruct_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// Struct + +// map fields = 1; +inline int Struct::_internal_fields_size() const { + return fields_.size(); +} +inline int Struct::fields_size() const { + return _internal_fields_size(); +} +inline void Struct::clear_fields() { + fields_.Clear(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >& +Struct::_internal_fields() const { + return fields_.GetMap(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >& +Struct::fields() const { + // @@protoc_insertion_point(field_map:google.protobuf.Struct.fields) + return _internal_fields(); +} +inline ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >* +Struct::_internal_mutable_fields() { + return fields_.MutableMap(); +} +inline ::PROTOBUF_NAMESPACE_ID::Map< std::string, PROTOBUF_NAMESPACE_ID::Value >* +Struct::mutable_fields() { + // @@protoc_insertion_point(field_mutable_map:google.protobuf.Struct.fields) + return _internal_mutable_fields(); +} + +// ------------------------------------------------------------------- + +// Value + +// .google.protobuf.NullValue null_value = 1; +inline bool Value::_internal_has_null_value() const { + return kind_case() == kNullValue; +} +inline bool Value::has_null_value() const { + return _internal_has_null_value(); +} +inline void Value::set_has_null_value() { + _oneof_case_[0] = kNullValue; +} +inline void Value::clear_null_value() { + if (_internal_has_null_value()) { + kind_.null_value_ = 0; + clear_has_kind(); + } +} +inline PROTOBUF_NAMESPACE_ID::NullValue Value::_internal_null_value() const { + if (_internal_has_null_value()) { + return static_cast< PROTOBUF_NAMESPACE_ID::NullValue >(kind_.null_value_); + } + return static_cast< PROTOBUF_NAMESPACE_ID::NullValue >(0); +} +inline PROTOBUF_NAMESPACE_ID::NullValue Value::null_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.Value.null_value) + return _internal_null_value(); +} +inline void Value::_internal_set_null_value(PROTOBUF_NAMESPACE_ID::NullValue value) { + if (!_internal_has_null_value()) { + clear_kind(); + set_has_null_value(); + } + kind_.null_value_ = value; +} +inline void Value::set_null_value(PROTOBUF_NAMESPACE_ID::NullValue value) { + _internal_set_null_value(value); + // @@protoc_insertion_point(field_set:google.protobuf.Value.null_value) +} + +// double number_value = 2; +inline bool Value::_internal_has_number_value() const { + return kind_case() == kNumberValue; +} +inline bool Value::has_number_value() const { + return _internal_has_number_value(); +} +inline void Value::set_has_number_value() { + _oneof_case_[0] = kNumberValue; +} +inline void Value::clear_number_value() { + if (_internal_has_number_value()) { + kind_.number_value_ = 0; + clear_has_kind(); + } +} +inline double Value::_internal_number_value() const { + if (_internal_has_number_value()) { + return kind_.number_value_; + } + return 0; +} +inline void Value::_internal_set_number_value(double value) { + if (!_internal_has_number_value()) { + clear_kind(); + set_has_number_value(); + } + kind_.number_value_ = value; +} +inline double Value::number_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.Value.number_value) + return _internal_number_value(); +} +inline void Value::set_number_value(double value) { + _internal_set_number_value(value); + // @@protoc_insertion_point(field_set:google.protobuf.Value.number_value) +} + +// string string_value = 3; +inline bool Value::_internal_has_string_value() const { + return kind_case() == kStringValue; +} +inline bool Value::has_string_value() const { + return _internal_has_string_value(); +} +inline void Value::set_has_string_value() { + _oneof_case_[0] = kStringValue; +} +inline void Value::clear_string_value() { + if (_internal_has_string_value()) { + kind_.string_value_.Destroy(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); + clear_has_kind(); + } +} +inline const std::string& Value::string_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.Value.string_value) + return _internal_string_value(); +} +template +inline void Value::set_string_value(ArgT0&& arg0, ArgT... args) { + if (!_internal_has_string_value()) { + clear_kind(); + set_has_string_value(); + kind_.string_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); + } + kind_.string_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:google.protobuf.Value.string_value) +} +inline std::string* Value::mutable_string_value() { + std::string* _s = _internal_mutable_string_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Value.string_value) + return _s; +} +inline const std::string& Value::_internal_string_value() const { + if (_internal_has_string_value()) { + return kind_.string_value_.Get(); + } + return ::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(); +} +inline void Value::_internal_set_string_value(const std::string& value) { + if (!_internal_has_string_value()) { + clear_kind(); + set_has_string_value(); + kind_.string_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); + } + kind_.string_value_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, value, GetArenaForAllocation()); +} +inline std::string* Value::_internal_mutable_string_value() { + if (!_internal_has_string_value()) { + clear_kind(); + set_has_string_value(); + kind_.string_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); + } + return kind_.string_value_.Mutable( + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, GetArenaForAllocation()); +} +inline std::string* Value::release_string_value() { + // @@protoc_insertion_point(field_release:google.protobuf.Value.string_value) + if (_internal_has_string_value()) { + clear_has_kind(); + return kind_.string_value_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArenaForAllocation()); + } else { + return nullptr; + } +} +inline void Value::set_allocated_string_value(std::string* string_value) { + if (has_kind()) { + clear_kind(); + } + if (string_value != nullptr) { + set_has_string_value(); + kind_.string_value_.UnsafeSetDefault(string_value); + ::PROTOBUF_NAMESPACE_ID::Arena* arena = GetArenaForAllocation(); + if (arena != nullptr) { + arena->Own(string_value); + } + } + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Value.string_value) +} + +// bool bool_value = 4; +inline bool Value::_internal_has_bool_value() const { + return kind_case() == kBoolValue; +} +inline bool Value::has_bool_value() const { + return _internal_has_bool_value(); +} +inline void Value::set_has_bool_value() { + _oneof_case_[0] = kBoolValue; +} +inline void Value::clear_bool_value() { + if (_internal_has_bool_value()) { + kind_.bool_value_ = false; + clear_has_kind(); + } +} +inline bool Value::_internal_bool_value() const { + if (_internal_has_bool_value()) { + return kind_.bool_value_; + } + return false; +} +inline void Value::_internal_set_bool_value(bool value) { + if (!_internal_has_bool_value()) { + clear_kind(); + set_has_bool_value(); + } + kind_.bool_value_ = value; +} +inline bool Value::bool_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.Value.bool_value) + return _internal_bool_value(); +} +inline void Value::set_bool_value(bool value) { + _internal_set_bool_value(value); + // @@protoc_insertion_point(field_set:google.protobuf.Value.bool_value) +} + +// .google.protobuf.Struct struct_value = 5; +inline bool Value::_internal_has_struct_value() const { + return kind_case() == kStructValue; +} +inline bool Value::has_struct_value() const { + return _internal_has_struct_value(); +} +inline void Value::set_has_struct_value() { + _oneof_case_[0] = kStructValue; +} +inline void Value::clear_struct_value() { + if (_internal_has_struct_value()) { + if (GetArenaForAllocation() == nullptr) { + delete kind_.struct_value_; + } + clear_has_kind(); + } +} +inline PROTOBUF_NAMESPACE_ID::Struct* Value::release_struct_value() { + // @@protoc_insertion_point(field_release:google.protobuf.Value.struct_value) + if (_internal_has_struct_value()) { + clear_has_kind(); + PROTOBUF_NAMESPACE_ID::Struct* temp = kind_.struct_value_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + kind_.struct_value_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const PROTOBUF_NAMESPACE_ID::Struct& Value::_internal_struct_value() const { + return _internal_has_struct_value() + ? *kind_.struct_value_ + : reinterpret_cast< PROTOBUF_NAMESPACE_ID::Struct&>(PROTOBUF_NAMESPACE_ID::_Struct_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::Struct& Value::struct_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.Value.struct_value) + return _internal_struct_value(); +} +inline PROTOBUF_NAMESPACE_ID::Struct* Value::unsafe_arena_release_struct_value() { + // @@protoc_insertion_point(field_unsafe_arena_release:google.protobuf.Value.struct_value) + if (_internal_has_struct_value()) { + clear_has_kind(); + PROTOBUF_NAMESPACE_ID::Struct* temp = kind_.struct_value_; + kind_.struct_value_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Value::unsafe_arena_set_allocated_struct_value(PROTOBUF_NAMESPACE_ID::Struct* struct_value) { + clear_kind(); + if (struct_value) { + set_has_struct_value(); + kind_.struct_value_ = struct_value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.Value.struct_value) +} +inline PROTOBUF_NAMESPACE_ID::Struct* Value::_internal_mutable_struct_value() { + if (!_internal_has_struct_value()) { + clear_kind(); + set_has_struct_value(); + kind_.struct_value_ = CreateMaybeMessage< PROTOBUF_NAMESPACE_ID::Struct >(GetArenaForAllocation()); + } + return kind_.struct_value_; +} +inline PROTOBUF_NAMESPACE_ID::Struct* Value::mutable_struct_value() { + PROTOBUF_NAMESPACE_ID::Struct* _msg = _internal_mutable_struct_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Value.struct_value) + return _msg; +} + +// .google.protobuf.ListValue list_value = 6; +inline bool Value::_internal_has_list_value() const { + return kind_case() == kListValue; +} +inline bool Value::has_list_value() const { + return _internal_has_list_value(); +} +inline void Value::set_has_list_value() { + _oneof_case_[0] = kListValue; +} +inline void Value::clear_list_value() { + if (_internal_has_list_value()) { + if (GetArenaForAllocation() == nullptr) { + delete kind_.list_value_; + } + clear_has_kind(); + } +} +inline PROTOBUF_NAMESPACE_ID::ListValue* Value::release_list_value() { + // @@protoc_insertion_point(field_release:google.protobuf.Value.list_value) + if (_internal_has_list_value()) { + clear_has_kind(); + PROTOBUF_NAMESPACE_ID::ListValue* temp = kind_.list_value_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + kind_.list_value_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const PROTOBUF_NAMESPACE_ID::ListValue& Value::_internal_list_value() const { + return _internal_has_list_value() + ? *kind_.list_value_ + : reinterpret_cast< PROTOBUF_NAMESPACE_ID::ListValue&>(PROTOBUF_NAMESPACE_ID::_ListValue_default_instance_); +} +inline const PROTOBUF_NAMESPACE_ID::ListValue& Value::list_value() const { + // @@protoc_insertion_point(field_get:google.protobuf.Value.list_value) + return _internal_list_value(); +} +inline PROTOBUF_NAMESPACE_ID::ListValue* Value::unsafe_arena_release_list_value() { + // @@protoc_insertion_point(field_unsafe_arena_release:google.protobuf.Value.list_value) + if (_internal_has_list_value()) { + clear_has_kind(); + PROTOBUF_NAMESPACE_ID::ListValue* temp = kind_.list_value_; + kind_.list_value_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Value::unsafe_arena_set_allocated_list_value(PROTOBUF_NAMESPACE_ID::ListValue* list_value) { + clear_kind(); + if (list_value) { + set_has_list_value(); + kind_.list_value_ = list_value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.Value.list_value) +} +inline PROTOBUF_NAMESPACE_ID::ListValue* Value::_internal_mutable_list_value() { + if (!_internal_has_list_value()) { + clear_kind(); + set_has_list_value(); + kind_.list_value_ = CreateMaybeMessage< PROTOBUF_NAMESPACE_ID::ListValue >(GetArenaForAllocation()); + } + return kind_.list_value_; +} +inline PROTOBUF_NAMESPACE_ID::ListValue* Value::mutable_list_value() { + PROTOBUF_NAMESPACE_ID::ListValue* _msg = _internal_mutable_list_value(); + // @@protoc_insertion_point(field_mutable:google.protobuf.Value.list_value) + return _msg; +} + +inline bool Value::has_kind() const { + return kind_case() != KIND_NOT_SET; +} +inline void Value::clear_has_kind() { + _oneof_case_[0] = KIND_NOT_SET; +} +inline Value::KindCase Value::kind_case() const { + return Value::KindCase(_oneof_case_[0]); +} +// ------------------------------------------------------------------- + +// ListValue + +// repeated .google.protobuf.Value values = 1; +inline int ListValue::_internal_values_size() const { + return values_.size(); +} +inline int ListValue::values_size() const { + return _internal_values_size(); +} +inline void ListValue::clear_values() { + values_.Clear(); +} +inline PROTOBUF_NAMESPACE_ID::Value* ListValue::mutable_values(int index) { + // @@protoc_insertion_point(field_mutable:google.protobuf.ListValue.values) + return values_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Value >* +ListValue::mutable_values() { + // @@protoc_insertion_point(field_mutable_list:google.protobuf.ListValue.values) + return &values_; +} +inline const PROTOBUF_NAMESPACE_ID::Value& ListValue::_internal_values(int index) const { + return values_.Get(index); +} +inline const PROTOBUF_NAMESPACE_ID::Value& ListValue::values(int index) const { + // @@protoc_insertion_point(field_get:google.protobuf.ListValue.values) + return _internal_values(index); +} +inline PROTOBUF_NAMESPACE_ID::Value* ListValue::_internal_add_values() { + return values_.Add(); +} +inline PROTOBUF_NAMESPACE_ID::Value* ListValue::add_values() { + PROTOBUF_NAMESPACE_ID::Value* _add = _internal_add_values(); + // @@protoc_insertion_point(field_add:google.protobuf.ListValue.values) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Value >& +ListValue::values() const { + // @@protoc_insertion_point(field_list:google.protobuf.ListValue.values) + return values_; +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +PROTOBUF_NAMESPACE_OPEN + +template <> struct is_proto_enum< PROTOBUF_NAMESPACE_ID::NullValue> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< PROTOBUF_NAMESPACE_ID::NullValue>() { + return PROTOBUF_NAMESPACE_ID::NullValue_descriptor(); +} + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2fstruct_2eproto diff --git a/external/include/google/protobuf/struct.proto b/external/include/google/protobuf/struct.proto new file mode 100644 index 0000000..545215c --- /dev/null +++ b/external/include/google/protobuf/struct.proto @@ -0,0 +1,95 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option cc_enable_arenas = true; +option go_package = "google.golang.org/protobuf/types/known/structpb"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "StructProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; + +// `Struct` represents a structured data value, consisting of fields +// which map to dynamically typed values. In some languages, `Struct` +// might be supported by a native representation. For example, in +// scripting languages like JS a struct is represented as an +// object. The details of that representation are described together +// with the proto support for the language. +// +// The JSON representation for `Struct` is JSON object. +message Struct { + // Unordered map of dynamically typed values. + map fields = 1; +} + +// `Value` represents a dynamically typed value which can be either +// null, a number, a string, a boolean, a recursive struct value, or a +// list of values. A producer of value is expected to set one of that +// variants, absence of any variant indicates an error. +// +// The JSON representation for `Value` is JSON value. +message Value { + // The kind of value. + oneof kind { + // Represents a null value. + NullValue null_value = 1; + // Represents a double value. + double number_value = 2; + // Represents a string value. + string string_value = 3; + // Represents a boolean value. + bool bool_value = 4; + // Represents a structured value. + Struct struct_value = 5; + // Represents a repeated `Value`. + ListValue list_value = 6; + } +} + +// `NullValue` is a singleton enumeration to represent the null value for the +// `Value` type union. +// +// The JSON representation for `NullValue` is JSON `null`. +enum NullValue { + // Null value. + NULL_VALUE = 0; +} + +// `ListValue` is a wrapper around a repeated field of values. +// +// The JSON representation for `ListValue` is JSON array. +message ListValue { + // Repeated field of dynamically typed values. + repeated Value values = 1; +} diff --git a/external/include/google/protobuf/stubs/bytestream.h b/external/include/google/protobuf/stubs/bytestream.h new file mode 100644 index 0000000..c7a48de --- /dev/null +++ b/external/include/google/protobuf/stubs/bytestream.h @@ -0,0 +1,351 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// This file declares the ByteSink and ByteSource abstract interfaces. These +// interfaces represent objects that consume (ByteSink) or produce (ByteSource) +// a sequence of bytes. Using these abstract interfaces in your APIs can help +// make your code work with a variety of input and output types. +// +// This file also declares the following commonly used implementations of these +// interfaces. +// +// ByteSink: +// UncheckedArrayByteSink Writes to an array, without bounds checking +// CheckedArrayByteSink Writes to an array, with bounds checking +// GrowingArrayByteSink Allocates and writes to a growable buffer +// StringByteSink Writes to an STL string +// NullByteSink Consumes a never-ending stream of bytes +// +// ByteSource: +// ArrayByteSource Reads from an array or string/StringPiece +// LimitedByteSource Limits the number of bytes read from an + +#ifndef GOOGLE_PROTOBUF_STUBS_BYTESTREAM_H_ +#define GOOGLE_PROTOBUF_STUBS_BYTESTREAM_H_ + +#include +#include + +#include +#include + +#include + +class CordByteSink; + +namespace google { +namespace protobuf { +namespace strings { + +// An abstract interface for an object that consumes a sequence of bytes. This +// interface offers a way to append data as well as a Flush() function. +// +// Example: +// +// string my_data; +// ... +// ByteSink* sink = ... +// sink->Append(my_data.data(), my_data.size()); +// sink->Flush(); +// +class PROTOBUF_EXPORT ByteSink { + public: + ByteSink() {} + virtual ~ByteSink() {} + + // Appends the "n" bytes starting at "bytes". + virtual void Append(const char* bytes, size_t n) = 0; + + // Flushes internal buffers. The default implementation does nothing. ByteSink + // subclasses may use internal buffers that require calling Flush() at the end + // of the stream. + virtual void Flush(); + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ByteSink); +}; + +// An abstract interface for an object that produces a fixed-size sequence of +// bytes. +// +// Example: +// +// ByteSource* source = ... +// while (source->Available() > 0) { +// StringPiece data = source->Peek(); +// ... do something with "data" ... +// source->Skip(data.length()); +// } +// +class PROTOBUF_EXPORT ByteSource { + public: + ByteSource() {} + virtual ~ByteSource() {} + + // Returns the number of bytes left to read from the source. Available() + // should decrease by N each time Skip(N) is called. Available() may not + // increase. Available() returning 0 indicates that the ByteSource is + // exhausted. + // + // Note: Size() may have been a more appropriate name as it's more + // indicative of the fixed-size nature of a ByteSource. + virtual size_t Available() const = 0; + + // Returns a StringPiece of the next contiguous region of the source. Does not + // reposition the source. The returned region is empty iff Available() == 0. + // + // The returned region is valid until the next call to Skip() or until this + // object is destroyed, whichever occurs first. + // + // The length of the returned StringPiece will be <= Available(). + virtual StringPiece Peek() = 0; + + // Skips the next n bytes. Invalidates any StringPiece returned by a previous + // call to Peek(). + // + // REQUIRES: Available() >= n + virtual void Skip(size_t n) = 0; + + // Writes the next n bytes in this ByteSource to the given ByteSink, and + // advances this ByteSource past the copied bytes. The default implementation + // of this method just copies the bytes normally, but subclasses might + // override CopyTo to optimize certain cases. + // + // REQUIRES: Available() >= n + virtual void CopyTo(ByteSink* sink, size_t n); + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ByteSource); +}; + +// +// Some commonly used implementations of ByteSink +// + +// Implementation of ByteSink that writes to an unsized byte array. No +// bounds-checking is performed--it is the caller's responsibility to ensure +// that the destination array is large enough. +// +// Example: +// +// char buf[10]; +// UncheckedArrayByteSink sink(buf); +// sink.Append("hi", 2); // OK +// sink.Append(data, 100); // WOOPS! Overflows buf[10]. +// +class PROTOBUF_EXPORT UncheckedArrayByteSink : public ByteSink { + public: + explicit UncheckedArrayByteSink(char* dest) : dest_(dest) {} + virtual void Append(const char* data, size_t n) override; + + // Returns the current output pointer so that a caller can see how many bytes + // were produced. + // + // Note: this method is not part of the ByteSink interface. + char* CurrentDestination() const { return dest_; } + + private: + char* dest_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(UncheckedArrayByteSink); +}; + +// Implementation of ByteSink that writes to a sized byte array. This sink will +// not write more than "capacity" bytes to outbuf. Once "capacity" bytes are +// appended, subsequent bytes will be ignored and Overflowed() will return true. +// Overflowed() does not cause a runtime error (i.e., it does not CHECK fail). +// +// Example: +// +// char buf[10]; +// CheckedArrayByteSink sink(buf, 10); +// sink.Append("hi", 2); // OK +// sink.Append(data, 100); // Will only write 8 more bytes +// +class PROTOBUF_EXPORT CheckedArrayByteSink : public ByteSink { + public: + CheckedArrayByteSink(char* outbuf, size_t capacity); + virtual void Append(const char* bytes, size_t n) override; + + // Returns the number of bytes actually written to the sink. + size_t NumberOfBytesWritten() const { return size_; } + + // Returns true if any bytes were discarded, i.e., if there was an + // attempt to write more than 'capacity' bytes. + bool Overflowed() const { return overflowed_; } + + private: + char* outbuf_; + const size_t capacity_; + size_t size_; + bool overflowed_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CheckedArrayByteSink); +}; + +// Implementation of ByteSink that allocates an internal buffer (a char array) +// and expands it as needed to accommodate appended data (similar to a string), +// and allows the caller to take ownership of the internal buffer via the +// GetBuffer() method. The buffer returned from GetBuffer() must be deleted by +// the caller with delete[]. GetBuffer() also sets the internal buffer to be +// empty, and subsequent appends to the sink will create a new buffer. The +// destructor will free the internal buffer if GetBuffer() was not called. +// +// Example: +// +// GrowingArrayByteSink sink(10); +// sink.Append("hi", 2); +// sink.Append(data, n); +// const char* buf = sink.GetBuffer(); // Ownership transferred +// delete[] buf; +// +class PROTOBUF_EXPORT GrowingArrayByteSink : public strings::ByteSink { + public: + explicit GrowingArrayByteSink(size_t estimated_size); + virtual ~GrowingArrayByteSink(); + virtual void Append(const char* bytes, size_t n) override; + + // Returns the allocated buffer, and sets nbytes to its size. The caller takes + // ownership of the buffer and must delete it with delete[]. + char* GetBuffer(size_t* nbytes); + + private: + void Expand(size_t amount); + void ShrinkToFit(); + + size_t capacity_; + char* buf_; + size_t size_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(GrowingArrayByteSink); +}; + +// Implementation of ByteSink that appends to the given string. +// Existing contents of "dest" are not modified; new data is appended. +// +// Example: +// +// string dest = "Hello "; +// StringByteSink sink(&dest); +// sink.Append("World", 5); +// assert(dest == "Hello World"); +// +class PROTOBUF_EXPORT StringByteSink : public ByteSink { + public: + explicit StringByteSink(std::string* dest) : dest_(dest) {} + virtual void Append(const char* data, size_t n) override; + + private: + std::string* dest_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(StringByteSink); +}; + +// Implementation of ByteSink that discards all data. +// +// Example: +// +// NullByteSink sink; +// sink.Append(data, data.size()); // All data ignored. +// +class PROTOBUF_EXPORT NullByteSink : public ByteSink { + public: + NullByteSink() {} + void Append(const char* /*data*/, size_t /*n*/) override {} + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(NullByteSink); +}; + +// +// Some commonly used implementations of ByteSource +// + +// Implementation of ByteSource that reads from a StringPiece. +// +// Example: +// +// string data = "Hello"; +// ArrayByteSource source(data); +// assert(source.Available() == 5); +// assert(source.Peek() == "Hello"); +// +class PROTOBUF_EXPORT ArrayByteSource : public ByteSource { + public: + explicit ArrayByteSource(StringPiece s) : input_(s) {} + + virtual size_t Available() const override; + virtual StringPiece Peek() override; + virtual void Skip(size_t n) override; + + private: + StringPiece input_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ArrayByteSource); +}; + +// Implementation of ByteSource that wraps another ByteSource, limiting the +// number of bytes returned. +// +// The caller maintains ownership of the underlying source, and may not use the +// underlying source while using the LimitByteSource object. The underlying +// source's pointer is advanced by n bytes every time this LimitByteSource +// object is advanced by n. +// +// Example: +// +// string data = "Hello World"; +// ArrayByteSource abs(data); +// assert(abs.Available() == data.size()); +// +// LimitByteSource limit(abs, 5); +// assert(limit.Available() == 5); +// assert(limit.Peek() == "Hello"); +// +class PROTOBUF_EXPORT LimitByteSource : public ByteSource { + public: + // Returns at most "limit" bytes from "source". + LimitByteSource(ByteSource* source, size_t limit); + + virtual size_t Available() const override; + virtual StringPiece Peek() override; + virtual void Skip(size_t n) override; + + // We override CopyTo so that we can forward to the underlying source, in + // case it has an efficient implementation of CopyTo. + virtual void CopyTo(ByteSink* sink, size_t n) override; + + private: + ByteSource* source_; + size_t limit_; +}; + +} // namespace strings +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_STUBS_BYTESTREAM_H_ diff --git a/external/include/google/protobuf/stubs/callback.h b/external/include/google/protobuf/stubs/callback.h new file mode 100644 index 0000000..43d546d --- /dev/null +++ b/external/include/google/protobuf/stubs/callback.h @@ -0,0 +1,583 @@ +#ifndef GOOGLE_PROTOBUF_STUBS_CALLBACK_H_ +#define GOOGLE_PROTOBUF_STUBS_CALLBACK_H_ + +#include + +#include + +#include + +// =================================================================== +// emulates google3/base/callback.h + +namespace google { +namespace protobuf { + +// Abstract interface for a callback. When calling an RPC, you must provide +// a Closure to call when the procedure completes. See the Service interface +// in service.h. +// +// To automatically construct a Closure which calls a particular function or +// method with a particular set of parameters, use the NewCallback() function. +// Example: +// void FooDone(const FooResponse* response) { +// ... +// } +// +// void CallFoo() { +// ... +// // When done, call FooDone() and pass it a pointer to the response. +// Closure* callback = NewCallback(&FooDone, response); +// // Make the call. +// service->Foo(controller, request, response, callback); +// } +// +// Example that calls a method: +// class Handler { +// public: +// ... +// +// void FooDone(const FooResponse* response) { +// ... +// } +// +// void CallFoo() { +// ... +// // When done, call FooDone() and pass it a pointer to the response. +// Closure* callback = NewCallback(this, &Handler::FooDone, response); +// // Make the call. +// service->Foo(controller, request, response, callback); +// } +// }; +// +// Currently NewCallback() supports binding zero, one, or two arguments. +// +// Callbacks created with NewCallback() automatically delete themselves when +// executed. They should be used when a callback is to be called exactly +// once (usually the case with RPC callbacks). If a callback may be called +// a different number of times (including zero), create it with +// NewPermanentCallback() instead. You are then responsible for deleting the +// callback (using the "delete" keyword as normal). +// +// Note that NewCallback() is a bit touchy regarding argument types. Generally, +// the values you provide for the parameter bindings must exactly match the +// types accepted by the callback function. For example: +// void Foo(std::string s); +// NewCallback(&Foo, "foo"); // WON'T WORK: const char* != string +// NewCallback(&Foo, std::string("foo")); // WORKS +// Also note that the arguments cannot be references: +// void Foo(const std::string& s); +// std::string my_str; +// NewCallback(&Foo, my_str); // WON'T WORK: Can't use references. +// However, correctly-typed pointers will work just fine. +class PROTOBUF_EXPORT Closure { + public: + Closure() {} + virtual ~Closure(); + + virtual void Run() = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(Closure); +}; + +template +class ResultCallback { + public: + ResultCallback() {} + virtual ~ResultCallback() {} + + virtual R Run() = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ResultCallback); +}; + +template +class PROTOBUF_EXPORT ResultCallback1 { + public: + ResultCallback1() {} + virtual ~ResultCallback1() {} + + virtual R Run(A1) = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ResultCallback1); +}; + +template +class PROTOBUF_EXPORT ResultCallback2 { + public: + ResultCallback2() {} + virtual ~ResultCallback2() {} + + virtual R Run(A1,A2) = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ResultCallback2); +}; + +namespace internal { + +class PROTOBUF_EXPORT FunctionClosure0 : public Closure { + public: + typedef void (*FunctionType)(); + + FunctionClosure0(FunctionType function, bool self_deleting) + : function_(function), self_deleting_(self_deleting) {} + ~FunctionClosure0(); + + void Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + function_(); + if (needs_delete) delete this; + } + + private: + FunctionType function_; + bool self_deleting_; +}; + +template +class MethodClosure0 : public Closure { + public: + typedef void (Class::*MethodType)(); + + MethodClosure0(Class* object, MethodType method, bool self_deleting) + : object_(object), method_(method), self_deleting_(self_deleting) {} + ~MethodClosure0() {} + + void Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + (object_->*method_)(); + if (needs_delete) delete this; + } + + private: + Class* object_; + MethodType method_; + bool self_deleting_; +}; + +template +class FunctionClosure1 : public Closure { + public: + typedef void (*FunctionType)(Arg1 arg1); + + FunctionClosure1(FunctionType function, bool self_deleting, + Arg1 arg1) + : function_(function), self_deleting_(self_deleting), + arg1_(arg1) {} + ~FunctionClosure1() {} + + void Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + function_(arg1_); + if (needs_delete) delete this; + } + + private: + FunctionType function_; + bool self_deleting_; + Arg1 arg1_; +}; + +template +class MethodClosure1 : public Closure { + public: + typedef void (Class::*MethodType)(Arg1 arg1); + + MethodClosure1(Class* object, MethodType method, bool self_deleting, + Arg1 arg1) + : object_(object), method_(method), self_deleting_(self_deleting), + arg1_(arg1) {} + ~MethodClosure1() {} + + void Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + (object_->*method_)(arg1_); + if (needs_delete) delete this; + } + + private: + Class* object_; + MethodType method_; + bool self_deleting_; + Arg1 arg1_; +}; + +template +class FunctionClosure2 : public Closure { + public: + typedef void (*FunctionType)(Arg1 arg1, Arg2 arg2); + + FunctionClosure2(FunctionType function, bool self_deleting, + Arg1 arg1, Arg2 arg2) + : function_(function), self_deleting_(self_deleting), + arg1_(arg1), arg2_(arg2) {} + ~FunctionClosure2() {} + + void Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + function_(arg1_, arg2_); + if (needs_delete) delete this; + } + + private: + FunctionType function_; + bool self_deleting_; + Arg1 arg1_; + Arg2 arg2_; +}; + +template +class MethodClosure2 : public Closure { + public: + typedef void (Class::*MethodType)(Arg1 arg1, Arg2 arg2); + + MethodClosure2(Class* object, MethodType method, bool self_deleting, + Arg1 arg1, Arg2 arg2) + : object_(object), method_(method), self_deleting_(self_deleting), + arg1_(arg1), arg2_(arg2) {} + ~MethodClosure2() {} + + void Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + (object_->*method_)(arg1_, arg2_); + if (needs_delete) delete this; + } + + private: + Class* object_; + MethodType method_; + bool self_deleting_; + Arg1 arg1_; + Arg2 arg2_; +}; + +template +class FunctionResultCallback_0_0 : public ResultCallback { + public: + typedef R (*FunctionType)(); + + FunctionResultCallback_0_0(FunctionType function, bool self_deleting) + : function_(function), self_deleting_(self_deleting) {} + ~FunctionResultCallback_0_0() {} + + R Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + R result = function_(); + if (needs_delete) delete this; + return result; + } + + private: + FunctionType function_; + bool self_deleting_; +}; + +template +class FunctionResultCallback_1_0 : public ResultCallback { + public: + typedef R (*FunctionType)(P1); + + FunctionResultCallback_1_0(FunctionType function, bool self_deleting, + P1 p1) + : function_(function), self_deleting_(self_deleting), p1_(p1) {} + ~FunctionResultCallback_1_0() {} + + R Run() override { + bool needs_delete = self_deleting_; // read in case callback deletes + R result = function_(p1_); + if (needs_delete) delete this; + return result; + } + + private: + FunctionType function_; + bool self_deleting_; + P1 p1_; +}; + +template +class FunctionResultCallback_0_1 : public ResultCallback1 { + public: + typedef R (*FunctionType)(Arg1 arg1); + + FunctionResultCallback_0_1(FunctionType function, bool self_deleting) + : function_(function), self_deleting_(self_deleting) {} + ~FunctionResultCallback_0_1() {} + + R Run(Arg1 a1) override { + bool needs_delete = self_deleting_; // read in case callback deletes + R result = function_(a1); + if (needs_delete) delete this; + return result; + } + + private: + FunctionType function_; + bool self_deleting_; +}; + +template +class FunctionResultCallback_1_1 : public ResultCallback1 { + public: + typedef R (*FunctionType)(P1, A1); + + FunctionResultCallback_1_1(FunctionType function, bool self_deleting, + P1 p1) + : function_(function), self_deleting_(self_deleting), p1_(p1) {} + ~FunctionResultCallback_1_1() {} + + R Run(A1 a1) override { + bool needs_delete = self_deleting_; // read in case callback deletes + R result = function_(p1_, a1); + if (needs_delete) delete this; + return result; + } + + private: + FunctionType function_; + bool self_deleting_; + P1 p1_; +}; + +template +struct InternalConstRef { + typedef typename std::remove_reference::type base_type; + typedef const base_type& type; +}; + +template +class MethodResultCallback_0_0 : public ResultCallback { + public: + typedef R (T::*MethodType)(); + MethodResultCallback_0_0(T* object, MethodType method, bool self_deleting) + : object_(object), + method_(method), + self_deleting_(self_deleting) {} + ~MethodResultCallback_0_0() {} + + R Run() { + bool needs_delete = self_deleting_; + R result = (object_->*method_)(); + if (needs_delete) delete this; + return result; + } + + private: + T* object_; + MethodType method_; + bool self_deleting_; +}; + +template +class MethodResultCallback_6_2 : public ResultCallback2 { + public: + typedef R (T::*MethodType)(P1, P2, P3, P4, P5, P6, A1, A2); + MethodResultCallback_6_2(T* object, MethodType method, bool self_deleting, + P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6) + : object_(object), + method_(method), + self_deleting_(self_deleting), + p1_(p1), + p2_(p2), + p3_(p3), + p4_(p4), + p5_(p5), + p6_(p6) {} + ~MethodResultCallback_6_2() {} + + R Run(A1 a1, A2 a2) override { + bool needs_delete = self_deleting_; + R result = (object_->*method_)(p1_, p2_, p3_, p4_, p5_, p6_, a1, a2); + if (needs_delete) delete this; + return result; + } + + private: + T* object_; + MethodType method_; + bool self_deleting_; + typename std::remove_reference::type p1_; + typename std::remove_reference::type p2_; + typename std::remove_reference::type p3_; + typename std::remove_reference::type p4_; + typename std::remove_reference::type p5_; + typename std::remove_reference::type p6_; +}; + +} // namespace internal + +// See Closure. +inline Closure* NewCallback(void (*function)()) { + return new internal::FunctionClosure0(function, true); +} + +// See Closure. +inline Closure* NewPermanentCallback(void (*function)()) { + return new internal::FunctionClosure0(function, false); +} + +// See Closure. +template +inline Closure* NewCallback(Class* object, void (Class::*method)()) { + return new internal::MethodClosure0(object, method, true); +} + +// See Closure. +template +inline Closure* NewPermanentCallback(Class* object, void (Class::*method)()) { + return new internal::MethodClosure0(object, method, false); +} + +// See Closure. +template +inline Closure* NewCallback(void (*function)(Arg1), + Arg1 arg1) { + return new internal::FunctionClosure1(function, true, arg1); +} + +// See Closure. +template +inline Closure* NewPermanentCallback(void (*function)(Arg1), + Arg1 arg1) { + return new internal::FunctionClosure1(function, false, arg1); +} + +// See Closure. +template +inline Closure* NewCallback(Class* object, void (Class::*method)(Arg1), + Arg1 arg1) { + return new internal::MethodClosure1(object, method, true, arg1); +} + +// See Closure. +template +inline Closure* NewPermanentCallback(Class* object, void (Class::*method)(Arg1), + Arg1 arg1) { + return new internal::MethodClosure1(object, method, false, arg1); +} + +// See Closure. +template +inline Closure* NewCallback(void (*function)(Arg1, Arg2), + Arg1 arg1, Arg2 arg2) { + return new internal::FunctionClosure2( + function, true, arg1, arg2); +} + +// See Closure. +template +inline Closure* NewPermanentCallback(void (*function)(Arg1, Arg2), + Arg1 arg1, Arg2 arg2) { + return new internal::FunctionClosure2( + function, false, arg1, arg2); +} + +// See Closure. +template +inline Closure* NewCallback(Class* object, void (Class::*method)(Arg1, Arg2), + Arg1 arg1, Arg2 arg2) { + return new internal::MethodClosure2( + object, method, true, arg1, arg2); +} + +// See Closure. +template +inline Closure* NewPermanentCallback( + Class* object, void (Class::*method)(Arg1, Arg2), + Arg1 arg1, Arg2 arg2) { + return new internal::MethodClosure2( + object, method, false, arg1, arg2); +} + +// See ResultCallback +template +inline ResultCallback* NewCallback(R (*function)()) { + return new internal::FunctionResultCallback_0_0(function, true); +} + +// See ResultCallback +template +inline ResultCallback* NewPermanentCallback(R (*function)()) { + return new internal::FunctionResultCallback_0_0(function, false); +} + +// See ResultCallback +template +inline ResultCallback* NewCallback(R (*function)(P1), P1 p1) { + return new internal::FunctionResultCallback_1_0( + function, true, p1); +} + +// See ResultCallback +template +inline ResultCallback* NewPermanentCallback( + R (*function)(P1), P1 p1) { + return new internal::FunctionResultCallback_1_0( + function, false, p1); +} + +// See ResultCallback1 +template +inline ResultCallback1* NewCallback(R (*function)(A1)) { + return new internal::FunctionResultCallback_0_1(function, true); +} + +// See ResultCallback1 +template +inline ResultCallback1* NewPermanentCallback(R (*function)(A1)) { + return new internal::FunctionResultCallback_0_1(function, false); +} + +// See ResultCallback1 +template +inline ResultCallback1* NewCallback(R (*function)(P1, A1), P1 p1) { + return new internal::FunctionResultCallback_1_1( + function, true, p1); +} + +// See ResultCallback1 +template +inline ResultCallback1* NewPermanentCallback( + R (*function)(P1, A1), P1 p1) { + return new internal::FunctionResultCallback_1_1( + function, false, p1); +} + +// See MethodResultCallback_0_0 +template +inline ResultCallback* NewPermanentCallback( + T1* object, R (T2::*function)()) { + return new internal::MethodResultCallback_0_0(object, function, false); +} + +// See MethodResultCallback_6_2 +template +inline ResultCallback2* NewPermanentCallback( + T* object, R (T::*function)(P1, P2, P3, P4, P5, P6, A1, A2), + typename internal::InternalConstRef::type p1, + typename internal::InternalConstRef::type p2, + typename internal::InternalConstRef::type p3, + typename internal::InternalConstRef::type p4, + typename internal::InternalConstRef::type p5, + typename internal::InternalConstRef::type p6) { + return new internal::MethodResultCallback_6_2(object, function, false, + p1, p2, p3, p4, p5, p6); +} + +// A function which does nothing. Useful for creating no-op callbacks, e.g.: +// Closure* nothing = NewCallback(&DoNothing); +void PROTOBUF_EXPORT DoNothing(); + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_STUBS_CALLBACK_H_ diff --git a/external/include/google/protobuf/stubs/casts.h b/external/include/google/protobuf/stubs/casts.h new file mode 100644 index 0000000..ad29dac --- /dev/null +++ b/external/include/google/protobuf/stubs/casts.h @@ -0,0 +1,138 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2014 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_CASTS_H__ +#define GOOGLE_PROTOBUF_CASTS_H__ + +#include + +#include +#include + +namespace google { +namespace protobuf { +namespace internal { + +// Use implicit_cast as a safe version of static_cast or const_cast +// for upcasting in the type hierarchy (i.e. casting a pointer to Foo +// to a pointer to SuperclassOfFoo or casting a pointer to Foo to +// a const pointer to Foo). +// When you use implicit_cast, the compiler checks that the cast is safe. +// Such explicit implicit_casts are necessary in surprisingly many +// situations where C++ demands an exact type match instead of an +// argument type convertible to a target type. +// +// The From type can be inferred, so the preferred syntax for using +// implicit_cast is the same as for static_cast etc.: +// +// implicit_cast(expr) +// +// implicit_cast would have been part of the C++ standard library, +// but the proposal was submitted too late. It will probably make +// its way into the language in the future. +template +inline To implicit_cast(From const &f) { + return f; +} + +// When you upcast (that is, cast a pointer from type Foo to type +// SuperclassOfFoo), it's fine to use implicit_cast<>, since upcasts +// always succeed. When you downcast (that is, cast a pointer from +// type Foo to type SubclassOfFoo), static_cast<> isn't safe, because +// how do you know the pointer is really of type SubclassOfFoo? It +// could be a bare Foo, or of type DifferentSubclassOfFoo. Thus, +// when you downcast, you should use this macro. In debug mode, we +// use dynamic_cast<> to double-check the downcast is legal (we die +// if it's not). In normal mode, we do the efficient static_cast<> +// instead. Thus, it's important to test in debug mode to make sure +// the cast is legal! +// This is the only place in the code we should use dynamic_cast<>. +// In particular, you SHOULDN'T be using dynamic_cast<> in order to +// do RTTI (eg code like this: +// if (dynamic_cast(foo)) HandleASubclass1Object(foo); +// if (dynamic_cast(foo)) HandleASubclass2Object(foo); +// You should design the code some other way not to need this. + +template // use like this: down_cast(foo); +inline To down_cast(From* f) { // so we only accept pointers + // Ensures that To is a sub-type of From *. This test is here only + // for compile-time type checking, and has no overhead in an + // optimized build at run-time, as it will be optimized away + // completely. + if (false) { + implicit_cast(0); + } + +#if !defined(NDEBUG) && PROTOBUF_RTTI + assert(f == nullptr || dynamic_cast(f) != nullptr); // RTTI: debug mode only! +#endif + return static_cast(f); +} + +template // use like this: down_cast(foo); +inline To down_cast(From& f) { + typedef typename std::remove_reference::type* ToAsPointer; + // Ensures that To is a sub-type of From *. This test is here only + // for compile-time type checking, and has no overhead in an + // optimized build at run-time, as it will be optimized away + // completely. + if (false) { + implicit_cast(0); + } + +#if !defined(NDEBUG) && PROTOBUF_RTTI + // RTTI: debug mode only! + assert(dynamic_cast(&f) != nullptr); +#endif + return *static_cast(&f); +} + +template +inline To bit_cast(const From& from) { + static_assert(sizeof(From) == sizeof(To), "bit_cast_with_different_sizes"); + To dest; + memcpy(&dest, &from, sizeof(dest)); + return dest; +} + +} // namespace internal + +// We made these internal so that they would show up as such in the docs, +// but we don't want to stick "internal::" in front of them everywhere. +using internal::implicit_cast; +using internal::down_cast; +using internal::bit_cast; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_CASTS_H__ diff --git a/external/include/google/protobuf/stubs/common.h b/external/include/google/protobuf/stubs/common.h new file mode 100644 index 0000000..9c0ebb7 --- /dev/null +++ b/external/include/google/protobuf/stubs/common.h @@ -0,0 +1,201 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) and others +// +// Contains basic types and utilities used by the rest of the library. + +#ifndef GOOGLE_PROTOBUF_COMMON_H__ +#define GOOGLE_PROTOBUF_COMMON_H__ + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#ifndef PROTOBUF_USE_EXCEPTIONS +#if defined(_MSC_VER) && defined(_CPPUNWIND) + #define PROTOBUF_USE_EXCEPTIONS 1 +#elif defined(__EXCEPTIONS) + #define PROTOBUF_USE_EXCEPTIONS 1 +#else + #define PROTOBUF_USE_EXCEPTIONS 0 +#endif +#endif + +#if PROTOBUF_USE_EXCEPTIONS +#include +#endif +#if defined(__APPLE__) +#include // for TARGET_OS_IPHONE +#endif + +#if defined(__ANDROID__) || defined(GOOGLE_PROTOBUF_OS_ANDROID) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(GOOGLE_PROTOBUF_OS_IPHONE) +#include +#endif + +#include + +namespace std {} + +namespace google { +namespace protobuf { +namespace internal { + +// Some of these constants are macros rather than const ints so that they can +// be used in #if directives. + +// The current version, represented as a single integer to make comparison +// easier: major * 10^6 + minor * 10^3 + micro +#define GOOGLE_PROTOBUF_VERSION 3017003 + +// A suffix string for alpha, beta or rc releases. Empty for stable releases. +#define GOOGLE_PROTOBUF_VERSION_SUFFIX "" + +// The minimum header version which works with the current version of +// the library. This constant should only be used by protoc's C++ code +// generator. +static const int kMinHeaderVersionForLibrary = 3017000; + +// The minimum protoc version which works with the current version of the +// headers. +#define GOOGLE_PROTOBUF_MIN_PROTOC_VERSION 3017000 + +// The minimum header version which works with the current version of +// protoc. This constant should only be used in VerifyVersion(). +static const int kMinHeaderVersionForProtoc = 3017000; + +// Verifies that the headers and libraries are compatible. Use the macro +// below to call this. +void PROTOBUF_EXPORT VerifyVersion(int headerVersion, int minLibraryVersion, + const char* filename); + +// Converts a numeric version number to a string. +std::string PROTOBUF_EXPORT VersionString(int version); + +} // namespace internal + +// Place this macro in your main() function (or somewhere before you attempt +// to use the protobuf library) to verify that the version you link against +// matches the headers you compiled against. If a version mismatch is +// detected, the process will abort. +#define GOOGLE_PROTOBUF_VERIFY_VERSION \ + ::google::protobuf::internal::VerifyVersion( \ + GOOGLE_PROTOBUF_VERSION, GOOGLE_PROTOBUF_MIN_LIBRARY_VERSION, \ + __FILE__) + + +// =================================================================== +// from google3/util/utf8/public/unilib.h + +namespace internal { + +// Checks if the buffer contains structurally-valid UTF-8. Implemented in +// structurally_valid.cc. +PROTOBUF_EXPORT bool IsStructurallyValidUTF8(const char* buf, int len); + +inline bool IsStructurallyValidUTF8(StringPiece str) { + return IsStructurallyValidUTF8(str.data(), static_cast(str.length())); +} + +// Returns initial number of bytes of structurally valid UTF-8. +PROTOBUF_EXPORT int UTF8SpnStructurallyValid(StringPiece str); + +// Coerce UTF-8 byte string in src_str to be +// a structurally-valid equal-length string by selectively +// overwriting illegal bytes with replace_char (typically ' ' or '?'). +// replace_char must be legal printable 7-bit Ascii 0x20..0x7e. +// src_str is read-only. +// +// Returns pointer to output buffer, src_str.data() if no changes were made, +// or idst if some bytes were changed. idst is allocated by the caller +// and must be at least as big as src_str +// +// Optimized for: all structurally valid and no byte copying is done. +// +PROTOBUF_EXPORT char* UTF8CoerceToStructurallyValid(StringPiece str, char* dst, + char replace_char); + +} // namespace internal + +// This lives in message_lite.h now, but we leave this here for any users that +// #include common.h and not message_lite.h. +PROTOBUF_EXPORT void ShutdownProtobufLibrary(); + +namespace internal { + +// Strongly references the given variable such that the linker will be forced +// to pull in this variable's translation unit. +template +void StrongReference(const T& var) { + auto volatile unused = &var; + (void)&unused; // Use address to avoid an extra load of "unused". +} + +} // namespace internal + +#if PROTOBUF_USE_EXCEPTIONS +class FatalException : public std::exception { + public: + FatalException(const char* filename, int line, const std::string& message) + : filename_(filename), line_(line), message_(message) {} + virtual ~FatalException() throw(); + + virtual const char* what() const throw(); + + const char* filename() const { return filename_; } + int line() const { return line_; } + const std::string& message() const { return message_; } + + private: + const char* filename_; + const int line_; + const std::string message_; +}; +#endif + +// This is at the end of the file instead of the beginning to work around a bug +// in some versions of MSVC. +using std::string; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_COMMON_H__ diff --git a/external/include/google/protobuf/stubs/hash.h b/external/include/google/protobuf/stubs/hash.h new file mode 100644 index 0000000..a7ec068 --- /dev/null +++ b/external/include/google/protobuf/stubs/hash.h @@ -0,0 +1,114 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) + +#ifndef GOOGLE_PROTOBUF_STUBS_HASH_H__ +#define GOOGLE_PROTOBUF_STUBS_HASH_H__ + +#include +#include +#include +#include + +# define GOOGLE_PROTOBUF_HASH_NAMESPACE_DECLARATION_START \ + namespace google { \ + namespace protobuf { +# define GOOGLE_PROTOBUF_HASH_NAMESPACE_DECLARATION_END }} + +namespace google { +namespace protobuf { + +template +struct hash : public std::hash {}; + +template +struct hash { + inline size_t operator()(const Key* key) const { + return reinterpret_cast(key); + } +}; + +// Unlike the old SGI version, the TR1 "hash" does not special-case char*. So, +// we go ahead and provide our own implementation. +template <> +struct hash { + inline size_t operator()(const char* str) const { + size_t result = 0; + for (; *str != '\0'; str++) { + result = 5 * result + static_cast(*str); + } + return result; + } +}; + +template<> +struct hash { + size_t operator()(bool x) const { + return static_cast(x); + } +}; + +template <> +struct hash { + inline size_t operator()(const std::string& key) const { + return hash()(key.c_str()); + } + + static const size_t bucket_size = 4; + static const size_t min_buckets = 8; + inline bool operator()(const std::string& a, const std::string& b) const { + return a < b; + } +}; + +template +struct hash > { + inline size_t operator()(const std::pair& key) const { + size_t first_hash = hash()(key.first); + size_t second_hash = hash()(key.second); + + // FIXME(kenton): What is the best way to compute this hash? I have + // no idea! This seems a bit better than an XOR. + return first_hash * ((1 << 16) - 1) + second_hash; + } + + static const size_t bucket_size = 4; + static const size_t min_buckets = 8; + inline bool operator()(const std::pair& a, + const std::pair& b) const { + return a < b; + } +}; + +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_STUBS_HASH_H__ diff --git a/external/include/google/protobuf/stubs/logging.h b/external/include/google/protobuf/stubs/logging.h new file mode 100644 index 0000000..8ecc2fa --- /dev/null +++ b/external/include/google/protobuf/stubs/logging.h @@ -0,0 +1,239 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_STUBS_LOGGING_H_ +#define GOOGLE_PROTOBUF_STUBS_LOGGING_H_ + +#include +#include +#include +#include + +#include + +// =================================================================== +// emulates google3/base/logging.h + +namespace google { +namespace protobuf { + +enum LogLevel { + LOGLEVEL_INFO, // Informational. This is never actually used by + // libprotobuf. + LOGLEVEL_WARNING, // Warns about issues that, although not technically a + // problem now, could cause problems in the future. For + // example, a // warning will be printed when parsing a + // message that is near the message size limit. + LOGLEVEL_ERROR, // An error occurred which should never happen during + // normal use. + LOGLEVEL_FATAL, // An error occurred from which the library cannot + // recover. This usually indicates a programming error + // in the code which calls the library, especially when + // compiled in debug mode. + +#ifdef NDEBUG + LOGLEVEL_DFATAL = LOGLEVEL_ERROR +#else + LOGLEVEL_DFATAL = LOGLEVEL_FATAL +#endif +}; + +class uint128; +namespace internal { + +class LogFinisher; + +class PROTOBUF_EXPORT LogMessage { + public: + LogMessage(LogLevel level, const char* filename, int line); + ~LogMessage(); + + LogMessage& operator<<(const std::string& value); + LogMessage& operator<<(const char* value); + LogMessage& operator<<(char value); + LogMessage& operator<<(int value); + LogMessage& operator<<(uint value); + LogMessage& operator<<(long value); + LogMessage& operator<<(unsigned long value); + LogMessage& operator<<(long long value); + LogMessage& operator<<(unsigned long long value); + LogMessage& operator<<(double value); + LogMessage& operator<<(void* value); + LogMessage& operator<<(const StringPiece& value); + LogMessage& operator<<(const util::Status& status); + LogMessage& operator<<(const uint128& value); + + private: + friend class LogFinisher; + void Finish(); + + LogLevel level_; + const char* filename_; + int line_; + std::string message_; +}; + +// Used to make the entire "LOG(BLAH) << etc." expression have a void return +// type and print a newline after each message. +class PROTOBUF_EXPORT LogFinisher { + public: + void operator=(LogMessage& other); +}; + +template +bool IsOk(T status) { return status.ok(); } +template<> +inline bool IsOk(bool status) { return status; } + +} // namespace internal + +// Undef everything in case we're being mixed with some other Google library +// which already defined them itself. Presumably all Google libraries will +// support the same syntax for these so it should not be a big deal if they +// end up using our definitions instead. +#undef GOOGLE_LOG +#undef GOOGLE_LOG_IF + +#undef GOOGLE_CHECK +#undef GOOGLE_CHECK_OK +#undef GOOGLE_CHECK_EQ +#undef GOOGLE_CHECK_NE +#undef GOOGLE_CHECK_LT +#undef GOOGLE_CHECK_LE +#undef GOOGLE_CHECK_GT +#undef GOOGLE_CHECK_GE +#undef GOOGLE_CHECK_NOTNULL + +#undef GOOGLE_DLOG +#undef GOOGLE_DCHECK +#undef GOOGLE_DCHECK_OK +#undef GOOGLE_DCHECK_EQ +#undef GOOGLE_DCHECK_NE +#undef GOOGLE_DCHECK_LT +#undef GOOGLE_DCHECK_LE +#undef GOOGLE_DCHECK_GT +#undef GOOGLE_DCHECK_GE + +#define GOOGLE_LOG(LEVEL) \ + ::google::protobuf::internal::LogFinisher() = \ + ::google::protobuf::internal::LogMessage( \ + ::google::protobuf::LOGLEVEL_##LEVEL, __FILE__, __LINE__) +#define GOOGLE_LOG_IF(LEVEL, CONDITION) \ + !(CONDITION) ? (void)0 : GOOGLE_LOG(LEVEL) + +#define GOOGLE_CHECK(EXPRESSION) \ + GOOGLE_LOG_IF(FATAL, !(EXPRESSION)) << "CHECK failed: " #EXPRESSION ": " +#define GOOGLE_CHECK_OK(A) GOOGLE_CHECK(::google::protobuf::internal::IsOk(A)) +#define GOOGLE_CHECK_EQ(A, B) GOOGLE_CHECK((A) == (B)) +#define GOOGLE_CHECK_NE(A, B) GOOGLE_CHECK((A) != (B)) +#define GOOGLE_CHECK_LT(A, B) GOOGLE_CHECK((A) < (B)) +#define GOOGLE_CHECK_LE(A, B) GOOGLE_CHECK((A) <= (B)) +#define GOOGLE_CHECK_GT(A, B) GOOGLE_CHECK((A) > (B)) +#define GOOGLE_CHECK_GE(A, B) GOOGLE_CHECK((A) >= (B)) + +namespace internal { +template +T* CheckNotNull(const char* /* file */, int /* line */, + const char* name, T* val) { + if (val == nullptr) { + GOOGLE_LOG(FATAL) << name; + } + return val; +} +} // namespace internal +#define GOOGLE_CHECK_NOTNULL(A) \ + ::google::protobuf::internal::CheckNotNull( \ + __FILE__, __LINE__, "'" #A "' must not be nullptr", (A)) + +#ifdef NDEBUG + +#define GOOGLE_DLOG(LEVEL) GOOGLE_LOG_IF(LEVEL, false) + +#define GOOGLE_DCHECK(EXPRESSION) while(false) GOOGLE_CHECK(EXPRESSION) +#define GOOGLE_DCHECK_OK(E) GOOGLE_DCHECK(::google::protobuf::internal::IsOk(E)) +#define GOOGLE_DCHECK_EQ(A, B) GOOGLE_DCHECK((A) == (B)) +#define GOOGLE_DCHECK_NE(A, B) GOOGLE_DCHECK((A) != (B)) +#define GOOGLE_DCHECK_LT(A, B) GOOGLE_DCHECK((A) < (B)) +#define GOOGLE_DCHECK_LE(A, B) GOOGLE_DCHECK((A) <= (B)) +#define GOOGLE_DCHECK_GT(A, B) GOOGLE_DCHECK((A) > (B)) +#define GOOGLE_DCHECK_GE(A, B) GOOGLE_DCHECK((A) >= (B)) + +#else // NDEBUG + +#define GOOGLE_DLOG GOOGLE_LOG + +#define GOOGLE_DCHECK GOOGLE_CHECK +#define GOOGLE_DCHECK_OK GOOGLE_CHECK_OK +#define GOOGLE_DCHECK_EQ GOOGLE_CHECK_EQ +#define GOOGLE_DCHECK_NE GOOGLE_CHECK_NE +#define GOOGLE_DCHECK_LT GOOGLE_CHECK_LT +#define GOOGLE_DCHECK_LE GOOGLE_CHECK_LE +#define GOOGLE_DCHECK_GT GOOGLE_CHECK_GT +#define GOOGLE_DCHECK_GE GOOGLE_CHECK_GE + +#endif // !NDEBUG + +typedef void LogHandler(LogLevel level, const char* filename, int line, + const std::string& message); + +// The protobuf library sometimes writes warning and error messages to +// stderr. These messages are primarily useful for developers, but may +// also help end users figure out a problem. If you would prefer that +// these messages be sent somewhere other than stderr, call SetLogHandler() +// to set your own handler. This returns the old handler. Set the handler +// to nullptr to ignore log messages (but see also LogSilencer, below). +// +// Obviously, SetLogHandler is not thread-safe. You should only call it +// at initialization time, and probably not from library code. If you +// simply want to suppress log messages temporarily (e.g. because you +// have some code that tends to trigger them frequently and you know +// the warnings are not important to you), use the LogSilencer class +// below. +PROTOBUF_EXPORT LogHandler* SetLogHandler(LogHandler* new_func); + +// Create a LogSilencer if you want to temporarily suppress all log +// messages. As long as any LogSilencer objects exist, non-fatal +// log messages will be discarded (the current LogHandler will *not* +// be called). Constructing a LogSilencer is thread-safe. You may +// accidentally suppress log messages occurring in another thread, but +// since messages are generally for debugging purposes only, this isn't +// a big deal. If you want to intercept log messages, use SetLogHandler(). +class PROTOBUF_EXPORT LogSilencer { + public: + LogSilencer(); + ~LogSilencer(); +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_STUBS_LOGGING_H_ diff --git a/external/include/google/protobuf/stubs/macros.h b/external/include/google/protobuf/stubs/macros.h new file mode 100644 index 0000000..ae9a8b9 --- /dev/null +++ b/external/include/google/protobuf/stubs/macros.h @@ -0,0 +1,93 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_MACROS_H__ +#define GOOGLE_PROTOBUF_MACROS_H__ + +namespace google { +namespace protobuf { + +#undef GOOGLE_DISALLOW_EVIL_CONSTRUCTORS +#define GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(TypeName) \ + TypeName(const TypeName&) = delete; \ + void operator=(const TypeName&) = delete + +#undef GOOGLE_DISALLOW_IMPLICIT_CONSTRUCTORS +#define GOOGLE_DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \ + TypeName() = delete; \ + TypeName(const TypeName&) = delete; \ + void operator=(const TypeName&) = delete + +// =================================================================== +// from google3/base/basictypes.h + +// The GOOGLE_ARRAYSIZE(arr) macro returns the # of elements in an array arr. +// The expression is a compile-time constant, and therefore can be +// used in defining new arrays, for example. +// +// GOOGLE_ARRAYSIZE catches a few type errors. If you see a compiler error +// +// "warning: division by zero in ..." +// +// when using GOOGLE_ARRAYSIZE, you are (wrongfully) giving it a pointer. +// You should only use GOOGLE_ARRAYSIZE on statically allocated arrays. +// +// The following comments are on the implementation details, and can +// be ignored by the users. +// +// ARRAYSIZE(arr) works by inspecting sizeof(arr) (the # of bytes in +// the array) and sizeof(*(arr)) (the # of bytes in one array +// element). If the former is divisible by the latter, perhaps arr is +// indeed an array, in which case the division result is the # of +// elements in the array. Otherwise, arr cannot possibly be an array, +// and we generate a compiler error to prevent the code from +// compiling. +// +// Since the size of bool is implementation-defined, we need to cast +// !(sizeof(a) & sizeof(*(a))) to size_t in order to ensure the final +// result has type size_t. +// +// This macro is not perfect as it wrongfully accepts certain +// pointers, namely where the pointer size is divisible by the pointee +// size. Since all our code has to go through a 32-bit compiler, +// where a pointer is 4 bytes, this means all pointers to a type whose +// size is 3 or greater than 4 will be (righteously) rejected. +// +// Kudos to Jorg Brown for this simple and elegant implementation. + +#undef GOOGLE_ARRAYSIZE +#define GOOGLE_ARRAYSIZE(a) \ + ((sizeof(a) / sizeof(*(a))) / \ + static_cast(!(sizeof(a) % sizeof(*(a))))) + +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_MACROS_H__ diff --git a/external/include/google/protobuf/stubs/map_util.h b/external/include/google/protobuf/stubs/map_util.h new file mode 100644 index 0000000..24e098a --- /dev/null +++ b/external/include/google/protobuf/stubs/map_util.h @@ -0,0 +1,769 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2014 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// from google3/util/gtl/map_util.h +// Author: Anton Carver + +#ifndef GOOGLE_PROTOBUF_STUBS_MAP_UTIL_H__ +#define GOOGLE_PROTOBUF_STUBS_MAP_UTIL_H__ + +#include +#include +#include +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace internal { +// Local implementation of RemoveConst to avoid including base/type_traits.h. +template struct RemoveConst { typedef T type; }; +template struct RemoveConst : RemoveConst {}; +} // namespace internal + +// +// Find*() +// + +// Returns a const reference to the value associated with the given key if it +// exists. Crashes otherwise. +// +// This is intended as a replacement for operator[] as an rvalue (for reading) +// when the key is guaranteed to exist. +// +// operator[] for lookup is discouraged for several reasons: +// * It has a side-effect of inserting missing keys +// * It is not thread-safe (even when it is not inserting, it can still +// choose to resize the underlying storage) +// * It invalidates iterators (when it chooses to resize) +// * It default constructs a value object even if it doesn't need to +// +// This version assumes the key is printable, and includes it in the fatal log +// message. +template +const typename Collection::value_type::second_type& +FindOrDie(const Collection& collection, + const typename Collection::value_type::first_type& key) { + typename Collection::const_iterator it = collection.find(key); + GOOGLE_CHECK(it != collection.end()) << "Map key not found: " << key; + return it->second; +} + +// Same as above, but returns a non-const reference. +template +typename Collection::value_type::second_type& +FindOrDie(Collection& collection, // NOLINT + const typename Collection::value_type::first_type& key) { + typename Collection::iterator it = collection.find(key); + GOOGLE_CHECK(it != collection.end()) << "Map key not found: " << key; + return it->second; +} + +// Same as FindOrDie above, but doesn't log the key on failure. +template +const typename Collection::value_type::second_type& +FindOrDieNoPrint(const Collection& collection, + const typename Collection::value_type::first_type& key) { + typename Collection::const_iterator it = collection.find(key); + GOOGLE_CHECK(it != collection.end()) << "Map key not found"; + return it->second; +} + +// Same as above, but returns a non-const reference. +template +typename Collection::value_type::second_type& +FindOrDieNoPrint(Collection& collection, // NOLINT + const typename Collection::value_type::first_type& key) { + typename Collection::iterator it = collection.find(key); + GOOGLE_CHECK(it != collection.end()) << "Map key not found"; + return it->second; +} + +// Returns a const reference to the value associated with the given key if it +// exists, otherwise returns a const reference to the provided default value. +// +// WARNING: If a temporary object is passed as the default "value," +// this function will return a reference to that temporary object, +// which will be destroyed at the end of the statement. A common +// example: if you have a map with string values, and you pass a char* +// as the default "value," either use the returned value immediately +// or store it in a string (not string&). +// Details: http://go/findwithdefault +template +const typename Collection::value_type::second_type& +FindWithDefault(const Collection& collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& value) { + typename Collection::const_iterator it = collection.find(key); + if (it == collection.end()) { + return value; + } + return it->second; +} + +// Returns a pointer to the const value associated with the given key if it +// exists, or nullptr otherwise. +template +const typename Collection::value_type::second_type* +FindOrNull(const Collection& collection, + const typename Collection::value_type::first_type& key) { + typename Collection::const_iterator it = collection.find(key); + if (it == collection.end()) { + return 0; + } + return &it->second; +} + +// Same as above but returns a pointer to the non-const value. +template +typename Collection::value_type::second_type* +FindOrNull(Collection& collection, // NOLINT + const typename Collection::value_type::first_type& key) { + typename Collection::iterator it = collection.find(key); + if (it == collection.end()) { + return 0; + } + return &it->second; +} + +// Returns the pointer value associated with the given key. If none is found, +// nullptr is returned. The function is designed to be used with a map of keys to +// pointers. +// +// This function does not distinguish between a missing key and a key mapped +// to nullptr. +template +typename Collection::value_type::second_type +FindPtrOrNull(const Collection& collection, + const typename Collection::value_type::first_type& key) { + typename Collection::const_iterator it = collection.find(key); + if (it == collection.end()) { + return typename Collection::value_type::second_type(); + } + return it->second; +} + +// Same as above, except takes non-const reference to collection. +// +// This function is needed for containers that propagate constness to the +// pointee, such as boost::ptr_map. +template +typename Collection::value_type::second_type +FindPtrOrNull(Collection& collection, // NOLINT + const typename Collection::value_type::first_type& key) { + typename Collection::iterator it = collection.find(key); + if (it == collection.end()) { + return typename Collection::value_type::second_type(); + } + return it->second; +} + +// Finds the pointer value associated with the given key in a map whose values +// are linked_ptrs. Returns nullptr if key is not found. +template +typename Collection::value_type::second_type::element_type* +FindLinkedPtrOrNull(const Collection& collection, + const typename Collection::value_type::first_type& key) { + typename Collection::const_iterator it = collection.find(key); + if (it == collection.end()) { + return 0; + } + // Since linked_ptr::get() is a const member returning a non const, + // we do not need a version of this function taking a non const collection. + return it->second.get(); +} + +// Same as above, but dies if the key is not found. +template +typename Collection::value_type::second_type::element_type& +FindLinkedPtrOrDie(const Collection& collection, + const typename Collection::value_type::first_type& key) { + typename Collection::const_iterator it = collection.find(key); + GOOGLE_CHECK(it != collection.end()) << "key not found: " << key; + // Since linked_ptr::operator*() is a const member returning a non const, + // we do not need a version of this function taking a non const collection. + return *it->second; +} + +// Finds the value associated with the given key and copies it to *value (if not +// nullptr). Returns false if the key was not found, true otherwise. +template +bool FindCopy(const Collection& collection, + const Key& key, + Value* const value) { + typename Collection::const_iterator it = collection.find(key); + if (it == collection.end()) { + return false; + } + if (value) { + *value = it->second; + } + return true; +} + +// +// Contains*() +// + +// Returns true if and only if the given collection contains the given key. +template +bool ContainsKey(const Collection& collection, const Key& key) { + return collection.find(key) != collection.end(); +} + +// Returns true if and only if the given collection contains the given key-value +// pair. +template +bool ContainsKeyValuePair(const Collection& collection, + const Key& key, + const Value& value) { + typedef typename Collection::const_iterator const_iterator; + std::pair range = collection.equal_range(key); + for (const_iterator it = range.first; it != range.second; ++it) { + if (it->second == value) { + return true; + } + } + return false; +} + +// +// Insert*() +// + +// Inserts the given key-value pair into the collection. Returns true if and +// only if the key from the given pair didn't previously exist. Otherwise, the +// value in the map is replaced with the value from the given pair. +template +bool InsertOrUpdate(Collection* const collection, + const typename Collection::value_type& vt) { + std::pair ret = collection->insert(vt); + if (!ret.second) { + // update + ret.first->second = vt.second; + return false; + } + return true; +} + +// Same as above, except that the key and value are passed separately. +template +bool InsertOrUpdate(Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& value) { + return InsertOrUpdate( + collection, typename Collection::value_type(key, value)); +} + +// Inserts/updates all the key-value pairs from the range defined by the +// iterators "first" and "last" into the given collection. +template +void InsertOrUpdateMany(Collection* const collection, + InputIterator first, InputIterator last) { + for (; first != last; ++first) { + InsertOrUpdate(collection, *first); + } +} + +// Change the value associated with a particular key in a map or hash_map +// of the form map which owns the objects pointed to by the +// value pointers. If there was an existing value for the key, it is deleted. +// True indicates an insert took place, false indicates an update + delete. +template +bool InsertAndDeleteExisting( + Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& value) { + std::pair ret = + collection->insert(typename Collection::value_type(key, value)); + if (!ret.second) { + delete ret.first->second; + ret.first->second = value; + return false; + } + return true; +} + +// Inserts the given key and value into the given collection if and only if the +// given key did NOT already exist in the collection. If the key previously +// existed in the collection, the value is not changed. Returns true if the +// key-value pair was inserted; returns false if the key was already present. +template +bool InsertIfNotPresent(Collection* const collection, + const typename Collection::value_type& vt) { + return collection->insert(vt).second; +} + +// Same as above except the key and value are passed separately. +template +bool InsertIfNotPresent( + Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& value) { + return InsertIfNotPresent( + collection, typename Collection::value_type(key, value)); +} + +// Same as above except dies if the key already exists in the collection. +template +void InsertOrDie(Collection* const collection, + const typename Collection::value_type& value) { + GOOGLE_CHECK(InsertIfNotPresent(collection, value)) + << "duplicate value: " << value; +} + +// Same as above except doesn't log the value on error. +template +void InsertOrDieNoPrint(Collection* const collection, + const typename Collection::value_type& value) { + GOOGLE_CHECK(InsertIfNotPresent(collection, value)) << "duplicate value."; +} + +// Inserts the key-value pair into the collection. Dies if key was already +// present. +template +void InsertOrDie(Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& data) { + GOOGLE_CHECK(InsertIfNotPresent(collection, key, data)) + << "duplicate key: " << key; +} + +// Same as above except doesn't log the key on error. +template +void InsertOrDieNoPrint( + Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& data) { + GOOGLE_CHECK(InsertIfNotPresent(collection, key, data)) << "duplicate key."; +} + +// Inserts a new key and default-initialized value. Dies if the key was already +// present. Returns a reference to the value. Example usage: +// +// map m; +// SomeProto& proto = InsertKeyOrDie(&m, 3); +// proto.set_field("foo"); +template +typename Collection::value_type::second_type& InsertKeyOrDie( + Collection* const collection, + const typename Collection::value_type::first_type& key) { + typedef typename Collection::value_type value_type; + std::pair res = + collection->insert(value_type(key, typename value_type::second_type())); + GOOGLE_CHECK(res.second) << "duplicate key: " << key; + return res.first->second; +} + +// +// Lookup*() +// + +// Looks up a given key and value pair in a collection and inserts the key-value +// pair if it's not already present. Returns a reference to the value associated +// with the key. +template +typename Collection::value_type::second_type& +LookupOrInsert(Collection* const collection, + const typename Collection::value_type& vt) { + return collection->insert(vt).first->second; +} + +// Same as above except the key-value are passed separately. +template +typename Collection::value_type::second_type& +LookupOrInsert(Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& value) { + return LookupOrInsert( + collection, typename Collection::value_type(key, value)); +} + +// Counts the number of equivalent elements in the given "sequence", and stores +// the results in "count_map" with element as the key and count as the value. +// +// Example: +// vector v = {"a", "b", "c", "a", "b"}; +// map m; +// AddTokenCounts(v, 1, &m); +// assert(m["a"] == 2); +// assert(m["b"] == 2); +// assert(m["c"] == 1); +template +void AddTokenCounts( + const Sequence& sequence, + const typename Collection::value_type::second_type& increment, + Collection* const count_map) { + for (typename Sequence::const_iterator it = sequence.begin(); + it != sequence.end(); ++it) { + typename Collection::value_type::second_type& value = + LookupOrInsert(count_map, *it, + typename Collection::value_type::second_type()); + value += increment; + } +} + +// Returns a reference to the value associated with key. If not found, a value +// is default constructed on the heap and added to the map. +// +// This function is useful for containers of the form map, where +// inserting a new key, value pair involves constructing a new heap-allocated +// Value, and storing a pointer to that in the collection. +template +typename Collection::value_type::second_type& +LookupOrInsertNew(Collection* const collection, + const typename Collection::value_type::first_type& key) { + typedef typename std::iterator_traits< + typename Collection::value_type::second_type>::value_type Element; + std::pair ret = + collection->insert(typename Collection::value_type( + key, + static_cast(nullptr))); + if (ret.second) { + ret.first->second = new Element(); + } + return ret.first->second; +} + +// Same as above but constructs the value using the single-argument constructor +// and the given "arg". +template +typename Collection::value_type::second_type& +LookupOrInsertNew(Collection* const collection, + const typename Collection::value_type::first_type& key, + const Arg& arg) { + typedef typename std::iterator_traits< + typename Collection::value_type::second_type>::value_type Element; + std::pair ret = + collection->insert(typename Collection::value_type( + key, + static_cast(nullptr))); + if (ret.second) { + ret.first->second = new Element(arg); + } + return ret.first->second; +} + +// Lookup of linked/shared pointers is used in two scenarios: +// +// Use LookupOrInsertNewLinkedPtr if the container owns the elements. +// In this case it is fine working with the raw pointer as long as it is +// guaranteed that no other thread can delete/update an accessed element. +// A mutex will need to lock the container operation as well as the use +// of the returned elements. Finding an element may be performed using +// FindLinkedPtr*(). +// +// Use LookupOrInsertNewSharedPtr if the container does not own the elements +// for their whole lifetime. This is typically the case when a reader allows +// parallel updates to the container. In this case a Mutex only needs to lock +// container operations, but all element operations must be performed on the +// shared pointer. Finding an element must be performed using FindPtr*() and +// cannot be done with FindLinkedPtr*() even though it compiles. + +// Lookup a key in a map or hash_map whose values are linked_ptrs. If it is +// missing, set collection[key].reset(new Value::element_type) and return that. +// Value::element_type must be default constructable. +template +typename Collection::value_type::second_type::element_type* +LookupOrInsertNewLinkedPtr( + Collection* const collection, + const typename Collection::value_type::first_type& key) { + typedef typename Collection::value_type::second_type Value; + std::pair ret = + collection->insert(typename Collection::value_type(key, Value())); + if (ret.second) { + ret.first->second.reset(new typename Value::element_type); + } + return ret.first->second.get(); +} + +// A variant of LookupOrInsertNewLinkedPtr where the value is constructed using +// a single-parameter constructor. Note: the constructor argument is computed +// even if it will not be used, so only values cheap to compute should be passed +// here. On the other hand it does not matter how expensive the construction of +// the actual stored value is, as that only occurs if necessary. +template +typename Collection::value_type::second_type::element_type* +LookupOrInsertNewLinkedPtr( + Collection* const collection, + const typename Collection::value_type::first_type& key, + const Arg& arg) { + typedef typename Collection::value_type::second_type Value; + std::pair ret = + collection->insert(typename Collection::value_type(key, Value())); + if (ret.second) { + ret.first->second.reset(new typename Value::element_type(arg)); + } + return ret.first->second.get(); +} + +// Lookup a key in a map or hash_map whose values are shared_ptrs. If it is +// missing, set collection[key].reset(new Value::element_type). Unlike +// LookupOrInsertNewLinkedPtr, this function returns the shared_ptr instead of +// the raw pointer. Value::element_type must be default constructable. +template +typename Collection::value_type::second_type& +LookupOrInsertNewSharedPtr( + Collection* const collection, + const typename Collection::value_type::first_type& key) { + typedef typename Collection::value_type::second_type SharedPtr; + typedef typename Collection::value_type::second_type::element_type Element; + std::pair ret = + collection->insert(typename Collection::value_type(key, SharedPtr())); + if (ret.second) { + ret.first->second.reset(new Element()); + } + return ret.first->second; +} + +// A variant of LookupOrInsertNewSharedPtr where the value is constructed using +// a single-parameter constructor. Note: the constructor argument is computed +// even if it will not be used, so only values cheap to compute should be passed +// here. On the other hand it does not matter how expensive the construction of +// the actual stored value is, as that only occurs if necessary. +template +typename Collection::value_type::second_type& +LookupOrInsertNewSharedPtr( + Collection* const collection, + const typename Collection::value_type::first_type& key, + const Arg& arg) { + typedef typename Collection::value_type::second_type SharedPtr; + typedef typename Collection::value_type::second_type::element_type Element; + std::pair ret = + collection->insert(typename Collection::value_type(key, SharedPtr())); + if (ret.second) { + ret.first->second.reset(new Element(arg)); + } + return ret.first->second; +} + +// +// Misc Utility Functions +// + +// Updates the value associated with the given key. If the key was not already +// present, then the key-value pair are inserted and "previous" is unchanged. If +// the key was already present, the value is updated and "*previous" will +// contain a copy of the old value. +// +// InsertOrReturnExisting has complementary behavior that returns the +// address of an already existing value, rather than updating it. +template +bool UpdateReturnCopy(Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& value, + typename Collection::value_type::second_type* previous) { + std::pair ret = + collection->insert(typename Collection::value_type(key, value)); + if (!ret.second) { + // update + if (previous) { + *previous = ret.first->second; + } + ret.first->second = value; + return true; + } + return false; +} + +// Same as above except that the key and value are passed as a pair. +template +bool UpdateReturnCopy(Collection* const collection, + const typename Collection::value_type& vt, + typename Collection::value_type::second_type* previous) { + std::pair ret = collection->insert(vt); + if (!ret.second) { + // update + if (previous) { + *previous = ret.first->second; + } + ret.first->second = vt.second; + return true; + } + return false; +} + +// Tries to insert the given key-value pair into the collection. Returns nullptr if +// the insert succeeds. Otherwise, returns a pointer to the existing value. +// +// This complements UpdateReturnCopy in that it allows to update only after +// verifying the old value and still insert quickly without having to look up +// twice. Unlike UpdateReturnCopy this also does not come with the issue of an +// undefined previous* in case new data was inserted. +template +typename Collection::value_type::second_type* InsertOrReturnExisting( + Collection* const collection, const typename Collection::value_type& vt) { + std::pair ret = collection->insert(vt); + if (ret.second) { + return nullptr; // Inserted, no existing previous value. + } else { + return &ret.first->second; // Return address of already existing value. + } +} + +// Same as above, except for explicit key and data. +template +typename Collection::value_type::second_type* InsertOrReturnExisting( + Collection* const collection, + const typename Collection::value_type::first_type& key, + const typename Collection::value_type::second_type& data) { + return InsertOrReturnExisting(collection, + typename Collection::value_type(key, data)); +} + +// Erases the collection item identified by the given key, and returns the value +// associated with that key. It is assumed that the value (i.e., the +// mapped_type) is a pointer. Returns nullptr if the key was not found in the +// collection. +// +// Examples: +// map my_map; +// +// One line cleanup: +// delete EraseKeyReturnValuePtr(&my_map, "abc"); +// +// Use returned value: +// std::unique_ptr value_ptr( +// EraseKeyReturnValuePtr(&my_map, "abc")); +// if (value_ptr.get()) +// value_ptr->DoSomething(); +// +template +typename Collection::value_type::second_type EraseKeyReturnValuePtr( + Collection* const collection, + const typename Collection::value_type::first_type& key) { + typename Collection::iterator it = collection->find(key); + if (it == collection->end()) { + return nullptr; + } + typename Collection::value_type::second_type v = it->second; + collection->erase(it); + return v; +} + +// Inserts all the keys from map_container into key_container, which must +// support insert(MapContainer::key_type). +// +// Note: any initial contents of the key_container are not cleared. +template +void InsertKeysFromMap(const MapContainer& map_container, + KeyContainer* key_container) { + GOOGLE_CHECK(key_container != nullptr); + for (typename MapContainer::const_iterator it = map_container.begin(); + it != map_container.end(); ++it) { + key_container->insert(it->first); + } +} + +// Appends all the keys from map_container into key_container, which must +// support push_back(MapContainer::key_type). +// +// Note: any initial contents of the key_container are not cleared. +template +void AppendKeysFromMap(const MapContainer& map_container, + KeyContainer* key_container) { + GOOGLE_CHECK(key_container != nullptr); + for (typename MapContainer::const_iterator it = map_container.begin(); + it != map_container.end(); ++it) { + key_container->push_back(it->first); + } +} + +// A more specialized overload of AppendKeysFromMap to optimize reallocations +// for the common case in which we're appending keys to a vector and hence can +// (and sometimes should) call reserve() first. +// +// (It would be possible to play SFINAE games to call reserve() for any +// container that supports it, but this seems to get us 99% of what we need +// without the complexity of a SFINAE-based solution.) +template +void AppendKeysFromMap(const MapContainer& map_container, + std::vector* key_container) { + GOOGLE_CHECK(key_container != nullptr); + // We now have the opportunity to call reserve(). Calling reserve() every + // time is a bad idea for some use cases: libstdc++'s implementation of + // vector<>::reserve() resizes the vector's backing store to exactly the + // given size (unless it's already at least that big). Because of this, + // the use case that involves appending a lot of small maps (total size + // N) one by one to a vector would be O(N^2). But never calling reserve() + // loses the opportunity to improve the use case of adding from a large + // map to an empty vector (this improves performance by up to 33%). A + // number of heuristics are possible; see the discussion in + // cl/34081696. Here we use the simplest one. + if (key_container->empty()) { + key_container->reserve(map_container.size()); + } + for (typename MapContainer::const_iterator it = map_container.begin(); + it != map_container.end(); ++it) { + key_container->push_back(it->first); + } +} + +// Inserts all the values from map_container into value_container, which must +// support push_back(MapContainer::mapped_type). +// +// Note: any initial contents of the value_container are not cleared. +template +void AppendValuesFromMap(const MapContainer& map_container, + ValueContainer* value_container) { + GOOGLE_CHECK(value_container != nullptr); + for (typename MapContainer::const_iterator it = map_container.begin(); + it != map_container.end(); ++it) { + value_container->push_back(it->second); + } +} + +// A more specialized overload of AppendValuesFromMap to optimize reallocations +// for the common case in which we're appending values to a vector and hence +// can (and sometimes should) call reserve() first. +// +// (It would be possible to play SFINAE games to call reserve() for any +// container that supports it, but this seems to get us 99% of what we need +// without the complexity of a SFINAE-based solution.) +template +void AppendValuesFromMap(const MapContainer& map_container, + std::vector* value_container) { + GOOGLE_CHECK(value_container != nullptr); + // See AppendKeysFromMap for why this is done. + if (value_container->empty()) { + value_container->reserve(map_container.size()); + } + for (typename MapContainer::const_iterator it = map_container.begin(); + it != map_container.end(); ++it) { + value_container->push_back(it->second); + } +} + +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_STUBS_MAP_UTIL_H__ diff --git a/external/include/google/protobuf/stubs/mutex.h b/external/include/google/protobuf/stubs/mutex.h new file mode 100644 index 0000000..79c9f67 --- /dev/null +++ b/external/include/google/protobuf/stubs/mutex.h @@ -0,0 +1,213 @@ +// Copyright (c) 2006, Google Inc. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_STUBS_MUTEX_H_ +#define GOOGLE_PROTOBUF_STUBS_MUTEX_H_ + +#include + +#ifdef GOOGLE_PROTOBUF_SUPPORT_WINDOWS_XP + +#include + +// GetMessage conflicts with GeneratedMessageReflection::GetMessage(). +#ifdef GetMessage +#undef GetMessage +#endif + +#endif + +#include + +// Define thread-safety annotations for use below, if we are building with +// Clang. +#if defined(__clang__) && !defined(SWIG) +#define GOOGLE_PROTOBUF_ACQUIRE(...) \ + __attribute__((acquire_capability(__VA_ARGS__))) +#define GOOGLE_PROTOBUF_RELEASE(...) \ + __attribute__((release_capability(__VA_ARGS__))) +#define GOOGLE_PROTOBUF_CAPABILITY(x) __attribute__((capability(x))) +#else +#define GOOGLE_PROTOBUF_ACQUIRE(...) +#define GOOGLE_PROTOBUF_RELEASE(...) +#define GOOGLE_PROTOBUF_CAPABILITY(x) +#endif + +#include + +// =================================================================== +// emulates google3/base/mutex.h +namespace google { +namespace protobuf { +namespace internal { + +#define GOOGLE_PROTOBUF_LINKER_INITIALIZED + +#ifdef GOOGLE_PROTOBUF_SUPPORT_WINDOWS_XP + +// This class is a lightweight replacement for std::mutex on Windows platforms. +// std::mutex does not work on Windows XP SP2 with the latest VC++ libraries, +// because it utilizes the Concurrency Runtime that is only supported on Windows +// XP SP3 and above. +class PROTOBUF_EXPORT CriticalSectionLock { + public: + CriticalSectionLock() { InitializeCriticalSection(&critical_section_); } + ~CriticalSectionLock() { DeleteCriticalSection(&critical_section_); } + void lock() { EnterCriticalSection(&critical_section_); } + void unlock() { LeaveCriticalSection(&critical_section_); } + + private: + CRITICAL_SECTION critical_section_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(CriticalSectionLock); +}; + +#endif + +// In MSVC std::mutex does not have a constexpr constructor. +// This wrapper makes the constructor constexpr. +template +class CallOnceInitializedMutex { + public: + constexpr CallOnceInitializedMutex() : flag_{}, buf_{} {} + ~CallOnceInitializedMutex() { get().~T(); } + + void lock() { get().lock(); } + void unlock() { get().unlock(); } + + private: + T& get() { + std::call_once(flag_, [&] { ::new (static_cast(&buf_)) T(); }); + return reinterpret_cast(buf_); + } + + std::once_flag flag_; + alignas(T) char buf_[sizeof(T)]; +}; + +// Mutex is a natural type to wrap. As both google and other organization have +// specialized mutexes. gRPC also provides an injection mechanism for custom +// mutexes. +class GOOGLE_PROTOBUF_CAPABILITY("mutex") PROTOBUF_EXPORT WrappedMutex { + public: +#if defined(__QNX__) + constexpr WrappedMutex() = default; +#else + constexpr WrappedMutex() {} +#endif + void Lock() GOOGLE_PROTOBUF_ACQUIRE() { mu_.lock(); } + void Unlock() GOOGLE_PROTOBUF_RELEASE() { mu_.unlock(); } + // Crash if this Mutex is not held exclusively by this thread. + // May fail to crash when it should; will never crash when it should not. + void AssertHeld() const {} + + private: +#if defined(GOOGLE_PROTOBUF_SUPPORT_WINDOWS_XP) + CallOnceInitializedMutex mu_{}; +#elif defined(_WIN32) + CallOnceInitializedMutex mu_{}; +#else + std::mutex mu_{}; +#endif +}; + +using Mutex = WrappedMutex; + +// MutexLock(mu) acquires mu when constructed and releases it when destroyed. +class PROTOBUF_EXPORT MutexLock { + public: + explicit MutexLock(Mutex *mu) : mu_(mu) { this->mu_->Lock(); } + ~MutexLock() { this->mu_->Unlock(); } + private: + Mutex *const mu_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MutexLock); +}; + +// TODO(kenton): Implement these? Hard to implement portably. +typedef MutexLock ReaderMutexLock; +typedef MutexLock WriterMutexLock; + +// MutexLockMaybe is like MutexLock, but is a no-op when mu is nullptr. +class PROTOBUF_EXPORT MutexLockMaybe { + public: + explicit MutexLockMaybe(Mutex *mu) : + mu_(mu) { if (this->mu_ != nullptr) { this->mu_->Lock(); } } + ~MutexLockMaybe() { if (this->mu_ != nullptr) { this->mu_->Unlock(); } } + private: + Mutex *const mu_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MutexLockMaybe); +}; + +#if defined(GOOGLE_PROTOBUF_NO_THREADLOCAL) +template +class ThreadLocalStorage { + public: + ThreadLocalStorage() { + pthread_key_create(&key_, &ThreadLocalStorage::Delete); + } + ~ThreadLocalStorage() { + pthread_key_delete(key_); + } + T* Get() { + T* result = static_cast(pthread_getspecific(key_)); + if (result == nullptr) { + result = new T(); + pthread_setspecific(key_, result); + } + return result; + } + private: + static void Delete(void* value) { + delete static_cast(value); + } + pthread_key_t key_; + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ThreadLocalStorage); +}; +#endif + +} // namespace internal + +// We made these internal so that they would show up as such in the docs, +// but we don't want to stick "internal::" in front of them everywhere. +using internal::Mutex; +using internal::MutexLock; +using internal::ReaderMutexLock; +using internal::WriterMutexLock; +using internal::MutexLockMaybe; + +} // namespace protobuf +} // namespace google + +#undef GOOGLE_PROTOBUF_ACQUIRE +#undef GOOGLE_PROTOBUF_RELEASE + +#include + +#endif // GOOGLE_PROTOBUF_STUBS_MUTEX_H_ diff --git a/external/include/google/protobuf/stubs/once.h b/external/include/google/protobuf/stubs/once.h new file mode 100644 index 0000000..070d36d --- /dev/null +++ b/external/include/google/protobuf/stubs/once.h @@ -0,0 +1,55 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_STUBS_ONCE_H__ +#define GOOGLE_PROTOBUF_STUBS_ONCE_H__ + +#include +#include + +#include + +namespace google { +namespace protobuf { +namespace internal { + +using once_flag = std::once_flag; +template +void call_once(Args&&... args ) { + std::call_once(std::forward(args)...); +} + +} // namespace internal +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_STUBS_ONCE_H__ diff --git a/external/include/google/protobuf/stubs/platform_macros.h b/external/include/google/protobuf/stubs/platform_macros.h new file mode 100644 index 0000000..2479960 --- /dev/null +++ b/external/include/google/protobuf/stubs/platform_macros.h @@ -0,0 +1,138 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2012 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_PLATFORM_MACROS_H_ +#define GOOGLE_PROTOBUF_PLATFORM_MACROS_H_ + +#define GOOGLE_PROTOBUF_PLATFORM_ERROR \ +#error "Host platform was not detected as supported by protobuf" + +// Processor architecture detection. For more info on what's defined, see: +// http://msdn.microsoft.com/en-us/library/b0084kay.aspx +// http://www.agner.org/optimize/calling_conventions.pdf +// or with gcc, run: "echo | gcc -E -dM -" +#if defined(_M_X64) || defined(__x86_64__) +#define GOOGLE_PROTOBUF_ARCH_X64 1 +#define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +#elif defined(_M_IX86) || defined(__i386__) +#define GOOGLE_PROTOBUF_ARCH_IA32 1 +#define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +#elif defined(__QNX__) +#define GOOGLE_PROTOBUF_ARCH_ARM_QNX 1 +#if defined(__aarch64__) +#define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +#else +#define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +#endif +#elif defined(_M_ARM) || defined(__ARMEL__) +#define GOOGLE_PROTOBUF_ARCH_ARM 1 +#define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +#elif defined(_M_ARM64) +#define GOOGLE_PROTOBUF_ARCH_ARM 1 +#define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +#elif defined(__aarch64__) +#define GOOGLE_PROTOBUF_ARCH_AARCH64 1 +#define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +#elif defined(__mips__) +#if defined(__LP64__) +#define GOOGLE_PROTOBUF_ARCH_MIPS64 1 +#define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +#else +#define GOOGLE_PROTOBUF_ARCH_MIPS 1 +#define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +#endif +#elif defined(__pnacl__) +#define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +#elif defined(sparc) +#define GOOGLE_PROTOBUF_ARCH_SPARC 1 +#if defined(__sparc_v9__) || defined(__sparcv9) || defined(__arch64__) +#define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +#else +#define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +#endif +#elif defined(_POWER) || defined(__powerpc64__) || defined(__PPC64__) +#define GOOGLE_PROTOBUF_ARCH_POWER 1 +#define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +#elif defined(__PPC__) +#define GOOGLE_PROTOBUF_ARCH_PPC 1 +#define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +#elif defined(__GNUC__) +# if (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)) +// We fallback to the generic Clang/GCC >= 4.7 implementation in atomicops.h +# elif defined(__clang__) +# if !__has_extension(c_atomic) +GOOGLE_PROTOBUF_PLATFORM_ERROR +# endif +// We fallback to the generic Clang/GCC >= 4.7 implementation in atomicops.h +# endif +# if __LP64__ +# define GOOGLE_PROTOBUF_ARCH_64_BIT 1 +# else +# define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +# endif +#else +GOOGLE_PROTOBUF_PLATFORM_ERROR +#endif + +#if defined(__APPLE__) +#define GOOGLE_PROTOBUF_OS_APPLE +#include +#include +#if TARGET_OS_IPHONE +#define GOOGLE_PROTOBUF_OS_IPHONE +#endif +#elif defined(__EMSCRIPTEN__) +#define GOOGLE_PROTOBUF_OS_EMSCRIPTEN +#elif defined(__native_client__) +#define GOOGLE_PROTOBUF_OS_NACL +#elif defined(sun) +#define GOOGLE_PROTOBUF_OS_SOLARIS +#elif defined(_AIX) +#define GOOGLE_PROTOBUF_OS_AIX +#elif defined(__ANDROID__) +#define GOOGLE_PROTOBUF_OS_ANDROID +#endif + +#undef GOOGLE_PROTOBUF_PLATFORM_ERROR + +#if defined(GOOGLE_PROTOBUF_OS_ANDROID) || defined(GOOGLE_PROTOBUF_OS_IPHONE) || defined(__OpenBSD__) +// Android ndk does not support the __thread keyword very well yet. Here +// we use pthread_key_create()/pthread_getspecific()/... methods for +// TLS support on android. +// iOS and OpenBSD also do not support the __thread keyword. +#define GOOGLE_PROTOBUF_NO_THREADLOCAL +#endif + +#if defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED < 1070 +// __thread keyword requires at least 10.7 +#define GOOGLE_PROTOBUF_NO_THREADLOCAL +#endif + +#endif // GOOGLE_PROTOBUF_PLATFORM_MACROS_H_ diff --git a/external/include/google/protobuf/stubs/port.h b/external/include/google/protobuf/stubs/port.h new file mode 100644 index 0000000..d4d2736 --- /dev/null +++ b/external/include/google/protobuf/stubs/port.h @@ -0,0 +1,410 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_STUBS_PORT_H_ +#define GOOGLE_PROTOBUF_STUBS_PORT_H_ + +#include +#include +#include +#include +#include +#include + +#include + +#include + +#undef PROTOBUF_LITTLE_ENDIAN +#ifdef _WIN32 + // Assuming windows is always little-endian. + // TODO(xiaofeng): The PROTOBUF_LITTLE_ENDIAN is not only used for + // optimization but also for correctness. We should define an + // different macro to test the big-endian code path in coded_stream. + #if !defined(PROTOBUF_DISABLE_LITTLE_ENDIAN_OPT_FOR_TEST) + #define PROTOBUF_LITTLE_ENDIAN 1 + #endif +#if defined(_MSC_VER) && _MSC_VER >= 1300 && !defined(__INTEL_COMPILER) +// If MSVC has "/RTCc" set, it will complain about truncating casts at +// runtime. This file contains some intentional truncating casts. +#pragma runtime_checks("c", off) +#endif +#else +#ifdef __APPLE__ +#include // __BYTE_ORDER +#elif defined(__FreeBSD__) +#include // __BYTE_ORDER +#else +#if !defined(__QNX__) +#include // __BYTE_ORDER +#endif +#endif +#if ((defined(__LITTLE_ENDIAN__) && !defined(__BIG_ENDIAN__)) || \ + (defined(__BYTE_ORDER) && __BYTE_ORDER == __LITTLE_ENDIAN) || \ + (defined(BYTE_ORDER) && BYTE_ORDER == LITTLE_ENDIAN)) && \ + !defined(PROTOBUF_DISABLE_LITTLE_ENDIAN_OPT_FOR_TEST) +#define PROTOBUF_LITTLE_ENDIAN 1 +#endif +#endif + +// These #includes are for the byte swap functions declared later on. +#ifdef _MSC_VER +#include // NOLINT(build/include) +#include +#elif defined(__APPLE__) +#include +#elif defined(__linux__) || defined(__ANDROID__) || defined(__CYGWIN__) +#include // IWYU pragma: export +#endif + +// Legacy: some users reference these (internal-only) macros even though we +// don't need them any more. +#if defined(_MSC_VER) && defined(PROTOBUF_USE_DLLS) + #ifdef LIBPROTOBUF_EXPORTS + #define LIBPROTOBUF_EXPORT __declspec(dllexport) + #else + #define LIBPROTOBUF_EXPORT __declspec(dllimport) + #endif + #ifdef LIBPROTOC_EXPORTS + #define LIBPROTOC_EXPORT __declspec(dllexport) + #else + #define LIBPROTOC_EXPORT __declspec(dllimport) + #endif +#else + #define LIBPROTOBUF_EXPORT + #define LIBPROTOC_EXPORT +#endif + +#define PROTOBUF_RUNTIME_DEPRECATED(message) PROTOBUF_DEPRECATED_MSG(message) +#define GOOGLE_PROTOBUF_RUNTIME_DEPRECATED(message) \ + PROTOBUF_DEPRECATED_MSG(message) + +// =================================================================== +// from google3/base/port.h + +#if (defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L || \ + (defined(_MSC_VER) && _MSC_VER >= 1900)) +// Define this to 1 if the code is compiled in C++11 mode; leave it +// undefined otherwise. Do NOT define it to 0 -- that causes +// '#ifdef LANG_CXX11' to behave differently from '#if LANG_CXX11'. +#define LANG_CXX11 1 +#else +#error "Protobuf requires at least C++11." +#endif + +namespace google { +namespace protobuf { + +using ConstStringParam = const std::string &; + +typedef unsigned int uint; + +typedef int8_t int8; +typedef int16_t int16; +typedef int32_t int32; +typedef int64_t int64; + +typedef uint8_t uint8; +typedef uint16_t uint16; +typedef uint32_t uint32; +typedef uint64_t uint64; + +static const int32 kint32max = 0x7FFFFFFF; +static const int32 kint32min = -kint32max - 1; +static const int64 kint64max = int64_t{0x7FFFFFFFFFFFFFFF}; +static const int64 kint64min = -kint64max - 1; +static const uint32 kuint32max = 0xFFFFFFFFu; +static const uint64 kuint64max = uint64_t{0xFFFFFFFFFFFFFFFFu}; + +#if defined(ADDRESS_SANITIZER) || defined(THREAD_SANITIZER) ||\ + defined(MEMORY_SANITIZER) + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus +uint16_t __sanitizer_unaligned_load16(const void *p); +uint32_t __sanitizer_unaligned_load32(const void *p); +uint64_t __sanitizer_unaligned_load64(const void *p); +void __sanitizer_unaligned_store16(void *p, uint16_t v); +void __sanitizer_unaligned_store32(void *p, uint32_t v); +void __sanitizer_unaligned_store64(void *p, uint64_t v); +#ifdef __cplusplus +} // extern "C" +#endif // __cplusplus + +inline uint16 GOOGLE_UNALIGNED_LOAD16(const void *p) { + return __sanitizer_unaligned_load16(p); +} + +inline uint32 GOOGLE_UNALIGNED_LOAD32(const void *p) { + return __sanitizer_unaligned_load32(p); +} + +inline uint64 GOOGLE_UNALIGNED_LOAD64(const void *p) { + return __sanitizer_unaligned_load64(p); +} + +inline void GOOGLE_UNALIGNED_STORE16(void *p, uint16 v) { + __sanitizer_unaligned_store16(p, v); +} + +inline void GOOGLE_UNALIGNED_STORE32(void *p, uint32 v) { + __sanitizer_unaligned_store32(p, v); +} + +inline void GOOGLE_UNALIGNED_STORE64(void *p, uint64 v) { + __sanitizer_unaligned_store64(p, v); +} + +#elif defined(GOOGLE_PROTOBUF_USE_UNALIGNED) && GOOGLE_PROTOBUF_USE_UNALIGNED + +#define GOOGLE_UNALIGNED_LOAD16(_p) (*reinterpret_cast(_p)) +#define GOOGLE_UNALIGNED_LOAD32(_p) (*reinterpret_cast(_p)) +#define GOOGLE_UNALIGNED_LOAD64(_p) (*reinterpret_cast(_p)) + +#define GOOGLE_UNALIGNED_STORE16(_p, _val) (*reinterpret_cast(_p) = (_val)) +#define GOOGLE_UNALIGNED_STORE32(_p, _val) (*reinterpret_cast(_p) = (_val)) +#define GOOGLE_UNALIGNED_STORE64(_p, _val) (*reinterpret_cast(_p) = (_val)) + +#else +inline uint16 GOOGLE_UNALIGNED_LOAD16(const void *p) { + uint16 t; + memcpy(&t, p, sizeof t); + return t; +} + +inline uint32 GOOGLE_UNALIGNED_LOAD32(const void *p) { + uint32 t; + memcpy(&t, p, sizeof t); + return t; +} + +inline uint64 GOOGLE_UNALIGNED_LOAD64(const void *p) { + uint64 t; + memcpy(&t, p, sizeof t); + return t; +} + +inline void GOOGLE_UNALIGNED_STORE16(void *p, uint16 v) { + memcpy(p, &v, sizeof v); +} + +inline void GOOGLE_UNALIGNED_STORE32(void *p, uint32 v) { + memcpy(p, &v, sizeof v); +} + +inline void GOOGLE_UNALIGNED_STORE64(void *p, uint64 v) { + memcpy(p, &v, sizeof v); +} +#endif + +#if defined(GOOGLE_PROTOBUF_OS_NACL) \ + || (defined(__ANDROID__) && defined(__clang__) \ + && (__clang_major__ == 3 && __clang_minor__ == 8) \ + && (__clang_patchlevel__ < 275480)) +# define GOOGLE_PROTOBUF_USE_PORTABLE_LOG2 +#endif + +// The following guarantees declaration of the byte swap functions. +#ifdef _MSC_VER +#define bswap_16(x) _byteswap_ushort(x) +#define bswap_32(x) _byteswap_ulong(x) +#define bswap_64(x) _byteswap_uint64(x) + +#elif defined(__APPLE__) +// Mac OS X / Darwin features +#define bswap_16(x) OSSwapInt16(x) +#define bswap_32(x) OSSwapInt32(x) +#define bswap_64(x) OSSwapInt64(x) + +#elif !defined(__linux__) && !defined(__ANDROID__) && !defined(__CYGWIN__) + +#ifndef bswap_16 +static inline uint16 bswap_16(uint16 x) { + return static_cast(((x & 0xFF) << 8) | ((x & 0xFF00) >> 8)); +} +#define bswap_16(x) bswap_16(x) +#endif + +#ifndef bswap_32 +static inline uint32 bswap_32(uint32 x) { + return (((x & 0xFF) << 24) | + ((x & 0xFF00) << 8) | + ((x & 0xFF0000) >> 8) | + ((x & 0xFF000000) >> 24)); +} +#define bswap_32(x) bswap_32(x) +#endif + +#ifndef bswap_64 +static inline uint64 bswap_64(uint64 x) { + return (((x & uint64_t{0xFFu}) << 56) | + ((x & uint64_t{0xFF00u}) << 40) | + ((x & uint64_t{0xFF0000u}) << 24) | + ((x & uint64_t{0xFF000000u}) << 8) | + ((x & uint64_t{0xFF00000000u}) >> 8) | + ((x & uint64_t{0xFF0000000000u}) >> 24) | + ((x & uint64_t{0xFF000000000000u}) >> 40) | + ((x & uint64_t{0xFF00000000000000u}) >> 56)); +} +#define bswap_64(x) bswap_64(x) +#endif + +#endif + +// =================================================================== +// from google3/util/bits/bits.h + +class Bits { + public: + static uint32 Log2FloorNonZero(uint32 n) { +#if defined(__GNUC__) + return 31 ^ static_cast(__builtin_clz(n)); +#elif defined(_MSC_VER) + unsigned long where; + _BitScanReverse(&where, n); + return where; +#else + return Log2FloorNonZero_Portable(n); +#endif + } + + static uint32 Log2FloorNonZero64(uint64 n) { + // Older versions of clang run into an instruction-selection failure when + // it encounters __builtin_clzll: + // https://bugs.chromium.org/p/nativeclient/issues/detail?id=4395 + // This includes arm-nacl-clang and clang in older Android NDK versions. + // To work around this, when we build with those we use the portable + // implementation instead. +#if defined(__GNUC__) && !defined(GOOGLE_PROTOBUF_USE_PORTABLE_LOG2) + return 63 ^ static_cast(__builtin_clzll(n)); +#elif defined(_MSC_VER) && defined(_M_X64) + unsigned long where; + _BitScanReverse64(&where, n); + return where; +#else + return Log2FloorNonZero64_Portable(n); +#endif + } + private: + static int Log2FloorNonZero_Portable(uint32 n) { + if (n == 0) + return -1; + int log = 0; + uint32 value = n; + for (int i = 4; i >= 0; --i) { + int shift = (1 << i); + uint32 x = value >> shift; + if (x != 0) { + value = x; + log += shift; + } + } + assert(value == 1); + return log; + } + + static int Log2FloorNonZero64_Portable(uint64 n) { + const uint32 topbits = static_cast(n >> 32); + if (topbits == 0) { + // Top bits are zero, so scan in bottom bits + return static_cast(Log2FloorNonZero(static_cast(n))); + } else { + return 32 + static_cast(Log2FloorNonZero(topbits)); + } + } +}; + +// =================================================================== +// from google3/util/endian/endian.h +PROTOBUF_EXPORT uint32 ghtonl(uint32 x); + +class BigEndian { + public: +#ifdef PROTOBUF_LITTLE_ENDIAN + + static uint16 FromHost16(uint16 x) { return bswap_16(x); } + static uint16 ToHost16(uint16 x) { return bswap_16(x); } + + static uint32 FromHost32(uint32 x) { return bswap_32(x); } + static uint32 ToHost32(uint32 x) { return bswap_32(x); } + + static uint64 FromHost64(uint64 x) { return bswap_64(x); } + static uint64 ToHost64(uint64 x) { return bswap_64(x); } + + static bool IsLittleEndian() { return true; } + +#else + + static uint16 FromHost16(uint16 x) { return x; } + static uint16 ToHost16(uint16 x) { return x; } + + static uint32 FromHost32(uint32 x) { return x; } + static uint32 ToHost32(uint32 x) { return x; } + + static uint64 FromHost64(uint64 x) { return x; } + static uint64 ToHost64(uint64 x) { return x; } + + static bool IsLittleEndian() { return false; } + +#endif /* ENDIAN */ + + // Functions to do unaligned loads and stores in big-endian order. + static uint16 Load16(const void *p) { + return ToHost16(GOOGLE_UNALIGNED_LOAD16(p)); + } + + static void Store16(void *p, uint16 v) { + GOOGLE_UNALIGNED_STORE16(p, FromHost16(v)); + } + + static uint32 Load32(const void *p) { + return ToHost32(GOOGLE_UNALIGNED_LOAD32(p)); + } + + static void Store32(void *p, uint32 v) { + GOOGLE_UNALIGNED_STORE32(p, FromHost32(v)); + } + + static uint64 Load64(const void *p) { + return ToHost64(GOOGLE_UNALIGNED_LOAD64(p)); + } + + static void Store64(void *p, uint64 v) { + GOOGLE_UNALIGNED_STORE64(p, FromHost64(v)); + } +}; + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_STUBS_PORT_H_ diff --git a/external/include/google/protobuf/stubs/status.h b/external/include/google/protobuf/stubs/status.h new file mode 100644 index 0000000..c858cf6 --- /dev/null +++ b/external/include/google/protobuf/stubs/status.h @@ -0,0 +1,196 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#ifndef GOOGLE_PROTOBUF_STUBS_STATUS_H_ +#define GOOGLE_PROTOBUF_STUBS_STATUS_H_ + +#include + +#include + +#include + +namespace google { +namespace protobuf { +namespace util { +namespace status_internal { + +// These values must match error codes defined in google/rpc/code.proto. +enum class StatusCode : int { + kOk = 0, + kCancelled = 1, + kUnknown = 2, + kInvalidArgument = 3, + kDeadlineExceeded = 4, + kNotFound = 5, + kAlreadyExists = 6, + kPermissionDenied = 7, + kUnauthenticated = 16, + kResourceExhausted = 8, + kFailedPrecondition = 9, + kAborted = 10, + kOutOfRange = 11, + kUnimplemented = 12, + kInternal = 13, + kUnavailable = 14, + kDataLoss = 15, +}; + +class PROTOBUF_EXPORT Status { + public: + // Creates a "successful" status. + Status(); + + // Create a status in the canonical error space with the specified + // code, and error message. If "code == 0", error_message is + // ignored and a Status object identical to Status::kOk is + // constructed. + Status(StatusCode error_code, StringPiece error_message); + Status(const Status&); + Status& operator=(const Status& x); + ~Status() {} + + // Accessor + bool ok() const { return error_code_ == StatusCode::kOk; } + StatusCode code() const { return error_code_; } + StringPiece message() const { + return error_message_; + } + + bool operator==(const Status& x) const; + bool operator!=(const Status& x) const { + return !operator==(x); + } + + // Return a combination of the error code name and message. + std::string ToString() const; + + private: + StatusCode error_code_; + std::string error_message_; +}; + +// Returns an OK status, equivalent to a default constructed instance. Prefer +// usage of `OkStatus()` when constructing such an OK status. +PROTOBUF_EXPORT Status OkStatus(); + +// Prints a human-readable representation of 'x' to 'os'. +PROTOBUF_EXPORT std::ostream& operator<<(std::ostream& os, const Status& x); + +// These convenience functions return `true` if a given status matches the +// `StatusCode` error code of its associated function. +PROTOBUF_EXPORT bool IsAborted(const Status& status); +PROTOBUF_EXPORT bool IsAlreadyExists(const Status& status); +PROTOBUF_EXPORT bool IsCancelled(const Status& status); +PROTOBUF_EXPORT bool IsDataLoss(const Status& status); +PROTOBUF_EXPORT bool IsDeadlineExceeded(const Status& status); +PROTOBUF_EXPORT bool IsFailedPrecondition(const Status& status); +PROTOBUF_EXPORT bool IsInternal(const Status& status); +PROTOBUF_EXPORT bool IsInvalidArgument(const Status& status); +PROTOBUF_EXPORT bool IsNotFound(const Status& status); +PROTOBUF_EXPORT bool IsOutOfRange(const Status& status); +PROTOBUF_EXPORT bool IsPermissionDenied(const Status& status); +PROTOBUF_EXPORT bool IsResourceExhausted(const Status& status); +PROTOBUF_EXPORT bool IsUnauthenticated(const Status& status); +PROTOBUF_EXPORT bool IsUnavailable(const Status& status); +PROTOBUF_EXPORT bool IsUnimplemented(const Status& status); +PROTOBUF_EXPORT bool IsUnknown(const Status& status); + +// These convenience functions create an `Status` object with an error code as +// indicated by the associated function name, using the error message passed in +// `message`. +// +// These functions are intentionally named `*Error` rather than `*Status` to +// match the names from Abseil: +// https://github.com/abseil/abseil-cpp/blob/2e9532cc6c701a8323d0cffb468999ab804095ab/absl/status/status.h#L716 +PROTOBUF_EXPORT Status AbortedError(StringPiece message); +PROTOBUF_EXPORT Status AlreadyExistsError(StringPiece message); +PROTOBUF_EXPORT Status CancelledError(StringPiece message); +PROTOBUF_EXPORT Status DataLossError(StringPiece message); +PROTOBUF_EXPORT Status DeadlineExceededError(StringPiece message); +PROTOBUF_EXPORT Status FailedPreconditionError(StringPiece message); +PROTOBUF_EXPORT Status InternalError(StringPiece message); +PROTOBUF_EXPORT Status InvalidArgumentError(StringPiece message); +PROTOBUF_EXPORT Status NotFoundError(StringPiece message); +PROTOBUF_EXPORT Status OutOfRangeError(StringPiece message); +PROTOBUF_EXPORT Status PermissionDeniedError(StringPiece message); +PROTOBUF_EXPORT Status ResourceExhaustedError(StringPiece message); +PROTOBUF_EXPORT Status UnauthenticatedError(StringPiece message); +PROTOBUF_EXPORT Status UnavailableError(StringPiece message); +PROTOBUF_EXPORT Status UnimplementedError(StringPiece message); +PROTOBUF_EXPORT Status UnknownError(StringPiece message); + +} // namespace status_internal + +using ::google::protobuf::util::status_internal::Status; +using ::google::protobuf::util::status_internal::StatusCode; + +using ::google::protobuf::util::status_internal::IsAborted; +using ::google::protobuf::util::status_internal::IsAlreadyExists; +using ::google::protobuf::util::status_internal::IsCancelled; +using ::google::protobuf::util::status_internal::IsDataLoss; +using ::google::protobuf::util::status_internal::IsDeadlineExceeded; +using ::google::protobuf::util::status_internal::IsFailedPrecondition; +using ::google::protobuf::util::status_internal::IsInternal; +using ::google::protobuf::util::status_internal::IsInvalidArgument; +using ::google::protobuf::util::status_internal::IsNotFound; +using ::google::protobuf::util::status_internal::IsOutOfRange; +using ::google::protobuf::util::status_internal::IsPermissionDenied; +using ::google::protobuf::util::status_internal::IsResourceExhausted; +using ::google::protobuf::util::status_internal::IsUnauthenticated; +using ::google::protobuf::util::status_internal::IsUnavailable; +using ::google::protobuf::util::status_internal::IsUnimplemented; +using ::google::protobuf::util::status_internal::IsUnknown; + +using ::google::protobuf::util::status_internal::AbortedError; +using ::google::protobuf::util::status_internal::AlreadyExistsError; +using ::google::protobuf::util::status_internal::CancelledError; +using ::google::protobuf::util::status_internal::DataLossError; +using ::google::protobuf::util::status_internal::DeadlineExceededError; +using ::google::protobuf::util::status_internal::FailedPreconditionError; +using ::google::protobuf::util::status_internal::InternalError; +using ::google::protobuf::util::status_internal::InvalidArgumentError; +using ::google::protobuf::util::status_internal::NotFoundError; +using ::google::protobuf::util::status_internal::OkStatus; +using ::google::protobuf::util::status_internal::OutOfRangeError; +using ::google::protobuf::util::status_internal::PermissionDeniedError; +using ::google::protobuf::util::status_internal::ResourceExhaustedError; +using ::google::protobuf::util::status_internal::UnauthenticatedError; +using ::google::protobuf::util::status_internal::UnavailableError; +using ::google::protobuf::util::status_internal::UnimplementedError; +using ::google::protobuf::util::status_internal::UnknownError; + +} // namespace util +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_STUBS_STATUS_H_ diff --git a/external/include/google/protobuf/stubs/stl_util.h b/external/include/google/protobuf/stubs/stl_util.h new file mode 100644 index 0000000..d01f9ec --- /dev/null +++ b/external/include/google/protobuf/stubs/stl_util.h @@ -0,0 +1,71 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// from google3/util/gtl/stl_util.h + +#ifndef GOOGLE_PROTOBUF_STUBS_STL_UTIL_H__ +#define GOOGLE_PROTOBUF_STUBS_STL_UTIL_H__ + +#include + +namespace google { +namespace protobuf { + +// Inside Google, this function implements a horrible, disgusting hack in which +// we reach into the string's private implementation and resize it without +// initializing the new bytes. In some cases doing this can significantly +// improve performance. However, since it's totally non-portable it has no +// place in open source code. Feel free to fill this function in with your +// own disgusting hack if you want the perf boost. +inline void STLStringResizeUninitialized(std::string* s, size_t new_size) { + s->resize(new_size); +} + +// Return a mutable char* pointing to a string's internal buffer, +// which may not be null-terminated. Writing through this pointer will +// modify the string. +// +// string_as_array(&str)[i] is valid for 0 <= i < str.size() until the +// next call to a string method that invalidates iterators. +// +// As of 2006-04, there is no standard-blessed way of getting a +// mutable reference to a string's internal buffer. However, issue 530 +// (http://www.open-std.org/JTC1/SC22/WG21/docs/lwg-active.html#530) +// proposes this as the method. According to Matt Austern, this should +// already work on all current implementations. +inline char* string_as_array(std::string* str) { + // DO NOT USE const_cast(str->data())! See the unittest for why. + return str->empty() ? nullptr : &*str->begin(); +} + +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_STUBS_STL_UTIL_H__ diff --git a/external/include/google/protobuf/stubs/stringpiece.h b/external/include/google/protobuf/stubs/stringpiece.h new file mode 100644 index 0000000..e6f5c71 --- /dev/null +++ b/external/include/google/protobuf/stubs/stringpiece.h @@ -0,0 +1,390 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// A StringPiece points to part or all of a string, Cord, double-quoted string +// literal, or other string-like object. A StringPiece does *not* own the +// string to which it points. A StringPiece is not null-terminated. +// +// You can use StringPiece as a function or method parameter. A StringPiece +// parameter can receive a double-quoted string literal argument, a "const +// char*" argument, a string argument, or a StringPiece argument with no data +// copying. Systematic use of StringPiece for arguments reduces data +// copies and strlen() calls. +// +// Prefer passing StringPieces by value: +// void MyFunction(StringPiece arg); +// If circumstances require, you may also pass by const reference: +// void MyFunction(const StringPiece& arg); // not preferred +// Both of these have the same lifetime semantics. Passing by value +// generates slightly smaller code. For more discussion, see the thread +// go/stringpiecebyvalue on c-users. +// +// StringPiece is also suitable for local variables if you know that +// the lifetime of the underlying object is longer than the lifetime +// of your StringPiece variable. +// +// Beware of binding a StringPiece to a temporary: +// StringPiece sp = obj.MethodReturningString(); // BAD: lifetime problem +// +// This code is okay: +// string str = obj.MethodReturningString(); // str owns its contents +// StringPiece sp(str); // GOOD, because str outlives sp +// +// StringPiece is sometimes a poor choice for a return value and usually a poor +// choice for a data member. If you do use a StringPiece this way, it is your +// responsibility to ensure that the object pointed to by the StringPiece +// outlives the StringPiece. +// +// A StringPiece may represent just part of a string; thus the name "Piece". +// For example, when splitting a string, vector is a natural data +// type for the output. For another example, a Cord is a non-contiguous, +// potentially very long string-like object. The Cord class has an interface +// that iteratively provides StringPiece objects that point to the +// successive pieces of a Cord object. +// +// A StringPiece is not null-terminated. If you write code that scans a +// StringPiece, you must check its length before reading any characters. +// Common idioms that work on null-terminated strings do not work on +// StringPiece objects. +// +// There are several ways to create a null StringPiece: +// StringPiece() +// StringPiece(nullptr) +// StringPiece(nullptr, 0) +// For all of the above, sp.data() == nullptr, sp.length() == 0, +// and sp.empty() == true. Also, if you create a StringPiece with +// a non-null pointer then sp.data() != nullptr. Once created, +// sp.data() will stay either nullptr or not-nullptr, except if you call +// sp.clear() or sp.set(). +// +// Thus, you can use StringPiece(nullptr) to signal an out-of-band value +// that is different from other StringPiece values. This is similar +// to the way that const char* p1 = nullptr; is different from +// const char* p2 = "";. +// +// There are many ways to create an empty StringPiece: +// StringPiece() +// StringPiece(nullptr) +// StringPiece(nullptr, 0) +// StringPiece("") +// StringPiece("", 0) +// StringPiece("abcdef", 0) +// StringPiece("abcdef"+6, 0) +// For all of the above, sp.length() will be 0 and sp.empty() will be true. +// For some empty StringPiece values, sp.data() will be nullptr. +// For some empty StringPiece values, sp.data() will not be nullptr. +// +// Be careful not to confuse: null StringPiece and empty StringPiece. +// The set of empty StringPieces properly includes the set of null StringPieces. +// That is, every null StringPiece is an empty StringPiece, +// but some non-null StringPieces are empty Stringpieces too. +// +// All empty StringPiece values compare equal to each other. +// Even a null StringPieces compares equal to a non-null empty StringPiece: +// StringPiece() == StringPiece("", 0) +// StringPiece(nullptr) == StringPiece("abc", 0) +// StringPiece(nullptr, 0) == StringPiece("abcdef"+6, 0) +// +// Look carefully at this example: +// StringPiece("") == nullptr +// True or false? TRUE, because StringPiece::operator== converts +// the right-hand side from nullptr to StringPiece(nullptr), +// and then compares two zero-length spans of characters. +// However, we are working to make this example produce a compile error. +// +// Suppose you want to write: +// bool TestWhat?(StringPiece sp) { return sp == nullptr; } // BAD +// Do not do that. Write one of these instead: +// bool TestNull(StringPiece sp) { return sp.data() == nullptr; } +// bool TestEmpty(StringPiece sp) { return sp.empty(); } +// The intent of TestWhat? is unclear. Did you mean TestNull or TestEmpty? +// Right now, TestWhat? behaves likes TestEmpty. +// We are working to make TestWhat? produce a compile error. +// TestNull is good to test for an out-of-band signal. +// TestEmpty is good to test for an empty StringPiece. +// +// Caveats (again): +// (1) The lifetime of the pointed-to string (or piece of a string) +// must be longer than the lifetime of the StringPiece. +// (2) There may or may not be a '\0' character after the end of +// StringPiece data. +// (3) A null StringPiece is empty. +// An empty StringPiece may or may not be a null StringPiece. + +#ifndef GOOGLE_PROTOBUF_STUBS_STRINGPIECE_H_ +#define GOOGLE_PROTOBUF_STUBS_STRINGPIECE_H_ + +#include +#include +#include +#include +#include +#include + +#include + +#include + +namespace google { +namespace protobuf { +namespace stringpiece_internal { + +class PROTOBUF_EXPORT StringPiece { + public: + using traits_type = std::char_traits; + using value_type = char; + using pointer = char*; + using const_pointer = const char*; + using reference = char&; + using const_reference = const char&; + using const_iterator = const char*; + using iterator = const_iterator; + using const_reverse_iterator = std::reverse_iterator; + using reverse_iterator = const_reverse_iterator; + using size_type = size_t; + using difference_type = std::ptrdiff_t; + + private: + const char* ptr_; + size_type length_; + + static constexpr size_type kMaxSize = + (std::numeric_limits::max)(); + + static size_type CheckSize(size_type size) { +#if !defined(NDEBUG) || defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 + if (PROTOBUF_PREDICT_FALSE(size > kMaxSize)) { + // Some people grep for this message in logs + // so take care if you ever change it. + LogFatalSizeTooBig(size, "string length exceeds max size"); + } +#endif + return size; + } + + // Out-of-line error path. + static void LogFatalSizeTooBig(size_type size, const char* details); + + public: + // We provide non-explicit singleton constructors so users can pass + // in a "const char*" or a "string" wherever a "StringPiece" is + // expected. + // + // Style guide exception granted: + // http://goto/style-guide-exception-20978288 + StringPiece() : ptr_(nullptr), length_(0) {} + + StringPiece(const char* str) // NOLINT(runtime/explicit) + : ptr_(str), length_(0) { + if (str != nullptr) { + length_ = CheckSize(strlen(str)); + } + } + + template + StringPiece( // NOLINT(runtime/explicit) + const std::basic_string, Allocator>& str) + : ptr_(str.data()), length_(0) { + length_ = CheckSize(str.size()); + } + + StringPiece(const char* offset, size_type len) + : ptr_(offset), length_(CheckSize(len)) {} + + // data() may return a pointer to a buffer with embedded NULs, and the + // returned buffer may or may not be null terminated. Therefore it is + // typically a mistake to pass data() to a routine that expects a NUL + // terminated string. + const_pointer data() const { return ptr_; } + size_type size() const { return length_; } + size_type length() const { return length_; } + bool empty() const { return length_ == 0; } + + char operator[](size_type i) const { + assert(i < length_); + return ptr_[i]; + } + + void remove_prefix(size_type n) { + assert(length_ >= n); + ptr_ += n; + length_ -= n; + } + + void remove_suffix(size_type n) { + assert(length_ >= n); + length_ -= n; + } + + // returns {-1, 0, 1} + int compare(StringPiece x) const { + size_type min_size = length_ < x.length_ ? length_ : x.length_; + int r = memcmp(ptr_, x.ptr_, static_cast(min_size)); + if (r < 0) return -1; + if (r > 0) return 1; + if (length_ < x.length_) return -1; + if (length_ > x.length_) return 1; + return 0; + } + + std::string as_string() const { return ToString(); } + // We also define ToString() here, since many other string-like + // interfaces name the routine that converts to a C++ string + // "ToString", and it's confusing to have the method that does that + // for a StringPiece be called "as_string()". We also leave the + // "as_string()" method defined here for existing code. + std::string ToString() const { + if (ptr_ == nullptr) return ""; + return std::string(data(), static_cast(size())); + } + + explicit operator std::string() const { return ToString(); } + + void CopyToString(std::string* target) const; + void AppendToString(std::string* target) const; + + bool starts_with(StringPiece x) const { + return (length_ >= x.length_) && + (memcmp(ptr_, x.ptr_, static_cast(x.length_)) == 0); + } + + bool ends_with(StringPiece x) const { + return ((length_ >= x.length_) && + (memcmp(ptr_ + (length_-x.length_), x.ptr_, + static_cast(x.length_)) == 0)); + } + + // Checks whether StringPiece starts with x and if so advances the beginning + // of it to past the match. It's basically a shortcut for starts_with + // followed by remove_prefix. + bool Consume(StringPiece x); + // Like above but for the end of the string. + bool ConsumeFromEnd(StringPiece x); + + // standard STL container boilerplate + static const size_type npos; + const_iterator begin() const { return ptr_; } + const_iterator end() const { return ptr_ + length_; } + const_reverse_iterator rbegin() const { + return const_reverse_iterator(ptr_ + length_); + } + const_reverse_iterator rend() const { + return const_reverse_iterator(ptr_); + } + size_type max_size() const { return length_; } + size_type capacity() const { return length_; } + + // cpplint.py emits a false positive [build/include_what_you_use] + size_type copy(char* buf, size_type n, size_type pos = 0) const; // NOLINT + + bool contains(StringPiece s) const; + + size_type find(StringPiece s, size_type pos = 0) const; + size_type find(char c, size_type pos = 0) const; + size_type rfind(StringPiece s, size_type pos = npos) const; + size_type rfind(char c, size_type pos = npos) const; + + size_type find_first_of(StringPiece s, size_type pos = 0) const; + size_type find_first_of(char c, size_type pos = 0) const { + return find(c, pos); + } + size_type find_first_not_of(StringPiece s, size_type pos = 0) const; + size_type find_first_not_of(char c, size_type pos = 0) const; + size_type find_last_of(StringPiece s, size_type pos = npos) const; + size_type find_last_of(char c, size_type pos = npos) const { + return rfind(c, pos); + } + size_type find_last_not_of(StringPiece s, size_type pos = npos) const; + size_type find_last_not_of(char c, size_type pos = npos) const; + + StringPiece substr(size_type pos, size_type n = npos) const; +}; + +// This large function is defined inline so that in a fairly common case where +// one of the arguments is a literal, the compiler can elide a lot of the +// following comparisons. +inline bool operator==(StringPiece x, StringPiece y) { + StringPiece::size_type len = x.size(); + if (len != y.size()) { + return false; + } + + return x.data() == y.data() || len <= 0 || + memcmp(x.data(), y.data(), static_cast(len)) == 0; +} + +inline bool operator!=(StringPiece x, StringPiece y) { + return !(x == y); +} + +inline bool operator<(StringPiece x, StringPiece y) { + const StringPiece::size_type min_size = + x.size() < y.size() ? x.size() : y.size(); + const int r = memcmp(x.data(), y.data(), static_cast(min_size)); + return (r < 0) || (r == 0 && x.size() < y.size()); +} + +inline bool operator>(StringPiece x, StringPiece y) { + return y < x; +} + +inline bool operator<=(StringPiece x, StringPiece y) { + return !(x > y); +} + +inline bool operator>=(StringPiece x, StringPiece y) { + return !(x < y); +} + +// allow StringPiece to be logged +extern std::ostream& operator<<(std::ostream& o, StringPiece piece); + +} // namespace stringpiece_internal + +using ::google::protobuf::stringpiece_internal::StringPiece; + +} // namespace protobuf +} // namespace google + +GOOGLE_PROTOBUF_HASH_NAMESPACE_DECLARATION_START +template<> struct hash { + size_t operator()(const StringPiece& s) const { + size_t result = 0; + for (const char *str = s.data(), *end = str + s.size(); str < end; str++) { + result = 5 * result + static_cast(*str); + } + return result; + } +}; +GOOGLE_PROTOBUF_HASH_NAMESPACE_DECLARATION_END + +#include + +#endif // STRINGS_STRINGPIECE_H_ diff --git a/external/include/google/protobuf/stubs/strutil.h b/external/include/google/protobuf/stubs/strutil.h new file mode 100644 index 0000000..84fc232 --- /dev/null +++ b/external/include/google/protobuf/stubs/strutil.h @@ -0,0 +1,950 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// from google3/strings/strutil.h + +#ifndef GOOGLE_PROTOBUF_STUBS_STRUTIL_H__ +#define GOOGLE_PROTOBUF_STUBS_STRUTIL_H__ + +#include +#include +#include + +#include +#include +#include + +namespace google { +namespace protobuf { + +#if defined(_MSC_VER) && _MSC_VER < 1800 +#define strtoll _strtoi64 +#define strtoull _strtoui64 +#elif defined(__DECCXX) && defined(__osf__) +// HP C++ on Tru64 does not have strtoll, but strtol is already 64-bit. +#define strtoll strtol +#define strtoull strtoul +#endif + +// ---------------------------------------------------------------------- +// ascii_isalnum() +// Check if an ASCII character is alphanumeric. We can't use ctype's +// isalnum() because it is affected by locale. This function is applied +// to identifiers in the protocol buffer language, not to natural-language +// strings, so locale should not be taken into account. +// ascii_isdigit() +// Like above, but only accepts digits. +// ascii_isspace() +// Check if the character is a space character. +// ---------------------------------------------------------------------- + +inline bool ascii_isalnum(char c) { + return ('a' <= c && c <= 'z') || + ('A' <= c && c <= 'Z') || + ('0' <= c && c <= '9'); +} + +inline bool ascii_isdigit(char c) { + return ('0' <= c && c <= '9'); +} + +inline bool ascii_isspace(char c) { + return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || + c == '\r'; +} + +inline bool ascii_isupper(char c) { + return c >= 'A' && c <= 'Z'; +} + +inline bool ascii_islower(char c) { + return c >= 'a' && c <= 'z'; +} + +inline char ascii_toupper(char c) { + return ascii_islower(c) ? c - ('a' - 'A') : c; +} + +inline char ascii_tolower(char c) { + return ascii_isupper(c) ? c + ('a' - 'A') : c; +} + +inline int hex_digit_to_int(char c) { + /* Assume ASCII. */ + int x = static_cast(c); + if (x > '9') { + x += 9; + } + return x & 0xf; +} + +// ---------------------------------------------------------------------- +// HasPrefixString() +// Check if a string begins with a given prefix. +// StripPrefixString() +// Given a string and a putative prefix, returns the string minus the +// prefix string if the prefix matches, otherwise the original +// string. +// ---------------------------------------------------------------------- +inline bool HasPrefixString(StringPiece str, StringPiece prefix) { + return str.size() >= prefix.size() && + memcmp(str.data(), prefix.data(), prefix.size()) == 0; +} + +inline std::string StripPrefixString(const std::string& str, + const std::string& prefix) { + if (HasPrefixString(str, prefix)) { + return str.substr(prefix.size()); + } else { + return str; + } +} + +// ---------------------------------------------------------------------- +// HasSuffixString() +// Return true if str ends in suffix. +// StripSuffixString() +// Given a string and a putative suffix, returns the string minus the +// suffix string if the suffix matches, otherwise the original +// string. +// ---------------------------------------------------------------------- +inline bool HasSuffixString(StringPiece str, StringPiece suffix) { + return str.size() >= suffix.size() && + memcmp(str.data() + str.size() - suffix.size(), suffix.data(), + suffix.size()) == 0; +} + +inline std::string StripSuffixString(const std::string& str, + const std::string& suffix) { + if (HasSuffixString(str, suffix)) { + return str.substr(0, str.size() - suffix.size()); + } else { + return str; + } +} + +// ---------------------------------------------------------------------- +// ReplaceCharacters +// Replaces any occurrence of the character 'remove' (or the characters +// in 'remove') with the character 'replacewith'. +// Good for keeping html characters or protocol characters (\t) out +// of places where they might cause a problem. +// StripWhitespace +// Removes whitespaces from both ends of the given string. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT void ReplaceCharacters(std::string* s, const char* remove, + char replacewith); + +PROTOBUF_EXPORT void StripWhitespace(std::string* s); + +// ---------------------------------------------------------------------- +// LowerString() +// UpperString() +// ToUpper() +// Convert the characters in "s" to lowercase or uppercase. ASCII-only: +// these functions intentionally ignore locale because they are applied to +// identifiers used in the Protocol Buffer language, not to natural-language +// strings. +// ---------------------------------------------------------------------- + +inline void LowerString(std::string* s) { + std::string::iterator end = s->end(); + for (std::string::iterator i = s->begin(); i != end; ++i) { + // tolower() changes based on locale. We don't want this! + if ('A' <= *i && *i <= 'Z') *i += 'a' - 'A'; + } +} + +inline void UpperString(std::string* s) { + std::string::iterator end = s->end(); + for (std::string::iterator i = s->begin(); i != end; ++i) { + // toupper() changes based on locale. We don't want this! + if ('a' <= *i && *i <= 'z') *i += 'A' - 'a'; + } +} + +inline void ToUpper(std::string* s) { UpperString(s); } + +inline std::string ToUpper(const std::string& s) { + std::string out = s; + UpperString(&out); + return out; +} + +// ---------------------------------------------------------------------- +// StringReplace() +// Give me a string and two patterns "old" and "new", and I replace +// the first instance of "old" in the string with "new", if it +// exists. RETURN a new string, regardless of whether the replacement +// happened or not. +// ---------------------------------------------------------------------- + +PROTOBUF_EXPORT std::string StringReplace(const std::string& s, + const std::string& oldsub, + const std::string& newsub, + bool replace_all); + +// ---------------------------------------------------------------------- +// SplitStringUsing() +// Split a string using a character delimiter. Append the components +// to 'result'. If there are consecutive delimiters, this function skips +// over all of them. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT void SplitStringUsing(StringPiece full, const char* delim, + std::vector* res); + +// Split a string using one or more byte delimiters, presented +// as a nul-terminated c string. Append the components to 'result'. +// If there are consecutive delimiters, this function will return +// corresponding empty strings. If you want to drop the empty +// strings, try SplitStringUsing(). +// +// If "full" is the empty string, yields an empty string as the only value. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT void SplitStringAllowEmpty(StringPiece full, const char* delim, + std::vector* result); + +// ---------------------------------------------------------------------- +// Split() +// Split a string using a character delimiter. +// ---------------------------------------------------------------------- +inline std::vector Split(StringPiece full, const char* delim, + bool skip_empty = true) { + std::vector result; + if (skip_empty) { + SplitStringUsing(full, delim, &result); + } else { + SplitStringAllowEmpty(full, delim, &result); + } + return result; +} + +// ---------------------------------------------------------------------- +// JoinStrings() +// These methods concatenate a vector of strings into a C++ string, using +// the C-string "delim" as a separator between components. There are two +// flavors of the function, one flavor returns the concatenated string, +// another takes a pointer to the target string. In the latter case the +// target string is cleared and overwritten. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT void JoinStrings(const std::vector& components, + const char* delim, std::string* result); + +inline std::string JoinStrings(const std::vector& components, + const char* delim) { + std::string result; + JoinStrings(components, delim, &result); + return result; +} + +// ---------------------------------------------------------------------- +// UnescapeCEscapeSequences() +// Copies "source" to "dest", rewriting C-style escape sequences +// -- '\n', '\r', '\\', '\ooo', etc -- to their ASCII +// equivalents. "dest" must be sufficiently large to hold all +// the characters in the rewritten string (i.e. at least as large +// as strlen(source) + 1 should be safe, since the replacements +// are always shorter than the original escaped sequences). It's +// safe for source and dest to be the same. RETURNS the length +// of dest. +// +// It allows hex sequences \xhh, or generally \xhhhhh with an +// arbitrary number of hex digits, but all of them together must +// specify a value of a single byte (e.g. \x0045 is equivalent +// to \x45, and \x1234 is erroneous). +// +// It also allows escape sequences of the form \uhhhh (exactly four +// hex digits, upper or lower case) or \Uhhhhhhhh (exactly eight +// hex digits, upper or lower case) to specify a Unicode code +// point. The dest array will contain the UTF8-encoded version of +// that code-point (e.g., if source contains \u2019, then dest will +// contain the three bytes 0xE2, 0x80, and 0x99). +// +// Errors: In the first form of the call, errors are reported with +// LOG(ERROR). The same is true for the second form of the call if +// the pointer to the string std::vector is nullptr; otherwise, error +// messages are stored in the std::vector. In either case, the effect on +// the dest array is not defined, but rest of the source will be +// processed. +// ---------------------------------------------------------------------- + +PROTOBUF_EXPORT int UnescapeCEscapeSequences(const char* source, char* dest); +PROTOBUF_EXPORT int UnescapeCEscapeSequences(const char* source, char* dest, + std::vector* errors); + +// ---------------------------------------------------------------------- +// UnescapeCEscapeString() +// This does the same thing as UnescapeCEscapeSequences, but creates +// a new string. The caller does not need to worry about allocating +// a dest buffer. This should be used for non performance critical +// tasks such as printing debug messages. It is safe for src and dest +// to be the same. +// +// The second call stores its errors in a supplied string vector. +// If the string vector pointer is nullptr, it reports the errors with LOG(). +// +// In the first and second calls, the length of dest is returned. In the +// the third call, the new string is returned. +// ---------------------------------------------------------------------- + +PROTOBUF_EXPORT int UnescapeCEscapeString(const std::string& src, + std::string* dest); +PROTOBUF_EXPORT int UnescapeCEscapeString(const std::string& src, + std::string* dest, + std::vector* errors); +PROTOBUF_EXPORT std::string UnescapeCEscapeString(const std::string& src); + +// ---------------------------------------------------------------------- +// CEscape() +// Escapes 'src' using C-style escape sequences and returns the resulting +// string. +// +// Escaped chars: \n, \r, \t, ", ', \, and !isprint(). +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT std::string CEscape(const std::string& src); + +// ---------------------------------------------------------------------- +// CEscapeAndAppend() +// Escapes 'src' using C-style escape sequences, and appends the escaped +// string to 'dest'. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT void CEscapeAndAppend(StringPiece src, std::string* dest); + +namespace strings { +// Like CEscape() but does not escape bytes with the upper bit set. +PROTOBUF_EXPORT std::string Utf8SafeCEscape(const std::string& src); + +// Like CEscape() but uses hex (\x) escapes instead of octals. +PROTOBUF_EXPORT std::string CHexEscape(const std::string& src); +} // namespace strings + +// ---------------------------------------------------------------------- +// strto32() +// strtou32() +// strto64() +// strtou64() +// Architecture-neutral plug compatible replacements for strtol() and +// strtoul(). Long's have different lengths on ILP-32 and LP-64 +// platforms, so using these is safer, from the point of view of +// overflow behavior, than using the standard libc functions. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT int32 strto32_adaptor(const char* nptr, char** endptr, + int base); +PROTOBUF_EXPORT uint32 strtou32_adaptor(const char* nptr, char** endptr, + int base); + +inline int32 strto32(const char *nptr, char **endptr, int base) { + if (sizeof(int32) == sizeof(long)) + return strtol(nptr, endptr, base); + else + return strto32_adaptor(nptr, endptr, base); +} + +inline uint32 strtou32(const char *nptr, char **endptr, int base) { + if (sizeof(uint32) == sizeof(unsigned long)) + return strtoul(nptr, endptr, base); + else + return strtou32_adaptor(nptr, endptr, base); +} + +// For now, long long is 64-bit on all the platforms we care about, so these +// functions can simply pass the call to strto[u]ll. +inline int64 strto64(const char *nptr, char **endptr, int base) { + static_assert(sizeof(int64) == sizeof(long long), + "sizeof_int64_is_not_sizeof_long_long"); + return strtoll(nptr, endptr, base); +} + +inline uint64 strtou64(const char *nptr, char **endptr, int base) { + static_assert(sizeof(uint64) == sizeof(unsigned long long), + "sizeof_uint64_is_not_sizeof_long_long"); + return strtoull(nptr, endptr, base); +} + +// ---------------------------------------------------------------------- +// safe_strtob() +// safe_strto32() +// safe_strtou32() +// safe_strto64() +// safe_strtou64() +// safe_strtof() +// safe_strtod() +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT bool safe_strtob(StringPiece str, bool* value); + +PROTOBUF_EXPORT bool safe_strto32(const std::string& str, int32* value); +PROTOBUF_EXPORT bool safe_strtou32(const std::string& str, uint32* value); +inline bool safe_strto32(const char* str, int32* value) { + return safe_strto32(std::string(str), value); +} +inline bool safe_strto32(StringPiece str, int32* value) { + return safe_strto32(str.ToString(), value); +} +inline bool safe_strtou32(const char* str, uint32* value) { + return safe_strtou32(std::string(str), value); +} +inline bool safe_strtou32(StringPiece str, uint32* value) { + return safe_strtou32(str.ToString(), value); +} + +PROTOBUF_EXPORT bool safe_strto64(const std::string& str, int64* value); +PROTOBUF_EXPORT bool safe_strtou64(const std::string& str, uint64* value); +inline bool safe_strto64(const char* str, int64* value) { + return safe_strto64(std::string(str), value); +} +inline bool safe_strto64(StringPiece str, int64* value) { + return safe_strto64(str.ToString(), value); +} +inline bool safe_strtou64(const char* str, uint64* value) { + return safe_strtou64(std::string(str), value); +} +inline bool safe_strtou64(StringPiece str, uint64* value) { + return safe_strtou64(str.ToString(), value); +} + +PROTOBUF_EXPORT bool safe_strtof(const char* str, float* value); +PROTOBUF_EXPORT bool safe_strtod(const char* str, double* value); +inline bool safe_strtof(const std::string& str, float* value) { + return safe_strtof(str.c_str(), value); +} +inline bool safe_strtod(const std::string& str, double* value) { + return safe_strtod(str.c_str(), value); +} +inline bool safe_strtof(StringPiece str, float* value) { + return safe_strtof(str.ToString(), value); +} +inline bool safe_strtod(StringPiece str, double* value) { + return safe_strtod(str.ToString(), value); +} + +// ---------------------------------------------------------------------- +// FastIntToBuffer() +// FastHexToBuffer() +// FastHex64ToBuffer() +// FastHex32ToBuffer() +// FastTimeToBuffer() +// These are intended for speed. FastIntToBuffer() assumes the +// integer is non-negative. FastHexToBuffer() puts output in +// hex rather than decimal. FastTimeToBuffer() puts the output +// into RFC822 format. +// +// FastHex64ToBuffer() puts a 64-bit unsigned value in hex-format, +// padded to exactly 16 bytes (plus one byte for '\0') +// +// FastHex32ToBuffer() puts a 32-bit unsigned value in hex-format, +// padded to exactly 8 bytes (plus one byte for '\0') +// +// All functions take the output buffer as an arg. +// They all return a pointer to the beginning of the output, +// which may not be the beginning of the input buffer. +// ---------------------------------------------------------------------- + +// Suggested buffer size for FastToBuffer functions. Also works with +// DoubleToBuffer() and FloatToBuffer(). +static const int kFastToBufferSize = 32; + +PROTOBUF_EXPORT char* FastInt32ToBuffer(int32 i, char* buffer); +PROTOBUF_EXPORT char* FastInt64ToBuffer(int64 i, char* buffer); +char* FastUInt32ToBuffer(uint32 i, char* buffer); // inline below +char* FastUInt64ToBuffer(uint64 i, char* buffer); // inline below +PROTOBUF_EXPORT char* FastHexToBuffer(int i, char* buffer); +PROTOBUF_EXPORT char* FastHex64ToBuffer(uint64 i, char* buffer); +PROTOBUF_EXPORT char* FastHex32ToBuffer(uint32 i, char* buffer); + +// at least 22 bytes long +inline char* FastIntToBuffer(int i, char* buffer) { + return (sizeof(i) == 4 ? + FastInt32ToBuffer(i, buffer) : FastInt64ToBuffer(i, buffer)); +} +inline char* FastUIntToBuffer(unsigned int i, char* buffer) { + return (sizeof(i) == 4 ? + FastUInt32ToBuffer(i, buffer) : FastUInt64ToBuffer(i, buffer)); +} +inline char* FastLongToBuffer(long i, char* buffer) { + return (sizeof(i) == 4 ? + FastInt32ToBuffer(i, buffer) : FastInt64ToBuffer(i, buffer)); +} +inline char* FastULongToBuffer(unsigned long i, char* buffer) { + return (sizeof(i) == 4 ? + FastUInt32ToBuffer(i, buffer) : FastUInt64ToBuffer(i, buffer)); +} + +// ---------------------------------------------------------------------- +// FastInt32ToBufferLeft() +// FastUInt32ToBufferLeft() +// FastInt64ToBufferLeft() +// FastUInt64ToBufferLeft() +// +// Like the Fast*ToBuffer() functions above, these are intended for speed. +// Unlike the Fast*ToBuffer() functions, however, these functions write +// their output to the beginning of the buffer (hence the name, as the +// output is left-aligned). The caller is responsible for ensuring that +// the buffer has enough space to hold the output. +// +// Returns a pointer to the end of the string (i.e. the null character +// terminating the string). +// ---------------------------------------------------------------------- + +PROTOBUF_EXPORT char* FastInt32ToBufferLeft(int32 i, char* buffer); +PROTOBUF_EXPORT char* FastUInt32ToBufferLeft(uint32 i, char* buffer); +PROTOBUF_EXPORT char* FastInt64ToBufferLeft(int64 i, char* buffer); +PROTOBUF_EXPORT char* FastUInt64ToBufferLeft(uint64 i, char* buffer); + +// Just define these in terms of the above. +inline char* FastUInt32ToBuffer(uint32 i, char* buffer) { + FastUInt32ToBufferLeft(i, buffer); + return buffer; +} +inline char* FastUInt64ToBuffer(uint64 i, char* buffer) { + FastUInt64ToBufferLeft(i, buffer); + return buffer; +} + +inline std::string SimpleBtoa(bool value) { return value ? "true" : "false"; } + +// ---------------------------------------------------------------------- +// SimpleItoa() +// Description: converts an integer to a string. +// +// Return value: string +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT std::string SimpleItoa(int i); +PROTOBUF_EXPORT std::string SimpleItoa(unsigned int i); +PROTOBUF_EXPORT std::string SimpleItoa(long i); +PROTOBUF_EXPORT std::string SimpleItoa(unsigned long i); +PROTOBUF_EXPORT std::string SimpleItoa(long long i); +PROTOBUF_EXPORT std::string SimpleItoa(unsigned long long i); + +// ---------------------------------------------------------------------- +// SimpleDtoa() +// SimpleFtoa() +// DoubleToBuffer() +// FloatToBuffer() +// Description: converts a double or float to a string which, if +// passed to NoLocaleStrtod(), will produce the exact same original double +// (except in case of NaN; all NaNs are considered the same value). +// We try to keep the string short but it's not guaranteed to be as +// short as possible. +// +// DoubleToBuffer() and FloatToBuffer() write the text to the given +// buffer and return it. The buffer must be at least +// kDoubleToBufferSize bytes for doubles and kFloatToBufferSize +// bytes for floats. kFastToBufferSize is also guaranteed to be large +// enough to hold either. +// +// Return value: string +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT std::string SimpleDtoa(double value); +PROTOBUF_EXPORT std::string SimpleFtoa(float value); + +PROTOBUF_EXPORT char* DoubleToBuffer(double i, char* buffer); +PROTOBUF_EXPORT char* FloatToBuffer(float i, char* buffer); + +// In practice, doubles should never need more than 24 bytes and floats +// should never need more than 14 (including null terminators), but we +// overestimate to be safe. +static const int kDoubleToBufferSize = 32; +static const int kFloatToBufferSize = 24; + +namespace strings { + +enum PadSpec { + NO_PAD = 1, + ZERO_PAD_2, + ZERO_PAD_3, + ZERO_PAD_4, + ZERO_PAD_5, + ZERO_PAD_6, + ZERO_PAD_7, + ZERO_PAD_8, + ZERO_PAD_9, + ZERO_PAD_10, + ZERO_PAD_11, + ZERO_PAD_12, + ZERO_PAD_13, + ZERO_PAD_14, + ZERO_PAD_15, + ZERO_PAD_16, +}; + +struct Hex { + uint64 value; + enum PadSpec spec; + template + explicit Hex(Int v, PadSpec s = NO_PAD) + : spec(s) { + // Prevent sign-extension by casting integers to + // their unsigned counterparts. +#ifdef LANG_CXX11 + static_assert( + sizeof(v) == 1 || sizeof(v) == 2 || sizeof(v) == 4 || sizeof(v) == 8, + "Unknown integer type"); +#endif + value = sizeof(v) == 1 ? static_cast(v) + : sizeof(v) == 2 ? static_cast(v) + : sizeof(v) == 4 ? static_cast(v) + : static_cast(v); + } +}; + +struct PROTOBUF_EXPORT AlphaNum { + const char *piece_data_; // move these to string_ref eventually + size_t piece_size_; // move these to string_ref eventually + + char digits[kFastToBufferSize]; + + // No bool ctor -- bools convert to an integral type. + // A bool ctor would also convert incoming pointers (bletch). + + AlphaNum(int i32) + : piece_data_(digits), + piece_size_(FastInt32ToBufferLeft(i32, digits) - &digits[0]) {} + AlphaNum(unsigned int u32) + : piece_data_(digits), + piece_size_(FastUInt32ToBufferLeft(u32, digits) - &digits[0]) {} + AlphaNum(long long i64) + : piece_data_(digits), + piece_size_(FastInt64ToBufferLeft(i64, digits) - &digits[0]) {} + AlphaNum(unsigned long long u64) + : piece_data_(digits), + piece_size_(FastUInt64ToBufferLeft(u64, digits) - &digits[0]) {} + + // Note: on some architectures, "long" is only 32 bits, not 64, but the + // performance hit of using FastInt64ToBufferLeft to handle 32-bit values + // is quite minor. + AlphaNum(long i64) + : piece_data_(digits), + piece_size_(FastInt64ToBufferLeft(i64, digits) - &digits[0]) {} + AlphaNum(unsigned long u64) + : piece_data_(digits), + piece_size_(FastUInt64ToBufferLeft(u64, digits) - &digits[0]) {} + + AlphaNum(float f) + : piece_data_(digits), piece_size_(strlen(FloatToBuffer(f, digits))) {} + AlphaNum(double f) + : piece_data_(digits), piece_size_(strlen(DoubleToBuffer(f, digits))) {} + + AlphaNum(Hex hex); + + AlphaNum(const char* c_str) + : piece_data_(c_str), piece_size_(strlen(c_str)) {} + // TODO: Add a string_ref constructor, eventually + // AlphaNum(const StringPiece &pc) : piece(pc) {} + + AlphaNum(const std::string& str) + : piece_data_(str.data()), piece_size_(str.size()) {} + + AlphaNum(StringPiece str) + : piece_data_(str.data()), piece_size_(str.size()) {} + + size_t size() const { return piece_size_; } + const char *data() const { return piece_data_; } + + private: + // Use ":" not ':' + AlphaNum(char c); // NOLINT(runtime/explicit) + + // Disallow copy and assign. + AlphaNum(const AlphaNum&); + void operator=(const AlphaNum&); +}; + +} // namespace strings + +using strings::AlphaNum; + +// ---------------------------------------------------------------------- +// StrCat() +// This merges the given strings or numbers, with no delimiter. This +// is designed to be the fastest possible way to construct a string out +// of a mix of raw C strings, strings, bool values, +// and numeric values. +// +// Don't use this for user-visible strings. The localization process +// works poorly on strings built up out of fragments. +// +// For clarity and performance, don't use StrCat when appending to a +// string. In particular, avoid using any of these (anti-)patterns: +// str.append(StrCat(...) +// str += StrCat(...) +// str = StrCat(str, ...) +// where the last is the worse, with the potential to change a loop +// from a linear time operation with O(1) dynamic allocations into a +// quadratic time operation with O(n) dynamic allocations. StrAppend +// is a better choice than any of the above, subject to the restriction +// of StrAppend(&str, a, b, c, ...) that none of the a, b, c, ... may +// be a reference into str. +// ---------------------------------------------------------------------- + +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b); +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b, + const AlphaNum& c); +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b, + const AlphaNum& c, const AlphaNum& d); +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b, + const AlphaNum& c, const AlphaNum& d, + const AlphaNum& e); +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b, + const AlphaNum& c, const AlphaNum& d, + const AlphaNum& e, const AlphaNum& f); +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b, + const AlphaNum& c, const AlphaNum& d, + const AlphaNum& e, const AlphaNum& f, + const AlphaNum& g); +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b, + const AlphaNum& c, const AlphaNum& d, + const AlphaNum& e, const AlphaNum& f, + const AlphaNum& g, const AlphaNum& h); +PROTOBUF_EXPORT std::string StrCat(const AlphaNum& a, const AlphaNum& b, + const AlphaNum& c, const AlphaNum& d, + const AlphaNum& e, const AlphaNum& f, + const AlphaNum& g, const AlphaNum& h, + const AlphaNum& i); + +inline std::string StrCat(const AlphaNum& a) { + return std::string(a.data(), a.size()); +} + +// ---------------------------------------------------------------------- +// StrAppend() +// Same as above, but adds the output to the given string. +// WARNING: For speed, StrAppend does not try to check each of its input +// arguments to be sure that they are not a subset of the string being +// appended to. That is, while this will work: +// +// string s = "foo"; +// s += s; +// +// This will not (necessarily) work: +// +// string s = "foo"; +// StrAppend(&s, s); +// +// Note: while StrCat supports appending up to 9 arguments, StrAppend +// is currently limited to 4. That's rarely an issue except when +// automatically transforming StrCat to StrAppend, and can easily be +// worked around as consecutive calls to StrAppend are quite efficient. +// ---------------------------------------------------------------------- + +PROTOBUF_EXPORT void StrAppend(std::string* dest, const AlphaNum& a); +PROTOBUF_EXPORT void StrAppend(std::string* dest, const AlphaNum& a, + const AlphaNum& b); +PROTOBUF_EXPORT void StrAppend(std::string* dest, const AlphaNum& a, + const AlphaNum& b, const AlphaNum& c); +PROTOBUF_EXPORT void StrAppend(std::string* dest, const AlphaNum& a, + const AlphaNum& b, const AlphaNum& c, + const AlphaNum& d); + +// ---------------------------------------------------------------------- +// Join() +// These methods concatenate a range of components into a C++ string, using +// the C-string "delim" as a separator between components. +// ---------------------------------------------------------------------- +template +void Join(Iterator start, Iterator end, const char* delim, + std::string* result) { + for (Iterator it = start; it != end; ++it) { + if (it != start) { + result->append(delim); + } + StrAppend(result, *it); + } +} + +template +std::string Join(const Range& components, const char* delim) { + std::string result; + Join(components.begin(), components.end(), delim, &result); + return result; +} + +// ---------------------------------------------------------------------- +// ToHex() +// Return a lower-case hex string representation of the given integer. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT std::string ToHex(uint64 num); + +// ---------------------------------------------------------------------- +// GlobalReplaceSubstring() +// Replaces all instances of a substring in a string. Does nothing +// if 'substring' is empty. Returns the number of replacements. +// +// NOTE: The string pieces must not overlap s. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT int GlobalReplaceSubstring(const std::string& substring, + const std::string& replacement, + std::string* s); + +// ---------------------------------------------------------------------- +// Base64Unescape() +// Converts "src" which is encoded in Base64 to its binary equivalent and +// writes it to "dest". If src contains invalid characters, dest is cleared +// and the function returns false. Returns true on success. +// ---------------------------------------------------------------------- +PROTOBUF_EXPORT bool Base64Unescape(StringPiece src, std::string* dest); + +// ---------------------------------------------------------------------- +// WebSafeBase64Unescape() +// This is a variation of Base64Unescape which uses '-' instead of '+', and +// '_' instead of '/'. src is not null terminated, instead specify len. I +// recommend that slen +struct identity_ { + typedef T type; +}; + +// integral_constant, defined in tr1, is a wrapper for an integer +// value. We don't really need this generality; we could get away +// with hardcoding the integer type to bool. We use the fully +// general integer_constant for compatibility with tr1. + +template +struct integral_constant { + static const T value = v; + typedef T value_type; + typedef integral_constant type; +}; + +template const T integral_constant::value; + + +// Abbreviations: true_type and false_type are structs that represent boolean +// true and false values. Also define the boost::mpl versions of those names, +// true_ and false_. +typedef integral_constant true_type; +typedef integral_constant false_type; +typedef true_type true_; +typedef false_type false_; + +// if_ is a templatized conditional statement. +// if_ is a compile time evaluation of cond. +// if_<>::type contains A if cond is true, B otherwise. +template +struct if_{ + typedef A type; +}; + +template +struct if_ { + typedef B type; +}; + + +// type_equals_ is a template type comparator, similar to Loki IsSameType. +// type_equals_::value is true iff "A" is the same type as "B". +// +// New code should prefer base::is_same, defined in base/type_traits.h. +// It is functionally identical, but is_same is the standard spelling. +template +struct type_equals_ : public false_ { +}; + +template +struct type_equals_ : public true_ { +}; + +// and_ is a template && operator. +// and_::value evaluates "A::value && B::value". +template +struct and_ : public integral_constant { +}; + +// or_ is a template || operator. +// or_::value evaluates "A::value || B::value". +template +struct or_ : public integral_constant { +}; + + +} // namespace internal +} // namespace protobuf +} // namespace google + +#endif // GOOGLE_PROTOBUF_TEMPLATE_UTIL_H_ diff --git a/external/include/google/protobuf/text_format.h b/external/include/google/protobuf/text_format.h new file mode 100644 index 0000000..ce4d1f4 --- /dev/null +++ b/external/include/google/protobuf/text_format.h @@ -0,0 +1,661 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: jschorr@google.com (Joseph Schorr) +// Based on original Protocol Buffers design by +// Sanjay Ghemawat, Jeff Dean, and others. +// +// Utilities for printing and parsing protocol messages in a human-readable, +// text-based format. + +#ifndef GOOGLE_PROTOBUF_TEXT_FORMAT_H__ +#define GOOGLE_PROTOBUF_TEXT_FORMAT_H__ + +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + +namespace google { +namespace protobuf { + +namespace io { +class ErrorCollector; // tokenizer.h +} + +// This class implements protocol buffer text format, colloquially known as text +// proto. Printing and parsing protocol messages in text format is useful for +// debugging and human editing of messages. +// +// This class is really a namespace that contains only static methods. +class PROTOBUF_EXPORT TextFormat { + public: + // Outputs a textual representation of the given message to the given + // output stream. Returns false if printing fails. + static bool Print(const Message& message, io::ZeroCopyOutputStream* output); + + // Print the fields in an UnknownFieldSet. They are printed by tag number + // only. Embedded messages are heuristically identified by attempting to + // parse them. Returns false if printing fails. + static bool PrintUnknownFields(const UnknownFieldSet& unknown_fields, + io::ZeroCopyOutputStream* output); + + // Like Print(), but outputs directly to a string. + // Note: output will be cleared prior to printing, and will be left empty + // even if printing fails. Returns false if printing fails. + static bool PrintToString(const Message& message, std::string* output); + + // Like PrintUnknownFields(), but outputs directly to a string. Returns + // false if printing fails. + static bool PrintUnknownFieldsToString(const UnknownFieldSet& unknown_fields, + std::string* output); + + // Outputs a textual representation of the value of the field supplied on + // the message supplied. For non-repeated fields, an index of -1 must + // be supplied. Note that this method will print the default value for a + // field if it is not set. + static void PrintFieldValueToString(const Message& message, + const FieldDescriptor* field, int index, + std::string* output); + + class PROTOBUF_EXPORT BaseTextGenerator { + public: + virtual ~BaseTextGenerator(); + + virtual void Indent() {} + virtual void Outdent() {} + // Returns the current indentation size in characters. + virtual size_t GetCurrentIndentationSize() const { return 0; } + + // Print text to the output stream. + virtual void Print(const char* text, size_t size) = 0; + + void PrintString(const std::string& str) { Print(str.data(), str.size()); } + + template + void PrintLiteral(const char (&text)[n]) { + Print(text, n - 1); // n includes the terminating zero character. + } + }; + + // The default printer that converts scalar values from fields into their + // string representation. + // You can derive from this FastFieldValuePrinter if you want to have fields + // to be printed in a different way and register it at the Printer. + class PROTOBUF_EXPORT FastFieldValuePrinter { + public: + FastFieldValuePrinter(); + virtual ~FastFieldValuePrinter(); + virtual void PrintBool(bool val, BaseTextGenerator* generator) const; + virtual void PrintInt32(int32 val, BaseTextGenerator* generator) const; + virtual void PrintUInt32(uint32 val, BaseTextGenerator* generator) const; + virtual void PrintInt64(int64 val, BaseTextGenerator* generator) const; + virtual void PrintUInt64(uint64 val, BaseTextGenerator* generator) const; + virtual void PrintFloat(float val, BaseTextGenerator* generator) const; + virtual void PrintDouble(double val, BaseTextGenerator* generator) const; + virtual void PrintString(const std::string& val, + BaseTextGenerator* generator) const; + virtual void PrintBytes(const std::string& val, + BaseTextGenerator* generator) const; + virtual void PrintEnum(int32 val, const std::string& name, + BaseTextGenerator* generator) const; + virtual void PrintFieldName(const Message& message, int field_index, + int field_count, const Reflection* reflection, + const FieldDescriptor* field, + BaseTextGenerator* generator) const; + virtual void PrintFieldName(const Message& message, + const Reflection* reflection, + const FieldDescriptor* field, + BaseTextGenerator* generator) const; + virtual void PrintMessageStart(const Message& message, int field_index, + int field_count, bool single_line_mode, + BaseTextGenerator* generator) const; + // Allows to override the logic on how to print the content of a message. + // Return false to use the default printing logic. Note that it is legal for + // this function to print something and then return false to use the default + // content printing (although at that point it would behave similarly to + // PrintMessageStart). + virtual bool PrintMessageContent(const Message& message, int field_index, + int field_count, bool single_line_mode, + BaseTextGenerator* generator) const; + virtual void PrintMessageEnd(const Message& message, int field_index, + int field_count, bool single_line_mode, + BaseTextGenerator* generator) const; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FastFieldValuePrinter); + }; + + // Deprecated: please use FastFieldValuePrinter instead. + class PROTOBUF_EXPORT FieldValuePrinter { + public: + FieldValuePrinter(); + virtual ~FieldValuePrinter(); + virtual std::string PrintBool(bool val) const; + virtual std::string PrintInt32(int32 val) const; + virtual std::string PrintUInt32(uint32 val) const; + virtual std::string PrintInt64(int64 val) const; + virtual std::string PrintUInt64(uint64 val) const; + virtual std::string PrintFloat(float val) const; + virtual std::string PrintDouble(double val) const; + virtual std::string PrintString(const std::string& val) const; + virtual std::string PrintBytes(const std::string& val) const; + virtual std::string PrintEnum(int32 val, const std::string& name) const; + virtual std::string PrintFieldName(const Message& message, + const Reflection* reflection, + const FieldDescriptor* field) const; + virtual std::string PrintMessageStart(const Message& message, + int field_index, int field_count, + bool single_line_mode) const; + virtual std::string PrintMessageEnd(const Message& message, int field_index, + int field_count, + bool single_line_mode) const; + + private: + FastFieldValuePrinter delegate_; + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FieldValuePrinter); + }; + + class PROTOBUF_EXPORT MessagePrinter { + public: + MessagePrinter() {} + virtual ~MessagePrinter() {} + virtual void Print(const Message& message, bool single_line_mode, + BaseTextGenerator* generator) const = 0; + + private: + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(MessagePrinter); + }; + + // Interface that Printers or Parsers can use to find extensions, or types + // referenced in Any messages. + class PROTOBUF_EXPORT Finder { + public: + virtual ~Finder(); + + // Try to find an extension of *message by fully-qualified field + // name. Returns NULL if no extension is known for this name or number. + // The base implementation uses the extensions already known by the message. + virtual const FieldDescriptor* FindExtension(Message* message, + const std::string& name) const; + + // Similar to FindExtension, but uses a Descriptor and the extension number + // instead of using a Message and the name when doing the look up. + virtual const FieldDescriptor* FindExtensionByNumber( + const Descriptor* descriptor, int number) const; + + // Find the message type for an Any proto. + // Returns NULL if no message is known for this name. + // The base implementation only accepts prefixes of type.googleprod.com/ or + // type.googleapis.com/, and searches the DescriptorPool of the parent + // message. + virtual const Descriptor* FindAnyType(const Message& message, + const std::string& prefix, + const std::string& name) const; + + // Find the message factory for the given extension field. This can be used + // to generalize the Parser to add extension fields to a message in the same + // way as the "input" message for the Parser. + virtual MessageFactory* FindExtensionFactory( + const FieldDescriptor* field) const; + }; + + // Class for those users which require more fine-grained control over how + // a protobuffer message is printed out. + class PROTOBUF_EXPORT Printer { + public: + Printer(); + + // Like TextFormat::Print + bool Print(const Message& message, io::ZeroCopyOutputStream* output) const; + // Like TextFormat::PrintUnknownFields + bool PrintUnknownFields(const UnknownFieldSet& unknown_fields, + io::ZeroCopyOutputStream* output) const; + // Like TextFormat::PrintToString + bool PrintToString(const Message& message, std::string* output) const; + // Like TextFormat::PrintUnknownFieldsToString + bool PrintUnknownFieldsToString(const UnknownFieldSet& unknown_fields, + std::string* output) const; + // Like TextFormat::PrintFieldValueToString + void PrintFieldValueToString(const Message& message, + const FieldDescriptor* field, int index, + std::string* output) const; + + // Adjust the initial indent level of all output. Each indent level is + // equal to two spaces. + void SetInitialIndentLevel(int indent_level) { + initial_indent_level_ = indent_level; + } + + // If printing in single line mode, then the entire message will be output + // on a single line with no line breaks. + void SetSingleLineMode(bool single_line_mode) { + single_line_mode_ = single_line_mode; + } + + bool IsInSingleLineMode() const { return single_line_mode_; } + + // If use_field_number is true, uses field number instead of field name. + void SetUseFieldNumber(bool use_field_number) { + use_field_number_ = use_field_number; + } + + // Set true to print repeated primitives in a format like: + // field_name: [1, 2, 3, 4] + // instead of printing each value on its own line. Short format applies + // only to primitive values -- i.e. everything except strings and + // sub-messages/groups. + void SetUseShortRepeatedPrimitives(bool use_short_repeated_primitives) { + use_short_repeated_primitives_ = use_short_repeated_primitives; + } + + // Set true to output UTF-8 instead of ASCII. The only difference + // is that bytes >= 0x80 in string fields will not be escaped, + // because they are assumed to be part of UTF-8 multi-byte + // sequences. This will change the default FastFieldValuePrinter. + void SetUseUtf8StringEscaping(bool as_utf8); + + // Set the default FastFieldValuePrinter that is used for all fields that + // don't have a field-specific printer registered. + // Takes ownership of the printer. + void SetDefaultFieldValuePrinter(const FastFieldValuePrinter* printer); + + PROTOBUF_DEPRECATED_MSG("Please use FastFieldValuePrinter") + void SetDefaultFieldValuePrinter(const FieldValuePrinter* printer); + + // Sets whether we want to hide unknown fields or not. + // Usually unknown fields are printed in a generic way that includes the + // tag number of the field instead of field name. However, sometimes it + // is useful to be able to print the message without unknown fields (e.g. + // for the python protobuf version to maintain consistency between its pure + // python and c++ implementations). + void SetHideUnknownFields(bool hide) { hide_unknown_fields_ = hide; } + + // If print_message_fields_in_index_order is true, fields of a proto message + // will be printed using the order defined in source code instead of the + // field number, extensions will be printed at the end of the message + // and their relative order is determined by the extension number. + // By default, use the field number order. + void SetPrintMessageFieldsInIndexOrder( + bool print_message_fields_in_index_order) { + print_message_fields_in_index_order_ = + print_message_fields_in_index_order; + } + + // If expand==true, expand google.protobuf.Any payloads. The output + // will be of form + // [type_url] { } + // + // If expand==false, print Any using the default printer. The output will + // look like + // type_url: "" value: "serialized_content" + void SetExpandAny(bool expand) { expand_any_ = expand; } + + // Set how parser finds message for Any payloads. + void SetFinder(const Finder* finder) { finder_ = finder; } + + // If non-zero, we truncate all string fields that are longer than + // this threshold. This is useful when the proto message has very long + // strings, e.g., dump of encoded image file. + // + // NOTE(hfgong): Setting a non-zero value breaks round-trip safe + // property of TextFormat::Printer. That is, from the printed message, we + // cannot fully recover the original string field any more. + void SetTruncateStringFieldLongerThan( + const int64 truncate_string_field_longer_than) { + truncate_string_field_longer_than_ = truncate_string_field_longer_than; + } + + // Register a custom field-specific FastFieldValuePrinter for fields + // with a particular FieldDescriptor. + // Returns "true" if the registration succeeded, or "false", if there is + // already a printer for that FieldDescriptor. + // Takes ownership of the printer on successful registration. + bool RegisterFieldValuePrinter(const FieldDescriptor* field, + const FastFieldValuePrinter* printer); + + PROTOBUF_DEPRECATED_MSG("Please use FastFieldValuePrinter") + bool RegisterFieldValuePrinter(const FieldDescriptor* field, + const FieldValuePrinter* printer); + + // Register a custom message-specific MessagePrinter for messages with a + // particular Descriptor. + // Returns "true" if the registration succeeded, or "false" if there is + // already a printer for that Descriptor. + bool RegisterMessagePrinter(const Descriptor* descriptor, + const MessagePrinter* printer); + + private: + // Forward declaration of an internal class used to print the text + // output to the OutputStream (see text_format.cc for implementation). + class TextGenerator; + + // Forward declaration of an internal class used to print field values for + // DebugString APIs (see text_format.cc for implementation). + class DebugStringFieldValuePrinter; + + // Forward declaration of an internal class used to print UTF-8 escaped + // strings (see text_format.cc for implementation). + class FastFieldValuePrinterUtf8Escaping; + + static const char* const kDoNotParse; + + // Internal Print method, used for writing to the OutputStream via + // the TextGenerator class. + void Print(const Message& message, TextGenerator* generator) const; + + // Print a single field. + void PrintField(const Message& message, const Reflection* reflection, + const FieldDescriptor* field, + TextGenerator* generator) const; + + // Print a repeated primitive field in short form. + void PrintShortRepeatedField(const Message& message, + const Reflection* reflection, + const FieldDescriptor* field, + TextGenerator* generator) const; + + // Print the name of a field -- i.e. everything that comes before the + // ':' for a single name/value pair. + void PrintFieldName(const Message& message, int field_index, + int field_count, const Reflection* reflection, + const FieldDescriptor* field, + TextGenerator* generator) const; + + // Outputs a textual representation of the value of the field supplied on + // the message supplied or the default value if not set. + void PrintFieldValue(const Message& message, const Reflection* reflection, + const FieldDescriptor* field, int index, + TextGenerator* generator) const; + + // Print the fields in an UnknownFieldSet. They are printed by tag number + // only. Embedded messages are heuristically identified by attempting to + // parse them (subject to the recursion budget). + void PrintUnknownFields(const UnknownFieldSet& unknown_fields, + TextGenerator* generator, + int recursion_budget) const; + + bool PrintAny(const Message& message, TextGenerator* generator) const; + + const FastFieldValuePrinter* GetFieldPrinter( + const FieldDescriptor* field) const { + auto it = custom_printers_.find(field); + return it == custom_printers_.end() ? default_field_value_printer_.get() + : it->second.get(); + } + + int initial_indent_level_; + bool single_line_mode_; + bool use_field_number_; + bool use_short_repeated_primitives_; + bool insert_silent_marker_; + bool hide_unknown_fields_; + bool print_message_fields_in_index_order_; + bool expand_any_; + int64 truncate_string_field_longer_than_; + + std::unique_ptr default_field_value_printer_; + typedef std::map> + CustomPrinterMap; + CustomPrinterMap custom_printers_; + + typedef std::map> + CustomMessagePrinterMap; + CustomMessagePrinterMap custom_message_printers_; + + const Finder* finder_; + }; + + // Parses a text-format protocol message from the given input stream to + // the given message object. This function parses the human-readable format + // written by Print(). Returns true on success. The message is cleared first, + // even if the function fails -- See Merge() to avoid this behavior. + // + // Example input: "user {\n id: 123 extra { gender: MALE language: 'en' }\n}" + // + // One use for this function is parsing handwritten strings in test code. + // Another use is to parse the output from google::protobuf::Message::DebugString() + // (or ShortDebugString()), because these functions output using + // google::protobuf::TextFormat::Print(). + // + // If you would like to read a protocol buffer serialized in the + // (non-human-readable) binary wire format, see + // google::protobuf::MessageLite::ParseFromString(). + static bool Parse(io::ZeroCopyInputStream* input, Message* output); + // Like Parse(), but reads directly from a string. + static bool ParseFromString(ConstStringParam input, Message* output); + + // Like Parse(), but the data is merged into the given message, as if + // using Message::MergeFrom(). + static bool Merge(io::ZeroCopyInputStream* input, Message* output); + // Like Merge(), but reads directly from a string. + static bool MergeFromString(ConstStringParam input, Message* output); + + // Parse the given text as a single field value and store it into the + // given field of the given message. If the field is a repeated field, + // the new value will be added to the end + static bool ParseFieldValueFromString(const std::string& input, + const FieldDescriptor* field, + Message* message); + + // A location in the parsed text. + struct ParseLocation { + int line; + int column; + + ParseLocation() : line(-1), column(-1) {} + ParseLocation(int line_param, int column_param) + : line(line_param), column(column_param) {} + }; + + // Data structure which is populated with the locations of each field + // value parsed from the text. + class PROTOBUF_EXPORT ParseInfoTree { + public: + ParseInfoTree() = default; + ParseInfoTree(const ParseInfoTree&) = delete; + ParseInfoTree& operator=(const ParseInfoTree&) = delete; + + // Returns the parse location for index-th value of the field in the parsed + // text. If none exists, returns a location with line = -1. Index should be + // -1 for not-repeated fields. + ParseLocation GetLocation(const FieldDescriptor* field, int index) const; + + // Returns the parse info tree for the given field, which must be a message + // type. The nested information tree is owned by the root tree and will be + // deleted when it is deleted. + ParseInfoTree* GetTreeForNested(const FieldDescriptor* field, + int index) const; + + private: + // Allow the text format parser to record information into the tree. + friend class TextFormat; + + // Records the starting location of a single value for a field. + void RecordLocation(const FieldDescriptor* field, ParseLocation location); + + // Create and records a nested tree for a nested message field. + ParseInfoTree* CreateNested(const FieldDescriptor* field); + + // Defines the map from the index-th field descriptor to its parse location. + typedef std::map > + LocationMap; + + // Defines the map from the index-th field descriptor to the nested parse + // info tree. + typedef std::map>> + NestedMap; + + LocationMap locations_; + NestedMap nested_; + }; + + // For more control over parsing, use this class. + class PROTOBUF_EXPORT Parser { + public: + Parser(); + ~Parser(); + + // Like TextFormat::Parse(). + bool Parse(io::ZeroCopyInputStream* input, Message* output); + // Like TextFormat::ParseFromString(). + bool ParseFromString(ConstStringParam input, Message* output); + // Like TextFormat::Merge(). + bool Merge(io::ZeroCopyInputStream* input, Message* output); + // Like TextFormat::MergeFromString(). + bool MergeFromString(ConstStringParam input, Message* output); + + // Set where to report parse errors. If NULL (the default), errors will + // be printed to stderr. + void RecordErrorsTo(io::ErrorCollector* error_collector) { + error_collector_ = error_collector; + } + + // Set how parser finds extensions. If NULL (the default), the + // parser will use the standard Reflection object associated with + // the message being parsed. + void SetFinder(const Finder* finder) { finder_ = finder; } + + // Sets where location information about the parse will be written. If NULL + // (the default), then no location will be written. + void WriteLocationsTo(ParseInfoTree* tree) { parse_info_tree_ = tree; } + + // Normally parsing fails if, after parsing, output->IsInitialized() + // returns false. Call AllowPartialMessage(true) to skip this check. + void AllowPartialMessage(bool allow) { allow_partial_ = allow; } + + // Allow field names to be matched case-insensitively. + // This is not advisable if there are fields that only differ in case, or + // if you want to enforce writing in the canonical form. + // This is 'false' by default. + void AllowCaseInsensitiveField(bool allow) { + allow_case_insensitive_field_ = allow; + } + + // Like TextFormat::ParseFieldValueFromString + bool ParseFieldValueFromString(const std::string& input, + const FieldDescriptor* field, + Message* output); + + // When an unknown extension is met, parsing will fail if this option is + // set to false (the default). If true, unknown extensions will be ignored + // and a warning message will be generated. + // Beware! Setting this option true may hide some errors (e.g. spelling + // error on extension name). This allows data loss; unlike binary format, + // text format cannot preserve unknown extensions. Avoid using this option + // if possible. + void AllowUnknownExtension(bool allow) { allow_unknown_extension_ = allow; } + + // When an unknown field is met, parsing will fail if this option is set + // to false (the default). If true, unknown fields will be ignored and + // a warning message will be generated. + // Beware! Setting this option true may hide some errors (e.g. spelling + // error on field name). This allows data loss; unlike binary format, text + // format cannot preserve unknown fields. Avoid using this option + // if possible. + void AllowUnknownField(bool allow) { allow_unknown_field_ = allow; } + + + void AllowFieldNumber(bool allow) { allow_field_number_ = allow; } + + // Sets maximum recursion depth which parser can use. This is effectively + // the maximum allowed nesting of proto messages. + void SetRecursionLimit(int limit) { recursion_limit_ = limit; } + + private: + // Forward declaration of an internal class used to parse text + // representations (see text_format.cc for implementation). + class ParserImpl; + + // Like TextFormat::Merge(). The provided implementation is used + // to do the parsing. + bool MergeUsingImpl(io::ZeroCopyInputStream* input, Message* output, + ParserImpl* parser_impl); + + io::ErrorCollector* error_collector_; + const Finder* finder_; + ParseInfoTree* parse_info_tree_; + bool allow_partial_; + bool allow_case_insensitive_field_; + bool allow_unknown_field_; + bool allow_unknown_extension_; + bool allow_unknown_enum_; + bool allow_field_number_; + bool allow_relaxed_whitespace_; + bool allow_singular_overwrites_; + int recursion_limit_; + }; + + + private: + // Hack: ParseInfoTree declares TextFormat as a friend which should extend + // the friendship to TextFormat::Parser::ParserImpl, but unfortunately some + // old compilers (e.g. GCC 3.4.6) don't implement this correctly. We provide + // helpers for ParserImpl to call methods of ParseInfoTree. + static inline void RecordLocation(ParseInfoTree* info_tree, + const FieldDescriptor* field, + ParseLocation location); + static inline ParseInfoTree* CreateNested(ParseInfoTree* info_tree, + const FieldDescriptor* field); + + GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(TextFormat); +}; + +inline void TextFormat::RecordLocation(ParseInfoTree* info_tree, + const FieldDescriptor* field, + ParseLocation location) { + info_tree->RecordLocation(field, location); +} + +inline TextFormat::ParseInfoTree* TextFormat::CreateNested( + ParseInfoTree* info_tree, const FieldDescriptor* field) { + return info_tree->CreateNested(field); +} + +} // namespace protobuf +} // namespace google + +#include + +#endif // GOOGLE_PROTOBUF_TEXT_FORMAT_H__ diff --git a/external/include/google/protobuf/timestamp.pb.h b/external/include/google/protobuf/timestamp.pb.h new file mode 100644 index 0000000..8ea03e2 --- /dev/null +++ b/external/include/google/protobuf/timestamp.pb.h @@ -0,0 +1,278 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/timestamp.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ftimestamp_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ftimestamp_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftimestamp_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2ftimestamp_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[1] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ftimestamp_2eproto; +PROTOBUF_NAMESPACE_OPEN +class Timestamp; +struct TimestampDefaultTypeInternal; +PROTOBUF_EXPORT extern TimestampDefaultTypeInternal _Timestamp_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Timestamp* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +// =================================================================== + +class PROTOBUF_EXPORT Timestamp final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Timestamp) */ { + public: + inline Timestamp() : Timestamp(nullptr) {} + ~Timestamp() override; + explicit constexpr Timestamp(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Timestamp(const Timestamp& from); + Timestamp(Timestamp&& from) noexcept + : Timestamp() { + *this = ::std::move(from); + } + + inline Timestamp& operator=(const Timestamp& from) { + CopyFrom(from); + return *this; + } + inline Timestamp& operator=(Timestamp&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Timestamp& default_instance() { + return *internal_default_instance(); + } + static inline const Timestamp* internal_default_instance() { + return reinterpret_cast( + &_Timestamp_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(Timestamp& a, Timestamp& b) { + a.Swap(&b); + } + inline void Swap(Timestamp* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Timestamp* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Timestamp* New() const final { + return new Timestamp(); + } + + Timestamp* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Timestamp& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Timestamp& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Timestamp* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Timestamp"; + } + protected: + explicit Timestamp(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSecondsFieldNumber = 1, + kNanosFieldNumber = 2, + }; + // int64 seconds = 1; + void clear_seconds(); + ::PROTOBUF_NAMESPACE_ID::int64 seconds() const; + void set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value); + private: + ::PROTOBUF_NAMESPACE_ID::int64 _internal_seconds() const; + void _internal_set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value); + public: + + // int32 nanos = 2; + void clear_nanos(); + ::PROTOBUF_NAMESPACE_ID::int32 nanos() const; + void set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_nanos() const; + void _internal_set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Timestamp) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::int64 seconds_; + ::PROTOBUF_NAMESPACE_ID::int32 nanos_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2ftimestamp_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// Timestamp + +// int64 seconds = 1; +inline void Timestamp::clear_seconds() { + seconds_ = int64_t{0}; +} +inline ::PROTOBUF_NAMESPACE_ID::int64 Timestamp::_internal_seconds() const { + return seconds_; +} +inline ::PROTOBUF_NAMESPACE_ID::int64 Timestamp::seconds() const { + // @@protoc_insertion_point(field_get:google.protobuf.Timestamp.seconds) + return _internal_seconds(); +} +inline void Timestamp::_internal_set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value) { + + seconds_ = value; +} +inline void Timestamp::set_seconds(::PROTOBUF_NAMESPACE_ID::int64 value) { + _internal_set_seconds(value); + // @@protoc_insertion_point(field_set:google.protobuf.Timestamp.seconds) +} + +// int32 nanos = 2; +inline void Timestamp::clear_nanos() { + nanos_ = 0; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Timestamp::_internal_nanos() const { + return nanos_; +} +inline ::PROTOBUF_NAMESPACE_ID::int32 Timestamp::nanos() const { + // @@protoc_insertion_point(field_get:google.protobuf.Timestamp.nanos) + return _internal_nanos(); +} +inline void Timestamp::_internal_set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value) { + + nanos_ = value; +} +inline void Timestamp::set_nanos(::PROTOBUF_NAMESPACE_ID::int32 value) { + _internal_set_nanos(value); + // @@protoc_insertion_point(field_set:google.protobuf.Timestamp.nanos) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ftimestamp_2eproto diff --git a/external/include/google/protobuf/timestamp.proto b/external/include/google/protobuf/timestamp.proto new file mode 100644 index 0000000..3b2df6d --- /dev/null +++ b/external/include/google/protobuf/timestamp.proto @@ -0,0 +1,147 @@ +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// https://developers.google.com/protocol-buffers/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +syntax = "proto3"; + +package google.protobuf; + +option csharp_namespace = "Google.Protobuf.WellKnownTypes"; +option cc_enable_arenas = true; +option go_package = "google.golang.org/protobuf/types/known/timestamppb"; +option java_package = "com.google.protobuf"; +option java_outer_classname = "TimestampProto"; +option java_multiple_files = true; +option objc_class_prefix = "GPB"; + +// A Timestamp represents a point in time independent of any time zone or local +// calendar, encoded as a count of seconds and fractions of seconds at +// nanosecond resolution. The count is relative to an epoch at UTC midnight on +// January 1, 1970, in the proleptic Gregorian calendar which extends the +// Gregorian calendar backwards to year one. +// +// All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap +// second table is needed for interpretation, using a [24-hour linear +// smear](https://developers.google.com/time/smear). +// +// The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By +// restricting to that range, we ensure that we can convert to and from [RFC +// 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings. +// +// # Examples +// +// Example 1: Compute Timestamp from POSIX `time()`. +// +// Timestamp timestamp; +// timestamp.set_seconds(time(NULL)); +// timestamp.set_nanos(0); +// +// Example 2: Compute Timestamp from POSIX `gettimeofday()`. +// +// struct timeval tv; +// gettimeofday(&tv, NULL); +// +// Timestamp timestamp; +// timestamp.set_seconds(tv.tv_sec); +// timestamp.set_nanos(tv.tv_usec * 1000); +// +// Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. +// +// FILETIME ft; +// GetSystemTimeAsFileTime(&ft); +// UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime; +// +// // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z +// // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. +// Timestamp timestamp; +// timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); +// timestamp.set_nanos((INT32) ((ticks % 10000000) * 100)); +// +// Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. +// +// long millis = System.currentTimeMillis(); +// +// Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) +// .setNanos((int) ((millis % 1000) * 1000000)).build(); +// +// +// Example 5: Compute Timestamp from Java `Instant.now()`. +// +// Instant now = Instant.now(); +// +// Timestamp timestamp = +// Timestamp.newBuilder().setSeconds(now.getEpochSecond()) +// .setNanos(now.getNano()).build(); +// +// +// Example 6: Compute Timestamp from current time in Python. +// +// timestamp = Timestamp() +// timestamp.GetCurrentTime() +// +// # JSON Mapping +// +// In JSON format, the Timestamp type is encoded as a string in the +// [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the +// format is "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z" +// where {year} is always expressed using four digits while {month}, {day}, +// {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional +// seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution), +// are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone +// is required. A proto3 JSON serializer should always use UTC (as indicated by +// "Z") when printing the Timestamp type and a proto3 JSON parser should be +// able to accept both UTC and other timezones (as indicated by an offset). +// +// For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past +// 01:30 UTC on January 15, 2017. +// +// In JavaScript, one can convert a Date object to this format using the +// standard +// [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString) +// method. In Python, a standard `datetime.datetime` object can be converted +// to this format using +// [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with +// the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use +// the Joda Time's [`ISODateTimeFormat.dateTime()`]( +// http://www.joda.org/joda-time/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D +// ) to obtain a formatter capable of generating timestamps in this format. +// +// +message Timestamp { + // Represents seconds of UTC time since Unix epoch + // 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to + // 9999-12-31T23:59:59Z inclusive. + int64 seconds = 1; + + // Non-negative fractions of a second at nanosecond resolution. Negative + // second values with fractions must still have non-negative nanos values + // that count forward in time. Must be from 0 to 999,999,999 + // inclusive. + int32 nanos = 2; +} diff --git a/external/include/google/protobuf/type.pb.h b/external/include/google/protobuf/type.pb.h new file mode 100644 index 0000000..1ec987c --- /dev/null +++ b/external/include/google/protobuf/type.pb.h @@ -0,0 +1,2506 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/type.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ftype_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_google_2fprotobuf_2ftype_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3017000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3017003 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftype_2eproto PROTOBUF_EXPORT +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2ftype_2eproto { + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[5] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; + static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; + static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; +}; +PROTOBUF_EXPORT extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ftype_2eproto; +PROTOBUF_NAMESPACE_OPEN +class Enum; +struct EnumDefaultTypeInternal; +PROTOBUF_EXPORT extern EnumDefaultTypeInternal _Enum_default_instance_; +class EnumValue; +struct EnumValueDefaultTypeInternal; +PROTOBUF_EXPORT extern EnumValueDefaultTypeInternal _EnumValue_default_instance_; +class Field; +struct FieldDefaultTypeInternal; +PROTOBUF_EXPORT extern FieldDefaultTypeInternal _Field_default_instance_; +class Option; +struct OptionDefaultTypeInternal; +PROTOBUF_EXPORT extern OptionDefaultTypeInternal _Option_default_instance_; +class Type; +struct TypeDefaultTypeInternal; +PROTOBUF_EXPORT extern TypeDefaultTypeInternal _Type_default_instance_; +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Enum* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::EnumValue* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Field* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Option* Arena::CreateMaybeMessage(Arena*); +template<> PROTOBUF_EXPORT PROTOBUF_NAMESPACE_ID::Type* Arena::CreateMaybeMessage(Arena*); +PROTOBUF_NAMESPACE_CLOSE +PROTOBUF_NAMESPACE_OPEN + +enum Field_Kind : int { + Field_Kind_TYPE_UNKNOWN = 0, + Field_Kind_TYPE_DOUBLE = 1, + Field_Kind_TYPE_FLOAT = 2, + Field_Kind_TYPE_INT64 = 3, + Field_Kind_TYPE_UINT64 = 4, + Field_Kind_TYPE_INT32 = 5, + Field_Kind_TYPE_FIXED64 = 6, + Field_Kind_TYPE_FIXED32 = 7, + Field_Kind_TYPE_BOOL = 8, + Field_Kind_TYPE_STRING = 9, + Field_Kind_TYPE_GROUP = 10, + Field_Kind_TYPE_MESSAGE = 11, + Field_Kind_TYPE_BYTES = 12, + Field_Kind_TYPE_UINT32 = 13, + Field_Kind_TYPE_ENUM = 14, + Field_Kind_TYPE_SFIXED32 = 15, + Field_Kind_TYPE_SFIXED64 = 16, + Field_Kind_TYPE_SINT32 = 17, + Field_Kind_TYPE_SINT64 = 18, + Field_Kind_Field_Kind_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(), + Field_Kind_Field_Kind_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max() +}; +PROTOBUF_EXPORT bool Field_Kind_IsValid(int value); +constexpr Field_Kind Field_Kind_Kind_MIN = Field_Kind_TYPE_UNKNOWN; +constexpr Field_Kind Field_Kind_Kind_MAX = Field_Kind_TYPE_SINT64; +constexpr int Field_Kind_Kind_ARRAYSIZE = Field_Kind_Kind_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Field_Kind_descriptor(); +template +inline const std::string& Field_Kind_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Field_Kind_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + Field_Kind_descriptor(), enum_t_value); +} +inline bool Field_Kind_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Field_Kind* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + Field_Kind_descriptor(), name, value); +} +enum Field_Cardinality : int { + Field_Cardinality_CARDINALITY_UNKNOWN = 0, + Field_Cardinality_CARDINALITY_OPTIONAL = 1, + Field_Cardinality_CARDINALITY_REQUIRED = 2, + Field_Cardinality_CARDINALITY_REPEATED = 3, + Field_Cardinality_Field_Cardinality_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(), + Field_Cardinality_Field_Cardinality_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max() +}; +PROTOBUF_EXPORT bool Field_Cardinality_IsValid(int value); +constexpr Field_Cardinality Field_Cardinality_Cardinality_MIN = Field_Cardinality_CARDINALITY_UNKNOWN; +constexpr Field_Cardinality Field_Cardinality_Cardinality_MAX = Field_Cardinality_CARDINALITY_REPEATED; +constexpr int Field_Cardinality_Cardinality_ARRAYSIZE = Field_Cardinality_Cardinality_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Field_Cardinality_descriptor(); +template +inline const std::string& Field_Cardinality_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Field_Cardinality_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + Field_Cardinality_descriptor(), enum_t_value); +} +inline bool Field_Cardinality_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Field_Cardinality* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + Field_Cardinality_descriptor(), name, value); +} +enum Syntax : int { + SYNTAX_PROTO2 = 0, + SYNTAX_PROTO3 = 1, + Syntax_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(), + Syntax_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max() +}; +PROTOBUF_EXPORT bool Syntax_IsValid(int value); +constexpr Syntax Syntax_MIN = SYNTAX_PROTO2; +constexpr Syntax Syntax_MAX = SYNTAX_PROTO3; +constexpr int Syntax_ARRAYSIZE = Syntax_MAX + 1; + +PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Syntax_descriptor(); +template +inline const std::string& Syntax_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Syntax_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + Syntax_descriptor(), enum_t_value); +} +inline bool Syntax_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Syntax* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + Syntax_descriptor(), name, value); +} +// =================================================================== + +class PROTOBUF_EXPORT Type final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Type) */ { + public: + inline Type() : Type(nullptr) {} + ~Type() override; + explicit constexpr Type(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Type(const Type& from); + Type(Type&& from) noexcept + : Type() { + *this = ::std::move(from); + } + + inline Type& operator=(const Type& from) { + CopyFrom(from); + return *this; + } + inline Type& operator=(Type&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Type& default_instance() { + return *internal_default_instance(); + } + static inline const Type* internal_default_instance() { + return reinterpret_cast( + &_Type_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(Type& a, Type& b) { + a.Swap(&b); + } + inline void Swap(Type* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Type* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Type* New() const final { + return new Type(); + } + + Type* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Type& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Type& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Type* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Type"; + } + protected: + explicit Type(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFieldsFieldNumber = 2, + kOneofsFieldNumber = 3, + kOptionsFieldNumber = 4, + kNameFieldNumber = 1, + kSourceContextFieldNumber = 5, + kSyntaxFieldNumber = 6, + }; + // repeated .google.protobuf.Field fields = 2; + int fields_size() const; + private: + int _internal_fields_size() const; + public: + void clear_fields(); + PROTOBUF_NAMESPACE_ID::Field* mutable_fields(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Field >* + mutable_fields(); + private: + const PROTOBUF_NAMESPACE_ID::Field& _internal_fields(int index) const; + PROTOBUF_NAMESPACE_ID::Field* _internal_add_fields(); + public: + const PROTOBUF_NAMESPACE_ID::Field& fields(int index) const; + PROTOBUF_NAMESPACE_ID::Field* add_fields(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Field >& + fields() const; + + // repeated string oneofs = 3; + int oneofs_size() const; + private: + int _internal_oneofs_size() const; + public: + void clear_oneofs(); + const std::string& oneofs(int index) const; + std::string* mutable_oneofs(int index); + void set_oneofs(int index, const std::string& value); + void set_oneofs(int index, std::string&& value); + void set_oneofs(int index, const char* value); + void set_oneofs(int index, const char* value, size_t size); + std::string* add_oneofs(); + void add_oneofs(const std::string& value); + void add_oneofs(std::string&& value); + void add_oneofs(const char* value); + void add_oneofs(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& oneofs() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_oneofs(); + private: + const std::string& _internal_oneofs(int index) const; + std::string* _internal_add_oneofs(); + public: + + // repeated .google.protobuf.Option options = 4; + int options_size() const; + private: + int _internal_options_size() const; + public: + void clear_options(); + PROTOBUF_NAMESPACE_ID::Option* mutable_options(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* + mutable_options(); + private: + const PROTOBUF_NAMESPACE_ID::Option& _internal_options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* _internal_add_options(); + public: + const PROTOBUF_NAMESPACE_ID::Option& options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* add_options(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& + options() const; + + // string name = 1; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // .google.protobuf.SourceContext source_context = 5; + bool has_source_context() const; + private: + bool _internal_has_source_context() const; + public: + void clear_source_context(); + const PROTOBUF_NAMESPACE_ID::SourceContext& source_context() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::SourceContext* release_source_context(); + PROTOBUF_NAMESPACE_ID::SourceContext* mutable_source_context(); + void set_allocated_source_context(PROTOBUF_NAMESPACE_ID::SourceContext* source_context); + private: + const PROTOBUF_NAMESPACE_ID::SourceContext& _internal_source_context() const; + PROTOBUF_NAMESPACE_ID::SourceContext* _internal_mutable_source_context(); + public: + void unsafe_arena_set_allocated_source_context( + PROTOBUF_NAMESPACE_ID::SourceContext* source_context); + PROTOBUF_NAMESPACE_ID::SourceContext* unsafe_arena_release_source_context(); + + // .google.protobuf.Syntax syntax = 6; + void clear_syntax(); + PROTOBUF_NAMESPACE_ID::Syntax syntax() const; + void set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + private: + PROTOBUF_NAMESPACE_ID::Syntax _internal_syntax() const; + void _internal_set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Type) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Field > fields_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField oneofs_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option > options_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + PROTOBUF_NAMESPACE_ID::SourceContext* source_context_; + int syntax_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2ftype_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT Field final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Field) */ { + public: + inline Field() : Field(nullptr) {} + ~Field() override; + explicit constexpr Field(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Field(const Field& from); + Field(Field&& from) noexcept + : Field() { + *this = ::std::move(from); + } + + inline Field& operator=(const Field& from) { + CopyFrom(from); + return *this; + } + inline Field& operator=(Field&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Field& default_instance() { + return *internal_default_instance(); + } + static inline const Field* internal_default_instance() { + return reinterpret_cast( + &_Field_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(Field& a, Field& b) { + a.Swap(&b); + } + inline void Swap(Field* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Field* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Field* New() const final { + return new Field(); + } + + Field* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Field& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Field& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Field* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Field"; + } + protected: + explicit Field(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef Field_Kind Kind; + static constexpr Kind TYPE_UNKNOWN = + Field_Kind_TYPE_UNKNOWN; + static constexpr Kind TYPE_DOUBLE = + Field_Kind_TYPE_DOUBLE; + static constexpr Kind TYPE_FLOAT = + Field_Kind_TYPE_FLOAT; + static constexpr Kind TYPE_INT64 = + Field_Kind_TYPE_INT64; + static constexpr Kind TYPE_UINT64 = + Field_Kind_TYPE_UINT64; + static constexpr Kind TYPE_INT32 = + Field_Kind_TYPE_INT32; + static constexpr Kind TYPE_FIXED64 = + Field_Kind_TYPE_FIXED64; + static constexpr Kind TYPE_FIXED32 = + Field_Kind_TYPE_FIXED32; + static constexpr Kind TYPE_BOOL = + Field_Kind_TYPE_BOOL; + static constexpr Kind TYPE_STRING = + Field_Kind_TYPE_STRING; + static constexpr Kind TYPE_GROUP = + Field_Kind_TYPE_GROUP; + static constexpr Kind TYPE_MESSAGE = + Field_Kind_TYPE_MESSAGE; + static constexpr Kind TYPE_BYTES = + Field_Kind_TYPE_BYTES; + static constexpr Kind TYPE_UINT32 = + Field_Kind_TYPE_UINT32; + static constexpr Kind TYPE_ENUM = + Field_Kind_TYPE_ENUM; + static constexpr Kind TYPE_SFIXED32 = + Field_Kind_TYPE_SFIXED32; + static constexpr Kind TYPE_SFIXED64 = + Field_Kind_TYPE_SFIXED64; + static constexpr Kind TYPE_SINT32 = + Field_Kind_TYPE_SINT32; + static constexpr Kind TYPE_SINT64 = + Field_Kind_TYPE_SINT64; + static inline bool Kind_IsValid(int value) { + return Field_Kind_IsValid(value); + } + static constexpr Kind Kind_MIN = + Field_Kind_Kind_MIN; + static constexpr Kind Kind_MAX = + Field_Kind_Kind_MAX; + static constexpr int Kind_ARRAYSIZE = + Field_Kind_Kind_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Kind_descriptor() { + return Field_Kind_descriptor(); + } + template + static inline const std::string& Kind_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Kind_Name."); + return Field_Kind_Name(enum_t_value); + } + static inline bool Kind_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Kind* value) { + return Field_Kind_Parse(name, value); + } + + typedef Field_Cardinality Cardinality; + static constexpr Cardinality CARDINALITY_UNKNOWN = + Field_Cardinality_CARDINALITY_UNKNOWN; + static constexpr Cardinality CARDINALITY_OPTIONAL = + Field_Cardinality_CARDINALITY_OPTIONAL; + static constexpr Cardinality CARDINALITY_REQUIRED = + Field_Cardinality_CARDINALITY_REQUIRED; + static constexpr Cardinality CARDINALITY_REPEATED = + Field_Cardinality_CARDINALITY_REPEATED; + static inline bool Cardinality_IsValid(int value) { + return Field_Cardinality_IsValid(value); + } + static constexpr Cardinality Cardinality_MIN = + Field_Cardinality_Cardinality_MIN; + static constexpr Cardinality Cardinality_MAX = + Field_Cardinality_Cardinality_MAX; + static constexpr int Cardinality_ARRAYSIZE = + Field_Cardinality_Cardinality_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Cardinality_descriptor() { + return Field_Cardinality_descriptor(); + } + template + static inline const std::string& Cardinality_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Cardinality_Name."); + return Field_Cardinality_Name(enum_t_value); + } + static inline bool Cardinality_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Cardinality* value) { + return Field_Cardinality_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + enum : int { + kOptionsFieldNumber = 9, + kNameFieldNumber = 4, + kTypeUrlFieldNumber = 6, + kJsonNameFieldNumber = 10, + kDefaultValueFieldNumber = 11, + kKindFieldNumber = 1, + kCardinalityFieldNumber = 2, + kNumberFieldNumber = 3, + kOneofIndexFieldNumber = 7, + kPackedFieldNumber = 8, + }; + // repeated .google.protobuf.Option options = 9; + int options_size() const; + private: + int _internal_options_size() const; + public: + void clear_options(); + PROTOBUF_NAMESPACE_ID::Option* mutable_options(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* + mutable_options(); + private: + const PROTOBUF_NAMESPACE_ID::Option& _internal_options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* _internal_add_options(); + public: + const PROTOBUF_NAMESPACE_ID::Option& options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* add_options(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& + options() const; + + // string name = 4; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // string type_url = 6; + void clear_type_url(); + const std::string& type_url() const; + template + void set_type_url(ArgT0&& arg0, ArgT... args); + std::string* mutable_type_url(); + PROTOBUF_MUST_USE_RESULT std::string* release_type_url(); + void set_allocated_type_url(std::string* type_url); + private: + const std::string& _internal_type_url() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_type_url(const std::string& value); + std::string* _internal_mutable_type_url(); + public: + + // string json_name = 10; + void clear_json_name(); + const std::string& json_name() const; + template + void set_json_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_json_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_json_name(); + void set_allocated_json_name(std::string* json_name); + private: + const std::string& _internal_json_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_json_name(const std::string& value); + std::string* _internal_mutable_json_name(); + public: + + // string default_value = 11; + void clear_default_value(); + const std::string& default_value() const; + template + void set_default_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_default_value(); + PROTOBUF_MUST_USE_RESULT std::string* release_default_value(); + void set_allocated_default_value(std::string* default_value); + private: + const std::string& _internal_default_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_default_value(const std::string& value); + std::string* _internal_mutable_default_value(); + public: + + // .google.protobuf.Field.Kind kind = 1; + void clear_kind(); + PROTOBUF_NAMESPACE_ID::Field_Kind kind() const; + void set_kind(PROTOBUF_NAMESPACE_ID::Field_Kind value); + private: + PROTOBUF_NAMESPACE_ID::Field_Kind _internal_kind() const; + void _internal_set_kind(PROTOBUF_NAMESPACE_ID::Field_Kind value); + public: + + // .google.protobuf.Field.Cardinality cardinality = 2; + void clear_cardinality(); + PROTOBUF_NAMESPACE_ID::Field_Cardinality cardinality() const; + void set_cardinality(PROTOBUF_NAMESPACE_ID::Field_Cardinality value); + private: + PROTOBUF_NAMESPACE_ID::Field_Cardinality _internal_cardinality() const; + void _internal_set_cardinality(PROTOBUF_NAMESPACE_ID::Field_Cardinality value); + public: + + // int32 number = 3; + void clear_number(); + ::PROTOBUF_NAMESPACE_ID::int32 number() const; + void set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_number() const; + void _internal_set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // int32 oneof_index = 7; + void clear_oneof_index(); + ::PROTOBUF_NAMESPACE_ID::int32 oneof_index() const; + void set_oneof_index(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_oneof_index() const; + void _internal_set_oneof_index(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // bool packed = 8; + void clear_packed(); + bool packed() const; + void set_packed(bool value); + private: + bool _internal_packed() const; + void _internal_set_packed(bool value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Field) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option > options_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr type_url_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr json_name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr default_value_; + int kind_; + int cardinality_; + ::PROTOBUF_NAMESPACE_ID::int32 number_; + ::PROTOBUF_NAMESPACE_ID::int32 oneof_index_; + bool packed_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2ftype_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT Enum final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Enum) */ { + public: + inline Enum() : Enum(nullptr) {} + ~Enum() override; + explicit constexpr Enum(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Enum(const Enum& from); + Enum(Enum&& from) noexcept + : Enum() { + *this = ::std::move(from); + } + + inline Enum& operator=(const Enum& from) { + CopyFrom(from); + return *this; + } + inline Enum& operator=(Enum&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Enum& default_instance() { + return *internal_default_instance(); + } + static inline const Enum* internal_default_instance() { + return reinterpret_cast( + &_Enum_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + friend void swap(Enum& a, Enum& b) { + a.Swap(&b); + } + inline void Swap(Enum* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Enum* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Enum* New() const final { + return new Enum(); + } + + Enum* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Enum& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const Enum& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Enum* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.Enum"; + } + protected: + explicit Enum(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kEnumvalueFieldNumber = 2, + kOptionsFieldNumber = 3, + kNameFieldNumber = 1, + kSourceContextFieldNumber = 4, + kSyntaxFieldNumber = 5, + }; + // repeated .google.protobuf.EnumValue enumvalue = 2; + int enumvalue_size() const; + private: + int _internal_enumvalue_size() const; + public: + void clear_enumvalue(); + PROTOBUF_NAMESPACE_ID::EnumValue* mutable_enumvalue(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValue >* + mutable_enumvalue(); + private: + const PROTOBUF_NAMESPACE_ID::EnumValue& _internal_enumvalue(int index) const; + PROTOBUF_NAMESPACE_ID::EnumValue* _internal_add_enumvalue(); + public: + const PROTOBUF_NAMESPACE_ID::EnumValue& enumvalue(int index) const; + PROTOBUF_NAMESPACE_ID::EnumValue* add_enumvalue(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValue >& + enumvalue() const; + + // repeated .google.protobuf.Option options = 3; + int options_size() const; + private: + int _internal_options_size() const; + public: + void clear_options(); + PROTOBUF_NAMESPACE_ID::Option* mutable_options(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* + mutable_options(); + private: + const PROTOBUF_NAMESPACE_ID::Option& _internal_options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* _internal_add_options(); + public: + const PROTOBUF_NAMESPACE_ID::Option& options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* add_options(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& + options() const; + + // string name = 1; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // .google.protobuf.SourceContext source_context = 4; + bool has_source_context() const; + private: + bool _internal_has_source_context() const; + public: + void clear_source_context(); + const PROTOBUF_NAMESPACE_ID::SourceContext& source_context() const; + PROTOBUF_MUST_USE_RESULT PROTOBUF_NAMESPACE_ID::SourceContext* release_source_context(); + PROTOBUF_NAMESPACE_ID::SourceContext* mutable_source_context(); + void set_allocated_source_context(PROTOBUF_NAMESPACE_ID::SourceContext* source_context); + private: + const PROTOBUF_NAMESPACE_ID::SourceContext& _internal_source_context() const; + PROTOBUF_NAMESPACE_ID::SourceContext* _internal_mutable_source_context(); + public: + void unsafe_arena_set_allocated_source_context( + PROTOBUF_NAMESPACE_ID::SourceContext* source_context); + PROTOBUF_NAMESPACE_ID::SourceContext* unsafe_arena_release_source_context(); + + // .google.protobuf.Syntax syntax = 5; + void clear_syntax(); + PROTOBUF_NAMESPACE_ID::Syntax syntax() const; + void set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + private: + PROTOBUF_NAMESPACE_ID::Syntax _internal_syntax() const; + void _internal_set_syntax(PROTOBUF_NAMESPACE_ID::Syntax value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.Enum) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::EnumValue > enumvalue_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option > options_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + PROTOBUF_NAMESPACE_ID::SourceContext* source_context_; + int syntax_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2ftype_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT EnumValue final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.EnumValue) */ { + public: + inline EnumValue() : EnumValue(nullptr) {} + ~EnumValue() override; + explicit constexpr EnumValue(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + EnumValue(const EnumValue& from); + EnumValue(EnumValue&& from) noexcept + : EnumValue() { + *this = ::std::move(from); + } + + inline EnumValue& operator=(const EnumValue& from) { + CopyFrom(from); + return *this; + } + inline EnumValue& operator=(EnumValue&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const EnumValue& default_instance() { + return *internal_default_instance(); + } + static inline const EnumValue* internal_default_instance() { + return reinterpret_cast( + &_EnumValue_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + friend void swap(EnumValue& a, EnumValue& b) { + a.Swap(&b); + } + inline void Swap(EnumValue* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(EnumValue* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline EnumValue* New() const final { + return new EnumValue(); + } + + EnumValue* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const EnumValue& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const EnumValue& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message*to, const ::PROTOBUF_NAMESPACE_ID::Message&from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize( + ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(EnumValue* other); + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "google.protobuf.EnumValue"; + } + protected: + explicit EnumValue(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kOptionsFieldNumber = 3, + kNameFieldNumber = 1, + kNumberFieldNumber = 2, + }; + // repeated .google.protobuf.Option options = 3; + int options_size() const; + private: + int _internal_options_size() const; + public: + void clear_options(); + PROTOBUF_NAMESPACE_ID::Option* mutable_options(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >* + mutable_options(); + private: + const PROTOBUF_NAMESPACE_ID::Option& _internal_options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* _internal_add_options(); + public: + const PROTOBUF_NAMESPACE_ID::Option& options(int index) const; + PROTOBUF_NAMESPACE_ID::Option* add_options(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option >& + options() const; + + // string name = 1; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_MUST_USE_RESULT std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // int32 number = 2; + void clear_number(); + ::PROTOBUF_NAMESPACE_ID::int32 number() const; + void set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + private: + ::PROTOBUF_NAMESPACE_ID::int32 _internal_number() const; + void _internal_set_number(::PROTOBUF_NAMESPACE_ID::int32 value); + public: + + // @@protoc_insertion_point(class_scope:google.protobuf.EnumValue) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< PROTOBUF_NAMESPACE_ID::Option > options_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::int32 number_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_google_2fprotobuf_2ftype_2eproto; +}; +// ------------------------------------------------------------------- + +class PROTOBUF_EXPORT Option final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:google.protobuf.Option) */ { + public: + inline Option() : Option(nullptr) {} + ~Option() override; + explicit constexpr Option(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Option(const Option& from); + Option(Option&& from) noexcept + : Option() { + *this = ::std::move(from); + } + + inline Option& operator=(const Option& from) { + CopyFrom(from); + return *this; + } + inline Option& operator=(Option&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena()) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Option& default_instance() { + return *internal_default_instance(); + } + static inline const Option* internal_default_instance() { + return reinterpret_cast( + &_Option_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; + + friend void swap(Option& a, Option& b) { + a.Swap(&b); + } + inline void Swap(Option* other) { + if (other == this) return; + if (GetOwningArena() == other->GetOwningArena()) { + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Option* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + inline Option* New() const final { + return new Option(); + } + + Option* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final { + return CreateMaybeMessage

LFU_N;@UE+^NJ})h7$G)Yl}1V)-Yv{8VFv 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

uWc~7G?mmS0UO2y7$yw_r>9EZzWVo%-P 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 C-neaw#ae6XYsTGRM;m>S|D4?x1FY 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

*`5}(jJK@ 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

={kJ5v}(F@^7##@!kL9dE`G{r~%IbLJg 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
Idwt~{w_@Gc>FvLIY;<6Yw#`G@ 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%0A!6sAZ!ITPxZf%#R{2mM-ibelZGc@FZ?8 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 D?gaL`**WjUqh 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�D*@W)6k^`wbV zn}a;%MW{qgq1*~UyP0w=fPTyntx+r?Kof!-Uk*Ni8A0tc!g3!#SngMFT>s2IY8YMy z3cH8XxYyo4kvtgDY`>G6jlc!DNHL}po=7m5Fqc$gVu{Ts@OUf0{85B?WQiANfGRCB zem#DXHvcuQAk~l5Rr$!m>Ph@av9KC>2&G}PcL#EADIKO0-yj&b&;ci>erx$V%oGK>xKQ~Bqd%t=WY!n zdt*~Q>F`B>78bbYkuN5_a3-Ao1I3c+l&_`oB~Jf=6M{sSxJ*WL29hQ1P9g?Sq- zA%GsIpn2MFn4na$5cE1gLeKyp@qJhaNL=}8+xiFicWAV=2w)&tbFawdkPmH6({7OSXwK0u%1UdaPwsd`Dh@-*%xcm~9bgHYzNP?(#j&ZiFX zOqt;P!Ra;n1q9tODo_4yRGwUj=R_Rb0f?4*ILU&@4{<85Nv>qG`&e8`G?MK|nhu3B zIe?yI%6trvQ0A{T5ZXB7MD5yE9W6(g5T_c%R`Mix&l+LHh5coRoOT+jm^zmOl5;tK zZ+5vRiCvQD|6%B!C>d;q-ZOy5|KV1mQ$2xudw z!e*z&fp;6kw!}naHl}3}sl~FxN3!5sEUJkoZ$>7l1U_W`iT}I`9LX3*Jt;JV`?-a? zqb)#bN)PmV5!-Lb45EbvHobUr7$-oT^|@@N#5rUa0;$oPqdmT%hb}}YuNv7ujo5Dy z57;PTZ%C5-&PLY%!WAn8w27frfc}{wOyU)&hKnLh#I`Fi5OLnyV^$;t*& ztq1Dd{(Us=aJ;p2uWn5+gvR&1A2jsXZq3@9f4 zWBM)xwCh8xzwlb{ghB|Q1$#LXrQUp`E$VKim$v&BJRA&hWE?&?i(mmcC>cj*Z^>=v z5Owp4JX`Uqlsvq}HU8}kMV`jrLs2=w?`OdI7*$!ewXz%7I%oW(I8H5RkoJP(XQJdx=JXh}PdP(og93}5SaEj_c`STa$ z9^P>3GxT}WI4RrgM%OwUT$X}_HsljM{m1f!!Vf=9n>?Wt(BQR@o81yah6yX-;Dg!O zEMRDq{xb_g5{WX?mI0EPb`2o0mONvn?X%Ke1thaC#mIS=d7I3&0u2Kaml%41w*+>% z0g&i3AG4s<78K{W^1NYCjM-P*C`=|4QV9xJ#9ac&nrgwdmE=BBZ=AA#uIVeVHwCIW zGFy`e@zhS)l=l(1Hc#|hy~RfO}M(*s?Mt0pjBC zQ4E^JZ}g&X^FyjehK2~ltizb!$&-X>MTpT2y`sItT|+9JK+^yTEw2Yu&$OgHGoj^q z+m@dh!|F?&G`4N|UM@D@Ds~?rd}vCE|LjNIGqexE8mm*VMiqsN_g2^VE~J+Y%RUBt z-4Mx*PU(AYZ9$3d$X9WN-q7*ObmL{v883r}wf^hjqMC;ZD&u9as@8ugernnDlj_<( zfqrV9%g%(m#;NofT{HHD+uc6DXXhO_@*Zil?a7qf8mI5==s20-YS}Y!57N_&)X6QS z(H5ldnHVri{k^L7?71RfhEqh$NMrQ75N49BRh`RfXs(iGZ~{?#J9qMaKpQchz1mxV z9^f?QTG!qZ=N@Ov*_NjCyxPu|11(*7Hf;|Moux^PsD!BQ@gd!>PaV>Ia!WDl{Z7Un zPo4yMZ~Fb-64xGQ-55o9$Y$Y$u|f;CTftf}{d%on@-~!QY6g>^zIPuA0Kq2haYRbZ zSn`uw7E8gC^38%NTUR8Xa;8^bp}mOAiGliL>>bgye0=S}7(Gb)FoW3tWzDSv=OEGo zHVP!DIRr*cm@z=TP`(=D}eIc7MY&6fq#Nc`!`*IE^PV5lyGqxp$eXeMG3I7I!hP3%^cZLunum4i6+Wk^B_?#|+RoO{bpcxe{wxcg>YG81eR@J=wSk>3FdUG&3qG9WQGD)wnVU z{{fqp*XF=lvJh8y#ZEgFr1t)T6 zUZg6VT)FwwLR4}#RRty{M0Gx^w%YMB5O>?F&@{S=P?;q}U@WujixJ|*GV~cwP9D*a ziE-_)B{bvPv``Rrf%blX#{>0UKm!at1<5PWi-6>=!SPi%_ziwXXyiPOC5q_U<#yj| zp~*TNw$U+8q7@k+T^hgA>;ip}(^o<6&iT%Mr=I4U6au#yp3jI*()J`u#dhOk2yzp7 zz^?AMNA9r0Riek;_9FFCfVxa`w|Bd- zs2ASXr|7x;mxE0_p-er;_J)cy27ItlXAQA)z~VQdKva)P#rOqp+pz$$ zGB1|Q^-|}_L(D?xA19TE9(A640ZDoeLEi#I)ec=ojKUO&E2i9jl03&0RNBx&8pdEB zJuSvV+#ViF(jJ4!)5&YxVxkIa#{}lXxU5m#`#~5QvL7{I9h zME!m{yQdSa?*yeGr=^7VRIV`tl-OXKYX0pb8tp6=;3j>`-%C3yX~+CpM3d$y!Nmn?_Lyv-F~Dm~zu_$d&A-V)7l&?^F!A#IcMI-MgaO zvdu*nVj-zcBl1XeOEGqhPn-L|EzLuSoN?OSb{p1TV6GNlrn@Z{Fe+V*7@J1mAc_;j z;W=A>jAmmsfM`QlOgYx$7X?R*3)I~Tvo&ea@!Y>+~S+;Zu<<~H`_N* zu5MzvgDvqQd$=P@FU$7j1h=cuFv_nm)>&o^f(7w0nIzxKQD4yXV}?5(NXz*l61c2i zsitMSr$5Iio3ZNaa@!5sAdgf1=|D~HK{Ll{W1r&WOfXLXjSy?cU4Y1d=hYs@ zRqO$u22{&R(@TJU%o2x8h!vbhC5vm58w_)V@6H5tk`+ywK|aT6rGUP~P!N#hM=#WV zgVQLqn%sQ}5ZPC}+I~Q9@?Cnltdw>PkdN=aV?j>HJgNQv%iec@M^$w1?~>5F6ags_ zLKjG-V>S&ENTUQoU6y16fg~G}4ZZgwMS7Jc2nbR|1XPNE2-309i&7QoAnkw7%$eP} zckhNoKEIFrp8q_#dnf0<@0l}w?%cU^OM>qdW0VJ9BJ+9ggf&&@fW;hKVQw;9##;vM zZ-%VNVDt_|9lkp2eEDou7I~c8>&0-B!jG~W6ZH+rW``R&)a|Cy{VvFAGL2Pi8lh&h zb!4z*b}m)p8o(MrJvOb-e!4=#n##X$01XDTuJDlpy9nD7+jXJS3ma8f)*u>HXy7EB zg-~bPJhD<~=s=oBl0q1E2y2DlyEgY(DeVDqfb}HwouEVc;6L0GfqyS>D~o0+ko9DV zz`%@l2=ZHZf?b9mT@OY9kHcHKxN=fnAkK(KGeJyXM3@eQMj@BA3JVn;4Pt1@XH23o zf^>#=YT)B(7zh3ct}^)e4jbUn`QQ(8eBKZrwXs)#A%vXv5I~x>5cs|xs8}5WKHy^$ zh%nS`qJ!rXsg>BrB>H&s1{H4e*@q;m+dm`$xAZWhSI`zIyvO(6iN7obc;c6Yu=u10 z-f44R2>AH7C&IzU-=Ko5hK-ci-fyt>2)1>9*62y!Y7@`#FEy0MJ2RN`vVBE$pKBv{ z;z1*$Ji6h~`oV6eV;6$HiRWR@x8YAw&?onHJl!lm@fh0-?%0i*yBmEcr0_|%e6TlM z0PYPZcDQ5V1Q&?H`L!;5W)~Ji;e=`MGYk_polC7gDMUXpmy`D^OUtjC8ON80wVBki zN{Lbp%uIp=FRmL2zMiZ^&H^95!^Gupd^YDY_;~Ul8H<_b+-8v_a8+wHH|(r)3rZkN zw?$vWN2vp#34^&vc-#n6HjSs^L}3hw8Z{nQc+?e8vEOwnYQmYWiAImYqrZlKCPkJ~ zzGn#&l?eLJzHS*=oaR3TeN7S0&y(H+3EKWHi>EK3-Q|3tV~t1E60Cw3_g zAMSyPVy3mNcrSe<%puC(DuG30Foc0&?jBHuqoD0@p47rI?XVa5&!$}qW!kwoO}oVq zv@-2l?+=8k4rvg`-*t51RTmQuX2zSjHu?*8`DW9fx3EyaG-^s_r%|J?1whdYfRYE_ zbQm!PwhHIVo^k%#{)`Q4u)JKJb||pTq0WI?B7fVf9~k=w9JzFJ;g>g^%fT1KYSTXO z@t4!=bqLoY@Y;lTpxieAeEg4Vh^=hi^>SplqFiwGwhj9^nJd7NWfjo?S;N$v& zY`(5GAMRkzXJ=>HWO%#989#xKPZeGOAFt!mWZZ=e1`+ld+tLtSt^`M3^;l0;34DC$ zfGsLMqH0=vewS@&V!xj?5kj4;4cY9wwjv5N`abn9RlR0&1I!>+o!RyQ^B|+-H((k-1o*z{Dd2m+GJHJvc%8&Pkr#)r zz{hJ7-j7oqviV%0bUbHV+^CFS4YT=Xg3qCbU2zyd+v^pU=0>bGVGZN82|Q53lnx&~ ziZRnf1D|R0&opJ=4L`2(cIppKn$KDqlf_!$!Q9Rjh7eA1+HT zWE)yRqY3Yf@9MG#D>}cCLR0YJ0(X3vh&Mg-6xfYVS>h*C+QFOQ@ckLZd*Q{$HaccC z!lRmU{Ofhr66{rSYoWpwU@LKJFuf0sRX6woeAbIkinEuzU=|Q2<|62IaCph9_&Cs0 z42BeqijParZ|vg5?!MpaL<~59qKsBR1T+Xe-eNiyY@a-J@82m6e zM!+!&j?r+8g<~8X6XBQw$22%__uJWU;2;MZMqH4O4~_9P!KH94hhrripThAO92?-+ z49Dki;6`NI;Mfkw4mkG0aR!dFa9n`n5*(M|z~x>y;J`IYcj0&d$747u=A4d=n^Ol6 z9gLb^A^@?FxlSEk!!#NMq+EFKsME95$|`?|jh{2id<-?Of+a#1mSZej0Oiaf4xi-? zXI8j@ub@I72$&OkGouevWu#4CQKl~|DKEmxY8=Mc!YrkT!>e)oajR1&O2l|(2d3%-=EM0JH%*N~mC%ZoV(K|_B7_f^UhJ_aF(20b$;?*`eC~>{ zL~4q2W^xcUf5`N?fv?(Y>%%xrx9NLNQ(snddnVI|md>(i_E2cfdcON8_#(x`IWsAT zG3Dh5E#p2n@YR29&8Vd@(}H%`yIK&d9HykO`QJY0fv^nBsu1ukWI2KM<-fgiJn*TCtDm!5(m6mTeXKG8@)878aJ6 z^R`e&yq5JBZFv-!5o(s_yyM9CIyG+LaQ5$`>l=KIX& z2KIf#G@}OaICU732vvYY=t8bOV?VW&X~(pF$U^i0-y`M|XrWD+N>^)*wAr8<@whH`Ya01^`| zu?||X<_f2!^;?_P&JJ2_`QV^cXvDLY*6(dv+cB+a*3^XL?rv6##Vyg2++CMsN~x1( zw%P@ZQBk=+i#(bE3A21D9cw!+n^P+=q?NB!+Xd$=q!|tRx)w9{46R z999=D^8p{e+OEt%5dO#9+qU>^V_{=yONWD(wv9}tjNc|E!}x7xK8#-~W4OU@ALet1 z-!1H_GJc;k8OHAm=CjAIKFCrSw=w+oW`!Zh`{PI+a0^a~8 zgP(uJm9wSNcg$`~B_1}G0`60$5|=4U0hhVi816P7rqVY|GnRs#%!jGO8JJ4khpDuS zUBy&_8Bs_Z1Nd;cH%}#w!&KrvWh!wQT>MvEC0lC!!tBD-!j#};3gg8mA8IjQarpIS zKE%{uK4qDDhsoUG_g&`0)T+vSm|8ez&Zqqlk&7*T;B^L5D}~8kr%bg04frS^mo5f= zaRTw*tBs(XIX7Dho_)hpurAn}ONZsnd9Bn+!R{7I_e68;lvIn=(k(r{c57>DdaSi} z(*$#3Tv~9lHMM{3UgrKhHU8z_Dz?OaVoPjZQC?lSEiC$2Toahj4So}u4+|sLg2nYe zQ@MvQ&6wE3nGY-XDCUcT-?7YxiOs{s;>vxUY(90ew>2fEn``qP)Yu3A0jQ(Hgy7w7 z5%4`^9k4(__rx4xo+z&9o+fS~d*a0P8vbLJCEsn_v(@npU*D-aA-ITX-;koMy8bZj^WWN4*$`ekZsh1e zEAF*OtoY4meRsbsQ{_kR68#n(49T&%{jW{7N2GsrOy}9Y&C<=r9O2&{@S1X_q~*%^ zbI&^0Ke=%1xuAs&XYYLcOH0oaBc2RT&)s@Y&$T~w9bV~jm$K!a*6X$*r2Cbt3!_Yl z&96MV`0J!bji(=&mh)vZ!MptT5#L3Yezju{ER1dZeC>vd6V@EAzV6vs{}E>^|zRl{HPVQ&v` zpRV`l@Kxs@kNU5S`L^1e^OX+29l0d<``9D(&MkbaagD$(omL(TFi%}R;e72?pME&! zSnRNG-(9fy<*hEAB5!o*`TpJq&A#}u_m8_59h^Spt*z!M7bX-D>6WsuVaS)=zSj-D z*6;Tlqc5Hi>Gs|1hlR^c8g#Zm`Dzcpo4<6!&=M;bF5K^5-s)20=ylI~-}c@x-nCY# z#q&hE9nIGv+CR1Qa1ox!r@;r0c6)bU(J&ES+V*-=7hf&);n?@iT8$Tq-WTCby<2Vd z*}k41^_fue%U$mb4mmO5@!0c=x38|Bb9An2*V><&VrV>g=*Lx`i0~e5DwSOF^6wi( zeu!{~y+1J_Zr3Q^^M0l|uB+;tE)c({!N-4`>XEzmq01qi{(3TeS&4;BkM(Jn?2~`N z%S{93K*49uIKNV-2Mz1E1wJpbXXWW-5e-{yt~$E!-#Pd8_8PRl%&v3qr}TYZC;rFr zyF2V?`F$C^?taTdVK2VE7~J#P?d4(5Pkyn`r}(0;DqQV5E;?$$+Kb71yIu`w_WoPT z-cid1?_9G38;5K?p=&jB|ES}0=P#J`v`h1&zEc-xIFX))>kaQWnRI!XI=w&jsqa|gw6&l>J zoaq(rzN}HV&aOYS-d^hS_^IJO)v5%h{cimEid$IqbGv7D?|aHrq-M)6`*di#%&S5#tKp`pY-($EW;$xG+qY*7BDN?u{yMY1u69a*-uder=Sx_gm}bU7LTJW~yF( zs_E|`hq?}J)MehdZI!>?x4#&#?lzY!^Qc$xMjPtA{O0hYsQUvK zSF*hOGH}xD__1!gyw|KKKCkmG{|&oKZn-tMT-fhF9pAaT@>dZX&+E)4<@P?bKcqI$Yd$#^vJvDuY6&?(ywepiIL*t-D%Z{CMTb_#+2@|GE5) z@fSCV_E(%||Ka{qsZW}FhQo`5b$j1y(|hx!Yvqb;uk<4L%+JjpUb|Cq-^~ZEre}k0 zR4i2D!Jav{{CAce_^FGb-MT+|?(2JHLQeI$=NHyIL7T_7_kG-LR_fP&Ew<;JG`MVN zhf;Mb^{+JB?Y>Xmkmon2`>gTEd*?;5^QS+l@Zlko@9v6+7RP@vJ!#QThnJmNy2W?> z_Kj`S=ZZ~t?{9r$y{|am=oee^*as)4&M0#GluM3B2Y#6_rG3<*Wi|iU`O7D1b9EQJ zJaYaOJKuZmjlRJ?y_cq4s<>ix=~iBM{+xKAr*WdIzUIfDB%RvWI9L3}k!{cY8T@gt zbsmF%opO0~hns)3esQ(xWB2epy0JY27hUiinp*Fhhv07}?D^&N^hf3?8&9{oc5wE< z$b*e@cWOE9(E3l^J_^`>?#V~>e#ldKv2nt;FC)i)-rTL9cd{rK{qqLT9bX~7PP1O^ zhDH25I>%2(Zl%p|eOY$U@#jCS`zGA)QJdWN(w=|pDXtf*{aI!2`WO^x73rzG3j`i8~fdns94h@5p;4hcBtQQJi;dJhtih z;cvRPbp7$KLB0nsEIIk-b&sl*a{K&MVnmC-|BMrMjcm8An)muqM?$Zji>cG1V94@c z|6Y2`|7ypdd(=Fzdu@EHkh)JAcHTJtnfO2HgF?T|Dl@1~;=Y={mvM8AR+n4-hG!?L z|K0uM+|x$~3<-U=%ofY%Wu^>i=s&h`*`_!7}h!G ztONC$92+_L=RA$;dam65D6CV_ZG*0=%gZlC{YrY*+fb%B9tK>I(JUV@vcK%Yn z8YLDM8gT6+%f7Gkqw^`@7HW` z{pIP1N~a!w9ldYr?mM5A^P81;=Ha~b<6iH7KVz`p=;jM6HQZ(VrpZ%X$yr+lwcQso z;fo46A1?QF`OWlp1B$9tdAP3p{(dKW?!U6Dcm8qT zxE+WnTkw}ZZ(XmleewKvudFJ&Cj8vd| zql2|XyQlttvgOL!6$9Fz$oX|((1udsOJ}T}v3hQSkR0OwkJ{Y$t=NMz3tO#Pp08Fd z>w$JxM-TB>eeOw%&;O`7quwgF_tre_c*{Jxl^6$$@;fiJK&`x9frZU=;&;CN@P`R= z+kbnnZ1t`68m(Bp^^5E4JOV#A-@3f$*P#nOs8sf9yGBiJEp52yy$X>=&ms%rw;J+R z_+sX#3v;zQtP7aFw%e0SPuGe1Aoyp(zOQ-Y>n@9C%o{g*|Fgt~qMZ)95Lt2Q$9*e` z|F?R~F8Ms%;CAlzre=-n1|N$o-tg+x&x4k!&z=6f`cs8Mo5tpRcJyNL5|x$36NKoQ~+(wf{)9J=)OC-9j$@7iWPJXAwVfUHmWNx7BsV zd)0Hdi4^vixHa&v&vSciE}uAmZJQ+_e~SOb*`=$c(a`H5?J@MjG!N&hx@dq5o<hD!syI#z_kZUulu^_{{jrY z6A&|F;0l7X6Tbd|4kn7g@z~r3-zYdJTwQIexu4ZNi9JH*b5|~Un9^e|Y+HlHf`@{) zdBU+dE;rC8b2-OFk86$*wsGrE0W!A)O$8!O&BYlm%n!Em8GJn!c82F2M1cPw8vJ50IMEb8r-)j(E6Foahd9QS+5^ZCa4vd$R`E9TV!glA+&Cm!QY@9_*H)6jnb-^&H*rGHA3!zjWF8GA=9U5(hU){rXrF7JuWHGbrVtl#YA#d>^WSojZ)Uh*NXR zBNe#ReCgtDK7(q@%L-mOMO?(GxfKuqTuKt%PgQn<>Gp74ctfB=9CFclfovR{d3eh5 z;)Vdwhov92yp`kreOX^`(&q-()V90}GUSRn`20~~Q4HzsGkzhrJT-ni-zr{>lI z8FJUdFLFE28ogTP=H`v74smL3ZIB@s+Y&t-=GaN8GWQ5^5vS(X0U2_!2w)!l@^IM- znR}Tx%q*>paK>;azx~^Cnfobkn01I#bG?Y$ z0V0cC@}G;^4wJc^c*CqioSN%R+;re#T}Tdiab4zC#sUWpacZs)yW*nn0%xG>e(met zS>|3RF5=W&U*h5>0B?c+`OEm(GIyIB1LzQ^=GJAGT=W$oQ0!8={od&}nLFxT&PAM> zTaUQYfQ#j7dxwzWGB=_k=ORwctxwz+aK=7o!@f%pb<8d9O7aF=hd9QS#%2u|#6{l~ z&QxWI` zcm?g-4QB`Yq_JZYrou&Ufiv3Sc6-}JIgGBP4{;cV+}^)WTr6i8hWb8WJaG{x?E6}> z55tl5`H?>Cj!~a`;q$F!>+ca4acWx(Aj3A|ZTQ6$YV~uU1exo>I~bh-uBo~HAVaPT zJ3Ediqlt?+H8+59T=a2zJ|--%d<@hX_=ns`;v!DX4P+P>{Tv9mJor0q3E3}m*AW+S zYHkp5TR~(o{YM`kJW=MpATHw6++gBjexsY!ZXH+vipaI9#yyBrbDOeD_VMJ;U8m-j z!yQUo#32{mT98eJGY?Oh=gk<(Pi$#F`Xn-jMZoH2&#d%7_cF5*NQd`dE;V!iwe&U*Yu<&H`?)GpVL77Xj6 z9|dQ$t;o4LeYpi(iMa+pBM!rrxnb;*^ZUGM#6_H%8%|v8t1!NWsyAOHTYr$ah*NVT zh--v16f)iOX9LH{+yXej0f#s>HUHuC=-0s9hoSNGb zWY`|0>3P54eRN5GnLC@fh*NW05f?Is#rH;XG3cg25xE=0MVy)ojU71qecnfB`yAxf zvkSTa9MFM7oSKW}7`Zq$Lsz=yg?e(hX~abwa?vdZ*&H}yS;BDS@)FHt&g(uX*; zEp3S_>gAG|wLXz;sa=Z!bcj=P+YuMb3Oe;YNiX6ej&Y?r9m5#T``Tr|#kg{uGQRDJ zE9$h5?{6@g<>`c%_EETq!*J2vCK>v%PUGhZ;ZNb@u|NlQh3BswXAh$k4xGVpoYKCI z?23yX&&VB*{prMBFfThH>oB&xXs~3Vd*`<2VRcN>dnkg5&q>=o{Om zaGcDIAuh)$xiE+W=c2dA75}%#cQ$c34!GUY(hz|T+Y96>nnNbzKdXsLI3{%Qz_{DE zOqK|;#o*&*oR_K#kym8>${6u5&-gdwL(SCFH9<=7eSqeexRl;f5LTy$O8 zuQFXsOy;5wXJ@eQ`J62>_Y>lB9B}a&fqN=Tn{LF#p%A8PS{{7o*`B5sh|6&zT=!I@ z#o`axTm*iRJ2-dc0GaFRh1Ug6$%RY@$LHnkq1k=z#N{|8*GyczO+!Z4V$ZhA;RX?x zyIg$xS4# zGn;!7m*bS&B;tzvRp-$h;&Pmln@rr|aJH8wyYC2bIS#l|{#uBO{S4-B^FmjDlC|6; zF2^auO(CvGtIN5kOqRK&F$2JHoRZs{UEzH#Z&6TSx498F2^auO((9iv^qpwj#F~`5Vs(l zwbJS)aXC)O?Mqx|X_e2H0odz37#H3?^R})Zaf`#*9!tB=i?|#ITq&(!um{dX4-E}V zt9BcPc9OO9ATGx#!yQ0ekydeqE`-S3#l+<}C3hfkOTZcHA$NA0PZF2ol-xlK?4lQG zRq7hvJKMQ=>T+!yr{oS+aV_Wfcayon#N{~PN@+EOxa;AJ<*MWG4~ELz$He70Ww-zY zXYY^xF4TOK%w18B0dyRvFi7V=YI=-I7q3AZ=W?8qJ4MA+kLw-~m*apd zrPWm8&Ve(Qt2{r=f}w@I{!TS80Gl^br`3n-l0B`|-(Cx9H->YByL6G z&YDxZl+1lZT#i$6XA!qLaq|?Ll`3=V1o8_Ur{vBiZdKx*o$T^J<|YuAlU zLZ6KLh;Tk|#=3RUddD^fk#UO%=M85Jz00I0Mw>pqZmuap7UPf9Pvd`!XoMo`TY?t= zR|Nva@k@9k3uHBqmyBCVxZmN7xKiU^ShaA=2-lvS;a>N9x8Yj2j|oT3jV|O~&C6Q2 z<%DYqXSC|WnP;I@b+m5<;l71)9ynTcT3c6%>&FmKS;4vJaae}&xZmMUixnE_vJzo{ z!+s8N4OfaOl99D4f{SPTxCSVaiFAYH=91Go^K(X zXzT7)oi$Jk_XXkHAhMXwIZ7o$);PvvE8&W=GptklBL<4LBkoJWVc&@9C$GJf>+iNq z;>oXFn?CwfB@=V%`!J~$WsGW>-jF>xz2U5>b~5eB%H@QYVl zjH?PmA4l9b2m>7E2gdhskIuIKSB~#axQ4h&0Ll%%k$VH(mHK%7-9q~9DHNi zPK|P~n{Zv=j8=ukFKw&T$II!SOyVFj!SVG18R^?gIMGfPo4e*aTewnr-bXl*ANcQH zjd<)Q9CR+s4T(w8%wGruoQu9Zq#w3J_qMJXZVOi`_Xh~~4m-p5;krGAtZ~e@?+FJ3 zMwV}DrnGyeg@eHvI9|^oXkFC@M<59t^&KLd2cqHdHkDegh5LbUdDt1&H%0ARq=h@2 zN!*c4;*Jt7AB8)mz$|+^B&FZ6OyZ6ct{j{(U8dy=Ev^+080dg=(Hr0wQ!U14>Uk~P zNw|i%QSgiU-XBwOvKH0lCVH@b{S?a77?pMN%W@mUlaHI$%sbjdO3HKJ^ zDm?Pl?2kYQ&P87selh)aY#IndQAd4X3^=|<9j{ipV`!#@J4ZN7XT%-SJ%S;qqdv$? zaQr!hEBMx>R@UriE+7nW8{s!69MeP3xNGUVh%msFgGgWJP=b~=_zi8j>7B#{zYv}t8VSvLAG+_Q7o_X|^ zRy=+uTxE9F>56SFQC$mnm2gc6x8UtbV5Va_UnATkIAeLv^FcAqa&?_>P>7k987o%% zYw5c|xORk_Q)F(a7VakDFqJUe2YJfDtvEy;9Pi(F`avRqQ;s`tYNX#Egj)({Oy`x? zS3(v#>id&$VqEYpo*0j z{luz!waV4snZ#i}V7V#j&O%z0e4kCnZ?53d) z*Owy>+ZU|oC+^+vXtPgh$MJp}af9I(t&gqo)(kD2JK!K;a-Ga>_67bH$hdV^potXO1MgZ!K?B*PPlsjWSEWSpTIkj*#{7ex{}>+)86EZPCKLN4Rj(_t~BAmT2K>WfE7LaM&JT{_bk$ zzd=i1olN5J(`uL>&h^D5Ai|SySe`N5nlXRQvV|*^11|~3yo@XN(_Ei7;R?WYOx+L1 z=IpDb&qqU_x1wD2j{~~SmvCqsy4nFXp$VaUlkBUjq0d*LkK0!-llIlu&{t2PkK5NE zllC>#(APkrkK5NMllC>%(AP+zkK5NIllHx@p|6QTAGgmhllB=j^!X|Dar^u;Xr_oR0G#s16NuD*Fpnl5ICuy#`yqjUwq&fTY-cVUw=_Uf#c~CPPm1H ztMk{K=3428-;GCot>71HcP@R$C0e*h!r}c4wh4!0mXFuMMG%MtbM*xwsu2` zM@z!tXcObn)6@M{l*kVWhdZmv@%=K##Wl4w;@g^VB>|1`SU>aXS!K99UD^=tRpZ@g z!pY-}HVXT=zP5yG3t^)7%Gh^HYlYj6a1{x6Zr^9^Z8)i1#b|_EP{dclwb#J4*1+NW zfS7)AJj!d}aA#UIE?5KCNdp(Hf$OY+tE_?RqJeYMz!^1g%`|XbHE^{BP8tuH2#51J zkYT!<5lx`DQvW8EzixyR_07A$-YX_WIpE`=Si%LPE;uIVEVQ(WB3zD(Q|TMtsOYwu z3LGz2X2KN!ldw-;T6U}Eyg)qRJOP8_zljxx4mK<7&JG;d2yIQzJ!Udo*aNWC3 zvf6M`Jdy|}$D@#lhlESkz(s1{EE>2n8aSNaQr9DYfs@KrZ^DUk_29_99q%b{Jl|4P z`Z}eCb+_f4RG!l^iL(-J8CnU4v*(iOl6_b!OkE#Cd&Pu`bsl{Phx4cCZFT#--?VUj z373~}{CTaTzJ7#rgY#Q}Jz6O711)|13HLEzu)ZDqaMg!e=`w(DlPKIgRc?;3;iPgf zkZ^K&siTn}g9tYY^kID~_Du{VC8m&=H{FobfnZ#dx^5UxmCzum(W`glA>5KfLq z3ypLcNw{jD4@27-)FD_a+);#+<55zfkB2*274G~WV#YU7;CTHQLpYe^WaY2w=n$w< z6kjQS#}ZD?-!Y2#a(&|nhixvp-vafkwaOokZ?K+YxLA)ycwSj!!%5*z&Y-#r(C>Zw}$! zMdQHT96tYm7H%%#VmVB=Hr~smg_}pX;)FAINL#Okn@_kH!W}=9c3KO!fN(g@MsKe0 z&d^LdmeYlVgUK?6^IE>)m=^9M!lh8SEjtdbpoLpRxSbFbmIK4hZ{d-MW4Mb6my=)8 zwV5z?fEI2E;i>`-bKoapx#_a6Oi zSw(r_cV9?C89R_ZE<7HeW>Vi84Sk<#=vzxTOlOQ` z+ZxC1@s;fROheyV4SnlW`u^V9(V!LI^&0xtY3SQPxK>~r=I@%eDPwK=q z;nVhTC4Jv%=-W@>0!?QHmT+#A??W|YA85$tX~-`~R2%oE3Wr=h4wT4=Fv^hZImm^q0mGcHMARg#sL^tB+_-x4mJWOXFmLXx4m z7>_t7;qE0I_MswO{!nmv-10X=O*$R+c>?E7GVB+GtOd!g16Ii9kgSq~yG61>lFU1V z1);1DNQU=JLUx5@ zcwZ)Dp3z(%-U|uYV3Of|l#uNw8Q!Z2SrL3t01oeuge-<+C>OHz8nXA>Ap*v-61N}8 zP%gNKG-Pj!fxm<^YRFcS?4X3ZtbwcF9z*0#gnLj!7SlnX?DlQZkliKOLVyc>J@Mud zTp208Gf9SWfjgoh%LStu;RLRyhHQ(5>^&SjkrUiOB*S?wA={*Z`&C1h4=2f0`Z{XJ z#%svVldQNDZVn??_MRlGPBOfL_2^3{^(cyPI1Ur>m`*Z$CL(0|t~?B`kJlM54Oy~= z>*+)7X@!fim4 zE2|~h0+M|y$*RY3Th>al2_(b$M4@jB$#Cva$R3ewq9i+D=K65XNZ?k)a~VG86tefb za~aMF3fUJV%OT0cx6|?7Mc@V`a4z1b2w6l=F2lKXA*~*tdu01MY1~* z_ZyN$NVwZ1>m$kBQg|4>Bv~7h-Inx?B3ZD6TTillk}SA4*Y`r=enqm15-uQ><8aBnU^;3RNY2XGnADF|8OKrX}kb0Hfzh|A29 zZ1G?&!}(`{t2%_s+DWpbB#V+{n}=~+cS&|`IG5FsWPL|)8UAAVd+emV6dB2J2@>}x z$y_Db;87e`R+4>0vPUcoUe@-JEK?FyiNV2O_IS%J;guXf-av9Et30Xgq z4UuHWNVW~&0{8wj&K)G-7Lx2s30Gt~#~qMlO-Z&#lC3A%Zb{}ggLA)?WaCJ-U6Q>$ zlj9CcGJKN`-4AdGoA;3Hs3iN7WWP$X>a*YRhG$0XT1 zb2#@4Np^D{m;Elu%FpMrZzS0Sl1-ItnY(~+k}TyTF1sLclNNDV9tpRFWE&-1z+#R| zlW?m^wpGHtzl7sZg-C;+Nw!>)bz91DUrDmZB>P;Fr7q*Rb&~7?$u>zc!^a$VO_CiT z*)NhT-zOY5Op3=Ok{yz87f5zOl8s-@xfr~N+pJHy>^n)eXbqR;lEScj#$`(+nRz{z zjge%5nCRg4!y&@>nq&hc+`AZgaKFJJa6X%v2;O(L%TAH(tR#!V1O|5+4#8bTGE6cd z3&n;7T&fiAS(1GXa)BF!g%;dTa0ppvYzV-ufJ4ZxlI)};JAwrO+zvPdt`RB+cNq>L zi`a=0oo)#nLgu%NiF7|pvUz*B42zP$4Z_9&+!;88tT-kTxZ`jLS)+YSr2A2l4Z@5C zcM%SOd;cI4>Asg_Z(-p9cMcALTZ#<}xB_~+Y%n%J;5NV^aQU%uASYy1G-QocGGmfC zDK@3QpfY_ZOS159i{S;-hq5%YRe^I4i||H4SvYWh5}zgsSw8p==ORhw`m51%EVK6F1)7_zJ;H2#R| zCgGN2hoF*G#s(bRDma9`c_2eBHUUEBjfD)HEISUe;vmCjLE!wbu>mK`Hj>OmvSr{& z9>#sZ3hwtHLnq5BoZ_<55;q)Vr9gZa4#6EkI9c`;$nvOgk3m)yWTPZ~wXw3OWIaJv zSS4ElvbR;TOCZCv`k3@VzIoR3gzpLD;N?=}+xytCNI3K_1{rdfOSb5-AyCPBfDGgN z7aStK9}`ZN{SGpWuPm#E9S69Va0u=il5Muz>|NIj*7<_Xcz+~pZi0gaa9`SSo<0z_ zx$r;UGYMP_G{VKl7+S;Do3#s<@%CCM=TJbmF?3-CYQM~N^3 zFQDI!Lw|!yeBb_9N#Apjp%XID*8u;=^h24@w;vj23^$Cpfb&J*1~_WKA#n4ruzzeg z{4X6kEab-7xpl#0)^65B0M-3i9Q1$_IP|x>%DKJmTox|&mG2>dxB=JLKRSWK|Gckr zZYw+28{4LJaMVHoadY2b|L6n`|GNmX5^$bIT$F9NiN8wO*ju~|$+*scaNI13>-{HB z`{|M_?`@6~GCA#0hW4@itqc3m!+-S|oVSy|5jUr#?;|Y8;Hpcqj(51MoFp3uGR%+1 za9|n7y!7>f{W1Xah`~t)y#==ST*hqi^@VajSuKMyj$;S~&I7)gqmubRfx&E&aXt{K zlD2Sp+;))7!aktr9)b+(%xEbdHL>xMWGt<~W*pbzy||9Y&C?TXt_c5e8Ko)M?5CE2 z&D~Wp53m`BdotGpY{sF4LRJs@6_pIr3hPS%$b~Jw5H8xnWjsysYNS%;=?k{BSIQs+ zs7p#2SfXS5jY|5!Vx10eBP5xZ7a)g0_ZNs4dAdNU;``}y8BZ55S%=M-EJGmnsgjJ1 z5Agm~l6iy4xv3aE5APlN}+PEGu}A*Ed<#0%TY= zMo9Wbfef82+e0#_vbHdC+~;*+7s;Ru)km9gzHKL*MH?~Z0sBWMaQI&lD9G414h5`; zM>;Ru3fTpa6;|O|Jm!6)%-sSqjK^R}-@8vhAj!Z!FHGk!IL_k*YQv@h4##!FW$xb$ zppb0=8QLOnpbx8{t`{7+fJ<$TH@44MCV3ac>t&0lJdZvBxri@*X%?L<8~lvtkt{0> z4H(*o-GkuP$4(ZUEbFY-Gy7!O2p9-qdvys8>;br(?qr9l*rfDKoh4ISP4 zA>w<$>R_#|JD$MZy)k3Cc()nyz+=Il${sxM&?$*UepNMrR$ms-J97hli zMY=VlPsn6_hcxtw_eqfZob(Y6MY?|ZxP3w<>-#~{hhDT#?8ArL`@lu}2!|qF&-`4U zkjeTElfK4)!}#tz_!#zn$cZ%OE&{g{_z1^j0}F6{LMH1wqS9Ar-uXDOzaElH7UcQ} z$MlT?89E`8^&KUBa$bskCXjQFxP(*WeOK)Dg50lwTLjL8Ly_(t z=@T+p-$~LJ1UOeXN{?~9AlBL=w?+}Y&JE6lLy^t|GIT;F>pMmIMA`7~nZKP_yNaB- zz{RpbI27p~l0G4m_5G-!Ppol8ZkwW9AK_4>+X6ClLMH3`Nz#Yuhxse^-a$_3x41sS zp-9&jWaxxU*7q~%lk->Xxq_S-z{UI}9Ex*P{n^^_?YsqWt~g z;#x|)Gm6}aFi^qx5)MVWLD*4%6Ea!fInpQc7u!zp&K`1-VX+wIFX2$6^RB@437M?# zyoNsUZZ2}402lQU4n?}dZd{*`$@(s6=o9Y>BKPBWxjw?7NH-k^FW`hs)^|}upLpjC zIU_4^eS|}i&f?DX37M?#l7>F8(y936Ea!fZ=_EyFX9~&kKkGMfCzlQJt|fBQfQ$J-I27s5lRhDn_1%^1!~8}2#JiEm4XexTBOHo! zXF!Hd$Yg!@NFTOqVq7Bj-bPMRJ>Cux4n;cG`dpuo$@=b-zBYhEeSK?rE)aW2B6k6C z35O!xj)uHn6*5`h1Ia$jU+h=K9+${H+nC!&I27sD_;LG$O#a^3L(*3OaA+TQ{5}%> zg97v{-#JdX5B($JzD2AjjdK6UYdjZB2QE5}Q*s}_BHV2hF2^akPhP=2MqG|la{neS z&KaUxTc~Gsgi}x;K4FTr8iM_T1Th6#^MR$8k#TGl`4oe0TGA)nzRK#N{~P z@^4zOAf6K!=P=M)W^xCZ*0P5iPh5^uhWmoJWr2r`-Q7)Zn1H}7&+W2#N{|8*Oj;i za0?M%%$4B3XMu}tFUKjlxhPz0UqqRfxjBM4m*bS&+^^tPA}+@rZhqo+1s>kZaA&ufm6_8Z}8B_*v@Z3}?f4F}L z$n=%)1g_9a>4NT|W?8$(=$l^PdxE!bCmLjf*uljpg8;HwsN^WW5I*adV;&PmlTjmwq z=fveWCHI|Ia4WUoWrO3C+_JCWwk9seDY@ld!F@?wj#F~Wzk<6xjN8m{46KU`x7Sut zU%RPfwF6tVagPZM!;G#Vg~8izmi@M$MB);T$@hQ^+do;BGlJjG$g-v&!||sqn+P&2 zuR>NkwnwkDx;{*=8`;7(r)CoS&o999^D_n-j2;1DhJeUs!GX;Jq6~o{!GSIOeB(_C ziRL&zZ$Do@_rTC(_-T&bph!3(xX^oeiZBCk@jj3CrxwSPlJ=SXMZn1Pv zG#kC*Q&KHfOSklR@TT!gUS=jU7`$2rga+vR;>>BWsR=1oORCX|8ZyQ8jt;WXSh$9S zWUDzf*_3DyAsV<11_Oj)Y-;LdHkuL>EwP3)Yn;L09W9AW5VpY+alOp_4Sw$7rj+1h zYij?{q?ANMTZ&QB1ao3s8j~A?ED;uKbeh>QthV9iv@}z9v%$;T(ALkrn<*_J)(8<# zNbYV3iuQAl?O}pwrkWBUy@I$Y0Aq$RD}oGO1`@Y5C8jey?jH5sJ;Dqb#4tJ_*gxR) zf`hl3{Q9sEvu*r&f_eKGFfPr^);9f9%n_y}b2iOUKmXUy(ZC+&*j|_p{>gFS=G5-y zrm2>sY?&VZ!7)(8sdj}WSj`5=Xai)lF_bEPlqnTzWOgjQ{=rcJLHOt2mPI1a0#WK` zg*JpoF`&QI+&W=^Im`mBNOp{1KyWD5Nn2L6Hm4?-5+O#}G&WI?WBAuLI3+F6lF~mi z-I|hag^t2(N-`u^MA3vcD9{w!!yJd1mrbJ@f*BW@7Mh%3cFI=T zDLNpSH-(B(MFwbP*Ud*+PT|gmGPb)jijl@pz^P75e*WjIza^#0{x$=BtW#^P=$)OR zg9CzNLfAMnHqn%pX2iN-bXrurq5}~XgcV4%)?ggmS)y&WOU?qrk`|z?0_&4w_0%k^ z8Z{B_XamgM6Oy4-#k+wZb9_RwIS!=kt~S5~1LxPf*=Wmez8vnoGrnnMCEk=03U}`8 z?w7{9?EV|a8QH+r;NIz`L|X*jER&59c*~?rUk@zHIA&#cf})H%V=7f{k5`oVO~GyVHQiT^c08<9|f=}sy947{xAyW zy(7hkS7sK0R_1sS!)zEc9N#;O8O$uES*7UlwkmsP9JaYQGB%~~IfFO6;L)QRH23w! zI!=e&G(8la&K{>_mvmwCsjTJrm(wN9HW~ZImlSrNDouyI;Re%CTJ@mm%{Q92mds9e zD=eP7wC{l5^Q*8P)XTbWbLu&Z<&i!R<{KqD7n z3A4oZ$_`xs-a4>pVu%SCj`k}elnrAdCcK0D#U`f5!Cii9b7Fk9iU+%^hZ|(b5OE`v zZ3eT>??qt-J{t_i#k_wuFje`qA-fq&k7FEXjYSSPotV~m$l|C)N*sJj;$%wL@o~y4 zfzY|}CxkSS)vH;erJE@+I4Q;2|5dBMyjupe^pAlVc>5z5C*i&N35*k>_5&DaV9n<* z&cRxbU!0*|ZS#;u`O%9La3-I;IALeu!HaVZ8qZyz{dIyD zHO|RpsVc!!%~yls6Z)CsjHbA_R9Js#G-JgO%MNXi-W(?Rz2OElxL-bji)S-XB`M9{3`856YX zc}9%asOuT2{fG5EW0e|pJ_CYwz0ZJ<$-19`hAhLA1`uT%k~ttO#%8OuVL`N?dt|qs=2$B%v=$ zAjhGYK>|yP&B^IWn9#HiKP|HXLx>=-66?UA9E3Rnt&s?0^LWk8UY zl2^agV6=dR_<8}Jjq!=5?tC>r7HIyuMT8+TFfuqSGBlW8Q1J5;MueDdRZS0YUS+|z^{9~;<~55!4KMmV1MV&cDW)4AbTz? zB5r$CgM%f@wP6OO_1Yk13^Ky7@Z_~H&WB94kTVAtHe>}YB~?~vJ{dId)LF11kpWCZ zE&~Wf=#>b2Bwh*iady)wTkQ-ZOm=pi?9KSH-PnwAWT}yLdaryH$kF^v5|wevBuNp` zEOFGa|A%BY7s6hTdSf4A^EATRo(+r@r63!aN@XwGSZXivc9XNsyM9`QINKQSSg5m& z=?;ZFn_2GTWEMv5rkp@Tt~t3(DU;zsq!F{|r&YVvW}8)KBc-n=m;+3LreWf4wU1%(@e z`~zFSP7)!GGhWsn32A(`3!bjCiVe$bV0NQdU`h%`rHzHXrq8ZqG?(N7kMh{W3{B64 z8k&ZLHx2R+h|K)72%DY@G_+{e!rwnEILHu%`%}bP68(Gw(&OV{R?ZjZ=lp!raT5nW zUo*b9V4H^tY;K4QiVSWR-Za7hF@c4nFe&J5g&6qx(*M2?Q{QBZ)z3Ep-k7yBLkyuU z{3An~`Ue^UVJVKEFYK5BL7A;REHHuSYqf9!f5n#VszK95%?vFf!otJDqrwaTV?o7P z%p#B^lQp)7UtL=`k%pkaVE+*R$Vfo@`NG2;n81atJbZC84;#ueI5@nyf78$w1_d=L zA~>{Zi{>GW>K|)`7h6z?iX0GPh-@Af<`3y0B?3%tLw5}eKX~_!lS}o`T9~zqw-^lA zXBv$u>8a*eh&^2OGPL)%y|(8K|KPkYy~GzSUo*C)i?GboXoP24aYmRiO-e|H^*S^);N#58|&vHd9|yJW|i#qDMCqJlV5v zU81tb*i3a@IqjdpMXoqC)zsgZZ0-wl%*oxYJ?wF2W_vQeCPqZu?-hEav?E)csk0Y> z;0%KmIAfb0sg}M*=U6CK7z<+zkDHNKXSM+hmbic*TszFJiif4*8q!#rLotIVA>@U& zfHrM`Oo;Li;sqA=!g-B-UR2o$BjDFl=I@V1)!n@%J7Wa>JYQEQE8y^6V?uX)gYdQO z^Yk)6JC2EGG=^LIK_yPW>3w5bf;F8)R2^+nKgw&^Vga9qU`bWwCM&M)#t>6l52J~d zuvFM+$ed<|S1qvKi=1okA4-A4BPPG_%x%g8b)QNGTU-B6)4;>PUcdA62(xq-GwaUh znz3ZG^8siWKK;QRg`mW;cTxR3Gp&FnOWn-ES>fRUv66$KH-+p;>tRmK;86`&8Us`* z6!GFglT9-m9tQYh9m78~rClmKDdSyCxT$|Pvwva&y!I0Z zJ8vYytE^en847LEKg~l{4jheo0}N?vf)3bP*QbreAIrZX&=SWINU=4ELn^n1emL0J zLXHtv;P_+D39UF3nC|e-Gp@D`f!CD`+zf~0V1+Iw6rOBK!xtxd zgn7T0yi&lk_*Ya=h|+77 zd8jkKbs-+g%{sDdMl@Ts2XCO`LtR`cw+BObC=+BAtVM(2#=o*cEyL!Aug+(2w{7JT zEU#>5`?@$+0Yi+}Ez+#_^`tR^_Ooj-{>G)Y83S$W>}(~H*3pKFU7ei0r0*o;|ICZ} zwmm@jo+25?0R{q^d!*TNfuaQ4$GlRJ?M^c|v(Q#Bj!f-iHmFxV!90dJgJw4r>INII zh0-2%!Tqe}i|P(Ji&pV24)n1?=8m7%#TT92Jp%kQ+GLX5qX)48 zY+KmBExv!WHNHOYd<^XpQq4^*sW2VEN{lU29J<%m{>BI##kTW_grNi1Bhw zAWJ&z0vcgyW9lwOGFea$1C9uJEE8a{B)*0&uvQv>;$o-QP!=NV;?ewPF$_^yg;D&6 zdK{zo4;6{11zD2K>VbY}vNQs9x=SmRN@=td5M+$tL!S^<>RaL9k+sPGSUYb&z|hz0 z=&{mZEDegS8l9JTxHrO7hR~78;sGz9!hW1l>1jQ}5|R?E;17bisUDfti1nA+LY6js zxX#SM?z^r}1}##1e`O-K;E4?S*jxsh2ldXD#?GUqQWWZ_2lxHRx}p%JB0qO2b_QdM z45KDe1z?cW)JU~yT0cXQF#>n^g_+B!1T!q%gCQFDQ_v5?7MM`PErsoO#G%P}yV(q8 zA>#TI4YwW5XzUFWoos8**BV}O6^bG!Zn5Q!Zg@{>v)iHhWwyXg+3Qt-42*$!;K;tX zwG`h5IaH)zh9=q8DYDK36IShvN1Zr!zy5_h(|a0Jh5ZN;b40Y>X=dGgWkOo}jJF!uVh&u@bIX zJpI|UA>3t%#l;!cMwpa!*x4HkI`jsRKv~nJT8j^J0#202bbwoP^@81iXtDbqtZKHpnlE?>4vpm^$3kWP}EfRx;K{?8l;f@S!_o4 zFyc0oHM*JSU=z#+_E;nwHzD|kinMRX=|%HQ>V*Bu_{-iIZzPa;ZG5`G$;qXx??T4<9kUE zCboKbe*;sBP`=tggB@Z@j!T4|9M=53-heoRu>d??(VVx!d2c9IuXR&^<&jO9{MV!8 z9~|Hl^l;fZFnY8G5<4CJgBg&CY~%4HiRIkXY4C?UMgP=es2 zd?>ux?CUgidy~XBBs2CBTOMYwXuzocbt^13K_V6UWY>@F@N}>hON^84#x+#j?`Oke zih~zu)NF%R7`$Y|SSSZl**pSLYxl;!R3`3^6vgFDwpO~cwHJ?UVXy}uE^7~49r{%< ztLB$=8npAQ=Z8nps_oCSYJogS=jZ9{Ho;bg$W+HMEk*_!Cvg{I+rZtKM!?HK+Zt%6 zUoKD)L_^N*{+tDZ(}<8%Vj@~3w4?RVwA$x%Ax&vE4;LH+;kWmk1;BP~;g2byDZnB7 zoAKoW8qm;a>@|1GaXMslUZVMHQvc0x`NBZC2pYp+L`w1y_{Oh1XbEN>7d8nKoOWC;wu}hWTA# zSu(D@`tMtWkK1`;Vr=#Q6OLsP6a{%*wfOL*Dl4UggVhtMCblN%jW2O;N`Zqk=4q9l z4EwFb_JU2qVsQ^}wgV0O=86sRrqno zRvW{Z=D**?WH1ZK+f*om(1ZVnV(iJ6?Y_ZrhKY$-_9?+od|nHN@)^X}%<3!+*VscC zSmy?-1pkLdK+(i)#<00(O(>R4NRB96mk!rnW7w7X#NaEvamJcA+R@1gz2WoL|D#l4 zi_PAgWPueq(d?Z7+vF20IK@Zd|GVVjPrrk)=;C+3;Pnp}JK*!Q|DjEaRDyqeS#q(J zL3l%q*0r(Vy~zL2#!$YxD(U}sUA)hMN|uR1{wupK-f-~cc(71Hj0mAce`96^;0Zq5 zC96i)tfBq48d-dV=sq#15 zXxlWWCx3e6Fu`R5csK#@5v=1hsB^gXENJHNibCOp;xGs51ox^bP$x9|3}~9!%69>P zIkz}`T^$yj;G7!_qMUH4jL_sNtr17st$V6h$%vnnSV7 z0Q;(RGv^veEI84Q-v__wT6sX9i@E#hQSu#`PbOY&9gSq5Tu0 zed!x*ZJmi-sk@u4Fm^WJ#yXDc>l4JH4ToCET1ulaIIe%PDJdbAy~k^eOHWGbpQ&xM zMHzBuF9z6FWoConRc2qsf@X`q`tZiY3EKcLiQNU@tJARm6THv`OB@?y*u=26G8qZl z@pLvfV@!c91>D^O+QSClP-<8V|Ep6*5TvN_aqOGQ|5IyJj}-Yk1i}B!+dYTs38hbL z*n%~+wb_&!+k<_jT|ME44_N;PIrzVthk=CQ^H++ot?f-0XM@Am{?M`0AeY};iv^#F z_R($TwAdPUHZTZiD-_|oKYs3_Gp7wzM3@d4oZ$*}yP>R^c2~W6CvIIGyY>tl0{bwZ zFVnWIgMka)AY!v^+Oe?5IcpKI^B~ck#Kn$r)a|_g!ae33R`P4c$j?0*Ui4%;#Du{& zJq!^UCKA5F&RbYz&qi6|XrkiHIOq1-x)V|)x8=%^GD?rE24>ggJUl12Q(5jOxgI$j zQ5V=kcH0=iS$J972>=(V+e2jcuug{OU=hzyqrcUHLmlxcE!e0s1X@lZP60W5AB)~n z=6wQ`vLFaa3+3@zS_4C13A#quYOSeeR-|CJGngU(d&#=?un{Ee)`)kzxCp?MU`>OE z|4AvPRJH&nwudRz2n#AeEcQkd@d?2l(meS4Z^7ch`v0vJ1nh~k=s>B}!M!Q@2VB}V zPBbNTi-WHZ{Xh1;1u&}O`um22O~7b^u1YIPgs3Qrf$);3Y#y5j5C{oLP=Pg&4Fp1x zCc8XTDs)M8y+*MRNLaCO4Ta0Y6Dn;O7YnitF_`2g<5PWqDJ%m&YZcAy?gf& zK>^E!dvkW~Z_dn|nK@@>?mTL;vc_cBW@nGB8Ie7F&Zz8~nlU3sjLsf2qHgqv*~3R( z=t85UN|PHc88Ft7X5kff;p+jbh(&OMT`@4tbV3o#pYXK`3%2_dd@jnJpcfYG_*Sc# zrv3Unc(Ck$E-ko($i%F(u+Mz|V~ruXH3L-P*UigOyi$oL5@}zO>7&M>Jq^n>N@`zY zhnq1`%{rzD^8PmH>+t>sG^{eYsS4{Su^DdU;jA85CE6KEH%V0AqqN#lg1`08^atsS zv)*EF@h+l8fEeWV)YoBOTAcUQTGO%=jb^Rj9lR+F2TwM%gN$C^G(j8&HIPk|Xo2u7 zn6Isan3Jdw-_+;Sux2|7L}U{M+fax-1gq#HsfpvXO+id-76=SYj8^r}&E#GFF#xei`>v3Y|Y zGxQQ1H@nZeC%&r(1?>z zJ$3cohT2w7D|R4r9q=@vgjo$I`%1z6uwS6JVI z*>VRZE=DVt3ZLxXp>=yuB9leqCx@tLV8`soGI;>b_Umc5d5&Y4)}E6--szF^#=V|} z*zg*|5KBFa@Z|>cb>*O>tI|^-KibOabXZ))V>jF~l9{Y8?#%RvxtjoCIwV?M=t#&g zcy2m(-45bnD2{eyZHlJFq20ZtE(<=t9EPGjG}e5`^HehP{8*Oco9tgW8(*mRvwv`q zdT1DLIxroDOnrl^l19I?}@bJ*>fB3fzsM^llhNXe1R ztd_wmu51Il07ezv6@zcJ=^zF`Ngn2 z_?ADtq(pp_EN#MG{7{GZBfnE+Vv5!z{(GyFJXiE`H!o(mc zO^wMmc+_ zXQ8*YzNXPL*N;zKN5-*2ETvv1OygL_m;Hk@pe2G81Ik$kYp^lv&>T{uhOGG5mrr|) zh%IqZEptgJ+l-nW*m;mBA*fV%rYZ=2Pf87~HESG~cT8E~KVMCAvZ9c{S z+{6;?h^76=NNtK0zK3g{FltM*^+Yk7T+y0zVa3$Og7mbXfHo_PL$pv~MW9Kk*)g}J zrh)g$s%i9L$3k>1rREV9&QsRZ?3w3eAy$LcW5>XOpUjL z^%1hTShNfdbt#FWWv)wfpcfrkOZ%I|?!rVX*$1sY=`BDMgW=pf)cVTYM$~%CqVVFh zZXB?MVSnrQ{_yx~dM1vk8Br~q(TDetm|+IyELdFAQj3n+!i6-_bkO@5`p4aa@&RA( z??3~x?kn}yW*_OP#_XvcEM=E zO@1}vFBmQyS?`_WZ>je!^@uH!A?~IH^MqL(Z7F32zt;aTa0dK9VWx#GgRjI{bre& z6`C|m#YZ0l#)^lMP!1>JFrP4s!*k~MYj6nPmco+rZH8`5x&66s#?t998N@mZ&G3qG zHT03>(GDR+!amR*_3~mxBN{VH#4LsD5Q<#p@X%svAGHX>pRpvw-oB134p@L;g^_pr zJG|zC$<6&j3;2GY%@U?0v{OjpoFGV=SRbJfBivzyDb}$qwkfhviUojF@QN%_;mWYrSv9 zJ=m}^cVPKvjtSLfI(OrUA0T|^@4U?P0PXBRsp(_=KO?2h?n&qyf1mv4~Y+W`1T^EK7@$o$VT_( zNv}dgVH@3tRq`W3iz&3s(Vl@gaU5K%Uz(8C_x-;|RI) z-AI?UGsNwjDJ__rzQErM3GiUi;gD;&)?CB*iI#wJZ=G1qW@8_|>nXP8@L`y)g|4+o&H?0CfsN-w);9}sbjn!i#FMcXP6z@s-njy4;(T|gx2Zs z`4QnY`A9w#G)->uRpPwtuquC`mARe|*2+Yc_`t4B#>iHrX%yc;Kz1ta8%mR18~&RL z$};$DA50Ye8FiON!(Wf`%J3FeTze8+PfB2%O`oX2^YjsWPCZJ0G)6s>NHk6&NcBGJmoHK^1B6qRIX4C~PZAoMN z`_vt*+H!#Oh;<@`ZfK6Ih~1AlBCO(%tccZ5KBI%qP}RPXeTPK5hGZ>P#74G@M@saO z5=}E2?ex91!g5>L^gMWLyrqVwm6Y|3bxl28)M@zJ?GWDF3sUzH1rj*{QXf2Kc4lb z;pq=&Z~u){3nk)WJgYZzT4>NcVrppZq1buV^sPgN)&qa$;PjP`d~8I-kbAgpQ%355 zbGME9fm=^$wVrzX4`>kPMD%REq&0p$_8k&5D=2C@?neVU{t*Q#_2K3AATIedYWShC z<}*Y`9U4(GmzN{!P%+HyGS;DnWY-blgbK%8aClilWn=vh{N95#tcVi=#?wi1+8%5N zZztmDt8}H|JR-7~YjiE0>_cUVZirSmR3c@rjYk%de%BX~T3d-na{PZF$IVsz@LX+c zEw+bkD$H5&-B?;{&6@8_s?1r%ZLa@;^}-=-%8YC2Wjbf9IA7%f`ufC|%~-b$G224yizg zSJXpA%kL@X6k{NBug#k(}y zED2+}Q`meQ>jZ+(@)B*Ovel6tj9and4W7SN%x*wtF@521L4itEVQxg%@m1*eX ztia{%WX#JAkCf+cZLRS5@t!eW{X9(}{?U0Z16@KfT56Vh8oi4>4c^ANzIh=C!N1Tov1D?7fqU`<7x;`HRYN|; zkAj!+qof~LkZC2^n2{?2vgHU!{eyasxxJBS=Gnifds_^Z4PdUY`{=Ms8&|2{Wq07e;9XM%(W& ztiz`R%sVkhRuKa3(fiY$T5nyAzrp80&&5~MILGS=k3x2(4#!~`gr;*dN*ZyFMq^C_ z=JC67mGK_gw~UJ)V`DQD+d8(2qa!`qpiX=-j?&YO608`-jxPWKjm!!)Uu@!dcpZDG zl_ewUhwLV{GOAP+^NU?mCKkEf1%;DbbDNsxHh9O6)T+t&kz5kSkJQSNsGG=~L+0!k zk&@b_jWr7~xwan1)Oc$B3l}c+a8f)Y>a?_gZ1stwwMTe`o6D75i4)xmysdLu>YIH{ zEv@DL#zt?8D{}QmO=a7aU*MXQS5%Tep|r?GXrgqFABo_g*gT7BgwV=IS~R1~gYs;P z`&gmWN7%X!&vlK@%5}MOUAC`B+S|+WY>T@L!q(LY!uB->VQVS%1PPC}5Ocs$0G2pJ zL5_^2*~>LVR09E24-5co?#RQZlAGgNvaq?Kr%FkaFgCM2AWJmk+GSfSOOW#+rD|{_ zym5xSI6WQ>qPhm3ztvl7m~l;8`dXGovAmh2uJ}}~mQ0(5L)qwDY{wt1br3&?2(~$X z26`hV+`z}ppO1$)Jnp4GwO zX0~WJirRC){4Escvf}yx_bxF1l(=5ZFAO&T?g_^!%E`FtiiR5wOsN%TNyk~>Q3H%B zanaIoGcdmh#f8PMH~2jS%%d@IPT-yf=4FY~(_x9<*}%OI%(3JFSG4#I0OssaTv+^$ z29MFeFv}z^Bz_bTc@^XD4Zyr6ag>iP1?9j}uA1PUeY~Rl95-Dg zCsD2}ILiK4fq7rzD7|*LO1SR^#(e?^TogY$-1p&r5iqSWa3qJTBnG6o?D&=8%{9RN zO=2U(ZzW#53(UO!%qsNY1Ww=w}N*l1uNC6=eu+x}xzrADBrJ7l|Lqr3#qKC63Cs zkzPaJQ@OlNVnB*35^i;zxO?Nk!B8r{i4*txIB=vl{ul?2OzK~OdtYKBmHT$!b_28Q z6cD%~$!`qa{U0zdOPro>mi)aJxc7m%ejss+T>i)&JrB%(B`#9=%L4A?4A?i^bm`&R zl)st`Mfm}4x+0Yq;&*w5qTG+0u4w%JkfA6q;HE1QzuWNcwG2gRIh9a~5~}}<`bOEX z0hoVCTqHUF1h_AOxqc9Fv)YePe(QmGQ{p1=D+P}(U`hrHb`kTJaC3oq)D~A;&%U{y zzYNUVR-8?KD4D?HrYixrp$`mxsc`>3FsDmgFZ>qu(uUtSU?$k|TUrZm;!4DGn#4$_ zi2SO7n`_I@&>O_>2XXTA0k_i1&n6w$0rUT?I7>ZhLAYyx`93K)TuHbi$t4e%a)}F- zb7(qdNQ__@g`WqwCM!RibSwoX7zge~VD7f!Ea@ft`)i4b6~8|N_g)NsWT*cHOg=T> zap~pCCfsUZuC&D&^^NT1jleu3ae97O`1J;Em&8!GbVbUyPk>7}gE5iv&4JfP0n^Wf zi^T6FV1}A-qQ12*3F#nF^L3QOaL9P}%2I|2Sf-v}DxM`4oM>-YaOVTJ5V(6KmgH=Q zBYscC!H@a@+krcp3Iwi5{6^y4slZfPah7(|Sm5e`SuJtL;J1jM1xMxOoHNlL!cCXn zuCw5XO$8Y*(`E28`hz6r%YnOIV)b+gexbO#fqC4D%P*gnIX!=p7EB6==Ye^}j8o9= zoHK7h>u8b&U;Ux5K9CsAP3em=n2~XAVQ$H!lETuGiqhO^`NiV~c@T!DVp>7T6i-RT z6i;SSHI9ZseX1#P0P{?N)Z!ZjjtXDKsI=5TD=Inz+ISIIceIYlDu()8tP}y zXjGKWIlUiD5v@Y^C&M0VF z+}O}mQ`G213=`ht<}%%#d-L(c0v1!KbP@I7J+z3d5Rb z4{Mq|Um2&I-!Ea1q9iNFDJLt_{fhp#w0=%YQ)^S5FJnmgnHf`>k?{J#pJWhYE7SVI9k!xx4H65GAs9_pv(4f9YSBO;5 z4gg5RvHkk?sY6se_zvLhpOBF-q)*;834M>7)3k7y#c$rRAwJ6}fU<;(M@!h;riPlv zxx<=T<{ELLoqb!+UC;<|%lJvzHP8Neuf(FVy!(2cQY1c|3=`~T`|E~Pdm9=ik`Efb zY@O{8QO{PWe?bCpC>eMb3yKn}-Z(?yv=e_iyD*NOP+Q2OIZJ;hLFcKFkEJZT^UZ%T&! z06fr&5}Fh(UX&D4s0KI1h&*{SUj!b3+abg|N>JK+ibP1JhYz+2XlOK`io`{nNe`Q% z!7mggM>tcV&kz(9cO!~gme|RQqe}8MqPiQu>@H0ncJHii6a%V{4p9&m35v=a_1d}2 zH4BOi+7ARZ1Wz)94k2qA0CI@r&J~mkPtrUNrBdBBzk41?rFJzv%chDy*?%l+ckija zo1EsS@1Q?{XOe>M-EAGdvpQWQ8>Q1lGQ=N>ozh7UMJ?S^8x+F_7pd>f+?d^AaUf|A zN6H;gL+B$5>U2=saXS?^o*b=-pg5|CV7EU-i^0qdNl;~|5Af-v$WK)(Q>s*dYIXZ% zNorwA;H|F$OVSnJ$!c0)d)Fp+m$ElG!PiUeGqtSS-_<^W8SO1hO7Qhl3zO6r0&jH% zI+Dr+f6pw6GnuWAa61)>#6S^HmHJ8hWW#U!>Sa2JT{B%a`p|RR6BDw(sFx+GD368o|o06<;g|)0W|BkM#{~T&}KP|5kG1wiTa| zV{7mBs$M&t747bKtC)p4a|gw!@?CgTH?H527}$~EU$Xp*zW!Eq=Dw@ld(`|Sh;nZ} z1lvnhAnZNu6Io!@5WKprLgrwqx?9~i4`C>QT`7Ufo$2b9mR@RNXRatx!2~rwJ(!!M zfme3;7Psw1#8KI@J3O;4fh;zpC~dF%W~du8lh04`O;bzv1=c6+O-S(dRTDTjclH+k zDd4jC3Wu!j4m{%|R$IU7?lu^8{4gcE|4?4lHq|Lo$kx)%=91G9RX-1fEGpnGbCLO1&tZ^KjX4)t#y;LpKCEj>*}0 z#o(&;mV`~c`d)oXVPL6X(x+l-l_t{m)a+S1k5^}=mQS6Zpgu30)y+E{YH11__ZA@o zzpoZiW>%nL$Y7E8o=Zsb9(BF=OSXtpMz#09A{Aad&k!lQ0@QoL?M`|MH#IkvYK7`f z3Ff9!HC~5T%0|3XX5ki^NTk(xaNJ6f;#3rj^}(r0$5(fSOZc6x<6R4TKNjU zsHywST$K52a~B9I1y2f}b+cPgq?_{uMe!g#!d7>(ps2NQl%O*3OcNAo?x}(rg6GA8 zIvdYvg37|PT2Q2&h$m}vl7K_#d9V>`)5uBt7g9t&y36nuKSqpvv&95frin z%1uamuRA5dchvlJt*E4^n`UYH_GpoZ$HU9pxSa|&tBkgkUHi_)wp6W#Z^dj}pvKzv z`iEF;Oz&WG($0(!^C6V;d{`rOtB5WTY;!{GkjdZ(A7pXP7Da=^#ujH7sO`9&LeRv` zsm#HXEe;t_wn7NYy<5}ADI2%YwQ7|*Ei->&>hQq(U8J;ZZ01|B0{>$HB4)mZn^owUH{@=eV89X?QY! z5DF!OuLN*KYX#3_#ZDEfDLKVSzGQW?h~-8qo~(l~D5`YfCfRT!M-cKs<}8`Ak$9$S z>Q&u5Q?L;c)qW6zFK{~*`c}crPu1PH;?I-{!1`BJG#8C3O@Rt@s0s5Ey3_exX-a!Z z5{FAwhs6Q5up(8YI>(Sag{dEn@-#@6C-p^YwN!Ssz3e+Gt-2$vU$0n zC8^!LPu(gNYiSn%s(T+ajk`;>aMa3u@Y0z_RZ8j1OQAn%nz|vdz1LCeVabEZ?RiO_ z;0RIBD3`Y5b}B`9l7yVf3_LR-M4{cNsiLkAJl6}>fBCXh1%J{CDpP`G_T^YuIvR-P zQb~n}OC?fmX|h#RRjQrv9R1Ib>?HRr=nS=HHy?trfMh6WD-)XDCdgQ)Au^AdSgIw zf=DNE>xy&|C+&Jr-1bsScZ))1t#iA=>Kvso1)(@aFO2Klsc;)FLMHRXbxtiwQrEw< zV@-lD6B>_-%X(_7pt$&sl`3U^e_i*@+DM{*AGcFE15cyYkuEl06n3)mO>zGiL5V6D zn&sh&wEYK3ornoC+ku?g>k#cQsFeYM^(iaPqZdAI7SXF@nPBx8DUw04C1T29QQk$) zP!UENjMPt5M@}IW;STtMpwO9dsgqNNZVqhUz2Y z24oMqakC90+h)F~&y&opXu;wl!Q({XlQQTX-0V}RMw8bQgwGA^l4yECBr!-37*ZWTy$xXp_Ia1xSh%%Jh_`%3W}9&9Vk}CAVdS3{%RLBMw7KcEUO%n z^`w$8%~uV6Bntcgv3Qi79Hf<-AF(flM9Ru0sTmSRLF zI0d>-txgHN{Z-&H(f20}DEj`a1>Lcw&%cLJ{#?kZeUSWG78_FlbVKC(35JPnz;Fpt{tI?W};YyA~#uaWbD5D9P zFBnsGWObL_f$kVxy~UG1N)Y)8?qpN%imMB~vE~rY*17h97>k%HWC!^w3Y=p9iXdRPhVd_QTmR-&HZD_ejdzyOSn;7 zsQ1GC<6eTI^x5@~lf>K5^pRTS^z{~$k-o9u(no}GKAzG0#}46l5^!$`A7yxwW^>4n zuKtN)Sjd3$F#Y2M@ZlHbC+P%EFPQ>+sT1yW9d~9JjtmixI8dQ?C~pmX;mLDuTzkwZ z86SP|;~P64&fhoo&CSElJYiyI=6`1F-y!gv= z>;4klaPgB)i*ozIAoLeajcKCY+JL4I-Z9Tqp-Fp-MQ-9JAD*iJ0#wjO% zcH#&3?U~H{@qfOh<*NT1G3u1Z=lx_{%E`%pKI_%0RST}Uc>AU|61R7r zenrWuKmYu(QEPwy@HFe+L4_MSD?VB~O8fh8pz6(!-S;ebC~Mi@u7Bsgi_cGJ?W!KeUkH9dk?$rt;|=ReqDX?j`nMIZTh(H7e&YS9{>1>!`=0lKELBj>u=wn zzg)NA!5=<-`^@#Zzu9oYW50Q9u0>N_VTXwT&ONpIgW_09pW zuDI+MC5wi9pym5hpWb)(6TduVpH?olzYkS5|9AC@qb}3RgA3mUn}^lcPWSgtU`?N> zxazz$zF}EeHzXu1*WAq0y-}fXB_{0An3(>Wr+c%NNKAOZ^j;&)(<0gOB__}?Jkcv> zy&TYR^q2HLT@okgv&EAi848C)y<_dt+^Bb~U7A}TPJnRM+^FZPU7A~?joaUB+y zq2_mv$xT80%+n`1J&6gN9z|&%_ykOt;bEU72}k_QQ`x!Yl9)ickD}6=ayOg|zgdzg zfP`H1)@Y(HVEL9;b*(iSE?RU(6_esBuW1eR~u;k2PNf`(}Sau-(CMFc)FO`YMjvauq zW?ao&F(eLtP1C+;IELcVgeSrJ|9KJm$VNKelzs`90e7=s$}jRu;gjsEKWu#2>^F@o zm1sv={n94_@>_`~g|_pgSGSo<&LruVa8|!GN=SaGr9^)FeR%S2v)>z}U&2}aQag+M zYI%0aj3IBD{XQ-I63*(ETGr&Z3{Oh$nJ=E0VfMR6`X!vzFL#p?6KKf+)%ihZEJD#B zE_@APB_c+}t$rz;6z;=#Qg#gbu(`zS_e$xPa8|!3!HxXNBBeavciVf4DSuy=ehFvw zOXZXNa=lZOOTNGS=jL$JS$T=^RPsv~4GEJ!y_}lL8jXAtKN1tA{McT5U``DgTr2qz z&Kei`06~6-;7MtDrEtq=v){i;zl0NhO;g_n!j1e+!;{M${g#;psy`|X@nl?R8P9+_ z`5lZWrO-R`%j=mUcZ?ph5=NLDF1a;GH=;9?`h@xTn?OHI*D%vkic^KVA!idzkhe*G z5+~fc;FbxB<;>5~Q0iG0w`RCe566uA1Kdbl8b5QpWDwjby{C!4iZcDlT_2m%dm<}; zF+8NXPnK@%B~*SSH{#cZCrNzVuTDgCSQ@NLmJmRsg>b_`Q(k1f>bZNc9J4U%9FA9F z!Z2VcKR#1VM>*iKC);6#a2EX};)hD6%l8LmC(o5x%_>nE8+<)?s%Wt>CQT`LIou0T;u08JWcDNA)18xkS zly8COZUJj^x#H>L*#rabUOcJ%9W(gz%R_No{zeiEILa3)e|P`#zRB4(`8$eWz)^ZA z+}))owdnCPO*2QK#1&fpM%nPA_{YPK>admH7#n`)N!)GtOJ(5#_vH|ZSuUL3aS}(m zmgKx_o9E^8Z209!+)wbgH|}@-vvrD|UQu3{-}w?}=9go`?*fS{#a{~d!A~}?4&}%B zc415$FT)rwaa7NV-_YqF-=gy~<%i3JV`)Hlhs2NhTtdrBeh5F7i(BGC`N{k>@e@kWQvTc;KNGIVCfpM= zoJk)POB@Qjs2|F#+q`rs-1Go^R3#0?RDv2^E8XQ5n$%NdmcS7^SSXv42e;;0Qmx!;^LajVYH6z)`sqi_k= zQE)M`T$UG8eJhtZ&0dcC^)LT$oK3hD5=V8Hu0`)&_?*tqBtMFmH60Z;{HVQ7IMSsg z4RagLoNrYGv&f}V@}oC3rZz){OkabI+fs|0rv^f(_Yn(mX@0M=;OOQ3Hf}r@HPo+< zD!aTie!sVIOFUXbDT;=>(Z=nJW5RJy+qiYvxD}9r#6@;N3uA$FBX`a1mo{#hqy%wM zo@+SF$`BXnQ_ao16#=zR|BZJE3=4U_ApMe~=J$+#21Ika(#EaR#%;i{;eH>IZe(XP ze%dw!gx1`g)B%;3<~GsBjh6Lmmxepdsks>Z{L*bIUTL@oY;dpGxFs5$2;J{A8@C_X zxNWm>OF4n#M>+$!lt94IeooDcuQuE!;Au)wiC8FC`SsLi19 zn=0M1O>Qfs8`%I2w@$i|UenxmOSj1;x1s&<1J?-L8g909BU`4q-7MV*tGNy2PBS^_ zZY!l*u5e@Pv0l36o7}#VZj~m#i@75WyHEVs??&l1)P(yUb%t?KTTqKjlXN@Br-n`fbS;hg5B1QD0!H#8Qqe^@=w@2Ydm)UJ^28U4& zcMX?)Dxt8%6gRncQ+Im}ldCoPQa`8g>mn#2%3Sw!?CU-pyMwtd zR>qflTjqLuEE8Ot!68r>}|O)c2G5X%&!gqi2Y%CPa7`?0(5bi}owzI9GbORe0) zmiPXO5-1W%zABn)=6JD~vvv|~c^X+RdF~Q|7kS0Lp_6MCdZU65M1u0?dFL#kb&I); zwee?!OoCYECv%aqy}I5vucH1kuV5NE>JxLPm*tA=Hl@v9?y@|Q;c}|vJJ+k-+=5Dhaj zWcp0_dd<;!E`9Ig7*H){F<>%oaiI(u$A&l6)nVJ>R+lI%&`2nX_M4OPs_ap9a&56k z-==iL)Vvbt&{}2=eBqoYg}e^ zFE*!)5oW$n6I#ip3Yk|mQqwkAdfyT=(o+4FwCV-}njuE0NU3KsY2m!3J})UVp|fLq z5}MniDU7n3mR4`fpmL!v3g~}smGB@}xEl&jrdDTL;cekfBxACMDgt-vf?AwjOorYwr=bSAohC4NVuduK zGM~T&!0Lts(m-jY2lt*EK zZS>Ys6SWwd`9?a9PNaK!Nm*W%DT^ZT(W1vGvJ)Xx#`w(Un)((OMJgAXNF-=-Q!P}j z(B-kD!DY=RJ{4Xcr-Adj%olAlbI5dhrJLH+1za7efjg26>VEZzbkh!AB%@NlXsz@p zUf{7`aj;32HCiO~mT65Q{XL4CXv?E1a!o2H zub_n02VyLm7Bbz_3dcq<+!rB*W7O%H< zsq{vT-)QOx_DwW;_p9PFi;#A+Hlj3sxOsqvG-a5;H7jF`dBo$zJZvSjik>AgeQRpK z4CI=k%QP&KLQbBEsOM&1lpYp8Uf8BTx3v|<&gcWSM$K+ZyB4++ZDzwWcOXf$(=Ubz zv$lfrDz!ctPOIqI5gU{T5rU$EWzvM<`Db)Uty)mzi>5+tJlb{&rRK1KYu!P6^=9KC zUey-Tzl;`sXwTB<0!H%_XXg(^$<+Ca$WZUWh4j55!b@o!%+%}RvV)ebW&v%bCOcG` zzPH8b&0>!`V(8|sRAxR}oj$K<2x}fx1gCy_t2Cq1}4suSBZ(ip4d}v3ka&*dPL3_r^+D3DtUSObBv= zse|N1bE<$oBE*QP7!{h%hKFsDUL(v(vUM8TYd8bWWZI)B!3t!o8{#%|AT^72ZPYOo z+3uyy5&b@|*>|fLPKl=4sc)spSszy*DV9Jwrdp{B*5fJkga{}6c#iNQi{2v-RP2Z6 z+Wi@g^vw18kWVh^)P|dt$O4kFcE@{=NQB-yh07Ai^yK=Q=;SEv8w18PiqSpOoSWf} z;lW~VGVv2}E-22;vqNQZh1b3JjB9>zE_DsV!nSg4@d^nwqj&G2_{!K_l#5u2rlG;Z z6oCnLtocws@kFxnCw#34Owc1RL61N|lc8q9YEW342ImlSwbjdf)q5LiTRpAl zaUS?ILC2WYm26XTLThNa9?FG;>%o4pI0nb14cFOsA)}~P9=_uI(io#hL7zq>YZO)* z_^v??9_Y-ACtfb|F;Db06uad%EvWapMq*gblfPt1A&s>a*EH5*``c`|dFRdJADOWC zRw0I!ciGVh_4X~dOFSr3i|ZR}>->##kg16Gw;O@XEUVZ;>{z(fl7k_kLW|X~2yHTj zr@2S|tx@jjH?pwcd&oeBPdP>dyge;yCV$^=*K%SPn z-_5`MIQX-~HKDX%N|C!HU;D0OJ}p%=IOP}H@gwVaj)HaqWduRdX_7JJZFBA*4h=R3 z7vAs>JvlGT2I^O3|+vW*ih z2*DSHdphPtPN2DwxccC>!_gGcdw^LhaWwPMz=fWCu@#uNC63Z7aHg#o;3Srz?geH5 z1&E8}44gb6&EQAVX-@}cbSTcn(^L%{6=fGN?ijcMz)b;WfyC+Y6Y?|oIf1(pm>aD) zOFC$3@vne+MdG5R^5cGB*2ch5I-UULFA}Gx!*T-3KHxr*7?6D7H}qoo2`C5s zIFqk&CX4x8lsHd7xfxQZKAxdw61wwUVru zptN$s9(t-3N;S_ON~=J`=7zL8C$_5PjYqLFcapw4t=w>sv>L~bRsm626lWsD<&UG< zbAKFf!yf{Tc#Xmv-nfixId64$lAtK&Op%6UigXrJAmX|TfHEI{LP|Rx{$yPkM>1n7 zL#IH5Tow4mp`0NoBa{%B{6Q(BMGCy>TaKXQD@B}G!i6-v)hIxu$GB9`Ptsy^5zh;8 z8*h}{(4Y9F?QQ4+tz8@uN^WRGwD1#Z2u~0c9^#@1mp9L$rf*AA0|rHU9Bo>c zYl=24D>MDXFS}@SbST=P(Sd`0QM9XYbF^tWj=@)pHU@7Ry$wB%^NbK?3M~&Yc;km{ zoH;HOXO7FRiB&g_Y+G9J&eo-uzuywPym91FcXU5;*{wg>nKOD>|NO(e6PLesmi6zQtFC+Dv4^YPT=!p0yVOB+tSWlr7bfWW@_d0n(Np&s+W|GOgydp=*`*m zkXMF4@S z?IM1I@WbS!y%L+&(hn*xnqQ9ul1w$Xpvg1wJ00&#PWZ*wBO#93f--)`YtgY_3qK7_ zWKf&nm*T;=P`|t|kMlz|%0sw(ApJ5f)Nh&yJ~4shZLAeD!aW8VOyM$4^UJ*uD#ug~ z$f{F0;LD&!NRn~zYiiN+8gpY~z`sBAn9s~*n)J)K&~SNipi%Cvo82vueziq}=AIa@ zF^|02-L29u<3huwbW(b$ML{s@=6>s>U&e*{QoW)gwCKT4 zQ6;1Y{O%(&j&Y&k^1ANGvdWfz85io8$|8kJdeA7kMz|MAzl;m@`#tG5lB}+jei;|) zm)CVimeqsOFXQ0XRIaF{M{%ZB7R7nfIq%h)W%Y{m%ec^RDX!#K)6dp&^||!RxKO{m zt~;`NONo>Nqw{zL zLX4!DVUZ#sG36s8=8=Y=C4~_|`l7u^QP!60MSpKvs23eLGQOmjQ>0@+wW!B{$pplO zGLjJ&TqGt|25BjYgfk~262_E<=#bC^M8=+rF97lrfcOxge=#tBM!*~Wi@}Jj5sWv! z7(5xr7lUh|;$CmS=7umsc3%wovk^2Dq0JYAHF%rK22aOD`eN{CI4kjC2&i|H=%UTaBA8>USA9gCA{_)9+Lq_<)6jF!GJEe>E^q+v1FT zqrTi5zeZP`+@}6%AJp%xy7n?|{eSz}!w9 zWL(r&wJQgthxPz-${B>>{-=R6%0U`3v=EreA&e7!a$R2;<%;OA0zRu1L^bD6|NDpy+}u$91+Q$@x_@-)IV;#Udx5$8g$;-)JFw}CU#yB7TZ zN;pzTxTx=B;0%6K;J#v{qP&Qku1Nf@#=8s*;IF|=mtK!7<=}q2co>+OV;D#E#V*`N zxSux`b_O?Hk;3iWTTwm*rt1R6MU%@L<8fS(i*b?oO+<#S0A@=8<4BBl@tXkmpBG}2 zCERpHvJ2B3$d4j?=`Lm55Aes1Ume_cLs?dpGcFRp|AYMQ0A|cI#yKPKqu{!MnM4Hw z7ouSb*C+?1C$9$P7ZQhJVT&U@xe=JH5*MvJzYWa4B`#8VCVpMOBv*mJ6^-9XzzmhR zNc>1_qky?e;v&^cI#%)_V0up%!CLf&A(wyRwFj6`735dED-}Nx?l+RBrrST zz;yvLWF|b|ip1}HygMJ5B@#z+juh@)z-)=Z&jmd~D zD?1#jq%s?r$0UyGxgD+m?p?sRE(L*$^4AVW@@u(NQT`upx}wSD;Y$_eW88E_l1nDu zolqkn`ok_7a7@DljRtnH}jDJARao(}5|MI6WPfnLeq&)dABYaXLQ> z?pWYfNeoDFiEu4A;`ejl9*n_{a9e=c76W%YaC;?21d4}Udeh;4)Eu;laMRTbcO=}o zz>Jr;L=DH|l;l-hXW%&#n3WQjfZyQPVcyV>fCF$}2h4pEr-y6dN4Tef`CAkZsPap0)@JsKzOu{d$-;>0}>C+^8OaHJ2Oj))7L>9`fRw%vBN>DSp&mxdE8lWALN+JqXNm zF>n;WH-Y(g3>?MJF%NAC+;l~X-_dxN0n9lPNA=GxKPY|^ftf3Dy8KMvuK-alg(A9K zV(7QH(3!_@arn$hY?|t+m{w3S#Zyu-#Zz5U;PzCMx${d3OWfrZ7i0~x@p8~7TYin1 zlXpM}vkv6U$rf*21D5__hgDBgbL;+3prjL%-6`$GgL5{g{g`rW>JECUn*+}z;r!&I z+H(g7-g+xo+%9$)N-`_0Rd#|2rHny-`GK%UHPo1h-RceXIu>*p;GI zrmVaFzWdIqsG<|k#|-@o4&wgwqoG^Zf8I;ouzttD#0^1rmq2{_q1kQU1^3-|U*EKq z%TP^lo^|{5grQp{Y#qHJ>~rfs9GLi=`qE1u4c!1aT}7vvwHtmcMz$XM)33 zqsetZ$@+H^S9~E(s6V4Ue=ra~J{d2{MEpsp9ce4+nArB_!GZVR3Kn+lJg)6^-_aG? zdv*8DUfFw9cUOCot37p->Q3cZtDU(ln_N-@N?N)SEbU6`m++soAG*@((*Ba0-sxh1 zi-m{OR3{;8)wG-q{v>tN&i>U^WioT!U4duPaYS~Yqd!2^W#!U64bI5)Db?MJlcduW zmg-QvN;M0vJ=LWquiu^+AzR0ovsHEPa|Oqc52Pw}Yj8?Zdun!Y3Qi5bM15~24#yU0 zHy&Glg%onp>eMMZgqlVQor+thrh}qcKu+a$Jh@zK1hodfoXTcU>jd>DP6zq3l4 z`ak`<2a&n%s{OI0WA z%HAw8jfAWS1V!y};fIVyIzn+Or-E88!aE(*vBK>T62)Q>wQo-pG<(b;R;B2osKC_m zYIRvkXyGdq6+LjJGhHo854uxYda2_B`_fy#pO&8dd(w{{6v|*>y1FSi%Q@?knH!Q6 zb=x{j(!Db9d|J-7w4!b8`3bCcP}OsTj;Yo1mpcWOS@VfXNM0`m!~1bNl}0>|iU%%|Z98o%tDr?93lRf7(m8bmo(pP*lfMb*ol% z%Zj`GuU4tWNun49^ONcX`%d>Zg4PAy+wP*q2Fg68x6{3YnkZMh|F+5fx}ui8+V0*~ zw#nU{U6)=R{l;!L%` zh%u8lkHblPc7H-Q_NIqp9AL ziY?up{U;92qHMR2DyTtLJH$6wRs{>-_Fvpi#fN9NcuTsGse3{FUc6n4=kEkX75)i9 zJ&osE!pF;?I)vL0{ASIZ1*(@&H)C~bCMf1t3yS$I0LA>4f?|HZ1jSsofMUh+S5U0g z-_R+wbaP;RiqJ*vrQ1UOTD8|RQhTWry2A8WGNMi=+&jgD$zO|v(5wKa&IQF$I8Uc8 z1a%L5IFx))deuhFPOI){FH9=q$_+~m-3`N=q%{a+t(WUWs0=yX4r`AJKXD*dmZG{XO4Kkz-(aK{iy%tr42zmV+f5ifrIMNvWSO{4mfQ{3K9D@KXsSE)Jd!2@-+}Z4uZs2OycGDm9_ItRV2i zj6Us?Q~bTTGFyzhDBe_|>-2o%3OyEX9k`u}$#m}vEAmwGxKKMmtr1MV2a1bwU}^t8 zX`}{}jTA-)Zh~PTRXmLc)tY29L%M&E)ID5lzet~b0OPhrKTzDZAfIG>%@-+@WThR2 z63n!w^F69H>Sf7;#e zO4D9etv=7i)V)LXzl-KV&Tij{X#)#jNJgvAOGcZLa{RmfAM4nZoZ=*3vSz|7-)(!@ z2MfGQ-7xeyqi&|F(o#HzH*R)gN zcCCol>7aC@Va<+I`|L+6IxDWw5q%P+$4iKjh1z%2@#R);j9}CinDGG zD9*aeKylVx1B$cmR#2REFM#5#BYAv|+o|*gS1l9m`#0~#or!d&xVce(5DZ!e5@lmi zR_t1X7prmGwc2N;=hs%(7fS^c#y#6C$_gYAlc%* zx*JFYkjTHbc5^>P0L7zw)DZGb9xaa@3$(yF9+W)hRl0-P73Yi8 zQOdf@CfTNR#dYULY}_vR?PUj`3@H&`e;CkC#}NL07_v#Yr%XYUQRl_3dj z9Y4%c+o_0G$v5g|HNCt1{KA~y()%mk-kClh#Y0M3yi!HM4XjV%5}eacCD?bADr(Ay z7kml9h+>Xmvvbv(sY0mhhrSeeyG!;Ntv$BWjksD=p1GT58mg%fs>M)#G--^LUm++~ zbkjg>!0lA7#`9T0(Qpp;qMiiBy{Ij^+Z&+B-Kp%vlY3x$^|xPwVjnc(#=XJ*ps4NY zRL-Ip35xo0O!+`13AZco>@BG4@q8DzL%9P_>MuH#`#|wq8VA`f-mb&*KZ2rO&Tc_b z=Y!vF2K7(jMx%Hi3F>7$sg64o>I2fcIEV5Eo{xwy-q9&Sv)d;+wNIz0N6T*=&KCBcM+Ydj`p<%rhDQ_~ z*-Pz^e^>Eep)&+&X4BtH#DevB_okeh5D{c4Fbi9xd0SLs7R-%({d|( zIFzZNA~r~_SdF)APeKNPFv!xrgsOl$HR!$zW0XPn9b&*I=zmgm6?eZ_rH&0QdsNo1 zPB)baMJ*bM7GUC{ji2FI`a5yHm+_=`dRJ)*s+7C93)1(sy=N^6^fS7qJ)Cj|pi z!Bhb8UM;;#JwHo~eW_E^hi(W~UaKxn5BhJ-*_8GpT9Ox7>P!!o-qZs15_I20V`?;- z)}DHT9BO)+L=`MugAt{mdsWWXMPt-Y0$bBoe1*hZxhVN*`m^(>z*i@%qrOU7-tP9o zgfa{;a7s$osFl~kAI5&lyZtu>OLvq7{kz1wZvU;S`&!k%DshuO`nD$UO#e;T>PTI7 zhcuaLQBqD(iZ3HA-M#GzR*Ks&G=w;{Of#63yJTA|j)AJT zAt#gKS@x*vzeg=y2kou8*9JCCcR|=e_u8BdY1g(R&8q*&PWN)86iRv}|GAp}w7Zuh zOz=|5xc{S;E?3TXW!&b)SY6C2HHC(uxemiHSrvVYDI}Es(nraLls=kM zx+bmdHIi}Za@dTs)yk`*8;r9|e2gx?XI99t9@`5caxtiP5%R%2s8@lMv(X^M^GDoH zg}zGNFR1fC9f#YgOw_3xK^-OBp2w3_Sbx-{J;KLWP;6YrgJM%L0~9O5rJz0#I2BZ1 z!R0nk)P8g-FM(oyJ3zf6+(?}=E*Z*^aXGr`4CvIIpjc=964ZUd@BN^pI@L$~mP=i# zjR3N4wJK6lRZ$cv_1Jj8FBKH4RHyDXK&Qrl;z;G{6xn97dJZx0q$^TszCrr;Ch zvQ+v!x8bE7YZCnFDs^x7ZbpvAkxc^Z1sbv!2OUizBXQ~;bCQnsg=q^i9 zccYc7p3q%BKs`=AZtoG77M2QS8>uUET?936I zp(E>7lVmZv|HfSo5XMM(GJaj{esh!iAJ8=D!U|3EdlU@?y7tlF%$o!|xFg4vy&HS^ z#!&Tt=gT;%{=@KLR3zw&q`eyxd`J>UaemG`0H~>6xzVILC;I+8MJIDENz7Jy#T{;}KEr2hRre0B)z!glBIE%AqXLsTDd! z_MUN{fa1DGjWAibL8S=4^jVslX(xfAEdw0N5Ku=6>ReFVNTLtjBv7Yvf$mla>QUh~ z85FlLE(gV-QJaFR$ZAkrTYsrjDopZQ327^-ngzT!eT7^R^>?Fq(Mx~vr8cC$5ji7k z_!he+(u8ZHRBNLO(-08LfJPLUqH%nVeHAE<^QAiF1$95-?Z60U#P-pOT_nWSxb5oE zOtg^-pm?UL&#Q^3LlvqLY@{cLI(wa+7`yph2+>O-RwbAC2{ zIukpoQRF|lOzY@U|MsuQDwRD5PPu{3>C7NUbY!mB)G7Ml6uC~(DPl_N-M5RksAA-- zb5=#KM-_PH#!)7de=jPdZ7+TuMTI-}q8FcU{HBl6NpZ9Bgo(%08Pn*rh~BzpZ+`EtadLE6g4>6NILANHZ1|9%XK zP#erhVKnKPhD5UDkO<6+X-LG{@?2=}<%&Dv^_?k9J(9rV6k=d5>Nv#^gUL0~J}8?; zDvFUi<`MQ1B#|4PZJ@Z(`43Qga682tZbGKPA2%Tff?_u^HatFYAt)Z7DAC`Rfnp!C zLD9GcOdu#8pI8BkMV|)DJ+hnOzQw z4HdTOm1g!5=wddwmx1EO`0b#$G5!Zo+}yqZ4KT*ttW$r}sZT+%;iIK5Y^>Xb1&}s3 z?vV-?>P{3(Ozpk>8L3z$L_8H-^agflb9Tk9JMeNf?nsuHRE1%Q#|qu5?uOOHs05FO z(|o;OL2~Mq&IOyNC%&+JS*j9jr-44-_~28*Gtd*~*20g_lBdvmg5Y1zs6O(>(M|eKCu{ zluc|-bq`0scR{F!vZK~=)AmKa`-X9%1WqnZ6S zD)61|H+UpzGfWmWD$x?md5X#{g2A)mO_KIy5{vT$6v0%5d!`GjTtoA_&qwSJ|Z;{p07l@RtK}9F+RxY9Zl>pI)S~5v# zXnQGt02$G-^E9eczLNt#?BDG>(Fj+@#-9X8ueAv=`&^>CMI9NlJ{Z8UV%@F3 zeE<|&tlxlQi}e^NwpdTq5jxnT?~pXRy!z`^BthrcD)X&1JZOVGz`F$6Bg@J;dT3oPY;I(1r;MTj)W&gmNgiY@5*I+Y9RCg2=OA*cujE3m71 zHQw4;t7R$K9qP=~;Ib!!GoJ~%F~@RU&KLd*<`>N)55~yF?+^wme;2t1OE+U&UEM4o zq7Godf?I6sBn-*yUX$QECh!)z-CMv{z-ajBCLTU&FI__hGD}Si`q!erdR|uA%Ihh_ z36_A>-Ku*tkjDi!_u}}qyVsNN;l{1PP@s?f>GHqXLqNY8V?ZV zUGxXTXWW@t<1z*8p_VXoUO#Pw)yyZjr;Mj z?v4J7q%K64*k7uDnD*siNKj6gDcy`gZ{+YgDGGcR5fqduK18!CXw2?@pxeKWj77$W zKZlHU4%yxEOG*%~n(9q$qo|hzKI@Zq)m*rDXSS0=HNtw*2)T@c7NLEZ2ax4$x#{)b z@Ykldq`0DZe%})EROH@k12T=ksnT2gW9annX2{ROA!(0wnBuSkfWWT)D3Q+yRy?4O zkn~`7)>y(YeD5p_d9@iu8#O6soBu?$U%UI-GL&a++A=tn?Zni3)nH8dBEBq-Ey`K; zK-#s7X}o{glk}~nBZ^U6EgUQSy{)mbgQCuE{c+K+A{ z*N|yYX;;y>)Q8LIg`9rD-(HF_`FU|$cc#dHy^K(#bvb-E2TH*F%ACIc2# z5EK5{;xC39+v=M^u`T-pDE9j-DE9j?DCz+_6q+e;vY@ESe_v32L7gZl>e)L5+P{;CJK}`omqnsEm0rj4sE(f(+P(e_nnVrfl zpgs}QJ)pQPwjLDA^i@#*7H@l_8MIMQ{Xjh zTmaOog1Q0J^Md*rDEc1kRDKPL+SX3x2~d9#)MikB64YNn{Z&x!g4!ymJ)o!yJ>rV4vMAmD^NVw zgC;05^%|(32;3e}+!Fi})J?*TPB}VD$RGvOP(h`FI$Kcbpw1DL6BLbup$`Iz=1@75 z0idXkIFt-fBLtNRYPg_=fXWus*`P)VDht$TL5&1OwaTH41w~UQ9Lo8i#tF&=iarE8 zlmbvWf+_|@pLiU~Bv9uIstgp>NX%bwuQPqNSx4fKps3H}P-cUQ*wUV~8gIF!ZJES^Mk-b^ zEyDy7(S9WuCacjOVQZFOd4|@&hBE@f%Dnjr^XR>1dW({O>3X5gUtEHfJ10Z zLw~88LTsSTqy^E{ZWh^PeAz5UJW1eAWe%Q$q4M~P+k?XGM|d(71jUBv=epZ(L7gsq zkQ!$knJzM9C`<_HAwgw=;7UuZa&>dJ18!8w}9emt-2pD zRfh+@QcKrxbjsNu=!>#Lm!O|%EJ4RQMNBO?nv;S-T3Wc6-9b+gXO8#@ z;ClmZr$TCisbWxTgj*?|oL^XzK`R~5r$%$|Gqu{OZos6mp__vKJ;BPZoNbHGX-_&O zSd^}I(ii<+YH|gpt0(T(7Jj5|N;*YRJM}fp>rnr$9J&eXy?^vigwdXQO5oYF6`zso zqU7JvpPiXB-vd+b8H%a*FKTc4Lg6IR((=5`?YRlT(o}7h7uaC!L~sgvd#S-G&i2$S zyi9yPu&fL7+4i+u)a~D+j;UgSQ2e_6sX_`^a*bJLYH3&QCTyzrnGo->YL!?x@$dFR zTE4h=vik3-avGN#L*6ODWK(jqhIKeoFjNsGGgt&E9$U^MDT}hS8Whhj`V*+*gd3S) zrfA57>l`%$*^NvbQvjg zC+}i?E7q1M>LxvVRv-tuuS~n@PH)X;I|B+#3SiWB>;-Wcnc^N&sI<@ymvsccqk?;G8F94&mgqUym~d>!`hkF^L(Z* z?%%f8mp32kVRy)K^L(+~{7hrHd9@r+63Ioy3tedLREsb&p|3T^+_aFDHv^CkhnRvo zO{j$&M1+*ILz#i+Q@EXCI>lqc?J7KP7H;^uAQY%oZ|;zKlN5+(Mk{FW*)BW3LWF!e z-s+msDw(sTTu{rZOtSezEyPX@zTSZg6@SsZ4-xNq6q+&2CVq;CN&`>yQV2(O2{A6k z!#UbO6!@7$WSPB3ijqu^dCJ}eaN|+mB2e7#ngr@Iftw2I13`H}J%Zb*)ag_cs7Hkx z_2{_uvztc z1PJ9AdYG=;K_@FzPEN&r8gA;rx^Wldrg8WR+!x^{Db?Vv!#x*wGw#K>sdf{?LA`JM z9)3o==pDr+0|cK(wM2V1zsrZ#E zC?_Zy!9za*R8UZ6o^XhG(L0h+k?@rcikdqPAzNxbM7qeI7KVl)H@Z-P#HIa~Kb2U& zQvkdHAWTF9H9=5R#wH4CEGRM+4#fqkR8YmBZp7_S%5-YFPF<=~Bw6Af=>ju7HCn33 zjV^0ytnano#Q$ayD~fZOpeW8{)Hu%Ng6c_}NmoR=z)X*`h9Nh)tZ`;njGchEO~hgd zC~68j#16+*f}+?~3(5s*x}fZ0tEE``3!u2Pza(ucQ;{yh(fdn82vm+|2#U(_OhJ*} zp-~?$33m!g3oYJSf2r_AC3j9(@z%OIf(yl#Mxh+g!HVJ)R0gPD2#R>&N5l)m z0-|Pp-F(#;YqHR!O!-QkQKFAl_bs0 z{1=`?KDG$oB$-x0^#`>!gk!vUwp93{JbP47AVMxWor=$VyaVohawXXlhf>+Nps{Ij zV}^Ih9B(u2m=)rWeq5;gy$iq0e(A0GnxG?p31>5Mc1>+YO-oD7(u_v$;*17w<6Pf7 zvrj=&rra$&l1QEv39+hm!n`2fP}cofP=tOxB-wOeB7*dYAUz1u!$G=QeYGwZ;25h4 z@jxzGE)qMsD5xz0Mfq|MZlm<+0W>r;%?aa5`Ji2PTwm6?{y)G%x$5~4##Q4;f9<$# z)4AR%xVHLQ>Ko@~_?ntB8k!pCD*5APRJM9sT4%H_@;1&WK&Ce|)zr4m(2iU`CwtiN zF~hQFw6@HdF}JB{ZiDw+?bW#pYnnZE_1=csVe^!-mL^}*oTi41JbzuCwThmtYVlJ<6HG zl>B0M{=|&`&)${5M^R+`PBOv(qZ1?`A_7Vj5W$3S51Pp_IUqw4LJ|bS5Fkjn0?7=A z8WaQK(2n=It|xq6h`Ni4s4KfBfCK~)ycX9B6$Jzp#RC<|_kUH@Jw2VCnMUFszuy-0 z%$ryLdiAR6)m>egR$e))V(Rc7y)T?rT{XK;kMk}Cq^b`xOXu&c>USA(E3=|zN_FL2 zZ&h{gK7D#z3iMQ!L!ri2S0eAdRXt``RHL+JSJY6c)%2*E)?;cV6=lU7FDts59#U_P zK~YxqkosU;F+nPm`s1e6DG(pDDXmQ^G}Rw&i&PJ22OwzSFj3|RL$AjKeIz>ir}+th zV&qO1gntB$JXEj-!u|p*uVSP?T8LcyV2%{X4Dn&?Y{sIRA5=%t*+`vWO%9EQ2@@X_ z6>mpK9d}5iO7lh-I^7tW0Zc%VsuEX@+P$E1@MO+NxnSePBi-Bm^$q>*SbIj_FCM-1 z^4h5nDu2Rt+VgkJe()bVADWjOf9tG`S(A!mcF5Dl6}CP7pHIB-@rncno=xnHi| zHKuO)_cKct-gmS9caI0s8$bN%fgyp8Ysb|5IwIe@W#mom)=j%>UjETeOIG!LM)}_G z%`ubX$zj;sFk-ma?_=bqQ)lTH^u z|BL6U{ZAeoc<&E8J@ay$w_f|=Cka_sUwYQEKDTwcUH?1VGwhB7w&7>$zgJIKzx7A^ z4fXfzj(PiyYwET?F}UfQZeLu}7`yrl>;Cy|N9*;xbHV!b^1B{sDt&%X;y(wT-|hP; zMQ^W(|G(AkUiruA{cdjM{8Mt9n_Itm+By4vOq_pzRr$;zlPcy)``3SQ=R>Z-^!>SI z?Ur<0f8gAD_t6(Rb{ppH@9Ws_;@;+kXAL+jicPU6%OLEq8S~uraCk-*&C4e(L5$x1aH+c6Z)$;~yK3&l;Y&H~;+q zdw9Y5Lk2J3Fg)$EtPfr|YxvWXnpWi}4Bx;1xy*<3-}a9u-n6>o)lVq=N87&p&uf~x zfBxM5CpZ4}((B&ba%fWf>>s>aj~9&?^;n>Ny@D&+_ul9klNQx|`1P~dBL=&6Pag5i z-;(dRAoJGYd7s=>cz;&~r~E14ZnN%vYV4|O+U`N|Lx1) zzH8Q9e_8zMyhkp|yz8MIYug>#_|RwWZNG*f&-0&vYkd)O_yQv#&>9pAR?w;mQSXm&f-l zd~yExl7|L#nCk3o&%eI#yBkKoe9IMSUvwY#Hu29rs=E!nF!souyPhlV^~sVq z=IpR#K2^5w;{AW>T$6S0mv>h_{7%g9c^B^)KVtQvr>FRyIPZaLI!{XJGrs-MeNPme z`SsC@3ilMQ>^NaYuTIY-9rpSsrX{y7yY!>+!>^z7@&(zKt#?nqTlv$-;r`UI;{VFL z0oSbU((vJBa~J%2$+UO;8^>=be6>rAr1;nV1Cz%QM1h<4rJ#m-cuFN6Vlj@5R>^ma6e;-@?X^bodh6un+}HWBUIy~|2wb#!M0)A%ppSvPz5+*o;*9e8 z@T@p&jyF&5#R6B1Z)&UCJv?|*Ujup64p6-GC(fv@#P(_TcO!ZI1uh@oB(Jb8v#y_k zyh{Y`MtqZ2*FSLx#iG@Zw=bkS#rp)jsE*upb?3`NalG7;1&)@2DBcm)ecO`^;vFDx z^e4_pcK$<~))~p8_LkyR^5u@UZTAi^kT+1^=uezcn$}mmf}q-TaQy}e+(>*=zi{8S zzGn?IkT+Q1=ue!@13fz-BhyG8wX&q&G<=f0@prE7IM_hmP=Wz>FH}kZwQHguO-^(D zh6$V---udDihJiDLk;8&7dWMzjOjHGO`T}3H1*dZaMVtcZ<|SPT(9CZ?c@l7i^n(D z3NuB6crO*WX!0&IkawwpJUVDW`7#EdG~Rf!WbSfRKTSHE@FN^8np3+`wXkBl5iU*O zzQi}>pEc#F1|wX$z}+Np*FQZQNz&#Yx0eioQ`({Q&pv)B-5?z>4!F3OyYWeR^Y^oE z!0@EGJQu-$BYTDEOWDWH{3O#rUKYWCqj3zCN8Zl&5QUJZDYtBb0jDjuEFq74c)LQB zB=r#Cxs8SLxSUYlIR2A;Qdm#Nvkxvh)GUi@4?<4pYL5Zch5`m+-ugIgruZmN6 z_X!@=eTDa&;8A^3c<&1yjlC6KAM`8asEty1a|O?-;k_bwX&PP^s=&f2VJ8^yRv7R! zCacCfj4Fsu-qjkOB<%T71Ku{lqj8<0%a?*jZJ5Hln;Hq>6yAB%ki(_pQFs#skN662 zl>zS~1Kv5*5yH`z5_X&55nti`DtI&oQFzxw%e!;uKu90q+$9UMD`mW5JcM(+zkp8t_I^Lm-?I z_E`hoc~o(AxEcfA76abd)HvwE&Nkq^Y`{B{PYzjVMZc*AyzdNn6ZwQOBs)ty9{{W81P2%i6slJg#FBbSIQ@rA-ER}c-=cIngnfpo&j&O z0q-mtKnthnGSh(fHv?WgpMbK^O4!K;yl)M7S74;3I3?_>2D}7nyo6J62D}k82-M-$ z81P#2Nhw1r^0EZ47q|-V7Qv%2u)=#+@Gj8sy7I}ZG(f|fE_eeqyype4uZGvA2Y$fy z!=uD8{5-~D<9CHOU+~CB;jI%q%36i@jsdRy`COhhY@Xm{YQp|W@Ti$l+@Fs=f1`Wb*Iuhf=x4;b~++jRv#NzT; zyc7qYfACKGETn_VECUafM}N(q^UVQ|#>FGpH(nb_`S>kCGX0YAL&lTNm|R|&$QMN( zc|9)TXakz!K-!W?zZ>va@sNJxrd-6n*xW?mQYdYdUM`m7dZH4L&QvS{H;C%b88KK3 z!M7rBAypPQ1xNIo;8A{3{E9Bg$Y^@qh3cv#^dtKEScS*(nd!Vz$0PfES;rd&-Up$) z0c7v=HZG5YmoMetxpAR9N{3U&qk=2f@yIro=y;S@^a{Erj^t!8=`|Zo+6Iu$^H32q zxB;Z|O`*IL(s{LxM>^9vNln-k()lADk97W3$0ME3MMc$yC7m5Q9{Equ@u zk&qZQZQM5cTnr$bQockl1CP2NE$?ISNN@DQF2JMUZUT;+f+PB4@W?DFf0VETkqH*0jr38%4(rc;s5tudNATL=TM0|N z@4@S!;}v1?hPpy6?rHFPfJgbQ*!?gR$VikCm5UOujS3x3!4W+hJgTQ!-cIo1b-YWE zQIs|+0ws>22=p3klK4s-0m@J~1xNHZ;8EJNykcYsrA^Cw5j;wpmUk`^O8HJ%CgL41 z5C!)a#LJ6-+s1gFP!$KbbU*Z?v?*bUw-<&$Y18t0qJYUZw7hAEgY3YChvFsoG8qh< zme&mpeGl-?z@z9l0O{Bp!^122;^Q5HiUVAF13bzXB`onSK_@}^qUGJhI}T>&sxIJV z14r2{;!RFLI@Taw6dxSVmvcn}ui(gM33zAYTg&?lJhD+OFBhE&sjcu(k62ZqydoaO z0Upa0`mNy&AbTpn(+Q8F%Ttg?^@RcmorjUYd!RE^hvPbDU&el@IQq38JknVcR@H?m zz;#JZLiz57JT8gp$Ljthghe%k<37vLQBe6({ww)MCUgTH>PHpa1y1%u#cBVfb}sXZ ziy?bO^DiC#_{YbTwJ-A8=H&J#aKw`0)7Te#SxSOkY2{I02wsRhWp9yu#vv@(v%nEc z>X6R9RGwDeDCQL^Pg&C^uh$Wl z8v;ix=}jR|;c4Z$86s3aWeKxIzEx5CrP%V&tVn5p=teA+Yf>^qdTaPqpA8Ui?hWAuAMp2E}0qxwMQ zI~JcbE^WK}mCKYp4DuP8MW4LhkZq9rBY32r2peKAg$xlFL&+lBc4d~?lsydc`VnD! z;9KB`B@N19Un)t~bw7Qfq1Yf77l4`nc|9Q$j1bMxNu<`g7IATfDc_mPJT6v`m5t{eP zIRNsqz~CwG1&*N~;*~(PlV;T(0C__uwC&@ntrzG5SoFY&SOMajth;q zToab!{d{5<^vuDqkBYDy7aH$mO;`#sXzn_w7Yti3!g5?_yi+t`Dc*03H=wEp!=4af zIW9EbshY49LZ9Bwyn&QBj>{|&JQfu3Xl=Yg$fGhRx6*Up4O(3)MOcpG@@~<|qj2x& zc-lCo5ddwDXmX`zy~iHY#$o3TGka~0_}Z{nim>OiZ~P&~yZfW5!226%;M-Iw0?`B#sLWJ6nVu!M^b#OxmxT zv|)2ZSdI$~J4b{)PlWAOJZ`5p?6o2+$AyNi5@D$gCO7}3Eohp8IzK1Ea$IQGxhzB+ zO^=z|^jc-QHtcp0mg7Rh&J$s&FCkZu7I;P*_7f47<3ht$vk-AHquDpwjdv1vX~P~D zVL2`|Y>f!pSA^YF*+bTb9mEF#632yx^@_06zLLxE-izW2=GANwmg7Rh`dEm#m>%pK zFRH%$>)*9uZxCTQE;Q_X5q7W$duzo{=+=Vqz9YhNTxi$@BJ9N?>@ywz++G_tfe%t7 zjtdRTIwiClN*NX1yB1AJFkZI^%WGd<-puVV@CUIW9D8tuE}@ zJv-X9VYi8}92XjPu`cYzZCba}hTSW|a$IQGYem?2_Kkb(e%guASWxHhMOcng!X~n+ zah(X8fbU?4AaxEOa7r8(8g_{YOYu@4`hc`%hgM382+MJyVXqfq$u=k~cfojbMOcmt z4O_>+aWP%-O(C-9zdKwTuSbOCxX`dmMc8oZT`aPaiL+Ci?B+1Cv`afl2*z_5tidZ!`>*uhD-0qA}q&+hV_fE zN_szSeap?-cr7IiAaPu1*cBq|>G)RKN^RH+L|Bds4U5K@LaF7O^Vd&4)rQRyVL6WH z;atIEK}8PN>3IF8OrKdZcp!t^#6III$!~dJZrwkotC@XG#@zdzx|a!k4$YY7t^gQlb1s!ooC{GcCO& zDcQ*sO4fN7!+RVwT`;}e>(u+Dy9&}X$v4%Lt@lfFsfqNsB6udT_c4Rnrqjoht@DRM z8o?1fxnO#?wAqWE6bDl~IsD6@O2Sj4$kF7T(A6+X1GS^!JY%OB zFR^;qYnHrJ$*R&bsYIDCY=qwVRQ)IzGgX+GGc{3=FwsoaC<@XtxrrvFCQdG|shpz7 z$Sh7xoHD(<+T*P*uk_X^K}tf!3~;KFLd@%wg)!CV&aId;6^fslVrgk5$pf5)={%w3 zH8qu2&S_zxsY!WNSBiH$ot1M?gXfgbaw@OSI{E9gPA3^;=|Dj9D&|+rat=swqV#fj zg)}XIS@dADa3nq{84k?syk$VnPR*jXv(p!iM*raqz6fk!g4CFoFti5NLIy%F zFgx|Ko7aMLS87`6z_A3T@}=AsFC%+QOF$w*^(QHnH6D6X{p5tDrMo<%DKsgR53?fE zh@J}MJ#-NEnToa&tt+!iXIfe@v(9O=%0*LLFqna(=8SVZM5YWJ!9$fFx$Uj?P4S{W z;646Xl~XFcvlg+p^@&?C^%Sc|gcPIIWF4TJUR%$?tME>7X$8yAq6!1eDF|9TrF1f8 zRg_m}p@1frPnj7#bef0|@6>B!s&V4_fLVA09=BvP&#c097h=@nNi$xtl%9b%W~t%= z0xdSG?1D5S+2HDA=akp5Y>B3;XEe0cgf(sysNi`n;~s@*B6G}2-*nLoDQhhO{W9~^xG@<0ElMtDOi%-1KlI=bTftgi4TqqJvqUjok zd`z#ZniWl+`6>*7MSNxur3J&iIj1yAJc&GW&GF5SmO|7Mg0cHwLVNp@h)AilQIZ}i z5x)kawKk}z#8n%mta7>!Wf3*=Q~}W9o3ejX%^I5*aEa0F-;_kpNTH;;T53urn><2G z64_E}juL8`s;8#3bPI{*Dyk`wqlHK_HPw_rk0Q}rRW&8^)M~Rxp_!U$N}KT2nPLjP zmMLn}pw>Y)jZXV5)fLU+n2Na-SR9#Zs@j_BT3NLXl^nfZnCoNpqRmxfQ=P4mXcKCi z>UH(9O;u}C-LGD0mS8s@wTWS|q)j!~jF@UGH4>xOLsJrY?++!-H5;a6vff{aY$-Ka?+=-# znh8@{vfdvO%{33EM6$jbBF!`lrUdfd9}>+q2c~46dhZW?%rpX~vQ0lPRAvD{H2d zS5FPM+#0n2nkSYvT-4;2(|WLruD;c-Ax4#|u`47SzfNi41v;wBk*6jJp@aLxrzVQ_ zsfI99&88|-Ifbp#s+Fsmv9mK0+C^5jL>p>Z#`UzBD6GcwO`X(aG$x}e78xwqi_-zQ zH9%mAsdB2*xZMda98C*?WL8#t7nu#4EA|%HMi-Abc+S;pMCY`cuL!J#W* z)TE>)K~gSuo!R-5=K3O~8Y9LgkilqNYz?veiY$s^WD{IvGbFz{vr^M5G>aemNa-b- zCfKl5O-)t}*g(5xGDFPNOaSeAx^gh2$TwLu-38SZ(<&E6XoxRQYk?UUcJ>TZMRu^! zerlq}g-z;mY;0Foh&otts@rO6rk+|=4$1CQ6Q%B6qZC-P_1jK&B;zzi$$(@hZEeyw zwe-kAwoO^J$WvWD2c2U}s?F|>=T^iUs^8jRCz0mKN!TZDN%fLM4g~k1!)ypQt4eIw znQfJ_Bj)}N9ff4NdLS&(Q#_|KINb2iEeF)X{nip;v9x4iC3ZPiYdP8O79}il<5^yX5v_3)l9VI196NdW8p$}GR>v@WeDd`aEYBorxbI_=S-bd zQJn%_#q{a?M`Eh!^BejTARdoz&H@aprupVf!8x7ZE-5i7RHOf@lNrr&;lD|Hea^Sk zM5kG%w2)xEzU+L-NlabB&di!A+)|R6#=3gaVzQG_Z+w2b^lFSzsemBLL_{85a-+2VT zW7hKsbh+Q+YcS0UprvCls#z@_he0{FcpL^r-QscRO8bB7W2Ro3P}j$r8T0=#@T4-( zsILAm3r{W!4Vt3=W#P$Xp+QUgzbrhtEYx)*ExAhGtdVU&;rhu#%Pq(^)4Ih(8#S6O zC)}VpX*uCk(KL%r=JqT?g0%SlMYD2h=@^WPtHt9mD76-k!=ROH@i=tN$bZy6PcuvT zPtwlF%KoGDBMa45ea(A!=C>%Y3HN*LcQh+q?F#OHf`+22qIGtQ!z@!66FMk;$k>0BIN=9JRId3{Icc-$A}s z{r{vXjy~!CVY+FvO*`H_sge2bJ^L~kkN-#Lha1#}=q^bcobIHH)iRu(r1T7@D?dLo zEzgywTvC!cCKfMkqKi-Li!W0E3@VaLfb#+m`*fOB|t=rAvi&$FBD*yT=|h=cdd z8O5gcRiX&;!pIGl2S1xghvI^%XyzOFCO)q35bAtzjn%X&r&C*8Y0i;ZqjU4~(njIf zDP8QAI>=j9g`%p$9dA|=9Z)mBVovIS%&G-*aNEXI zFoYo0+A}hoqq0Y(!P+yO1=UsFswq{oQU~$-h*Ag5E}xq^$X8Q-Wd*7LyY%Ar6*aKqDlY}}PMMxMScT_1Gc#OiIcfR%K&KAE-9@;;rvknhmI zNH{fwSW?h=iDTyQQlrdtJ2P|Balz8)EW=PdWr{pCSVp?jl{Y$XWLmac4JP7I-s-BT zp?o7X)KDq889Adz=8ep9&cwSAO4$u^XSqgZjx2D_2ev|G56Q^QO3O}nXFGj!X3jwg zsy?oKXLdnWTF%IV%#$qaJZG*uD?4*EtVHBRNU7EM=FY_*rcE7$bNIMoNsVworaL1m zD`ON2FEL|e>Oj>aBh8tWo0glNm7ng+$Z=(iN*y$=dEH~tpQ|aJKfo%vI=rWW*Eyum|>8RkHS=6zzAyNc4m*x$wCs-onxyj$-ICc zG@IVgqAyk;u+XY$NOk43X==bB1@7$8d3o+EN?)$PtG)x>qg?rUxloDAQ$3OkMrEhv zWaOg;AX|d${LCCwr%|wCNYk)$vPWi*L^-D>X5|IhdFh#%?)>zT#2&3-XJw@4yE5EP zO?IavyYq8Lxkl$_I{D%4(6$Jz{XkvYCt9*GDLVd8vc53`47tf^&eWtdrz=f=2PqFU z(75*-lcM8`C=9v5C=9)M6p?yT5t|`I8*v1HPKPi^y6#Xtoz2c=qpO)V%j>JDm?~X@ zKczIJN6;k?9x!xJ%8(&LhX#2>B_|~f9y}P|Lz9wIh7o5{TS;naik0$WHq^B*Z(Q}) z-CzCn@lk*2@$(Ne9)AA??S;2Q+i{QXO#EfLb6ew&Pfe{x+Zp_Wg5SaaR&k-a8m?_T za21n%S0;+9$0g}ucrI0caimjOfvAN<>ZSy&1JjxMt{ z!li=0Mqmg>&IpHF%B6$AWsPGHDO@_Pgm(cj&qu-0A4O>ZrV9~p;pE{qcqvg}7!V&u z`t<{U5O9;D$fJv@X907g3Eb_#{5c9P1@c}1=1>&eb-;ZOjBh*$IJ(=}C>`&Ce?Kq_ zClE?sZVNdRpDsLWfce@GH+zl(%m#7Z75Jk%c*xO})JE}60{B$NxeM`@>Mdc!T+JF2er; zOlSPL6>@aJcMuoMms#Ks2Il_+E}Z=(0rw;@??;h01-PFD1|)Mv@g9Ir*(C0-d>Y|~ z!qZi*Ao#Zt4!6rowI*;>9?zS=EeCEJa0QcjoT2STFrP1i_w~R$DRANJndH3%%mm6H zxJdE>z&tN-;pE}32S^_QbMaIrE^IyeJVuhn0y7+c5`vr!PcZ+2=@MekPAk`80}`aF>|CksXW%?rnjM#cv~d72qEPW;9h$xN!X&wYw{T`J2GS;kS`I z!o3H~8M8sag~N4*-^IXW3Y@B+L3=e0nCSusvoLJ0`hi~!%!2}_%G0%LG(LD1m@NWF z@>n_y;@t(zUJcHuog{f*0Q0K`7fxPl^b%)@o+4a2{E&AZFlz)(t(OM+y#dT8CgdFk z#>f9+Pq6+P$h#kyrvxsXes1XZJTR8IAmG$|HjvjDnBD>xN!|cpt~DX=4qzUNB9F@B zDPZa~xNzn1Dlq@l;KG&fK45;-;KIp^!Cxn8kB3~i^p1kxIlxR4xJdbT6)-EJ$QuHA zcLKBBguIV{`PziMpMXiKrc^{O-%Mb}3S7AKQhPiRm?;`uxcr+9OsxiIR2~~3Z#gg- zHKd)UeKD}Va$x2OTsZw&L&nv>T(7}})9)r=?$h9m^dotX0`rsx7f#;uz%*)bM)Hav zZ#OWBUJ!8M`ZvOr0P}bhTqoe(1Lhlni)4SN`6Q_$9&+LGuRZ*_1Cu0hk>q6pGuDK> ziNI8ukXHxH9Z}@fLBIQf=`o*D!T$g&D-T`2kO;r4fO$aR)N~l&o&n~aD7YlZ`vRCQ z3n*5No$BNfZYVI*P2g?-X1yV9krA>{W z;EeK*aD#v;ih}C_Tp2L6QE)WAS`N&UQE*a?{xhtw($V%o$hnc*Bj?+QECIz;L8- zdZ|4rHo_U$%Xr{s2y8fe=?ZyXU~bjm!nJ?*0JBDeGiv_^BBFJ`9Jq$3g4&y4xrsst z4^vR-_FBx9@sJCbFKys=@nQy1KZ5dt^8h=12LYEUu;I#=aHD}KGl9DjnE57f*8y{j z3EZE6S#1LM3@{BQaNB|TrwQCXV2(z?r6FH_6&NL>jq;grmtBkTA0Bey^4SVMKQOoH zaRzpJFECGNa7K337V@4G7>bvik$!}G*(7e8N!*(zaUYn(?Kg@0#w6|+lep8aqg)HR zaQSDyE{Gw@2zMs0QDZNJR0ktnPfvM5pn0^NGYJmx8a7OZ|pZTM}fMm`nz47o_ zX#%$fxV6BIU&>{L_HV&{a3H+z0_IhL3s)XJfjbUN_hnoj<%^MigzE!Lo(WtDFpEs! z>VSFF1a2)bZ<@e;K$sh%r=u+}{Y>D705d)c?mR>{RbY6`#`$+PJeL9YKoog2UR!NK z9@*8iCU8`48%*H-4+G7QfLlTfPjKhs3EDx>uCl>@dxa!*l?f&3_5*_BrVHRV8JOh) z7tXGJg2!#ZtOzi1Vb_a`;T?OkB$eVJNAv5Te!+ORfqy?R({3SD`1N9{A0Gm9=B*4C zw!L~1-kHE05jbjxgYgFQh2%}Y4eJ7U$eo5KhzsgR{lZRQJ`lKY`9iq;!2DnWC*6*{ zT0G<;$vYdE-X?GZfJrlf8wJdG6S%3s)R@540&`OoTzjPPE`ebQ#)nZpcLM)0;Qkgx z9`#3!!0guJ4BGqmfH|bW8MXJ+j(;yOAel4LZxnn^y94_@c*vpp8K#5mV5-0nj+~J^ z!qu3-T?E|qz&$Cjs=XMbcRes$G`Mi--6b%j8@X`$?FH^@jl6KUpMbI6$z`ef>E^$b z-ZOzY&jhY7FvCsYGJz>Ffhz-MmI>T^V3wJ{-2%)5QE)V$UM(;@XN>dtJa}#f?z1TJ z4j^N{2Ie1kacP6_6)cZnyGHB$2k*w7?VmWVRR}KFu2HV#n$D+ui@!8YBycq@eIB*{TbHf8XR_gD9b``AWF7Uqq=8^|FE}R{ZymDaLuH?8# z^5y{ZtiVN*_ZcuZuacOHB=1{bhWsDLMUqzu%$W~Gmp31nmjo`7yf1;d>*46~eg-D> zk?8u(1EvdAP`F6xT@1`7fs3Ty_rN^xSaf-@t0gHL54mvij>2ydFtezj;li~WF8J*O zrq3D%3oGvcye9yY@dU?3O7CO992U56`i;OqsT&66%xP;804|a|J1~hRaQ%VFFoAOeGuZ@g7BEXp z;ACJ{M#1$$8rKL6OE5l+^7&%$cLVop6nQ@Y*ZOJT@Q`bT$4DOGhCPG!>RCdC$IU?j z%mn7$bsQImFC%%&U{^l^bItRSah>3O4=`&5E?oH%?ytb?ih?^AxPJokqripJuN`n5 zUx4m-$U$A64uf&~KwvTjj`TAcw~qmTG%za#&Z5ZEjk8N2U@I`){t5tGxO(&@{1yUJ z@e+fDEjOyytAKe_;MDvxNXJ@W>NPl{bUX?HuL3joZ#-Vg_h9)h1w0z%PCo<25|wLhUao?;`k}TaWe>54mvpcLw~b>aov>hg_ueF0aR0As%vs zW9h9~I2C`Uhw*AMzMbBHI)aBB*^4ti$!Uah1GC5kE&$An zQE&qh&uhTMY@}HEes{Qdy8|;y;KJ!Q0x~?n+$(UD&*9{40_JOhiw%P#{o*!Z9D#=% z)wgi+ih)@oaFOKw0hnzja328Eelv?UYyi^{iZNd5w9uMmUPM5|}>-T)21%_c$7Z2QV6Sz{~Y;WU3c&b@55{{mtTZ^^N8!foA$Ow`anwF@d`jxJDDWWZ*3C;6vk#?25+ogG}J^fJ+DN zW`XU1-$wEXm-i1zx*HF8g9lvah4HJG@SQ6%#ZLy!!3Rv zb0j>`a5sK{cZTpp!`=QN_D=Cc!`=50+EhHzaF6blq;K(%iaTmaQr@(NevAvuH&!a}T(BT!Umu){oAA*OR+D{wcIs?SGn!xo0Zdq7dZ~&bE z+-l%92yE!MGl--9au+ar1y0ltF-{EPP6O@>V7`umqjC06z;xUX0xn#4H+do~rl#X@4Y!1a4+QCj>-i(5y zbbJ8JPXZSy9j70}dI=tKDo&RU8ovwzrdr@4rQ;f4ZVJU2rsFPP?u~+@bUXq~gTSf! z>GF^4T$Ys3!$o9hBa6 z!0giFbm_2TKb`DM_a$*zU~lO2Ln#<4+M8{i6o882|*^rL*91I+a% zaCZT-Mvv2_BMb8W4vgh62)Ib;I0Kk&A-Lx0pm}j`V1@~t1;2y+M=-sV&*i|>3S7AK z67Du&p3>uV>9`KK24K>@1OXQ*9ixDm5Q1x-4zjBXV5$W!oLy0Q+zQOY0v9eFtUU#0 zhaRU(M>gc`1*X?mAmAdUBN>>q5M1+gPYfeV)oDv#%Z*{;Xw(vbn&N5Gta z1O!~9^0*k75h1wd>7aU^1x&uch0~Anc?vMsM!``!?f~X7Jx-U7k-)tK%xT|%fQyt4 zJ22ftaLv;}cGU-%;Q|-Qt|kMsSl}Y1_jX|ZtjFon;Y7R}fr`rbEh7sONSG<)xaDOxJc>v7MR%Y5CAS*I;cEsz?>~`k;-ET zFrx%6TsjgU&jU=29;ZvkDBzX@^M=4hO2_-a91g)5m&XslwEiA~;UbmCCBTdlxNzy9 z^6&t2wH~KSM;dUq0JBTrBBkS>zd}%^&`@Ohg`UHPet1m=wpT=R5LdAtwIL4k`@9<7hz&Idf?!li@C;}T#p^f+BQsJ$u$W|hE2 zO2-qxycB|Ko(?LHSAcm(;3AdB31GVXgaB~i(n00XADEGPoGu+s;3fj|fWSpc$7*0+ z2*EW^2bIT0U|tuvNagV*Ffl(P09?3qPG^%yR-4 zsXX2UX1~CNO9z$5FTmK3gMd?Ux^z%`)f1RG0v9PA3xT;Y1lK$rR35hj^N_$rDv#~J z>=!syKi&MiE9CtG%vryJfKze0bfm$rFEFzNE>b$?19L+Nu6a7BJZ=T%eu0Zr9xnm& zy1=RWv2>8e+{NSTQ-M)<&iDdn|0&aF)(jq~u%v|m9@XLK@GCB*yd*0vH!nBKom=Ei z8=H|c{CtnQD8p0Y8gps#u%x8(4g7P*y2hl9%^%~*bfp((d-7Z*uDnZ)kYjvvyp^*n z@+v1+msc;k)IHWyW&>`lnnmyJr5BE1;;t??1J&`U;VpE5v29 z{i`O=kcLYm+Q*zvFUob0&XvabXlsRkyDO(uSJhNa^Y-XHrcaOjxyYf)t8l|~kBq9> zb8(GsHR&T2%ZE#3pLN*}-Ybhr1Ea^Wb+Z{#z-2AK=i$Q*n$36 z(RhGu09)nO^6N8Vn&L^5(Kd*g2>J3vt7DUQtlZx5rmt7sWw`88&Rb%E=NLJLfk#6n zoBx^{EldZd0TgU2XD+e$GjFpTx*(7qzzH?nNH0@MR2 zh*r{MQ1cnD3e<8&Edu3d6wNp2$ZZ1Ine2)$Dv`gD-L_KXW0z&ye4UUyq}Iu^M&8Pz zKa}if@LnXBSqr!|$;V0+vx={)wMod$_q?aeaq@Ob^P#v?%p#j)DvNBAi7c{7bpC~B z%!O*k3|2EHRn3@JL8%#2C^r=OUB~5dmSyiP?gR5%XiNFQ-hC-BIAxUgyhV;_Du~Z= z9KGgS*>&7AvC&CQi!?$0tZWnVwXjtFNzNxD$*4<}e3uo;X9v^^Bm>cua{x&b7%dE7gy(jTW-ey2J6Z%O<<6vgC(IS3G?m zC)ES4BV7Ip*LS4x`H-_pkporH+8~&k$Q3A0ps0;Ahx)&utOQa4S!40Ljz9&!`>;^x zyMXI36cPC-qUen%G=VQ(h2K)jD`ZeEE3z-4L_UHHjCZ(f-aN+TZ~pdg0waD~;m zber#|z8jHsye+C*oDeT>sg9Lf`CV_xS@C|?o`CBuQ4#C5bViHs@Y%elLGqz>vKzLT z^4bJuJCxYgh&TZst)$C9&0zJOn(R78Ed;ezN#u;C>G&y4Wy%)R9Uh@-eFW_<()iuf zhX_EGyDZ*c`$D5@GyQI)IHbmG8js*B!H%yjttDhwql*p2fJ2)j$!MJ=`H0_L?{{r* zeB;eU!n??uSi&{weqBkLCf!?Ex_1OzTScbGt_@1k>wVA5jk5c@seWn;rOU~<+(%Mg zQ?r2jx?hpVR_tUM&y1VFksK+QuvZzZLHdPXS&G{!zF zwH*`D?s)sl^KC_STX?rktwWo>`If?>k^=d4p1OQnjK?BpTZYBd#`7q1hPkXsCS(smo2d7CFr(7h2@JTdDn=#4P4a z1kk#>pm1xd_j-Hm3M&*QsWHZ%{I%~xJ%8DrM%O-))9B)P6X$pBMbtjRY_cBK4( z@;Z0gt)w4%m{z=p$#VR7&6jc+y88p@oL%oLeT>qHTXps4GqNLQ>{NLMFgxuGidUY= zptyli`@s$Db(Kejzv>nDsWNXht0>f7@ajQT=6)90*`U-)K?4*v;2K7wyDY0W z8N;m-tFI%Cw+4&xR)3z-Ll=e&9Xhbl)uHyy2MQ$?$V8h-gD?!uCQ^z=BUW_;0KY&^ zPsdjK4d6<=HD>bHuaL)k`*XWTaVOu3CC$Lh5?HhMdwzX9$0PA;~}R)4xh z-so@3aaN2O8yeG?!4Zc?QFoX{fl7v0EW0pju{eJ6bwD&8H6HW|6q6P0bCKVDywPp*y^1M>zX7Vm3P;DWvTA0__uXfeerc0Ep_!4@N2%V zJ8|4Qd_~*gRt$qr{OY}A#mJc9IWfL2btg`E&tEYzc6d&#@ASG8P2P?xM#c@#iNkQw z9q*_;jznH-Idm&jlS~Wj-b+w-(JoQpVJsnf$)+S4 zVn|K9U}7|d3kHhU)J`@eV-4I6s+x_gU+V;lS52Dr^I03s!T4P5dQf~07H}V6)~fHu z4mYclq}n28yIn!?+Ib!*GPqXKg`m{h`Ja*%{h4b2x~%w9^QRP0Q25h`+X^hItu`eh-`*wihC7J_DomK1e9}_x*Zt`6; zE$F-2%Zn^=KRfKoB8Kv(KqNYX7{x;XwCq?c*%3fQ9a~>ooiLT^cWY?^jh{cp=2Zt@cZ{ z&z}k6O_~pl-}tS)z3cD?_}?{=Y4AbW;cxBnuEWT63c+|US|Q!hV9(x)C>#wn@t4w4 zU`^|Wy>a*zD>oF#+ZnJV0Cl%x%&||54`_y4d>FdRBP~vUhSh(TKi}dX=D*4!XLRcbb1h!=W=B-*Vz~G+x8THduTX|1}L3%G{yI+!&+Golc2o@w1vf zgqd5g6E1--pELa*DBk1Hf!{7{uuscaK*!c-YC4%BDNFPv-uyphX6}AO2w&0)SGPL_~ ze5SjL&vY|lQg+$bXT(;%!DhKc$5p<{=&fRw`+9-jWkb;wiL!Gah;G)`TAP}h?DnPk z$caEU%=+*QrIl`U9f9h+T;z805scQzuzg4TqpkiDo1AZzJzZhZ-GxO5(qQfeM!g9p zF3frpS$sH~o)c=*`#x~(3)=KPvgv)sHtl$~ru~v%ghhWEho7}}<5!my!@{chw>hg`ty=Zt23EbQxm8nxTaPgZru*?2!S?;OZcALlSFw)W_Ut2A z+U;9+!cu*q99J5+>Udzp^Nu$cSRB99B-DL=T>iP?^H_Oj!@=0NcaA;*F&@WmZ#y~8 zAB*9ZW4G^nO!H`s>GzMI*v96gaxB`pQu#7WO8u?;qb>g7o{9eP7Oq8bF{p!FW5F6J zTEaNYS^Ntu{1&Az~MM!nmV$~!YizQa9oTSzri?8Wok8k}F%{4ss_O1L`SX1#& zOyDzSdCv=|@YmLDw>$ROv-botVwA?hn&xj+SSo(GtaY1hN=Px;o&{)NX zmDzC?qT?e3T3*nP5M1ERVQP&B#m5ShK+R=5D2S}Hm(~ZeECoFG&?nP?TRS}A9`Y78 zHKL4L!;GAc@mx&#_eDL7MXi`{FqflPK8^K$gXL3a+FGJK9-UD4Q+#zVxmDVdpM>QX z9ItEW*>|I`{Oaf58`~rdJpnq+ZIF!cR~;4o7v>6 zhaO;1^m>KZ2OEYtKU?MrZn_VkIe%aQ>*9IJkfzXmdAq{L&UA3zPyGq+)q8{Dy*llV z@p-=!R28C5U@MjC3ILQ~3lGRf?XnS9BH}p19vo+!loEXFpO#Cx5?Jw=XK6}S#yEEB zBBV`i@WB-*LmHb;^7jIDW<~lm_x!LE(|VtbV{RbAz{b^n?7zTUtZEww!Eaz*J|+}E3Hv& zV>iK!q=op|3jdU>1R+u4wC+CE3L|T=1Lm_e6*#ex%$6u@JfG-{3T5R(5XjGHM8-WC zf|H%jrd@2)+g9*y89!`85@~?ks35UM#v%`bj}?4Sc8r-Jt-V_%>fm;TgJTz-HoX1C z$2B47l*Mx=9pdjwh!A~lblC$gdoVjl`Fj*(k^F86ZS2QU)^(7Nupir-#$+PZ+^}d; zXO+%FpgVs{pfgwpiUQ(i9A1}OHx<}uzka9OscFnWH5zd?#)J8hl^rtqfyH(K;#Ebo z+`%Qwzy08n#oVbJEEPvTxMX3sz@5^;C7YA-J*6J)Cpo1evPlSj|A@lCz!HNU-XP0o zVVw@^b+4DeRH*IUMAfv9I#{B84(|BC;bRsaR-j*BAG?ZRDLBlbI~MVc-?uvDJ%8Dg zax2-H(6no5y?q(Yj^tJW_nty|XH!9E`PlS(!I@4HX2b>D>-=TdfP0d3=2hv4>|Pyk zt$Yb;VI!NZi5HN>_Dy4QN?9;iq0}_j!f5uv1B!D9MqdR1_p=Q2!=_m5T)NlQefq2T z9pg>HLU!HH@zuR$_nvgQK}4EKaeJp-zS@m^GU^(t>0C?E5E7gRN)+97Ls zUv?oVz6yN_C_Z46T~BJxc|3Un<-~^3o0vzeascGXUy*6tL%&vdpI8BpegK5)Lvs?Y zMS)5cgUV%jLu)nas<<3e)--7-^%HI@%UIf>rh(`qEM*2Be-7udEu6<2;XIxX=TRTd zBuhW~*| zcq#IDa5%>cRvOy-+ig6rRiM2=>@aqrJXq!fqBXu{g>YByN!Mm98 zs4?UXB+YDj1Gy1Y9BT~eXe#w^t)$mM{K^`Ow?Od*@;#OM1Qc%|sk!35v|q(}l*hb* zJOfQ2Z;(2I;%BgvK=GzYfBX$8HE#VLj?((^DEc8Y4kpXX^w-8O(mH$g0``x z^i@nH6oeV@nv(&)ax&nZCj)-=WWXCv27Gr^a85AmZdSl($+4$aA}8Y{jQZVcEqt=x0JrIROWZx7;xQ$ z^_NnA?XAlCi+yQ7XjoT!6I)yBHX~MDNC;V5voCE0nBs>W9Q(4L(YV>yZ(@fB}zxcUoNC*UHLzI!k~`d?%j!_=HrRYeBy?(6QhO?0%dtKlQMVOduDvLdJ^pHa6cAs*dso0K>F?)&`3D{)Any}Ub6 z9kU`feQ7-oguer3-0qYg9Iw`#DUR;M;OI^oj_$mQqdTNtz;#_gAfNB%pru5*m(qyY zk!`gveH?_mFn(E+edz;4`W_CrR|c{Yd76+wWwsH>8Yj|u1Pv|rh-UEqjq*TtJzQ6> z@kZi(qo$vS1Wboa9H>_M#3t+nZ{6ZL9?SUbgJ)34`~(w|dl_2^29*vzd!ngnI&Ji` zP$Y6S4>}61ENe)clI5+;lk>Sq$hwF9R`4nH2df~8@pyt*Guf6kOmsGjADAlx#h2RV zgW^kVOF{9aw%bARZPb0B_>qDpP}i`EayGQ&jbATNoJW(3CCqmPD1Nl&1yENr-VRWg zp`lKY-UD?JqYkOO6QKAQzzQ@U19Sq_kM;cLfVzlLJwWlky_ZV$2gQ5&A)t6Kp9+e1 z!G)l>J0CukPgv1VFKn$C1bqo!}MGFQRZXe>)7%-1%$ULfyA*9QJo&%ZYFFEIpQHrjk7 z5O8fkg`l=%Psm6BOo>JV7l%y16GA88_T`tsHZ&swU%gzrfewE{n+$9d(-(j70+nt{ z98`P(NtFD)b&eC>Z23plVmN;Eo-u=0NpZ4G`)-Nm9Sd|w!H?le9 z#)gmM#GYWhd@b7(Y!rKfmxvek&{WBrA~(Lw3fKp02;M>FX;&z&hNgVH^eiYoUiuMK zD^^8LfSSRK<{T6RRgMH{7ATIReG5+Q1H~=%YfyZI^_@xu+#5t?;p+^t>xH_#>N3L% zzsl~l%)i-tCQnAGI<(7`z%CG{ZOsHJ5$ba4Qczr>Y?Y!7ghEzz3PGt=M_(75tKe%? z7kpM;qe^Tk+vGjV-te9wzZzH+vmz#q^;ECJ)bWxJEPb87ctb$|XMud1S%~XuUyyw1 z(+@-JbdnvMx;4$W$y-JH&b)XGYTM4|UrIj_p`h8S-eFzYQv1;#yacHn6n`;m9w^=< zQpxisk*xJRR^GRP;!Wb+Dn;4Bo5aUK@s_Cp6wh9z0n{~oBiBYLIxZ*NIJ%4#Q^+`4 zUrd_Uv`UcY%1c^GA-QdS_vV1Rz7TV1%$*AZIsAR%>uNVpS^RToM~jsU*sqmxMBqRu<+SWOYw7!d5(1hx4E%D89#|TjSdi&g1ED9)AtzaaTBx zn^X^+`&wv`*tD0gHwkStTv~Yio&``=f-P+Q>|4fzC;M|+^sTrL;ltO@)b*yJY?i=} z?O|r0M{g4D!LrU-v=;Op4x5j%IQIBD@x>tT8KosnyV0o6I6QE1xXsit%BMQY>o4BAyE8u{E5>?rr0gV z%mY}a0tWq$F#@d>Ez13{DJHlsC)3@e7=2il(N|90u{QSQe*o2#$QW!Scku6EaB7`O ztx>6!Dn-K{j-x(;Q`alhp{qq)b;sKI`U`q#y|?GoRe(q`ZR|_3?MC*?v4nnITft-; zO5v8ajgLQP}j`U;G8$7ll?cJR7ZjZ$XeF%z#Wi>Y6hFSP z22>sk@fT2B$~sW_j8_lpa~77~$^Mv8TS4t*6wOaRVbm^A`xx~Ws81QS2h?YbqL)Ru zl)a$#Gae0n4=_r0t<-F*t;DvPSU(OkIUKn%LeCtW1)hrn;u$pv6wjzsmC6KlIWv}A zQ0kzT&K1Nfhb-a)uJ{71J{|x9yCF8|Y<$z7UsumrM20>Q0u7#?U_#$5i&y2I1G!ri zusCfIAH*LcCA0@F_$3vuhYKMNTp*D4%!N%l57DgqErI@~1Y+5vD0ZW(L%`J`B!eg+ ze^S7-C~IRYxXSV^t>^|X1(ZxBX+;tfJEsE({bCWqo#r4O~Y(Z ze4Oi5c{KLr&BZcMycXOCD)NXIYnwbx2GB2}+cj@ez`xwq| z&}LLl2?j+hPuY1%YCk?#gz6_|NkIb*S^cKFS>D6KyuWO-!)?QW=d74!_S$T~vzbMz znxoNx2M3gRX$MCH7%7L^sEyfZXI8R78%;wp4lv#*P~1l8EW#nin+%Fu=1frB3aN|IKBP*urJ- z>c6K90{_ir(5r>Z;LU$e8Qk{YTn61*xD06TAwl|=_Xo@Vo6F$57A}K^e@_|s|C`I; zq82U#+9v%s)Pp~?U>O|3=xRD1&0OlYj7^mb%XZ4*ErUIdkGvz~b`Coh%y3v>x8}w1 zv+(LTy)}+^$F(nxms;`e_#s@5#wTQ&b+0g^+#|Y~*r|+iZ$J+4ndmJlwHwrfh$DgB z_x3Lx`Bt1l3D;V&Xo&m!Tx|9+VtQ%w*#|3dbw5rVstlcg(3uA8GP7k@oCi`*Lppvz zv9@-^p;%FhyW}{m>HAyL^(Y$$|@!zRx!&?%?j`2}%8QWFanXCNsSlKJAdjMGWQ ztH+dr8Atm!334%=pNJJlB~}ODRcLlpf;0<8B^SS?QL#QkxV0hSvK+qq>^FUmBScEu z)d44wkqO6|#^5F;+_G0zqGWV1Kaf}TxJ-~|m4&ITMvqr4G|}r{u^1FonQrTQNRb`6 zLaLv`5Y8KyFiQGoL2~n^ZY7xKPbL_LRFui zHf#XJL(n@jJVXL0nZ>->0mGL-c9S31x?SB>ZX@q@?6fa^ z3u5f+)2#e7@tKv!ur-Hkx6|6B9K&bZ$|m~F=ynQS*+@M3>drln$r(1e>oGshKU$HbV+Xq`6>*f0049`ILC4Sl0OZG zeT+g5laCE^S-o}=a17zSm*J=H8{FXmDgJoe=;e3d3R{H5ZNV5bKo$>+i=4lcUv<1= zUv@DvipJ6Gh$KZy3gEKlFcBZxG98&9UO%8lbSNu}smReg*mg!GD1O}*TSZ6rZCDnE zm9ik450=F-(`E4$mEj^3gH(q@u08JST-Ru++hidGydkFMGu-ra+&f}Lce(b+@b10}{QTA1 zPcA#YVnWPtPmFIY7$>}486$SMC)Sq%MiZ|3B1GJ9Pn>T+G&?w^*ui(OgM(z4C{etb zIxNn zY)TQ*MTsgqUUPs_WM6tc!mKz4NlIZ!njcKk`7B8l!6db3NgAsr2{(;=DA#^BthIgF z6qp=Y8kEEJd7*|DOqP|(j+tmjjK%ETrRY}512;3#0n9|NhM{p2y$+OWqS)EQ3wX-e zCiWImJEXD~3&T2kL;v22Kbo6>`#aXwvzmc}c)S7G(H3GRBB}(5wliO3LyXR#o@PNc z)d*H7y}`U&f#RBhXm)|XGze2(Oyn1;^kf$m&rjj%E0+}a30_i+y-A#SI$i19*v=Q; z-~gLx%szH>LR`Fy8mv+|pm-ek73(l=_bjIq8P0byLzqf7RM(0^w)ZZ~Y>D9ZHlp?mmD!5;)XlbL>)l+G1!Dw-J{#r*EZ83*9!nQN&UMF|c~NVH5`- z^AiHLBzVSc$Ne3+yZ>1Ao#}BHTr2=Fc48LA}V2rj=v3L zu`9Sn%ik9A)WCLeKn)FZFge(ZW`ddvg+Sm#zzoSgcF@W8^~@wzf#O%ny#|V3Dfg~Q zwT7ASE|6w#+_%3<<$)smNRVg@ua+0T+JydM!)V<0e%$fXg5L6nblp;{+zp%h=u_gw zneWXg9)~1vQHzHS#;&z5zaJXNAK{9;CBN{Zd5INGH+eTJmEB+TMKR28&AI5?+Ttp` zbh=6pe`kWFki~;x65_(edyEAW!e|L2Es7I&^i}r>xnkk1~K&A-&fA+2e&WYmt=Quz_x+sW+Qx7RBUgaptCD%JguNrfAxdL~| zk>qF=5JbSP*hLh@f{0j9P_ZH+iXe&#Vnaniiedo-mH&G)Z#J`=O|r@5K!1PcbGexYMkTxDdW3>kO2m z-f5{!$Jn@=vb(Lxjzu&)^@z!Cnm7VjO}!ZaI@ijde#SsE-fm+k@n!)M-_X~BpZ4TSqMhUgp`2dU+*o&H2f7$^e{C1!25aV0BE`k`}+J$$ep2a3DsDp3q z%7EDEOor>={8v1C=3B8aMJ}5RG2Un5twJ3c17{9gb`WBG)M){>Ud~!~JjD2~br9pz zrfVQ}FZ|lngxkHYW$pJCi19S;gc#4ueGuc@xLBE4X-BRaI|;fK(X}^&yC8mHjts90 znDJ&~Z?pwPfALBo8tVo4V6`XVzK;oq{7@#**hMVk_y{ZB#yUf62b1-HSR5;UGQ{xV zcI{1Oh~X2-+MDpy8}B@7ZyE+Me4H8IsE<#gYi~jm^ON=pgkfm` z{H|(>FiuVE2)F8`;e)b%Q9ULLCSCAI_U_(CvJaPA8?;09!`R#3kbQ>gnhdsERuk+p z%v+G>rY5h$^@EH|gt9d?je!_WIod=nggXs<>rhW3hPF*C#(vl!Z|35yj&tSO6)fY=Evb~(hFu~;RS__v3}KVRYB6&62E;orw%SntBep;CQ<+-8Iy`a5Eqn6Ju}Kw>JQ zMfoHF0^zaAjEx@Ki^Z^Sc(`5~`zRXwDjFYSF>OBXWfOAv$ut78+LX0$oa;0-4Rwrj zI43${?2}6E@ETSpt`4iiqY8J7hO5TGl^g|GqCu9}%3^FTmu+&4!#**l+U}_EU{|0H zm^~{aqLEgzf@r$}#Jt6R!3ueo#Sp!o#UR2$&s57WNYcuZv_g_ro}}6BDKncHWP^%; zB2k~H4g&y8uQL?Z)a5K=D94~AP+jdT_0ftwhzNRGS1Vda`Dj(@!AGmmh(|rG?<-n| zFs*Kn3*V^gaXMqFosJ5_ulIGkO2>lvtb+OHyLJl^CwAa(!kc29bz_{YRm+ z2Uz`JX%Dg(miA8;!_ppNF)Zz27Q@p1#bRcN{mo(!X^^m0Dg6>c^XcwG?H#MPMI&8FI`v+{pCCs3%y?(Bc>Z;YV2;e zt-{{3v{W*7VG_dot|qQdd>o+?{))f9VK zH%z9GXEerH&NRfFV>%}Wrb0DUZa2=oT=wyGRW8T|n>M*6LTR6*JiGNw<|&+RFw*LfyK@IGnDSw8BlBhz+&hVg)D|XQN&{C69ZTbeWIAf&?g46SPaAlvDkmnCrTR35`&pdBIgrB zm_GE0p)3ZGh=%(WOAKTB(IHfUV*f>- znATvHxQy8(az0^Y`p_pXXEBIGG`yr(!p8KYPn572`a~&@-jMW2}8V3w$2Hi?{1jAi=JC&sZDL?RkKQ!G)<^rKJIuo(J;gT>G%oGgYu zQOjcJ6XRJ7eZs|JF%WaJ*niO{RyLR=Jj^DM^NBj94}D?+i$Nr!;Sa?U6PbSWiAgMm zJ~5fa&?ly_82ZE&EQUUDC5xd?T*YEB5WAYi{);~Gd4pMEDzi!Cd}12Yhdyx)i$Nr! z;bd5G<=4xmGyUijGgu6L;#w9%pP0#F=o8nm82ZF47DJzy&0;YSo5N!NMV~mR_(Y^F zaXqt1C+3;S2OtzyZ9T_+e^>8z_RgA;i?4Te+u7&y(hdr#97 z+4VtC$wD91w^Y@)Ox3r1)whAFZ^KpJ_BBRN6JfjR+X41XU5;*5jxzhC?lJx0%1Rtw z>CpfA;+SrwbuPSuVs*o{3abuM{d-J*eSHqUNwGDh3;V-09}A>ogUcbX(B%CFS*wHV zBV~BS!dhdiy~u5ct2tuLtI9C}uGW;rRNCB?a4n*A9Q;`7taEs@*!fFT$ zh*_-qg^8bLBB*RBJ0j0|+3_w@s*_>L=pQD<7fCTY%T$R%^I!on%T>S74<^&gN|t!$ zumkkkN|Z-0bKaF%b)t%Dh+x8RuoN(J_#RDf6TlT*x_XyoD~0Qblg;AtqnWRMn$18m znbZr#!d|HQ9hE}UTJ=`|=;fQ|2Rm?een6lERK7vU_eUzdnD0Tf8k>cSv6j+OxCrTV znZ*iF$mRG%m4Iop`YYr`uN*voSPpgmltMrR%kh;`j%_Nv%>K68dK5u+ukTg5l|1~& z#OU!qu^76Sw|Ifvi)R~)=gqdLdp&dPVfqpOiz+Lux@?XzXAQ5X2vnWOHd^;LRbn6z zCB-s(OUizb{vnm;7#oH<#}bTH;9o2W#2ry3COcxW$HgjgFxzqvo=0MiF<{;rvDpCo zs{PkQnJ6@4F|1Nvxk&UDS$KzDW$_|mWqFGvtg44UiKT@2R;rAl2~uN4l?o#acj0wy zml=L4vAL^Ct$ZVfIb&#QY-y#gPqmYE>6WQ3(;O z{@yG>#Pw4pjYZEEt3jHfHq{b0DJ~^0rL0d}xo_cF3hHrJ*d7z?uS$l2Elh-^^NzxS zx@(?itS)t)nKJr^No6Z#%Tpz)u2$Cf6}zfxU~zDQUGeRl&?*sgj{(yyRHeqm;$N{+ z)WIwkj(787Ve!4i5*F6$0Ee-Z5I<6tFA-Y>+$%N^JlRT`q)CSKf7JeX%2JyV@+ zMI}Vg+IE&8;wn{1>lDwomUF|e<#DRi?bVjcoqw%mU*$T*1W|ERLdTg65=PS zGNxk&QOh9~UasXSsx*|s^Wuh5%RJjyd+KZ}Dj|ZkJcA{Oxa(9&>lDwomaTc=SMwZI za&opzH?p6ww70NWIMvL{h1KRQSDmpT)wdW?n3;HgB;4Rr7k565=-yw7EU$ua$&W3%N3}ao3oS<-%^z^9Xp6> z4z=`hJ-1OMq8NaeHx$|-)#QaSks*;)1LoeqQUz_2D(o%^3F8-pqyL zDv!Ky=AIWn95iFrALE8ins>AId;C;a%IlBb^4Z3}?<(qhAm+o(o@&4Uc40wOrrmG&?_0z<) z;uteOZOvDI&QGcMIj-3B`-GJ71AaU8ng!=SCypzh+xYxP>tC-J*!a_5u1tRan+2Qp z?u_et?g_KU4K6=;U;5%X&E8(Qapc~&Uz>MFyN@#8_*i`ZYtt=vZ+mCete4{s&5voZ ze(rUJpP$t^`>Ef>_t7)vvff5XWM&6zWv)7-B+Y&zpr_rZg%S5neSHI-}~imb>AQU z_S6fOAGS{U@u{6j_wQeC9iL;qb?Qssw$Hlak`6Pw-*)Ql+VA(zo`3b?pQ`c~AKIDL zVcM1+;+SpiGj~UezU{Qfi_Tfs@13O^2i&{$!zowip53X|`QAG(KeTVWI4e>@VjTguJ?|$H;<=W-kng8uaQ{q>A{Qix%KKb3;yZg3u4-EG>aP#)v67&usZk zPRfB+xn#_o^RN8!qI(x!_tr)#dJS?{%2y zsoc{4lUi;0?%6S>ed*>;QcdH_qeou0bN}6qrVpLeXX@%xZ#?<4Rb!s`bz8@;6W44n zxFOWzPqX*kH+Wy!Y3q08y}IqXF}07xcV6@7=?{HU`OMC?9gFVS^g-Xz=e2tH`_C;O zj~mi)+t_FS&hI$&-&FO|8o9l$EFQk z6KC}OA#L&g_|IFcZS~sxtcfqoY0|Y{$6@W}Tw2`cw?Fe6h3f}`SGn@qs-a5`nwp+< zeUnFvTaUBc@z&LouX*dx`dc$o-kEvU#IvvOc+F#p6A!v}KRU$Lz1Nf%J3h7Qwti>j zh~th?=|Api^7h1-5!W^Ewff$=OWogoaA)>{8-)IFkI{+!`o~W?c=lX-tz+i0uiu*y z*Yw+w2iojhmwnA8d){x~$G4?NgvU!6$rs%M|yGW+oMO!57;mW{rd+hTvK@B2RS<;79o&i|)y zK=s(g7n{R9_RjxcT<(XjcKiGGX_xtE2YUKYrG^)$_B2 zJlx~wQ3JkAo^;MEk&ZZ?vipi(UN|9P*;&>1FB!5RXRr7!j?tGp`%T@MGbbgx*^vX| zANXYCCwEofwe;%u#y{F4li5RZSmw`{wk&+pKzG>mx-^Wti_CnOJXc>TIN+zt z#`a(RNA}^FJr8~PMW}7**>)&@)Lb zEGe7#-j(S;FRyyy@Pp_4)~@v>byNSi(>!O$?B1uho;0tpL-ynoAKj2yJ9hD8N9Oa7 zUHR3P7WcNhDQ}RgJf`K#9ZwuMPUKISdQ;?^CapGnyfm}qyH)#le$?ZWJIDTT@yGXM z{gAM=^X!$Y+g-7@Ny|wkmb2bn`|BH@WRAV3{|86wIQG8RV$*vzt2uMpd9#W8F&v<&vKkYu)J*DwT*Mx;N->;ne`E}nux#E-$cI3VL zSzd?BCLJ#QeEZDhSH&cs`tua`O`pAXdZ&*FytL(MUUA^LC(*sHEAAGg* zj}vDPExvxqHplAU2d*pl=e2E_;`i0#6Rv!w)0Y}eO}{phyS{_-I`$OJo9RFLjT_HWe3Bp zUSj@e^`sZx_m{57--$ia7A|}3%SPJ#i+qXWoqvD2yxEOc>^(5##zy_q+xBigyKToo zCysggoku%N=zHz=&x`UbZdbf5^Qm4}Y10*Y#PQsvf7)Mo{MS!{>2p3i?%s>HBs>yK z-;1+14!GdrCO>M+A<8Mzy?@_3N6t)qaze0ln`STFx46rd+k>V1^zQFouz&T@UBUFd z^UrBRdi?rQc`$vQ%KJX@{OoN#gXvqGZhH9DxA)tE>AU#Qd-uJ!;K4J4=^OsY=m{?+ zf43``zFm(kKC{n)3r`59Z~W%A2TtlgcS10IS9E#e1M4Gmwg=PK-qJs@%Ypm01k-1I z;Ou3^AFRG8n7%!iluzq@+QF~<>AT{lPBj^cZSYC|ESO83HMKpf%0|>RiQ)^J(I#^_ zJj$YHT-&I~`cq5ugy|w>83#LaAVf#u zGY2u9*KXOgMh^!U*B}JP!F3^qI}?;4XT{?uW$5X{YhtMHNBECZWYHUyYlD0C+|t zhUlnF_>Z_@#Xr1zGK;}8a3nv)S7;(G8~$S{r*{1iOypZ$e6%v+E{Fg4>*sy$)Xg70 zHxhBd>I1KoB952aWV$1D>IfxW-d3{^aT@*u9NHW0hoPfRIXbalqN8R52-`r?OZx_o-Wk|E1Q)+d1k%Tpa#~Pok~kqk6cr z5C*tXc7*p)@7oVgWA(K&K5-OrI|$c$syj~)7sGy!j_OUgo%j9mm>%wI!u2KGy(<># z`tv!26ZO&gK=K!Q`pzZXEI6WHRor-mQ;p+xjwM_VIHEsiB;-DGu8y6%5H6U$^K|re z(b3nHaD{NhbeFoi==N*f2=@b2F7`DqojO%x7haC;giC-UmiO=7o8IZBlP;DM>+KNf zYqG9-qn=&PC!EmtNXwDe_t4RI0pV=y2sbeQ()c;GKJI_mpJBSea6Jjf?G2A_S#b&! z&Da0%p~9#SA0&)nUWc2Y>-5E;zax(OD?Byzt0bWK;^GbB&>pA{{Q$Mx@z|3VJ$=}Z zBF+x~aeRBArrkh2ToS?nhj?t4Q8#p5t%t*>`5M9D1LYCd5&mQTh9~_ET@IC3>aXxo z%!rfwt6nq6xJVViMuARS4ayk0x=;MA89W@8=*xv4Zyv^f!`ugkWyF^DHpJ#aW&3d-b>-SQ5 z%{uy0b@YJ~L5PmR{s8UV^!Mf`>g6vDVVZig=;%u)TrhnZI{MOe^kot*SpBlWP?Nt* z9evpveg5h(|CUC^|_VlA~chS>VtfOy$jy~v|AVf#4 z#Q*U5X4Ax1_4Exwn8tnsb@UA;+zD{R{5`qthBx%|4I!Ltzri~Ch7wM#4>han7oTgc z&EHTRebAXO9Oe^k_}*A|YbrHOOdCOv(SX$We69<8JAQo;q(cbSg9OLg?Yq!2=M)C~9!9hK>! z-){Ly$)9Au%i%Y~#ln9q$L7}EZ`H%u5M}^ZLby0Y!{^Q6mS^?!l^VoBWkT@Ii+%M? zW)M5!@VpSq@v7}pm~vxG?SJJ=qOK3Sj{PbKhx2Xp;))c@^NK#new7AsRfLOyBkDW- zsT*MkrTj_y#u5%X3x+G}{?&bYxN(HT`6uc-*!BHAdN?owgy^VXxEjL6z!CM;?ivnL z2H*TS2zNf=8ksk~qlbgZJcQ_|V7OYs;d~KOTmAS|`}FjUC!Dw*QSr|=y8VHRaOejZ zhQ09agL?Yh?APch>{~EQS$qSyhOfVP*sp4TaqIX?9pTP^BiirHKgyvC!I!p|%C|L7>}7n;Insy(%KqK>}Fq!0T744*zV157IG zK8j7MK0dUa^bhr*JX^Avo?zgSe{<;;uG`n`#g@%^>a?gShF0v#=vP z^k?2B;0M0#2>WHUAL7u?Tl(I3njY?2gaNJ@{6}1>a33I(~2+ z;hM7}-2Zm_xjXgJon;U=+aPX^LEQBQaW@#m-DnVZlR@0g2649-#KB+-!F&Cx*XYqO z1o-;PZG>yVj_~N%&!a!o!`*HWH&=t(@6LoIeAB%{gZn0a6S$5q?oPsCzky+Y-UeNN zzKi|J`;9=jy9p=CyYxis>3ZqjL%4SA2v1h`W50U|hw~h4M~l{f-9b+u47L!Wqxu4< zEyQNdc@FG?4Cu$De)oPR@m?2oY+L{5eLC%J9^piLOHFzNh6rE#JwQ0jABK-?=jN!> z<^A(~_G@$$&aE(<_wKJSWhH%5e*l9X1a*HfUnhSL5iVH&vVd@M|MHNIzK01X#+iX1 z?uMbsx4e%?`Y^hwWNBkP+(N=V2}c~?KI^x6soE}l1bmcmNpQq5{p@?5zHy;W{vIRT zxp2f4rP^3CqP=myf0l5w<} zhMCtr|B_z1FqwxC9rZA{<~a~M_0P+}h2(U(Uo9hCHXKiY&l7_)4?VBrS1%B*3mj3) z$&>EX^c%b!FB0xg0Ab(eSlkMd@J)9);qbf~)BWSy?xq)Y(p^EgwQxjzvsO%juE|#) z7y&|blxQEjHvX|_g^s?L35R}z`kszolclHc6~YO96F<1=;g@yvtt1?d3z#c^^T}5Y z;$Aa|d)*-J4THEh4dUK1h+Ab4_cq~hEW%LN_5-M2-~Mzp`;}kcKszV4>*gI7q~8!+-pBpS$BUC0!|h z@4;_~6Z43w2|xXyr|*4(xOIf<0Y@zFGhLQ-RP;&Z{eWgFih4Rq1P&Zw%tL z5l-aqFN7cgS#wxDl`G#biX4U+7H8950pNuhx?xW8Xa{W9I+h3x(~AJ;kFa* zF*xG5<(W4W`blJ{>lZo`2;OmU>-S@KZr7>b9|;$%{q8V`+i4K@lR?}rgSg!WaeEBn z_8P?fOt_Zp2=lACiO_ZW`oS-R!}B++t>@dfuGPcsBiuQJ+fXw*M_s>se)TKi7Qqq6 zxKDmM5lkhg%iH;Hgv*3u6Zjn3w`Jk4I)3mw;ezS=Lr355I{Nk-)OSEf-+mo^2My}` zQ%B!H9esxk>N~8X?~snZzYOYwlLH9e^J%P)zjXBdV^H4_9ew}k=;K{PbQJmn_8TK^ zZFZTSzwpg_>in7L>an~JsuAmQ_`VzTzv&mg3&V}C|3wo{_P<6t`Wh4NVo=c*^wpIV zIra24A>0taoCu$meK&sCSVvz|!kq#bjBafG_O)t#ydB}o)v-Q;;hGu5ooEo(+#v2G zgE)NMw2^YOG>B_OxUQ%c!qn==HTBEw*P3t_00yI9zI*lnJv+A{9QF%1-?*#iZ+-P} zZ4Khu5zYa}XwY}xU0)5<(|0oAW`bWKuFp-sLz9;Ml$WDD;Z6k%Mho}-3jH_}s`vjH z#GOjGGeH-o8`X9E>3ZpQAlylS!Cakq`A5?goHTFmNH}@k-a*Ij`Ky(qqXvPl#_)M+ zSgr2-r4#8J21jg1&Pn$7m2{=~{pp0maTDvUS>lp6^>Akp4#yab@_hhIsM_~{>ssii zayib>DaToadkl_PC#5Fyo$C7F<6CFKK_N{z2CqK+Pp`9d^u-YFM!;Y>raxN)CYSwy z>pPopcpioJOWVHfl^7j;=Mb(HU@%&+ertxJPpY?b2`88L9MT6g6Sf->Vkkc;LI6i0 z1LaCUnHAnVGpWj>lHnJucM$})LI~g}WLN0OZq>-Fwi2hyn}ot$rorLY_jF`@?hDUN zgWp8DeB6K+LP#?1V{m;c%8Tm*aSUbf5nS|D5n@bLQNyA7B$4>Z9kuLy!WS4W0d%S8~lUvy-hvE!j2aChp+*6YaHV27aL4wqymYM0Y>WRH?;B=AML zYe_ajk{u#hq9nWc1fJ+{Nj8>bFqkR&S~ugk7|HgzB*R}sy0dg-t8`>XNOrEoU4nxE z1)=XeoY-k(Rvp=cIjk;ZnCy(`HE;slj~z`dp;J71i10aoB1 z(2=#oPMU(it<;e@@g!J-+pZ%UhMl-3l~w4-?$MF0 z(~+^wubOm|PxeitT1PftNA{_XtZjQ=ed#(fw~p*l9oc3bS#z9}QxLW?>&V9I$ez%V zeXApDkCO{c8W}pW2|BVxI?`$0$6p`&ja`8u*`Ix@Uc zEP}A}E*;sKrwNp|97ABxT9k#+0jo5rO&vfFfI@9M}7>BtgbCN6>~Z;g)Z zK^@r!9T~g%i4+QbN#cSo$c3z2M>bDK_JNM9F`h_J5c>M-$ZBjDsV0|*lz_Np>GDshDx#}B*XJJf!j^8 z6%wwv3w(j_GJFJXImv92Y&*#ii*wuEjr8Z}C!dE19)!LzI#clFcI7W=Zxg$?#f` z;I`}u01T3>oMi8TSm2hB>{dx;!pRYY>)<1B!%23zB)gSlAOc)f)Jf6$zP6Td<0bC- zama#qQ@}^0@f^waO0wj5M8VTc;UjRblI$8uW=TMl$@DFJ1a1w<9FnXc5mB%&6+Qy@ z3CZxp*EkYwLUvQfP`*D1+fA=zh=ET#{~;Wb84wmBrj>jOfzk7Vyl-0Z%bdygc0lw>zc zvJ?7o9R3&js&r(Vb!4Ys?8~hoSyQGD91X%2k~NWJnU}DiOeZrLbbb)N>dy`)yrvby zt_H$&pHwb;9u7iwC&}`ejB~Fwa~xjB6y+G1#$|X-RmcvfbD0GWLiTkAm!VoAdn}8~ z21v3tIb2pK$(E1|ud@p7fn1KmYqUa^jhTgj$qQMd0wyw{DTJ&)Du-Z&k0|eSlC@x`m{ITr0>WUa@*7YL8TM{tLe>e6uvP&DC0`C-AdG{L z(09eLvRqdsU*8ol5HZ{4U#Obgmd4NWRpm?Tav9L z*{DT#78N%j}Wg={Oy?viA2c4We< z;NT;0HUmi_35tC~)U`xa!CGb`d_=qw2*=Z<&mjS^?;2K}UL~Q@CkX=f$P7>}Q$xe`DZ%*gj9+Ir( zOfKst$*i-v>=a3MfMm@j*~~c{*G!V7qH{wy3qB%$eQ#tUQ)fxm_7*PdC&?ZlS+*oQ z|5lFcBgwuYS*9er8wYI&XTwLNdzfUWO0s!4075teJ_4769T5BOl|4l=E^owsU!x=Y zQX{ik%RSDzszgR$I$?dV)LunRm5DK3YmL38w05$9vAm$H#>t-tg+B-!yj)U+i!CT( z`mqdrZM&&S$gqC+IyRFfB*FKA@ZoFGT$Tdg^Wc*UA6$V2ZgMijhDO0_wctZCcKWd! zzVS6do(9&#Aoz@ckHBFY#bJsUn&W!Gcf<{c58+Z0AodD;Fh3~6un+8qZ4%dd(eHb@ zCn*oHie-7>&#^)5Wp%rs#v=yEb3!~EZ-7q>@7!K>`2lxm(Pvpi_$zB54d4TzxaG);*efJH>-xfHUc>Q8=O%K9{%e=Ni z8%VM~hz zohHekysS-kB$=>Z(+9ZyUIMwW-vp3hkY&3G_X@}b&N`pLSlbk`%^*X+j{>_2*(GRD zNd|dQd=haYFHZpOLimRJ!;p)0-V2P?54uslw~V*_(;q^P7l-jX9^yVExF~D6fcuav zyAEV%16g(iWHB1qR-Y&^(XfLNAo1lj2tS^N{cuaa@MfehQKEZYaNJ{s9TaQY05 z>{*Zv(8$_7X)=w{$lM@16J*QagXO@wOaUif0CkD&MwE94;4lar#!DCTx|C&KfeiZt zAwzwAput@W`uP4Z)>eB#mt*<^K76kllO>?D6~M;=A50gxy%9GXKB*|;viKAL)_~pl zzBIKyzNbyCFWt*k^j+eWB_~0AI()1o!^6m@xNrOhaZ$e?f((O@LH?BXfihvM!X=!G z1C*8(FTw#&ot5!{z(R1`9qi!#AYS<1P8OWdU(!ysfb7iEHb;WM0j z03;&ag&@NqWHJ|Jf_wI}ockw81os}0VGuHzi!#AID#ey@X17x;*D7Xc1~gu^b(GzC75@dro)Lm@gc1Z=M& zf4_t56!?BV$ygfTsDDP8Og%s*xCP7E7X^pko_vY78No$avz1(5cZiET}_QfP{`0c&7xIQ84$);Dalkm4Lz&AlJcme!}=4aZy?ZD$=e;xkP^BvA59EwbJ zAj2SJvcB_l^oi%@A?H=nM>rIjCaqxylaR^!y6Wf?_d6pi>0O>b!ZAfIkYNxqSzkBO zhxLtTXGf;}c(!6G`_!9-k> ztgi>@yBHwoV|$_-cNF(uBI_`4JHnB0C^AidpB)sLtnYlC{E7Qckkx!0&mZBKqHK_1 z5HeZc1*A{d?~KzfzEs?&gq)ecMf(vBMW%hEPsn6_7wY6s+#ibE%Rb=wBOHoM8$gCZ z$YgyzrTn2kWB$bbp~$hU=lLTXicBwn41E8>^)Xb?Rt{fFOQr9#3dYxOyfS}=Pg1e>xm?EtPjs~uz#tB|IOiZ&5qbMVm~nc((x1g z&(DW=i!_r2)tuecuv zSu25yi0WRtz98=U~Gdn0USzn5dK5@SbvgQL9^%0IK z>ac|!6q&5Aw~jt>zYDT%11{<#98=UBPqZKinXIpmjy`d}5OS^sF6tv3icEizJ|UC! z_0`cQ?iWIC-BzxTa40hE0T~7%llAq}(I@W5K~DJ>Tp!_3WcnIp7=%pLcd?GXE_8nn zaz=j1^$`w5rh_2EAY`(>OGqE~2N>-z@RQd&N&4>j3YjJo;aJ@KHE$n6ChO}@`sDsu zJf9WGJAsS+0pXawv~Sr#k;(c}b@Ykn$0BRq_go+0n4-f!a(%LF^e!&r{~MX)=aic% zjTZ1Dj>$Y=@5qA_xHuMaoSJJPZac#M+3y5svDkC*a2=(~acXW_kaU+&x*VtGrU&7^ zOKWiOX@o#j9|!E~YS>xHyl-Xs4S;t(LhXiOX^7baRM%2JkSo?F)8g$lR-m%W>*- zb0scDf4HpEB{KIT;&Pli-8_kl=_c1Mv&!7v#N{}3y7>|pqrVPaIYj36*aJcc9H&mV zK;r6^H-oqw$L&9zWLzuglb+*WNcynOF+60Qcb%MbwjfE}nm4*m?hxb7gKn;&PmtTTI**z|(8zQ-F)@oa5Bofy4#JVfQ1# z0fM)Wc$l~xr{)d{!u_1M9H-_ECN5MyJD+38O6i{UGtV=}skuXlJBX7^F=xd>74rH) z(Lms0;5aoGufyX!=R7<>_&l+2sm#5exE!bE4kKZznFtskxUD_eA0jDy+Ix=B_6$$EmrO5m&UK^X~t6 zq0HSwT#i$7t;CI?beG<^G*0F={+0j0acb`6#1&)h`JK1H%-?IPbmDTHnrkC&XG(W* z>j6zxaC2(&k>h!s1W$EmrKgK!Ip%W-P% z6yox0=WxCJ@ybqe8=MPV3>>HCUP0Ur9AdhpW9&&XcRg`A4!FwB0F&uT;$k1mqD+Uk zkNumtgi~>^3c_9SC(jV!RNSkBaNW@3Vj!G~J2eP5?l9*PPQ{%Tgu92hgi~>^3BrBi zFP<*pRNU!7xTSw{F5y(%89}%)Fk`|%I2HHWAl#3MOE}dSI#c5E6!5>-H^v^}Qo^ay zy-wn?D1&;r2Z>8K)%ZJ$xMH63**mqWF?0!eD#xkY!ffL5^&yj~WcM%Ca-RPrF2||4 zbBHU>7tYGL_hXscKZ=)xiiF-OXiD~c++rX2&<(*1gj#G1QATCTIS-83yXQf{5 z8sc)CntP)r-EHlnZ;-hsG~#*YI5qbs;zCEm!n%z0FUs6L#N{|O_h#arOWb{ZzPv)_ zjwLR~2`;}7atm?W1J_$hZ|nu)a-5obD{*lii_!U}CspSu9}t)0)ZE*M3zKH@0*FXC z_>Q<7r{>;HTygy+d%~8!GWSp7a-5nwm$?4Q+cBB}OdO}?-a%YZ-m6aNk|w7cM_i6m zbMGWBo*#Lw>y2d*m*dpjyND~wd-=(Ky&`KFLtKtibMGduzw%x|T#i$7@6nX^yAy7? zSx$F8aXC)Sy_dK+j}_;2GWT`ja-5obpQgMyFMs=;%>9PA9H-{qAEdm^8#923oWKAk zjsvb_tHs34C0osSy~Dk-tp*d9Y2y0x zjhJQ(VB$D6cWDr=owytaT*+3?5I2i#74yrh(`8#dPF#*tr~52%g{=;?%DYzP?jkP7 zskzS)w=JaWy&mKp%g#TM0ZbgH<~~nc;aASD*ObWVjw3F|skzHET&+(oBQD1QSF+U$ z#GOXAN?%rtsS!PDh9;7Yc7nYeiU8KY0$HR>DLR+Yr%ICZ+O5Lehr>sL#N%W-P%O5*zS ztG&eKI5qcG;`;Nei&`>(iR0AV*EC$MUri=1#{pNe)$7C^L$;b<*KC1otIfpaICZ*j z5Lehr>sJY_7=Y~qN1c2PjnCWPB(6WdnoV4eQ*+-Uu0Ox}intu7=B^6D?bVv+nQ$sw zy-nP7vek>Wbx>X2exr`Kgj1DwHF1Tlw0--F#3h`H`wnsa_3ghAmvAcX8sZAS(vD?u zZ5Y5rI2HF@;`+1m1mbcW*je(cwZzRMTg`1Vp;EThO5$>yx{lr>uCSH14K{Ae^UQH- z?)${`*9LQl%W-P%I^qgjY5VpYiOX?n?gtvKwhe9}F2?~^vekOxn#or8je00fw$&N! z7{J7F>U1{{SJ+D121gN>G*Pm~!CoadSxgQ1LHb0pGOdJPX z$yOf|SNPTPwc}OSCyR;8aq4t85m(qs>sR*>m*dpjPl)T!uf8BI$EmrW64#$!#k6Mt z6UV8!pJ}*Szp5cF#{pNe)n?)fzj|%PrdDPR;#>xc>ZV1#vk}&E2NqYW=Ed2cBn+1FmGNZ;5Lm zTfIHG(8&+p2qXc zacb^Q#P#P_!-&gqYVIx#SL;^`iOX@om29<}xEAuOZysu{x?Z<~xE!ZWcMoxet+amC zwG#uFI8M#oOI&|`RYF{jQ*(bNu0OwefVdo|=Kd0d`#Etr4!Dx7_7PW%gXN1mkCFW< z=5z)yahy8cUx_PhrS+>y;&Pmt`x|ln`PEazcjEfmH8|NFmark`wwyb`PH?=h=!~6tBu6vIN(aQ;%14C5`GnZ{hJG9 zTea`Z^UQJTbfcI_z0Y~q`qd!fa-5pmh`9dz>PF&noSGX=Tz`J`4skh7&21cn+bD*Y zm*apd*{TU~#W;Al?#ETKt#XOWaq4uN64#$!-A-JNQ*%!su0Ox}jJO=9<~Ad)KfgNT zY+hcDQ*%$$aJ7Clmbe@TT*+3=iEE*8@RZX_UzTn4G;ujjo$g7*6}Hm))gIzaA+c~_v9H-{CB(6WdDkUz*F|g?&l0h*caM|-ZvR8FvYc(=?e|9U%3)%p~E4Nmh zBJ|_;Pl(HLP>#~daqeD8_>-wMaVH5flk$Im0WZ~>WgBO=+N!IarDnIM%xq2^Dv4|! zr^_5~PBU4pwRJ9gDd0@0sR`zhmSW3@T=OXSk_cZ$&^N0!*HPuMdMaIZTbZ>I{@GnX zm4*Br18P~h)9GQrD#rv{bybIIA4xPB^&io;sHUlvyE{R{Nw9CeM;Rz=`(lWc-<8n@h?8PZiUc7;pOtU3zSX{iBH9f-+34Cc&&|Qn^>Xm9ebX*4iCqkn#Fu%wic9pI{!C#tUk5yQ?Z3kyUE77J4RG ztFRBKa#-C}o;qlnD5CbLkwTv{jsSHI_9c~^AYD_rIjph96*wyj?QXZN!fvi|K=EO})66Wkj5L6sWOUt7>YYM`j&0^984))NU=YSAb98_bTY)r`XN$z5GE-oi(-9 z(EXd^6QHk+=i>)cB7UJ}k5$cTDt@@j292bwunu066F9S+5XX=O;DABU#g<_z-NII> z@kTZ945r3Tu$SU!T0aj_bvyM_WtRIa%%o>>t=*heWv?#Fu)9lLRkfI1-{zH;nQ9rH zGz7tD3}jZhtu?k&oB5`k{oJc|9EHY}NaF{KXnxGa1e@F^9WfYr|#ENMe6)wPwjqPiLw$Z+s< zL+!F&VSre=D>wqb9le-sn5*VK9@gB2UTbfQ;u;~05#63oHg z5FGRg`r1lhx_2}zggr_9x>uIvL3VudW`WIpbPNsMDAp^^=v+t1Of12{ z6K%CeD?O+eF%!UKGpp@2b_blK9UZS2k;Cd0rp*?-eu87%(Mq|#4#|4!Sa=w$8*3{z zF3l2T{sQO6Y*5#Bglt4NTZ?r1X+J$#K!#3N6cBGovlg*R7_92P0&sA4fh@ED)SOgd zfk}d++lm8I^_pRDhNc|_CIoK?f%)8%^(!|g)VkFt_^n!fxFwC}Nv~q{7`$FZgY>CZ zKNLs>9U(xa`XTzS(*OkBD)oamTBCmGfhsgN)C$!n_^nWVxFs#uZ%fr<@Cs!Y<@DOA z9}1)rq(c1={a0uJf^LQS!5ghmKlDHqYRwC^M*T4SR;eF6bc%U?D^-_6-EW@X?pLoU zK*E%QRII=B{MT$ChHlmRBN(k)fBb-zn;&xJ>NEUTu09@2p6|bM^*B_y`F<megIB2EIj|oJq!Oe;{Sf_EXaIt4 zh5Er8tx!L7UZLr*l#Evi&En#g&t*VZB*lwg;*^tJS__GhUTH5Khu69J8c3P{qz0z( z(|1_VDN_hGT=LGuWlwitCfMU&yx@RNq*Eri!i|fz{;iKI5B0kagN~R{1iy#-aUd`D|EuzttaYKv_yxbp8mWw_3kmVtkkVGNq?1mYx* z_u@M#Oq=Yn4~EO5#;QU|elT3`=Sz?NvjAH>@M<4k@XM@qV~;SP&Qn|G0pGOSYRpwm zQ7AYqO}CX++RHE_{>zjJ&6o|fsA_nXrxM}Jvi>>wu<*pMYe{_#I8-j|j)4+5JjHfb zT3uCjfJ)4_So8UmO6|9U?B&(43<3I@^x>w2&T z5~nQCgCd=EG*S=CsC>~d%Z96?lYO%#Hl}!2`pO9!jLBAJ#1f_O!9lPL?FM&b%RhL< zE~^TzA_rFmYk@<(tBXU}wP(4AyienP?vsY_H$%w`^CrVLFDQ#G!e-X&V2Z$K()ODW z(CDU8?GC7Qdt0B+a5xy2HT^9G@nt8kpM zhjEqIv^BZ&JH&^eRh>`xRmJw9da&!WC z3Xa>ftRyh}qN!2!Y}gP~UG-_W2__eM3AV9v5Ue{pYj~$BXzG4e>0x}@-cTH=pi_dy zc2jC5%n>856uW}RYGn%uma+*p-0Tt2{DLW%9mdz$s@;)NZ7l-x#<5Ii*l|Bnq!eSd zQI2s~Crb>oRoB60iF*13XogIab{Ji$Whf(e0FR>0RJrap-{1Gi7DzGjtXF z?3bNxhfap6oqpGaJt}KEu=geu+Z1BQCJ&KhB{&(FV0U?jI5Qm{m?wsiQ_#p;oU9e? zMk?_PJ{+ZxG4-%3S{=;KLhwQLR4puG&=qJg+@p+l zIs9vH@bW#$8)>QUN-9|U-&taIyC*g}H!LQ@RXbSfQr3FNcf?v#swHkxTuNL@S)aIa zUmJ<#BYt5R#{FXD?xFA$;-ZYYEvLzAJ=F42<5Od+VTsBN_Z`>Ts$AyS*z~kveEwKm zWrus!+-#k^7UR&G;Oe37ZLopXt1u~c-!#;r_h#s$k)Y2_hgRrnOX2oCm%Y;Fu7opd zYYrYEW7eTHa8DuKbsc#FuoN&&c!WR=JaE8n4kHaP8OwGUR5Mfp(Cv81+UjwJlRB@% zV^x#A;kE&|Yk>I?|BrX>vE8>;3%j}8S^+ooiz>B3_lVW%^*5}60`PQeodXuqOUHp1 zREbpqOLy%LoS_f950pSDmnd+l!D*XiM$ej|8M{>}uZ|08HSX$qF`WRI1TlFX0K^zu-7ANA+^#5PA zBgJ;s?C{S6#naPba~<%I3{P%(krU1@;ei8 z`0)R%1<*_6xgI%=GA=28g8OS>Rd|4_sII!&w|D)YHIQC6Cym=^FW)Zjf7Tj0?t)i| zQ)7d;NAMoYrzIXg*;Fn|D_5EW4!(g5rthZ5YbDs_oIp19trdeKGqxDtJsfOTj@WON z6JUifz*fFcbckIB>b)4DXb8ODA{0&fdn!WJAWEd(Hxa6qKzk!X)rB>!+E?t|N*1ar zX^(?ONwKS{2JVHOU{^Ld1o0kY+rgxLSoKN}Hav)mk+upCk+y#_Q-oFu+(m&Khs8e5 zAk8T^0?jFi4pGJc%_)e65SmjEO$M5i0S%%=0h*HmEry$u0bNF$lL1wsG$#Y83ZnxeA1GL+^NC_(W2T(W6s%_)dd)|_(v?l4q!SMUH9Wp3g#Z!GN3N9O)5}=(4q>%YEVIxvi4MHtT`1$pg9H6A)GHja|)s%gys}P zlY!=BK!YezfaYXCi{a*EK$p?xWI$CY&B=he$Tp`y2|{xcx88?#Rux1kYfeSRniD)t zIRZ1kAWDS$1!z#g@)1Id3Z}|HlQN=06e>WQGNQ(CqcWn*Xsa@!E0ktsL|gz{bq zCGkmci%M+lFuo&7`*xW)_z5;MgrEv*9QQs{d7n&ZEw6&bQuZLANNmzpFV*^7d4Xz` zwiEeo`r;CNeVI~Zwq4`jkhM5-9IT$i$MH9y#2&XBe+^sED%IGnA-%65Z=vyZ)`oG@ zqgDn@y+qcZk6J1CZrTRvFpgRoG&SKJCj7iM%%@vr?szd$@dyC>AdS+t4%Mq``(goijC7yie#@ z<_+$jl5TK?eYKP~>DeO3ID70-xT&%HL0iW%FSrYw-LjzEeQO=Y-meIE^Eu#_GS!V_ z^ozKaY_NP68SMG2$6Hl>JAb`RS0iwL^uHr}as0ORa0|^}x+rFrer~UhPfRH(Pl_+= z)w?taZl_L&PlVTq_9`hWvG+-~C&k6n?bZC5DXE6GaUS396WQ%PdR}^b2Xw>TXRYjh zgZFGU>}}n=g&J#BFhw_huhj9)(f=h2c>OH2GjDPqt2N8}_yo8u5Uviu#BH$hM1^4? zJmAnA_%RD3+51!dKK2l1@FPZmCYJ0K<@{0)Ty7MGgttr3BP9L>S(N7G(Av<< z6)t!@0-MvpgYV%zgR$^HUS5&xniagUt{Ps<0Jn^Yel;|I=c@eOCmvDR+09WXx;SXlL9+z|S zF&~uqoJJmu2Uj~M;%j2qdpM4z(P+*f4ahKqu;5e)UrG|srx8}Xcgk9gZ?q0FREnnn z;q7;-2RjAf!Ov0_d^@rrbkS)Af$>2E!2hb}HQ?*6AW!@;J>|mE@T4p^%x+<64u50g zs>4}kS00BH+StcB2waHdJq5q_HsDzyd%zQyic!E znzxlEr&eceg3rz5k?sZjdR1tnXOj0y|m6%<(X_{4@-m&$~mseZcZ{;t?82{ z4XK1jEoM$Cwb!zj`}GDXinCm{8hZ}BQmESQN(7m`vXXy^P4&Q=9nI|Cs6f|%;gwmb zmf=b07-o8vo)wE^koy@*K&NWu}FXdiqc|6+)Z#>T7t7iYu@{eS0Gy*{@7-z=xrCv|F)Kf6f0EYx=m z749Fc?_;&$ihz&3k5x|e+Q>1>OTxd%F1^(4KEzi6`_yk}e662~{ZHzfx4o|p^>x!w zUeN24*#=Ec&*K_4K}{Df*22W=50nS|;d>B7!xxW__gNQ&_u&S*7=h17)otE<{jK5B z)Vhq{Qi@A$bPQZj`6>|<4Q5?}9%?}aFA~XW2jzx(t)WlDXrP3&b;ptsZ9?pMtC#iIaSLqkmDu{J!bgmYx5fB0hT|3WudFC-d-Cp5 zQ>JQ~Sw!I7XR4R{_&7l%wd)OT5!J6Vltfg&&KMa{{VBd9QbhIZjCc{%kJncsaG@iSc9^9O^eCu?E_DRb4zJXKp4ZdB zg^obd;gvbaGfe7n@g-P~B)3CzDOhrSlX z5%Ax5?~7^+1nl=be*1{eDu($eyo)Sy+vkJqb<(U#NSnlH$19W6|Mn4`CVJere3u@N z`&MZFiZ@cQ6)nwq`SG3$_Te7yxy*1wWIblrD348obfKc9ZCl6Yxl@QpI z-rz5bH|xHmH$u08HmHyJ4Evg9(?E%{+u#h%3>qi{yxepPkj;_P zKbCjd>>=Lvp{@MT>8iv-yye3u_0aip^8cH6L1>NiKU+$v&QWfzaPoI;icT?%-B$mDk0*{?H`|~-7OX#R zpu~-K+zpg`;JHH>4t#t|BE0Uo0pDD9eABPTSyJciYlHY3+b#v?p1788^;Ej-wlb@| z)>&E!Z`ih`*p(;rvUbob&5Yu7vo$U)-JCgKK!&9tv%oymG0x$f=txcW!Wp{+bg_ru z@YyY~Q<&K0vQ4%+>=Uikc1MM$QiWjpv&{LqMd=xtMR{f*q$b;tk(vyY)MVm7wuj^< z!XqsGYXnI85K9mY6lqXgKs9E37)SaLBf!+uIRDv!t{z_d1F!ag`()x1&`92d@$FyS z40@@_zltQhGCz8~^})L_bt!y)1-%-Xuig}V4zm?E)tSw*J6OzlSw*=63M~0h2HaGc zn(T2pp{ksY3UHcn_(bL*&h*+^jKE@a@JBhv4NM!JLx zKQp_ips28b{j8*zZZQ{SXXU477Z>?vHrK6eOoMDd&f$}%G-NS&67=kH&IjN#>LRoWEWhpsd8a)%d70w(CNsz zPqUcQ(=8cU1=(5NbV}j*_jw`E3TT^F9knT+qgOoA6LvAD&Q8arh0;J5}zA_sKS zJfz4xAh$3(6W+prThn;$*s5_J1CHmiS5&#-akadMSInJO1e1&WjJ(1eiy6lwW2}rK zb6#fQfb;=5nUofGST-1Wn5&nd8khuC*x~&Y*uN;rWu%#l3o|m(((CnBWWoD=66zB{` zY+Oj~1GAt3Rc?428k>A5eM4G~IX63}pfDph+dR0^Syv4siNoo^uFF}|jk9RrU#k4TnqrXP6x z(3;-(X|s_G8rH5gA)THSn+x-Ev-7g@a(z!!@!S;N!DOGrPEg^DFk=9}R)RmoF`;}m znVxUX$$>NFf^413Exx)6**Rt|yo3$jf~(9o;F?VVoN=cY!c`yL(|nHiSlv}q>{f5a z6a{Go=ClFXnd#YhfkE#&fx}A*R2sNePy}>%xr?tFe(8-(nZWzlEA_B^s94TN_JG{% zg5vxlbDhKKD#NopYmKcoHQsH9`ICJ0k?JDfJRrNM$dYAAgR3#{(z_~{YvDV>QT zO2;9o)LG}?7pT~@F2kH#RFt2WmXYV1N6Jt(&nsSGkggr#k9a+i<#te#=Bg^qKL;gh z~$QjVOr)aG8R^+{iAXJI#HT8TmivQ&`ua6&t z#6?XWgQUp^j#;8V889ncNeF&f zA8n$t4Cv5l`G(kjOlyd%Z_p5^S_d;k4Z%C5^~id9XCO^}OsM0XfwbrwGb|;ccxUh| z`PHV>R&X7GyfYBnk7+|l*7irJ3k;ksiwx96ki?}D43dG6rYrk7~>7`y%KsSC#IzI z?(LOfEIux-SFc`hOzM@Klz@`Uo108Wjx;hAM6I0B*0yHB%NzH;yeNNZ%%S~b7k;tA zqzR=_CR0hrC{tb&lc{H!%UA_zA@WR$_(sR(Z2)I4sjG+`EPh!Ck%hg*H-0pm z+NAY#mDxNtuN;yx<@E7>#~9$uJw5hGp4b|P_$3Jv0r6`*J_nhWD^5+~@2MAt4#y0fF8gCQ$jqNKYh3c3{VyBu`$b=p`whtorWhX*vC zR1o0miaS8JnBC}yvj4s`MR^A|U6JgMipJULOk(^5_yz2q=tf3CR|Gmwlyr4b(AmLn zT!tYUgK+Zw20pW*prhh=SCn+Sqo6AWKZ}#aGJe9zM|34o&~*mg!6@h|K=*YNbZ3EX zkx@$VfGeDQHn^*xTc^`TsyA{$_b_O_*6AYIDdmSbOHq<=(-n!1@;3`K*XeYT;#~#0 zLeL!1>00ACphv*&FNOOB*{I8L(`CXPpbOYD@mm0z<2qe){CW?E4dSLN62Bby-3*!? zEzlhYT|H<%8$sM)JGcY#h3YYIq@qm2O;@CNw;{n)(BzN+xU9It@#_!wS3vWfP8W&a zIpBA}Xw>6lh?}B>rb}r0%>vDrI$fmvod_PWFq&(~a0ufL$QR(}hWlL5e5}*8ia=Ka zcO?&H2{&Dl=#t>K7BpLd}G2f8mn)1cEe zr>}K9+9BL@Mbh^?_+1Q|lps2`gD~kg0yNhK(S=LDJVZ1DG|%R9w92{o3)od?x;!yK zQFh^`D^j{FfZyk!xt0tTR~+sDzkr=mx;zA$zv^^G`i0TsSEpEs_*xJ=2M-n zxpY1Onl_UV09T}R?g+oLLDN&GYmVO_&}2u!Z!Bo0N5O9qXjZkrkNSVNgXTw_E>eD! zfv(FnXpeByW$4kUeDsFjCeXa4(;4~Ei0&jjJ_OBs*D*WgLi`2tcdk67zb-Ffq4#*dw^GY0ur{*_0VTJlPNv%7vLArm->mDW++MxZo16419Sm?w?Ocog|PjZOxA3_bMq`k zIfk3ANc>9R*RKeD3EXrwm%q<}=0lw>lD&}lKZ0i3Y-Sg+ocDnDa?m`i(?yDx=$-@3 zyDiZ51Kk&(IiD(OT#@7>ItOTOjDk)D&GRkLy@~vI2Q+`B0)>m}*KqmP6Le3^Rh0eu z2==T9biLrdYCdRj(}iGR`C&M&JP(?ERAJ&e2X`RefL$fS{U0|eN*!*xBK0FE#Q89W zyU8GMMaqw2#QQjC&UOhM)x+W99SHZ8pxLa`MT++p(0vY?nbh&XWy8(_5qqqPV>05scmx=8Y&OQ$q|CVi2_YotpU`6hy9mQEK*z67wj zNv9Ex!RZ%}uRAWu0 zanluvAIVn(ns-(+S+o51so=9l=pyku2JeBOxlC)B-$l1!{DGUUNc`HvPXo<5osP;; zr261t&^#4H7p^`aeP0C4U%ddhnzNTje}{GkH(kxi*Y5XiQ zZn`4zBYW=s2egy-Fj=$m+1H^g;ifARzpvr96f|@0WwK`Z&HSUH{1G=@k@%54?*dKb zeN5IYzkjaBxEnWJk@$6kU*i3kYsF2MVK0sP#ZSX;IA~7lbZzk*t{!*7{rU$mUd2sU zq!TbVr z$?zN<1s$cst>Ngxw7<83ZoN)R=^U=SwSoJeqU84k=w5Dt-xTnB6*Lz=0)Q)0KRX3} zH-P40oi36c3MSFJ)H3pZUx zx`fep18DvpL>ErqWnl0EXa;W;epKHC>>yxQSHS&F(7dA4MXJZCoFCU|gkvzjfF9_I zE0=9U-G-a4NcGS<2=p;%mhKih8eW8xkMb>XzoHc2rYjP^R`9z|r(r_;FuySA_W
1G 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 z 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

    3G4Ptv@i8L$}=7&v;!8wxvaGx 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

    ?v$pp^F`;A{m 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

    O>FrQ?B&3QkC27Fq$~#P3zYkj$;>vT8=;Z$!8* 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 z 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ȧp8ho0E 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

    WUL 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 >7_D)b-L>&HPI4OGsx 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Π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⪙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 literal 0 HcmV?d00001 diff --git a/external/lib/libprotobufd.lib b/external/lib/libprotobufd.lib new file mode 100644 index 0000000000000000000000000000000000000000..7d79b4504312b55e5d3ce522acb4117fa4f24710 GIT binary patch literal 60092160 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

    yWOVE=@{DRGp>E@P(A_YLbrKqDXh4bhsa5>c8jf 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


    qMNh^wqptVERcjPgZx?C>9r= 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 z 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℞X+X{Bse7fMPU@8pS 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

    @#Ew5y57R51s;2} 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�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�Sx^Q=1FvM@03H1>M$1>o#g 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%0DW6l~5z) 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 z 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%0Dx}-G3^ZFX?hhBHYGW0_#vl-*5V`jR$y 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%0Dwr9AS(m#kZ*8V;*dmI9Yh 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%0AR(Z(Cuaf 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

    _sD*Khyt!gnR9n#t&jl;XN>I)kE?oYAJ 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

Wf+#~6zHfMmk# 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 z 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%0A(Xc<+1fpGIz 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%0A4NLmTA2$ERnxAD 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%0D28g-; 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 z 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