google-protobuf 4.34.2-x86-linux-gnu → 4.35.0.rc.1-x86-linux-gnu
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/google/protobuf_c/message.c +1 -1
- data/ext/google/protobuf_c/message.h +1 -1
- data/ext/google/protobuf_c/ruby-upb.c +415 -262
- data/ext/google/protobuf_c/ruby-upb.h +152 -43
- data/ext/google/protobuf_c/third_party/utf8_range/utf8_range.c +1 -1
- data/ext/google/protobuf_c/third_party/utf8_range/utf8_range.h +2 -1
- data/lib/google/3.1/protobuf_c.so +0 -0
- data/lib/google/3.2/protobuf_c.so +0 -0
- data/lib/google/3.3/protobuf_c.so +0 -0
- data/lib/google/3.4/protobuf_c.so +0 -0
- data/lib/google/4.0/protobuf_c.so +0 -0
- data/lib/google/protobuf/descriptor_pb.rb +1 -1
- metadata +6 -3
|
@@ -557,15 +557,7 @@ Error, UINTPTR_MAX is undefined
|
|
|
557
557
|
// }
|
|
558
558
|
// }
|
|
559
559
|
|
|
560
|
-
#if defined(__GNUC__) && !defined(__clang__)
|
|
561
|
-
// GCC can't handle mismatched retain attributes in the same section:
|
|
562
|
-
// https://github.com/protocolbuffers/protobuf/issues/26385
|
|
563
|
-
// To work around this, we retain all linker array elements, even though this
|
|
564
|
-
// effectively disables tree-shaking of unused extensions when using GCC.
|
|
565
|
-
#define UPB_LINKARR_ATTR UPB_RETAIN
|
|
566
|
-
#else
|
|
567
560
|
#define UPB_LINKARR_ATTR
|
|
568
|
-
#endif
|
|
569
561
|
|
|
570
562
|
#define UPB_LINKARR_SENTINEL UPB_RETAIN __attribute__((weak, used))
|
|
571
563
|
|
|
@@ -1171,13 +1163,14 @@ UPB_INLINE void UPB_PRIVATE(upb_Xsan_AccessReadWrite)(upb_Xsan *xsan) {
|
|
|
1171
1163
|
// We need this because the decoder inlines a upb_Arena for performance but
|
|
1172
1164
|
// the full struct is not visible outside of arena.c. Yes, I know, it's awful.
|
|
1173
1165
|
#ifndef NDEBUG
|
|
1174
|
-
#define UPB_ARENA_BASE_SIZE_HACK 11
|
|
1175
|
-
#else
|
|
1176
1166
|
#define UPB_ARENA_BASE_SIZE_HACK 10
|
|
1167
|
+
#else
|
|
1168
|
+
#define UPB_ARENA_BASE_SIZE_HACK 9
|
|
1177
1169
|
#endif
|
|
1178
1170
|
|
|
1179
|
-
#define UPB_ARENA_SIZE_HACK
|
|
1180
|
-
(UPB_ARENA_BASE_SIZE_HACK + (UPB_XSAN_STRUCT_SIZE * 2))
|
|
1171
|
+
#define UPB_ARENA_SIZE_HACK \
|
|
1172
|
+
(sizeof(void*) * (UPB_ARENA_BASE_SIZE_HACK + (UPB_XSAN_STRUCT_SIZE * 2))) + \
|
|
1173
|
+
(sizeof(uint32_t) * 2)
|
|
1181
1174
|
|
|
1182
1175
|
// LINT.IfChange(upb_Arena)
|
|
1183
1176
|
|
|
@@ -1665,7 +1658,7 @@ UPB_INLINE struct upb_Array* UPB_PRIVATE(_upb_Array_NewMaybeAllowSlow)(
|
|
|
1665
1658
|
struct upb_Array* array = (struct upb_Array*)upb_Arena_Malloc(arena, bytes);
|
|
1666
1659
|
if (!array) return NULL;
|
|
1667
1660
|
UPB_PRIVATE(_upb_Array_SetTaggedPtr)
|
|
1668
|
-
(array, UPB_PTR_AT(array, array_size, void), elem_size_lg2);
|
|
1661
|
+
(array, UPB_PTR_AT(array, array_size, void), (size_t)elem_size_lg2);
|
|
1669
1662
|
array->UPB_ONLYBITS(size) = 0;
|
|
1670
1663
|
array->UPB_PRIVATE(capacity) = init_capacity;
|
|
1671
1664
|
return array;
|
|
@@ -1993,7 +1986,8 @@ UPB_INLINE int UPB_PRIVATE(_upb_CType_SizeLg2)(upb_CType c_type) {
|
|
|
1993
1986
|
}
|
|
1994
1987
|
|
|
1995
1988
|
// Return the log2 of the storage size in bytes for a upb_FieldType
|
|
1996
|
-
UPB_INLINE
|
|
1989
|
+
UPB_INLINE size_t
|
|
1990
|
+
UPB_PRIVATE(_upb_FieldType_SizeLg2)(upb_FieldType field_type) {
|
|
1997
1991
|
static const int8_t size[] = {
|
|
1998
1992
|
3, // kUpb_FieldType_Double
|
|
1999
1993
|
2, // kUpb_FieldType_Float
|
|
@@ -2151,14 +2145,14 @@ UPB_INLINE bool UPB_PRIVATE(_upb_MiniTableField_HasHasbit)(
|
|
|
2151
2145
|
UPB_INLINE char UPB_PRIVATE(_upb_MiniTableField_HasbitMask)(
|
|
2152
2146
|
const struct upb_MiniTableField* f) {
|
|
2153
2147
|
UPB_ASSERT(UPB_PRIVATE(_upb_MiniTableField_HasHasbit)(f));
|
|
2154
|
-
const uint16_t index = f->presence;
|
|
2148
|
+
const uint16_t index = (uint16_t)f->presence;
|
|
2155
2149
|
return (char)(1 << (index % 8));
|
|
2156
2150
|
}
|
|
2157
2151
|
|
|
2158
2152
|
UPB_INLINE uint16_t UPB_PRIVATE(_upb_MiniTableField_HasbitOffset)(
|
|
2159
2153
|
const struct upb_MiniTableField* f) {
|
|
2160
2154
|
UPB_ASSERT(UPB_PRIVATE(_upb_MiniTableField_HasHasbit)(f));
|
|
2161
|
-
const uint16_t index = f->presence;
|
|
2155
|
+
const uint16_t index = (uint16_t)f->presence;
|
|
2162
2156
|
return index / 8;
|
|
2163
2157
|
}
|
|
2164
2158
|
|
|
@@ -2200,7 +2194,7 @@ UPB_PRIVATE(_upb_MiniTableField_Offset)(const struct upb_MiniTableField* f) {
|
|
|
2200
2194
|
UPB_INLINE size_t UPB_PRIVATE(_upb_MiniTableField_OneofOffset)(
|
|
2201
2195
|
const struct upb_MiniTableField* f) {
|
|
2202
2196
|
UPB_ASSERT(upb_MiniTableField_IsInOneof(f));
|
|
2203
|
-
return ~(ptrdiff_t)f->presence;
|
|
2197
|
+
return (size_t)(~(ptrdiff_t)f->presence);
|
|
2204
2198
|
}
|
|
2205
2199
|
|
|
2206
2200
|
UPB_INLINE void UPB_PRIVATE(_upb_MiniTableField_CheckIsArray)(
|
|
@@ -2424,7 +2418,7 @@ UPB_API_INLINE bool upb_MiniTable_IsMessageSet(const struct upb_MiniTable* m) {
|
|
|
2424
2418
|
UPB_API_INLINE
|
|
2425
2419
|
const struct upb_MiniTableField* upb_MiniTable_FindFieldByNumber(
|
|
2426
2420
|
const struct upb_MiniTable* m, uint32_t number) {
|
|
2427
|
-
const
|
|
2421
|
+
const uint32_t i = number - 1; // 0 wraps to UINT32_MAX
|
|
2428
2422
|
|
|
2429
2423
|
// Ideal case: index into dense fields
|
|
2430
2424
|
if (i < m->UPB_PRIVATE(dense_below)) {
|
|
@@ -2442,7 +2436,7 @@ const struct upb_MiniTableField* upb_MiniTable_FindFieldByNumber(
|
|
|
2442
2436
|
uint32_t lo = m->UPB_PRIVATE(dense_below);
|
|
2443
2437
|
const struct upb_MiniTableField* base = m->UPB_ONLYBITS(fields);
|
|
2444
2438
|
while (hi >= (int32_t)lo) {
|
|
2445
|
-
uint32_t mid = (hi + lo) / 2;
|
|
2439
|
+
uint32_t mid = ((uint32_t)hi + lo) / 2;
|
|
2446
2440
|
uint32_t num = base[mid].UPB_ONLYBITS(number);
|
|
2447
2441
|
// These comparison operations allow, on ARM machines, to fuse all these
|
|
2448
2442
|
// branches into one comparison followed by two CSELs to set the lo/hi
|
|
@@ -2450,7 +2444,7 @@ const struct upb_MiniTableField* upb_MiniTable_FindFieldByNumber(
|
|
|
2450
2444
|
// search branches are generally unpredictable (50/50 in each direction),
|
|
2451
2445
|
// this is a good deal. We use signed for the high, as this decrement may
|
|
2452
2446
|
// underflow if mid is 0.
|
|
2453
|
-
int32_t hi_mid = mid - 1;
|
|
2447
|
+
int32_t hi_mid = (int32_t)mid - 1;
|
|
2454
2448
|
uint32_t lo_mid = mid + 1;
|
|
2455
2449
|
if (num == number) {
|
|
2456
2450
|
return &base[mid];
|
|
@@ -2692,6 +2686,16 @@ UPB_API void upb_Array_Set(upb_Array* arr, size_t i, upb_MessageValue val);
|
|
|
2692
2686
|
UPB_API bool upb_Array_Append(upb_Array* array, upb_MessageValue val,
|
|
2693
2687
|
upb_Arena* arena);
|
|
2694
2688
|
|
|
2689
|
+
// Copies elements from |src| to |dst|, resizing |dst| to match |src| size.
|
|
2690
|
+
// Returns false on allocation failure.
|
|
2691
|
+
UPB_API bool upb_Array_Copy(upb_Array* dst, const upb_Array* src,
|
|
2692
|
+
upb_Arena* arena);
|
|
2693
|
+
|
|
2694
|
+
// Appends all elements from |src| to the end of |dst|.
|
|
2695
|
+
// Returns false on allocation failure.
|
|
2696
|
+
UPB_API bool upb_Array_AppendAll(upb_Array* dst, const upb_Array* src,
|
|
2697
|
+
upb_Arena* arena);
|
|
2698
|
+
|
|
2695
2699
|
// Moves elements within the array using memmove().
|
|
2696
2700
|
// Like memmove(), the source and destination elements may be overlapping.
|
|
2697
2701
|
UPB_API void upb_Array_Move(upb_Array* array, size_t dst_idx, size_t src_idx,
|
|
@@ -2945,7 +2949,7 @@ UPB_INLINE upb_key upb_key_empty(void) {
|
|
|
2945
2949
|
|
|
2946
2950
|
UPB_INLINE bool upb_tabent_isempty(const upb_tabent* e) {
|
|
2947
2951
|
upb_key key = e->key;
|
|
2948
|
-
|
|
2952
|
+
UPB_STATIC_ASSERT(sizeof(key.num) == sizeof(key.str), "Sizes don't match");
|
|
2949
2953
|
uintptr_t val;
|
|
2950
2954
|
memcpy(&val, &key, sizeof(val));
|
|
2951
2955
|
// Note: for upb_inttables a tab_key is a true integer key value, but the
|
|
@@ -3391,7 +3395,7 @@ UPB_INLINE size_t _upb_Map_Size(const struct upb_Map* map) {
|
|
|
3391
3395
|
extern char _upb_Map_CTypeSizeTable[12];
|
|
3392
3396
|
|
|
3393
3397
|
UPB_INLINE size_t _upb_Map_CTypeSize(upb_CType ctype) {
|
|
3394
|
-
return _upb_Map_CTypeSizeTable[ctype];
|
|
3398
|
+
return (size_t)_upb_Map_CTypeSizeTable[ctype];
|
|
3395
3399
|
}
|
|
3396
3400
|
|
|
3397
3401
|
// Creates a new map on the given arena with this key/value type.
|
|
@@ -3465,7 +3469,9 @@ upb_MiniTableExtension_GetSubEnum(const struct upb_MiniTableExtension* e) {
|
|
|
3465
3469
|
UPB_API_INLINE bool upb_MiniTableExtension_SetSubMessage(
|
|
3466
3470
|
struct upb_MiniTableExtension* e, const struct upb_MiniTable* m) {
|
|
3467
3471
|
if (e->UPB_PRIVATE(field).UPB_PRIVATE(descriptortype) !=
|
|
3468
|
-
|
|
3472
|
+
kUpb_FieldType_Message &&
|
|
3473
|
+
e->UPB_PRIVATE(field).UPB_PRIVATE(descriptortype) !=
|
|
3474
|
+
kUpb_FieldType_Group) {
|
|
3469
3475
|
return false;
|
|
3470
3476
|
}
|
|
3471
3477
|
e->UPB_PRIVATE(sub).UPB_PRIVATE(submsg) = m;
|
|
@@ -5772,12 +5778,14 @@ extern "C" {
|
|
|
5772
5778
|
|
|
5773
5779
|
typedef struct upb_ExtensionRegistry upb_ExtensionRegistry;
|
|
5774
5780
|
|
|
5781
|
+
// LINT.IfChange
|
|
5775
5782
|
typedef enum {
|
|
5776
5783
|
kUpb_ExtensionRegistryStatus_Ok = 0,
|
|
5777
5784
|
kUpb_ExtensionRegistryStatus_DuplicateEntry = 1,
|
|
5778
5785
|
kUpb_ExtensionRegistryStatus_OutOfMemory = 2,
|
|
5779
5786
|
kUpb_ExtensionRegistryStatus_InvalidExtension = 3,
|
|
5780
5787
|
} upb_ExtensionRegistryStatus;
|
|
5788
|
+
// LINT.ThenChange(//depot/google3/third_party/upb/rust/sys/mini_table/extension_registry.rs)
|
|
5781
5789
|
|
|
5782
5790
|
// Creates a upb_ExtensionRegistry in the given arena.
|
|
5783
5791
|
// The arena must outlive any use of the extreg.
|
|
@@ -5798,9 +5806,6 @@ upb_ExtensionRegistryStatus upb_ExtensionRegistry_AddArray(
|
|
|
5798
5806
|
UPB_API const upb_MiniTableExtension* upb_ExtensionRegistry_Lookup(
|
|
5799
5807
|
const upb_ExtensionRegistry* r, const upb_MiniTable* t, uint32_t num);
|
|
5800
5808
|
|
|
5801
|
-
// Returns the number of extensions in the registry. For testing/debugging only.
|
|
5802
|
-
UPB_API size_t upb_ExtensionRegistry_Size(const upb_ExtensionRegistry* r);
|
|
5803
|
-
|
|
5804
5809
|
#ifdef __cplusplus
|
|
5805
5810
|
} /* extern "C" */
|
|
5806
5811
|
#endif
|
|
@@ -5911,8 +5916,8 @@ extern "C" {
|
|
|
5911
5916
|
#endif
|
|
5912
5917
|
|
|
5913
5918
|
typedef struct UPB_PRIVATE(upb_GeneratedExtensionListEntry) {
|
|
5914
|
-
const struct upb_MiniTableExtension
|
|
5915
|
-
const struct upb_MiniTableExtension
|
|
5919
|
+
const struct upb_MiniTableExtension* start;
|
|
5920
|
+
const struct upb_MiniTableExtension* stop;
|
|
5916
5921
|
const struct UPB_PRIVATE(upb_GeneratedExtensionListEntry) * next;
|
|
5917
5922
|
} UPB_PRIVATE(upb_GeneratedExtensionListEntry);
|
|
5918
5923
|
|
|
@@ -5983,7 +5988,7 @@ enum {
|
|
|
5983
5988
|
* If set, the fasttable decoder will not be used. */
|
|
5984
5989
|
kUpb_DecodeOption_DisableFastTable = 16,
|
|
5985
5990
|
};
|
|
5986
|
-
// LINT.ThenChange(//depot/google3/third_party/
|
|
5991
|
+
// LINT.ThenChange(//depot/google3/third_party/upb/rust/wire.rs:decode_status)
|
|
5987
5992
|
|
|
5988
5993
|
UPB_INLINE uint32_t upb_DecodeOptions_MaxDepth(uint16_t depth) {
|
|
5989
5994
|
return (uint32_t)depth << 16;
|
|
@@ -5995,7 +6000,8 @@ uint16_t upb_DecodeOptions_GetEffectiveMaxDepth(uint32_t options);
|
|
|
5995
6000
|
UPB_INLINE int upb_Decode_LimitDepth(uint32_t decode_options, uint32_t limit) {
|
|
5996
6001
|
uint32_t max_depth = upb_DecodeOptions_GetEffectiveMaxDepth(decode_options);
|
|
5997
6002
|
if (max_depth > limit) max_depth = limit;
|
|
5998
|
-
return upb_DecodeOptions_MaxDepth(max_depth) |
|
|
6003
|
+
return (int)(upb_DecodeOptions_MaxDepth(max_depth) |
|
|
6004
|
+
(decode_options & 0xffff));
|
|
5999
6005
|
}
|
|
6000
6006
|
|
|
6001
6007
|
// LINT.IfChange
|
|
@@ -6098,7 +6104,8 @@ uint16_t upb_EncodeOptions_GetEffectiveMaxDepth(uint32_t options);
|
|
|
6098
6104
|
UPB_INLINE int upb_Encode_LimitDepth(uint32_t encode_options, uint32_t limit) {
|
|
6099
6105
|
uint32_t max_depth = upb_EncodeOptions_GetEffectiveMaxDepth(encode_options);
|
|
6100
6106
|
if (max_depth > limit) max_depth = limit;
|
|
6101
|
-
return upb_EncodeOptions_MaxDepth(max_depth) |
|
|
6107
|
+
return (int)(upb_EncodeOptions_MaxDepth(max_depth) |
|
|
6108
|
+
(encode_options & 0xffff));
|
|
6102
6109
|
}
|
|
6103
6110
|
|
|
6104
6111
|
UPB_API upb_EncodeStatus upb_Encode(const upb_Message* msg,
|
|
@@ -6212,25 +6219,49 @@ extern const upb_MiniTableFile google_protobuf_descriptor_proto_upb_file_layout;
|
|
|
6212
6219
|
#ifndef UPB_BASE_INTERNAL_LOG2_H_
|
|
6213
6220
|
#define UPB_BASE_INTERNAL_LOG2_H_
|
|
6214
6221
|
|
|
6222
|
+
#include <limits.h>
|
|
6223
|
+
#include <stddef.h>
|
|
6224
|
+
#include <stdint.h>
|
|
6225
|
+
|
|
6215
6226
|
// Must be last.
|
|
6216
6227
|
|
|
6217
6228
|
#ifdef __cplusplus
|
|
6218
6229
|
extern "C" {
|
|
6219
6230
|
#endif
|
|
6220
6231
|
|
|
6221
|
-
UPB_INLINE int upb_Log2Ceiling(
|
|
6232
|
+
UPB_INLINE int upb_Log2Ceiling(size_t x) {
|
|
6222
6233
|
if (x <= 1) return 0;
|
|
6223
|
-
#
|
|
6224
|
-
return
|
|
6234
|
+
#if SIZE_MAX == ULLONG_MAX && UPB_HAS_BUILTIN(__builtin_clzll)
|
|
6235
|
+
return (sizeof(size_t) * CHAR_BIT) - __builtin_clzll(x - 1);
|
|
6236
|
+
#elif SIZE_MAX == ULONG_MAX && UPB_HAS_BUILTIN(__builtin_clzl)
|
|
6237
|
+
return (sizeof(size_t) * CHAR_BIT) - __builtin_clzl(x - 1);
|
|
6238
|
+
#elif SIZE_MAX == UINT_MAX && UPB_HAS_BUILTIN(__builtin_clz)
|
|
6239
|
+
return (sizeof(size_t) * CHAR_BIT) - __builtin_clz(x - 1);
|
|
6225
6240
|
#else
|
|
6241
|
+
if (x > SIZE_MAX / 2) return sizeof(size_t) * CHAR_BIT;
|
|
6226
6242
|
int lg2 = 0;
|
|
6227
6243
|
while ((1 << lg2) < x) lg2++;
|
|
6228
6244
|
return lg2;
|
|
6229
6245
|
#endif
|
|
6230
6246
|
}
|
|
6231
6247
|
|
|
6232
|
-
|
|
6233
|
-
|
|
6248
|
+
// Returns the smallest power of two that is greater than or equal to x. Returns
|
|
6249
|
+
// SIZE_MAX if the computation would overflow.
|
|
6250
|
+
UPB_INLINE size_t upb_RoundUpToPowerOfTwo(size_t x) {
|
|
6251
|
+
int lg2 = upb_Log2Ceiling(x);
|
|
6252
|
+
UPB_ASSERT(lg2 >= 0 && lg2 <= (int)sizeof(size_t) * CHAR_BIT);
|
|
6253
|
+
if (lg2 == sizeof(size_t) * CHAR_BIT) {
|
|
6254
|
+
return SIZE_MAX;
|
|
6255
|
+
}
|
|
6256
|
+
return ((size_t)1) << lg2;
|
|
6257
|
+
}
|
|
6258
|
+
|
|
6259
|
+
UPB_INLINE bool upb_ShlOverflow(size_t* a, unsigned int b) {
|
|
6260
|
+
if (*a > (SIZE_MAX >> b)) {
|
|
6261
|
+
return true;
|
|
6262
|
+
}
|
|
6263
|
+
*a <<= b;
|
|
6264
|
+
return false;
|
|
6234
6265
|
}
|
|
6235
6266
|
|
|
6236
6267
|
#ifdef __cplusplus
|
|
@@ -6240,6 +6271,59 @@ UPB_INLINE int upb_RoundUpToPowerOfTwo(int x) {
|
|
|
6240
6271
|
|
|
6241
6272
|
#endif /* UPB_BASE_INTERNAL_LOG2_H_ */
|
|
6242
6273
|
|
|
6274
|
+
#ifndef UPB_HASH_EXT_TABLE_H_
|
|
6275
|
+
#define UPB_HASH_EXT_TABLE_H_
|
|
6276
|
+
|
|
6277
|
+
#include <stddef.h>
|
|
6278
|
+
#include <stdint.h>
|
|
6279
|
+
|
|
6280
|
+
|
|
6281
|
+
// Must be last.
|
|
6282
|
+
|
|
6283
|
+
typedef struct {
|
|
6284
|
+
upb_table t;
|
|
6285
|
+
} upb_exttable;
|
|
6286
|
+
|
|
6287
|
+
#ifdef __cplusplus
|
|
6288
|
+
extern "C" {
|
|
6289
|
+
#endif
|
|
6290
|
+
|
|
6291
|
+
// Initialize a table. If memory allocation failed, false is returned and
|
|
6292
|
+
// the table is uninitialized.
|
|
6293
|
+
bool upb_exttable_init(upb_exttable* table, size_t expected_size, upb_Arena* a);
|
|
6294
|
+
|
|
6295
|
+
// Returns the number of values in the table.
|
|
6296
|
+
UPB_INLINE size_t upb_exttable_count(const upb_exttable* t) {
|
|
6297
|
+
return t->t.count;
|
|
6298
|
+
}
|
|
6299
|
+
|
|
6300
|
+
void upb_exttable_clear(upb_exttable* t);
|
|
6301
|
+
|
|
6302
|
+
// Inserts the given key and value into the hashtable.
|
|
6303
|
+
// The key must not already exist in the hash table, and must not be NULL.
|
|
6304
|
+
//
|
|
6305
|
+
// If a table resize was required but memory allocation failed, false is
|
|
6306
|
+
// returned and the table is unchanged.
|
|
6307
|
+
bool upb_exttable_insert(upb_exttable* t, const void* k, const uint32_t* v,
|
|
6308
|
+
upb_Arena* a);
|
|
6309
|
+
|
|
6310
|
+
// Looks up key and ext_number in this table, returning the value if the key was
|
|
6311
|
+
// found, or NULL otherwise.
|
|
6312
|
+
const uint32_t* upb_exttable_lookup(const upb_exttable* t, const void* k,
|
|
6313
|
+
uint32_t ext_number);
|
|
6314
|
+
|
|
6315
|
+
// Removes an item from the table. Returns the removed item if the remove was
|
|
6316
|
+
// successful, or NULL if the key was not found.
|
|
6317
|
+
const uint32_t* upb_exttable_remove(upb_exttable* t, const void* k,
|
|
6318
|
+
uint32_t ext_number);
|
|
6319
|
+
|
|
6320
|
+
#ifdef __cplusplus
|
|
6321
|
+
} /* extern "C" */
|
|
6322
|
+
#endif
|
|
6323
|
+
|
|
6324
|
+
|
|
6325
|
+
#endif /* UPB_HASH_EXT_TABLE_H_ */
|
|
6326
|
+
|
|
6243
6327
|
#ifndef UPB_JSON_DECODE_H_
|
|
6244
6328
|
#define UPB_JSON_DECODE_H_
|
|
6245
6329
|
|
|
@@ -6438,6 +6522,7 @@ typedef enum {
|
|
|
6438
6522
|
google_protobuf_EDITION_PROTO3 = 999,
|
|
6439
6523
|
google_protobuf_EDITION_2023 = 1000,
|
|
6440
6524
|
google_protobuf_EDITION_2024 = 1001,
|
|
6525
|
+
google_protobuf_EDITION_2026 = 1002,
|
|
6441
6526
|
google_protobuf_EDITION_UNSTABLE = 9999,
|
|
6442
6527
|
google_protobuf_EDITION_99997_TEST_ONLY = 99997,
|
|
6443
6528
|
google_protobuf_EDITION_99998_TEST_ONLY = 99998,
|
|
@@ -6453,7 +6538,8 @@ typedef enum {
|
|
|
6453
6538
|
typedef enum {
|
|
6454
6539
|
google_protobuf_FeatureSet_ENFORCE_NAMING_STYLE_UNKNOWN = 0,
|
|
6455
6540
|
google_protobuf_FeatureSet_STYLE2024 = 1,
|
|
6456
|
-
google_protobuf_FeatureSet_STYLE_LEGACY = 2
|
|
6541
|
+
google_protobuf_FeatureSet_STYLE_LEGACY = 2,
|
|
6542
|
+
google_protobuf_FeatureSet_STYLE2026 = 3
|
|
6457
6543
|
} google_protobuf_FeatureSet_EnforceNamingStyle;
|
|
6458
6544
|
|
|
6459
6545
|
typedef enum {
|
|
@@ -14134,6 +14220,9 @@ typedef enum {
|
|
|
14134
14220
|
// Only inside message table.
|
|
14135
14221
|
UPB_DEFTYPE_FIELD = 0,
|
|
14136
14222
|
UPB_DEFTYPE_ONEOF = 1,
|
|
14223
|
+
|
|
14224
|
+
// Only inside service table.
|
|
14225
|
+
UPB_DEFTYPE_METHOD = 0,
|
|
14137
14226
|
} upb_deftype_t;
|
|
14138
14227
|
|
|
14139
14228
|
#ifdef __cplusplus
|
|
@@ -14192,8 +14281,14 @@ const upb_MessageDef* upb_DefPool_FindMessageByNameWithSize(
|
|
|
14192
14281
|
UPB_API const upb_EnumDef* upb_DefPool_FindEnumByName(const upb_DefPool* s,
|
|
14193
14282
|
const char* sym);
|
|
14194
14283
|
|
|
14195
|
-
const
|
|
14196
|
-
|
|
14284
|
+
UPB_API const upb_EnumDef* upb_DefPool_FindEnumByNameWithSize(
|
|
14285
|
+
const upb_DefPool* s, const char* sym, size_t len);
|
|
14286
|
+
|
|
14287
|
+
UPB_API const upb_EnumValueDef* upb_DefPool_FindEnumValueByName(
|
|
14288
|
+
const upb_DefPool* s, const char* sym);
|
|
14289
|
+
|
|
14290
|
+
UPB_API const upb_EnumValueDef* upb_DefPool_FindEnumValueByNameWithSize(
|
|
14291
|
+
const upb_DefPool* s, const char* sym, size_t len);
|
|
14197
14292
|
|
|
14198
14293
|
UPB_API const upb_FileDef* upb_DefPool_FindFileByName(const upb_DefPool* s,
|
|
14199
14294
|
const char* name);
|
|
@@ -14249,6 +14344,16 @@ const upb_FieldDef** upb_DefPool_GetAllExtensions(const upb_DefPool* s,
|
|
|
14249
14344
|
UPB_API void upb_DefPool_DisableClosedEnumChecking(upb_DefPool* s);
|
|
14250
14345
|
bool upb_DefPool_ClosedEnumCheckingDisabled(const upb_DefPool* s);
|
|
14251
14346
|
|
|
14347
|
+
// If called, implicit field presence will be disabled.
|
|
14348
|
+
// This is non-standard behavior and will cause conformance tests to fail, but
|
|
14349
|
+
// it can be used in situations where where the non-conformance is acceptable.
|
|
14350
|
+
//
|
|
14351
|
+
// This function may only be called immediately after upb_DefPool_New().
|
|
14352
|
+
// It is an error to call it on an existing def pool or after defs have
|
|
14353
|
+
// already been added to the pool.
|
|
14354
|
+
UPB_API void upb_DefPool_DisableImplicitFieldPresence(upb_DefPool* s);
|
|
14355
|
+
bool upb_DefPool_ImplicitFieldPresenceDisabled(const upb_DefPool* s);
|
|
14356
|
+
|
|
14252
14357
|
#ifdef __cplusplus
|
|
14253
14358
|
} /* extern "C" */
|
|
14254
14359
|
#endif
|
|
@@ -14733,6 +14838,8 @@ extern "C" {
|
|
|
14733
14838
|
UPB_API const upb_FileDef* upb_ServiceDef_File(const upb_ServiceDef* s);
|
|
14734
14839
|
const upb_MethodDef* upb_ServiceDef_FindMethodByName(const upb_ServiceDef* s,
|
|
14735
14840
|
const char* name);
|
|
14841
|
+
const upb_MethodDef* upb_ServiceDef_FindMethodByNameWithSize(
|
|
14842
|
+
const upb_ServiceDef* s, const char* name, size_t len);
|
|
14736
14843
|
UPB_API const char* upb_ServiceDef_FullName(const upb_ServiceDef* s);
|
|
14737
14844
|
bool upb_ServiceDef_HasOptions(const upb_ServiceDef* s);
|
|
14738
14845
|
int upb_ServiceDef_Index(const upb_ServiceDef* s);
|
|
@@ -17095,6 +17202,7 @@ const upb_MiniTableExtension* _upb_FileDef_ExtensionMiniTable(
|
|
|
17095
17202
|
const int32_t* _upb_FileDef_PublicDependencyIndexes(const upb_FileDef* f);
|
|
17096
17203
|
const int32_t* _upb_FileDef_WeakDependencyIndexes(const upb_FileDef* f);
|
|
17097
17204
|
bool _upb_FileDef_ClosedEnumCheckingDisabled(const upb_FileDef* f);
|
|
17205
|
+
bool _upb_FileDef_ImplicitFieldPresenceDisabled(const upb_FileDef* f);
|
|
17098
17206
|
|
|
17099
17207
|
// upb_FileDef_Package() returns "" if f->package is NULL, this does not.
|
|
17100
17208
|
const char* _upb_FileDef_RawPackage(const upb_FileDef* f);
|
|
@@ -17154,7 +17262,7 @@ upb_MessageDef* _upb_MessageDefs_New(
|
|
|
17154
17262
|
// features. This is used for feature resolution under Editions.
|
|
17155
17263
|
// NOLINTBEGIN
|
|
17156
17264
|
// clang-format off
|
|
17157
|
-
#define UPB_INTERNAL_UPB_EDITION_DEFAULTS "\n\027\030\204\007\"\000*\020\010\001\020\002\030\002 \003(\0010\0028\002@\001\n\027\030\347\007\"\000*\020\010\002\020\001\030\001 \002(\0010\0018\002@\001\n\027\030\350\007\"\014\010\001\020\001\030\001 \002(\0010\001*\0048\002@\001\n\027\030\351\007\"\020\010\001\020\001\030\001 \002(\0010\0018\001@\002*\000 \346\007(\351\007"
|
|
17265
|
+
#define UPB_INTERNAL_UPB_EDITION_DEFAULTS "\n\027\030\204\007\"\000*\020\010\001\020\002\030\002 \003(\0010\0028\002@\001\n\027\030\347\007\"\000*\020\010\002\020\001\030\001 \002(\0010\0018\002@\001\n\027\030\350\007\"\014\010\001\020\001\030\001 \002(\0010\001*\0048\002@\001\n\027\030\351\007\"\020\010\001\020\001\030\001 \002(\0010\0018\001@\002*\000\n\027\030\217N\"\020\010\001\020\001\030\001 \002(\0010\0018\003@\002*\000 \346\007(\351\007"
|
|
17158
17266
|
// clang-format on
|
|
17159
17267
|
// NOLINTEND
|
|
17160
17268
|
|
|
@@ -17421,6 +17529,9 @@ upb_ServiceDef* _upb_ServiceDefs_New(
|
|
|
17421
17529
|
const google_protobuf_ServiceDescriptorProto* const* protos,
|
|
17422
17530
|
const google_protobuf_FeatureSet* parent_features);
|
|
17423
17531
|
|
|
17532
|
+
void _upb_ServiceDef_InsertMethod(upb_DefBuilder* ctx, upb_ServiceDef* s,
|
|
17533
|
+
const upb_MethodDef* m);
|
|
17534
|
+
|
|
17424
17535
|
#ifdef __cplusplus
|
|
17425
17536
|
} /* extern "C" */
|
|
17426
17537
|
#endif
|
|
@@ -17609,13 +17720,11 @@ typedef struct upb_Decoder {
|
|
|
17609
17720
|
bool message_is_done;
|
|
17610
17721
|
union {
|
|
17611
17722
|
upb_Arena arena;
|
|
17612
|
-
void* foo[UPB_ARENA_SIZE_HACK];
|
|
17723
|
+
void* foo[UPB_ARENA_SIZE_HACK / sizeof(void*)];
|
|
17613
17724
|
};
|
|
17614
17725
|
upb_ErrorHandler err;
|
|
17615
17726
|
|
|
17616
17727
|
#ifndef NDEBUG
|
|
17617
|
-
const char* debug_tagstart;
|
|
17618
|
-
const char* debug_valstart;
|
|
17619
17728
|
char* trace_buf;
|
|
17620
17729
|
char* trace_ptr;
|
|
17621
17730
|
char* trace_end;
|
|
@@ -198,7 +198,7 @@ static FORCE_INLINE_ATTR size_t utf8_range_Validate(
|
|
|
198
198
|
#endif
|
|
199
199
|
}
|
|
200
200
|
|
|
201
|
-
|
|
201
|
+
bool utf8_range_IsValid(const char* data, size_t len) {
|
|
202
202
|
return utf8_range_Validate(data, len, /*return_position=*/0) != 0;
|
|
203
203
|
}
|
|
204
204
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#ifndef THIRD_PARTY_UTF8_RANGE_UTF8_RANGE_H_
|
|
2
2
|
#define THIRD_PARTY_UTF8_RANGE_UTF8_RANGE_H_
|
|
3
3
|
|
|
4
|
+
#include <stdbool.h>
|
|
4
5
|
#include <stddef.h>
|
|
5
6
|
|
|
6
7
|
#ifdef __cplusplus
|
|
@@ -9,7 +10,7 @@ extern "C" {
|
|
|
9
10
|
|
|
10
11
|
// Returns 1 if the sequence of characters is a valid UTF-8 sequence, otherwise
|
|
11
12
|
// 0.
|
|
12
|
-
|
|
13
|
+
bool utf8_range_IsValid(const char* data, size_t len);
|
|
13
14
|
|
|
14
15
|
// Returns the length in bytes of the prefix of str that is all
|
|
15
16
|
// structurally valid UTF-8.
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
require 'google/protobuf'
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
descriptor_data = "\n google/protobuf/descriptor.proto\x12\x0fgoogle.protobuf\"U\n\x11\x46ileDescriptorSet\x12\x32\n\x04\x66ile\x18\x01 \x03(\x0b\x32$.google.protobuf.FileDescriptorProto*\x0c\x08\x80\xec\xca\xff\x01\x10\x81\xec\xca\xff\x01\"\xa1\x04\n\x13\x46ileDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07package\x18\x02 \x01(\t\x12\x12\n\ndependency\x18\x03 \x03(\t\x12\x19\n\x11public_dependency\x18\n \x03(\x05\x12\x17\n\x0fweak_dependency\x18\x0b \x03(\x05\x12\x19\n\x11option_dependency\x18\x0f \x03(\t\x12\x36\n\x0cmessage_type\x18\x04 \x03(\x0b\x32 .google.protobuf.DescriptorProto\x12\x37\n\tenum_type\x18\x05 \x03(\x0b\x32$.google.protobuf.EnumDescriptorProto\x12\x38\n\x07service\x18\x06 \x03(\x0b\x32\'.google.protobuf.ServiceDescriptorProto\x12\x38\n\textension\x18\x07 \x03(\x0b\x32%.google.protobuf.FieldDescriptorProto\x12-\n\x07options\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.FileOptions\x12\x39\n\x10source_code_info\x18\t \x01(\x0b\x32\x1f.google.protobuf.SourceCodeInfo\x12\x0e\n\x06syntax\x18\x0c \x01(\t\x12)\n\x07\x65\x64ition\x18\x0e \x01(\x0e\x32\x18.google.protobuf.Edition\"\xe0\x05\n\x0f\x44\x65scriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x34\n\x05\x66ield\x18\x02 \x03(\x0b\x32%.google.protobuf.FieldDescriptorProto\x12\x38\n\textension\x18\x06 \x03(\x0b\x32%.google.protobuf.FieldDescriptorProto\x12\x35\n\x0bnested_type\x18\x03 \x03(\x0b\x32 .google.protobuf.DescriptorProto\x12\x37\n\tenum_type\x18\x04 \x03(\x0b\x32$.google.protobuf.EnumDescriptorProto\x12H\n\x0f\x65xtension_range\x18\x05 \x03(\x0b\x32/.google.protobuf.DescriptorProto.ExtensionRange\x12\x39\n\noneof_decl\x18\x08 \x03(\x0b\x32%.google.protobuf.OneofDescriptorProto\x12\x30\n\x07options\x18\x07 \x01(\x0b\x32\x1f.google.protobuf.MessageOptions\x12\x46\n\x0ereserved_range\x18\t \x03(\x0b\x32..google.protobuf.DescriptorProto.ReservedRange\x12\x15\n\rreserved_name\x18\n \x03(\t\x12\x35\n\nvisibility\x18\x0b \x01(\x0e\x32!.google.protobuf.SymbolVisibility\x1a\x65\n\x0e\x45xtensionRange\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05\x12\x37\n\x07options\x18\x03 \x01(\x0b\x32&.google.protobuf.ExtensionRangeOptions\x1a+\n\rReservedRange\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05\"\xe5\x03\n\x15\x45xtensionRangeOptions\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\x12L\n\x0b\x64\x65\x63laration\x18\x02 \x03(\x0b\x32\x32.google.protobuf.ExtensionRangeOptions.DeclarationB\x03\x88\x01\x02\x12-\n\x08\x66\x65\x61tures\x18\x32 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12_\n\x0cverification\x18\x03 \x01(\x0e\x32\x38.google.protobuf.ExtensionRangeOptions.VerificationState:\nUNVERIFIEDB\x03\x88\x01\x02\x1ah\n\x0b\x44\x65\x63laration\x12\x0e\n\x06number\x18\x01 \x01(\x05\x12\x11\n\tfull_name\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\x10\n\x08reserved\x18\x05 \x01(\x08\x12\x10\n\x08repeated\x18\x06 \x01(\x08J\x04\x08\x04\x10\x05\"4\n\x11VerificationState\x12\x0f\n\x0b\x44\x45\x43LARATION\x10\x00\x12\x0e\n\nUNVERIFIED\x10\x01*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xd5\x05\n\x14\x46ieldDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06number\x18\x03 \x01(\x05\x12:\n\x05label\x18\x04 \x01(\x0e\x32+.google.protobuf.FieldDescriptorProto.Label\x12\x38\n\x04type\x18\x05 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.Type\x12\x11\n\ttype_name\x18\x06 \x01(\t\x12\x10\n\x08\x65xtendee\x18\x02 \x01(\t\x12\x15\n\rdefault_value\x18\x07 \x01(\t\x12\x13\n\x0boneof_index\x18\t \x01(\x05\x12\x11\n\tjson_name\x18\n \x01(\t\x12.\n\x07options\x18\x08 \x01(\x0b\x32\x1d.google.protobuf.FieldOptions\x12\x17\n\x0fproto3_optional\x18\x11 \x01(\x08\"\xb6\x02\n\x04Type\x12\x0f\n\x0bTYPE_DOUBLE\x10\x01\x12\x0e\n\nTYPE_FLOAT\x10\x02\x12\x0e\n\nTYPE_INT64\x10\x03\x12\x0f\n\x0bTYPE_UINT64\x10\x04\x12\x0e\n\nTYPE_INT32\x10\x05\x12\x10\n\x0cTYPE_FIXED64\x10\x06\x12\x10\n\x0cTYPE_FIXED32\x10\x07\x12\r\n\tTYPE_BOOL\x10\x08\x12\x0f\n\x0bTYPE_STRING\x10\t\x12\x0e\n\nTYPE_GROUP\x10\n\x12\x10\n\x0cTYPE_MESSAGE\x10\x0b\x12\x0e\n\nTYPE_BYTES\x10\x0c\x12\x0f\n\x0bTYPE_UINT32\x10\r\x12\r\n\tTYPE_ENUM\x10\x0e\x12\x11\n\rTYPE_SFIXED32\x10\x0f\x12\x11\n\rTYPE_SFIXED64\x10\x10\x12\x0f\n\x0bTYPE_SINT32\x10\x11\x12\x0f\n\x0bTYPE_SINT64\x10\x12\"C\n\x05Label\x12\x12\n\x0eLABEL_OPTIONAL\x10\x01\x12\x12\n\x0eLABEL_REPEATED\x10\x03\x12\x12\n\x0eLABEL_REQUIRED\x10\x02\"T\n\x14OneofDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12.\n\x07options\x18\x02 \x01(\x0b\x32\x1d.google.protobuf.OneofOptions\"\xdb\x02\n\x13\x45numDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x03(\x0b\x32).google.protobuf.EnumValueDescriptorProto\x12-\n\x07options\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.EnumOptions\x12N\n\x0ereserved_range\x18\x04 \x03(\x0b\x32\x36.google.protobuf.EnumDescriptorProto.EnumReservedRange\x12\x15\n\rreserved_name\x18\x05 \x03(\t\x12\x35\n\nvisibility\x18\x06 \x01(\x0e\x32!.google.protobuf.SymbolVisibility\x1a/\n\x11\x45numReservedRange\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05\"l\n\x18\x45numValueDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06number\x18\x02 \x01(\x05\x12\x32\n\x07options\x18\x03 \x01(\x0b\x32!.google.protobuf.EnumValueOptions\"\x9e\x01\n\x16ServiceDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x36\n\x06method\x18\x02 \x03(\x0b\x32&.google.protobuf.MethodDescriptorProto\x12\x30\n\x07options\x18\x03 \x01(\x0b\x32\x1f.google.protobuf.ServiceOptionsJ\x04\x08\x04\x10\x05R\x06stream\"\xc1\x01\n\x15MethodDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ninput_type\x18\x02 \x01(\t\x12\x13\n\x0boutput_type\x18\x03 \x01(\t\x12/\n\x07options\x18\x04 \x01(\x0b\x32\x1e.google.protobuf.MethodOptions\x12\x1f\n\x10\x63lient_streaming\x18\x05 \x01(\x08:\x05\x66\x61lse\x12\x1f\n\x10server_streaming\x18\x06 \x01(\x08:\x05\x66\x61lse\"\x90\x08\n\x0b\x46ileOptions\x12\x14\n\x0cjava_package\x18\x01 \x01(\t\x12\x1c\n\x14java_outer_classname\x18\x08 \x01(\t\x12\xe6\x01\n\x13java_multiple_files\x18\n \x01(\x08:\x05\x66\x61lseB\xc1\x01\xb2\x01\xbd\x01\x08\xe6\x07 \xe9\x07*\xb4\x01This behavior is enabled by default in editions 2024 and above. To disable it, you can set `features.(pb.java).nest_in_file_class = YES` on individual messages, enums, or services.\x12)\n\x1djava_generate_equals_and_hash\x18\x14 \x01(\x08\x42\x02\x18\x01\x12%\n\x16java_string_check_utf8\x18\x1b \x01(\x08:\x05\x66\x61lse\x12\x46\n\x0coptimize_for\x18\t \x01(\x0e\x32).google.protobuf.FileOptions.OptimizeMode:\x05SPEED\x12\x12\n\ngo_package\x18\x0b \x01(\t\x12\"\n\x13\x63\x63_generic_services\x18\x10 \x01(\x08:\x05\x66\x61lse\x12$\n\x15java_generic_services\x18\x11 \x01(\x08:\x05\x66\x61lse\x12\"\n\x13py_generic_services\x18\x12 \x01(\x08:\x05\x66\x61lse\x12\x19\n\ndeprecated\x18\x17 \x01(\x08:\x05\x66\x61lse\x12\x1e\n\x10\x63\x63_enable_arenas\x18\x1f \x01(\x08:\x04true\x12\x19\n\x11objc_class_prefix\x18$ \x01(\t\x12\x18\n\x10\x63sharp_namespace\x18% \x01(\t\x12\x14\n\x0cswift_prefix\x18\' \x01(\t\x12\x18\n\x10php_class_prefix\x18( \x01(\t\x12\x15\n\rphp_namespace\x18) \x01(\t\x12\x1e\n\x16php_metadata_namespace\x18, \x01(\t\x12\x14\n\x0cruby_package\x18- \x01(\t\x12-\n\x08\x66\x65\x61tures\x18\x32 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\":\n\x0cOptimizeMode\x12\t\n\x05SPEED\x10\x01\x12\r\n\tCODE_SIZE\x10\x02\x12\x10\n\x0cLITE_RUNTIME\x10\x03*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08*\x10+J\x04\x08&\x10\'R\x14php_generic_services\"\xe7\x02\n\x0eMessageOptions\x12&\n\x17message_set_wire_format\x18\x01 \x01(\x08:\x05\x66\x61lse\x12.\n\x1fno_standard_descriptor_accessor\x18\x02 \x01(\x08:\x05\x66\x61lse\x12\x19\n\ndeprecated\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x11\n\tmap_entry\x18\x07 \x01(\x08\x12\x32\n&deprecated_legacy_json_field_conflicts\x18\x0b \x01(\x08\x42\x02\x18\x01\x12-\n\x08\x66\x65\x61tures\x18\x0c \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08\x04\x10\x05J\x04\x08\x05\x10\x06J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\tJ\x04\x08\t\x10\n\"\xbe\x0b\n\x0c\x46ieldOptions\x12:\n\x05\x63type\x18\x01 \x01(\x0e\x32#.google.protobuf.FieldOptions.CType:\x06STRING\x12\x0e\n\x06packed\x18\x02 \x01(\x08\x12?\n\x06jstype\x18\x06 \x01(\x0e\x32$.google.protobuf.FieldOptions.JSType:\tJS_NORMAL\x12\x13\n\x04lazy\x18\x05 \x01(\x08:\x05\x66\x61lse\x12\x1e\n\x0funverified_lazy\x18\x0f \x01(\x08:\x05\x66\x61lse\x12\x19\n\ndeprecated\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x17\n\x04weak\x18\n \x01(\x08:\x05\x66\x61lseB\x02\x18\x01\x12\x1b\n\x0c\x64\x65\x62ug_redact\x18\x10 \x01(\x08:\x05\x66\x61lse\x12@\n\tretention\x18\x11 \x01(\x0e\x32-.google.protobuf.FieldOptions.OptionRetention\x12?\n\x07targets\x18\x13 \x03(\x0e\x32..google.protobuf.FieldOptions.OptionTargetType\x12\x46\n\x10\x65\x64ition_defaults\x18\x14 \x03(\x0b\x32,.google.protobuf.FieldOptions.EditionDefault\x12-\n\x08\x66\x65\x61tures\x18\x15 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x45\n\x0f\x66\x65\x61ture_support\x18\x16 \x01(\x0b\x32,.google.protobuf.FieldOptions.FeatureSupport\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\x1aJ\n\x0e\x45\x64itionDefault\x12)\n\x07\x65\x64ition\x18\x03 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\r\n\x05value\x18\x02 \x01(\t\x1a\xe3\x01\n\x0e\x46\x65\x61tureSupport\x12\x34\n\x12\x65\x64ition_introduced\x18\x01 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x34\n\x12\x65\x64ition_deprecated\x18\x02 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x1b\n\x13\x64\x65precation_warning\x18\x03 \x01(\t\x12\x31\n\x0f\x65\x64ition_removed\x18\x04 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x15\n\rremoval_error\x18\x05 \x01(\t\"/\n\x05\x43Type\x12\n\n\x06STRING\x10\x00\x12\x08\n\x04\x43ORD\x10\x01\x12\x10\n\x0cSTRING_PIECE\x10\x02\"5\n\x06JSType\x12\r\n\tJS_NORMAL\x10\x00\x12\r\n\tJS_STRING\x10\x01\x12\r\n\tJS_NUMBER\x10\x02\"U\n\x0fOptionRetention\x12\x15\n\x11RETENTION_UNKNOWN\x10\x00\x12\x15\n\x11RETENTION_RUNTIME\x10\x01\x12\x14\n\x10RETENTION_SOURCE\x10\x02\"\x8c\x02\n\x10OptionTargetType\x12\x17\n\x13TARGET_TYPE_UNKNOWN\x10\x00\x12\x14\n\x10TARGET_TYPE_FILE\x10\x01\x12\x1f\n\x1bTARGET_TYPE_EXTENSION_RANGE\x10\x02\x12\x17\n\x13TARGET_TYPE_MESSAGE\x10\x03\x12\x15\n\x11TARGET_TYPE_FIELD\x10\x04\x12\x15\n\x11TARGET_TYPE_ONEOF\x10\x05\x12\x14\n\x10TARGET_TYPE_ENUM\x10\x06\x12\x1a\n\x16TARGET_TYPE_ENUM_ENTRY\x10\x07\x12\x17\n\x13TARGET_TYPE_SERVICE\x10\x08\x12\x16\n\x12TARGET_TYPE_METHOD\x10\t*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08\x04\x10\x05J\x04\x08\x12\x10\x13\"\x8d\x01\n\x0cOneofOptions\x12-\n\x08\x66\x65\x61tures\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xf6\x01\n\x0b\x45numOptions\x12\x13\n\x0b\x61llow_alias\x18\x02 \x01(\x08\x12\x19\n\ndeprecated\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x32\n&deprecated_legacy_json_field_conflicts\x18\x06 \x01(\x08\x42\x02\x18\x01\x12-\n\x08\x66\x65\x61tures\x18\x07 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08\x05\x10\x06\"\x90\x02\n\x10\x45numValueOptions\x12\x19\n\ndeprecated\x18\x01 \x01(\x08:\x05\x66\x61lse\x12-\n\x08\x66\x65\x61tures\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x1b\n\x0c\x64\x65\x62ug_redact\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x45\n\x0f\x66\x65\x61ture_support\x18\x04 \x01(\x0b\x32,.google.protobuf.FieldOptions.FeatureSupport\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xaa\x01\n\x0eServiceOptions\x12-\n\x08\x66\x65\x61tures\x18\" \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x19\n\ndeprecated\x18! \x01(\x08:\x05\x66\x61lse\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xdc\x02\n\rMethodOptions\x12\x19\n\ndeprecated\x18! \x01(\x08:\x05\x66\x61lse\x12_\n\x11idempotency_level\x18\" \x01(\x0e\x32/.google.protobuf.MethodOptions.IdempotencyLevel:\x13IDEMPOTENCY_UNKNOWN\x12-\n\x08\x66\x65\x61tures\x18# \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\"P\n\x10IdempotencyLevel\x12\x17\n\x13IDEMPOTENCY_UNKNOWN\x10\x00\x12\x13\n\x0fNO_SIDE_EFFECTS\x10\x01\x12\x0e\n\nIDEMPOTENT\x10\x02*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\x9e\x02\n\x13UninterpretedOption\x12;\n\x04name\x18\x02 \x03(\x0b\x32-.google.protobuf.UninterpretedOption.NamePart\x12\x18\n\x10identifier_value\x18\x03 \x01(\t\x12\x1a\n\x12positive_int_value\x18\x04 \x01(\x04\x12\x1a\n\x12negative_int_value\x18\x05 \x01(\x03\x12\x14\n\x0c\x64ouble_value\x18\x06 \x01(\x01\x12\x14\n\x0cstring_value\x18\x07 \x01(\x0c\x12\x17\n\x0f\x61ggregate_value\x18\x08 \x01(\t\x1a\x33\n\x08NamePart\x12\x11\n\tname_part\x18\x01 \x02(\t\x12\x14\n\x0cis_extension\x18\x02 \x02(\x08\"\x83\x0e\n\nFeatureSet\x12\x82\x01\n\x0e\x66ield_presence\x18\x01 \x01(\x0e\x32).google.protobuf.FeatureSet.FieldPresenceB?\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\r\x12\x08\x45XPLICIT\x18\x84\x07\xa2\x01\r\x12\x08IMPLICIT\x18\xe7\x07\xa2\x01\r\x12\x08\x45XPLICIT\x18\xe8\x07\xb2\x01\x03\x08\xe8\x07\x12\x62\n\tenum_type\x18\x02 \x01(\x0e\x32$.google.protobuf.FeatureSet.EnumTypeB)\x88\x01\x01\x98\x01\x06\x98\x01\x01\xa2\x01\x0b\x12\x06\x43LOSED\x18\x84\x07\xa2\x01\t\x12\x04OPEN\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12\x81\x01\n\x17repeated_field_encoding\x18\x03 \x01(\x0e\x32\x31.google.protobuf.FeatureSet.RepeatedFieldEncodingB-\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\r\x12\x08\x45XPANDED\x18\x84\x07\xa2\x01\x0b\x12\x06PACKED\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12n\n\x0futf8_validation\x18\x04 \x01(\x0e\x32*.google.protobuf.FeatureSet.Utf8ValidationB)\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\t\x12\x04NONE\x18\x84\x07\xa2\x01\x0b\x12\x06VERIFY\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12m\n\x10message_encoding\x18\x05 \x01(\x0e\x32+.google.protobuf.FeatureSet.MessageEncodingB&\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\x14\x12\x0fLENGTH_PREFIXED\x18\x84\x07\xb2\x01\x03\x08\xe8\x07\x12v\n\x0bjson_format\x18\x06 \x01(\x0e\x32&.google.protobuf.FeatureSet.JsonFormatB9\x88\x01\x01\x98\x01\x03\x98\x01\x06\x98\x01\x01\xa2\x01\x17\x12\x12LEGACY_BEST_EFFORT\x18\x84\x07\xa2\x01\n\x12\x05\x41LLOW\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12\x97\x01\n\x14\x65nforce_naming_style\x18\x07 \x01(\x0e\x32..google.protobuf.FeatureSet.EnforceNamingStyleBI\x88\x01\x02\x98\x01\x01\x98\x01\x02\x98\x01\x03\x98\x01\x04\x98\x01\x05\x98\x01\x06\x98\x01\x07\x98\x01\x08\x98\x01\t\xa2\x01\x11\x12\x0cSTYLE_LEGACY\x18\x84\x07\xa2\x01\x0e\x12\tSTYLE2024\x18\xe9\x07\xb2\x01\x03\x08\xe9\x07\x12\xa0\x01\n\x19\x64\x65\x66\x61ult_symbol_visibility\x18\x08 \x01(\x0e\x32\x45.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibilityB6\x88\x01\x02\x98\x01\x01\xa2\x01\x0f\x12\nEXPORT_ALL\x18\x84\x07\xa2\x01\x15\x12\x10\x45XPORT_TOP_LEVEL\x18\xe9\x07\xb2\x01\x03\x08\xe9\x07\x1a\xa1\x01\n\x11VisibilityFeature\"\x81\x01\n\x17\x44\x65\x66\x61ultSymbolVisibility\x12%\n!DEFAULT_SYMBOL_VISIBILITY_UNKNOWN\x10\x00\x12\x0e\n\nEXPORT_ALL\x10\x01\x12\x14\n\x10\x45XPORT_TOP_LEVEL\x10\x02\x12\r\n\tLOCAL_ALL\x10\x03\x12\n\n\x06STRICT\x10\x04J\x08\x08\x01\x10\x80\x80\x80\x80\x02\"\\\n\rFieldPresence\x12\x1a\n\x16\x46IELD_PRESENCE_UNKNOWN\x10\x00\x12\x0c\n\x08\x45XPLICIT\x10\x01\x12\x0c\n\x08IMPLICIT\x10\x02\x12\x13\n\x0fLEGACY_REQUIRED\x10\x03\"7\n\x08\x45numType\x12\x15\n\x11\x45NUM_TYPE_UNKNOWN\x10\x00\x12\x08\n\x04OPEN\x10\x01\x12\n\n\x06\x43LOSED\x10\x02\"V\n\x15RepeatedFieldEncoding\x12#\n\x1fREPEATED_FIELD_ENCODING_UNKNOWN\x10\x00\x12\n\n\x06PACKED\x10\x01\x12\x0c\n\x08\x45XPANDED\x10\x02\"I\n\x0eUtf8Validation\x12\x1b\n\x17UTF8_VALIDATION_UNKNOWN\x10\x00\x12\n\n\x06VERIFY\x10\x02\x12\x08\n\x04NONE\x10\x03\"\x04\x08\x01\x10\x01\"S\n\x0fMessageEncoding\x12\x1c\n\x18MESSAGE_ENCODING_UNKNOWN\x10\x00\x12\x13\n\x0fLENGTH_PREFIXED\x10\x01\x12\r\n\tDELIMITED\x10\x02\"H\n\nJsonFormat\x12\x17\n\x13JSON_FORMAT_UNKNOWN\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x12\x16\n\x12LEGACY_BEST_EFFORT\x10\x02\"W\n\x12\x45nforceNamingStyle\x12 \n\x1c\x45NFORCE_NAMING_STYLE_UNKNOWN\x10\x00\x12\r\n\tSTYLE2024\x10\x01\x12\x10\n\x0cSTYLE_LEGACY\x10\x02*\x06\x08\xe8\x07\x10\x8bN*\x06\x08\x8bN\x10\x90N*\x06\x08\x90N\x10\x91NJ\x06\x08\xe7\x07\x10\xe8\x07\"\x98\x03\n\x12\x46\x65\x61tureSetDefaults\x12N\n\x08\x64\x65\x66\x61ults\x18\x01 \x03(\x0b\x32<.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault\x12\x31\n\x0fminimum_edition\x18\x04 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x31\n\x0fmaximum_edition\x18\x05 \x01(\x0e\x32\x18.google.protobuf.Edition\x1a\xcb\x01\n\x18\x46\x65\x61tureSetEditionDefault\x12)\n\x07\x65\x64ition\x18\x03 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x39\n\x14overridable_features\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x33\n\x0e\x66ixed_features\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.FeatureSetJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x08\x66\x65\x61tures\"\xe3\x01\n\x0eSourceCodeInfo\x12:\n\x08location\x18\x01 \x03(\x0b\x32(.google.protobuf.SourceCodeInfo.Location\x1a\x86\x01\n\x08Location\x12\x10\n\x04path\x18\x01 \x03(\x05\x42\x02\x10\x01\x12\x10\n\x04span\x18\x02 \x03(\x05\x42\x02\x10\x01\x12\x18\n\x10leading_comments\x18\x03 \x01(\t\x12\x19\n\x11trailing_comments\x18\x04 \x01(\t\x12!\n\x19leading_detached_comments\x18\x06 \x03(\t*\x0c\x08\x80\xec\xca\xff\x01\x10\x81\xec\xca\xff\x01\"\x9c\x02\n\x11GeneratedCodeInfo\x12\x41\n\nannotation\x18\x01 \x03(\x0b\x32-.google.protobuf.GeneratedCodeInfo.Annotation\x1a\xc3\x01\n\nAnnotation\x12\x10\n\x04path\x18\x01 \x03(\x05\x42\x02\x10\x01\x12\x13\n\x0bsource_file\x18\x02 \x01(\t\x12\r\n\x05\x62\x65gin\x18\x03 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x04 \x01(\x05\x12H\n\x08semantic\x18\x05 \x01(\x0e\x32\x36.google.protobuf.GeneratedCodeInfo.Annotation.Semantic\"(\n\x08Semantic\x12\x08\n\x04NONE\x10\x00\x12\x07\n\x03SET\x10\x01\x12\t\n\x05\x41LIAS\x10\x02*\xbe\x02\n\x07\x45\x64ition\x12\x13\n\x0f\x45\x44ITION_UNKNOWN\x10\x00\x12\x13\n\x0e\x45\x44ITION_LEGACY\x10\x84\x07\x12\x13\n\x0e\x45\x44ITION_PROTO2\x10\xe6\x07\x12\x13\n\x0e\x45\x44ITION_PROTO3\x10\xe7\x07\x12\x11\n\x0c\x45\x44ITION_2023\x10\xe8\x07\x12\x11\n\x0c\x45\x44ITION_2024\x10\xe9\x07\x12\x15\n\x10\x45\x44ITION_UNSTABLE\x10\x8fN\x12\x17\n\x13\x45\x44ITION_1_TEST_ONLY\x10\x01\x12\x17\n\x13\x45\x44ITION_2_TEST_ONLY\x10\x02\x12\x1d\n\x17\x45\x44ITION_99997_TEST_ONLY\x10\x9d\x8d\x06\x12\x1d\n\x17\x45\x44ITION_99998_TEST_ONLY\x10\x9e\x8d\x06\x12\x1d\n\x17\x45\x44ITION_99999_TEST_ONLY\x10\x9f\x8d\x06\x12\x13\n\x0b\x45\x44ITION_MAX\x10\xff\xff\xff\xff\x07*U\n\x10SymbolVisibility\x12\x14\n\x10VISIBILITY_UNSET\x10\x00\x12\x14\n\x10VISIBILITY_LOCAL\x10\x01\x12\x15\n\x11VISIBILITY_EXPORT\x10\x02\x42~\n\x13\x63om.google.protobufB\x10\x44\x65scriptorProtosH\x01Z-google.golang.org/protobuf/types/descriptorpb\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1aGoogle.Protobuf.Reflection"
|
|
8
|
+
descriptor_data = "\n google/protobuf/descriptor.proto\x12\x0fgoogle.protobuf\"U\n\x11\x46ileDescriptorSet\x12\x32\n\x04\x66ile\x18\x01 \x03(\x0b\x32$.google.protobuf.FileDescriptorProto*\x0c\x08\x80\xec\xca\xff\x01\x10\x81\xec\xca\xff\x01\"\xa1\x04\n\x13\x46ileDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07package\x18\x02 \x01(\t\x12\x12\n\ndependency\x18\x03 \x03(\t\x12\x19\n\x11public_dependency\x18\n \x03(\x05\x12\x17\n\x0fweak_dependency\x18\x0b \x03(\x05\x12\x19\n\x11option_dependency\x18\x0f \x03(\t\x12\x36\n\x0cmessage_type\x18\x04 \x03(\x0b\x32 .google.protobuf.DescriptorProto\x12\x37\n\tenum_type\x18\x05 \x03(\x0b\x32$.google.protobuf.EnumDescriptorProto\x12\x38\n\x07service\x18\x06 \x03(\x0b\x32\'.google.protobuf.ServiceDescriptorProto\x12\x38\n\textension\x18\x07 \x03(\x0b\x32%.google.protobuf.FieldDescriptorProto\x12-\n\x07options\x18\x08 \x01(\x0b\x32\x1c.google.protobuf.FileOptions\x12\x39\n\x10source_code_info\x18\t \x01(\x0b\x32\x1f.google.protobuf.SourceCodeInfo\x12\x0e\n\x06syntax\x18\x0c \x01(\t\x12)\n\x07\x65\x64ition\x18\x0e \x01(\x0e\x32\x18.google.protobuf.Edition\"\xe0\x05\n\x0f\x44\x65scriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x34\n\x05\x66ield\x18\x02 \x03(\x0b\x32%.google.protobuf.FieldDescriptorProto\x12\x38\n\textension\x18\x06 \x03(\x0b\x32%.google.protobuf.FieldDescriptorProto\x12\x35\n\x0bnested_type\x18\x03 \x03(\x0b\x32 .google.protobuf.DescriptorProto\x12\x37\n\tenum_type\x18\x04 \x03(\x0b\x32$.google.protobuf.EnumDescriptorProto\x12H\n\x0f\x65xtension_range\x18\x05 \x03(\x0b\x32/.google.protobuf.DescriptorProto.ExtensionRange\x12\x39\n\noneof_decl\x18\x08 \x03(\x0b\x32%.google.protobuf.OneofDescriptorProto\x12\x30\n\x07options\x18\x07 \x01(\x0b\x32\x1f.google.protobuf.MessageOptions\x12\x46\n\x0ereserved_range\x18\t \x03(\x0b\x32..google.protobuf.DescriptorProto.ReservedRange\x12\x15\n\rreserved_name\x18\n \x03(\t\x12\x35\n\nvisibility\x18\x0b \x01(\x0e\x32!.google.protobuf.SymbolVisibility\x1a\x65\n\x0e\x45xtensionRange\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05\x12\x37\n\x07options\x18\x03 \x01(\x0b\x32&.google.protobuf.ExtensionRangeOptions\x1a+\n\rReservedRange\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05\"\xed\x03\n\x15\x45xtensionRangeOptions\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\x12L\n\x0b\x64\x65\x63laration\x18\x02 \x03(\x0b\x32\x32.google.protobuf.ExtensionRangeOptions.DeclarationB\x03\x88\x01\x02\x12-\n\x08\x66\x65\x61tures\x18\x32 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12_\n\x0cverification\x18\x03 \x01(\x0e\x32\x38.google.protobuf.ExtensionRangeOptions.VerificationState:\nUNVERIFIEDB\x03\x88\x01\x02\x1ah\n\x0b\x44\x65\x63laration\x12\x0e\n\x06number\x18\x01 \x01(\x05\x12\x11\n\tfull_name\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\x10\n\x08reserved\x18\x05 \x01(\x08\x12\x10\n\x08repeated\x18\x06 \x01(\x08J\x04\x08\x04\x10\x05\"4\n\x11VerificationState\x12\x0f\n\x0b\x44\x45\x43LARATION\x10\x00\x12\x0e\n\nUNVERIFIED\x10\x01*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xd5\x05\n\x14\x46ieldDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06number\x18\x03 \x01(\x05\x12:\n\x05label\x18\x04 \x01(\x0e\x32+.google.protobuf.FieldDescriptorProto.Label\x12\x38\n\x04type\x18\x05 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.Type\x12\x11\n\ttype_name\x18\x06 \x01(\t\x12\x10\n\x08\x65xtendee\x18\x02 \x01(\t\x12\x15\n\rdefault_value\x18\x07 \x01(\t\x12\x13\n\x0boneof_index\x18\t \x01(\x05\x12\x11\n\tjson_name\x18\n \x01(\t\x12.\n\x07options\x18\x08 \x01(\x0b\x32\x1d.google.protobuf.FieldOptions\x12\x17\n\x0fproto3_optional\x18\x11 \x01(\x08\"\xb6\x02\n\x04Type\x12\x0f\n\x0bTYPE_DOUBLE\x10\x01\x12\x0e\n\nTYPE_FLOAT\x10\x02\x12\x0e\n\nTYPE_INT64\x10\x03\x12\x0f\n\x0bTYPE_UINT64\x10\x04\x12\x0e\n\nTYPE_INT32\x10\x05\x12\x10\n\x0cTYPE_FIXED64\x10\x06\x12\x10\n\x0cTYPE_FIXED32\x10\x07\x12\r\n\tTYPE_BOOL\x10\x08\x12\x0f\n\x0bTYPE_STRING\x10\t\x12\x0e\n\nTYPE_GROUP\x10\n\x12\x10\n\x0cTYPE_MESSAGE\x10\x0b\x12\x0e\n\nTYPE_BYTES\x10\x0c\x12\x0f\n\x0bTYPE_UINT32\x10\r\x12\r\n\tTYPE_ENUM\x10\x0e\x12\x11\n\rTYPE_SFIXED32\x10\x0f\x12\x11\n\rTYPE_SFIXED64\x10\x10\x12\x0f\n\x0bTYPE_SINT32\x10\x11\x12\x0f\n\x0bTYPE_SINT64\x10\x12\"C\n\x05Label\x12\x12\n\x0eLABEL_OPTIONAL\x10\x01\x12\x12\n\x0eLABEL_REPEATED\x10\x03\x12\x12\n\x0eLABEL_REQUIRED\x10\x02\"T\n\x14OneofDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12.\n\x07options\x18\x02 \x01(\x0b\x32\x1d.google.protobuf.OneofOptions\"\xdb\x02\n\x13\x45numDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x03(\x0b\x32).google.protobuf.EnumValueDescriptorProto\x12-\n\x07options\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.EnumOptions\x12N\n\x0ereserved_range\x18\x04 \x03(\x0b\x32\x36.google.protobuf.EnumDescriptorProto.EnumReservedRange\x12\x15\n\rreserved_name\x18\x05 \x03(\t\x12\x35\n\nvisibility\x18\x06 \x01(\x0e\x32!.google.protobuf.SymbolVisibility\x1a/\n\x11\x45numReservedRange\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05\"l\n\x18\x45numValueDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06number\x18\x02 \x01(\x05\x12\x32\n\x07options\x18\x03 \x01(\x0b\x32!.google.protobuf.EnumValueOptions\"\x9e\x01\n\x16ServiceDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x36\n\x06method\x18\x02 \x03(\x0b\x32&.google.protobuf.MethodDescriptorProto\x12\x30\n\x07options\x18\x03 \x01(\x0b\x32\x1f.google.protobuf.ServiceOptionsJ\x04\x08\x04\x10\x05R\x06stream\"\xc1\x01\n\x15MethodDescriptorProto\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ninput_type\x18\x02 \x01(\t\x12\x13\n\x0boutput_type\x18\x03 \x01(\t\x12/\n\x07options\x18\x04 \x01(\x0b\x32\x1e.google.protobuf.MethodOptions\x12\x1f\n\x10\x63lient_streaming\x18\x05 \x01(\x08:\x05\x66\x61lse\x12\x1f\n\x10server_streaming\x18\x06 \x01(\x08:\x05\x66\x61lse\"\x98\x08\n\x0b\x46ileOptions\x12\x14\n\x0cjava_package\x18\x01 \x01(\t\x12\x1c\n\x14java_outer_classname\x18\x08 \x01(\t\x12\xe6\x01\n\x13java_multiple_files\x18\n \x01(\x08:\x05\x66\x61lseB\xc1\x01\xb2\x01\xbd\x01\x08\xe6\x07 \xe9\x07*\xb4\x01This behavior is enabled by default in editions 2024 and above. To disable it, you can set `features.(pb.java).nest_in_file_class = YES` on individual messages, enums, or services.\x12)\n\x1djava_generate_equals_and_hash\x18\x14 \x01(\x08\x42\x02\x18\x01\x12%\n\x16java_string_check_utf8\x18\x1b \x01(\x08:\x05\x66\x61lse\x12\x46\n\x0coptimize_for\x18\t \x01(\x0e\x32).google.protobuf.FileOptions.OptimizeMode:\x05SPEED\x12\x12\n\ngo_package\x18\x0b \x01(\t\x12\"\n\x13\x63\x63_generic_services\x18\x10 \x01(\x08:\x05\x66\x61lse\x12$\n\x15java_generic_services\x18\x11 \x01(\x08:\x05\x66\x61lse\x12\"\n\x13py_generic_services\x18\x12 \x01(\x08:\x05\x66\x61lse\x12\x19\n\ndeprecated\x18\x17 \x01(\x08:\x05\x66\x61lse\x12\x1e\n\x10\x63\x63_enable_arenas\x18\x1f \x01(\x08:\x04true\x12\x19\n\x11objc_class_prefix\x18$ \x01(\t\x12\x18\n\x10\x63sharp_namespace\x18% \x01(\t\x12\x14\n\x0cswift_prefix\x18\' \x01(\t\x12\x18\n\x10php_class_prefix\x18( \x01(\t\x12\x15\n\rphp_namespace\x18) \x01(\t\x12\x1e\n\x16php_metadata_namespace\x18, \x01(\t\x12\x14\n\x0cruby_package\x18- \x01(\t\x12-\n\x08\x66\x65\x61tures\x18\x32 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\":\n\x0cOptimizeMode\x12\t\n\x05SPEED\x10\x01\x12\r\n\tCODE_SIZE\x10\x02\x12\x10\n\x0cLITE_RUNTIME\x10\x03*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08*\x10+J\x04\x08&\x10\'R\x14php_generic_services\"\xef\x02\n\x0eMessageOptions\x12&\n\x17message_set_wire_format\x18\x01 \x01(\x08:\x05\x66\x61lse\x12.\n\x1fno_standard_descriptor_accessor\x18\x02 \x01(\x08:\x05\x66\x61lse\x12\x19\n\ndeprecated\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x11\n\tmap_entry\x18\x07 \x01(\x08\x12\x32\n&deprecated_legacy_json_field_conflicts\x18\x0b \x01(\x08\x42\x02\x18\x01\x12-\n\x08\x66\x65\x61tures\x18\x0c \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08\x04\x10\x05J\x04\x08\x05\x10\x06J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\tJ\x04\x08\t\x10\n\"\xc6\x0b\n\x0c\x46ieldOptions\x12:\n\x05\x63type\x18\x01 \x01(\x0e\x32#.google.protobuf.FieldOptions.CType:\x06STRING\x12\x0e\n\x06packed\x18\x02 \x01(\x08\x12?\n\x06jstype\x18\x06 \x01(\x0e\x32$.google.protobuf.FieldOptions.JSType:\tJS_NORMAL\x12\x13\n\x04lazy\x18\x05 \x01(\x08:\x05\x66\x61lse\x12\x1e\n\x0funverified_lazy\x18\x0f \x01(\x08:\x05\x66\x61lse\x12\x19\n\ndeprecated\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x17\n\x04weak\x18\n \x01(\x08:\x05\x66\x61lseB\x02\x18\x01\x12\x1b\n\x0c\x64\x65\x62ug_redact\x18\x10 \x01(\x08:\x05\x66\x61lse\x12@\n\tretention\x18\x11 \x01(\x0e\x32-.google.protobuf.FieldOptions.OptionRetention\x12?\n\x07targets\x18\x13 \x03(\x0e\x32..google.protobuf.FieldOptions.OptionTargetType\x12\x46\n\x10\x65\x64ition_defaults\x18\x14 \x03(\x0b\x32,.google.protobuf.FieldOptions.EditionDefault\x12-\n\x08\x66\x65\x61tures\x18\x15 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x45\n\x0f\x66\x65\x61ture_support\x18\x16 \x01(\x0b\x32,.google.protobuf.FieldOptions.FeatureSupport\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\x1aJ\n\x0e\x45\x64itionDefault\x12)\n\x07\x65\x64ition\x18\x03 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\r\n\x05value\x18\x02 \x01(\t\x1a\xe3\x01\n\x0e\x46\x65\x61tureSupport\x12\x34\n\x12\x65\x64ition_introduced\x18\x01 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x34\n\x12\x65\x64ition_deprecated\x18\x02 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x1b\n\x13\x64\x65precation_warning\x18\x03 \x01(\t\x12\x31\n\x0f\x65\x64ition_removed\x18\x04 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x15\n\rremoval_error\x18\x05 \x01(\t\"/\n\x05\x43Type\x12\n\n\x06STRING\x10\x00\x12\x08\n\x04\x43ORD\x10\x01\x12\x10\n\x0cSTRING_PIECE\x10\x02\"5\n\x06JSType\x12\r\n\tJS_NORMAL\x10\x00\x12\r\n\tJS_STRING\x10\x01\x12\r\n\tJS_NUMBER\x10\x02\"U\n\x0fOptionRetention\x12\x15\n\x11RETENTION_UNKNOWN\x10\x00\x12\x15\n\x11RETENTION_RUNTIME\x10\x01\x12\x14\n\x10RETENTION_SOURCE\x10\x02\"\x8c\x02\n\x10OptionTargetType\x12\x17\n\x13TARGET_TYPE_UNKNOWN\x10\x00\x12\x14\n\x10TARGET_TYPE_FILE\x10\x01\x12\x1f\n\x1bTARGET_TYPE_EXTENSION_RANGE\x10\x02\x12\x17\n\x13TARGET_TYPE_MESSAGE\x10\x03\x12\x15\n\x11TARGET_TYPE_FIELD\x10\x04\x12\x15\n\x11TARGET_TYPE_ONEOF\x10\x05\x12\x14\n\x10TARGET_TYPE_ENUM\x10\x06\x12\x1a\n\x16TARGET_TYPE_ENUM_ENTRY\x10\x07\x12\x17\n\x13TARGET_TYPE_SERVICE\x10\x08\x12\x16\n\x12TARGET_TYPE_METHOD\x10\t*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08\x04\x10\x05J\x04\x08\x12\x10\x13\"\x95\x01\n\x0cOneofOptions\x12-\n\x08\x66\x65\x61tures\x18\x01 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xfe\x01\n\x0b\x45numOptions\x12\x13\n\x0b\x61llow_alias\x18\x02 \x01(\x08\x12\x19\n\ndeprecated\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x32\n&deprecated_legacy_json_field_conflicts\x18\x06 \x01(\x08\x42\x02\x18\x01\x12-\n\x08\x66\x65\x61tures\x18\x07 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02J\x04\x08\x05\x10\x06\"\x98\x02\n\x10\x45numValueOptions\x12\x19\n\ndeprecated\x18\x01 \x01(\x08:\x05\x66\x61lse\x12-\n\x08\x66\x65\x61tures\x18\x02 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x1b\n\x0c\x64\x65\x62ug_redact\x18\x03 \x01(\x08:\x05\x66\x61lse\x12\x45\n\x0f\x66\x65\x61ture_support\x18\x04 \x01(\x0b\x32,.google.protobuf.FieldOptions.FeatureSupport\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xb2\x01\n\x0eServiceOptions\x12-\n\x08\x66\x65\x61tures\x18\" \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x19\n\ndeprecated\x18! \x01(\x08:\x05\x66\x61lse\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xe4\x02\n\rMethodOptions\x12\x19\n\ndeprecated\x18! \x01(\x08:\x05\x66\x61lse\x12_\n\x11idempotency_level\x18\" \x01(\x0e\x32/.google.protobuf.MethodOptions.IdempotencyLevel:\x13IDEMPOTENCY_UNKNOWN\x12-\n\x08\x66\x65\x61tures\x18# \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x43\n\x14uninterpreted_option\x18\xe7\x07 \x03(\x0b\x32$.google.protobuf.UninterpretedOption\"P\n\x10IdempotencyLevel\x12\x17\n\x13IDEMPOTENCY_UNKNOWN\x10\x00\x12\x13\n\x0fNO_SIDE_EFFECTS\x10\x01\x12\x0e\n\nIDEMPOTENT\x10\x02*\x06\x08\xde\x07\x10\xe7\x07*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\x9e\x02\n\x13UninterpretedOption\x12;\n\x04name\x18\x02 \x03(\x0b\x32-.google.protobuf.UninterpretedOption.NamePart\x12\x18\n\x10identifier_value\x18\x03 \x01(\t\x12\x1a\n\x12positive_int_value\x18\x04 \x01(\x04\x12\x1a\n\x12negative_int_value\x18\x05 \x01(\x03\x12\x14\n\x0c\x64ouble_value\x18\x06 \x01(\x01\x12\x14\n\x0cstring_value\x18\x07 \x01(\x0c\x12\x17\n\x0f\x61ggregate_value\x18\x08 \x01(\t\x1a\x33\n\x08NamePart\x12\x11\n\tname_part\x18\x01 \x02(\t\x12\x14\n\x0cis_extension\x18\x02 \x02(\x08\"\xa3\x0e\n\nFeatureSet\x12\x82\x01\n\x0e\x66ield_presence\x18\x01 \x01(\x0e\x32).google.protobuf.FeatureSet.FieldPresenceB?\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\r\x12\x08\x45XPLICIT\x18\x84\x07\xa2\x01\r\x12\x08IMPLICIT\x18\xe7\x07\xa2\x01\r\x12\x08\x45XPLICIT\x18\xe8\x07\xb2\x01\x03\x08\xe8\x07\x12\x62\n\tenum_type\x18\x02 \x01(\x0e\x32$.google.protobuf.FeatureSet.EnumTypeB)\x88\x01\x01\x98\x01\x06\x98\x01\x01\xa2\x01\x0b\x12\x06\x43LOSED\x18\x84\x07\xa2\x01\t\x12\x04OPEN\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12\x81\x01\n\x17repeated_field_encoding\x18\x03 \x01(\x0e\x32\x31.google.protobuf.FeatureSet.RepeatedFieldEncodingB-\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\r\x12\x08\x45XPANDED\x18\x84\x07\xa2\x01\x0b\x12\x06PACKED\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12n\n\x0futf8_validation\x18\x04 \x01(\x0e\x32*.google.protobuf.FeatureSet.Utf8ValidationB)\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\t\x12\x04NONE\x18\x84\x07\xa2\x01\x0b\x12\x06VERIFY\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12m\n\x10message_encoding\x18\x05 \x01(\x0e\x32+.google.protobuf.FeatureSet.MessageEncodingB&\x88\x01\x01\x98\x01\x04\x98\x01\x01\xa2\x01\x14\x12\x0fLENGTH_PREFIXED\x18\x84\x07\xb2\x01\x03\x08\xe8\x07\x12v\n\x0bjson_format\x18\x06 \x01(\x0e\x32&.google.protobuf.FeatureSet.JsonFormatB9\x88\x01\x01\x98\x01\x03\x98\x01\x06\x98\x01\x01\xa2\x01\x17\x12\x12LEGACY_BEST_EFFORT\x18\x84\x07\xa2\x01\n\x12\x05\x41LLOW\x18\xe7\x07\xb2\x01\x03\x08\xe8\x07\x12\xa8\x01\n\x14\x65nforce_naming_style\x18\x07 \x01(\x0e\x32..google.protobuf.FeatureSet.EnforceNamingStyleBZ\x88\x01\x02\x98\x01\x01\x98\x01\x02\x98\x01\x03\x98\x01\x04\x98\x01\x05\x98\x01\x06\x98\x01\x07\x98\x01\x08\x98\x01\t\xa2\x01\x11\x12\x0cSTYLE_LEGACY\x18\x84\x07\xa2\x01\x0e\x12\tSTYLE2024\x18\xe9\x07\xa2\x01\x0e\x12\tSTYLE2026\x18\x8fN\xb2\x01\x03\x08\xe9\x07\x12\xa0\x01\n\x19\x64\x65\x66\x61ult_symbol_visibility\x18\x08 \x01(\x0e\x32\x45.google.protobuf.FeatureSet.VisibilityFeature.DefaultSymbolVisibilityB6\x88\x01\x02\x98\x01\x01\xa2\x01\x0f\x12\nEXPORT_ALL\x18\x84\x07\xa2\x01\x15\x12\x10\x45XPORT_TOP_LEVEL\x18\xe9\x07\xb2\x01\x03\x08\xe9\x07\x1a\xa1\x01\n\x11VisibilityFeature\"\x81\x01\n\x17\x44\x65\x66\x61ultSymbolVisibility\x12%\n!DEFAULT_SYMBOL_VISIBILITY_UNKNOWN\x10\x00\x12\x0e\n\nEXPORT_ALL\x10\x01\x12\x14\n\x10\x45XPORT_TOP_LEVEL\x10\x02\x12\r\n\tLOCAL_ALL\x10\x03\x12\n\n\x06STRICT\x10\x04J\x08\x08\x01\x10\x80\x80\x80\x80\x02\"\\\n\rFieldPresence\x12\x1a\n\x16\x46IELD_PRESENCE_UNKNOWN\x10\x00\x12\x0c\n\x08\x45XPLICIT\x10\x01\x12\x0c\n\x08IMPLICIT\x10\x02\x12\x13\n\x0fLEGACY_REQUIRED\x10\x03\"7\n\x08\x45numType\x12\x15\n\x11\x45NUM_TYPE_UNKNOWN\x10\x00\x12\x08\n\x04OPEN\x10\x01\x12\n\n\x06\x43LOSED\x10\x02\"V\n\x15RepeatedFieldEncoding\x12#\n\x1fREPEATED_FIELD_ENCODING_UNKNOWN\x10\x00\x12\n\n\x06PACKED\x10\x01\x12\x0c\n\x08\x45XPANDED\x10\x02\"I\n\x0eUtf8Validation\x12\x1b\n\x17UTF8_VALIDATION_UNKNOWN\x10\x00\x12\n\n\x06VERIFY\x10\x02\x12\x08\n\x04NONE\x10\x03\"\x04\x08\x01\x10\x01\"S\n\x0fMessageEncoding\x12\x1c\n\x18MESSAGE_ENCODING_UNKNOWN\x10\x00\x12\x13\n\x0fLENGTH_PREFIXED\x10\x01\x12\r\n\tDELIMITED\x10\x02\"H\n\nJsonFormat\x12\x17\n\x13JSON_FORMAT_UNKNOWN\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x12\x16\n\x12LEGACY_BEST_EFFORT\x10\x02\"f\n\x12\x45nforceNamingStyle\x12 \n\x1c\x45NFORCE_NAMING_STYLE_UNKNOWN\x10\x00\x12\r\n\tSTYLE2024\x10\x01\x12\x10\n\x0cSTYLE_LEGACY\x10\x02\x12\r\n\tSTYLE2026\x10\x03*\x06\x08\xe8\x07\x10\x8bN*\x06\x08\x8bN\x10\x90N*\x06\x08\x90N\x10\x91NJ\x06\x08\xe7\x07\x10\xe8\x07\"\x98\x03\n\x12\x46\x65\x61tureSetDefaults\x12N\n\x08\x64\x65\x66\x61ults\x18\x01 \x03(\x0b\x32<.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault\x12\x31\n\x0fminimum_edition\x18\x04 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x31\n\x0fmaximum_edition\x18\x05 \x01(\x0e\x32\x18.google.protobuf.Edition\x1a\xcb\x01\n\x18\x46\x65\x61tureSetEditionDefault\x12)\n\x07\x65\x64ition\x18\x03 \x01(\x0e\x32\x18.google.protobuf.Edition\x12\x39\n\x14overridable_features\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.FeatureSet\x12\x33\n\x0e\x66ixed_features\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.FeatureSetJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x08\x66\x65\x61tures\"\xe3\x01\n\x0eSourceCodeInfo\x12:\n\x08location\x18\x01 \x03(\x0b\x32(.google.protobuf.SourceCodeInfo.Location\x1a\x86\x01\n\x08Location\x12\x10\n\x04path\x18\x01 \x03(\x05\x42\x02\x10\x01\x12\x10\n\x04span\x18\x02 \x03(\x05\x42\x02\x10\x01\x12\x18\n\x10leading_comments\x18\x03 \x01(\t\x12\x19\n\x11trailing_comments\x18\x04 \x01(\t\x12!\n\x19leading_detached_comments\x18\x06 \x03(\t*\x0c\x08\x80\xec\xca\xff\x01\x10\x81\xec\xca\xff\x01\"\x9c\x02\n\x11GeneratedCodeInfo\x12\x41\n\nannotation\x18\x01 \x03(\x0b\x32-.google.protobuf.GeneratedCodeInfo.Annotation\x1a\xc3\x01\n\nAnnotation\x12\x10\n\x04path\x18\x01 \x03(\x05\x42\x02\x10\x01\x12\x13\n\x0bsource_file\x18\x02 \x01(\t\x12\r\n\x05\x62\x65gin\x18\x03 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x04 \x01(\x05\x12H\n\x08semantic\x18\x05 \x01(\x0e\x32\x36.google.protobuf.GeneratedCodeInfo.Annotation.Semantic\"(\n\x08Semantic\x12\x08\n\x04NONE\x10\x00\x12\x07\n\x03SET\x10\x01\x12\t\n\x05\x41LIAS\x10\x02*\xd1\x02\n\x07\x45\x64ition\x12\x13\n\x0f\x45\x44ITION_UNKNOWN\x10\x00\x12\x13\n\x0e\x45\x44ITION_LEGACY\x10\x84\x07\x12\x13\n\x0e\x45\x44ITION_PROTO2\x10\xe6\x07\x12\x13\n\x0e\x45\x44ITION_PROTO3\x10\xe7\x07\x12\x11\n\x0c\x45\x44ITION_2023\x10\xe8\x07\x12\x11\n\x0c\x45\x44ITION_2024\x10\xe9\x07\x12\x11\n\x0c\x45\x44ITION_2026\x10\xea\x07\x12\x15\n\x10\x45\x44ITION_UNSTABLE\x10\x8fN\x12\x17\n\x13\x45\x44ITION_1_TEST_ONLY\x10\x01\x12\x17\n\x13\x45\x44ITION_2_TEST_ONLY\x10\x02\x12\x1d\n\x17\x45\x44ITION_99997_TEST_ONLY\x10\x9d\x8d\x06\x12\x1d\n\x17\x45\x44ITION_99998_TEST_ONLY\x10\x9e\x8d\x06\x12\x1d\n\x17\x45\x44ITION_99999_TEST_ONLY\x10\x9f\x8d\x06\x12\x13\n\x0b\x45\x44ITION_MAX\x10\xff\xff\xff\xff\x07*U\n\x10SymbolVisibility\x12\x14\n\x10VISIBILITY_UNSET\x10\x00\x12\x14\n\x10VISIBILITY_LOCAL\x10\x01\x12\x15\n\x11VISIBILITY_EXPORT\x10\x02\x42~\n\x13\x63om.google.protobufB\x10\x44\x65scriptorProtosH\x01Z-google.golang.org/protobuf/types/descriptorpb\xf8\x01\x01\xa2\x02\x03GPB\xaa\x02\x1aGoogle.Protobuf.Reflection"
|
|
9
9
|
|
|
10
10
|
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
11
11
|
pool.add_serialized_file(descriptor_data)
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: google-protobuf
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.
|
|
4
|
+
version: 4.35.0.rc.1
|
|
5
5
|
platform: x86-linux-gnu
|
|
6
6
|
authors:
|
|
7
7
|
- Protobuf Authors
|
|
8
8
|
bindir: bin
|
|
9
9
|
cert_chain: []
|
|
10
|
-
date: 2026-
|
|
10
|
+
date: 2026-04-20 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
12
|
- !ruby/object:Gem::Dependency
|
|
13
13
|
name: bigdecimal
|
|
@@ -185,7 +185,7 @@ homepage: https://developers.google.com/protocol-buffers
|
|
|
185
185
|
licenses:
|
|
186
186
|
- BSD-3-Clause
|
|
187
187
|
metadata:
|
|
188
|
-
source_code_uri: https://github.com/protocolbuffers/protobuf/tree/v4.
|
|
188
|
+
source_code_uri: https://github.com/protocolbuffers/protobuf/tree/v4.35.0-rc1/ruby
|
|
189
189
|
rdoc_options: []
|
|
190
190
|
require_paths:
|
|
191
191
|
- lib
|
|
@@ -199,6 +199,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
199
199
|
version: 4.1.dev
|
|
200
200
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
201
|
requirements:
|
|
202
|
+
- - ">"
|
|
203
|
+
- !ruby/object:Gem::Version
|
|
204
|
+
version: 1.3.1
|
|
202
205
|
- - ">="
|
|
203
206
|
- !ruby/object:Gem::Version
|
|
204
207
|
version: 3.3.22
|