Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 1 | // Generated by the protocol buffer compiler. DO NOT EDIT! |
| 2 | // source: google/protobuf/any.proto |
| 3 | |
| 4 | #import "GPBProtocolBuffers.h" |
| 5 | |
| 6 | #if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 |
Thomas Van Lenten | 536059e | 2015-12-02 14:43:05 -0500 | [diff] [blame] | 7 | #error This file was generated by a different version of protoc which is incompatible with your Protocol Buffer library sources. |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 8 | #endif |
| 9 | |
| 10 | // @@protoc_insertion_point(imports) |
| 11 | |
| 12 | CF_EXTERN_C_BEGIN |
| 13 | |
Thomas Van Lenten | 8c88957 | 2015-06-16 16:45:14 -0400 | [diff] [blame] | 14 | NS_ASSUME_NONNULL_BEGIN |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 15 | |
| 16 | #pragma mark - GPBAnyRoot |
| 17 | |
Thomas Van Lenten | 36650a0 | 2016-03-07 12:07:03 -0500 | [diff] [blame^] | 18 | /// Exposes the extension registry for this file. |
| 19 | /// |
| 20 | /// The base class provides: |
| 21 | /// @code |
| 22 | /// + (GPBExtensionRegistry *)extensionRegistry; |
| 23 | /// @endcode |
| 24 | /// which is a @c GPBExtensionRegistry that includes all the extensions defined by |
| 25 | /// this file and all files that it depends on. |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 26 | @interface GPBAnyRoot : GPBRootObject |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 27 | @end |
| 28 | |
| 29 | #pragma mark - GPBAny |
| 30 | |
| 31 | typedef GPB_ENUM(GPBAny_FieldNumber) { |
| 32 | GPBAny_FieldNumber_TypeURL = 1, |
| 33 | GPBAny_FieldNumber_Value = 2, |
| 34 | }; |
| 35 | |
Thomas Van Lenten | 36650a0 | 2016-03-07 12:07:03 -0500 | [diff] [blame^] | 36 | /// `Any` contains an arbitrary serialized message along with a URL |
| 37 | /// that describes the type of the serialized message. |
| 38 | /// |
| 39 | /// |
| 40 | /// JSON |
| 41 | /// ==== |
| 42 | /// The JSON representation of an `Any` value uses the regular |
| 43 | /// representation of the deserialized, embedded message, with an |
| 44 | /// additional field `\@type` which contains the type URL. Example: |
| 45 | /// |
| 46 | /// package google.profile; |
| 47 | /// message Person { |
| 48 | /// string first_name = 1; |
| 49 | /// string last_name = 2; |
| 50 | /// } |
| 51 | /// |
| 52 | /// { |
| 53 | /// "\@type": "type.googleapis.com/google.profile.Person", |
| 54 | /// "firstName": <string>, |
| 55 | /// "lastName": <string> |
| 56 | /// } |
| 57 | /// |
| 58 | /// If the embedded message type is well-known and has a custom JSON |
| 59 | /// representation, that representation will be embedded adding a field |
| 60 | /// `value` which holds the custom JSON in addition to the `\@type` |
| 61 | /// field. Example (for message [google.protobuf.Duration][]): |
| 62 | /// |
| 63 | /// { |
| 64 | /// "\@type": "type.googleapis.com/google.protobuf.Duration", |
| 65 | /// "value": "1.212s" |
| 66 | /// } |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 67 | @interface GPBAny : GPBMessage |
| 68 | |
Thomas Van Lenten | 36650a0 | 2016-03-07 12:07:03 -0500 | [diff] [blame^] | 69 | /// A URL/resource name whose content describes the type of the |
| 70 | /// serialized message. |
| 71 | /// |
| 72 | /// For URLs which use the schema `http`, `https`, or no schema, the |
| 73 | /// following restrictions and interpretations apply: |
| 74 | /// |
| 75 | /// * If no schema is provided, `https` is assumed. |
| 76 | /// * The last segment of the URL's path must represent the fully |
| 77 | /// qualified name of the type (as in `path/google.protobuf.Duration`). |
| 78 | /// * An HTTP GET on the URL must yield a [google.protobuf.Type][] |
| 79 | /// value in binary format, or produce an error. |
| 80 | /// * Applications are allowed to cache lookup results based on the |
| 81 | /// URL, or have them precompiled into a binary to avoid any |
| 82 | /// lookup. Therefore, binary compatibility needs to be preserved |
| 83 | /// on changes to types. (Use versioned type names to manage |
| 84 | /// breaking changes.) |
| 85 | /// |
| 86 | /// Schemas other than `http`, `https` (or the empty schema) might be |
| 87 | /// used with implementation specific semantics. |
Thomas Van Lenten | 8c88957 | 2015-06-16 16:45:14 -0400 | [diff] [blame] | 88 | @property(nonatomic, readwrite, copy, null_resettable) NSString *typeURL; |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 89 | |
Thomas Van Lenten | 36650a0 | 2016-03-07 12:07:03 -0500 | [diff] [blame^] | 90 | /// Must be valid serialized data of the above specified type. |
Thomas Van Lenten | 8c88957 | 2015-06-16 16:45:14 -0400 | [diff] [blame] | 91 | @property(nonatomic, readwrite, copy, null_resettable) NSData *value; |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 92 | |
| 93 | @end |
| 94 | |
Thomas Van Lenten | 8c88957 | 2015-06-16 16:45:14 -0400 | [diff] [blame] | 95 | NS_ASSUME_NONNULL_END |
| 96 | |
Thomas Van Lenten | 1dcc329 | 2015-05-21 17:14:52 -0400 | [diff] [blame] | 97 | CF_EXTERN_C_END |
| 98 | |
| 99 | // @@protoc_insertion_point(global_scope) |