xref: /aosp_15_r20/external/protobuf/objectivec/GPBStruct.pbobjc.h (revision 1b3f573f81763fcece89efc2b6a5209149e44ab8)
1*1b3f573fSAndroid Build Coastguard Worker // Generated by the protocol buffer compiler.  DO NOT EDIT!
2*1b3f573fSAndroid Build Coastguard Worker // source: google/protobuf/struct.proto
3*1b3f573fSAndroid Build Coastguard Worker 
4*1b3f573fSAndroid Build Coastguard Worker #import "GPBDescriptor.h"
5*1b3f573fSAndroid Build Coastguard Worker #import "GPBMessage.h"
6*1b3f573fSAndroid Build Coastguard Worker #import "GPBRootObject.h"
7*1b3f573fSAndroid Build Coastguard Worker 
8*1b3f573fSAndroid Build Coastguard Worker #if GOOGLE_PROTOBUF_OBJC_VERSION < 30004
9*1b3f573fSAndroid Build Coastguard Worker #error This file was generated by a newer version of protoc which is incompatible with your Protocol Buffer library sources.
10*1b3f573fSAndroid Build Coastguard Worker #endif
11*1b3f573fSAndroid Build Coastguard Worker #if 30004 < GOOGLE_PROTOBUF_OBJC_MIN_SUPPORTED_VERSION
12*1b3f573fSAndroid Build Coastguard Worker #error This file was generated by an older version of protoc which is incompatible with your Protocol Buffer library sources.
13*1b3f573fSAndroid Build Coastguard Worker #endif
14*1b3f573fSAndroid Build Coastguard Worker 
15*1b3f573fSAndroid Build Coastguard Worker // @@protoc_insertion_point(imports)
16*1b3f573fSAndroid Build Coastguard Worker 
17*1b3f573fSAndroid Build Coastguard Worker #pragma clang diagnostic push
18*1b3f573fSAndroid Build Coastguard Worker #pragma clang diagnostic ignored "-Wdeprecated-declarations"
19*1b3f573fSAndroid Build Coastguard Worker 
20*1b3f573fSAndroid Build Coastguard Worker CF_EXTERN_C_BEGIN
21*1b3f573fSAndroid Build Coastguard Worker 
22*1b3f573fSAndroid Build Coastguard Worker @class GPBListValue;
23*1b3f573fSAndroid Build Coastguard Worker @class GPBStruct;
24*1b3f573fSAndroid Build Coastguard Worker @class GPBValue;
25*1b3f573fSAndroid Build Coastguard Worker 
26*1b3f573fSAndroid Build Coastguard Worker NS_ASSUME_NONNULL_BEGIN
27*1b3f573fSAndroid Build Coastguard Worker 
28*1b3f573fSAndroid Build Coastguard Worker #pragma mark - Enum GPBNullValue
29*1b3f573fSAndroid Build Coastguard Worker 
30*1b3f573fSAndroid Build Coastguard Worker /**
31*1b3f573fSAndroid Build Coastguard Worker  * `NullValue` is a singleton enumeration to represent the null value for the
32*1b3f573fSAndroid Build Coastguard Worker  * `Value` type union.
33*1b3f573fSAndroid Build Coastguard Worker  *
34*1b3f573fSAndroid Build Coastguard Worker  *  The JSON representation for `NullValue` is JSON `null`.
35*1b3f573fSAndroid Build Coastguard Worker  **/
36*1b3f573fSAndroid Build Coastguard Worker typedef GPB_ENUM(GPBNullValue) {
37*1b3f573fSAndroid Build Coastguard Worker   /**
38*1b3f573fSAndroid Build Coastguard Worker    * Value used if any message's field encounters a value that is not defined
39*1b3f573fSAndroid Build Coastguard Worker    * by this enum. The message will also have C functions to get/set the rawValue
40*1b3f573fSAndroid Build Coastguard Worker    * of the field.
41*1b3f573fSAndroid Build Coastguard Worker    **/
42*1b3f573fSAndroid Build Coastguard Worker   GPBNullValue_GPBUnrecognizedEnumeratorValue = kGPBUnrecognizedEnumeratorValue,
43*1b3f573fSAndroid Build Coastguard Worker   /** Null value. */
44*1b3f573fSAndroid Build Coastguard Worker   GPBNullValue_NullValue = 0,
45*1b3f573fSAndroid Build Coastguard Worker };
46*1b3f573fSAndroid Build Coastguard Worker 
47*1b3f573fSAndroid Build Coastguard Worker GPBEnumDescriptor *GPBNullValue_EnumDescriptor(void);
48*1b3f573fSAndroid Build Coastguard Worker 
49*1b3f573fSAndroid Build Coastguard Worker /**
50*1b3f573fSAndroid Build Coastguard Worker  * Checks to see if the given value is defined by the enum or was not known at
51*1b3f573fSAndroid Build Coastguard Worker  * the time this source was generated.
52*1b3f573fSAndroid Build Coastguard Worker  **/
53*1b3f573fSAndroid Build Coastguard Worker BOOL GPBNullValue_IsValidValue(int32_t value);
54*1b3f573fSAndroid Build Coastguard Worker 
55*1b3f573fSAndroid Build Coastguard Worker #pragma mark - GPBStructRoot
56*1b3f573fSAndroid Build Coastguard Worker 
57*1b3f573fSAndroid Build Coastguard Worker /**
58*1b3f573fSAndroid Build Coastguard Worker  * Exposes the extension registry for this file.
59*1b3f573fSAndroid Build Coastguard Worker  *
60*1b3f573fSAndroid Build Coastguard Worker  * The base class provides:
61*1b3f573fSAndroid Build Coastguard Worker  * @code
62*1b3f573fSAndroid Build Coastguard Worker  *   + (GPBExtensionRegistry *)extensionRegistry;
63*1b3f573fSAndroid Build Coastguard Worker  * @endcode
64*1b3f573fSAndroid Build Coastguard Worker  * which is a @c GPBExtensionRegistry that includes all the extensions defined by
65*1b3f573fSAndroid Build Coastguard Worker  * this file and all files that it depends on.
66*1b3f573fSAndroid Build Coastguard Worker  **/
67*1b3f573fSAndroid Build Coastguard Worker GPB_FINAL @interface GPBStructRoot : GPBRootObject
68*1b3f573fSAndroid Build Coastguard Worker @end
69*1b3f573fSAndroid Build Coastguard Worker 
70*1b3f573fSAndroid Build Coastguard Worker #pragma mark - GPBStruct
71*1b3f573fSAndroid Build Coastguard Worker 
72*1b3f573fSAndroid Build Coastguard Worker typedef GPB_ENUM(GPBStruct_FieldNumber) {
73*1b3f573fSAndroid Build Coastguard Worker   GPBStruct_FieldNumber_Fields = 1,
74*1b3f573fSAndroid Build Coastguard Worker };
75*1b3f573fSAndroid Build Coastguard Worker 
76*1b3f573fSAndroid Build Coastguard Worker /**
77*1b3f573fSAndroid Build Coastguard Worker  * `Struct` represents a structured data value, consisting of fields
78*1b3f573fSAndroid Build Coastguard Worker  * which map to dynamically typed values. In some languages, `Struct`
79*1b3f573fSAndroid Build Coastguard Worker  * might be supported by a native representation. For example, in
80*1b3f573fSAndroid Build Coastguard Worker  * scripting languages like JS a struct is represented as an
81*1b3f573fSAndroid Build Coastguard Worker  * object. The details of that representation are described together
82*1b3f573fSAndroid Build Coastguard Worker  * with the proto support for the language.
83*1b3f573fSAndroid Build Coastguard Worker  *
84*1b3f573fSAndroid Build Coastguard Worker  * The JSON representation for `Struct` is JSON object.
85*1b3f573fSAndroid Build Coastguard Worker  **/
86*1b3f573fSAndroid Build Coastguard Worker GPB_FINAL @interface GPBStruct : GPBMessage
87*1b3f573fSAndroid Build Coastguard Worker 
88*1b3f573fSAndroid Build Coastguard Worker /** Unordered map of dynamically typed values. */
89*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite, strong, null_resettable) NSMutableDictionary<NSString*, GPBValue*> *fields;
90*1b3f573fSAndroid Build Coastguard Worker /** The number of items in @c fields without causing the array to be created. */
property(nonatomic,readonly)91*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readonly) NSUInteger fields_Count;
92*1b3f573fSAndroid Build Coastguard Worker 
93*1b3f573fSAndroid Build Coastguard Worker @end
94*1b3f573fSAndroid Build Coastguard Worker 
95*1b3f573fSAndroid Build Coastguard Worker #pragma mark - GPBValue
96*1b3f573fSAndroid Build Coastguard Worker 
97*1b3f573fSAndroid Build Coastguard Worker typedef GPB_ENUM(GPBValue_FieldNumber) {
98*1b3f573fSAndroid Build Coastguard Worker   GPBValue_FieldNumber_NullValue = 1,
99*1b3f573fSAndroid Build Coastguard Worker   GPBValue_FieldNumber_NumberValue = 2,
100*1b3f573fSAndroid Build Coastguard Worker   GPBValue_FieldNumber_StringValue = 3,
101*1b3f573fSAndroid Build Coastguard Worker   GPBValue_FieldNumber_BoolValue = 4,
102*1b3f573fSAndroid Build Coastguard Worker   GPBValue_FieldNumber_StructValue = 5,
103*1b3f573fSAndroid Build Coastguard Worker   GPBValue_FieldNumber_ListValue = 6,
104*1b3f573fSAndroid Build Coastguard Worker };
105*1b3f573fSAndroid Build Coastguard Worker 
106*1b3f573fSAndroid Build Coastguard Worker typedef GPB_ENUM(GPBValue_Kind_OneOfCase) {
107*1b3f573fSAndroid Build Coastguard Worker   GPBValue_Kind_OneOfCase_GPBUnsetOneOfCase = 0,
108*1b3f573fSAndroid Build Coastguard Worker   GPBValue_Kind_OneOfCase_NullValue = 1,
109*1b3f573fSAndroid Build Coastguard Worker   GPBValue_Kind_OneOfCase_NumberValue = 2,
110*1b3f573fSAndroid Build Coastguard Worker   GPBValue_Kind_OneOfCase_StringValue = 3,
111*1b3f573fSAndroid Build Coastguard Worker   GPBValue_Kind_OneOfCase_BoolValue = 4,
112*1b3f573fSAndroid Build Coastguard Worker   GPBValue_Kind_OneOfCase_StructValue = 5,
113*1b3f573fSAndroid Build Coastguard Worker   GPBValue_Kind_OneOfCase_ListValue = 6,
114*1b3f573fSAndroid Build Coastguard Worker };
115*1b3f573fSAndroid Build Coastguard Worker 
116*1b3f573fSAndroid Build Coastguard Worker /**
117*1b3f573fSAndroid Build Coastguard Worker  * `Value` represents a dynamically typed value which can be either
118*1b3f573fSAndroid Build Coastguard Worker  * null, a number, a string, a boolean, a recursive struct value, or a
119*1b3f573fSAndroid Build Coastguard Worker  * list of values. A producer of value is expected to set one of these
120*1b3f573fSAndroid Build Coastguard Worker  * variants. Absence of any variant indicates an error.
121*1b3f573fSAndroid Build Coastguard Worker  *
122*1b3f573fSAndroid Build Coastguard Worker  * The JSON representation for `Value` is JSON value.
123*1b3f573fSAndroid Build Coastguard Worker  **/
124*1b3f573fSAndroid Build Coastguard Worker GPB_FINAL @interface GPBValue : GPBMessage
125*1b3f573fSAndroid Build Coastguard Worker 
126*1b3f573fSAndroid Build Coastguard Worker /** The kind of value. */
127*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readonly) GPBValue_Kind_OneOfCase kindOneOfCase;
128*1b3f573fSAndroid Build Coastguard Worker 
129*1b3f573fSAndroid Build Coastguard Worker /** Represents a null value. */
130*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite) GPBNullValue nullValue;
131*1b3f573fSAndroid Build Coastguard Worker 
132*1b3f573fSAndroid Build Coastguard Worker /** Represents a double value. */
133*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite) double numberValue;
134*1b3f573fSAndroid Build Coastguard Worker 
135*1b3f573fSAndroid Build Coastguard Worker /** Represents a string value. */
136*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite, copy, null_resettable) NSString *stringValue;
137*1b3f573fSAndroid Build Coastguard Worker 
138*1b3f573fSAndroid Build Coastguard Worker /** Represents a boolean value. */
139*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite) BOOL boolValue;
140*1b3f573fSAndroid Build Coastguard Worker 
141*1b3f573fSAndroid Build Coastguard Worker /** Represents a structured value. */
142*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite, strong, null_resettable) GPBStruct *structValue;
143*1b3f573fSAndroid Build Coastguard Worker 
144*1b3f573fSAndroid Build Coastguard Worker /** Represents a repeated `Value`. */
145*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite, strong, null_resettable) GPBListValue *listValue;
146*1b3f573fSAndroid Build Coastguard Worker 
147*1b3f573fSAndroid Build Coastguard Worker @end
148*1b3f573fSAndroid Build Coastguard Worker 
149*1b3f573fSAndroid Build Coastguard Worker /**
150*1b3f573fSAndroid Build Coastguard Worker  * Fetches the raw value of a @c GPBValue's @c nullValue property, even
151*1b3f573fSAndroid Build Coastguard Worker  * if the value was not defined by the enum at the time the code was generated.
152*1b3f573fSAndroid Build Coastguard Worker  **/
153*1b3f573fSAndroid Build Coastguard Worker int32_t GPBValue_NullValue_RawValue(GPBValue *message);
154*1b3f573fSAndroid Build Coastguard Worker /**
155*1b3f573fSAndroid Build Coastguard Worker  * Sets the raw value of an @c GPBValue's @c nullValue property, allowing
156*1b3f573fSAndroid Build Coastguard Worker  * it to be set to a value that was not defined by the enum at the time the code
157*1b3f573fSAndroid Build Coastguard Worker  * was generated.
158*1b3f573fSAndroid Build Coastguard Worker  **/
159*1b3f573fSAndroid Build Coastguard Worker void SetGPBValue_NullValue_RawValue(GPBValue *message, int32_t value);
160*1b3f573fSAndroid Build Coastguard Worker 
161*1b3f573fSAndroid Build Coastguard Worker /**
162*1b3f573fSAndroid Build Coastguard Worker  * Clears whatever value was set for the oneof 'kind'.
163*1b3f573fSAndroid Build Coastguard Worker  **/
164*1b3f573fSAndroid Build Coastguard Worker void GPBValue_ClearKindOneOfCase(GPBValue *message);
165*1b3f573fSAndroid Build Coastguard Worker 
166*1b3f573fSAndroid Build Coastguard Worker #pragma mark - GPBListValue
167*1b3f573fSAndroid Build Coastguard Worker 
168*1b3f573fSAndroid Build Coastguard Worker typedef GPB_ENUM(GPBListValue_FieldNumber) {
169*1b3f573fSAndroid Build Coastguard Worker   GPBListValue_FieldNumber_ValuesArray = 1,
170*1b3f573fSAndroid Build Coastguard Worker };
171*1b3f573fSAndroid Build Coastguard Worker 
172*1b3f573fSAndroid Build Coastguard Worker /**
173*1b3f573fSAndroid Build Coastguard Worker  * `ListValue` is a wrapper around a repeated field of values.
174*1b3f573fSAndroid Build Coastguard Worker  *
175*1b3f573fSAndroid Build Coastguard Worker  * The JSON representation for `ListValue` is JSON array.
176*1b3f573fSAndroid Build Coastguard Worker  **/
177*1b3f573fSAndroid Build Coastguard Worker GPB_FINAL @interface GPBListValue : GPBMessage
178*1b3f573fSAndroid Build Coastguard Worker 
179*1b3f573fSAndroid Build Coastguard Worker /** Repeated field of dynamically typed values. */
180*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readwrite, strong, null_resettable) NSMutableArray<GPBValue*> *valuesArray;
181*1b3f573fSAndroid Build Coastguard Worker /** The number of items in @c valuesArray without causing the array to be created. */
182*1b3f573fSAndroid Build Coastguard Worker @property(nonatomic, readonly) NSUInteger valuesArray_Count;
183*1b3f573fSAndroid Build Coastguard Worker 
184*1b3f573fSAndroid Build Coastguard Worker @end
185*1b3f573fSAndroid Build Coastguard Worker 
186*1b3f573fSAndroid Build Coastguard Worker NS_ASSUME_NONNULL_END
187*1b3f573fSAndroid Build Coastguard Worker 
188*1b3f573fSAndroid Build Coastguard Worker CF_EXTERN_C_END
189*1b3f573fSAndroid Build Coastguard Worker 
190*1b3f573fSAndroid Build Coastguard Worker #pragma clang diagnostic pop
191*1b3f573fSAndroid Build Coastguard Worker 
192*1b3f573fSAndroid Build Coastguard Worker // @@protoc_insertion_point(global_scope)
193