google-protobuf 3.2.0 → 3.9.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of google-protobuf might be problematic. Click here for more details.
- checksums.yaml +5 -5
- data/ext/google/protobuf_c/defs.c +575 -81
- data/ext/google/protobuf_c/encode_decode.c +456 -149
- data/ext/google/protobuf_c/extconf.rb +15 -2
- data/ext/google/protobuf_c/map.c +47 -3
- data/ext/google/protobuf_c/message.c +308 -82
- data/ext/google/protobuf_c/protobuf.c +7 -3
- data/ext/google/protobuf_c/protobuf.h +86 -12
- data/ext/google/protobuf_c/repeated_field.c +10 -4
- data/ext/google/protobuf_c/storage.c +286 -117
- data/ext/google/protobuf_c/upb.c +14482 -10935
- data/ext/google/protobuf_c/upb.h +2401 -613
- data/ext/google/protobuf_c/wrap_memcpy.c +51 -0
- data/lib/google/protobuf.rb +5 -4
- data/lib/google/protobuf/any_pb.rb +5 -3
- data/lib/google/protobuf/api_pb.rb +23 -21
- data/lib/google/protobuf/duration_pb.rb +5 -3
- data/lib/google/protobuf/empty_pb.rb +3 -1
- data/lib/google/protobuf/field_mask_pb.rb +4 -2
- data/lib/google/protobuf/message_exts.rb +2 -2
- data/lib/google/protobuf/repeated_field.rb +3 -3
- data/lib/google/protobuf/source_context_pb.rb +4 -2
- data/lib/google/protobuf/struct_pb.rb +19 -17
- data/lib/google/protobuf/timestamp_pb.rb +5 -3
- data/lib/google/protobuf/type_pb.rb +68 -66
- data/lib/google/protobuf/well_known_types.rb +13 -1
- data/lib/google/protobuf/wrappers_pb.rb +28 -26
- data/tests/basic.rb +206 -1023
- data/tests/generated_code_test.rb +6 -2
- metadata +5 -5
data/ext/google/protobuf_c/upb.h
CHANGED
@@ -1,4 +1,45 @@
|
|
1
|
-
|
1
|
+
/* Amalgamated source file */
|
2
|
+
|
3
|
+
#if UINTPTR_MAX == 0xffffffff
|
4
|
+
#define UPB_SIZE(size32, size64) size32
|
5
|
+
#else
|
6
|
+
#define UPB_SIZE(size32, size64) size64
|
7
|
+
#endif
|
8
|
+
|
9
|
+
#define UPB_FIELD_AT(msg, fieldtype, offset) \
|
10
|
+
*(fieldtype*)((const char*)(msg) + offset)
|
11
|
+
|
12
|
+
#define UPB_READ_ONEOF(msg, fieldtype, offset, case_offset, case_val, default) \
|
13
|
+
UPB_FIELD_AT(msg, int, case_offset) == case_val \
|
14
|
+
? UPB_FIELD_AT(msg, fieldtype, offset) \
|
15
|
+
: default
|
16
|
+
|
17
|
+
#define UPB_WRITE_ONEOF(msg, fieldtype, offset, value, case_offset, case_val) \
|
18
|
+
UPB_FIELD_AT(msg, int, case_offset) = case_val; \
|
19
|
+
UPB_FIELD_AT(msg, fieldtype, offset) = value;
|
20
|
+
/*
|
21
|
+
** upb::Message is a representation for protobuf messages.
|
22
|
+
**
|
23
|
+
** However it differs from other common representations like
|
24
|
+
** google::protobuf::Message in one key way: it does not prescribe any
|
25
|
+
** ownership between messages and submessages, and it relies on the
|
26
|
+
** client to ensure that each submessage/array/map outlives its parent.
|
27
|
+
**
|
28
|
+
** All messages, arrays, and maps live in an Arena. If the entire message
|
29
|
+
** tree is in the same arena, ensuring proper lifetimes is simple. However
|
30
|
+
** the client can mix arenas as long as they ensure that there are no
|
31
|
+
** dangling pointers.
|
32
|
+
**
|
33
|
+
** A client can access a upb::Message without knowing anything about
|
34
|
+
** ownership semantics, but to create or mutate a message a user needs
|
35
|
+
** to implement the memory management themselves.
|
36
|
+
**
|
37
|
+
** TODO: UTF-8 checking?
|
38
|
+
**/
|
39
|
+
|
40
|
+
#ifndef UPB_MSG_H_
|
41
|
+
#define UPB_MSG_H_
|
42
|
+
|
2
43
|
/*
|
3
44
|
** Defs are upb's internal representation of the constructs that can appear
|
4
45
|
** in a .proto file:
|
@@ -100,6 +141,9 @@ template
|
|
100
141
|
#define UPB_INLINE static
|
101
142
|
#endif
|
102
143
|
|
144
|
+
/* Hints to the compiler about likely/unlikely branches. */
|
145
|
+
#define UPB_LIKELY(x) __builtin_expect((x),1)
|
146
|
+
|
103
147
|
/* Define UPB_BIG_ENDIAN manually if you're on big endian and your compiler
|
104
148
|
* doesn't provide these preprocessor symbols. */
|
105
149
|
#if defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
|
@@ -361,6 +405,16 @@ class PointerBase2 : public PointerBase
|
|
361
405
|
|
362
406
|
#endif
|
363
407
|
|
408
|
+
/* A list of types as they are encoded on-the-wire. */
|
409
|
+
typedef enum {
|
410
|
+
UPB_WIRE_TYPE_VARINT = 0,
|
411
|
+
UPB_WIRE_TYPE_64BIT = 1,
|
412
|
+
UPB_WIRE_TYPE_DELIMITED = 2,
|
413
|
+
UPB_WIRE_TYPE_START_GROUP = 3,
|
414
|
+
UPB_WIRE_TYPE_END_GROUP = 4,
|
415
|
+
UPB_WIRE_TYPE_32BIT = 5
|
416
|
+
} upb_wiretype_t;
|
417
|
+
|
364
418
|
|
365
419
|
/* upb::ErrorSpace ************************************************************/
|
366
420
|
|
@@ -689,7 +743,7 @@ void upb_env_uninit(upb_env *e);
|
|
689
743
|
|
690
744
|
void upb_env_initonly(upb_env *e);
|
691
745
|
|
692
|
-
upb_arena *upb_env_arena(upb_env *e);
|
746
|
+
UPB_INLINE upb_arena *upb_env_arena(upb_env *e) { return (upb_arena*)e; }
|
693
747
|
bool upb_env_ok(const upb_env *e);
|
694
748
|
void upb_env_seterrorfunc(upb_env *e, upb_error_func *func, void *ud);
|
695
749
|
|
@@ -1786,9 +1840,24 @@ class upb::Def {
|
|
1786
1840
|
|
1787
1841
|
private:
|
1788
1842
|
UPB_DISALLOW_POD_OPS(Def, upb::Def)
|
1843
|
+
#else
|
1844
|
+
struct upb_def {
|
1845
|
+
upb_refcounted base;
|
1846
|
+
|
1847
|
+
const char *fullname;
|
1848
|
+
const upb_filedef* file;
|
1849
|
+
char type; /* A upb_deftype_t (char to save space) */
|
1850
|
+
|
1851
|
+
/* Used as a flag during the def's mutable stage. Must be false unless
|
1852
|
+
* it is currently being used by a function on the stack. This allows
|
1853
|
+
* us to easily determine which defs were passed into the function's
|
1854
|
+
* current invocation. */
|
1855
|
+
bool came_from_user;
|
1856
|
+
#endif
|
1789
1857
|
};
|
1790
1858
|
|
1791
|
-
#
|
1859
|
+
#define UPB_DEF_INIT(name, type, vtbl, refs, ref2s) \
|
1860
|
+
{ UPB_REFCOUNT_INIT(vtbl, refs, ref2s), name, NULL, type, false }
|
1792
1861
|
|
1793
1862
|
UPB_BEGIN_EXTERN_C
|
1794
1863
|
|
@@ -1947,6 +2016,36 @@ typedef enum {
|
|
1947
2016
|
UPB_SYNTAX_PROTO3 = 3
|
1948
2017
|
} upb_syntax_t;
|
1949
2018
|
|
2019
|
+
/* All the different kind of well known type messages. For simplicity of check,
|
2020
|
+
* number wrappers and string wrappers are grouped together. Make sure the
|
2021
|
+
* order and merber of these groups are not changed.
|
2022
|
+
*/
|
2023
|
+
typedef enum {
|
2024
|
+
UPB_WELLKNOWN_UNSPECIFIED,
|
2025
|
+
UPB_WELLKNOWN_ANY,
|
2026
|
+
UPB_WELLKNOWN_FIELDMASK,
|
2027
|
+
UPB_WELLKNOWN_DURATION,
|
2028
|
+
UPB_WELLKNOWN_TIMESTAMP,
|
2029
|
+
/* number wrappers */
|
2030
|
+
UPB_WELLKNOWN_DOUBLEVALUE,
|
2031
|
+
UPB_WELLKNOWN_FLOATVALUE,
|
2032
|
+
UPB_WELLKNOWN_INT64VALUE,
|
2033
|
+
UPB_WELLKNOWN_UINT64VALUE,
|
2034
|
+
UPB_WELLKNOWN_INT32VALUE,
|
2035
|
+
UPB_WELLKNOWN_UINT32VALUE,
|
2036
|
+
/* string wrappers */
|
2037
|
+
UPB_WELLKNOWN_STRINGVALUE,
|
2038
|
+
UPB_WELLKNOWN_BYTESVALUE,
|
2039
|
+
UPB_WELLKNOWN_BOOLVALUE,
|
2040
|
+
UPB_WELLKNOWN_VALUE,
|
2041
|
+
UPB_WELLKNOWN_LISTVALUE,
|
2042
|
+
UPB_WELLKNOWN_STRUCT
|
2043
|
+
} upb_wellknowntype_t;
|
2044
|
+
|
2045
|
+
|
2046
|
+
/* Maps descriptor type -> upb field type. */
|
2047
|
+
extern const uint8_t upb_desctype_to_fieldtype[];
|
2048
|
+
|
1950
2049
|
/* Maximum field number allowed for FieldDefs. This is an inherent limit of the
|
1951
2050
|
* protobuf wire format. */
|
1952
2051
|
#define UPB_MAX_FIELDNUMBER ((1 << 29) - 1)
|
@@ -2221,12 +2320,57 @@ class upb::FieldDef {
|
|
2221
2320
|
|
2222
2321
|
private:
|
2223
2322
|
UPB_DISALLOW_POD_OPS(FieldDef, upb::FieldDef)
|
2224
|
-
|
2323
|
+
#else
|
2324
|
+
struct upb_fielddef {
|
2325
|
+
upb_def base;
|
2225
2326
|
|
2327
|
+
union {
|
2328
|
+
int64_t sint;
|
2329
|
+
uint64_t uint;
|
2330
|
+
double dbl;
|
2331
|
+
float flt;
|
2332
|
+
void *bytes;
|
2333
|
+
} defaultval;
|
2334
|
+
union {
|
2335
|
+
const upb_msgdef *def; /* If !msg_is_symbolic. */
|
2336
|
+
char *name; /* If msg_is_symbolic. */
|
2337
|
+
} msg;
|
2338
|
+
union {
|
2339
|
+
const upb_def *def; /* If !subdef_is_symbolic. */
|
2340
|
+
char *name; /* If subdef_is_symbolic. */
|
2341
|
+
} sub; /* The msgdef or enumdef for this field, if upb_hassubdef(f). */
|
2342
|
+
bool subdef_is_symbolic;
|
2343
|
+
bool msg_is_symbolic;
|
2344
|
+
const upb_oneofdef *oneof;
|
2345
|
+
bool default_is_string;
|
2346
|
+
bool type_is_set_; /* False until type is explicitly set. */
|
2347
|
+
bool is_extension_;
|
2348
|
+
bool lazy_;
|
2349
|
+
bool packed_;
|
2350
|
+
upb_intfmt_t intfmt;
|
2351
|
+
bool tagdelim;
|
2352
|
+
upb_fieldtype_t type_;
|
2353
|
+
upb_label_t label_;
|
2354
|
+
uint32_t number_;
|
2355
|
+
uint32_t selector_base; /* Used to index into a upb::Handlers table. */
|
2356
|
+
uint32_t index_;
|
2226
2357
|
# endif /* defined(__cplusplus) */
|
2358
|
+
};
|
2227
2359
|
|
2228
2360
|
UPB_BEGIN_EXTERN_C
|
2229
2361
|
|
2362
|
+
extern const struct upb_refcounted_vtbl upb_fielddef_vtbl;
|
2363
|
+
|
2364
|
+
#define UPB_FIELDDEF_INIT(label, type, intfmt, tagdelim, is_extension, lazy, \
|
2365
|
+
packed, name, num, msgdef, subdef, selector_base, \
|
2366
|
+
index, defaultval, refs, ref2s) \
|
2367
|
+
{ \
|
2368
|
+
UPB_DEF_INIT(name, UPB_DEF_FIELD, &upb_fielddef_vtbl, refs, ref2s), \
|
2369
|
+
defaultval, {msgdef}, {subdef}, NULL, false, false, \
|
2370
|
+
type == UPB_TYPE_STRING || type == UPB_TYPE_BYTES, true, is_extension, \
|
2371
|
+
lazy, packed, intfmt, tagdelim, type, label, num, selector_base, index \
|
2372
|
+
}
|
2373
|
+
|
2230
2374
|
/* Native C API. */
|
2231
2375
|
upb_fielddef *upb_fielddef_new(const void *owner);
|
2232
2376
|
|
@@ -2328,6 +2472,18 @@ typedef upb_strtable_iter upb_msg_oneof_iter;
|
|
2328
2472
|
#define UPB_MAPENTRY_KEY 1
|
2329
2473
|
#define UPB_MAPENTRY_VALUE 2
|
2330
2474
|
|
2475
|
+
/* Well-known field tag numbers for Any messages. */
|
2476
|
+
#define UPB_ANY_TYPE 1
|
2477
|
+
#define UPB_ANY_VALUE 2
|
2478
|
+
|
2479
|
+
/* Well-known field tag numbers for timestamp messages. */
|
2480
|
+
#define UPB_DURATION_SECONDS 1
|
2481
|
+
#define UPB_DURATION_NANOS 2
|
2482
|
+
|
2483
|
+
/* Well-known field tag numbers for duration messages. */
|
2484
|
+
#define UPB_TIMESTAMP_SECONDS 1
|
2485
|
+
#define UPB_TIMESTAMP_NANOS 2
|
2486
|
+
|
2331
2487
|
#ifdef __cplusplus
|
2332
2488
|
|
2333
2489
|
/* Structure that describes a single .proto message type.
|
@@ -2442,6 +2598,13 @@ class upb::MessageDef {
|
|
2442
2598
|
void setmapentry(bool map_entry);
|
2443
2599
|
bool mapentry() const;
|
2444
2600
|
|
2601
|
+
/* Return the type of well known type message. UPB_WELLKNOWN_UNSPECIFIED for
|
2602
|
+
* non-well-known message. */
|
2603
|
+
upb_wellknowntype_t wellknowntype() const;
|
2604
|
+
|
2605
|
+
/* Whether is a number wrapper. */
|
2606
|
+
bool isnumberwrapper() const;
|
2607
|
+
|
2445
2608
|
/* Iteration over fields. The order is undefined. */
|
2446
2609
|
class field_iterator
|
2447
2610
|
: public std::iterator<std::forward_iterator_tag, FieldDef*> {
|
@@ -2557,12 +2720,45 @@ class upb::MessageDef {
|
|
2557
2720
|
|
2558
2721
|
private:
|
2559
2722
|
UPB_DISALLOW_POD_OPS(MessageDef, upb::MessageDef)
|
2560
|
-
|
2723
|
+
#else
|
2724
|
+
struct upb_msgdef {
|
2725
|
+
upb_def base;
|
2726
|
+
|
2727
|
+
size_t selector_count;
|
2728
|
+
uint32_t submsg_field_count;
|
2729
|
+
|
2730
|
+
/* Tables for looking up fields by number and name. */
|
2731
|
+
upb_inttable itof; /* int to field */
|
2732
|
+
upb_strtable ntof; /* name to field/oneof */
|
2733
|
+
|
2734
|
+
/* Is this a map-entry message? */
|
2735
|
+
bool map_entry;
|
2736
|
+
|
2737
|
+
/* Whether this message has proto2 or proto3 semantics. */
|
2738
|
+
upb_syntax_t syntax;
|
2561
2739
|
|
2740
|
+
/* Type of well known type message. UPB_WELLKNOWN_UNSPECIFIED for
|
2741
|
+
* non-well-known message. */
|
2742
|
+
upb_wellknowntype_t well_known_type;
|
2743
|
+
|
2744
|
+
/* TODO(haberman): proper extension ranges (there can be multiple). */
|
2562
2745
|
#endif /* __cplusplus */
|
2746
|
+
};
|
2563
2747
|
|
2564
2748
|
UPB_BEGIN_EXTERN_C
|
2565
2749
|
|
2750
|
+
extern const struct upb_refcounted_vtbl upb_msgdef_vtbl;
|
2751
|
+
|
2752
|
+
/* TODO: also support static initialization of the oneofs table. This will be
|
2753
|
+
* needed if we compile in descriptors that contain oneofs. */
|
2754
|
+
#define UPB_MSGDEF_INIT(name, selector_count, submsg_field_count, itof, ntof, \
|
2755
|
+
map_entry, syntax, well_known_type, refs, ref2s) \
|
2756
|
+
{ \
|
2757
|
+
UPB_DEF_INIT(name, UPB_DEF_MSG, &upb_fielddef_vtbl, refs, ref2s), \
|
2758
|
+
selector_count, submsg_field_count, itof, ntof, map_entry, syntax, \
|
2759
|
+
well_known_type \
|
2760
|
+
}
|
2761
|
+
|
2566
2762
|
/* Returns NULL if memory allocation failed. */
|
2567
2763
|
upb_msgdef *upb_msgdef_new(const void *owner);
|
2568
2764
|
|
@@ -2583,6 +2779,8 @@ bool upb_msgdef_addoneof(upb_msgdef *m, upb_oneofdef *o, const void *ref_donor,
|
|
2583
2779
|
bool upb_msgdef_setfullname(upb_msgdef *m, const char *fullname, upb_status *s);
|
2584
2780
|
void upb_msgdef_setmapentry(upb_msgdef *m, bool map_entry);
|
2585
2781
|
bool upb_msgdef_mapentry(const upb_msgdef *m);
|
2782
|
+
upb_wellknowntype_t upb_msgdef_wellknowntype(const upb_msgdef *m);
|
2783
|
+
bool upb_msgdef_isnumberwrapper(const upb_msgdef *m);
|
2586
2784
|
bool upb_msgdef_setsyntax(upb_msgdef *m, upb_syntax_t syntax);
|
2587
2785
|
|
2588
2786
|
/* Field lookup in a couple of different variations:
|
@@ -2739,12 +2937,24 @@ class upb::EnumDef {
|
|
2739
2937
|
|
2740
2938
|
private:
|
2741
2939
|
UPB_DISALLOW_POD_OPS(EnumDef, upb::EnumDef)
|
2742
|
-
|
2940
|
+
#else
|
2941
|
+
struct upb_enumdef {
|
2942
|
+
upb_def base;
|
2743
2943
|
|
2944
|
+
upb_strtable ntoi;
|
2945
|
+
upb_inttable iton;
|
2946
|
+
int32_t defaultval;
|
2744
2947
|
#endif /* __cplusplus */
|
2948
|
+
};
|
2745
2949
|
|
2746
2950
|
UPB_BEGIN_EXTERN_C
|
2747
2951
|
|
2952
|
+
extern const struct upb_refcounted_vtbl upb_enumdef_vtbl;
|
2953
|
+
|
2954
|
+
#define UPB_ENUMDEF_INIT(name, ntoi, iton, defaultval, refs, ref2s) \
|
2955
|
+
{ UPB_DEF_INIT(name, UPB_DEF_ENUM, &upb_enumdef_vtbl, refs, ref2s), ntoi, \
|
2956
|
+
iton, defaultval }
|
2957
|
+
|
2748
2958
|
/* Native C API. */
|
2749
2959
|
upb_enumdef *upb_enumdef_new(const void *owner);
|
2750
2960
|
|
@@ -2893,12 +3103,25 @@ class upb::OneofDef {
|
|
2893
3103
|
|
2894
3104
|
private:
|
2895
3105
|
UPB_DISALLOW_POD_OPS(OneofDef, upb::OneofDef)
|
2896
|
-
|
3106
|
+
#else
|
3107
|
+
struct upb_oneofdef {
|
3108
|
+
upb_refcounted base;
|
2897
3109
|
|
3110
|
+
uint32_t index; /* Index within oneofs. */
|
3111
|
+
const char *name;
|
3112
|
+
upb_strtable ntof;
|
3113
|
+
upb_inttable itof;
|
3114
|
+
const upb_msgdef *parent;
|
2898
3115
|
#endif /* __cplusplus */
|
3116
|
+
};
|
2899
3117
|
|
2900
3118
|
UPB_BEGIN_EXTERN_C
|
2901
3119
|
|
3120
|
+
extern const struct upb_refcounted_vtbl upb_oneofdef_vtbl;
|
3121
|
+
|
3122
|
+
#define UPB_ONEOFDEF_INIT(name, ntof, itof, refs, ref2s) \
|
3123
|
+
{ UPB_REFCOUNT_INIT(&upb_oneofdef_vtbl, refs, ref2s), 0, name, ntof, itof }
|
3124
|
+
|
2902
3125
|
/* Native C API. */
|
2903
3126
|
upb_oneofdef *upb_oneofdef_new(const void *owner);
|
2904
3127
|
|
@@ -2966,6 +3189,17 @@ class upb::FileDef {
|
|
2966
3189
|
const char* package() const;
|
2967
3190
|
bool set_package(const char* package, Status* s);
|
2968
3191
|
|
3192
|
+
/* Sets the php class prefix which is prepended to all php generated classes
|
3193
|
+
* from this .proto. Default is empty. */
|
3194
|
+
const char* phpprefix() const;
|
3195
|
+
bool set_phpprefix(const char* phpprefix, Status* s);
|
3196
|
+
|
3197
|
+
/* Use this option to change the namespace of php generated classes. Default
|
3198
|
+
* is empty. When this option is empty, the package name will be used for
|
3199
|
+
* determining the namespace. */
|
3200
|
+
const char* phpnamespace() const;
|
3201
|
+
bool set_phpnamespace(const char* phpnamespace, Status* s);
|
3202
|
+
|
2969
3203
|
/* Syntax for the file. Defaults to proto2. */
|
2970
3204
|
upb_syntax_t syntax() const;
|
2971
3205
|
void set_syntax(upb_syntax_t syntax);
|
@@ -3006,12 +3240,25 @@ class upb::FileDef {
|
|
3006
3240
|
|
3007
3241
|
private:
|
3008
3242
|
UPB_DISALLOW_POD_OPS(FileDef, upb::FileDef)
|
3009
|
-
|
3243
|
+
#else
|
3244
|
+
struct upb_filedef {
|
3245
|
+
upb_refcounted base;
|
3246
|
+
|
3247
|
+
const char *name;
|
3248
|
+
const char *package;
|
3249
|
+
const char *phpprefix;
|
3250
|
+
const char *phpnamespace;
|
3251
|
+
upb_syntax_t syntax;
|
3010
3252
|
|
3253
|
+
upb_inttable defs;
|
3254
|
+
upb_inttable deps;
|
3011
3255
|
#endif
|
3256
|
+
};
|
3012
3257
|
|
3013
3258
|
UPB_BEGIN_EXTERN_C
|
3014
3259
|
|
3260
|
+
extern const struct upb_refcounted_vtbl upb_filedef_vtbl;
|
3261
|
+
|
3015
3262
|
upb_filedef *upb_filedef_new(const void *owner);
|
3016
3263
|
|
3017
3264
|
/* Include upb_refcounted methods like upb_msgdef_ref(). */
|
@@ -3019,6 +3266,8 @@ UPB_REFCOUNTED_CMETHODS(upb_filedef, upb_filedef_upcast)
|
|
3019
3266
|
|
3020
3267
|
const char *upb_filedef_name(const upb_filedef *f);
|
3021
3268
|
const char *upb_filedef_package(const upb_filedef *f);
|
3269
|
+
const char *upb_filedef_phpprefix(const upb_filedef *f);
|
3270
|
+
const char *upb_filedef_phpnamespace(const upb_filedef *f);
|
3022
3271
|
upb_syntax_t upb_filedef_syntax(const upb_filedef *f);
|
3023
3272
|
size_t upb_filedef_defcount(const upb_filedef *f);
|
3024
3273
|
size_t upb_filedef_depcount(const upb_filedef *f);
|
@@ -3028,6 +3277,10 @@ const upb_filedef *upb_filedef_dep(const upb_filedef *f, size_t i);
|
|
3028
3277
|
bool upb_filedef_freeze(upb_filedef *f, upb_status *s);
|
3029
3278
|
bool upb_filedef_setname(upb_filedef *f, const char *name, upb_status *s);
|
3030
3279
|
bool upb_filedef_setpackage(upb_filedef *f, const char *package, upb_status *s);
|
3280
|
+
bool upb_filedef_setphpprefix(upb_filedef *f, const char *phpprefix,
|
3281
|
+
upb_status *s);
|
3282
|
+
bool upb_filedef_setphpnamespace(upb_filedef *f, const char *phpnamespace,
|
3283
|
+
upb_status *s);
|
3031
3284
|
bool upb_filedef_setsyntax(upb_filedef *f, upb_syntax_t syntax, upb_status *s);
|
3032
3285
|
|
3033
3286
|
bool upb_filedef_adddef(upb_filedef *f, upb_def *def, const void *ref_donor,
|
@@ -3135,9 +3388,13 @@ class upb::SymbolTable {
|
|
3135
3388
|
|
3136
3389
|
private:
|
3137
3390
|
UPB_DISALLOW_POD_OPS(SymbolTable, upb::SymbolTable)
|
3138
|
-
|
3391
|
+
#else
|
3392
|
+
struct upb_symtab {
|
3393
|
+
upb_refcounted base;
|
3139
3394
|
|
3395
|
+
upb_strtable symtab;
|
3140
3396
|
#endif /* __cplusplus */
|
3397
|
+
};
|
3141
3398
|
|
3142
3399
|
UPB_BEGIN_EXTERN_C
|
3143
3400
|
|
@@ -3149,6 +3406,8 @@ const upb_def *upb_symtab_resolve(const upb_symtab *s, const char *base,
|
|
3149
3406
|
const char *sym);
|
3150
3407
|
const upb_def *upb_symtab_lookup(const upb_symtab *s, const char *sym);
|
3151
3408
|
const upb_msgdef *upb_symtab_lookupmsg(const upb_symtab *s, const char *sym);
|
3409
|
+
const upb_msgdef *upb_symtab_lookupmsg2(
|
3410
|
+
const upb_symtab *s, const char *sym, size_t len);
|
3152
3411
|
const upb_enumdef *upb_symtab_lookupenum(const upb_symtab *s, const char *sym);
|
3153
3412
|
bool upb_symtab_add(upb_symtab *s, upb_def *const*defs, size_t n,
|
3154
3413
|
void *ref_donor, upb_status *status);
|
@@ -3505,6 +3764,12 @@ inline void MessageDef::setmapentry(bool map_entry) {
|
|
3505
3764
|
inline bool MessageDef::mapentry() const {
|
3506
3765
|
return upb_msgdef_mapentry(this);
|
3507
3766
|
}
|
3767
|
+
inline upb_wellknowntype_t MessageDef::wellknowntype() const {
|
3768
|
+
return upb_msgdef_wellknowntype(this);
|
3769
|
+
}
|
3770
|
+
inline bool MessageDef::isnumberwrapper() const {
|
3771
|
+
return upb_msgdef_isnumberwrapper(this);
|
3772
|
+
}
|
3508
3773
|
inline MessageDef::field_iterator MessageDef::field_begin() {
|
3509
3774
|
return field_iterator(this);
|
3510
3775
|
}
|
@@ -3786,6 +4051,18 @@ inline const char* FileDef::package() const {
|
|
3786
4051
|
inline bool FileDef::set_package(const char* package, Status* s) {
|
3787
4052
|
return upb_filedef_setpackage(this, package, s);
|
3788
4053
|
}
|
4054
|
+
inline const char* FileDef::phpprefix() const {
|
4055
|
+
return upb_filedef_phpprefix(this);
|
4056
|
+
}
|
4057
|
+
inline bool FileDef::set_phpprefix(const char* phpprefix, Status* s) {
|
4058
|
+
return upb_filedef_setphpprefix(this, phpprefix, s);
|
4059
|
+
}
|
4060
|
+
inline const char* FileDef::phpnamespace() const {
|
4061
|
+
return upb_filedef_phpnamespace(this);
|
4062
|
+
}
|
4063
|
+
inline bool FileDef::set_phpnamespace(const char* phpnamespace, Status* s) {
|
4064
|
+
return upb_filedef_setphpnamespace(this, phpnamespace, s);
|
4065
|
+
}
|
3789
4066
|
inline int FileDef::def_count() const {
|
3790
4067
|
return upb_filedef_defcount(this);
|
3791
4068
|
}
|
@@ -3822,263 +4099,75 @@ inline bool FileDef::AddDependency(const FileDef* file) {
|
|
3822
4099
|
|
3823
4100
|
#endif /* UPB_DEF_H_ */
|
3824
4101
|
/*
|
3825
|
-
**
|
3826
|
-
** and NOT stable across versions of upb.
|
4102
|
+
** upb::Handlers (upb_handlers)
|
3827
4103
|
**
|
3828
|
-
**
|
3829
|
-
**
|
3830
|
-
** of
|
4104
|
+
** A upb_handlers is like a virtual table for a upb_msgdef. Each field of the
|
4105
|
+
** message can have associated functions that will be called when we are
|
4106
|
+
** parsing or visiting a stream of data. This is similar to how handlers work
|
4107
|
+
** in SAX (the Simple API for XML).
|
3831
4108
|
**
|
3832
|
-
**
|
3833
|
-
**
|
3834
|
-
**
|
4109
|
+
** The handlers have no idea where the data is coming from, so a single set of
|
4110
|
+
** handlers could be used with two completely different data sources (for
|
4111
|
+
** example, a parser and a visitor over in-memory objects). This decoupling is
|
4112
|
+
** the most important feature of upb, because it allows parsers and serializers
|
4113
|
+
** to be highly reusable.
|
3835
4114
|
**
|
3836
|
-
**
|
3837
|
-
**
|
4115
|
+
** This is a mixed C/C++ interface that offers a full API to both languages.
|
4116
|
+
** See the top-level README for more information.
|
3838
4117
|
*/
|
3839
4118
|
|
4119
|
+
#ifndef UPB_HANDLERS_H
|
4120
|
+
#define UPB_HANDLERS_H
|
3840
4121
|
|
3841
|
-
#ifndef UPB_STATICINIT_H_
|
3842
|
-
#define UPB_STATICINIT_H_
|
3843
4122
|
|
3844
4123
|
#ifdef __cplusplus
|
3845
|
-
|
3846
|
-
|
4124
|
+
namespace upb {
|
4125
|
+
class BufferHandle;
|
4126
|
+
class BytesHandler;
|
4127
|
+
class HandlerAttributes;
|
4128
|
+
class Handlers;
|
4129
|
+
template <class T> class Handler;
|
4130
|
+
template <class T> struct CanonicalType;
|
4131
|
+
} /* namespace upb */
|
3847
4132
|
#endif
|
3848
4133
|
|
3849
|
-
|
4134
|
+
UPB_DECLARE_TYPE(upb::BufferHandle, upb_bufhandle)
|
4135
|
+
UPB_DECLARE_TYPE(upb::BytesHandler, upb_byteshandler)
|
4136
|
+
UPB_DECLARE_TYPE(upb::HandlerAttributes, upb_handlerattr)
|
4137
|
+
UPB_DECLARE_DERIVED_TYPE(upb::Handlers, upb::RefCounted,
|
4138
|
+
upb_handlers, upb_refcounted)
|
3850
4139
|
|
4140
|
+
/* The maximum depth that the handler graph can have. This is a resource limit
|
4141
|
+
* for the C stack since we sometimes need to recursively traverse the graph.
|
4142
|
+
* Cycles are ok; the traversal will stop when it detects a cycle, but we must
|
4143
|
+
* hit the cycle before the maximum depth is reached.
|
4144
|
+
*
|
4145
|
+
* If having a single static limit is too inflexible, we can add another variant
|
4146
|
+
* of Handlers::Freeze that allows specifying this as a parameter. */
|
4147
|
+
#define UPB_MAX_HANDLER_DEPTH 64
|
3851
4148
|
|
3852
|
-
/*
|
4149
|
+
/* All the different types of handlers that can be registered.
|
4150
|
+
* Only needed for the advanced functions in upb::Handlers. */
|
4151
|
+
typedef enum {
|
4152
|
+
UPB_HANDLER_INT32,
|
4153
|
+
UPB_HANDLER_INT64,
|
4154
|
+
UPB_HANDLER_UINT32,
|
4155
|
+
UPB_HANDLER_UINT64,
|
4156
|
+
UPB_HANDLER_FLOAT,
|
4157
|
+
UPB_HANDLER_DOUBLE,
|
4158
|
+
UPB_HANDLER_BOOL,
|
4159
|
+
UPB_HANDLER_STARTSTR,
|
4160
|
+
UPB_HANDLER_STRING,
|
4161
|
+
UPB_HANDLER_ENDSTR,
|
4162
|
+
UPB_HANDLER_STARTSUBMSG,
|
4163
|
+
UPB_HANDLER_ENDSUBMSG,
|
4164
|
+
UPB_HANDLER_STARTSEQ,
|
4165
|
+
UPB_HANDLER_ENDSEQ
|
4166
|
+
} upb_handlertype_t;
|
3853
4167
|
|
3854
|
-
|
3855
|
-
upb_refcounted base;
|
4168
|
+
#define UPB_HANDLER_MAX (UPB_HANDLER_ENDSEQ+1)
|
3856
4169
|
|
3857
|
-
|
3858
|
-
const upb_filedef* file;
|
3859
|
-
char type; /* A upb_deftype_t (char to save space) */
|
3860
|
-
|
3861
|
-
/* Used as a flag during the def's mutable stage. Must be false unless
|
3862
|
-
* it is currently being used by a function on the stack. This allows
|
3863
|
-
* us to easily determine which defs were passed into the function's
|
3864
|
-
* current invocation. */
|
3865
|
-
bool came_from_user;
|
3866
|
-
};
|
3867
|
-
|
3868
|
-
#define UPB_DEF_INIT(name, type, vtbl, refs, ref2s) \
|
3869
|
-
{ UPB_REFCOUNT_INIT(vtbl, refs, ref2s), name, NULL, type, false }
|
3870
|
-
|
3871
|
-
|
3872
|
-
/* upb_fielddef ***************************************************************/
|
3873
|
-
|
3874
|
-
struct upb_fielddef {
|
3875
|
-
upb_def base;
|
3876
|
-
|
3877
|
-
union {
|
3878
|
-
int64_t sint;
|
3879
|
-
uint64_t uint;
|
3880
|
-
double dbl;
|
3881
|
-
float flt;
|
3882
|
-
void *bytes;
|
3883
|
-
} defaultval;
|
3884
|
-
union {
|
3885
|
-
const upb_msgdef *def; /* If !msg_is_symbolic. */
|
3886
|
-
char *name; /* If msg_is_symbolic. */
|
3887
|
-
} msg;
|
3888
|
-
union {
|
3889
|
-
const upb_def *def; /* If !subdef_is_symbolic. */
|
3890
|
-
char *name; /* If subdef_is_symbolic. */
|
3891
|
-
} sub; /* The msgdef or enumdef for this field, if upb_hassubdef(f). */
|
3892
|
-
bool subdef_is_symbolic;
|
3893
|
-
bool msg_is_symbolic;
|
3894
|
-
const upb_oneofdef *oneof;
|
3895
|
-
bool default_is_string;
|
3896
|
-
bool type_is_set_; /* False until type is explicitly set. */
|
3897
|
-
bool is_extension_;
|
3898
|
-
bool lazy_;
|
3899
|
-
bool packed_;
|
3900
|
-
upb_intfmt_t intfmt;
|
3901
|
-
bool tagdelim;
|
3902
|
-
upb_fieldtype_t type_;
|
3903
|
-
upb_label_t label_;
|
3904
|
-
uint32_t number_;
|
3905
|
-
uint32_t selector_base; /* Used to index into a upb::Handlers table. */
|
3906
|
-
uint32_t index_;
|
3907
|
-
};
|
3908
|
-
|
3909
|
-
extern const struct upb_refcounted_vtbl upb_fielddef_vtbl;
|
3910
|
-
|
3911
|
-
#define UPB_FIELDDEF_INIT(label, type, intfmt, tagdelim, is_extension, lazy, \
|
3912
|
-
packed, name, num, msgdef, subdef, selector_base, \
|
3913
|
-
index, defaultval, refs, ref2s) \
|
3914
|
-
{ \
|
3915
|
-
UPB_DEF_INIT(name, UPB_DEF_FIELD, &upb_fielddef_vtbl, refs, ref2s), \
|
3916
|
-
defaultval, {msgdef}, {subdef}, NULL, false, false, \
|
3917
|
-
type == UPB_TYPE_STRING || type == UPB_TYPE_BYTES, true, is_extension, \
|
3918
|
-
lazy, packed, intfmt, tagdelim, type, label, num, selector_base, index \
|
3919
|
-
}
|
3920
|
-
|
3921
|
-
|
3922
|
-
/* upb_msgdef *****************************************************************/
|
3923
|
-
|
3924
|
-
struct upb_msgdef {
|
3925
|
-
upb_def base;
|
3926
|
-
|
3927
|
-
size_t selector_count;
|
3928
|
-
uint32_t submsg_field_count;
|
3929
|
-
|
3930
|
-
/* Tables for looking up fields by number and name. */
|
3931
|
-
upb_inttable itof; /* int to field */
|
3932
|
-
upb_strtable ntof; /* name to field/oneof */
|
3933
|
-
|
3934
|
-
/* Is this a map-entry message? */
|
3935
|
-
bool map_entry;
|
3936
|
-
|
3937
|
-
/* Whether this message has proto2 or proto3 semantics. */
|
3938
|
-
upb_syntax_t syntax;
|
3939
|
-
|
3940
|
-
/* TODO(haberman): proper extension ranges (there can be multiple). */
|
3941
|
-
};
|
3942
|
-
|
3943
|
-
extern const struct upb_refcounted_vtbl upb_msgdef_vtbl;
|
3944
|
-
|
3945
|
-
/* TODO: also support static initialization of the oneofs table. This will be
|
3946
|
-
* needed if we compile in descriptors that contain oneofs. */
|
3947
|
-
#define UPB_MSGDEF_INIT(name, selector_count, submsg_field_count, itof, ntof, \
|
3948
|
-
map_entry, syntax, refs, ref2s) \
|
3949
|
-
{ \
|
3950
|
-
UPB_DEF_INIT(name, UPB_DEF_MSG, &upb_fielddef_vtbl, refs, ref2s), \
|
3951
|
-
selector_count, submsg_field_count, itof, ntof, map_entry, syntax \
|
3952
|
-
}
|
3953
|
-
|
3954
|
-
|
3955
|
-
/* upb_enumdef ****************************************************************/
|
3956
|
-
|
3957
|
-
struct upb_enumdef {
|
3958
|
-
upb_def base;
|
3959
|
-
|
3960
|
-
upb_strtable ntoi;
|
3961
|
-
upb_inttable iton;
|
3962
|
-
int32_t defaultval;
|
3963
|
-
};
|
3964
|
-
|
3965
|
-
extern const struct upb_refcounted_vtbl upb_enumdef_vtbl;
|
3966
|
-
|
3967
|
-
#define UPB_ENUMDEF_INIT(name, ntoi, iton, defaultval, refs, ref2s) \
|
3968
|
-
{ UPB_DEF_INIT(name, UPB_DEF_ENUM, &upb_enumdef_vtbl, refs, ref2s), ntoi, \
|
3969
|
-
iton, defaultval }
|
3970
|
-
|
3971
|
-
|
3972
|
-
/* upb_oneofdef ***************************************************************/
|
3973
|
-
|
3974
|
-
struct upb_oneofdef {
|
3975
|
-
upb_refcounted base;
|
3976
|
-
|
3977
|
-
uint32_t index; /* Index within oneofs. */
|
3978
|
-
const char *name;
|
3979
|
-
upb_strtable ntof;
|
3980
|
-
upb_inttable itof;
|
3981
|
-
const upb_msgdef *parent;
|
3982
|
-
};
|
3983
|
-
|
3984
|
-
extern const struct upb_refcounted_vtbl upb_oneofdef_vtbl;
|
3985
|
-
|
3986
|
-
#define UPB_ONEOFDEF_INIT(name, ntof, itof, refs, ref2s) \
|
3987
|
-
{ UPB_REFCOUNT_INIT(&upb_oneofdef_vtbl, refs, ref2s), 0, name, ntof, itof }
|
3988
|
-
|
3989
|
-
|
3990
|
-
/* upb_symtab *****************************************************************/
|
3991
|
-
|
3992
|
-
struct upb_symtab {
|
3993
|
-
upb_refcounted base;
|
3994
|
-
|
3995
|
-
upb_strtable symtab;
|
3996
|
-
};
|
3997
|
-
|
3998
|
-
struct upb_filedef {
|
3999
|
-
upb_refcounted base;
|
4000
|
-
|
4001
|
-
const char *name;
|
4002
|
-
const char *package;
|
4003
|
-
upb_syntax_t syntax;
|
4004
|
-
|
4005
|
-
upb_inttable defs;
|
4006
|
-
upb_inttable deps;
|
4007
|
-
};
|
4008
|
-
|
4009
|
-
extern const struct upb_refcounted_vtbl upb_filedef_vtbl;
|
4010
|
-
|
4011
|
-
#endif /* UPB_STATICINIT_H_ */
|
4012
|
-
/*
|
4013
|
-
** upb::Handlers (upb_handlers)
|
4014
|
-
**
|
4015
|
-
** A upb_handlers is like a virtual table for a upb_msgdef. Each field of the
|
4016
|
-
** message can have associated functions that will be called when we are
|
4017
|
-
** parsing or visiting a stream of data. This is similar to how handlers work
|
4018
|
-
** in SAX (the Simple API for XML).
|
4019
|
-
**
|
4020
|
-
** The handlers have no idea where the data is coming from, so a single set of
|
4021
|
-
** handlers could be used with two completely different data sources (for
|
4022
|
-
** example, a parser and a visitor over in-memory objects). This decoupling is
|
4023
|
-
** the most important feature of upb, because it allows parsers and serializers
|
4024
|
-
** to be highly reusable.
|
4025
|
-
**
|
4026
|
-
** This is a mixed C/C++ interface that offers a full API to both languages.
|
4027
|
-
** See the top-level README for more information.
|
4028
|
-
*/
|
4029
|
-
|
4030
|
-
#ifndef UPB_HANDLERS_H
|
4031
|
-
#define UPB_HANDLERS_H
|
4032
|
-
|
4033
|
-
|
4034
|
-
#ifdef __cplusplus
|
4035
|
-
namespace upb {
|
4036
|
-
class BufferHandle;
|
4037
|
-
class BytesHandler;
|
4038
|
-
class HandlerAttributes;
|
4039
|
-
class Handlers;
|
4040
|
-
template <class T> class Handler;
|
4041
|
-
template <class T> struct CanonicalType;
|
4042
|
-
} /* namespace upb */
|
4043
|
-
#endif
|
4044
|
-
|
4045
|
-
UPB_DECLARE_TYPE(upb::BufferHandle, upb_bufhandle)
|
4046
|
-
UPB_DECLARE_TYPE(upb::BytesHandler, upb_byteshandler)
|
4047
|
-
UPB_DECLARE_TYPE(upb::HandlerAttributes, upb_handlerattr)
|
4048
|
-
UPB_DECLARE_DERIVED_TYPE(upb::Handlers, upb::RefCounted,
|
4049
|
-
upb_handlers, upb_refcounted)
|
4050
|
-
|
4051
|
-
/* The maximum depth that the handler graph can have. This is a resource limit
|
4052
|
-
* for the C stack since we sometimes need to recursively traverse the graph.
|
4053
|
-
* Cycles are ok; the traversal will stop when it detects a cycle, but we must
|
4054
|
-
* hit the cycle before the maximum depth is reached.
|
4055
|
-
*
|
4056
|
-
* If having a single static limit is too inflexible, we can add another variant
|
4057
|
-
* of Handlers::Freeze that allows specifying this as a parameter. */
|
4058
|
-
#define UPB_MAX_HANDLER_DEPTH 64
|
4059
|
-
|
4060
|
-
/* All the different types of handlers that can be registered.
|
4061
|
-
* Only needed for the advanced functions in upb::Handlers. */
|
4062
|
-
typedef enum {
|
4063
|
-
UPB_HANDLER_INT32,
|
4064
|
-
UPB_HANDLER_INT64,
|
4065
|
-
UPB_HANDLER_UINT32,
|
4066
|
-
UPB_HANDLER_UINT64,
|
4067
|
-
UPB_HANDLER_FLOAT,
|
4068
|
-
UPB_HANDLER_DOUBLE,
|
4069
|
-
UPB_HANDLER_BOOL,
|
4070
|
-
UPB_HANDLER_STARTSTR,
|
4071
|
-
UPB_HANDLER_STRING,
|
4072
|
-
UPB_HANDLER_ENDSTR,
|
4073
|
-
UPB_HANDLER_STARTSUBMSG,
|
4074
|
-
UPB_HANDLER_ENDSUBMSG,
|
4075
|
-
UPB_HANDLER_STARTSEQ,
|
4076
|
-
UPB_HANDLER_ENDSEQ
|
4077
|
-
} upb_handlertype_t;
|
4078
|
-
|
4079
|
-
#define UPB_HANDLER_MAX (UPB_HANDLER_ENDSEQ+1)
|
4080
|
-
|
4081
|
-
#define UPB_BREAK NULL
|
4170
|
+
#define UPB_BREAK NULL
|
4082
4171
|
|
4083
4172
|
/* A convenient definition for when no closure is needed. */
|
4084
4173
|
extern char _upb_noclosure;
|
@@ -4113,7 +4202,8 @@ UPB_END_EXTERN_C
|
|
4113
4202
|
/* Static selectors for upb::Handlers. */
|
4114
4203
|
#define UPB_STARTMSG_SELECTOR 0
|
4115
4204
|
#define UPB_ENDMSG_SELECTOR 1
|
4116
|
-
#define
|
4205
|
+
#define UPB_UNKNOWN_SELECTOR 2
|
4206
|
+
#define UPB_STATIC_SELECTOR_COUNT 3
|
4117
4207
|
|
4118
4208
|
/* Static selectors for upb::BytesHandler. */
|
4119
4209
|
#define UPB_STARTSTR_SELECTOR 0
|
@@ -4642,6 +4732,8 @@ UPB_BEGIN_EXTERN_C
|
|
4642
4732
|
/* Native C API. */
|
4643
4733
|
|
4644
4734
|
/* Handler function typedefs. */
|
4735
|
+
typedef bool upb_unknown_handlerfunc(void *c, const void *hd, const char *buf,
|
4736
|
+
size_t n);
|
4645
4737
|
typedef bool upb_startmsg_handlerfunc(void *c, const void*);
|
4646
4738
|
typedef bool upb_endmsg_handlerfunc(void *c, const void *, upb_status *status);
|
4647
4739
|
typedef void* upb_startfield_handlerfunc(void *c, const void *hd);
|
@@ -4695,6 +4787,8 @@ const upb_status *upb_handlers_status(upb_handlers *h);
|
|
4695
4787
|
void upb_handlers_clearerr(upb_handlers *h);
|
4696
4788
|
const upb_msgdef *upb_handlers_msgdef(const upb_handlers *h);
|
4697
4789
|
bool upb_handlers_addcleanup(upb_handlers *h, void *p, upb_handlerfree *hfree);
|
4790
|
+
bool upb_handlers_setunknown(upb_handlers *h, upb_unknown_handlerfunc *func,
|
4791
|
+
upb_handlerattr *attr);
|
4698
4792
|
|
4699
4793
|
bool upb_handlers_setstartmsg(upb_handlers *h, upb_startmsg_handlerfunc *func,
|
4700
4794
|
upb_handlerattr *attr);
|
@@ -4803,6 +4897,34 @@ UPB_INLINE upb_selector_t upb_handlers_getendselector(upb_selector_t start) {
|
|
4803
4897
|
uint32_t upb_handlers_selectorbaseoffset(const upb_fielddef *f);
|
4804
4898
|
uint32_t upb_handlers_selectorcount(const upb_fielddef *f);
|
4805
4899
|
|
4900
|
+
|
4901
|
+
/** Message handlers ******************************************************************/
|
4902
|
+
|
4903
|
+
/* These are the handlers used internally by upb_msgfactory_getmergehandlers().
|
4904
|
+
* They write scalar data to a known offset from the message pointer.
|
4905
|
+
*
|
4906
|
+
* These would be trivial for anyone to implement themselves, but it's better
|
4907
|
+
* to use these because some JITs will recognize and specialize these instead
|
4908
|
+
* of actually calling the function. */
|
4909
|
+
|
4910
|
+
/* Sets a handler for the given primitive field that will write the data at the
|
4911
|
+
* given offset. If hasbit > 0, also sets a hasbit at the given bit offset
|
4912
|
+
* (addressing each byte low to high). */
|
4913
|
+
bool upb_msg_setscalarhandler(upb_handlers *h,
|
4914
|
+
const upb_fielddef *f,
|
4915
|
+
size_t offset,
|
4916
|
+
int32_t hasbit);
|
4917
|
+
|
4918
|
+
/* If the given handler is a msghandlers_primitive field, returns true and sets
|
4919
|
+
* *type, *offset and *hasbit. Otherwise returns false. */
|
4920
|
+
bool upb_msg_getscalarhandlerdata(const upb_handlers *h,
|
4921
|
+
upb_selector_t s,
|
4922
|
+
upb_fieldtype_t *type,
|
4923
|
+
size_t *offset,
|
4924
|
+
int32_t *hasbit);
|
4925
|
+
|
4926
|
+
|
4927
|
+
|
4806
4928
|
UPB_END_EXTERN_C
|
4807
4929
|
|
4808
4930
|
/*
|
@@ -6264,6 +6386,18 @@ UPB_INLINE size_t upb_sink_putstring(upb_sink *s, upb_selector_t sel,
|
|
6264
6386
|
return handler(s->closure, hd, buf, n, handle);
|
6265
6387
|
}
|
6266
6388
|
|
6389
|
+
UPB_INLINE bool upb_sink_putunknown(upb_sink *s, const char *buf, size_t n) {
|
6390
|
+
typedef upb_unknown_handlerfunc func;
|
6391
|
+
func *handler;
|
6392
|
+
const void *hd;
|
6393
|
+
if (!s->handlers) return true;
|
6394
|
+
handler = (func *)upb_handlers_gethandler(s->handlers, UPB_UNKNOWN_SELECTOR);
|
6395
|
+
|
6396
|
+
if (!handler) return n;
|
6397
|
+
hd = upb_handlers_gethandlerdata(s->handlers, UPB_UNKNOWN_SELECTOR);
|
6398
|
+
return handler(s->closure, hd, buf, n);
|
6399
|
+
}
|
6400
|
+
|
6267
6401
|
UPB_INLINE bool upb_sink_startmsg(upb_sink *s) {
|
6268
6402
|
typedef upb_startmsg_handlerfunc func;
|
6269
6403
|
func *startmsg;
|
@@ -6468,34 +6602,6 @@ inline bool BufferSource::PutBuffer(const char *buf, size_t len,
|
|
6468
6602
|
#endif
|
6469
6603
|
|
6470
6604
|
#endif
|
6471
|
-
/*
|
6472
|
-
** upb::Message is a representation for protobuf messages.
|
6473
|
-
**
|
6474
|
-
** However it differs from other common representations like
|
6475
|
-
** google::protobuf::Message in one key way: it does not prescribe any
|
6476
|
-
** ownership between messages and submessages, and it relies on the
|
6477
|
-
** client to delete each message/submessage/array/map at the appropriate
|
6478
|
-
** time.
|
6479
|
-
**
|
6480
|
-
** A client can access a upb::Message without knowing anything about
|
6481
|
-
** ownership semantics, but to create or mutate a message a user needs
|
6482
|
-
** to implement the memory management themselves.
|
6483
|
-
**
|
6484
|
-
** Currently all messages, arrays, and maps store a upb_alloc* internally.
|
6485
|
-
** Mutating operations use this when they require dynamically-allocated
|
6486
|
-
** memory. We could potentially eliminate this size overhead later by
|
6487
|
-
** letting the user flip a bit on the factory that prevents this from
|
6488
|
-
** being stored. The user would then need to use separate functions where
|
6489
|
-
** the upb_alloc* is passed explicitly. However for handlers to populate
|
6490
|
-
** such structures, they would need a place to store this upb_alloc* during
|
6491
|
-
** parsing; upb_handlers don't currently have a good way to accommodate this.
|
6492
|
-
**
|
6493
|
-
** TODO: UTF-8 checking?
|
6494
|
-
**/
|
6495
|
-
|
6496
|
-
#ifndef UPB_MSG_H_
|
6497
|
-
#define UPB_MSG_H_
|
6498
|
-
|
6499
6605
|
|
6500
6606
|
#ifdef __cplusplus
|
6501
6607
|
|
@@ -6503,21 +6609,16 @@ namespace upb {
|
|
6503
6609
|
class Array;
|
6504
6610
|
class Map;
|
6505
6611
|
class MapIterator;
|
6506
|
-
class MessageFactory;
|
6507
6612
|
class MessageLayout;
|
6508
|
-
class Visitor;
|
6509
|
-
class VisitorPlan;
|
6510
6613
|
}
|
6511
6614
|
|
6512
6615
|
#endif
|
6513
6616
|
|
6514
|
-
UPB_DECLARE_TYPE(upb::MessageFactory, upb_msgfactory)
|
6515
|
-
UPB_DECLARE_TYPE(upb::MessageLayout, upb_msglayout)
|
6516
|
-
UPB_DECLARE_TYPE(upb::Array, upb_array)
|
6517
6617
|
UPB_DECLARE_TYPE(upb::Map, upb_map)
|
6518
6618
|
UPB_DECLARE_TYPE(upb::MapIterator, upb_mapiter)
|
6519
|
-
|
6520
|
-
|
6619
|
+
|
6620
|
+
struct upb_array;
|
6621
|
+
typedef struct upb_array upb_array;
|
6521
6622
|
|
6522
6623
|
/* TODO(haberman): C++ accessors */
|
6523
6624
|
|
@@ -6528,68 +6629,45 @@ typedef void upb_msg;
|
|
6528
6629
|
|
6529
6630
|
/** upb_msglayout *************************************************************/
|
6530
6631
|
|
6531
|
-
/* upb_msglayout represents the memory layout of a given upb_msgdef.
|
6532
|
-
*
|
6533
|
-
*
|
6534
|
-
|
6535
|
-
/* Gets the factory for this layout */
|
6536
|
-
upb_msgfactory *upb_msglayout_factory(const upb_msglayout *l);
|
6537
|
-
|
6538
|
-
/* Get the msglayout for a submessage. This requires that this field is a
|
6539
|
-
* submessage, ie. upb_fielddef_issubmsg(upb_msglayout_msgdef(l)) == true.
|
6540
|
-
*
|
6541
|
-
* Since map entry messages don't have layouts, if upb_fielddef_ismap(f) == true
|
6542
|
-
* then this function will return the layout for the map's value. It requires
|
6543
|
-
* that the value type of the map field is a submessage. */
|
6544
|
-
const upb_msglayout *upb_msglayout_sublayout(const upb_msglayout *l,
|
6545
|
-
const upb_fielddef *f);
|
6546
|
-
|
6547
|
-
/* Returns the msgdef for this msglayout. */
|
6548
|
-
const upb_msgdef *upb_msglayout_msgdef(const upb_msglayout *l);
|
6549
|
-
|
6632
|
+
/* upb_msglayout represents the memory layout of a given upb_msgdef. The
|
6633
|
+
* members are public so generated code can initialize them, but users MUST NOT
|
6634
|
+
* read or write any of its members. */
|
6550
6635
|
|
6551
|
-
|
6552
|
-
|
6553
|
-
|
6554
|
-
|
6555
|
-
|
6556
|
-
|
6557
|
-
|
6558
|
-
|
6559
|
-
|
6560
|
-
|
6561
|
-
|
6562
|
-
|
6563
|
-
/*
|
6564
|
-
|
6565
|
-
|
6566
|
-
|
6567
|
-
|
6568
|
-
|
6569
|
-
|
6570
|
-
|
6571
|
-
|
6572
|
-
upb_msgfactory *upb_msgfactory_new(const upb_symtab *symtab);
|
6573
|
-
void upb_msgfactory_free(upb_msgfactory *f);
|
6636
|
+
typedef struct {
|
6637
|
+
uint32_t number;
|
6638
|
+
uint16_t offset;
|
6639
|
+
int16_t presence; /* If >0, hasbit_index+1. If <0, oneof_index+1. */
|
6640
|
+
uint16_t submsg_index; /* undefined if descriptortype != MESSAGE or GROUP. */
|
6641
|
+
uint8_t descriptortype;
|
6642
|
+
uint8_t label;
|
6643
|
+
} upb_msglayout_field;
|
6644
|
+
|
6645
|
+
typedef struct upb_msglayout {
|
6646
|
+
const struct upb_msglayout *const* submsgs;
|
6647
|
+
const upb_msglayout_field *fields;
|
6648
|
+
/* Must be aligned to sizeof(void*). Doesn't include internal members like
|
6649
|
+
* unknown fields, extension dict, pointer to msglayout, etc. */
|
6650
|
+
uint16_t size;
|
6651
|
+
uint16_t field_count;
|
6652
|
+
bool extendable;
|
6653
|
+
} upb_msglayout;
|
6654
|
+
|
6655
|
+
|
6656
|
+
/** upb_strview ************************************************************/
|
6574
6657
|
|
6575
|
-
|
6658
|
+
typedef struct {
|
6659
|
+
const char *data;
|
6660
|
+
size_t size;
|
6661
|
+
} upb_strview;
|
6662
|
+
|
6663
|
+
UPB_INLINE upb_strview upb_strview_make(const char *data, size_t size) {
|
6664
|
+
upb_strview ret;
|
6665
|
+
ret.data = data;
|
6666
|
+
ret.size = size;
|
6667
|
+
return ret;
|
6668
|
+
}
|
6576
6669
|
|
6577
|
-
|
6578
|
-
* all require:
|
6579
|
-
*
|
6580
|
-
* - m is in upb_msgfactory_symtab(f)
|
6581
|
-
* - upb_msgdef_mapentry(m) == false (since map messages can't have layouts).
|
6582
|
-
*
|
6583
|
-
* The returned objects will live for as long as the msgfactory does.
|
6584
|
-
*
|
6585
|
-
* TODO(haberman): consider making this thread-safe and take a const
|
6586
|
-
* upb_msgfactory. */
|
6587
|
-
const upb_msglayout *upb_msgfactory_getlayout(upb_msgfactory *f,
|
6588
|
-
const upb_msgdef *m);
|
6589
|
-
const upb_handlers *upb_msgfactory_getmergehandlers(upb_msgfactory *f,
|
6590
|
-
const upb_msgdef *m);
|
6591
|
-
const upb_visitorplan *upb_msgfactory_getvisitorplan(upb_msgfactory *f,
|
6592
|
-
const upb_handlers *h);
|
6670
|
+
#define UPB_STRVIEW_INIT(ptr, len) {ptr, len}
|
6593
6671
|
|
6594
6672
|
|
6595
6673
|
/** upb_msgval ****************************************************************/
|
@@ -6609,10 +6687,7 @@ typedef union {
|
|
6609
6687
|
const upb_msg* msg;
|
6610
6688
|
const upb_array* arr;
|
6611
6689
|
const void* ptr;
|
6612
|
-
|
6613
|
-
const char *ptr;
|
6614
|
-
size_t len;
|
6615
|
-
} str;
|
6690
|
+
upb_strview str;
|
6616
6691
|
} upb_msgval;
|
6617
6692
|
|
6618
6693
|
#define ACCESSORS(name, membername, ctype) \
|
@@ -6639,237 +6714,2015 @@ ACCESSORS(map, map, const upb_map*)
|
|
6639
6714
|
ACCESSORS(msg, msg, const upb_msg*)
|
6640
6715
|
ACCESSORS(ptr, ptr, const void*)
|
6641
6716
|
ACCESSORS(arr, arr, const upb_array*)
|
6717
|
+
ACCESSORS(str, str, upb_strview)
|
6642
6718
|
|
6643
6719
|
#undef ACCESSORS
|
6644
6720
|
|
6645
|
-
UPB_INLINE upb_msgval
|
6646
|
-
|
6647
|
-
ret.str.ptr = ptr;
|
6648
|
-
ret.str.len = len;
|
6649
|
-
return ret;
|
6650
|
-
}
|
6651
|
-
|
6652
|
-
UPB_INLINE const char* upb_msgval_getstr(upb_msgval val) {
|
6653
|
-
return val.str.ptr;
|
6654
|
-
}
|
6655
|
-
|
6656
|
-
UPB_INLINE size_t upb_msgval_getstrlen(upb_msgval val) {
|
6657
|
-
return val.str.len;
|
6721
|
+
UPB_INLINE upb_msgval upb_msgval_makestr(const char *data, size_t size) {
|
6722
|
+
return upb_msgval_str(upb_strview_make(data, size));
|
6658
6723
|
}
|
6659
6724
|
|
6660
6725
|
|
6661
6726
|
/** upb_msg *******************************************************************/
|
6662
6727
|
|
6663
6728
|
/* A upb_msg represents a protobuf message. It always corresponds to a specific
|
6664
|
-
* upb_msglayout, which describes how it is laid out in memory.
|
6665
|
-
|
6666
|
-
|
6667
|
-
*
|
6668
|
-
|
6729
|
+
* upb_msglayout, which describes how it is laid out in memory. */
|
6730
|
+
|
6731
|
+
/* Creates a new message of the given type/layout in this arena. */
|
6732
|
+
upb_msg *upb_msg_new(const upb_msglayout *l, upb_arena *a);
|
6733
|
+
|
6734
|
+
/* Returns the arena for the given message. */
|
6735
|
+
upb_arena *upb_msg_arena(const upb_msg *msg);
|
6736
|
+
|
6737
|
+
void upb_msg_addunknown(upb_msg *msg, const char *data, size_t len);
|
6738
|
+
const char *upb_msg_getunknown(const upb_msg *msg, size_t *len);
|
6739
|
+
|
6740
|
+
/* Read-only message API. Can be safely called by anyone. */
|
6741
|
+
|
6742
|
+
/* Returns the value associated with this field:
|
6743
|
+
* - for scalar fields (including strings), the value directly.
|
6744
|
+
* - return upb_msg*, or upb_map* for msg/map.
|
6745
|
+
* If the field is unset for these field types, returns NULL.
|
6669
6746
|
*
|
6670
|
-
*
|
6671
|
-
*
|
6747
|
+
* TODO(haberman): should we let users store cached array/map/msg
|
6748
|
+
* pointers here for fields that are unset? Could be useful for the
|
6749
|
+
* strongly-owned submessage model (ie. generated C API that doesn't use
|
6750
|
+
* arenas).
|
6751
|
+
*/
|
6752
|
+
upb_msgval upb_msg_get(const upb_msg *msg,
|
6753
|
+
int field_index,
|
6754
|
+
const upb_msglayout *l);
|
6755
|
+
|
6756
|
+
/* May only be called for fields where upb_fielddef_haspresence(f) == true. */
|
6757
|
+
bool upb_msg_has(const upb_msg *msg,
|
6758
|
+
int field_index,
|
6759
|
+
const upb_msglayout *l);
|
6760
|
+
|
6761
|
+
/* Mutable message API. May only be called by the owner of the message who
|
6762
|
+
* knows its ownership scheme and how to keep it consistent. */
|
6763
|
+
|
6764
|
+
/* Sets the given field to the given value. Does not perform any memory
|
6765
|
+
* management: if you overwrite a pointer to a msg/array/map/string without
|
6766
|
+
* cleaning it up (or using an arena) it will leak.
|
6767
|
+
*/
|
6768
|
+
void upb_msg_set(upb_msg *msg,
|
6769
|
+
int field_index,
|
6770
|
+
upb_msgval val,
|
6771
|
+
const upb_msglayout *l);
|
6772
|
+
|
6773
|
+
/* For a primitive field, set it back to its default. For repeated, string, and
|
6774
|
+
* submessage fields set it back to NULL. This could involve releasing some
|
6775
|
+
* internal memory (for example, from an extension dictionary), but it is not
|
6776
|
+
* recursive in any way and will not recover any memory that may be used by
|
6777
|
+
* arrays/maps/strings/msgs that this field may have pointed to.
|
6672
6778
|
*/
|
6779
|
+
bool upb_msg_clearfield(upb_msg *msg,
|
6780
|
+
int field_index,
|
6781
|
+
const upb_msglayout *l);
|
6782
|
+
|
6783
|
+
/* TODO(haberman): copyfrom()/mergefrom()? */
|
6784
|
+
|
6785
|
+
|
6786
|
+
/** upb_array *****************************************************************/
|
6787
|
+
|
6788
|
+
/* A upb_array stores data for a repeated field. The memory management
|
6789
|
+
* semantics are the same as upb_msg. A upb_array allocates dynamic
|
6790
|
+
* memory internally for the array elements. */
|
6791
|
+
|
6792
|
+
upb_array *upb_array_new(upb_fieldtype_t type, upb_arena *a);
|
6793
|
+
upb_fieldtype_t upb_array_type(const upb_array *arr);
|
6794
|
+
|
6795
|
+
/* Read-only interface. Safe for anyone to call. */
|
6796
|
+
|
6797
|
+
size_t upb_array_size(const upb_array *arr);
|
6798
|
+
upb_msgval upb_array_get(const upb_array *arr, size_t i);
|
6799
|
+
|
6800
|
+
/* Write interface. May only be called by the message's owner who can enforce
|
6801
|
+
* its memory management invariants. */
|
6802
|
+
|
6803
|
+
bool upb_array_set(upb_array *arr, size_t i, upb_msgval val);
|
6804
|
+
|
6805
|
+
|
6806
|
+
/** upb_map *******************************************************************/
|
6807
|
+
|
6808
|
+
/* A upb_map stores data for a map field. The memory management semantics are
|
6809
|
+
* the same as upb_msg, with one notable exception. upb_map will internally
|
6810
|
+
* store a copy of all string keys, but *not* any string values or submessages.
|
6811
|
+
* So you must ensure that any string or message values outlive the map, and you
|
6812
|
+
* must delete them manually when they are no longer required. */
|
6813
|
+
|
6814
|
+
upb_map *upb_map_new(upb_fieldtype_t ktype, upb_fieldtype_t vtype,
|
6815
|
+
upb_arena *a);
|
6816
|
+
|
6817
|
+
/* Read-only interface. Safe for anyone to call. */
|
6818
|
+
|
6819
|
+
size_t upb_map_size(const upb_map *map);
|
6820
|
+
upb_fieldtype_t upb_map_keytype(const upb_map *map);
|
6821
|
+
upb_fieldtype_t upb_map_valuetype(const upb_map *map);
|
6822
|
+
bool upb_map_get(const upb_map *map, upb_msgval key, upb_msgval *val);
|
6823
|
+
|
6824
|
+
/* Write interface. May only be called by the message's owner who can enforce
|
6825
|
+
* its memory management invariants. */
|
6826
|
+
|
6827
|
+
/* Sets or overwrites an entry in the map. Return value indicates whether
|
6828
|
+
* the operation succeeded or failed with OOM, and also whether an existing
|
6829
|
+
* key was replaced or not. */
|
6830
|
+
bool upb_map_set(upb_map *map,
|
6831
|
+
upb_msgval key, upb_msgval val,
|
6832
|
+
upb_msgval *valremoved);
|
6833
|
+
|
6834
|
+
/* Deletes an entry in the map. Returns true if the key was present. */
|
6835
|
+
bool upb_map_del(upb_map *map, upb_msgval key);
|
6836
|
+
|
6837
|
+
|
6838
|
+
/** upb_mapiter ***************************************************************/
|
6839
|
+
|
6840
|
+
/* For iterating over a map. Map iterators are invalidated by mutations to the
|
6841
|
+
* map, but an invalidated iterator will never return junk or crash the process.
|
6842
|
+
* An invalidated iterator may return entries that were already returned though,
|
6843
|
+
* and if you keep invalidating the iterator during iteration, the program may
|
6844
|
+
* enter an infinite loop. */
|
6845
|
+
|
6846
|
+
size_t upb_mapiter_sizeof();
|
6847
|
+
|
6848
|
+
void upb_mapiter_begin(upb_mapiter *i, const upb_map *t);
|
6849
|
+
upb_mapiter *upb_mapiter_new(const upb_map *t, upb_alloc *a);
|
6850
|
+
void upb_mapiter_free(upb_mapiter *i, upb_alloc *a);
|
6851
|
+
void upb_mapiter_next(upb_mapiter *i);
|
6852
|
+
bool upb_mapiter_done(const upb_mapiter *i);
|
6853
|
+
|
6854
|
+
upb_msgval upb_mapiter_key(const upb_mapiter *i);
|
6855
|
+
upb_msgval upb_mapiter_value(const upb_mapiter *i);
|
6856
|
+
void upb_mapiter_setdone(upb_mapiter *i);
|
6857
|
+
bool upb_mapiter_isequal(const upb_mapiter *i1, const upb_mapiter *i2);
|
6673
6858
|
|
6674
|
-
|
6675
|
-
size_t upb_msg_sizeof(const upb_msglayout *l);
|
6859
|
+
UPB_END_EXTERN_C
|
6676
6860
|
|
6677
|
-
/*
|
6678
|
-
|
6679
|
-
*
|
6680
|
-
*
|
6861
|
+
#endif /* UPB_MSG_H_ */
|
6862
|
+
/* This file was generated by upbc (the upb compiler) from the input
|
6863
|
+
* file:
|
6864
|
+
*
|
6865
|
+
* google/protobuf/descriptor.proto
|
6681
6866
|
*
|
6682
|
-
*
|
6683
|
-
*
|
6684
|
-
|
6685
|
-
|
6686
|
-
|
6867
|
+
* Do not edit -- your changes will be discarded when the file is
|
6868
|
+
* regenerated. */
|
6869
|
+
|
6870
|
+
#ifndef GOOGLE_PROTOBUF_DESCRIPTOR_PROTO_UPB_H_
|
6871
|
+
#define GOOGLE_PROTOBUF_DESCRIPTOR_PROTO_UPB_H_
|
6872
|
+
|
6873
|
+
/*
|
6874
|
+
** Functions for use by generated code. These are not public and users must
|
6875
|
+
** not call them directly.
|
6876
|
+
*/
|
6877
|
+
|
6878
|
+
#ifndef UPB_GENERATED_UTIL_H_
|
6879
|
+
#define UPB_GENERATED_UTIL_H_
|
6880
|
+
|
6881
|
+
#include <stdint.h>
|
6882
|
+
/*
|
6883
|
+
** structs.int.h: structures definitions that are internal to upb.
|
6884
|
+
*/
|
6885
|
+
|
6886
|
+
#ifndef UPB_STRUCTS_H_
|
6887
|
+
#define UPB_STRUCTS_H_
|
6888
|
+
|
6889
|
+
|
6890
|
+
struct upb_array {
|
6891
|
+
upb_fieldtype_t type;
|
6892
|
+
uint8_t element_size;
|
6893
|
+
void *data; /* Each element is element_size. */
|
6894
|
+
size_t len; /* Measured in elements. */
|
6895
|
+
size_t size; /* Measured in elements. */
|
6896
|
+
upb_arena *arena;
|
6897
|
+
};
|
6898
|
+
|
6899
|
+
#endif /* UPB_STRUCTS_H_ */
|
6900
|
+
|
6901
|
+
|
6902
|
+
#define PTR_AT(msg, ofs, type) (type*)((const char*)msg + ofs)
|
6903
|
+
|
6904
|
+
UPB_INLINE const void *_upb_array_accessor(const void *msg, size_t ofs,
|
6905
|
+
size_t *size) {
|
6906
|
+
const upb_array *arr = *PTR_AT(msg, ofs, const upb_array*);
|
6907
|
+
if (arr) {
|
6908
|
+
if (size) *size = arr->size;
|
6909
|
+
return arr->data;
|
6910
|
+
} else {
|
6911
|
+
if (size) *size = 0;
|
6912
|
+
return NULL;
|
6913
|
+
}
|
6914
|
+
}
|
6915
|
+
|
6916
|
+
UPB_INLINE void *_upb_array_mutable_accessor(void *msg, size_t ofs,
|
6917
|
+
size_t *size) {
|
6918
|
+
upb_array *arr = *PTR_AT(msg, ofs, upb_array*);
|
6919
|
+
if (arr) {
|
6920
|
+
if (size) *size = arr->size;
|
6921
|
+
return arr->data;
|
6922
|
+
} else {
|
6923
|
+
if (size) *size = 0;
|
6924
|
+
return NULL;
|
6925
|
+
}
|
6926
|
+
}
|
6927
|
+
|
6928
|
+
/* TODO(haberman): this is a mess. It will improve when upb_array no longer
|
6929
|
+
* carries reflective state (type, elem_size). */
|
6930
|
+
UPB_INLINE void *_upb_array_resize_accessor(void *msg, size_t ofs, size_t size,
|
6931
|
+
size_t elem_size,
|
6932
|
+
upb_fieldtype_t type,
|
6933
|
+
upb_arena *arena) {
|
6934
|
+
upb_array *arr = *PTR_AT(msg, ofs, upb_array*);
|
6935
|
+
|
6936
|
+
if (!arr) {
|
6937
|
+
arr = upb_array_new(type, arena);
|
6938
|
+
if (!arr) return NULL;
|
6939
|
+
*PTR_AT(msg, ofs, upb_array*) = arr;
|
6940
|
+
}
|
6941
|
+
|
6942
|
+
if (size > arr->size) {
|
6943
|
+
size_t new_size = UPB_MAX(arr->size, 4);
|
6944
|
+
size_t old_bytes = arr->size * elem_size;
|
6945
|
+
size_t new_bytes;
|
6946
|
+
upb_alloc *alloc = upb_arena_alloc(arr->arena);
|
6947
|
+
while (new_size < size) new_size *= 2;
|
6948
|
+
new_bytes = new_size * elem_size;
|
6949
|
+
arr->data = upb_realloc(alloc, arr->data, old_bytes, new_bytes);
|
6950
|
+
if (!arr->data) {
|
6951
|
+
return NULL;
|
6952
|
+
}
|
6953
|
+
arr->size = new_size;
|
6954
|
+
}
|
6955
|
+
|
6956
|
+
arr->len = size;
|
6957
|
+
return arr->data;
|
6958
|
+
}
|
6959
|
+
|
6960
|
+
UPB_INLINE bool _upb_array_append_accessor(void *msg, size_t ofs,
|
6961
|
+
size_t elem_size,
|
6962
|
+
upb_fieldtype_t type,
|
6963
|
+
const void *value,
|
6964
|
+
upb_arena *arena) {
|
6965
|
+
upb_array *arr = *PTR_AT(msg, ofs, upb_array*);
|
6966
|
+
size_t i = arr ? arr->len : 0;
|
6967
|
+
void *data =
|
6968
|
+
_upb_array_resize_accessor(msg, ofs, i + 1, elem_size, type, arena);
|
6969
|
+
if (!data) return false;
|
6970
|
+
memcpy(PTR_AT(data, i * elem_size, char), value, elem_size);
|
6971
|
+
return true;
|
6972
|
+
}
|
6973
|
+
|
6974
|
+
UPB_INLINE bool _upb_has_field(const void *msg, size_t idx) {
|
6975
|
+
return (*PTR_AT(msg, idx / 8, const char) & (idx % 8)) != 0;
|
6976
|
+
}
|
6977
|
+
|
6978
|
+
UPB_INLINE bool _upb_sethas(const void *msg, size_t idx) {
|
6979
|
+
return (*PTR_AT(msg, idx / 8, char)) |= (1 << (idx % 8));
|
6980
|
+
}
|
6981
|
+
|
6982
|
+
UPB_INLINE bool _upb_clearhas(const void *msg, size_t idx) {
|
6983
|
+
return (*PTR_AT(msg, idx / 8, char)) &= ~(1 << (idx % 8));
|
6984
|
+
}
|
6985
|
+
|
6986
|
+
UPB_INLINE bool _upb_has_oneof_field(const void *msg, size_t case_ofs, int32_t num) {
|
6987
|
+
return *PTR_AT(msg, case_ofs, int32_t) == num;
|
6988
|
+
}
|
6989
|
+
|
6990
|
+
#undef PTR_AT
|
6991
|
+
|
6992
|
+
#endif /* UPB_GENERATED_UTIL_H_ */
|
6993
|
+
|
6994
|
+
|
6995
|
+
/*
|
6996
|
+
** upb_decode: parsing into a upb_msg using a upb_msglayout.
|
6997
|
+
*/
|
6998
|
+
|
6999
|
+
#ifndef UPB_DECODE_H_
|
7000
|
+
#define UPB_DECODE_H_
|
7001
|
+
|
7002
|
+
|
7003
|
+
UPB_BEGIN_EXTERN_C
|
7004
|
+
|
7005
|
+
bool upb_decode(upb_strview buf, upb_msg *msg, const upb_msglayout *l);
|
7006
|
+
|
7007
|
+
UPB_END_EXTERN_C
|
7008
|
+
|
7009
|
+
#endif /* UPB_DECODE_H_ */
|
7010
|
+
/*
|
7011
|
+
** upb_encode: parsing into a upb_msg using a upb_msglayout.
|
7012
|
+
*/
|
7013
|
+
|
7014
|
+
#ifndef UPB_ENCODE_H_
|
7015
|
+
#define UPB_ENCODE_H_
|
7016
|
+
|
7017
|
+
|
7018
|
+
UPB_BEGIN_EXTERN_C
|
7019
|
+
|
7020
|
+
char *upb_encode(const void *msg, const upb_msglayout *l, upb_arena *arena,
|
7021
|
+
size_t *size);
|
7022
|
+
|
7023
|
+
UPB_END_EXTERN_C
|
7024
|
+
|
7025
|
+
#endif /* UPB_ENCODE_H_ */
|
7026
|
+
UPB_BEGIN_EXTERN_C
|
7027
|
+
|
7028
|
+
struct google_protobuf_FileDescriptorSet;
|
7029
|
+
struct google_protobuf_FileDescriptorProto;
|
7030
|
+
struct google_protobuf_DescriptorProto;
|
7031
|
+
struct google_protobuf_DescriptorProto_ExtensionRange;
|
7032
|
+
struct google_protobuf_DescriptorProto_ReservedRange;
|
7033
|
+
struct google_protobuf_ExtensionRangeOptions;
|
7034
|
+
struct google_protobuf_FieldDescriptorProto;
|
7035
|
+
struct google_protobuf_OneofDescriptorProto;
|
7036
|
+
struct google_protobuf_EnumDescriptorProto;
|
7037
|
+
struct google_protobuf_EnumDescriptorProto_EnumReservedRange;
|
7038
|
+
struct google_protobuf_EnumValueDescriptorProto;
|
7039
|
+
struct google_protobuf_ServiceDescriptorProto;
|
7040
|
+
struct google_protobuf_MethodDescriptorProto;
|
7041
|
+
struct google_protobuf_FileOptions;
|
7042
|
+
struct google_protobuf_MessageOptions;
|
7043
|
+
struct google_protobuf_FieldOptions;
|
7044
|
+
struct google_protobuf_OneofOptions;
|
7045
|
+
struct google_protobuf_EnumOptions;
|
7046
|
+
struct google_protobuf_EnumValueOptions;
|
7047
|
+
struct google_protobuf_ServiceOptions;
|
7048
|
+
struct google_protobuf_MethodOptions;
|
7049
|
+
struct google_protobuf_UninterpretedOption;
|
7050
|
+
struct google_protobuf_UninterpretedOption_NamePart;
|
7051
|
+
struct google_protobuf_SourceCodeInfo;
|
7052
|
+
struct google_protobuf_SourceCodeInfo_Location;
|
7053
|
+
struct google_protobuf_GeneratedCodeInfo;
|
7054
|
+
struct google_protobuf_GeneratedCodeInfo_Annotation;
|
7055
|
+
typedef struct google_protobuf_FileDescriptorSet google_protobuf_FileDescriptorSet;
|
7056
|
+
typedef struct google_protobuf_FileDescriptorProto google_protobuf_FileDescriptorProto;
|
7057
|
+
typedef struct google_protobuf_DescriptorProto google_protobuf_DescriptorProto;
|
7058
|
+
typedef struct google_protobuf_DescriptorProto_ExtensionRange google_protobuf_DescriptorProto_ExtensionRange;
|
7059
|
+
typedef struct google_protobuf_DescriptorProto_ReservedRange google_protobuf_DescriptorProto_ReservedRange;
|
7060
|
+
typedef struct google_protobuf_ExtensionRangeOptions google_protobuf_ExtensionRangeOptions;
|
7061
|
+
typedef struct google_protobuf_FieldDescriptorProto google_protobuf_FieldDescriptorProto;
|
7062
|
+
typedef struct google_protobuf_OneofDescriptorProto google_protobuf_OneofDescriptorProto;
|
7063
|
+
typedef struct google_protobuf_EnumDescriptorProto google_protobuf_EnumDescriptorProto;
|
7064
|
+
typedef struct google_protobuf_EnumDescriptorProto_EnumReservedRange google_protobuf_EnumDescriptorProto_EnumReservedRange;
|
7065
|
+
typedef struct google_protobuf_EnumValueDescriptorProto google_protobuf_EnumValueDescriptorProto;
|
7066
|
+
typedef struct google_protobuf_ServiceDescriptorProto google_protobuf_ServiceDescriptorProto;
|
7067
|
+
typedef struct google_protobuf_MethodDescriptorProto google_protobuf_MethodDescriptorProto;
|
7068
|
+
typedef struct google_protobuf_FileOptions google_protobuf_FileOptions;
|
7069
|
+
typedef struct google_protobuf_MessageOptions google_protobuf_MessageOptions;
|
7070
|
+
typedef struct google_protobuf_FieldOptions google_protobuf_FieldOptions;
|
7071
|
+
typedef struct google_protobuf_OneofOptions google_protobuf_OneofOptions;
|
7072
|
+
typedef struct google_protobuf_EnumOptions google_protobuf_EnumOptions;
|
7073
|
+
typedef struct google_protobuf_EnumValueOptions google_protobuf_EnumValueOptions;
|
7074
|
+
typedef struct google_protobuf_ServiceOptions google_protobuf_ServiceOptions;
|
7075
|
+
typedef struct google_protobuf_MethodOptions google_protobuf_MethodOptions;
|
7076
|
+
typedef struct google_protobuf_UninterpretedOption google_protobuf_UninterpretedOption;
|
7077
|
+
typedef struct google_protobuf_UninterpretedOption_NamePart google_protobuf_UninterpretedOption_NamePart;
|
7078
|
+
typedef struct google_protobuf_SourceCodeInfo google_protobuf_SourceCodeInfo;
|
7079
|
+
typedef struct google_protobuf_SourceCodeInfo_Location google_protobuf_SourceCodeInfo_Location;
|
7080
|
+
typedef struct google_protobuf_GeneratedCodeInfo google_protobuf_GeneratedCodeInfo;
|
7081
|
+
typedef struct google_protobuf_GeneratedCodeInfo_Annotation google_protobuf_GeneratedCodeInfo_Annotation;
|
7082
|
+
extern const upb_msglayout google_protobuf_FileDescriptorSet_msginit;
|
7083
|
+
extern const upb_msglayout google_protobuf_FileDescriptorProto_msginit;
|
7084
|
+
extern const upb_msglayout google_protobuf_DescriptorProto_msginit;
|
7085
|
+
extern const upb_msglayout google_protobuf_DescriptorProto_ExtensionRange_msginit;
|
7086
|
+
extern const upb_msglayout google_protobuf_DescriptorProto_ReservedRange_msginit;
|
7087
|
+
extern const upb_msglayout google_protobuf_ExtensionRangeOptions_msginit;
|
7088
|
+
extern const upb_msglayout google_protobuf_FieldDescriptorProto_msginit;
|
7089
|
+
extern const upb_msglayout google_protobuf_OneofDescriptorProto_msginit;
|
7090
|
+
extern const upb_msglayout google_protobuf_EnumDescriptorProto_msginit;
|
7091
|
+
extern const upb_msglayout google_protobuf_EnumDescriptorProto_EnumReservedRange_msginit;
|
7092
|
+
extern const upb_msglayout google_protobuf_EnumValueDescriptorProto_msginit;
|
7093
|
+
extern const upb_msglayout google_protobuf_ServiceDescriptorProto_msginit;
|
7094
|
+
extern const upb_msglayout google_protobuf_MethodDescriptorProto_msginit;
|
7095
|
+
extern const upb_msglayout google_protobuf_FileOptions_msginit;
|
7096
|
+
extern const upb_msglayout google_protobuf_MessageOptions_msginit;
|
7097
|
+
extern const upb_msglayout google_protobuf_FieldOptions_msginit;
|
7098
|
+
extern const upb_msglayout google_protobuf_OneofOptions_msginit;
|
7099
|
+
extern const upb_msglayout google_protobuf_EnumOptions_msginit;
|
7100
|
+
extern const upb_msglayout google_protobuf_EnumValueOptions_msginit;
|
7101
|
+
extern const upb_msglayout google_protobuf_ServiceOptions_msginit;
|
7102
|
+
extern const upb_msglayout google_protobuf_MethodOptions_msginit;
|
7103
|
+
extern const upb_msglayout google_protobuf_UninterpretedOption_msginit;
|
7104
|
+
extern const upb_msglayout google_protobuf_UninterpretedOption_NamePart_msginit;
|
7105
|
+
extern const upb_msglayout google_protobuf_SourceCodeInfo_msginit;
|
7106
|
+
extern const upb_msglayout google_protobuf_SourceCodeInfo_Location_msginit;
|
7107
|
+
extern const upb_msglayout google_protobuf_GeneratedCodeInfo_msginit;
|
7108
|
+
extern const upb_msglayout google_protobuf_GeneratedCodeInfo_Annotation_msginit;
|
7109
|
+
|
7110
|
+
/* Enums */
|
7111
|
+
|
7112
|
+
typedef enum {
|
7113
|
+
google_protobuf_FieldDescriptorProto_LABEL_OPTIONAL = 1,
|
7114
|
+
google_protobuf_FieldDescriptorProto_LABEL_REQUIRED = 2,
|
7115
|
+
google_protobuf_FieldDescriptorProto_LABEL_REPEATED = 3
|
7116
|
+
} google_protobuf_FieldDescriptorProto_Label;
|
7117
|
+
|
7118
|
+
typedef enum {
|
7119
|
+
google_protobuf_FieldDescriptorProto_TYPE_DOUBLE = 1,
|
7120
|
+
google_protobuf_FieldDescriptorProto_TYPE_FLOAT = 2,
|
7121
|
+
google_protobuf_FieldDescriptorProto_TYPE_INT64 = 3,
|
7122
|
+
google_protobuf_FieldDescriptorProto_TYPE_UINT64 = 4,
|
7123
|
+
google_protobuf_FieldDescriptorProto_TYPE_INT32 = 5,
|
7124
|
+
google_protobuf_FieldDescriptorProto_TYPE_FIXED64 = 6,
|
7125
|
+
google_protobuf_FieldDescriptorProto_TYPE_FIXED32 = 7,
|
7126
|
+
google_protobuf_FieldDescriptorProto_TYPE_BOOL = 8,
|
7127
|
+
google_protobuf_FieldDescriptorProto_TYPE_STRING = 9,
|
7128
|
+
google_protobuf_FieldDescriptorProto_TYPE_GROUP = 10,
|
7129
|
+
google_protobuf_FieldDescriptorProto_TYPE_MESSAGE = 11,
|
7130
|
+
google_protobuf_FieldDescriptorProto_TYPE_BYTES = 12,
|
7131
|
+
google_protobuf_FieldDescriptorProto_TYPE_UINT32 = 13,
|
7132
|
+
google_protobuf_FieldDescriptorProto_TYPE_ENUM = 14,
|
7133
|
+
google_protobuf_FieldDescriptorProto_TYPE_SFIXED32 = 15,
|
7134
|
+
google_protobuf_FieldDescriptorProto_TYPE_SFIXED64 = 16,
|
7135
|
+
google_protobuf_FieldDescriptorProto_TYPE_SINT32 = 17,
|
7136
|
+
google_protobuf_FieldDescriptorProto_TYPE_SINT64 = 18
|
7137
|
+
} google_protobuf_FieldDescriptorProto_Type;
|
7138
|
+
|
7139
|
+
typedef enum {
|
7140
|
+
google_protobuf_FieldOptions_STRING = 0,
|
7141
|
+
google_protobuf_FieldOptions_CORD = 1,
|
7142
|
+
google_protobuf_FieldOptions_STRING_PIECE = 2
|
7143
|
+
} google_protobuf_FieldOptions_CType;
|
7144
|
+
|
7145
|
+
typedef enum {
|
7146
|
+
google_protobuf_FieldOptions_JS_NORMAL = 0,
|
7147
|
+
google_protobuf_FieldOptions_JS_STRING = 1,
|
7148
|
+
google_protobuf_FieldOptions_JS_NUMBER = 2
|
7149
|
+
} google_protobuf_FieldOptions_JSType;
|
7150
|
+
|
7151
|
+
typedef enum {
|
7152
|
+
google_protobuf_FileOptions_SPEED = 1,
|
7153
|
+
google_protobuf_FileOptions_CODE_SIZE = 2,
|
7154
|
+
google_protobuf_FileOptions_LITE_RUNTIME = 3
|
7155
|
+
} google_protobuf_FileOptions_OptimizeMode;
|
7156
|
+
|
7157
|
+
typedef enum {
|
7158
|
+
google_protobuf_MethodOptions_IDEMPOTENCY_UNKNOWN = 0,
|
7159
|
+
google_protobuf_MethodOptions_NO_SIDE_EFFECTS = 1,
|
7160
|
+
google_protobuf_MethodOptions_IDEMPOTENT = 2
|
7161
|
+
} google_protobuf_MethodOptions_IdempotencyLevel;
|
7162
|
+
|
7163
|
+
/* google.protobuf.FileDescriptorSet */
|
7164
|
+
|
7165
|
+
UPB_INLINE google_protobuf_FileDescriptorSet *google_protobuf_FileDescriptorSet_new(upb_arena *arena) {
|
7166
|
+
return (google_protobuf_FileDescriptorSet *)upb_msg_new(&google_protobuf_FileDescriptorSet_msginit, arena);
|
7167
|
+
}
|
7168
|
+
UPB_INLINE google_protobuf_FileDescriptorSet *google_protobuf_FileDescriptorSet_parsenew(upb_strview buf, upb_arena *arena) {
|
7169
|
+
google_protobuf_FileDescriptorSet *ret = google_protobuf_FileDescriptorSet_new(arena);
|
7170
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_FileDescriptorSet_msginit)) ? ret : NULL;
|
7171
|
+
}
|
7172
|
+
UPB_INLINE char *google_protobuf_FileDescriptorSet_serialize(const google_protobuf_FileDescriptorSet *msg, upb_arena *arena, size_t *len) {
|
7173
|
+
return upb_encode(msg, &google_protobuf_FileDescriptorSet_msginit, arena, len);
|
7174
|
+
}
|
7175
|
+
|
7176
|
+
UPB_INLINE const google_protobuf_FileDescriptorProto* const* google_protobuf_FileDescriptorSet_file(const google_protobuf_FileDescriptorSet *msg, size_t *len) { return (const google_protobuf_FileDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
|
7177
|
+
|
7178
|
+
UPB_INLINE google_protobuf_FileDescriptorProto** google_protobuf_FileDescriptorSet_mutable_file(google_protobuf_FileDescriptorSet *msg, size_t *len) {
|
7179
|
+
return (google_protobuf_FileDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
|
7180
|
+
}
|
7181
|
+
UPB_INLINE google_protobuf_FileDescriptorProto** google_protobuf_FileDescriptorSet_resize_file(google_protobuf_FileDescriptorSet *msg, size_t len, upb_arena *arena) {
|
7182
|
+
return (google_protobuf_FileDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7183
|
+
}
|
7184
|
+
UPB_INLINE struct google_protobuf_FileDescriptorProto* google_protobuf_FileDescriptorSet_add_file(google_protobuf_FileDescriptorSet *msg, upb_arena *arena) {
|
7185
|
+
struct google_protobuf_FileDescriptorProto* sub = (struct google_protobuf_FileDescriptorProto*)upb_msg_new(&google_protobuf_FileDescriptorProto_msginit, arena);
|
7186
|
+
bool ok = _upb_array_append_accessor(
|
7187
|
+
msg, UPB_SIZE(0, 0), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7188
|
+
if (!ok) return NULL;
|
7189
|
+
return sub;
|
7190
|
+
}
|
7191
|
+
|
7192
|
+
|
7193
|
+
/* google.protobuf.FileDescriptorProto */
|
7194
|
+
|
7195
|
+
UPB_INLINE google_protobuf_FileDescriptorProto *google_protobuf_FileDescriptorProto_new(upb_arena *arena) {
|
7196
|
+
return (google_protobuf_FileDescriptorProto *)upb_msg_new(&google_protobuf_FileDescriptorProto_msginit, arena);
|
7197
|
+
}
|
7198
|
+
UPB_INLINE google_protobuf_FileDescriptorProto *google_protobuf_FileDescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7199
|
+
google_protobuf_FileDescriptorProto *ret = google_protobuf_FileDescriptorProto_new(arena);
|
7200
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_FileDescriptorProto_msginit)) ? ret : NULL;
|
7201
|
+
}
|
7202
|
+
UPB_INLINE char *google_protobuf_FileDescriptorProto_serialize(const google_protobuf_FileDescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7203
|
+
return upb_encode(msg, &google_protobuf_FileDescriptorProto_msginit, arena, len);
|
7204
|
+
}
|
7205
|
+
|
7206
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_has_name(const google_protobuf_FileDescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7207
|
+
UPB_INLINE upb_strview google_protobuf_FileDescriptorProto_name(const google_protobuf_FileDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
7208
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_has_package(const google_protobuf_FileDescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7209
|
+
UPB_INLINE upb_strview google_protobuf_FileDescriptorProto_package(const google_protobuf_FileDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 24)); }
|
7210
|
+
UPB_INLINE upb_strview const* google_protobuf_FileDescriptorProto_dependency(const google_protobuf_FileDescriptorProto *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(36, 72), len); }
|
7211
|
+
UPB_INLINE const google_protobuf_DescriptorProto* const* google_protobuf_FileDescriptorProto_message_type(const google_protobuf_FileDescriptorProto *msg, size_t *len) { return (const google_protobuf_DescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(40, 80), len); }
|
7212
|
+
UPB_INLINE const google_protobuf_EnumDescriptorProto* const* google_protobuf_FileDescriptorProto_enum_type(const google_protobuf_FileDescriptorProto *msg, size_t *len) { return (const google_protobuf_EnumDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(44, 88), len); }
|
7213
|
+
UPB_INLINE const google_protobuf_ServiceDescriptorProto* const* google_protobuf_FileDescriptorProto_service(const google_protobuf_FileDescriptorProto *msg, size_t *len) { return (const google_protobuf_ServiceDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(48, 96), len); }
|
7214
|
+
UPB_INLINE const google_protobuf_FieldDescriptorProto* const* google_protobuf_FileDescriptorProto_extension(const google_protobuf_FileDescriptorProto *msg, size_t *len) { return (const google_protobuf_FieldDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(52, 104), len); }
|
7215
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_has_options(const google_protobuf_FileDescriptorProto *msg) { return _upb_has_field(msg, 3); }
|
7216
|
+
UPB_INLINE const google_protobuf_FileOptions* google_protobuf_FileDescriptorProto_options(const google_protobuf_FileDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_FileOptions*, UPB_SIZE(28, 56)); }
|
7217
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_has_source_code_info(const google_protobuf_FileDescriptorProto *msg) { return _upb_has_field(msg, 4); }
|
7218
|
+
UPB_INLINE const google_protobuf_SourceCodeInfo* google_protobuf_FileDescriptorProto_source_code_info(const google_protobuf_FileDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_SourceCodeInfo*, UPB_SIZE(32, 64)); }
|
7219
|
+
UPB_INLINE int32_t const* google_protobuf_FileDescriptorProto_public_dependency(const google_protobuf_FileDescriptorProto *msg, size_t *len) { return (int32_t const*)_upb_array_accessor(msg, UPB_SIZE(56, 112), len); }
|
7220
|
+
UPB_INLINE int32_t const* google_protobuf_FileDescriptorProto_weak_dependency(const google_protobuf_FileDescriptorProto *msg, size_t *len) { return (int32_t const*)_upb_array_accessor(msg, UPB_SIZE(60, 120), len); }
|
7221
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_has_syntax(const google_protobuf_FileDescriptorProto *msg) { return _upb_has_field(msg, 2); }
|
7222
|
+
UPB_INLINE upb_strview google_protobuf_FileDescriptorProto_syntax(const google_protobuf_FileDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(20, 40)); }
|
7223
|
+
|
7224
|
+
UPB_INLINE void google_protobuf_FileDescriptorProto_set_name(google_protobuf_FileDescriptorProto *msg, upb_strview value) {
|
7225
|
+
_upb_sethas(msg, 0);
|
7226
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
7227
|
+
}
|
7228
|
+
UPB_INLINE void google_protobuf_FileDescriptorProto_set_package(google_protobuf_FileDescriptorProto *msg, upb_strview value) {
|
7229
|
+
_upb_sethas(msg, 1);
|
7230
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 24)) = value;
|
7231
|
+
}
|
7232
|
+
UPB_INLINE upb_strview* google_protobuf_FileDescriptorProto_mutable_dependency(google_protobuf_FileDescriptorProto *msg, size_t *len) {
|
7233
|
+
return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(36, 72), len);
|
7234
|
+
}
|
7235
|
+
UPB_INLINE upb_strview* google_protobuf_FileDescriptorProto_resize_dependency(google_protobuf_FileDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7236
|
+
return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(36, 72), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena);
|
7237
|
+
}
|
7238
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_add_dependency(google_protobuf_FileDescriptorProto *msg, upb_strview val, upb_arena *arena) {
|
7239
|
+
return _upb_array_append_accessor(
|
7240
|
+
msg, UPB_SIZE(36, 72), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena);
|
7241
|
+
}
|
7242
|
+
UPB_INLINE google_protobuf_DescriptorProto** google_protobuf_FileDescriptorProto_mutable_message_type(google_protobuf_FileDescriptorProto *msg, size_t *len) {
|
7243
|
+
return (google_protobuf_DescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(40, 80), len);
|
7244
|
+
}
|
7245
|
+
UPB_INLINE google_protobuf_DescriptorProto** google_protobuf_FileDescriptorProto_resize_message_type(google_protobuf_FileDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7246
|
+
return (google_protobuf_DescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(40, 80), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7247
|
+
}
|
7248
|
+
UPB_INLINE struct google_protobuf_DescriptorProto* google_protobuf_FileDescriptorProto_add_message_type(google_protobuf_FileDescriptorProto *msg, upb_arena *arena) {
|
7249
|
+
struct google_protobuf_DescriptorProto* sub = (struct google_protobuf_DescriptorProto*)upb_msg_new(&google_protobuf_DescriptorProto_msginit, arena);
|
7250
|
+
bool ok = _upb_array_append_accessor(
|
7251
|
+
msg, UPB_SIZE(40, 80), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7252
|
+
if (!ok) return NULL;
|
7253
|
+
return sub;
|
7254
|
+
}
|
7255
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto** google_protobuf_FileDescriptorProto_mutable_enum_type(google_protobuf_FileDescriptorProto *msg, size_t *len) {
|
7256
|
+
return (google_protobuf_EnumDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(44, 88), len);
|
7257
|
+
}
|
7258
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto** google_protobuf_FileDescriptorProto_resize_enum_type(google_protobuf_FileDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7259
|
+
return (google_protobuf_EnumDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(44, 88), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7260
|
+
}
|
7261
|
+
UPB_INLINE struct google_protobuf_EnumDescriptorProto* google_protobuf_FileDescriptorProto_add_enum_type(google_protobuf_FileDescriptorProto *msg, upb_arena *arena) {
|
7262
|
+
struct google_protobuf_EnumDescriptorProto* sub = (struct google_protobuf_EnumDescriptorProto*)upb_msg_new(&google_protobuf_EnumDescriptorProto_msginit, arena);
|
7263
|
+
bool ok = _upb_array_append_accessor(
|
7264
|
+
msg, UPB_SIZE(44, 88), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7265
|
+
if (!ok) return NULL;
|
7266
|
+
return sub;
|
7267
|
+
}
|
7268
|
+
UPB_INLINE google_protobuf_ServiceDescriptorProto** google_protobuf_FileDescriptorProto_mutable_service(google_protobuf_FileDescriptorProto *msg, size_t *len) {
|
7269
|
+
return (google_protobuf_ServiceDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(48, 96), len);
|
7270
|
+
}
|
7271
|
+
UPB_INLINE google_protobuf_ServiceDescriptorProto** google_protobuf_FileDescriptorProto_resize_service(google_protobuf_FileDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7272
|
+
return (google_protobuf_ServiceDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(48, 96), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7273
|
+
}
|
7274
|
+
UPB_INLINE struct google_protobuf_ServiceDescriptorProto* google_protobuf_FileDescriptorProto_add_service(google_protobuf_FileDescriptorProto *msg, upb_arena *arena) {
|
7275
|
+
struct google_protobuf_ServiceDescriptorProto* sub = (struct google_protobuf_ServiceDescriptorProto*)upb_msg_new(&google_protobuf_ServiceDescriptorProto_msginit, arena);
|
7276
|
+
bool ok = _upb_array_append_accessor(
|
7277
|
+
msg, UPB_SIZE(48, 96), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7278
|
+
if (!ok) return NULL;
|
7279
|
+
return sub;
|
7280
|
+
}
|
7281
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto** google_protobuf_FileDescriptorProto_mutable_extension(google_protobuf_FileDescriptorProto *msg, size_t *len) {
|
7282
|
+
return (google_protobuf_FieldDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(52, 104), len);
|
7283
|
+
}
|
7284
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto** google_protobuf_FileDescriptorProto_resize_extension(google_protobuf_FileDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7285
|
+
return (google_protobuf_FieldDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(52, 104), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7286
|
+
}
|
7287
|
+
UPB_INLINE struct google_protobuf_FieldDescriptorProto* google_protobuf_FileDescriptorProto_add_extension(google_protobuf_FileDescriptorProto *msg, upb_arena *arena) {
|
7288
|
+
struct google_protobuf_FieldDescriptorProto* sub = (struct google_protobuf_FieldDescriptorProto*)upb_msg_new(&google_protobuf_FieldDescriptorProto_msginit, arena);
|
7289
|
+
bool ok = _upb_array_append_accessor(
|
7290
|
+
msg, UPB_SIZE(52, 104), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7291
|
+
if (!ok) return NULL;
|
7292
|
+
return sub;
|
7293
|
+
}
|
7294
|
+
UPB_INLINE void google_protobuf_FileDescriptorProto_set_options(google_protobuf_FileDescriptorProto *msg, google_protobuf_FileOptions* value) {
|
7295
|
+
_upb_sethas(msg, 3);
|
7296
|
+
UPB_FIELD_AT(msg, google_protobuf_FileOptions*, UPB_SIZE(28, 56)) = value;
|
7297
|
+
}
|
7298
|
+
UPB_INLINE struct google_protobuf_FileOptions* google_protobuf_FileDescriptorProto_mutable_options(google_protobuf_FileDescriptorProto *msg, upb_arena *arena) {
|
7299
|
+
struct google_protobuf_FileOptions* sub = (struct google_protobuf_FileOptions*)google_protobuf_FileDescriptorProto_options(msg);
|
7300
|
+
if (sub == NULL) {
|
7301
|
+
sub = (struct google_protobuf_FileOptions*)upb_msg_new(&google_protobuf_FileOptions_msginit, arena);
|
7302
|
+
if (!sub) return NULL;
|
7303
|
+
google_protobuf_FileDescriptorProto_set_options(msg, sub);
|
7304
|
+
}
|
7305
|
+
return sub;
|
7306
|
+
}
|
7307
|
+
UPB_INLINE void google_protobuf_FileDescriptorProto_set_source_code_info(google_protobuf_FileDescriptorProto *msg, google_protobuf_SourceCodeInfo* value) {
|
7308
|
+
_upb_sethas(msg, 4);
|
7309
|
+
UPB_FIELD_AT(msg, google_protobuf_SourceCodeInfo*, UPB_SIZE(32, 64)) = value;
|
7310
|
+
}
|
7311
|
+
UPB_INLINE struct google_protobuf_SourceCodeInfo* google_protobuf_FileDescriptorProto_mutable_source_code_info(google_protobuf_FileDescriptorProto *msg, upb_arena *arena) {
|
7312
|
+
struct google_protobuf_SourceCodeInfo* sub = (struct google_protobuf_SourceCodeInfo*)google_protobuf_FileDescriptorProto_source_code_info(msg);
|
7313
|
+
if (sub == NULL) {
|
7314
|
+
sub = (struct google_protobuf_SourceCodeInfo*)upb_msg_new(&google_protobuf_SourceCodeInfo_msginit, arena);
|
7315
|
+
if (!sub) return NULL;
|
7316
|
+
google_protobuf_FileDescriptorProto_set_source_code_info(msg, sub);
|
7317
|
+
}
|
7318
|
+
return sub;
|
7319
|
+
}
|
7320
|
+
UPB_INLINE int32_t* google_protobuf_FileDescriptorProto_mutable_public_dependency(google_protobuf_FileDescriptorProto *msg, size_t *len) {
|
7321
|
+
return (int32_t*)_upb_array_mutable_accessor(msg, UPB_SIZE(56, 112), len);
|
7322
|
+
}
|
7323
|
+
UPB_INLINE int32_t* google_protobuf_FileDescriptorProto_resize_public_dependency(google_protobuf_FileDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7324
|
+
return (int32_t*)_upb_array_resize_accessor(msg, UPB_SIZE(56, 112), len, UPB_SIZE(4, 4), UPB_TYPE_INT32, arena);
|
7325
|
+
}
|
7326
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_add_public_dependency(google_protobuf_FileDescriptorProto *msg, int32_t val, upb_arena *arena) {
|
7327
|
+
return _upb_array_append_accessor(
|
7328
|
+
msg, UPB_SIZE(56, 112), UPB_SIZE(4, 4), UPB_TYPE_INT32, &val, arena);
|
7329
|
+
}
|
7330
|
+
UPB_INLINE int32_t* google_protobuf_FileDescriptorProto_mutable_weak_dependency(google_protobuf_FileDescriptorProto *msg, size_t *len) {
|
7331
|
+
return (int32_t*)_upb_array_mutable_accessor(msg, UPB_SIZE(60, 120), len);
|
7332
|
+
}
|
7333
|
+
UPB_INLINE int32_t* google_protobuf_FileDescriptorProto_resize_weak_dependency(google_protobuf_FileDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7334
|
+
return (int32_t*)_upb_array_resize_accessor(msg, UPB_SIZE(60, 120), len, UPB_SIZE(4, 4), UPB_TYPE_INT32, arena);
|
7335
|
+
}
|
7336
|
+
UPB_INLINE bool google_protobuf_FileDescriptorProto_add_weak_dependency(google_protobuf_FileDescriptorProto *msg, int32_t val, upb_arena *arena) {
|
7337
|
+
return _upb_array_append_accessor(
|
7338
|
+
msg, UPB_SIZE(60, 120), UPB_SIZE(4, 4), UPB_TYPE_INT32, &val, arena);
|
7339
|
+
}
|
7340
|
+
UPB_INLINE void google_protobuf_FileDescriptorProto_set_syntax(google_protobuf_FileDescriptorProto *msg, upb_strview value) {
|
7341
|
+
_upb_sethas(msg, 2);
|
7342
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(20, 40)) = value;
|
7343
|
+
}
|
7344
|
+
|
7345
|
+
|
7346
|
+
/* google.protobuf.DescriptorProto */
|
7347
|
+
|
7348
|
+
UPB_INLINE google_protobuf_DescriptorProto *google_protobuf_DescriptorProto_new(upb_arena *arena) {
|
7349
|
+
return (google_protobuf_DescriptorProto *)upb_msg_new(&google_protobuf_DescriptorProto_msginit, arena);
|
7350
|
+
}
|
7351
|
+
UPB_INLINE google_protobuf_DescriptorProto *google_protobuf_DescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7352
|
+
google_protobuf_DescriptorProto *ret = google_protobuf_DescriptorProto_new(arena);
|
7353
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_DescriptorProto_msginit)) ? ret : NULL;
|
7354
|
+
}
|
7355
|
+
UPB_INLINE char *google_protobuf_DescriptorProto_serialize(const google_protobuf_DescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7356
|
+
return upb_encode(msg, &google_protobuf_DescriptorProto_msginit, arena, len);
|
7357
|
+
}
|
7358
|
+
|
7359
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_has_name(const google_protobuf_DescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7360
|
+
UPB_INLINE upb_strview google_protobuf_DescriptorProto_name(const google_protobuf_DescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
7361
|
+
UPB_INLINE const google_protobuf_FieldDescriptorProto* const* google_protobuf_DescriptorProto_field(const google_protobuf_DescriptorProto *msg, size_t *len) { return (const google_protobuf_FieldDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
|
7362
|
+
UPB_INLINE const google_protobuf_DescriptorProto* const* google_protobuf_DescriptorProto_nested_type(const google_protobuf_DescriptorProto *msg, size_t *len) { return (const google_protobuf_DescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
|
7363
|
+
UPB_INLINE const google_protobuf_EnumDescriptorProto* const* google_protobuf_DescriptorProto_enum_type(const google_protobuf_DescriptorProto *msg, size_t *len) { return (const google_protobuf_EnumDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(24, 48), len); }
|
7364
|
+
UPB_INLINE const google_protobuf_DescriptorProto_ExtensionRange* const* google_protobuf_DescriptorProto_extension_range(const google_protobuf_DescriptorProto *msg, size_t *len) { return (const google_protobuf_DescriptorProto_ExtensionRange* const*)_upb_array_accessor(msg, UPB_SIZE(28, 56), len); }
|
7365
|
+
UPB_INLINE const google_protobuf_FieldDescriptorProto* const* google_protobuf_DescriptorProto_extension(const google_protobuf_DescriptorProto *msg, size_t *len) { return (const google_protobuf_FieldDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(32, 64), len); }
|
7366
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_has_options(const google_protobuf_DescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7367
|
+
UPB_INLINE const google_protobuf_MessageOptions* google_protobuf_DescriptorProto_options(const google_protobuf_DescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_MessageOptions*, UPB_SIZE(12, 24)); }
|
7368
|
+
UPB_INLINE const google_protobuf_OneofDescriptorProto* const* google_protobuf_DescriptorProto_oneof_decl(const google_protobuf_DescriptorProto *msg, size_t *len) { return (const google_protobuf_OneofDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(36, 72), len); }
|
7369
|
+
UPB_INLINE const google_protobuf_DescriptorProto_ReservedRange* const* google_protobuf_DescriptorProto_reserved_range(const google_protobuf_DescriptorProto *msg, size_t *len) { return (const google_protobuf_DescriptorProto_ReservedRange* const*)_upb_array_accessor(msg, UPB_SIZE(40, 80), len); }
|
7370
|
+
UPB_INLINE upb_strview const* google_protobuf_DescriptorProto_reserved_name(const google_protobuf_DescriptorProto *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(44, 88), len); }
|
7371
|
+
|
7372
|
+
UPB_INLINE void google_protobuf_DescriptorProto_set_name(google_protobuf_DescriptorProto *msg, upb_strview value) {
|
7373
|
+
_upb_sethas(msg, 0);
|
7374
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
7375
|
+
}
|
7376
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto** google_protobuf_DescriptorProto_mutable_field(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7377
|
+
return (google_protobuf_FieldDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
|
7378
|
+
}
|
7379
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto** google_protobuf_DescriptorProto_resize_field(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7380
|
+
return (google_protobuf_FieldDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(16, 32), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7381
|
+
}
|
7382
|
+
UPB_INLINE struct google_protobuf_FieldDescriptorProto* google_protobuf_DescriptorProto_add_field(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7383
|
+
struct google_protobuf_FieldDescriptorProto* sub = (struct google_protobuf_FieldDescriptorProto*)upb_msg_new(&google_protobuf_FieldDescriptorProto_msginit, arena);
|
7384
|
+
bool ok = _upb_array_append_accessor(
|
7385
|
+
msg, UPB_SIZE(16, 32), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7386
|
+
if (!ok) return NULL;
|
7387
|
+
return sub;
|
7388
|
+
}
|
7389
|
+
UPB_INLINE google_protobuf_DescriptorProto** google_protobuf_DescriptorProto_mutable_nested_type(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7390
|
+
return (google_protobuf_DescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
|
7391
|
+
}
|
7392
|
+
UPB_INLINE google_protobuf_DescriptorProto** google_protobuf_DescriptorProto_resize_nested_type(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7393
|
+
return (google_protobuf_DescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(20, 40), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7394
|
+
}
|
7395
|
+
UPB_INLINE struct google_protobuf_DescriptorProto* google_protobuf_DescriptorProto_add_nested_type(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7396
|
+
struct google_protobuf_DescriptorProto* sub = (struct google_protobuf_DescriptorProto*)upb_msg_new(&google_protobuf_DescriptorProto_msginit, arena);
|
7397
|
+
bool ok = _upb_array_append_accessor(
|
7398
|
+
msg, UPB_SIZE(20, 40), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7399
|
+
if (!ok) return NULL;
|
7400
|
+
return sub;
|
7401
|
+
}
|
7402
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto** google_protobuf_DescriptorProto_mutable_enum_type(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7403
|
+
return (google_protobuf_EnumDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 48), len);
|
7404
|
+
}
|
7405
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto** google_protobuf_DescriptorProto_resize_enum_type(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7406
|
+
return (google_protobuf_EnumDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(24, 48), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7407
|
+
}
|
7408
|
+
UPB_INLINE struct google_protobuf_EnumDescriptorProto* google_protobuf_DescriptorProto_add_enum_type(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7409
|
+
struct google_protobuf_EnumDescriptorProto* sub = (struct google_protobuf_EnumDescriptorProto*)upb_msg_new(&google_protobuf_EnumDescriptorProto_msginit, arena);
|
7410
|
+
bool ok = _upb_array_append_accessor(
|
7411
|
+
msg, UPB_SIZE(24, 48), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7412
|
+
if (!ok) return NULL;
|
7413
|
+
return sub;
|
7414
|
+
}
|
7415
|
+
UPB_INLINE google_protobuf_DescriptorProto_ExtensionRange** google_protobuf_DescriptorProto_mutable_extension_range(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7416
|
+
return (google_protobuf_DescriptorProto_ExtensionRange**)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 56), len);
|
7417
|
+
}
|
7418
|
+
UPB_INLINE google_protobuf_DescriptorProto_ExtensionRange** google_protobuf_DescriptorProto_resize_extension_range(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7419
|
+
return (google_protobuf_DescriptorProto_ExtensionRange**)_upb_array_resize_accessor(msg, UPB_SIZE(28, 56), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7420
|
+
}
|
7421
|
+
UPB_INLINE struct google_protobuf_DescriptorProto_ExtensionRange* google_protobuf_DescriptorProto_add_extension_range(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7422
|
+
struct google_protobuf_DescriptorProto_ExtensionRange* sub = (struct google_protobuf_DescriptorProto_ExtensionRange*)upb_msg_new(&google_protobuf_DescriptorProto_ExtensionRange_msginit, arena);
|
7423
|
+
bool ok = _upb_array_append_accessor(
|
7424
|
+
msg, UPB_SIZE(28, 56), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7425
|
+
if (!ok) return NULL;
|
7426
|
+
return sub;
|
7427
|
+
}
|
7428
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto** google_protobuf_DescriptorProto_mutable_extension(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7429
|
+
return (google_protobuf_FieldDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(32, 64), len);
|
7430
|
+
}
|
7431
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto** google_protobuf_DescriptorProto_resize_extension(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7432
|
+
return (google_protobuf_FieldDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(32, 64), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7433
|
+
}
|
7434
|
+
UPB_INLINE struct google_protobuf_FieldDescriptorProto* google_protobuf_DescriptorProto_add_extension(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7435
|
+
struct google_protobuf_FieldDescriptorProto* sub = (struct google_protobuf_FieldDescriptorProto*)upb_msg_new(&google_protobuf_FieldDescriptorProto_msginit, arena);
|
7436
|
+
bool ok = _upb_array_append_accessor(
|
7437
|
+
msg, UPB_SIZE(32, 64), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7438
|
+
if (!ok) return NULL;
|
7439
|
+
return sub;
|
7440
|
+
}
|
7441
|
+
UPB_INLINE void google_protobuf_DescriptorProto_set_options(google_protobuf_DescriptorProto *msg, google_protobuf_MessageOptions* value) {
|
7442
|
+
_upb_sethas(msg, 1);
|
7443
|
+
UPB_FIELD_AT(msg, google_protobuf_MessageOptions*, UPB_SIZE(12, 24)) = value;
|
7444
|
+
}
|
7445
|
+
UPB_INLINE struct google_protobuf_MessageOptions* google_protobuf_DescriptorProto_mutable_options(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7446
|
+
struct google_protobuf_MessageOptions* sub = (struct google_protobuf_MessageOptions*)google_protobuf_DescriptorProto_options(msg);
|
7447
|
+
if (sub == NULL) {
|
7448
|
+
sub = (struct google_protobuf_MessageOptions*)upb_msg_new(&google_protobuf_MessageOptions_msginit, arena);
|
7449
|
+
if (!sub) return NULL;
|
7450
|
+
google_protobuf_DescriptorProto_set_options(msg, sub);
|
7451
|
+
}
|
7452
|
+
return sub;
|
7453
|
+
}
|
7454
|
+
UPB_INLINE google_protobuf_OneofDescriptorProto** google_protobuf_DescriptorProto_mutable_oneof_decl(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7455
|
+
return (google_protobuf_OneofDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(36, 72), len);
|
7456
|
+
}
|
7457
|
+
UPB_INLINE google_protobuf_OneofDescriptorProto** google_protobuf_DescriptorProto_resize_oneof_decl(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7458
|
+
return (google_protobuf_OneofDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(36, 72), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7459
|
+
}
|
7460
|
+
UPB_INLINE struct google_protobuf_OneofDescriptorProto* google_protobuf_DescriptorProto_add_oneof_decl(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7461
|
+
struct google_protobuf_OneofDescriptorProto* sub = (struct google_protobuf_OneofDescriptorProto*)upb_msg_new(&google_protobuf_OneofDescriptorProto_msginit, arena);
|
7462
|
+
bool ok = _upb_array_append_accessor(
|
7463
|
+
msg, UPB_SIZE(36, 72), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7464
|
+
if (!ok) return NULL;
|
7465
|
+
return sub;
|
7466
|
+
}
|
7467
|
+
UPB_INLINE google_protobuf_DescriptorProto_ReservedRange** google_protobuf_DescriptorProto_mutable_reserved_range(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7468
|
+
return (google_protobuf_DescriptorProto_ReservedRange**)_upb_array_mutable_accessor(msg, UPB_SIZE(40, 80), len);
|
7469
|
+
}
|
7470
|
+
UPB_INLINE google_protobuf_DescriptorProto_ReservedRange** google_protobuf_DescriptorProto_resize_reserved_range(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7471
|
+
return (google_protobuf_DescriptorProto_ReservedRange**)_upb_array_resize_accessor(msg, UPB_SIZE(40, 80), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7472
|
+
}
|
7473
|
+
UPB_INLINE struct google_protobuf_DescriptorProto_ReservedRange* google_protobuf_DescriptorProto_add_reserved_range(google_protobuf_DescriptorProto *msg, upb_arena *arena) {
|
7474
|
+
struct google_protobuf_DescriptorProto_ReservedRange* sub = (struct google_protobuf_DescriptorProto_ReservedRange*)upb_msg_new(&google_protobuf_DescriptorProto_ReservedRange_msginit, arena);
|
7475
|
+
bool ok = _upb_array_append_accessor(
|
7476
|
+
msg, UPB_SIZE(40, 80), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7477
|
+
if (!ok) return NULL;
|
7478
|
+
return sub;
|
7479
|
+
}
|
7480
|
+
UPB_INLINE upb_strview* google_protobuf_DescriptorProto_mutable_reserved_name(google_protobuf_DescriptorProto *msg, size_t *len) {
|
7481
|
+
return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(44, 88), len);
|
7482
|
+
}
|
7483
|
+
UPB_INLINE upb_strview* google_protobuf_DescriptorProto_resize_reserved_name(google_protobuf_DescriptorProto *msg, size_t len, upb_arena *arena) {
|
7484
|
+
return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(44, 88), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena);
|
7485
|
+
}
|
7486
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_add_reserved_name(google_protobuf_DescriptorProto *msg, upb_strview val, upb_arena *arena) {
|
7487
|
+
return _upb_array_append_accessor(
|
7488
|
+
msg, UPB_SIZE(44, 88), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena);
|
7489
|
+
}
|
7490
|
+
|
7491
|
+
|
7492
|
+
/* google.protobuf.DescriptorProto.ExtensionRange */
|
7493
|
+
|
7494
|
+
UPB_INLINE google_protobuf_DescriptorProto_ExtensionRange *google_protobuf_DescriptorProto_ExtensionRange_new(upb_arena *arena) {
|
7495
|
+
return (google_protobuf_DescriptorProto_ExtensionRange *)upb_msg_new(&google_protobuf_DescriptorProto_ExtensionRange_msginit, arena);
|
7496
|
+
}
|
7497
|
+
UPB_INLINE google_protobuf_DescriptorProto_ExtensionRange *google_protobuf_DescriptorProto_ExtensionRange_parsenew(upb_strview buf, upb_arena *arena) {
|
7498
|
+
google_protobuf_DescriptorProto_ExtensionRange *ret = google_protobuf_DescriptorProto_ExtensionRange_new(arena);
|
7499
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_DescriptorProto_ExtensionRange_msginit)) ? ret : NULL;
|
7500
|
+
}
|
7501
|
+
UPB_INLINE char *google_protobuf_DescriptorProto_ExtensionRange_serialize(const google_protobuf_DescriptorProto_ExtensionRange *msg, upb_arena *arena, size_t *len) {
|
7502
|
+
return upb_encode(msg, &google_protobuf_DescriptorProto_ExtensionRange_msginit, arena, len);
|
7503
|
+
}
|
7504
|
+
|
7505
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_ExtensionRange_has_start(const google_protobuf_DescriptorProto_ExtensionRange *msg) { return _upb_has_field(msg, 0); }
|
7506
|
+
UPB_INLINE int32_t google_protobuf_DescriptorProto_ExtensionRange_start(const google_protobuf_DescriptorProto_ExtensionRange *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)); }
|
7507
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_ExtensionRange_has_end(const google_protobuf_DescriptorProto_ExtensionRange *msg) { return _upb_has_field(msg, 1); }
|
7508
|
+
UPB_INLINE int32_t google_protobuf_DescriptorProto_ExtensionRange_end(const google_protobuf_DescriptorProto_ExtensionRange *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)); }
|
7509
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_ExtensionRange_has_options(const google_protobuf_DescriptorProto_ExtensionRange *msg) { return _upb_has_field(msg, 2); }
|
7510
|
+
UPB_INLINE const google_protobuf_ExtensionRangeOptions* google_protobuf_DescriptorProto_ExtensionRange_options(const google_protobuf_DescriptorProto_ExtensionRange *msg) { return UPB_FIELD_AT(msg, const google_protobuf_ExtensionRangeOptions*, UPB_SIZE(12, 16)); }
|
7511
|
+
|
7512
|
+
UPB_INLINE void google_protobuf_DescriptorProto_ExtensionRange_set_start(google_protobuf_DescriptorProto_ExtensionRange *msg, int32_t value) {
|
7513
|
+
_upb_sethas(msg, 0);
|
7514
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)) = value;
|
7515
|
+
}
|
7516
|
+
UPB_INLINE void google_protobuf_DescriptorProto_ExtensionRange_set_end(google_protobuf_DescriptorProto_ExtensionRange *msg, int32_t value) {
|
7517
|
+
_upb_sethas(msg, 1);
|
7518
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)) = value;
|
7519
|
+
}
|
7520
|
+
UPB_INLINE void google_protobuf_DescriptorProto_ExtensionRange_set_options(google_protobuf_DescriptorProto_ExtensionRange *msg, google_protobuf_ExtensionRangeOptions* value) {
|
7521
|
+
_upb_sethas(msg, 2);
|
7522
|
+
UPB_FIELD_AT(msg, google_protobuf_ExtensionRangeOptions*, UPB_SIZE(12, 16)) = value;
|
7523
|
+
}
|
7524
|
+
UPB_INLINE struct google_protobuf_ExtensionRangeOptions* google_protobuf_DescriptorProto_ExtensionRange_mutable_options(google_protobuf_DescriptorProto_ExtensionRange *msg, upb_arena *arena) {
|
7525
|
+
struct google_protobuf_ExtensionRangeOptions* sub = (struct google_protobuf_ExtensionRangeOptions*)google_protobuf_DescriptorProto_ExtensionRange_options(msg);
|
7526
|
+
if (sub == NULL) {
|
7527
|
+
sub = (struct google_protobuf_ExtensionRangeOptions*)upb_msg_new(&google_protobuf_ExtensionRangeOptions_msginit, arena);
|
7528
|
+
if (!sub) return NULL;
|
7529
|
+
google_protobuf_DescriptorProto_ExtensionRange_set_options(msg, sub);
|
7530
|
+
}
|
7531
|
+
return sub;
|
7532
|
+
}
|
7533
|
+
|
7534
|
+
|
7535
|
+
/* google.protobuf.DescriptorProto.ReservedRange */
|
7536
|
+
|
7537
|
+
UPB_INLINE google_protobuf_DescriptorProto_ReservedRange *google_protobuf_DescriptorProto_ReservedRange_new(upb_arena *arena) {
|
7538
|
+
return (google_protobuf_DescriptorProto_ReservedRange *)upb_msg_new(&google_protobuf_DescriptorProto_ReservedRange_msginit, arena);
|
7539
|
+
}
|
7540
|
+
UPB_INLINE google_protobuf_DescriptorProto_ReservedRange *google_protobuf_DescriptorProto_ReservedRange_parsenew(upb_strview buf, upb_arena *arena) {
|
7541
|
+
google_protobuf_DescriptorProto_ReservedRange *ret = google_protobuf_DescriptorProto_ReservedRange_new(arena);
|
7542
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_DescriptorProto_ReservedRange_msginit)) ? ret : NULL;
|
7543
|
+
}
|
7544
|
+
UPB_INLINE char *google_protobuf_DescriptorProto_ReservedRange_serialize(const google_protobuf_DescriptorProto_ReservedRange *msg, upb_arena *arena, size_t *len) {
|
7545
|
+
return upb_encode(msg, &google_protobuf_DescriptorProto_ReservedRange_msginit, arena, len);
|
7546
|
+
}
|
7547
|
+
|
7548
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_ReservedRange_has_start(const google_protobuf_DescriptorProto_ReservedRange *msg) { return _upb_has_field(msg, 0); }
|
7549
|
+
UPB_INLINE int32_t google_protobuf_DescriptorProto_ReservedRange_start(const google_protobuf_DescriptorProto_ReservedRange *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)); }
|
7550
|
+
UPB_INLINE bool google_protobuf_DescriptorProto_ReservedRange_has_end(const google_protobuf_DescriptorProto_ReservedRange *msg) { return _upb_has_field(msg, 1); }
|
7551
|
+
UPB_INLINE int32_t google_protobuf_DescriptorProto_ReservedRange_end(const google_protobuf_DescriptorProto_ReservedRange *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)); }
|
7552
|
+
|
7553
|
+
UPB_INLINE void google_protobuf_DescriptorProto_ReservedRange_set_start(google_protobuf_DescriptorProto_ReservedRange *msg, int32_t value) {
|
7554
|
+
_upb_sethas(msg, 0);
|
7555
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)) = value;
|
7556
|
+
}
|
7557
|
+
UPB_INLINE void google_protobuf_DescriptorProto_ReservedRange_set_end(google_protobuf_DescriptorProto_ReservedRange *msg, int32_t value) {
|
7558
|
+
_upb_sethas(msg, 1);
|
7559
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)) = value;
|
7560
|
+
}
|
7561
|
+
|
7562
|
+
|
7563
|
+
/* google.protobuf.ExtensionRangeOptions */
|
7564
|
+
|
7565
|
+
UPB_INLINE google_protobuf_ExtensionRangeOptions *google_protobuf_ExtensionRangeOptions_new(upb_arena *arena) {
|
7566
|
+
return (google_protobuf_ExtensionRangeOptions *)upb_msg_new(&google_protobuf_ExtensionRangeOptions_msginit, arena);
|
7567
|
+
}
|
7568
|
+
UPB_INLINE google_protobuf_ExtensionRangeOptions *google_protobuf_ExtensionRangeOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
7569
|
+
google_protobuf_ExtensionRangeOptions *ret = google_protobuf_ExtensionRangeOptions_new(arena);
|
7570
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_ExtensionRangeOptions_msginit)) ? ret : NULL;
|
7571
|
+
}
|
7572
|
+
UPB_INLINE char *google_protobuf_ExtensionRangeOptions_serialize(const google_protobuf_ExtensionRangeOptions *msg, upb_arena *arena, size_t *len) {
|
7573
|
+
return upb_encode(msg, &google_protobuf_ExtensionRangeOptions_msginit, arena, len);
|
7574
|
+
}
|
7575
|
+
|
7576
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_ExtensionRangeOptions_uninterpreted_option(const google_protobuf_ExtensionRangeOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
|
7577
|
+
|
7578
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_ExtensionRangeOptions_mutable_uninterpreted_option(google_protobuf_ExtensionRangeOptions *msg, size_t *len) {
|
7579
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
|
7580
|
+
}
|
7581
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_ExtensionRangeOptions_resize_uninterpreted_option(google_protobuf_ExtensionRangeOptions *msg, size_t len, upb_arena *arena) {
|
7582
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7583
|
+
}
|
7584
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_ExtensionRangeOptions_add_uninterpreted_option(google_protobuf_ExtensionRangeOptions *msg, upb_arena *arena) {
|
7585
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
7586
|
+
bool ok = _upb_array_append_accessor(
|
7587
|
+
msg, UPB_SIZE(0, 0), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7588
|
+
if (!ok) return NULL;
|
7589
|
+
return sub;
|
7590
|
+
}
|
7591
|
+
|
7592
|
+
|
7593
|
+
/* google.protobuf.FieldDescriptorProto */
|
7594
|
+
|
7595
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto *google_protobuf_FieldDescriptorProto_new(upb_arena *arena) {
|
7596
|
+
return (google_protobuf_FieldDescriptorProto *)upb_msg_new(&google_protobuf_FieldDescriptorProto_msginit, arena);
|
7597
|
+
}
|
7598
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto *google_protobuf_FieldDescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7599
|
+
google_protobuf_FieldDescriptorProto *ret = google_protobuf_FieldDescriptorProto_new(arena);
|
7600
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_FieldDescriptorProto_msginit)) ? ret : NULL;
|
7601
|
+
}
|
7602
|
+
UPB_INLINE char *google_protobuf_FieldDescriptorProto_serialize(const google_protobuf_FieldDescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7603
|
+
return upb_encode(msg, &google_protobuf_FieldDescriptorProto_msginit, arena, len);
|
7604
|
+
}
|
7605
|
+
|
7606
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_name(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 4); }
|
7607
|
+
UPB_INLINE upb_strview google_protobuf_FieldDescriptorProto_name(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(32, 32)); }
|
7608
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_extendee(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 5); }
|
7609
|
+
UPB_INLINE upb_strview google_protobuf_FieldDescriptorProto_extendee(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(40, 48)); }
|
7610
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_number(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 2); }
|
7611
|
+
UPB_INLINE int32_t google_protobuf_FieldDescriptorProto_number(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(24, 24)); }
|
7612
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_label(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7613
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto_Label google_protobuf_FieldDescriptorProto_label(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, google_protobuf_FieldDescriptorProto_Label, UPB_SIZE(8, 8)); }
|
7614
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_type(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7615
|
+
UPB_INLINE google_protobuf_FieldDescriptorProto_Type google_protobuf_FieldDescriptorProto_type(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, google_protobuf_FieldDescriptorProto_Type, UPB_SIZE(16, 16)); }
|
7616
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_type_name(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 6); }
|
7617
|
+
UPB_INLINE upb_strview google_protobuf_FieldDescriptorProto_type_name(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(48, 64)); }
|
7618
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_default_value(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 7); }
|
7619
|
+
UPB_INLINE upb_strview google_protobuf_FieldDescriptorProto_default_value(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(56, 80)); }
|
7620
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_options(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 9); }
|
7621
|
+
UPB_INLINE const google_protobuf_FieldOptions* google_protobuf_FieldDescriptorProto_options(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_FieldOptions*, UPB_SIZE(72, 112)); }
|
7622
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_oneof_index(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 3); }
|
7623
|
+
UPB_INLINE int32_t google_protobuf_FieldDescriptorProto_oneof_index(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(28, 28)); }
|
7624
|
+
UPB_INLINE bool google_protobuf_FieldDescriptorProto_has_json_name(const google_protobuf_FieldDescriptorProto *msg) { return _upb_has_field(msg, 8); }
|
7625
|
+
UPB_INLINE upb_strview google_protobuf_FieldDescriptorProto_json_name(const google_protobuf_FieldDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(64, 96)); }
|
7626
|
+
|
7627
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_name(google_protobuf_FieldDescriptorProto *msg, upb_strview value) {
|
7628
|
+
_upb_sethas(msg, 4);
|
7629
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(32, 32)) = value;
|
7630
|
+
}
|
7631
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_extendee(google_protobuf_FieldDescriptorProto *msg, upb_strview value) {
|
7632
|
+
_upb_sethas(msg, 5);
|
7633
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(40, 48)) = value;
|
7634
|
+
}
|
7635
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_number(google_protobuf_FieldDescriptorProto *msg, int32_t value) {
|
7636
|
+
_upb_sethas(msg, 2);
|
7637
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(24, 24)) = value;
|
7638
|
+
}
|
7639
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_label(google_protobuf_FieldDescriptorProto *msg, google_protobuf_FieldDescriptorProto_Label value) {
|
7640
|
+
_upb_sethas(msg, 0);
|
7641
|
+
UPB_FIELD_AT(msg, google_protobuf_FieldDescriptorProto_Label, UPB_SIZE(8, 8)) = value;
|
7642
|
+
}
|
7643
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_type(google_protobuf_FieldDescriptorProto *msg, google_protobuf_FieldDescriptorProto_Type value) {
|
7644
|
+
_upb_sethas(msg, 1);
|
7645
|
+
UPB_FIELD_AT(msg, google_protobuf_FieldDescriptorProto_Type, UPB_SIZE(16, 16)) = value;
|
7646
|
+
}
|
7647
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_type_name(google_protobuf_FieldDescriptorProto *msg, upb_strview value) {
|
7648
|
+
_upb_sethas(msg, 6);
|
7649
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(48, 64)) = value;
|
7650
|
+
}
|
7651
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_default_value(google_protobuf_FieldDescriptorProto *msg, upb_strview value) {
|
7652
|
+
_upb_sethas(msg, 7);
|
7653
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(56, 80)) = value;
|
7654
|
+
}
|
7655
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_options(google_protobuf_FieldDescriptorProto *msg, google_protobuf_FieldOptions* value) {
|
7656
|
+
_upb_sethas(msg, 9);
|
7657
|
+
UPB_FIELD_AT(msg, google_protobuf_FieldOptions*, UPB_SIZE(72, 112)) = value;
|
7658
|
+
}
|
7659
|
+
UPB_INLINE struct google_protobuf_FieldOptions* google_protobuf_FieldDescriptorProto_mutable_options(google_protobuf_FieldDescriptorProto *msg, upb_arena *arena) {
|
7660
|
+
struct google_protobuf_FieldOptions* sub = (struct google_protobuf_FieldOptions*)google_protobuf_FieldDescriptorProto_options(msg);
|
7661
|
+
if (sub == NULL) {
|
7662
|
+
sub = (struct google_protobuf_FieldOptions*)upb_msg_new(&google_protobuf_FieldOptions_msginit, arena);
|
7663
|
+
if (!sub) return NULL;
|
7664
|
+
google_protobuf_FieldDescriptorProto_set_options(msg, sub);
|
7665
|
+
}
|
7666
|
+
return sub;
|
7667
|
+
}
|
7668
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_oneof_index(google_protobuf_FieldDescriptorProto *msg, int32_t value) {
|
7669
|
+
_upb_sethas(msg, 3);
|
7670
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(28, 28)) = value;
|
7671
|
+
}
|
7672
|
+
UPB_INLINE void google_protobuf_FieldDescriptorProto_set_json_name(google_protobuf_FieldDescriptorProto *msg, upb_strview value) {
|
7673
|
+
_upb_sethas(msg, 8);
|
7674
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(64, 96)) = value;
|
7675
|
+
}
|
7676
|
+
|
7677
|
+
|
7678
|
+
/* google.protobuf.OneofDescriptorProto */
|
7679
|
+
|
7680
|
+
UPB_INLINE google_protobuf_OneofDescriptorProto *google_protobuf_OneofDescriptorProto_new(upb_arena *arena) {
|
7681
|
+
return (google_protobuf_OneofDescriptorProto *)upb_msg_new(&google_protobuf_OneofDescriptorProto_msginit, arena);
|
7682
|
+
}
|
7683
|
+
UPB_INLINE google_protobuf_OneofDescriptorProto *google_protobuf_OneofDescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7684
|
+
google_protobuf_OneofDescriptorProto *ret = google_protobuf_OneofDescriptorProto_new(arena);
|
7685
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_OneofDescriptorProto_msginit)) ? ret : NULL;
|
7686
|
+
}
|
7687
|
+
UPB_INLINE char *google_protobuf_OneofDescriptorProto_serialize(const google_protobuf_OneofDescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7688
|
+
return upb_encode(msg, &google_protobuf_OneofDescriptorProto_msginit, arena, len);
|
7689
|
+
}
|
7690
|
+
|
7691
|
+
UPB_INLINE bool google_protobuf_OneofDescriptorProto_has_name(const google_protobuf_OneofDescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7692
|
+
UPB_INLINE upb_strview google_protobuf_OneofDescriptorProto_name(const google_protobuf_OneofDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
7693
|
+
UPB_INLINE bool google_protobuf_OneofDescriptorProto_has_options(const google_protobuf_OneofDescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7694
|
+
UPB_INLINE const google_protobuf_OneofOptions* google_protobuf_OneofDescriptorProto_options(const google_protobuf_OneofDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_OneofOptions*, UPB_SIZE(12, 24)); }
|
7695
|
+
|
7696
|
+
UPB_INLINE void google_protobuf_OneofDescriptorProto_set_name(google_protobuf_OneofDescriptorProto *msg, upb_strview value) {
|
7697
|
+
_upb_sethas(msg, 0);
|
7698
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
7699
|
+
}
|
7700
|
+
UPB_INLINE void google_protobuf_OneofDescriptorProto_set_options(google_protobuf_OneofDescriptorProto *msg, google_protobuf_OneofOptions* value) {
|
7701
|
+
_upb_sethas(msg, 1);
|
7702
|
+
UPB_FIELD_AT(msg, google_protobuf_OneofOptions*, UPB_SIZE(12, 24)) = value;
|
7703
|
+
}
|
7704
|
+
UPB_INLINE struct google_protobuf_OneofOptions* google_protobuf_OneofDescriptorProto_mutable_options(google_protobuf_OneofDescriptorProto *msg, upb_arena *arena) {
|
7705
|
+
struct google_protobuf_OneofOptions* sub = (struct google_protobuf_OneofOptions*)google_protobuf_OneofDescriptorProto_options(msg);
|
7706
|
+
if (sub == NULL) {
|
7707
|
+
sub = (struct google_protobuf_OneofOptions*)upb_msg_new(&google_protobuf_OneofOptions_msginit, arena);
|
7708
|
+
if (!sub) return NULL;
|
7709
|
+
google_protobuf_OneofDescriptorProto_set_options(msg, sub);
|
7710
|
+
}
|
7711
|
+
return sub;
|
7712
|
+
}
|
7713
|
+
|
7714
|
+
|
7715
|
+
/* google.protobuf.EnumDescriptorProto */
|
7716
|
+
|
7717
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto *google_protobuf_EnumDescriptorProto_new(upb_arena *arena) {
|
7718
|
+
return (google_protobuf_EnumDescriptorProto *)upb_msg_new(&google_protobuf_EnumDescriptorProto_msginit, arena);
|
7719
|
+
}
|
7720
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto *google_protobuf_EnumDescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7721
|
+
google_protobuf_EnumDescriptorProto *ret = google_protobuf_EnumDescriptorProto_new(arena);
|
7722
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_EnumDescriptorProto_msginit)) ? ret : NULL;
|
7723
|
+
}
|
7724
|
+
UPB_INLINE char *google_protobuf_EnumDescriptorProto_serialize(const google_protobuf_EnumDescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7725
|
+
return upb_encode(msg, &google_protobuf_EnumDescriptorProto_msginit, arena, len);
|
7726
|
+
}
|
7727
|
+
|
7728
|
+
UPB_INLINE bool google_protobuf_EnumDescriptorProto_has_name(const google_protobuf_EnumDescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7729
|
+
UPB_INLINE upb_strview google_protobuf_EnumDescriptorProto_name(const google_protobuf_EnumDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
7730
|
+
UPB_INLINE const google_protobuf_EnumValueDescriptorProto* const* google_protobuf_EnumDescriptorProto_value(const google_protobuf_EnumDescriptorProto *msg, size_t *len) { return (const google_protobuf_EnumValueDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
|
7731
|
+
UPB_INLINE bool google_protobuf_EnumDescriptorProto_has_options(const google_protobuf_EnumDescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7732
|
+
UPB_INLINE const google_protobuf_EnumOptions* google_protobuf_EnumDescriptorProto_options(const google_protobuf_EnumDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_EnumOptions*, UPB_SIZE(12, 24)); }
|
7733
|
+
UPB_INLINE const google_protobuf_EnumDescriptorProto_EnumReservedRange* const* google_protobuf_EnumDescriptorProto_reserved_range(const google_protobuf_EnumDescriptorProto *msg, size_t *len) { return (const google_protobuf_EnumDescriptorProto_EnumReservedRange* const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
|
7734
|
+
UPB_INLINE upb_strview const* google_protobuf_EnumDescriptorProto_reserved_name(const google_protobuf_EnumDescriptorProto *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(24, 48), len); }
|
7735
|
+
|
7736
|
+
UPB_INLINE void google_protobuf_EnumDescriptorProto_set_name(google_protobuf_EnumDescriptorProto *msg, upb_strview value) {
|
7737
|
+
_upb_sethas(msg, 0);
|
7738
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
7739
|
+
}
|
7740
|
+
UPB_INLINE google_protobuf_EnumValueDescriptorProto** google_protobuf_EnumDescriptorProto_mutable_value(google_protobuf_EnumDescriptorProto *msg, size_t *len) {
|
7741
|
+
return (google_protobuf_EnumValueDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
|
7742
|
+
}
|
7743
|
+
UPB_INLINE google_protobuf_EnumValueDescriptorProto** google_protobuf_EnumDescriptorProto_resize_value(google_protobuf_EnumDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7744
|
+
return (google_protobuf_EnumValueDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(16, 32), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7745
|
+
}
|
7746
|
+
UPB_INLINE struct google_protobuf_EnumValueDescriptorProto* google_protobuf_EnumDescriptorProto_add_value(google_protobuf_EnumDescriptorProto *msg, upb_arena *arena) {
|
7747
|
+
struct google_protobuf_EnumValueDescriptorProto* sub = (struct google_protobuf_EnumValueDescriptorProto*)upb_msg_new(&google_protobuf_EnumValueDescriptorProto_msginit, arena);
|
7748
|
+
bool ok = _upb_array_append_accessor(
|
7749
|
+
msg, UPB_SIZE(16, 32), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7750
|
+
if (!ok) return NULL;
|
7751
|
+
return sub;
|
7752
|
+
}
|
7753
|
+
UPB_INLINE void google_protobuf_EnumDescriptorProto_set_options(google_protobuf_EnumDescriptorProto *msg, google_protobuf_EnumOptions* value) {
|
7754
|
+
_upb_sethas(msg, 1);
|
7755
|
+
UPB_FIELD_AT(msg, google_protobuf_EnumOptions*, UPB_SIZE(12, 24)) = value;
|
7756
|
+
}
|
7757
|
+
UPB_INLINE struct google_protobuf_EnumOptions* google_protobuf_EnumDescriptorProto_mutable_options(google_protobuf_EnumDescriptorProto *msg, upb_arena *arena) {
|
7758
|
+
struct google_protobuf_EnumOptions* sub = (struct google_protobuf_EnumOptions*)google_protobuf_EnumDescriptorProto_options(msg);
|
7759
|
+
if (sub == NULL) {
|
7760
|
+
sub = (struct google_protobuf_EnumOptions*)upb_msg_new(&google_protobuf_EnumOptions_msginit, arena);
|
7761
|
+
if (!sub) return NULL;
|
7762
|
+
google_protobuf_EnumDescriptorProto_set_options(msg, sub);
|
7763
|
+
}
|
7764
|
+
return sub;
|
7765
|
+
}
|
7766
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto_EnumReservedRange** google_protobuf_EnumDescriptorProto_mutable_reserved_range(google_protobuf_EnumDescriptorProto *msg, size_t *len) {
|
7767
|
+
return (google_protobuf_EnumDescriptorProto_EnumReservedRange**)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
|
7768
|
+
}
|
7769
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto_EnumReservedRange** google_protobuf_EnumDescriptorProto_resize_reserved_range(google_protobuf_EnumDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7770
|
+
return (google_protobuf_EnumDescriptorProto_EnumReservedRange**)_upb_array_resize_accessor(msg, UPB_SIZE(20, 40), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7771
|
+
}
|
7772
|
+
UPB_INLINE struct google_protobuf_EnumDescriptorProto_EnumReservedRange* google_protobuf_EnumDescriptorProto_add_reserved_range(google_protobuf_EnumDescriptorProto *msg, upb_arena *arena) {
|
7773
|
+
struct google_protobuf_EnumDescriptorProto_EnumReservedRange* sub = (struct google_protobuf_EnumDescriptorProto_EnumReservedRange*)upb_msg_new(&google_protobuf_EnumDescriptorProto_EnumReservedRange_msginit, arena);
|
7774
|
+
bool ok = _upb_array_append_accessor(
|
7775
|
+
msg, UPB_SIZE(20, 40), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7776
|
+
if (!ok) return NULL;
|
7777
|
+
return sub;
|
7778
|
+
}
|
7779
|
+
UPB_INLINE upb_strview* google_protobuf_EnumDescriptorProto_mutable_reserved_name(google_protobuf_EnumDescriptorProto *msg, size_t *len) {
|
7780
|
+
return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 48), len);
|
7781
|
+
}
|
7782
|
+
UPB_INLINE upb_strview* google_protobuf_EnumDescriptorProto_resize_reserved_name(google_protobuf_EnumDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7783
|
+
return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(24, 48), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena);
|
7784
|
+
}
|
7785
|
+
UPB_INLINE bool google_protobuf_EnumDescriptorProto_add_reserved_name(google_protobuf_EnumDescriptorProto *msg, upb_strview val, upb_arena *arena) {
|
7786
|
+
return _upb_array_append_accessor(
|
7787
|
+
msg, UPB_SIZE(24, 48), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena);
|
7788
|
+
}
|
7789
|
+
|
7790
|
+
|
7791
|
+
/* google.protobuf.EnumDescriptorProto.EnumReservedRange */
|
7792
|
+
|
7793
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto_EnumReservedRange *google_protobuf_EnumDescriptorProto_EnumReservedRange_new(upb_arena *arena) {
|
7794
|
+
return (google_protobuf_EnumDescriptorProto_EnumReservedRange *)upb_msg_new(&google_protobuf_EnumDescriptorProto_EnumReservedRange_msginit, arena);
|
7795
|
+
}
|
7796
|
+
UPB_INLINE google_protobuf_EnumDescriptorProto_EnumReservedRange *google_protobuf_EnumDescriptorProto_EnumReservedRange_parsenew(upb_strview buf, upb_arena *arena) {
|
7797
|
+
google_protobuf_EnumDescriptorProto_EnumReservedRange *ret = google_protobuf_EnumDescriptorProto_EnumReservedRange_new(arena);
|
7798
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_EnumDescriptorProto_EnumReservedRange_msginit)) ? ret : NULL;
|
7799
|
+
}
|
7800
|
+
UPB_INLINE char *google_protobuf_EnumDescriptorProto_EnumReservedRange_serialize(const google_protobuf_EnumDescriptorProto_EnumReservedRange *msg, upb_arena *arena, size_t *len) {
|
7801
|
+
return upb_encode(msg, &google_protobuf_EnumDescriptorProto_EnumReservedRange_msginit, arena, len);
|
7802
|
+
}
|
7803
|
+
|
7804
|
+
UPB_INLINE bool google_protobuf_EnumDescriptorProto_EnumReservedRange_has_start(const google_protobuf_EnumDescriptorProto_EnumReservedRange *msg) { return _upb_has_field(msg, 0); }
|
7805
|
+
UPB_INLINE int32_t google_protobuf_EnumDescriptorProto_EnumReservedRange_start(const google_protobuf_EnumDescriptorProto_EnumReservedRange *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)); }
|
7806
|
+
UPB_INLINE bool google_protobuf_EnumDescriptorProto_EnumReservedRange_has_end(const google_protobuf_EnumDescriptorProto_EnumReservedRange *msg) { return _upb_has_field(msg, 1); }
|
7807
|
+
UPB_INLINE int32_t google_protobuf_EnumDescriptorProto_EnumReservedRange_end(const google_protobuf_EnumDescriptorProto_EnumReservedRange *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)); }
|
7808
|
+
|
7809
|
+
UPB_INLINE void google_protobuf_EnumDescriptorProto_EnumReservedRange_set_start(google_protobuf_EnumDescriptorProto_EnumReservedRange *msg, int32_t value) {
|
7810
|
+
_upb_sethas(msg, 0);
|
7811
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)) = value;
|
7812
|
+
}
|
7813
|
+
UPB_INLINE void google_protobuf_EnumDescriptorProto_EnumReservedRange_set_end(google_protobuf_EnumDescriptorProto_EnumReservedRange *msg, int32_t value) {
|
7814
|
+
_upb_sethas(msg, 1);
|
7815
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)) = value;
|
7816
|
+
}
|
7817
|
+
|
7818
|
+
|
7819
|
+
/* google.protobuf.EnumValueDescriptorProto */
|
7820
|
+
|
7821
|
+
UPB_INLINE google_protobuf_EnumValueDescriptorProto *google_protobuf_EnumValueDescriptorProto_new(upb_arena *arena) {
|
7822
|
+
return (google_protobuf_EnumValueDescriptorProto *)upb_msg_new(&google_protobuf_EnumValueDescriptorProto_msginit, arena);
|
7823
|
+
}
|
7824
|
+
UPB_INLINE google_protobuf_EnumValueDescriptorProto *google_protobuf_EnumValueDescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7825
|
+
google_protobuf_EnumValueDescriptorProto *ret = google_protobuf_EnumValueDescriptorProto_new(arena);
|
7826
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_EnumValueDescriptorProto_msginit)) ? ret : NULL;
|
7827
|
+
}
|
7828
|
+
UPB_INLINE char *google_protobuf_EnumValueDescriptorProto_serialize(const google_protobuf_EnumValueDescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7829
|
+
return upb_encode(msg, &google_protobuf_EnumValueDescriptorProto_msginit, arena, len);
|
7830
|
+
}
|
7831
|
+
|
7832
|
+
UPB_INLINE bool google_protobuf_EnumValueDescriptorProto_has_name(const google_protobuf_EnumValueDescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7833
|
+
UPB_INLINE upb_strview google_protobuf_EnumValueDescriptorProto_name(const google_protobuf_EnumValueDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(8, 8)); }
|
7834
|
+
UPB_INLINE bool google_protobuf_EnumValueDescriptorProto_has_number(const google_protobuf_EnumValueDescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7835
|
+
UPB_INLINE int32_t google_protobuf_EnumValueDescriptorProto_number(const google_protobuf_EnumValueDescriptorProto *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)); }
|
7836
|
+
UPB_INLINE bool google_protobuf_EnumValueDescriptorProto_has_options(const google_protobuf_EnumValueDescriptorProto *msg) { return _upb_has_field(msg, 2); }
|
7837
|
+
UPB_INLINE const google_protobuf_EnumValueOptions* google_protobuf_EnumValueDescriptorProto_options(const google_protobuf_EnumValueDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_EnumValueOptions*, UPB_SIZE(16, 24)); }
|
7838
|
+
|
7839
|
+
UPB_INLINE void google_protobuf_EnumValueDescriptorProto_set_name(google_protobuf_EnumValueDescriptorProto *msg, upb_strview value) {
|
7840
|
+
_upb_sethas(msg, 1);
|
7841
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(8, 8)) = value;
|
7842
|
+
}
|
7843
|
+
UPB_INLINE void google_protobuf_EnumValueDescriptorProto_set_number(google_protobuf_EnumValueDescriptorProto *msg, int32_t value) {
|
7844
|
+
_upb_sethas(msg, 0);
|
7845
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)) = value;
|
7846
|
+
}
|
7847
|
+
UPB_INLINE void google_protobuf_EnumValueDescriptorProto_set_options(google_protobuf_EnumValueDescriptorProto *msg, google_protobuf_EnumValueOptions* value) {
|
7848
|
+
_upb_sethas(msg, 2);
|
7849
|
+
UPB_FIELD_AT(msg, google_protobuf_EnumValueOptions*, UPB_SIZE(16, 24)) = value;
|
7850
|
+
}
|
7851
|
+
UPB_INLINE struct google_protobuf_EnumValueOptions* google_protobuf_EnumValueDescriptorProto_mutable_options(google_protobuf_EnumValueDescriptorProto *msg, upb_arena *arena) {
|
7852
|
+
struct google_protobuf_EnumValueOptions* sub = (struct google_protobuf_EnumValueOptions*)google_protobuf_EnumValueDescriptorProto_options(msg);
|
7853
|
+
if (sub == NULL) {
|
7854
|
+
sub = (struct google_protobuf_EnumValueOptions*)upb_msg_new(&google_protobuf_EnumValueOptions_msginit, arena);
|
7855
|
+
if (!sub) return NULL;
|
7856
|
+
google_protobuf_EnumValueDescriptorProto_set_options(msg, sub);
|
7857
|
+
}
|
7858
|
+
return sub;
|
7859
|
+
}
|
7860
|
+
|
7861
|
+
|
7862
|
+
/* google.protobuf.ServiceDescriptorProto */
|
7863
|
+
|
7864
|
+
UPB_INLINE google_protobuf_ServiceDescriptorProto *google_protobuf_ServiceDescriptorProto_new(upb_arena *arena) {
|
7865
|
+
return (google_protobuf_ServiceDescriptorProto *)upb_msg_new(&google_protobuf_ServiceDescriptorProto_msginit, arena);
|
7866
|
+
}
|
7867
|
+
UPB_INLINE google_protobuf_ServiceDescriptorProto *google_protobuf_ServiceDescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7868
|
+
google_protobuf_ServiceDescriptorProto *ret = google_protobuf_ServiceDescriptorProto_new(arena);
|
7869
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_ServiceDescriptorProto_msginit)) ? ret : NULL;
|
7870
|
+
}
|
7871
|
+
UPB_INLINE char *google_protobuf_ServiceDescriptorProto_serialize(const google_protobuf_ServiceDescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7872
|
+
return upb_encode(msg, &google_protobuf_ServiceDescriptorProto_msginit, arena, len);
|
7873
|
+
}
|
7874
|
+
|
7875
|
+
UPB_INLINE bool google_protobuf_ServiceDescriptorProto_has_name(const google_protobuf_ServiceDescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7876
|
+
UPB_INLINE upb_strview google_protobuf_ServiceDescriptorProto_name(const google_protobuf_ServiceDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
7877
|
+
UPB_INLINE const google_protobuf_MethodDescriptorProto* const* google_protobuf_ServiceDescriptorProto_method(const google_protobuf_ServiceDescriptorProto *msg, size_t *len) { return (const google_protobuf_MethodDescriptorProto* const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
|
7878
|
+
UPB_INLINE bool google_protobuf_ServiceDescriptorProto_has_options(const google_protobuf_ServiceDescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7879
|
+
UPB_INLINE const google_protobuf_ServiceOptions* google_protobuf_ServiceDescriptorProto_options(const google_protobuf_ServiceDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_ServiceOptions*, UPB_SIZE(12, 24)); }
|
7880
|
+
|
7881
|
+
UPB_INLINE void google_protobuf_ServiceDescriptorProto_set_name(google_protobuf_ServiceDescriptorProto *msg, upb_strview value) {
|
7882
|
+
_upb_sethas(msg, 0);
|
7883
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
7884
|
+
}
|
7885
|
+
UPB_INLINE google_protobuf_MethodDescriptorProto** google_protobuf_ServiceDescriptorProto_mutable_method(google_protobuf_ServiceDescriptorProto *msg, size_t *len) {
|
7886
|
+
return (google_protobuf_MethodDescriptorProto**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
|
7887
|
+
}
|
7888
|
+
UPB_INLINE google_protobuf_MethodDescriptorProto** google_protobuf_ServiceDescriptorProto_resize_method(google_protobuf_ServiceDescriptorProto *msg, size_t len, upb_arena *arena) {
|
7889
|
+
return (google_protobuf_MethodDescriptorProto**)_upb_array_resize_accessor(msg, UPB_SIZE(16, 32), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
7890
|
+
}
|
7891
|
+
UPB_INLINE struct google_protobuf_MethodDescriptorProto* google_protobuf_ServiceDescriptorProto_add_method(google_protobuf_ServiceDescriptorProto *msg, upb_arena *arena) {
|
7892
|
+
struct google_protobuf_MethodDescriptorProto* sub = (struct google_protobuf_MethodDescriptorProto*)upb_msg_new(&google_protobuf_MethodDescriptorProto_msginit, arena);
|
7893
|
+
bool ok = _upb_array_append_accessor(
|
7894
|
+
msg, UPB_SIZE(16, 32), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
7895
|
+
if (!ok) return NULL;
|
7896
|
+
return sub;
|
7897
|
+
}
|
7898
|
+
UPB_INLINE void google_protobuf_ServiceDescriptorProto_set_options(google_protobuf_ServiceDescriptorProto *msg, google_protobuf_ServiceOptions* value) {
|
7899
|
+
_upb_sethas(msg, 1);
|
7900
|
+
UPB_FIELD_AT(msg, google_protobuf_ServiceOptions*, UPB_SIZE(12, 24)) = value;
|
7901
|
+
}
|
7902
|
+
UPB_INLINE struct google_protobuf_ServiceOptions* google_protobuf_ServiceDescriptorProto_mutable_options(google_protobuf_ServiceDescriptorProto *msg, upb_arena *arena) {
|
7903
|
+
struct google_protobuf_ServiceOptions* sub = (struct google_protobuf_ServiceOptions*)google_protobuf_ServiceDescriptorProto_options(msg);
|
7904
|
+
if (sub == NULL) {
|
7905
|
+
sub = (struct google_protobuf_ServiceOptions*)upb_msg_new(&google_protobuf_ServiceOptions_msginit, arena);
|
7906
|
+
if (!sub) return NULL;
|
7907
|
+
google_protobuf_ServiceDescriptorProto_set_options(msg, sub);
|
7908
|
+
}
|
7909
|
+
return sub;
|
7910
|
+
}
|
7911
|
+
|
7912
|
+
|
7913
|
+
/* google.protobuf.MethodDescriptorProto */
|
7914
|
+
|
7915
|
+
UPB_INLINE google_protobuf_MethodDescriptorProto *google_protobuf_MethodDescriptorProto_new(upb_arena *arena) {
|
7916
|
+
return (google_protobuf_MethodDescriptorProto *)upb_msg_new(&google_protobuf_MethodDescriptorProto_msginit, arena);
|
7917
|
+
}
|
7918
|
+
UPB_INLINE google_protobuf_MethodDescriptorProto *google_protobuf_MethodDescriptorProto_parsenew(upb_strview buf, upb_arena *arena) {
|
7919
|
+
google_protobuf_MethodDescriptorProto *ret = google_protobuf_MethodDescriptorProto_new(arena);
|
7920
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_MethodDescriptorProto_msginit)) ? ret : NULL;
|
7921
|
+
}
|
7922
|
+
UPB_INLINE char *google_protobuf_MethodDescriptorProto_serialize(const google_protobuf_MethodDescriptorProto *msg, upb_arena *arena, size_t *len) {
|
7923
|
+
return upb_encode(msg, &google_protobuf_MethodDescriptorProto_msginit, arena, len);
|
7924
|
+
}
|
7925
|
+
|
7926
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_has_name(const google_protobuf_MethodDescriptorProto *msg) { return _upb_has_field(msg, 2); }
|
7927
|
+
UPB_INLINE upb_strview google_protobuf_MethodDescriptorProto_name(const google_protobuf_MethodDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
7928
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_has_input_type(const google_protobuf_MethodDescriptorProto *msg) { return _upb_has_field(msg, 3); }
|
7929
|
+
UPB_INLINE upb_strview google_protobuf_MethodDescriptorProto_input_type(const google_protobuf_MethodDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 24)); }
|
7930
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_has_output_type(const google_protobuf_MethodDescriptorProto *msg) { return _upb_has_field(msg, 4); }
|
7931
|
+
UPB_INLINE upb_strview google_protobuf_MethodDescriptorProto_output_type(const google_protobuf_MethodDescriptorProto *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(20, 40)); }
|
7932
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_has_options(const google_protobuf_MethodDescriptorProto *msg) { return _upb_has_field(msg, 5); }
|
7933
|
+
UPB_INLINE const google_protobuf_MethodOptions* google_protobuf_MethodDescriptorProto_options(const google_protobuf_MethodDescriptorProto *msg) { return UPB_FIELD_AT(msg, const google_protobuf_MethodOptions*, UPB_SIZE(28, 56)); }
|
7934
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_has_client_streaming(const google_protobuf_MethodDescriptorProto *msg) { return _upb_has_field(msg, 0); }
|
7935
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_client_streaming(const google_protobuf_MethodDescriptorProto *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
|
7936
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_has_server_streaming(const google_protobuf_MethodDescriptorProto *msg) { return _upb_has_field(msg, 1); }
|
7937
|
+
UPB_INLINE bool google_protobuf_MethodDescriptorProto_server_streaming(const google_protobuf_MethodDescriptorProto *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)); }
|
7938
|
+
|
7939
|
+
UPB_INLINE void google_protobuf_MethodDescriptorProto_set_name(google_protobuf_MethodDescriptorProto *msg, upb_strview value) {
|
7940
|
+
_upb_sethas(msg, 2);
|
7941
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
7942
|
+
}
|
7943
|
+
UPB_INLINE void google_protobuf_MethodDescriptorProto_set_input_type(google_protobuf_MethodDescriptorProto *msg, upb_strview value) {
|
7944
|
+
_upb_sethas(msg, 3);
|
7945
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 24)) = value;
|
7946
|
+
}
|
7947
|
+
UPB_INLINE void google_protobuf_MethodDescriptorProto_set_output_type(google_protobuf_MethodDescriptorProto *msg, upb_strview value) {
|
7948
|
+
_upb_sethas(msg, 4);
|
7949
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(20, 40)) = value;
|
7950
|
+
}
|
7951
|
+
UPB_INLINE void google_protobuf_MethodDescriptorProto_set_options(google_protobuf_MethodDescriptorProto *msg, google_protobuf_MethodOptions* value) {
|
7952
|
+
_upb_sethas(msg, 5);
|
7953
|
+
UPB_FIELD_AT(msg, google_protobuf_MethodOptions*, UPB_SIZE(28, 56)) = value;
|
7954
|
+
}
|
7955
|
+
UPB_INLINE struct google_protobuf_MethodOptions* google_protobuf_MethodDescriptorProto_mutable_options(google_protobuf_MethodDescriptorProto *msg, upb_arena *arena) {
|
7956
|
+
struct google_protobuf_MethodOptions* sub = (struct google_protobuf_MethodOptions*)google_protobuf_MethodDescriptorProto_options(msg);
|
7957
|
+
if (sub == NULL) {
|
7958
|
+
sub = (struct google_protobuf_MethodOptions*)upb_msg_new(&google_protobuf_MethodOptions_msginit, arena);
|
7959
|
+
if (!sub) return NULL;
|
7960
|
+
google_protobuf_MethodDescriptorProto_set_options(msg, sub);
|
7961
|
+
}
|
7962
|
+
return sub;
|
7963
|
+
}
|
7964
|
+
UPB_INLINE void google_protobuf_MethodDescriptorProto_set_client_streaming(google_protobuf_MethodDescriptorProto *msg, bool value) {
|
7965
|
+
_upb_sethas(msg, 0);
|
7966
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
|
7967
|
+
}
|
7968
|
+
UPB_INLINE void google_protobuf_MethodDescriptorProto_set_server_streaming(google_protobuf_MethodDescriptorProto *msg, bool value) {
|
7969
|
+
_upb_sethas(msg, 1);
|
7970
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)) = value;
|
7971
|
+
}
|
7972
|
+
|
7973
|
+
|
7974
|
+
/* google.protobuf.FileOptions */
|
7975
|
+
|
7976
|
+
UPB_INLINE google_protobuf_FileOptions *google_protobuf_FileOptions_new(upb_arena *arena) {
|
7977
|
+
return (google_protobuf_FileOptions *)upb_msg_new(&google_protobuf_FileOptions_msginit, arena);
|
7978
|
+
}
|
7979
|
+
UPB_INLINE google_protobuf_FileOptions *google_protobuf_FileOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
7980
|
+
google_protobuf_FileOptions *ret = google_protobuf_FileOptions_new(arena);
|
7981
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_FileOptions_msginit)) ? ret : NULL;
|
7982
|
+
}
|
7983
|
+
UPB_INLINE char *google_protobuf_FileOptions_serialize(const google_protobuf_FileOptions *msg, upb_arena *arena, size_t *len) {
|
7984
|
+
return upb_encode(msg, &google_protobuf_FileOptions_msginit, arena, len);
|
7985
|
+
}
|
7986
|
+
|
7987
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_java_package(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 10); }
|
7988
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_java_package(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(28, 32)); }
|
7989
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_java_outer_classname(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 11); }
|
7990
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_java_outer_classname(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(36, 48)); }
|
7991
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_optimize_for(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 0); }
|
7992
|
+
UPB_INLINE google_protobuf_FileOptions_OptimizeMode google_protobuf_FileOptions_optimize_for(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, google_protobuf_FileOptions_OptimizeMode, UPB_SIZE(8, 8)); }
|
7993
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_java_multiple_files(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 1); }
|
7994
|
+
UPB_INLINE bool google_protobuf_FileOptions_java_multiple_files(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(16, 16)); }
|
7995
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_go_package(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 12); }
|
7996
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_go_package(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(44, 64)); }
|
7997
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_cc_generic_services(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 2); }
|
7998
|
+
UPB_INLINE bool google_protobuf_FileOptions_cc_generic_services(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(17, 17)); }
|
7999
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_java_generic_services(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 3); }
|
8000
|
+
UPB_INLINE bool google_protobuf_FileOptions_java_generic_services(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(18, 18)); }
|
8001
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_py_generic_services(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 4); }
|
8002
|
+
UPB_INLINE bool google_protobuf_FileOptions_py_generic_services(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(19, 19)); }
|
8003
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_java_generate_equals_and_hash(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 5); }
|
8004
|
+
UPB_INLINE bool google_protobuf_FileOptions_java_generate_equals_and_hash(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(20, 20)); }
|
8005
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_deprecated(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 6); }
|
8006
|
+
UPB_INLINE bool google_protobuf_FileOptions_deprecated(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(21, 21)); }
|
8007
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_java_string_check_utf8(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 7); }
|
8008
|
+
UPB_INLINE bool google_protobuf_FileOptions_java_string_check_utf8(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(22, 22)); }
|
8009
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_cc_enable_arenas(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 8); }
|
8010
|
+
UPB_INLINE bool google_protobuf_FileOptions_cc_enable_arenas(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(23, 23)); }
|
8011
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_objc_class_prefix(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 13); }
|
8012
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_objc_class_prefix(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(52, 80)); }
|
8013
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_csharp_namespace(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 14); }
|
8014
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_csharp_namespace(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(60, 96)); }
|
8015
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_swift_prefix(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 15); }
|
8016
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_swift_prefix(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(68, 112)); }
|
8017
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_php_class_prefix(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 16); }
|
8018
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_php_class_prefix(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(76, 128)); }
|
8019
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_php_namespace(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 17); }
|
8020
|
+
UPB_INLINE upb_strview google_protobuf_FileOptions_php_namespace(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(84, 144)); }
|
8021
|
+
UPB_INLINE bool google_protobuf_FileOptions_has_php_generic_services(const google_protobuf_FileOptions *msg) { return _upb_has_field(msg, 9); }
|
8022
|
+
UPB_INLINE bool google_protobuf_FileOptions_php_generic_services(const google_protobuf_FileOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(24, 24)); }
|
8023
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_FileOptions_uninterpreted_option(const google_protobuf_FileOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(92, 160), len); }
|
8024
|
+
|
8025
|
+
UPB_INLINE void google_protobuf_FileOptions_set_java_package(google_protobuf_FileOptions *msg, upb_strview value) {
|
8026
|
+
_upb_sethas(msg, 10);
|
8027
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(28, 32)) = value;
|
8028
|
+
}
|
8029
|
+
UPB_INLINE void google_protobuf_FileOptions_set_java_outer_classname(google_protobuf_FileOptions *msg, upb_strview value) {
|
8030
|
+
_upb_sethas(msg, 11);
|
8031
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(36, 48)) = value;
|
8032
|
+
}
|
8033
|
+
UPB_INLINE void google_protobuf_FileOptions_set_optimize_for(google_protobuf_FileOptions *msg, google_protobuf_FileOptions_OptimizeMode value) {
|
8034
|
+
_upb_sethas(msg, 0);
|
8035
|
+
UPB_FIELD_AT(msg, google_protobuf_FileOptions_OptimizeMode, UPB_SIZE(8, 8)) = value;
|
8036
|
+
}
|
8037
|
+
UPB_INLINE void google_protobuf_FileOptions_set_java_multiple_files(google_protobuf_FileOptions *msg, bool value) {
|
8038
|
+
_upb_sethas(msg, 1);
|
8039
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(16, 16)) = value;
|
8040
|
+
}
|
8041
|
+
UPB_INLINE void google_protobuf_FileOptions_set_go_package(google_protobuf_FileOptions *msg, upb_strview value) {
|
8042
|
+
_upb_sethas(msg, 12);
|
8043
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(44, 64)) = value;
|
8044
|
+
}
|
8045
|
+
UPB_INLINE void google_protobuf_FileOptions_set_cc_generic_services(google_protobuf_FileOptions *msg, bool value) {
|
8046
|
+
_upb_sethas(msg, 2);
|
8047
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(17, 17)) = value;
|
8048
|
+
}
|
8049
|
+
UPB_INLINE void google_protobuf_FileOptions_set_java_generic_services(google_protobuf_FileOptions *msg, bool value) {
|
8050
|
+
_upb_sethas(msg, 3);
|
8051
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(18, 18)) = value;
|
8052
|
+
}
|
8053
|
+
UPB_INLINE void google_protobuf_FileOptions_set_py_generic_services(google_protobuf_FileOptions *msg, bool value) {
|
8054
|
+
_upb_sethas(msg, 4);
|
8055
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(19, 19)) = value;
|
8056
|
+
}
|
8057
|
+
UPB_INLINE void google_protobuf_FileOptions_set_java_generate_equals_and_hash(google_protobuf_FileOptions *msg, bool value) {
|
8058
|
+
_upb_sethas(msg, 5);
|
8059
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(20, 20)) = value;
|
8060
|
+
}
|
8061
|
+
UPB_INLINE void google_protobuf_FileOptions_set_deprecated(google_protobuf_FileOptions *msg, bool value) {
|
8062
|
+
_upb_sethas(msg, 6);
|
8063
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(21, 21)) = value;
|
8064
|
+
}
|
8065
|
+
UPB_INLINE void google_protobuf_FileOptions_set_java_string_check_utf8(google_protobuf_FileOptions *msg, bool value) {
|
8066
|
+
_upb_sethas(msg, 7);
|
8067
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(22, 22)) = value;
|
8068
|
+
}
|
8069
|
+
UPB_INLINE void google_protobuf_FileOptions_set_cc_enable_arenas(google_protobuf_FileOptions *msg, bool value) {
|
8070
|
+
_upb_sethas(msg, 8);
|
8071
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(23, 23)) = value;
|
8072
|
+
}
|
8073
|
+
UPB_INLINE void google_protobuf_FileOptions_set_objc_class_prefix(google_protobuf_FileOptions *msg, upb_strview value) {
|
8074
|
+
_upb_sethas(msg, 13);
|
8075
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(52, 80)) = value;
|
8076
|
+
}
|
8077
|
+
UPB_INLINE void google_protobuf_FileOptions_set_csharp_namespace(google_protobuf_FileOptions *msg, upb_strview value) {
|
8078
|
+
_upb_sethas(msg, 14);
|
8079
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(60, 96)) = value;
|
8080
|
+
}
|
8081
|
+
UPB_INLINE void google_protobuf_FileOptions_set_swift_prefix(google_protobuf_FileOptions *msg, upb_strview value) {
|
8082
|
+
_upb_sethas(msg, 15);
|
8083
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(68, 112)) = value;
|
8084
|
+
}
|
8085
|
+
UPB_INLINE void google_protobuf_FileOptions_set_php_class_prefix(google_protobuf_FileOptions *msg, upb_strview value) {
|
8086
|
+
_upb_sethas(msg, 16);
|
8087
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(76, 128)) = value;
|
8088
|
+
}
|
8089
|
+
UPB_INLINE void google_protobuf_FileOptions_set_php_namespace(google_protobuf_FileOptions *msg, upb_strview value) {
|
8090
|
+
_upb_sethas(msg, 17);
|
8091
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(84, 144)) = value;
|
8092
|
+
}
|
8093
|
+
UPB_INLINE void google_protobuf_FileOptions_set_php_generic_services(google_protobuf_FileOptions *msg, bool value) {
|
8094
|
+
_upb_sethas(msg, 9);
|
8095
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(24, 24)) = value;
|
8096
|
+
}
|
8097
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_FileOptions_mutable_uninterpreted_option(google_protobuf_FileOptions *msg, size_t *len) {
|
8098
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(92, 160), len);
|
8099
|
+
}
|
8100
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_FileOptions_resize_uninterpreted_option(google_protobuf_FileOptions *msg, size_t len, upb_arena *arena) {
|
8101
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(92, 160), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8102
|
+
}
|
8103
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_FileOptions_add_uninterpreted_option(google_protobuf_FileOptions *msg, upb_arena *arena) {
|
8104
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8105
|
+
bool ok = _upb_array_append_accessor(
|
8106
|
+
msg, UPB_SIZE(92, 160), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8107
|
+
if (!ok) return NULL;
|
8108
|
+
return sub;
|
8109
|
+
}
|
8110
|
+
|
8111
|
+
|
8112
|
+
/* google.protobuf.MessageOptions */
|
8113
|
+
|
8114
|
+
UPB_INLINE google_protobuf_MessageOptions *google_protobuf_MessageOptions_new(upb_arena *arena) {
|
8115
|
+
return (google_protobuf_MessageOptions *)upb_msg_new(&google_protobuf_MessageOptions_msginit, arena);
|
8116
|
+
}
|
8117
|
+
UPB_INLINE google_protobuf_MessageOptions *google_protobuf_MessageOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
8118
|
+
google_protobuf_MessageOptions *ret = google_protobuf_MessageOptions_new(arena);
|
8119
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_MessageOptions_msginit)) ? ret : NULL;
|
8120
|
+
}
|
8121
|
+
UPB_INLINE char *google_protobuf_MessageOptions_serialize(const google_protobuf_MessageOptions *msg, upb_arena *arena, size_t *len) {
|
8122
|
+
return upb_encode(msg, &google_protobuf_MessageOptions_msginit, arena, len);
|
8123
|
+
}
|
8124
|
+
|
8125
|
+
UPB_INLINE bool google_protobuf_MessageOptions_has_message_set_wire_format(const google_protobuf_MessageOptions *msg) { return _upb_has_field(msg, 0); }
|
8126
|
+
UPB_INLINE bool google_protobuf_MessageOptions_message_set_wire_format(const google_protobuf_MessageOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
|
8127
|
+
UPB_INLINE bool google_protobuf_MessageOptions_has_no_standard_descriptor_accessor(const google_protobuf_MessageOptions *msg) { return _upb_has_field(msg, 1); }
|
8128
|
+
UPB_INLINE bool google_protobuf_MessageOptions_no_standard_descriptor_accessor(const google_protobuf_MessageOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)); }
|
8129
|
+
UPB_INLINE bool google_protobuf_MessageOptions_has_deprecated(const google_protobuf_MessageOptions *msg) { return _upb_has_field(msg, 2); }
|
8130
|
+
UPB_INLINE bool google_protobuf_MessageOptions_deprecated(const google_protobuf_MessageOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(3, 3)); }
|
8131
|
+
UPB_INLINE bool google_protobuf_MessageOptions_has_map_entry(const google_protobuf_MessageOptions *msg) { return _upb_has_field(msg, 3); }
|
8132
|
+
UPB_INLINE bool google_protobuf_MessageOptions_map_entry(const google_protobuf_MessageOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(4, 4)); }
|
8133
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_MessageOptions_uninterpreted_option(const google_protobuf_MessageOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(8, 8), len); }
|
8134
|
+
|
8135
|
+
UPB_INLINE void google_protobuf_MessageOptions_set_message_set_wire_format(google_protobuf_MessageOptions *msg, bool value) {
|
8136
|
+
_upb_sethas(msg, 0);
|
8137
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
|
8138
|
+
}
|
8139
|
+
UPB_INLINE void google_protobuf_MessageOptions_set_no_standard_descriptor_accessor(google_protobuf_MessageOptions *msg, bool value) {
|
8140
|
+
_upb_sethas(msg, 1);
|
8141
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)) = value;
|
8142
|
+
}
|
8143
|
+
UPB_INLINE void google_protobuf_MessageOptions_set_deprecated(google_protobuf_MessageOptions *msg, bool value) {
|
8144
|
+
_upb_sethas(msg, 2);
|
8145
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(3, 3)) = value;
|
8146
|
+
}
|
8147
|
+
UPB_INLINE void google_protobuf_MessageOptions_set_map_entry(google_protobuf_MessageOptions *msg, bool value) {
|
8148
|
+
_upb_sethas(msg, 3);
|
8149
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(4, 4)) = value;
|
8150
|
+
}
|
8151
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_MessageOptions_mutable_uninterpreted_option(google_protobuf_MessageOptions *msg, size_t *len) {
|
8152
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 8), len);
|
8153
|
+
}
|
8154
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_MessageOptions_resize_uninterpreted_option(google_protobuf_MessageOptions *msg, size_t len, upb_arena *arena) {
|
8155
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(8, 8), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8156
|
+
}
|
8157
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_MessageOptions_add_uninterpreted_option(google_protobuf_MessageOptions *msg, upb_arena *arena) {
|
8158
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8159
|
+
bool ok = _upb_array_append_accessor(
|
8160
|
+
msg, UPB_SIZE(8, 8), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8161
|
+
if (!ok) return NULL;
|
8162
|
+
return sub;
|
8163
|
+
}
|
8164
|
+
|
8165
|
+
|
8166
|
+
/* google.protobuf.FieldOptions */
|
8167
|
+
|
8168
|
+
UPB_INLINE google_protobuf_FieldOptions *google_protobuf_FieldOptions_new(upb_arena *arena) {
|
8169
|
+
return (google_protobuf_FieldOptions *)upb_msg_new(&google_protobuf_FieldOptions_msginit, arena);
|
8170
|
+
}
|
8171
|
+
UPB_INLINE google_protobuf_FieldOptions *google_protobuf_FieldOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
8172
|
+
google_protobuf_FieldOptions *ret = google_protobuf_FieldOptions_new(arena);
|
8173
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_FieldOptions_msginit)) ? ret : NULL;
|
8174
|
+
}
|
8175
|
+
UPB_INLINE char *google_protobuf_FieldOptions_serialize(const google_protobuf_FieldOptions *msg, upb_arena *arena, size_t *len) {
|
8176
|
+
return upb_encode(msg, &google_protobuf_FieldOptions_msginit, arena, len);
|
8177
|
+
}
|
8178
|
+
|
8179
|
+
UPB_INLINE bool google_protobuf_FieldOptions_has_ctype(const google_protobuf_FieldOptions *msg) { return _upb_has_field(msg, 0); }
|
8180
|
+
UPB_INLINE google_protobuf_FieldOptions_CType google_protobuf_FieldOptions_ctype(const google_protobuf_FieldOptions *msg) { return UPB_FIELD_AT(msg, google_protobuf_FieldOptions_CType, UPB_SIZE(8, 8)); }
|
8181
|
+
UPB_INLINE bool google_protobuf_FieldOptions_has_packed(const google_protobuf_FieldOptions *msg) { return _upb_has_field(msg, 2); }
|
8182
|
+
UPB_INLINE bool google_protobuf_FieldOptions_packed(const google_protobuf_FieldOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(24, 24)); }
|
8183
|
+
UPB_INLINE bool google_protobuf_FieldOptions_has_deprecated(const google_protobuf_FieldOptions *msg) { return _upb_has_field(msg, 3); }
|
8184
|
+
UPB_INLINE bool google_protobuf_FieldOptions_deprecated(const google_protobuf_FieldOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(25, 25)); }
|
8185
|
+
UPB_INLINE bool google_protobuf_FieldOptions_has_lazy(const google_protobuf_FieldOptions *msg) { return _upb_has_field(msg, 4); }
|
8186
|
+
UPB_INLINE bool google_protobuf_FieldOptions_lazy(const google_protobuf_FieldOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(26, 26)); }
|
8187
|
+
UPB_INLINE bool google_protobuf_FieldOptions_has_jstype(const google_protobuf_FieldOptions *msg) { return _upb_has_field(msg, 1); }
|
8188
|
+
UPB_INLINE google_protobuf_FieldOptions_JSType google_protobuf_FieldOptions_jstype(const google_protobuf_FieldOptions *msg) { return UPB_FIELD_AT(msg, google_protobuf_FieldOptions_JSType, UPB_SIZE(16, 16)); }
|
8189
|
+
UPB_INLINE bool google_protobuf_FieldOptions_has_weak(const google_protobuf_FieldOptions *msg) { return _upb_has_field(msg, 5); }
|
8190
|
+
UPB_INLINE bool google_protobuf_FieldOptions_weak(const google_protobuf_FieldOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(27, 27)); }
|
8191
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_FieldOptions_uninterpreted_option(const google_protobuf_FieldOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(28, 32), len); }
|
8192
|
+
|
8193
|
+
UPB_INLINE void google_protobuf_FieldOptions_set_ctype(google_protobuf_FieldOptions *msg, google_protobuf_FieldOptions_CType value) {
|
8194
|
+
_upb_sethas(msg, 0);
|
8195
|
+
UPB_FIELD_AT(msg, google_protobuf_FieldOptions_CType, UPB_SIZE(8, 8)) = value;
|
8196
|
+
}
|
8197
|
+
UPB_INLINE void google_protobuf_FieldOptions_set_packed(google_protobuf_FieldOptions *msg, bool value) {
|
8198
|
+
_upb_sethas(msg, 2);
|
8199
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(24, 24)) = value;
|
8200
|
+
}
|
8201
|
+
UPB_INLINE void google_protobuf_FieldOptions_set_deprecated(google_protobuf_FieldOptions *msg, bool value) {
|
8202
|
+
_upb_sethas(msg, 3);
|
8203
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(25, 25)) = value;
|
8204
|
+
}
|
8205
|
+
UPB_INLINE void google_protobuf_FieldOptions_set_lazy(google_protobuf_FieldOptions *msg, bool value) {
|
8206
|
+
_upb_sethas(msg, 4);
|
8207
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(26, 26)) = value;
|
8208
|
+
}
|
8209
|
+
UPB_INLINE void google_protobuf_FieldOptions_set_jstype(google_protobuf_FieldOptions *msg, google_protobuf_FieldOptions_JSType value) {
|
8210
|
+
_upb_sethas(msg, 1);
|
8211
|
+
UPB_FIELD_AT(msg, google_protobuf_FieldOptions_JSType, UPB_SIZE(16, 16)) = value;
|
8212
|
+
}
|
8213
|
+
UPB_INLINE void google_protobuf_FieldOptions_set_weak(google_protobuf_FieldOptions *msg, bool value) {
|
8214
|
+
_upb_sethas(msg, 5);
|
8215
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(27, 27)) = value;
|
8216
|
+
}
|
8217
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_FieldOptions_mutable_uninterpreted_option(google_protobuf_FieldOptions *msg, size_t *len) {
|
8218
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 32), len);
|
8219
|
+
}
|
8220
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_FieldOptions_resize_uninterpreted_option(google_protobuf_FieldOptions *msg, size_t len, upb_arena *arena) {
|
8221
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(28, 32), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8222
|
+
}
|
8223
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_FieldOptions_add_uninterpreted_option(google_protobuf_FieldOptions *msg, upb_arena *arena) {
|
8224
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8225
|
+
bool ok = _upb_array_append_accessor(
|
8226
|
+
msg, UPB_SIZE(28, 32), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8227
|
+
if (!ok) return NULL;
|
8228
|
+
return sub;
|
8229
|
+
}
|
8230
|
+
|
8231
|
+
|
8232
|
+
/* google.protobuf.OneofOptions */
|
8233
|
+
|
8234
|
+
UPB_INLINE google_protobuf_OneofOptions *google_protobuf_OneofOptions_new(upb_arena *arena) {
|
8235
|
+
return (google_protobuf_OneofOptions *)upb_msg_new(&google_protobuf_OneofOptions_msginit, arena);
|
8236
|
+
}
|
8237
|
+
UPB_INLINE google_protobuf_OneofOptions *google_protobuf_OneofOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
8238
|
+
google_protobuf_OneofOptions *ret = google_protobuf_OneofOptions_new(arena);
|
8239
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_OneofOptions_msginit)) ? ret : NULL;
|
8240
|
+
}
|
8241
|
+
UPB_INLINE char *google_protobuf_OneofOptions_serialize(const google_protobuf_OneofOptions *msg, upb_arena *arena, size_t *len) {
|
8242
|
+
return upb_encode(msg, &google_protobuf_OneofOptions_msginit, arena, len);
|
8243
|
+
}
|
8244
|
+
|
8245
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_OneofOptions_uninterpreted_option(const google_protobuf_OneofOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
|
8246
|
+
|
8247
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_OneofOptions_mutable_uninterpreted_option(google_protobuf_OneofOptions *msg, size_t *len) {
|
8248
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
|
8249
|
+
}
|
8250
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_OneofOptions_resize_uninterpreted_option(google_protobuf_OneofOptions *msg, size_t len, upb_arena *arena) {
|
8251
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8252
|
+
}
|
8253
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_OneofOptions_add_uninterpreted_option(google_protobuf_OneofOptions *msg, upb_arena *arena) {
|
8254
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8255
|
+
bool ok = _upb_array_append_accessor(
|
8256
|
+
msg, UPB_SIZE(0, 0), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8257
|
+
if (!ok) return NULL;
|
8258
|
+
return sub;
|
8259
|
+
}
|
8260
|
+
|
8261
|
+
|
8262
|
+
/* google.protobuf.EnumOptions */
|
8263
|
+
|
8264
|
+
UPB_INLINE google_protobuf_EnumOptions *google_protobuf_EnumOptions_new(upb_arena *arena) {
|
8265
|
+
return (google_protobuf_EnumOptions *)upb_msg_new(&google_protobuf_EnumOptions_msginit, arena);
|
8266
|
+
}
|
8267
|
+
UPB_INLINE google_protobuf_EnumOptions *google_protobuf_EnumOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
8268
|
+
google_protobuf_EnumOptions *ret = google_protobuf_EnumOptions_new(arena);
|
8269
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_EnumOptions_msginit)) ? ret : NULL;
|
8270
|
+
}
|
8271
|
+
UPB_INLINE char *google_protobuf_EnumOptions_serialize(const google_protobuf_EnumOptions *msg, upb_arena *arena, size_t *len) {
|
8272
|
+
return upb_encode(msg, &google_protobuf_EnumOptions_msginit, arena, len);
|
8273
|
+
}
|
8274
|
+
|
8275
|
+
UPB_INLINE bool google_protobuf_EnumOptions_has_allow_alias(const google_protobuf_EnumOptions *msg) { return _upb_has_field(msg, 0); }
|
8276
|
+
UPB_INLINE bool google_protobuf_EnumOptions_allow_alias(const google_protobuf_EnumOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
|
8277
|
+
UPB_INLINE bool google_protobuf_EnumOptions_has_deprecated(const google_protobuf_EnumOptions *msg) { return _upb_has_field(msg, 1); }
|
8278
|
+
UPB_INLINE bool google_protobuf_EnumOptions_deprecated(const google_protobuf_EnumOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)); }
|
8279
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_EnumOptions_uninterpreted_option(const google_protobuf_EnumOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len); }
|
8280
|
+
|
8281
|
+
UPB_INLINE void google_protobuf_EnumOptions_set_allow_alias(google_protobuf_EnumOptions *msg, bool value) {
|
8282
|
+
_upb_sethas(msg, 0);
|
8283
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
|
8284
|
+
}
|
8285
|
+
UPB_INLINE void google_protobuf_EnumOptions_set_deprecated(google_protobuf_EnumOptions *msg, bool value) {
|
8286
|
+
_upb_sethas(msg, 1);
|
8287
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(2, 2)) = value;
|
8288
|
+
}
|
8289
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_EnumOptions_mutable_uninterpreted_option(google_protobuf_EnumOptions *msg, size_t *len) {
|
8290
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(4, 8), len);
|
8291
|
+
}
|
8292
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_EnumOptions_resize_uninterpreted_option(google_protobuf_EnumOptions *msg, size_t len, upb_arena *arena) {
|
8293
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(4, 8), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8294
|
+
}
|
8295
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_EnumOptions_add_uninterpreted_option(google_protobuf_EnumOptions *msg, upb_arena *arena) {
|
8296
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8297
|
+
bool ok = _upb_array_append_accessor(
|
8298
|
+
msg, UPB_SIZE(4, 8), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8299
|
+
if (!ok) return NULL;
|
8300
|
+
return sub;
|
8301
|
+
}
|
8302
|
+
|
8303
|
+
|
8304
|
+
/* google.protobuf.EnumValueOptions */
|
8305
|
+
|
8306
|
+
UPB_INLINE google_protobuf_EnumValueOptions *google_protobuf_EnumValueOptions_new(upb_arena *arena) {
|
8307
|
+
return (google_protobuf_EnumValueOptions *)upb_msg_new(&google_protobuf_EnumValueOptions_msginit, arena);
|
8308
|
+
}
|
8309
|
+
UPB_INLINE google_protobuf_EnumValueOptions *google_protobuf_EnumValueOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
8310
|
+
google_protobuf_EnumValueOptions *ret = google_protobuf_EnumValueOptions_new(arena);
|
8311
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_EnumValueOptions_msginit)) ? ret : NULL;
|
8312
|
+
}
|
8313
|
+
UPB_INLINE char *google_protobuf_EnumValueOptions_serialize(const google_protobuf_EnumValueOptions *msg, upb_arena *arena, size_t *len) {
|
8314
|
+
return upb_encode(msg, &google_protobuf_EnumValueOptions_msginit, arena, len);
|
8315
|
+
}
|
8316
|
+
|
8317
|
+
UPB_INLINE bool google_protobuf_EnumValueOptions_has_deprecated(const google_protobuf_EnumValueOptions *msg) { return _upb_has_field(msg, 0); }
|
8318
|
+
UPB_INLINE bool google_protobuf_EnumValueOptions_deprecated(const google_protobuf_EnumValueOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
|
8319
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_EnumValueOptions_uninterpreted_option(const google_protobuf_EnumValueOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len); }
|
8320
|
+
|
8321
|
+
UPB_INLINE void google_protobuf_EnumValueOptions_set_deprecated(google_protobuf_EnumValueOptions *msg, bool value) {
|
8322
|
+
_upb_sethas(msg, 0);
|
8323
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
|
8324
|
+
}
|
8325
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_EnumValueOptions_mutable_uninterpreted_option(google_protobuf_EnumValueOptions *msg, size_t *len) {
|
8326
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(4, 8), len);
|
8327
|
+
}
|
8328
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_EnumValueOptions_resize_uninterpreted_option(google_protobuf_EnumValueOptions *msg, size_t len, upb_arena *arena) {
|
8329
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(4, 8), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8330
|
+
}
|
8331
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_EnumValueOptions_add_uninterpreted_option(google_protobuf_EnumValueOptions *msg, upb_arena *arena) {
|
8332
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8333
|
+
bool ok = _upb_array_append_accessor(
|
8334
|
+
msg, UPB_SIZE(4, 8), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8335
|
+
if (!ok) return NULL;
|
8336
|
+
return sub;
|
8337
|
+
}
|
8338
|
+
|
8339
|
+
|
8340
|
+
/* google.protobuf.ServiceOptions */
|
8341
|
+
|
8342
|
+
UPB_INLINE google_protobuf_ServiceOptions *google_protobuf_ServiceOptions_new(upb_arena *arena) {
|
8343
|
+
return (google_protobuf_ServiceOptions *)upb_msg_new(&google_protobuf_ServiceOptions_msginit, arena);
|
8344
|
+
}
|
8345
|
+
UPB_INLINE google_protobuf_ServiceOptions *google_protobuf_ServiceOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
8346
|
+
google_protobuf_ServiceOptions *ret = google_protobuf_ServiceOptions_new(arena);
|
8347
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_ServiceOptions_msginit)) ? ret : NULL;
|
8348
|
+
}
|
8349
|
+
UPB_INLINE char *google_protobuf_ServiceOptions_serialize(const google_protobuf_ServiceOptions *msg, upb_arena *arena, size_t *len) {
|
8350
|
+
return upb_encode(msg, &google_protobuf_ServiceOptions_msginit, arena, len);
|
8351
|
+
}
|
8352
|
+
|
8353
|
+
UPB_INLINE bool google_protobuf_ServiceOptions_has_deprecated(const google_protobuf_ServiceOptions *msg) { return _upb_has_field(msg, 0); }
|
8354
|
+
UPB_INLINE bool google_protobuf_ServiceOptions_deprecated(const google_protobuf_ServiceOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
|
8355
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_ServiceOptions_uninterpreted_option(const google_protobuf_ServiceOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(4, 8), len); }
|
8356
|
+
|
8357
|
+
UPB_INLINE void google_protobuf_ServiceOptions_set_deprecated(google_protobuf_ServiceOptions *msg, bool value) {
|
8358
|
+
_upb_sethas(msg, 0);
|
8359
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
|
8360
|
+
}
|
8361
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_ServiceOptions_mutable_uninterpreted_option(google_protobuf_ServiceOptions *msg, size_t *len) {
|
8362
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(4, 8), len);
|
8363
|
+
}
|
8364
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_ServiceOptions_resize_uninterpreted_option(google_protobuf_ServiceOptions *msg, size_t len, upb_arena *arena) {
|
8365
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(4, 8), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8366
|
+
}
|
8367
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_ServiceOptions_add_uninterpreted_option(google_protobuf_ServiceOptions *msg, upb_arena *arena) {
|
8368
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8369
|
+
bool ok = _upb_array_append_accessor(
|
8370
|
+
msg, UPB_SIZE(4, 8), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8371
|
+
if (!ok) return NULL;
|
8372
|
+
return sub;
|
8373
|
+
}
|
8374
|
+
|
8375
|
+
|
8376
|
+
/* google.protobuf.MethodOptions */
|
8377
|
+
|
8378
|
+
UPB_INLINE google_protobuf_MethodOptions *google_protobuf_MethodOptions_new(upb_arena *arena) {
|
8379
|
+
return (google_protobuf_MethodOptions *)upb_msg_new(&google_protobuf_MethodOptions_msginit, arena);
|
8380
|
+
}
|
8381
|
+
UPB_INLINE google_protobuf_MethodOptions *google_protobuf_MethodOptions_parsenew(upb_strview buf, upb_arena *arena) {
|
8382
|
+
google_protobuf_MethodOptions *ret = google_protobuf_MethodOptions_new(arena);
|
8383
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_MethodOptions_msginit)) ? ret : NULL;
|
8384
|
+
}
|
8385
|
+
UPB_INLINE char *google_protobuf_MethodOptions_serialize(const google_protobuf_MethodOptions *msg, upb_arena *arena, size_t *len) {
|
8386
|
+
return upb_encode(msg, &google_protobuf_MethodOptions_msginit, arena, len);
|
8387
|
+
}
|
8388
|
+
|
8389
|
+
UPB_INLINE bool google_protobuf_MethodOptions_has_deprecated(const google_protobuf_MethodOptions *msg) { return _upb_has_field(msg, 1); }
|
8390
|
+
UPB_INLINE bool google_protobuf_MethodOptions_deprecated(const google_protobuf_MethodOptions *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(16, 16)); }
|
8391
|
+
UPB_INLINE bool google_protobuf_MethodOptions_has_idempotency_level(const google_protobuf_MethodOptions *msg) { return _upb_has_field(msg, 0); }
|
8392
|
+
UPB_INLINE google_protobuf_MethodOptions_IdempotencyLevel google_protobuf_MethodOptions_idempotency_level(const google_protobuf_MethodOptions *msg) { return UPB_FIELD_AT(msg, google_protobuf_MethodOptions_IdempotencyLevel, UPB_SIZE(8, 8)); }
|
8393
|
+
UPB_INLINE const google_protobuf_UninterpretedOption* const* google_protobuf_MethodOptions_uninterpreted_option(const google_protobuf_MethodOptions *msg, size_t *len) { return (const google_protobuf_UninterpretedOption* const*)_upb_array_accessor(msg, UPB_SIZE(20, 24), len); }
|
8394
|
+
|
8395
|
+
UPB_INLINE void google_protobuf_MethodOptions_set_deprecated(google_protobuf_MethodOptions *msg, bool value) {
|
8396
|
+
_upb_sethas(msg, 1);
|
8397
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(16, 16)) = value;
|
8398
|
+
}
|
8399
|
+
UPB_INLINE void google_protobuf_MethodOptions_set_idempotency_level(google_protobuf_MethodOptions *msg, google_protobuf_MethodOptions_IdempotencyLevel value) {
|
8400
|
+
_upb_sethas(msg, 0);
|
8401
|
+
UPB_FIELD_AT(msg, google_protobuf_MethodOptions_IdempotencyLevel, UPB_SIZE(8, 8)) = value;
|
8402
|
+
}
|
8403
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_MethodOptions_mutable_uninterpreted_option(google_protobuf_MethodOptions *msg, size_t *len) {
|
8404
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 24), len);
|
8405
|
+
}
|
8406
|
+
UPB_INLINE google_protobuf_UninterpretedOption** google_protobuf_MethodOptions_resize_uninterpreted_option(google_protobuf_MethodOptions *msg, size_t len, upb_arena *arena) {
|
8407
|
+
return (google_protobuf_UninterpretedOption**)_upb_array_resize_accessor(msg, UPB_SIZE(20, 24), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8408
|
+
}
|
8409
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption* google_protobuf_MethodOptions_add_uninterpreted_option(google_protobuf_MethodOptions *msg, upb_arena *arena) {
|
8410
|
+
struct google_protobuf_UninterpretedOption* sub = (struct google_protobuf_UninterpretedOption*)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8411
|
+
bool ok = _upb_array_append_accessor(
|
8412
|
+
msg, UPB_SIZE(20, 24), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8413
|
+
if (!ok) return NULL;
|
8414
|
+
return sub;
|
8415
|
+
}
|
6687
8416
|
|
6688
|
-
/* Like upb_msg_init() / upb_msg_uninit(), except the message's memory is
|
6689
|
-
* allocated / freed from the given upb_alloc. */
|
6690
|
-
upb_msg *upb_msg_new(const upb_msglayout *l, upb_alloc *a);
|
6691
|
-
void upb_msg_free(upb_msg *msg, const upb_msglayout *l);
|
6692
8417
|
|
6693
|
-
/*
|
6694
|
-
upb_alloc *upb_msg_alloc(const upb_msg *msg, const upb_msglayout *l);
|
8418
|
+
/* google.protobuf.UninterpretedOption */
|
6695
8419
|
|
6696
|
-
|
6697
|
-
*
|
6698
|
-
|
6699
|
-
|
8420
|
+
UPB_INLINE google_protobuf_UninterpretedOption *google_protobuf_UninterpretedOption_new(upb_arena *arena) {
|
8421
|
+
return (google_protobuf_UninterpretedOption *)upb_msg_new(&google_protobuf_UninterpretedOption_msginit, arena);
|
8422
|
+
}
|
8423
|
+
UPB_INLINE google_protobuf_UninterpretedOption *google_protobuf_UninterpretedOption_parsenew(upb_strview buf, upb_arena *arena) {
|
8424
|
+
google_protobuf_UninterpretedOption *ret = google_protobuf_UninterpretedOption_new(arena);
|
8425
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_UninterpretedOption_msginit)) ? ret : NULL;
|
8426
|
+
}
|
8427
|
+
UPB_INLINE char *google_protobuf_UninterpretedOption_serialize(const google_protobuf_UninterpretedOption *msg, upb_arena *arena, size_t *len) {
|
8428
|
+
return upb_encode(msg, &google_protobuf_UninterpretedOption_msginit, arena, len);
|
8429
|
+
}
|
6700
8430
|
|
6701
|
-
|
8431
|
+
UPB_INLINE const google_protobuf_UninterpretedOption_NamePart* const* google_protobuf_UninterpretedOption_name(const google_protobuf_UninterpretedOption *msg, size_t *len) { return (const google_protobuf_UninterpretedOption_NamePart* const*)_upb_array_accessor(msg, UPB_SIZE(56, 80), len); }
|
8432
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_has_identifier_value(const google_protobuf_UninterpretedOption *msg) { return _upb_has_field(msg, 3); }
|
8433
|
+
UPB_INLINE upb_strview google_protobuf_UninterpretedOption_identifier_value(const google_protobuf_UninterpretedOption *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(32, 32)); }
|
8434
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_has_positive_int_value(const google_protobuf_UninterpretedOption *msg) { return _upb_has_field(msg, 0); }
|
8435
|
+
UPB_INLINE uint64_t google_protobuf_UninterpretedOption_positive_int_value(const google_protobuf_UninterpretedOption *msg) { return UPB_FIELD_AT(msg, uint64_t, UPB_SIZE(8, 8)); }
|
8436
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_has_negative_int_value(const google_protobuf_UninterpretedOption *msg) { return _upb_has_field(msg, 1); }
|
8437
|
+
UPB_INLINE int64_t google_protobuf_UninterpretedOption_negative_int_value(const google_protobuf_UninterpretedOption *msg) { return UPB_FIELD_AT(msg, int64_t, UPB_SIZE(16, 16)); }
|
8438
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_has_double_value(const google_protobuf_UninterpretedOption *msg) { return _upb_has_field(msg, 2); }
|
8439
|
+
UPB_INLINE double google_protobuf_UninterpretedOption_double_value(const google_protobuf_UninterpretedOption *msg) { return UPB_FIELD_AT(msg, double, UPB_SIZE(24, 24)); }
|
8440
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_has_string_value(const google_protobuf_UninterpretedOption *msg) { return _upb_has_field(msg, 4); }
|
8441
|
+
UPB_INLINE upb_strview google_protobuf_UninterpretedOption_string_value(const google_protobuf_UninterpretedOption *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(40, 48)); }
|
8442
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_has_aggregate_value(const google_protobuf_UninterpretedOption *msg) { return _upb_has_field(msg, 5); }
|
8443
|
+
UPB_INLINE upb_strview google_protobuf_UninterpretedOption_aggregate_value(const google_protobuf_UninterpretedOption *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(48, 64)); }
|
6702
8444
|
|
6703
|
-
|
6704
|
-
|
6705
|
-
|
6706
|
-
|
6707
|
-
|
6708
|
-
|
6709
|
-
*
|
6710
|
-
*
|
6711
|
-
|
6712
|
-
|
6713
|
-
|
6714
|
-
|
6715
|
-
|
8445
|
+
UPB_INLINE google_protobuf_UninterpretedOption_NamePart** google_protobuf_UninterpretedOption_mutable_name(google_protobuf_UninterpretedOption *msg, size_t *len) {
|
8446
|
+
return (google_protobuf_UninterpretedOption_NamePart**)_upb_array_mutable_accessor(msg, UPB_SIZE(56, 80), len);
|
8447
|
+
}
|
8448
|
+
UPB_INLINE google_protobuf_UninterpretedOption_NamePart** google_protobuf_UninterpretedOption_resize_name(google_protobuf_UninterpretedOption *msg, size_t len, upb_arena *arena) {
|
8449
|
+
return (google_protobuf_UninterpretedOption_NamePart**)_upb_array_resize_accessor(msg, UPB_SIZE(56, 80), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8450
|
+
}
|
8451
|
+
UPB_INLINE struct google_protobuf_UninterpretedOption_NamePart* google_protobuf_UninterpretedOption_add_name(google_protobuf_UninterpretedOption *msg, upb_arena *arena) {
|
8452
|
+
struct google_protobuf_UninterpretedOption_NamePart* sub = (struct google_protobuf_UninterpretedOption_NamePart*)upb_msg_new(&google_protobuf_UninterpretedOption_NamePart_msginit, arena);
|
8453
|
+
bool ok = _upb_array_append_accessor(
|
8454
|
+
msg, UPB_SIZE(56, 80), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8455
|
+
if (!ok) return NULL;
|
8456
|
+
return sub;
|
8457
|
+
}
|
8458
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_set_identifier_value(google_protobuf_UninterpretedOption *msg, upb_strview value) {
|
8459
|
+
_upb_sethas(msg, 3);
|
8460
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(32, 32)) = value;
|
8461
|
+
}
|
8462
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_set_positive_int_value(google_protobuf_UninterpretedOption *msg, uint64_t value) {
|
8463
|
+
_upb_sethas(msg, 0);
|
8464
|
+
UPB_FIELD_AT(msg, uint64_t, UPB_SIZE(8, 8)) = value;
|
8465
|
+
}
|
8466
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_set_negative_int_value(google_protobuf_UninterpretedOption *msg, int64_t value) {
|
8467
|
+
_upb_sethas(msg, 1);
|
8468
|
+
UPB_FIELD_AT(msg, int64_t, UPB_SIZE(16, 16)) = value;
|
8469
|
+
}
|
8470
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_set_double_value(google_protobuf_UninterpretedOption *msg, double value) {
|
8471
|
+
_upb_sethas(msg, 2);
|
8472
|
+
UPB_FIELD_AT(msg, double, UPB_SIZE(24, 24)) = value;
|
8473
|
+
}
|
8474
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_set_string_value(google_protobuf_UninterpretedOption *msg, upb_strview value) {
|
8475
|
+
_upb_sethas(msg, 4);
|
8476
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(40, 48)) = value;
|
8477
|
+
}
|
8478
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_set_aggregate_value(google_protobuf_UninterpretedOption *msg, upb_strview value) {
|
8479
|
+
_upb_sethas(msg, 5);
|
8480
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(48, 64)) = value;
|
8481
|
+
}
|
6716
8482
|
|
6717
|
-
/* May only be called for fields where upb_fielddef_haspresence(f) == true. */
|
6718
|
-
bool upb_msg_has(const upb_msg *msg,
|
6719
|
-
const upb_fielddef *f,
|
6720
|
-
const upb_msglayout *l);
|
6721
8483
|
|
6722
|
-
/*
|
6723
|
-
const upb_fielddef *upb_msg_getoneofcase(const upb_msg *msg,
|
6724
|
-
const upb_oneofdef *o,
|
6725
|
-
const upb_msglayout *l);
|
8484
|
+
/* google.protobuf.UninterpretedOption.NamePart */
|
6726
8485
|
|
6727
|
-
|
6728
|
-
|
6729
|
-
|
6730
|
-
|
8486
|
+
UPB_INLINE google_protobuf_UninterpretedOption_NamePart *google_protobuf_UninterpretedOption_NamePart_new(upb_arena *arena) {
|
8487
|
+
return (google_protobuf_UninterpretedOption_NamePart *)upb_msg_new(&google_protobuf_UninterpretedOption_NamePart_msginit, arena);
|
8488
|
+
}
|
8489
|
+
UPB_INLINE google_protobuf_UninterpretedOption_NamePart *google_protobuf_UninterpretedOption_NamePart_parsenew(upb_strview buf, upb_arena *arena) {
|
8490
|
+
google_protobuf_UninterpretedOption_NamePart *ret = google_protobuf_UninterpretedOption_NamePart_new(arena);
|
8491
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_UninterpretedOption_NamePart_msginit)) ? ret : NULL;
|
8492
|
+
}
|
8493
|
+
UPB_INLINE char *google_protobuf_UninterpretedOption_NamePart_serialize(const google_protobuf_UninterpretedOption_NamePart *msg, upb_arena *arena, size_t *len) {
|
8494
|
+
return upb_encode(msg, &google_protobuf_UninterpretedOption_NamePart_msginit, arena, len);
|
8495
|
+
}
|
6731
8496
|
|
8497
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_NamePart_has_name_part(const google_protobuf_UninterpretedOption_NamePart *msg) { return _upb_has_field(msg, 1); }
|
8498
|
+
UPB_INLINE upb_strview google_protobuf_UninterpretedOption_NamePart_name_part(const google_protobuf_UninterpretedOption_NamePart *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
8499
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_NamePart_has_is_extension(const google_protobuf_UninterpretedOption_NamePart *msg) { return _upb_has_field(msg, 0); }
|
8500
|
+
UPB_INLINE bool google_protobuf_UninterpretedOption_NamePart_is_extension(const google_protobuf_UninterpretedOption_NamePart *msg) { return UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)); }
|
6732
8501
|
|
6733
|
-
|
6734
|
-
|
8502
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_NamePart_set_name_part(google_protobuf_UninterpretedOption_NamePart *msg, upb_strview value) {
|
8503
|
+
_upb_sethas(msg, 1);
|
8504
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
8505
|
+
}
|
8506
|
+
UPB_INLINE void google_protobuf_UninterpretedOption_NamePart_set_is_extension(google_protobuf_UninterpretedOption_NamePart *msg, bool value) {
|
8507
|
+
_upb_sethas(msg, 0);
|
8508
|
+
UPB_FIELD_AT(msg, bool, UPB_SIZE(1, 1)) = value;
|
8509
|
+
}
|
6735
8510
|
|
6736
|
-
/* Sets the given field to the given value. Does not perform any memory
|
6737
|
-
* management: if you overwrite a pointer to a msg/array/map/string without
|
6738
|
-
* cleaning it up (or using an arena) it will leak.
|
6739
|
-
*/
|
6740
|
-
bool upb_msg_set(upb_msg *msg,
|
6741
|
-
const upb_fielddef *f,
|
6742
|
-
upb_msgval val,
|
6743
|
-
const upb_msglayout *l);
|
6744
8511
|
|
6745
|
-
/*
|
6746
|
-
* submessage fields set it back to NULL. This could involve releasing some
|
6747
|
-
* internal memory (for example, from an extension dictionary), but it is not
|
6748
|
-
* recursive in any way and will not recover any memory that may be used by
|
6749
|
-
* arrays/maps/strings/msgs that this field may have pointed to.
|
6750
|
-
*/
|
6751
|
-
bool upb_msg_clearfield(upb_msg *msg,
|
6752
|
-
const upb_fielddef *f,
|
6753
|
-
const upb_msglayout *l);
|
8512
|
+
/* google.protobuf.SourceCodeInfo */
|
6754
8513
|
|
6755
|
-
|
6756
|
-
|
6757
|
-
|
6758
|
-
|
8514
|
+
UPB_INLINE google_protobuf_SourceCodeInfo *google_protobuf_SourceCodeInfo_new(upb_arena *arena) {
|
8515
|
+
return (google_protobuf_SourceCodeInfo *)upb_msg_new(&google_protobuf_SourceCodeInfo_msginit, arena);
|
8516
|
+
}
|
8517
|
+
UPB_INLINE google_protobuf_SourceCodeInfo *google_protobuf_SourceCodeInfo_parsenew(upb_strview buf, upb_arena *arena) {
|
8518
|
+
google_protobuf_SourceCodeInfo *ret = google_protobuf_SourceCodeInfo_new(arena);
|
8519
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_SourceCodeInfo_msginit)) ? ret : NULL;
|
8520
|
+
}
|
8521
|
+
UPB_INLINE char *google_protobuf_SourceCodeInfo_serialize(const google_protobuf_SourceCodeInfo *msg, upb_arena *arena, size_t *len) {
|
8522
|
+
return upb_encode(msg, &google_protobuf_SourceCodeInfo_msginit, arena, len);
|
8523
|
+
}
|
6759
8524
|
|
6760
|
-
|
8525
|
+
UPB_INLINE const google_protobuf_SourceCodeInfo_Location* const* google_protobuf_SourceCodeInfo_location(const google_protobuf_SourceCodeInfo *msg, size_t *len) { return (const google_protobuf_SourceCodeInfo_Location* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
|
6761
8526
|
|
8527
|
+
UPB_INLINE google_protobuf_SourceCodeInfo_Location** google_protobuf_SourceCodeInfo_mutable_location(google_protobuf_SourceCodeInfo *msg, size_t *len) {
|
8528
|
+
return (google_protobuf_SourceCodeInfo_Location**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
|
8529
|
+
}
|
8530
|
+
UPB_INLINE google_protobuf_SourceCodeInfo_Location** google_protobuf_SourceCodeInfo_resize_location(google_protobuf_SourceCodeInfo *msg, size_t len, upb_arena *arena) {
|
8531
|
+
return (google_protobuf_SourceCodeInfo_Location**)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8532
|
+
}
|
8533
|
+
UPB_INLINE struct google_protobuf_SourceCodeInfo_Location* google_protobuf_SourceCodeInfo_add_location(google_protobuf_SourceCodeInfo *msg, upb_arena *arena) {
|
8534
|
+
struct google_protobuf_SourceCodeInfo_Location* sub = (struct google_protobuf_SourceCodeInfo_Location*)upb_msg_new(&google_protobuf_SourceCodeInfo_Location_msginit, arena);
|
8535
|
+
bool ok = _upb_array_append_accessor(
|
8536
|
+
msg, UPB_SIZE(0, 0), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8537
|
+
if (!ok) return NULL;
|
8538
|
+
return sub;
|
8539
|
+
}
|
6762
8540
|
|
6763
|
-
/** upb_array *****************************************************************/
|
6764
8541
|
|
6765
|
-
/*
|
6766
|
-
* semantics are the same as upb_msg. A upb_array allocates dynamic
|
6767
|
-
* memory internally for the array elements. */
|
8542
|
+
/* google.protobuf.SourceCodeInfo.Location */
|
6768
8543
|
|
6769
|
-
|
6770
|
-
|
6771
|
-
|
6772
|
-
|
6773
|
-
|
8544
|
+
UPB_INLINE google_protobuf_SourceCodeInfo_Location *google_protobuf_SourceCodeInfo_Location_new(upb_arena *arena) {
|
8545
|
+
return (google_protobuf_SourceCodeInfo_Location *)upb_msg_new(&google_protobuf_SourceCodeInfo_Location_msginit, arena);
|
8546
|
+
}
|
8547
|
+
UPB_INLINE google_protobuf_SourceCodeInfo_Location *google_protobuf_SourceCodeInfo_Location_parsenew(upb_strview buf, upb_arena *arena) {
|
8548
|
+
google_protobuf_SourceCodeInfo_Location *ret = google_protobuf_SourceCodeInfo_Location_new(arena);
|
8549
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_SourceCodeInfo_Location_msginit)) ? ret : NULL;
|
8550
|
+
}
|
8551
|
+
UPB_INLINE char *google_protobuf_SourceCodeInfo_Location_serialize(const google_protobuf_SourceCodeInfo_Location *msg, upb_arena *arena, size_t *len) {
|
8552
|
+
return upb_encode(msg, &google_protobuf_SourceCodeInfo_Location_msginit, arena, len);
|
8553
|
+
}
|
6774
8554
|
|
6775
|
-
|
8555
|
+
UPB_INLINE int32_t const* google_protobuf_SourceCodeInfo_Location_path(const google_protobuf_SourceCodeInfo_Location *msg, size_t *len) { return (int32_t const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
|
8556
|
+
UPB_INLINE int32_t const* google_protobuf_SourceCodeInfo_Location_span(const google_protobuf_SourceCodeInfo_Location *msg, size_t *len) { return (int32_t const*)_upb_array_accessor(msg, UPB_SIZE(24, 48), len); }
|
8557
|
+
UPB_INLINE bool google_protobuf_SourceCodeInfo_Location_has_leading_comments(const google_protobuf_SourceCodeInfo_Location *msg) { return _upb_has_field(msg, 0); }
|
8558
|
+
UPB_INLINE upb_strview google_protobuf_SourceCodeInfo_Location_leading_comments(const google_protobuf_SourceCodeInfo_Location *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)); }
|
8559
|
+
UPB_INLINE bool google_protobuf_SourceCodeInfo_Location_has_trailing_comments(const google_protobuf_SourceCodeInfo_Location *msg) { return _upb_has_field(msg, 1); }
|
8560
|
+
UPB_INLINE upb_strview google_protobuf_SourceCodeInfo_Location_trailing_comments(const google_protobuf_SourceCodeInfo_Location *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 24)); }
|
8561
|
+
UPB_INLINE upb_strview const* google_protobuf_SourceCodeInfo_Location_leading_detached_comments(const google_protobuf_SourceCodeInfo_Location *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(28, 56), len); }
|
6776
8562
|
|
6777
|
-
|
6778
|
-
|
6779
|
-
|
8563
|
+
UPB_INLINE int32_t* google_protobuf_SourceCodeInfo_Location_mutable_path(google_protobuf_SourceCodeInfo_Location *msg, size_t *len) {
|
8564
|
+
return (int32_t*)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
|
8565
|
+
}
|
8566
|
+
UPB_INLINE int32_t* google_protobuf_SourceCodeInfo_Location_resize_path(google_protobuf_SourceCodeInfo_Location *msg, size_t len, upb_arena *arena) {
|
8567
|
+
return (int32_t*)_upb_array_resize_accessor(msg, UPB_SIZE(20, 40), len, UPB_SIZE(4, 4), UPB_TYPE_INT32, arena);
|
8568
|
+
}
|
8569
|
+
UPB_INLINE bool google_protobuf_SourceCodeInfo_Location_add_path(google_protobuf_SourceCodeInfo_Location *msg, int32_t val, upb_arena *arena) {
|
8570
|
+
return _upb_array_append_accessor(
|
8571
|
+
msg, UPB_SIZE(20, 40), UPB_SIZE(4, 4), UPB_TYPE_INT32, &val, arena);
|
8572
|
+
}
|
8573
|
+
UPB_INLINE int32_t* google_protobuf_SourceCodeInfo_Location_mutable_span(google_protobuf_SourceCodeInfo_Location *msg, size_t *len) {
|
8574
|
+
return (int32_t*)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 48), len);
|
8575
|
+
}
|
8576
|
+
UPB_INLINE int32_t* google_protobuf_SourceCodeInfo_Location_resize_span(google_protobuf_SourceCodeInfo_Location *msg, size_t len, upb_arena *arena) {
|
8577
|
+
return (int32_t*)_upb_array_resize_accessor(msg, UPB_SIZE(24, 48), len, UPB_SIZE(4, 4), UPB_TYPE_INT32, arena);
|
8578
|
+
}
|
8579
|
+
UPB_INLINE bool google_protobuf_SourceCodeInfo_Location_add_span(google_protobuf_SourceCodeInfo_Location *msg, int32_t val, upb_arena *arena) {
|
8580
|
+
return _upb_array_append_accessor(
|
8581
|
+
msg, UPB_SIZE(24, 48), UPB_SIZE(4, 4), UPB_TYPE_INT32, &val, arena);
|
8582
|
+
}
|
8583
|
+
UPB_INLINE void google_protobuf_SourceCodeInfo_Location_set_leading_comments(google_protobuf_SourceCodeInfo_Location *msg, upb_strview value) {
|
8584
|
+
_upb_sethas(msg, 0);
|
8585
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(4, 8)) = value;
|
8586
|
+
}
|
8587
|
+
UPB_INLINE void google_protobuf_SourceCodeInfo_Location_set_trailing_comments(google_protobuf_SourceCodeInfo_Location *msg, upb_strview value) {
|
8588
|
+
_upb_sethas(msg, 1);
|
8589
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 24)) = value;
|
8590
|
+
}
|
8591
|
+
UPB_INLINE upb_strview* google_protobuf_SourceCodeInfo_Location_mutable_leading_detached_comments(google_protobuf_SourceCodeInfo_Location *msg, size_t *len) {
|
8592
|
+
return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 56), len);
|
8593
|
+
}
|
8594
|
+
UPB_INLINE upb_strview* google_protobuf_SourceCodeInfo_Location_resize_leading_detached_comments(google_protobuf_SourceCodeInfo_Location *msg, size_t len, upb_arena *arena) {
|
8595
|
+
return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(28, 56), len, UPB_SIZE(8, 16), UPB_TYPE_STRING, arena);
|
8596
|
+
}
|
8597
|
+
UPB_INLINE bool google_protobuf_SourceCodeInfo_Location_add_leading_detached_comments(google_protobuf_SourceCodeInfo_Location *msg, upb_strview val, upb_arena *arena) {
|
8598
|
+
return _upb_array_append_accessor(
|
8599
|
+
msg, UPB_SIZE(28, 56), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val, arena);
|
8600
|
+
}
|
6780
8601
|
|
6781
|
-
/* Write interface. May only be called by the message's owner who can enforce
|
6782
|
-
* its memory management invariants. */
|
6783
8602
|
|
6784
|
-
|
8603
|
+
/* google.protobuf.GeneratedCodeInfo */
|
6785
8604
|
|
8605
|
+
UPB_INLINE google_protobuf_GeneratedCodeInfo *google_protobuf_GeneratedCodeInfo_new(upb_arena *arena) {
|
8606
|
+
return (google_protobuf_GeneratedCodeInfo *)upb_msg_new(&google_protobuf_GeneratedCodeInfo_msginit, arena);
|
8607
|
+
}
|
8608
|
+
UPB_INLINE google_protobuf_GeneratedCodeInfo *google_protobuf_GeneratedCodeInfo_parsenew(upb_strview buf, upb_arena *arena) {
|
8609
|
+
google_protobuf_GeneratedCodeInfo *ret = google_protobuf_GeneratedCodeInfo_new(arena);
|
8610
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_GeneratedCodeInfo_msginit)) ? ret : NULL;
|
8611
|
+
}
|
8612
|
+
UPB_INLINE char *google_protobuf_GeneratedCodeInfo_serialize(const google_protobuf_GeneratedCodeInfo *msg, upb_arena *arena, size_t *len) {
|
8613
|
+
return upb_encode(msg, &google_protobuf_GeneratedCodeInfo_msginit, arena, len);
|
8614
|
+
}
|
6786
8615
|
|
6787
|
-
|
8616
|
+
UPB_INLINE const google_protobuf_GeneratedCodeInfo_Annotation* const* google_protobuf_GeneratedCodeInfo_annotation(const google_protobuf_GeneratedCodeInfo *msg, size_t *len) { return (const google_protobuf_GeneratedCodeInfo_Annotation* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
|
6788
8617
|
|
6789
|
-
|
6790
|
-
|
6791
|
-
|
6792
|
-
|
6793
|
-
|
8618
|
+
UPB_INLINE google_protobuf_GeneratedCodeInfo_Annotation** google_protobuf_GeneratedCodeInfo_mutable_annotation(google_protobuf_GeneratedCodeInfo *msg, size_t *len) {
|
8619
|
+
return (google_protobuf_GeneratedCodeInfo_Annotation**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
|
8620
|
+
}
|
8621
|
+
UPB_INLINE google_protobuf_GeneratedCodeInfo_Annotation** google_protobuf_GeneratedCodeInfo_resize_annotation(google_protobuf_GeneratedCodeInfo *msg, size_t len, upb_arena *arena) {
|
8622
|
+
return (google_protobuf_GeneratedCodeInfo_Annotation**)_upb_array_resize_accessor(msg, UPB_SIZE(0, 0), len, UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, arena);
|
8623
|
+
}
|
8624
|
+
UPB_INLINE struct google_protobuf_GeneratedCodeInfo_Annotation* google_protobuf_GeneratedCodeInfo_add_annotation(google_protobuf_GeneratedCodeInfo *msg, upb_arena *arena) {
|
8625
|
+
struct google_protobuf_GeneratedCodeInfo_Annotation* sub = (struct google_protobuf_GeneratedCodeInfo_Annotation*)upb_msg_new(&google_protobuf_GeneratedCodeInfo_Annotation_msginit, arena);
|
8626
|
+
bool ok = _upb_array_append_accessor(
|
8627
|
+
msg, UPB_SIZE(0, 0), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
|
8628
|
+
if (!ok) return NULL;
|
8629
|
+
return sub;
|
8630
|
+
}
|
6794
8631
|
|
6795
|
-
size_t upb_map_sizeof(upb_fieldtype_t ktype, upb_fieldtype_t vtype);
|
6796
|
-
bool upb_map_init(upb_map *map, upb_fieldtype_t ktype, upb_fieldtype_t vtype,
|
6797
|
-
upb_alloc *a);
|
6798
|
-
void upb_map_uninit(upb_map *map);
|
6799
|
-
upb_map *upb_map_new(upb_fieldtype_t ktype, upb_fieldtype_t vtype, upb_alloc *a);
|
6800
|
-
void upb_map_free(upb_map *map);
|
6801
8632
|
|
6802
|
-
/*
|
8633
|
+
/* google.protobuf.GeneratedCodeInfo.Annotation */
|
6803
8634
|
|
6804
|
-
|
6805
|
-
|
6806
|
-
|
6807
|
-
|
8635
|
+
UPB_INLINE google_protobuf_GeneratedCodeInfo_Annotation *google_protobuf_GeneratedCodeInfo_Annotation_new(upb_arena *arena) {
|
8636
|
+
return (google_protobuf_GeneratedCodeInfo_Annotation *)upb_msg_new(&google_protobuf_GeneratedCodeInfo_Annotation_msginit, arena);
|
8637
|
+
}
|
8638
|
+
UPB_INLINE google_protobuf_GeneratedCodeInfo_Annotation *google_protobuf_GeneratedCodeInfo_Annotation_parsenew(upb_strview buf, upb_arena *arena) {
|
8639
|
+
google_protobuf_GeneratedCodeInfo_Annotation *ret = google_protobuf_GeneratedCodeInfo_Annotation_new(arena);
|
8640
|
+
return (ret && upb_decode(buf, ret, &google_protobuf_GeneratedCodeInfo_Annotation_msginit)) ? ret : NULL;
|
8641
|
+
}
|
8642
|
+
UPB_INLINE char *google_protobuf_GeneratedCodeInfo_Annotation_serialize(const google_protobuf_GeneratedCodeInfo_Annotation *msg, upb_arena *arena, size_t *len) {
|
8643
|
+
return upb_encode(msg, &google_protobuf_GeneratedCodeInfo_Annotation_msginit, arena, len);
|
8644
|
+
}
|
6808
8645
|
|
6809
|
-
|
6810
|
-
*
|
8646
|
+
UPB_INLINE int32_t const* google_protobuf_GeneratedCodeInfo_Annotation_path(const google_protobuf_GeneratedCodeInfo_Annotation *msg, size_t *len) { return (int32_t const*)_upb_array_accessor(msg, UPB_SIZE(20, 32), len); }
|
8647
|
+
UPB_INLINE bool google_protobuf_GeneratedCodeInfo_Annotation_has_source_file(const google_protobuf_GeneratedCodeInfo_Annotation *msg) { return _upb_has_field(msg, 2); }
|
8648
|
+
UPB_INLINE upb_strview google_protobuf_GeneratedCodeInfo_Annotation_source_file(const google_protobuf_GeneratedCodeInfo_Annotation *msg) { return UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 16)); }
|
8649
|
+
UPB_INLINE bool google_protobuf_GeneratedCodeInfo_Annotation_has_begin(const google_protobuf_GeneratedCodeInfo_Annotation *msg) { return _upb_has_field(msg, 0); }
|
8650
|
+
UPB_INLINE int32_t google_protobuf_GeneratedCodeInfo_Annotation_begin(const google_protobuf_GeneratedCodeInfo_Annotation *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)); }
|
8651
|
+
UPB_INLINE bool google_protobuf_GeneratedCodeInfo_Annotation_has_end(const google_protobuf_GeneratedCodeInfo_Annotation *msg) { return _upb_has_field(msg, 1); }
|
8652
|
+
UPB_INLINE int32_t google_protobuf_GeneratedCodeInfo_Annotation_end(const google_protobuf_GeneratedCodeInfo_Annotation *msg) { return UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)); }
|
6811
8653
|
|
6812
|
-
|
6813
|
-
*
|
6814
|
-
|
6815
|
-
|
6816
|
-
|
6817
|
-
|
8654
|
+
UPB_INLINE int32_t* google_protobuf_GeneratedCodeInfo_Annotation_mutable_path(google_protobuf_GeneratedCodeInfo_Annotation *msg, size_t *len) {
|
8655
|
+
return (int32_t*)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 32), len);
|
8656
|
+
}
|
8657
|
+
UPB_INLINE int32_t* google_protobuf_GeneratedCodeInfo_Annotation_resize_path(google_protobuf_GeneratedCodeInfo_Annotation *msg, size_t len, upb_arena *arena) {
|
8658
|
+
return (int32_t*)_upb_array_resize_accessor(msg, UPB_SIZE(20, 32), len, UPB_SIZE(4, 4), UPB_TYPE_INT32, arena);
|
8659
|
+
}
|
8660
|
+
UPB_INLINE bool google_protobuf_GeneratedCodeInfo_Annotation_add_path(google_protobuf_GeneratedCodeInfo_Annotation *msg, int32_t val, upb_arena *arena) {
|
8661
|
+
return _upb_array_append_accessor(
|
8662
|
+
msg, UPB_SIZE(20, 32), UPB_SIZE(4, 4), UPB_TYPE_INT32, &val, arena);
|
8663
|
+
}
|
8664
|
+
UPB_INLINE void google_protobuf_GeneratedCodeInfo_Annotation_set_source_file(google_protobuf_GeneratedCodeInfo_Annotation *msg, upb_strview value) {
|
8665
|
+
_upb_sethas(msg, 2);
|
8666
|
+
UPB_FIELD_AT(msg, upb_strview, UPB_SIZE(12, 16)) = value;
|
8667
|
+
}
|
8668
|
+
UPB_INLINE void google_protobuf_GeneratedCodeInfo_Annotation_set_begin(google_protobuf_GeneratedCodeInfo_Annotation *msg, int32_t value) {
|
8669
|
+
_upb_sethas(msg, 0);
|
8670
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(4, 4)) = value;
|
8671
|
+
}
|
8672
|
+
UPB_INLINE void google_protobuf_GeneratedCodeInfo_Annotation_set_end(google_protobuf_GeneratedCodeInfo_Annotation *msg, int32_t value) {
|
8673
|
+
_upb_sethas(msg, 1);
|
8674
|
+
UPB_FIELD_AT(msg, int32_t, UPB_SIZE(8, 8)) = value;
|
8675
|
+
}
|
6818
8676
|
|
6819
|
-
/* Deletes an entry in the map. Returns true if the key was present. */
|
6820
|
-
bool upb_map_del(upb_map *map, upb_msgval key);
|
6821
8677
|
|
8678
|
+
UPB_END_EXTERN_C
|
6822
8679
|
|
6823
|
-
/** upb_mapiter ***************************************************************/
|
6824
8680
|
|
6825
|
-
/*
|
6826
|
-
* map, but an invalidated iterator will never return junk or crash the process.
|
6827
|
-
* An invalidated iterator may return entries that were already returned though,
|
6828
|
-
* and if you keep invalidating the iterator during iteration, the program may
|
6829
|
-
* enter an infinite loop. */
|
8681
|
+
#endif /* GOOGLE_PROTOBUF_DESCRIPTOR_PROTO_UPB_H_ */
|
6830
8682
|
|
6831
|
-
size_t upb_mapiter_sizeof();
|
6832
8683
|
|
6833
|
-
|
6834
|
-
|
6835
|
-
void upb_mapiter_free(upb_mapiter *i, upb_alloc *a);
|
6836
|
-
void upb_mapiter_next(upb_mapiter *i);
|
6837
|
-
bool upb_mapiter_done(const upb_mapiter *i);
|
8684
|
+
#ifndef UPB_MSGFACTORY_H_
|
8685
|
+
#define UPB_MSGFACTORY_H_
|
6838
8686
|
|
6839
|
-
|
6840
|
-
|
6841
|
-
|
6842
|
-
|
8687
|
+
#ifdef __cplusplus
|
8688
|
+
namespace upb {
|
8689
|
+
class MessageFactory;
|
8690
|
+
}
|
8691
|
+
#endif
|
6843
8692
|
|
8693
|
+
UPB_DECLARE_TYPE(upb::MessageFactory, upb_msgfactory)
|
6844
8694
|
|
6845
|
-
/**
|
8695
|
+
/** upb_msgfactory ************************************************************/
|
6846
8696
|
|
6847
|
-
/*
|
6848
|
-
*
|
8697
|
+
/* A upb_msgfactory contains a cache of upb_msglayout, upb_handlers, and
|
8698
|
+
* upb_visitorplan objects. These are the objects necessary to represent,
|
8699
|
+
* populate, and and visit upb_msg objects.
|
6849
8700
|
*
|
6850
|
-
* These
|
6851
|
-
|
6852
|
-
* of actually calling the function. */
|
8701
|
+
* These caches are all populated by upb_msgdef, and lazily created on demand.
|
8702
|
+
*/
|
6853
8703
|
|
6854
|
-
/*
|
6855
|
-
*
|
6856
|
-
*
|
6857
|
-
|
6858
|
-
const upb_fielddef *f,
|
6859
|
-
size_t offset,
|
6860
|
-
int32_t hasbit);
|
8704
|
+
/* Creates and destroys a msgfactory, respectively. The messages for this
|
8705
|
+
* msgfactory must come from |symtab| (which should outlive the msgfactory). */
|
8706
|
+
upb_msgfactory *upb_msgfactory_new(const upb_symtab *symtab);
|
8707
|
+
void upb_msgfactory_free(upb_msgfactory *f);
|
6861
8708
|
|
6862
|
-
|
6863
|
-
* *type, *offset and *hasbit. Otherwise returns false. */
|
6864
|
-
bool upb_msg_getscalarhandlerdata(const upb_handlers *h,
|
6865
|
-
upb_selector_t s,
|
6866
|
-
upb_fieldtype_t *type,
|
6867
|
-
size_t *offset,
|
6868
|
-
int32_t *hasbit);
|
8709
|
+
const upb_symtab *upb_msgfactory_symtab(const upb_msgfactory *f);
|
6869
8710
|
|
6870
|
-
|
8711
|
+
/* The functions to get cached objects, lazily creating them on demand. These
|
8712
|
+
* all require:
|
8713
|
+
*
|
8714
|
+
* - m is in upb_msgfactory_symtab(f)
|
8715
|
+
* - upb_msgdef_mapentry(m) == false (since map messages can't have layouts).
|
8716
|
+
*
|
8717
|
+
* The returned objects will live for as long as the msgfactory does.
|
8718
|
+
*
|
8719
|
+
* TODO(haberman): consider making this thread-safe and take a const
|
8720
|
+
* upb_msgfactory. */
|
8721
|
+
const upb_msglayout *upb_msgfactory_getlayout(upb_msgfactory *f,
|
8722
|
+
const upb_msgdef *m);
|
6871
8723
|
|
6872
|
-
|
8724
|
+
|
8725
|
+
#endif /* UPB_MSGFACTORY_H_ */
|
6873
8726
|
/*
|
6874
8727
|
** upb::descriptor::Reader (upb_descreader)
|
6875
8728
|
**
|
@@ -6972,53 +8825,6 @@ inline FileDef* Reader::file(size_t i) const {
|
|
6972
8825
|
|
6973
8826
|
UPB_BEGIN_EXTERN_C
|
6974
8827
|
|
6975
|
-
/* Enums */
|
6976
|
-
|
6977
|
-
typedef enum {
|
6978
|
-
google_protobuf_FieldDescriptorProto_LABEL_OPTIONAL = 1,
|
6979
|
-
google_protobuf_FieldDescriptorProto_LABEL_REQUIRED = 2,
|
6980
|
-
google_protobuf_FieldDescriptorProto_LABEL_REPEATED = 3
|
6981
|
-
} google_protobuf_FieldDescriptorProto_Label;
|
6982
|
-
|
6983
|
-
typedef enum {
|
6984
|
-
google_protobuf_FieldDescriptorProto_TYPE_DOUBLE = 1,
|
6985
|
-
google_protobuf_FieldDescriptorProto_TYPE_FLOAT = 2,
|
6986
|
-
google_protobuf_FieldDescriptorProto_TYPE_INT64 = 3,
|
6987
|
-
google_protobuf_FieldDescriptorProto_TYPE_UINT64 = 4,
|
6988
|
-
google_protobuf_FieldDescriptorProto_TYPE_INT32 = 5,
|
6989
|
-
google_protobuf_FieldDescriptorProto_TYPE_FIXED64 = 6,
|
6990
|
-
google_protobuf_FieldDescriptorProto_TYPE_FIXED32 = 7,
|
6991
|
-
google_protobuf_FieldDescriptorProto_TYPE_BOOL = 8,
|
6992
|
-
google_protobuf_FieldDescriptorProto_TYPE_STRING = 9,
|
6993
|
-
google_protobuf_FieldDescriptorProto_TYPE_GROUP = 10,
|
6994
|
-
google_protobuf_FieldDescriptorProto_TYPE_MESSAGE = 11,
|
6995
|
-
google_protobuf_FieldDescriptorProto_TYPE_BYTES = 12,
|
6996
|
-
google_protobuf_FieldDescriptorProto_TYPE_UINT32 = 13,
|
6997
|
-
google_protobuf_FieldDescriptorProto_TYPE_ENUM = 14,
|
6998
|
-
google_protobuf_FieldDescriptorProto_TYPE_SFIXED32 = 15,
|
6999
|
-
google_protobuf_FieldDescriptorProto_TYPE_SFIXED64 = 16,
|
7000
|
-
google_protobuf_FieldDescriptorProto_TYPE_SINT32 = 17,
|
7001
|
-
google_protobuf_FieldDescriptorProto_TYPE_SINT64 = 18
|
7002
|
-
} google_protobuf_FieldDescriptorProto_Type;
|
7003
|
-
|
7004
|
-
typedef enum {
|
7005
|
-
google_protobuf_FieldOptions_STRING = 0,
|
7006
|
-
google_protobuf_FieldOptions_CORD = 1,
|
7007
|
-
google_protobuf_FieldOptions_STRING_PIECE = 2
|
7008
|
-
} google_protobuf_FieldOptions_CType;
|
7009
|
-
|
7010
|
-
typedef enum {
|
7011
|
-
google_protobuf_FieldOptions_JS_NORMAL = 0,
|
7012
|
-
google_protobuf_FieldOptions_JS_STRING = 1,
|
7013
|
-
google_protobuf_FieldOptions_JS_NUMBER = 2
|
7014
|
-
} google_protobuf_FieldOptions_JSType;
|
7015
|
-
|
7016
|
-
typedef enum {
|
7017
|
-
google_protobuf_FileOptions_SPEED = 1,
|
7018
|
-
google_protobuf_FileOptions_CODE_SIZE = 2,
|
7019
|
-
google_protobuf_FileOptions_LITE_RUNTIME = 3
|
7020
|
-
} google_protobuf_FileOptions_OptimizeMode;
|
7021
|
-
|
7022
8828
|
/* MessageDefs: call these functions to get a ref to a msgdef. */
|
7023
8829
|
const upb_msgdef *upbdefs_google_protobuf_DescriptorProto_get(const void *owner);
|
7024
8830
|
const upb_msgdef *upbdefs_google_protobuf_DescriptorProto_ExtensionRange_get(const void *owner);
|
@@ -7206,6 +9012,8 @@ UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_java_string
|
|
7206
9012
|
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_javanano_use_deprecated_package(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_FileOptions_is(m)); return upb_msgdef_itof(m, 38); }
|
7207
9013
|
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_objc_class_prefix(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_FileOptions_is(m)); return upb_msgdef_itof(m, 36); }
|
7208
9014
|
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_optimize_for(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_FileOptions_is(m)); return upb_msgdef_itof(m, 9); }
|
9015
|
+
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_php_class_prefix(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_FileOptions_is(m)); return upb_msgdef_itof(m, 40); }
|
9016
|
+
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_php_namespace(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_FileOptions_is(m)); return upb_msgdef_itof(m, 41); }
|
7209
9017
|
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_py_generic_services(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_FileOptions_is(m)); return upb_msgdef_itof(m, 18); }
|
7210
9018
|
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_FileOptions_f_uninterpreted_option(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_FileOptions_is(m)); return upb_msgdef_itof(m, 999); }
|
7211
9019
|
UPB_INLINE const upb_fielddef *upbdefs_google_protobuf_MessageOptions_f_deprecated(const upb_msgdef *m) { UPB_ASSERT(upbdefs_google_protobuf_MessageOptions_is(m)); return upb_msgdef_itof(m, 3); }
|
@@ -7923,14 +9731,8 @@ inline const DecoderMethod *CodeCache::GetDecoderMethod(
|
|
7923
9731
|
|
7924
9732
|
#endif /* UPB_DECODER_H_ */
|
7925
9733
|
|
7926
|
-
|
7927
|
-
|
7928
|
-
namespace upb {
|
7929
|
-
namespace pb {
|
7930
|
-
class MessageGroup;
|
7931
|
-
} /* namespace pb */
|
7932
|
-
} /* namespace upb */
|
7933
|
-
#endif
|
9734
|
+
#ifndef __cplusplus
|
9735
|
+
|
7934
9736
|
UPB_DECLARE_DERIVED_TYPE(upb::pb::MessageGroup, upb::RefCounted,
|
7935
9737
|
mgroup, upb_refcounted)
|
7936
9738
|
|
@@ -7993,7 +9795,7 @@ typedef enum {
|
|
7993
9795
|
|
7994
9796
|
#define OP_MAX OP_HALT
|
7995
9797
|
|
7996
|
-
UPB_INLINE opcode getop(uint32_t instr) { return instr & 0xff; }
|
9798
|
+
UPB_INLINE opcode getop(uint32_t instr) { return (opcode)(instr & 0xff); }
|
7997
9799
|
|
7998
9800
|
/* Method group; represents a set of decoder methods that had their code
|
7999
9801
|
* emitted together, and must therefore be freed together. Immutable once
|
@@ -8240,6 +10042,8 @@ UPB_INLINE void upb_pbdecoder_unpackdispatch(uint64_t dispatch, uint64_t *ofs,
|
|
8240
10042
|
|
8241
10043
|
#define CHECK_RETURN(x) { int32_t ret = x; if (ret >= 0) return ret; }
|
8242
10044
|
|
10045
|
+
#endif /* __cplusplus */
|
10046
|
+
|
8243
10047
|
#endif /* UPB_DECODER_INT_H_ */
|
8244
10048
|
/*
|
8245
10049
|
** A number of routines for varint manipulation (we keep them all around to
|
@@ -8257,21 +10061,9 @@ UPB_INLINE void upb_pbdecoder_unpackdispatch(uint64_t dispatch, uint64_t *ofs,
|
|
8257
10061
|
extern "C" {
|
8258
10062
|
#endif
|
8259
10063
|
|
8260
|
-
/* A list of types as they are encoded on-the-wire. */
|
8261
|
-
typedef enum {
|
8262
|
-
UPB_WIRE_TYPE_VARINT = 0,
|
8263
|
-
UPB_WIRE_TYPE_64BIT = 1,
|
8264
|
-
UPB_WIRE_TYPE_DELIMITED = 2,
|
8265
|
-
UPB_WIRE_TYPE_START_GROUP = 3,
|
8266
|
-
UPB_WIRE_TYPE_END_GROUP = 4,
|
8267
|
-
UPB_WIRE_TYPE_32BIT = 5
|
8268
|
-
} upb_wiretype_t;
|
8269
|
-
|
8270
10064
|
#define UPB_MAX_WIRE_TYPE 5
|
8271
10065
|
|
8272
|
-
/* The maximum number of bytes that it takes to encode a 64-bit varint.
|
8273
|
-
* Note that with a better encoding this could be 9 (TODO: write up a
|
8274
|
-
* wiki document about this). */
|
10066
|
+
/* The maximum number of bytes that it takes to encode a 64-bit varint. */
|
8275
10067
|
#define UPB_PB_VARINT_MAX_LEN 10
|
8276
10068
|
|
8277
10069
|
/* Array of the "native" (ie. non-packed-repeated) wire type for the given a
|
@@ -8304,16 +10096,8 @@ UPB_INLINE upb_decoderet upb_decoderet_make(const char *p, uint64_t val) {
|
|
8304
10096
|
return ret;
|
8305
10097
|
}
|
8306
10098
|
|
8307
|
-
/* Four functions for decoding a varint of at most eight bytes. They are all
|
8308
|
-
* functionally identical, but are implemented in different ways and likely have
|
8309
|
-
* different performance profiles. We keep them around for performance testing.
|
8310
|
-
*
|
8311
|
-
* Note that these functions may not read byte-by-byte, so they must not be used
|
8312
|
-
* unless there are at least eight bytes left in the buffer! */
|
8313
10099
|
upb_decoderet upb_vdecode_max8_branch32(upb_decoderet r);
|
8314
10100
|
upb_decoderet upb_vdecode_max8_branch64(upb_decoderet r);
|
8315
|
-
upb_decoderet upb_vdecode_max8_wright(upb_decoderet r);
|
8316
|
-
upb_decoderet upb_vdecode_max8_massimino(upb_decoderet r);
|
8317
10101
|
|
8318
10102
|
/* Template for a function that checks the first two bytes with branching
|
8319
10103
|
* and dispatches 2-10 bytes with a separate function. Note that this may read
|
@@ -8338,8 +10122,6 @@ UPB_INLINE upb_decoderet upb_vdecode_check2_ ## name(const char *_p) { \
|
|
8338
10122
|
|
8339
10123
|
UPB_VARINT_DECODER_CHECK2(branch32, upb_vdecode_max8_branch32)
|
8340
10124
|
UPB_VARINT_DECODER_CHECK2(branch64, upb_vdecode_max8_branch64)
|
8341
|
-
UPB_VARINT_DECODER_CHECK2(wright, upb_vdecode_max8_wright)
|
8342
|
-
UPB_VARINT_DECODER_CHECK2(massimino, upb_vdecode_max8_massimino)
|
8343
10125
|
#undef UPB_VARINT_DECODER_CHECK2
|
8344
10126
|
|
8345
10127
|
/* Our canonical functions for decoding varints, based on the currently
|
@@ -8351,10 +10133,6 @@ UPB_INLINE upb_decoderet upb_vdecode_fast(const char *p) {
|
|
8351
10133
|
return upb_vdecode_check2_branch32(p);
|
8352
10134
|
}
|
8353
10135
|
|
8354
|
-
UPB_INLINE upb_decoderet upb_vdecode_max8_fast(upb_decoderet r) {
|
8355
|
-
return upb_vdecode_max8_massimino(r);
|
8356
|
-
}
|
8357
|
-
|
8358
10136
|
|
8359
10137
|
/* Encoding *******************************************************************/
|
8360
10138
|
|
@@ -8677,7 +10455,7 @@ UPB_DECLARE_DERIVED_TYPE(upb::json::ParserMethod, upb::RefCounted,
|
|
8677
10455
|
* constructed. This hint may be an overestimate for some build configurations.
|
8678
10456
|
* But if the parser library is upgraded without recompiling the application,
|
8679
10457
|
* it may be an underestimate. */
|
8680
|
-
#define UPB_JSON_PARSER_SIZE
|
10458
|
+
#define UPB_JSON_PARSER_SIZE 5712
|
8681
10459
|
|
8682
10460
|
#ifdef __cplusplus
|
8683
10461
|
|
@@ -8686,7 +10464,8 @@ UPB_DECLARE_DERIVED_TYPE(upb::json::ParserMethod, upb::RefCounted,
|
|
8686
10464
|
class upb::json::Parser {
|
8687
10465
|
public:
|
8688
10466
|
static Parser* Create(Environment* env, const ParserMethod* method,
|
8689
|
-
|
10467
|
+
const SymbolTable* symtab,
|
10468
|
+
Sink* output, bool ignore_json_unknown);
|
8690
10469
|
|
8691
10470
|
BytesSink* input();
|
8692
10471
|
|
@@ -8720,7 +10499,9 @@ UPB_BEGIN_EXTERN_C
|
|
8720
10499
|
|
8721
10500
|
upb_json_parser* upb_json_parser_create(upb_env* e,
|
8722
10501
|
const upb_json_parsermethod* m,
|
8723
|
-
|
10502
|
+
const upb_symtab* symtab,
|
10503
|
+
upb_sink* output,
|
10504
|
+
bool ignore_json_unknown);
|
8724
10505
|
upb_bytessink *upb_json_parser_input(upb_json_parser *p);
|
8725
10506
|
|
8726
10507
|
upb_json_parsermethod* upb_json_parsermethod_new(const upb_msgdef* md,
|
@@ -8740,8 +10521,10 @@ UPB_END_EXTERN_C
|
|
8740
10521
|
namespace upb {
|
8741
10522
|
namespace json {
|
8742
10523
|
inline Parser* Parser::Create(Environment* env, const ParserMethod* method,
|
8743
|
-
|
8744
|
-
|
10524
|
+
const SymbolTable* symtab,
|
10525
|
+
Sink* output, bool ignore_json_unknown) {
|
10526
|
+
return upb_json_parser_create(
|
10527
|
+
env, method, symtab, output, ignore_json_unknown);
|
8745
10528
|
}
|
8746
10529
|
inline BytesSink* Parser::input() {
|
8747
10530
|
return upb_json_parser_input(this);
|
@@ -8790,7 +10573,7 @@ UPB_DECLARE_TYPE(upb::json::Printer, upb_json_printer)
|
|
8790
10573
|
|
8791
10574
|
/* upb::json::Printer *********************************************************/
|
8792
10575
|
|
8793
|
-
#define UPB_JSON_PRINTER_SIZE
|
10576
|
+
#define UPB_JSON_PRINTER_SIZE 192
|
8794
10577
|
|
8795
10578
|
#ifdef __cplusplus
|
8796
10579
|
|
@@ -8851,3 +10634,8 @@ inline reffed_ptr
|
|
8851
10634
|
#endif
|
8852
10635
|
|
8853
10636
|
#endif /* UPB_JSON_TYPED_PRINTER_H_ */
|
10637
|
+
|
10638
|
+
#undef UPB_SIZE
|
10639
|
+
#undef UPB_FIELD_AT
|
10640
|
+
#undef UPB_READ_ONEOF
|
10641
|
+
#undef UPB_WRITE_ONEOF
|