Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(716)

Side by Side Diff: third_party/protobuf/objectivec/google/protobuf/FieldMask.pbobjc.h

Issue 2590803003: Revert "third_party/protobuf: Update to HEAD (83d681ee2c)" (Closed)
Patch Set: Created 3 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Generated by the protocol buffer compiler. DO NOT EDIT! 1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: google/protobuf/field_mask.proto 2 // source: google/protobuf/field_mask.proto
3 3
4 // This CPP symbol can be defined to use imports that match up to the framework 4 #import "GPBProtocolBuffers.h"
5 // imports needed when using CocoaPods.
6 #if !defined(GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS)
7 #define GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS 0
8 #endif
9 5
10 #if GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS 6 #if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30001
11 #import <Protobuf/GPBProtocolBuffers.h> 7 #error This file was generated by a different version of protoc which is incompa tible with your Protocol Buffer library sources.
12 #else
13 #import "GPBProtocolBuffers.h"
14 #endif
15
16 #if GOOGLE_PROTOBUF_OBJC_VERSION < 30002
17 #error This file was generated by a newer version of protoc which is incompatibl e with your Protocol Buffer library sources.
18 #endif
19 #if 30002 < GOOGLE_PROTOBUF_OBJC_MIN_SUPPORTED_VERSION
20 #error This file was generated by an older version of protoc which is incompatib le with your Protocol Buffer library sources.
21 #endif 8 #endif
22 9
23 // @@protoc_insertion_point(imports) 10 // @@protoc_insertion_point(imports)
24 11
25 #pragma clang diagnostic push 12 #pragma clang diagnostic push
26 #pragma clang diagnostic ignored "-Wdeprecated-declarations" 13 #pragma clang diagnostic ignored "-Wdeprecated-declarations"
27 14
28 CF_EXTERN_C_BEGIN 15 CF_EXTERN_C_BEGIN
29 16
30 NS_ASSUME_NONNULL_BEGIN 17 NS_ASSUME_NONNULL_BEGIN
31 18
32 #pragma mark - GPBFieldMaskRoot 19 #pragma mark - GPBFieldMaskRoot
33 20
34 /** 21 /// Exposes the extension registry for this file.
35 * Exposes the extension registry for this file. 22 ///
36 * 23 /// The base class provides:
37 * The base class provides: 24 /// @code
38 * @code 25 /// + (GPBExtensionRegistry *)extensionRegistry;
39 * + (GPBExtensionRegistry *)extensionRegistry; 26 /// @endcode
40 * @endcode 27 /// which is a @c GPBExtensionRegistry that includes all the extensions defined by
41 * which is a @c GPBExtensionRegistry that includes all the extensions defined b y 28 /// this file and all files that it depends on.
42 * this file and all files that it depends on.
43 **/
44 @interface GPBFieldMaskRoot : GPBRootObject 29 @interface GPBFieldMaskRoot : GPBRootObject
45 @end 30 @end
46 31
47 #pragma mark - GPBFieldMask 32 #pragma mark - GPBFieldMask
48 33
49 typedef GPB_ENUM(GPBFieldMask_FieldNumber) { 34 typedef GPB_ENUM(GPBFieldMask_FieldNumber) {
50 GPBFieldMask_FieldNumber_PathsArray = 1, 35 GPBFieldMask_FieldNumber_PathsArray = 1,
51 }; 36 };
52 37
53 /** 38 /// `FieldMask` represents a set of symbolic field paths, for example:
54 * `FieldMask` represents a set of symbolic field paths, for example: 39 ///
55 * 40 /// paths: "f.a"
56 * paths: "f.a" 41 /// paths: "f.b.d"
57 * paths: "f.b.d" 42 ///
58 * 43 /// Here `f` represents a field in some root message, `a` and `b`
59 * Here `f` represents a field in some root message, `a` and `b` 44 /// fields in the message found in `f`, and `d` a field found in the
60 * fields in the message found in `f`, and `d` a field found in the 45 /// message in `f.b`.
61 * message in `f.b`. 46 ///
62 * 47 /// Field masks are used to specify a subset of fields that should be
63 * Field masks are used to specify a subset of fields that should be 48 /// returned by a get operation or modified by an update operation.
64 * returned by a get operation or modified by an update operation. 49 /// Field masks also have a custom JSON encoding (see below).
65 * Field masks also have a custom JSON encoding (see below). 50 ///
66 * 51 /// # Field Masks in Projections
67 * # Field Masks in Projections 52 ///
68 * 53 /// When used in the context of a projection, a response message or
69 * When used in the context of a projection, a response message or 54 /// sub-message is filtered by the API to only contain those fields as
70 * sub-message is filtered by the API to only contain those fields as 55 /// specified in the mask. For example, if the mask in the previous
71 * specified in the mask. For example, if the mask in the previous 56 /// example is applied to a response message as follows:
72 * example is applied to a response message as follows: 57 ///
73 * 58 /// f {
74 * f { 59 /// a : 22
75 * a : 22 60 /// b {
76 * b { 61 /// d : 1
77 * d : 1 62 /// x : 2
78 * x : 2 63 /// }
79 * } 64 /// y : 13
80 * y : 13 65 /// }
81 * } 66 /// z: 8
82 * z: 8 67 ///
83 * 68 /// The result will not contain specific values for fields x,y and z
84 * The result will not contain specific values for fields x,y and z 69 /// (their value will be set to the default, and omitted in proto text
85 * (their value will be set to the default, and omitted in proto text 70 /// output):
86 * output): 71 ///
87 * 72 ///
88 * 73 /// f {
89 * f { 74 /// a : 22
90 * a : 22 75 /// b {
91 * b { 76 /// d : 1
92 * d : 1 77 /// }
93 * } 78 /// }
94 * } 79 ///
95 * 80 /// A repeated field is not allowed except at the last position of a
96 * A repeated field is not allowed except at the last position of a 81 /// field mask.
97 * paths string. 82 ///
98 * 83 /// If a FieldMask object is not present in a get operation, the
99 * If a FieldMask object is not present in a get operation, the 84 /// operation applies to all fields (as if a FieldMask of all fields
100 * operation applies to all fields (as if a FieldMask of all fields 85 /// had been specified).
101 * had been specified). 86 ///
102 * 87 /// Note that a field mask does not necessarily apply to the
103 * Note that a field mask does not necessarily apply to the 88 /// top-level response message. In case of a REST get operation, the
104 * top-level response message. In case of a REST get operation, the 89 /// field mask applies directly to the response, but in case of a REST
105 * field mask applies directly to the response, but in case of a REST 90 /// list operation, the mask instead applies to each individual message
106 * list operation, the mask instead applies to each individual message 91 /// in the returned resource list. In case of a REST custom method,
107 * in the returned resource list. In case of a REST custom method, 92 /// other definitions may be used. Where the mask applies will be
108 * other definitions may be used. Where the mask applies will be 93 /// clearly documented together with its declaration in the API. In
109 * clearly documented together with its declaration in the API. In 94 /// any case, the effect on the returned resource/resources is required
110 * any case, the effect on the returned resource/resources is required 95 /// behavior for APIs.
111 * behavior for APIs. 96 ///
112 * 97 /// # Field Masks in Update Operations
113 * # Field Masks in Update Operations 98 ///
114 * 99 /// A field mask in update operations specifies which fields of the
115 * A field mask in update operations specifies which fields of the 100 /// targeted resource are going to be updated. The API is required
116 * targeted resource are going to be updated. The API is required 101 /// to only change the values of the fields as specified in the mask
117 * to only change the values of the fields as specified in the mask 102 /// and leave the others untouched. If a resource is passed in to
118 * and leave the others untouched. If a resource is passed in to 103 /// describe the updated values, the API ignores the values of all
119 * describe the updated values, the API ignores the values of all 104 /// fields not covered by the mask.
120 * fields not covered by the mask. 105 ///
121 * 106 /// In order to reset a field's value to the default, the field must
122 * If a repeated field is specified for an update operation, the existing 107 /// be in the mask and set to the default value in the provided resource.
123 * repeated values in the target resource will be overwritten by the new values. 108 /// Hence, in order to reset all fields of a resource, provide a default
124 * Note that a repeated field is only allowed in the last position of a `paths` 109 /// instance of the resource and set all fields in the mask, or do
125 * string. 110 /// not provide a mask as described below.
126 * 111 ///
127 * If a sub-message is specified in the last position of the field mask for an 112 /// If a field mask is not present on update, the operation applies to
128 * update operation, then the existing sub-message in the target resource is 113 /// all fields (as if a field mask of all fields has been specified).
129 * overwritten. Given the target message: 114 /// Note that in the presence of schema evolution, this may mean that
130 * 115 /// fields the client does not know and has therefore not filled into
131 * f { 116 /// the request will be reset to their default. If this is unwanted
132 * b { 117 /// behavior, a specific service may require a client to always specify
133 * d : 1 118 /// a field mask, producing an error if not.
134 * x : 2 119 ///
135 * } 120 /// As with get operations, the location of the resource which
136 * c : 1 121 /// describes the updated values in the request message depends on the
137 * } 122 /// operation kind. In any case, the effect of the field mask is
138 * 123 /// required to be honored by the API.
139 * And an update message: 124 ///
140 * 125 /// ## Considerations for HTTP REST
141 * f { 126 ///
142 * b { 127 /// The HTTP kind of an update operation which uses a field mask must
143 * d : 10 128 /// be set to PATCH instead of PUT in order to satisfy HTTP semantics
144 * } 129 /// (PUT must only be used for full updates).
145 * } 130 ///
146 * 131 /// # JSON Encoding of Field Masks
147 * then if the field mask is: 132 ///
148 * 133 /// In JSON, a field mask is encoded as a single string where paths are
149 * paths: "f.b" 134 /// separated by a comma. Fields name in each path are converted
150 * 135 /// to/from lower-camel naming conventions.
151 * then the result will be: 136 ///
152 * 137 /// As an example, consider the following message declarations:
153 * f { 138 ///
154 * b { 139 /// message Profile {
155 * d : 10 140 /// User user = 1;
156 * } 141 /// Photo photo = 2;
157 * c : 1 142 /// }
158 * } 143 /// message User {
159 * 144 /// string display_name = 1;
160 * However, if the update mask was: 145 /// string address = 2;
161 * 146 /// }
162 * paths: "f.b.d" 147 ///
163 * 148 /// In proto a field mask for `Profile` may look as such:
164 * then the result would be: 149 ///
165 * 150 /// mask {
166 * f { 151 /// paths: "user.display_name"
167 * b { 152 /// paths: "photo"
168 * d : 10 153 /// }
169 * x : 2 154 ///
170 * } 155 /// In JSON, the same mask is represented as below:
171 * c : 1 156 ///
172 * } 157 /// {
173 * 158 /// mask: "user.displayName,photo"
174 * In order to reset a field's value to the default, the field must 159 /// }
175 * be in the mask and set to the default value in the provided resource. 160 ///
176 * Hence, in order to reset all fields of a resource, provide a default 161 /// # Field Masks and Oneof Fields
177 * instance of the resource and set all fields in the mask, or do 162 ///
178 * not provide a mask as described below. 163 /// Field masks treat fields in oneofs just as regular fields. Consider the
179 * 164 /// following message:
180 * If a field mask is not present on update, the operation applies to 165 ///
181 * all fields (as if a field mask of all fields has been specified). 166 /// message SampleMessage {
182 * Note that in the presence of schema evolution, this may mean that 167 /// oneof test_oneof {
183 * fields the client does not know and has therefore not filled into 168 /// string name = 4;
184 * the request will be reset to their default. If this is unwanted 169 /// SubMessage sub_message = 9;
185 * behavior, a specific service may require a client to always specify 170 /// }
186 * a field mask, producing an error if not. 171 /// }
187 * 172 ///
188 * As with get operations, the location of the resource which 173 /// The field mask can be:
189 * describes the updated values in the request message depends on the 174 ///
190 * operation kind. In any case, the effect of the field mask is 175 /// mask {
191 * required to be honored by the API. 176 /// paths: "name"
192 * 177 /// }
193 * ## Considerations for HTTP REST 178 ///
194 * 179 /// Or:
195 * The HTTP kind of an update operation which uses a field mask must 180 ///
196 * be set to PATCH instead of PUT in order to satisfy HTTP semantics 181 /// mask {
197 * (PUT must only be used for full updates). 182 /// paths: "sub_message"
198 * 183 /// }
199 * # JSON Encoding of Field Masks 184 ///
200 * 185 /// Note that oneof type names ("test_oneof" in this case) cannot be used in
201 * In JSON, a field mask is encoded as a single string where paths are 186 /// paths.
202 * separated by a comma. Fields name in each path are converted
203 * to/from lower-camel naming conventions.
204 *
205 * As an example, consider the following message declarations:
206 *
207 * message Profile {
208 * User user = 1;
209 * Photo photo = 2;
210 * }
211 * message User {
212 * string display_name = 1;
213 * string address = 2;
214 * }
215 *
216 * In proto a field mask for `Profile` may look as such:
217 *
218 * mask {
219 * paths: "user.display_name"
220 * paths: "photo"
221 * }
222 *
223 * In JSON, the same mask is represented as below:
224 *
225 * {
226 * mask: "user.displayName,photo"
227 * }
228 *
229 * # Field Masks and Oneof Fields
230 *
231 * Field masks treat fields in oneofs just as regular fields. Consider the
232 * following message:
233 *
234 * message SampleMessage {
235 * oneof test_oneof {
236 * string name = 4;
237 * SubMessage sub_message = 9;
238 * }
239 * }
240 *
241 * The field mask can be:
242 *
243 * mask {
244 * paths: "name"
245 * }
246 *
247 * Or:
248 *
249 * mask {
250 * paths: "sub_message"
251 * }
252 *
253 * Note that oneof type names ("test_oneof" in this case) cannot be used in
254 * paths.
255 **/
256 @interface GPBFieldMask : GPBMessage 187 @interface GPBFieldMask : GPBMessage
257 188
258 /** The set of field mask paths. */ 189 /// The set of field mask paths.
259 @property(nonatomic, readwrite, strong, null_resettable) NSMutableArray<NSString *> *pathsArray; 190 @property(nonatomic, readwrite, strong, null_resettable) NSMutableArray<NSString *> *pathsArray;
260 /** The number of items in @c pathsArray without causing the array to be created . */ 191 /// The number of items in @c pathsArray without causing the array to be created .
261 @property(nonatomic, readonly) NSUInteger pathsArray_Count; 192 @property(nonatomic, readonly) NSUInteger pathsArray_Count;
262 193
263 @end 194 @end
264 195
265 NS_ASSUME_NONNULL_END 196 NS_ASSUME_NONNULL_END
266 197
267 CF_EXTERN_C_END 198 CF_EXTERN_C_END
268 199
269 #pragma clang diagnostic pop 200 #pragma clang diagnostic pop
270 201
271 // @@protoc_insertion_point(global_scope) 202 // @@protoc_insertion_point(global_scope)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698