diff options
Diffstat (limited to 'objectivec/google')
22 files changed, 3216 insertions, 24 deletions
diff --git a/objectivec/google/protobuf/Any.pbobjc.h b/objectivec/google/protobuf/Any.pbobjc.h new file mode 100644 index 00000000..8154318e --- /dev/null +++ b/objectivec/google/protobuf/Any.pbobjc.h @@ -0,0 +1,100 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/any.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + + +#pragma mark - GPBAnyRoot + +@interface GPBAnyRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBAny + +typedef GPB_ENUM(GPBAny_FieldNumber) { + GPBAny_FieldNumber_TypeURL = 1, + GPBAny_FieldNumber_Value = 2, +}; + +// `Any` contains an arbitrary serialized message along with a URL +// that describes the type of the serialized message. +// +// The proto runtimes and/or compiler will eventually +// provide utilities to pack/unpack Any values (projected Q1/15). +// +// # JSON +// The JSON representation of an `Any` value uses the regular +// representation of the deserialized, embedded message, with an +// additional field `@type` which contains the type URL. Example: +// +// package google.profile; +// message Person { +// string first_name = 1; +// string last_name = 2; +// } +// +// { +// "@type": "type.googleapis.com/google.profile.Person", +// "firstName": <string>, +// "lastName": <string> +// } +// +// If the embedded message type is well-known and has a custom JSON +// representation, that representation will be embedded adding a field +// `value` which holds the custom JSON in addition to the the `@type` +// field. Example (for message [google.protobuf.Duration][google.protobuf.Duration]): +// +// { +// "@type": "type.googleapis.com/google.protobuf.Duration", +// "value": "1.212s" +// } +@interface GPBAny : GPBMessage + +// A URL/resource name whose content describes the type of the +// serialized message. +// +// For URLs which use the schema `http`, `https`, or no schema, the +// following restrictions and interpretations apply: +// +// * If no schema is provided, `https` is assumed. +// * The last segment of the URL's path must represent the fully +// qualified name of the type (as in `path/google.protobuf.Duration`). +// * An HTTP GET on the URL must yield a [google.protobuf.Type][google.protobuf.Type] +// value in binary format, or produce an error. +// * Applications are allowed to cache lookup results based on the +// URL, or have them precompiled into a binary to avoid any +// lookup. Therefore, binary compatibility needs to be preserved +// on changes to types. (Use versioned type names to manage +// breaking changes.) +// +// Schemas other than `http`, `https` (or the empty schema) might be +// used with implementation specific semantics. +// +// Types originating from the `google.*` package +// namespace should use `type.googleapis.com/full.type.name` (without +// schema and path). A type service will eventually become available which +// serves those URLs (projected Q2/15). +@property(nonatomic, readwrite, copy) NSString *typeURL; + +// Must be valid serialized data of the above specified type. +@property(nonatomic, readwrite, copy) NSData *value; + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Any.pbobjc.m b/objectivec/google/protobuf/Any.pbobjc.m new file mode 100644 index 00000000..4db73cb9 --- /dev/null +++ b/objectivec/google/protobuf/Any.pbobjc.m @@ -0,0 +1,93 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/any.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/Any.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBAnyRoot + +@implementation GPBAnyRoot + +@end + +static GPBFileDescriptor *GPBAnyRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - GPBAny + +@implementation GPBAny + +@dynamic typeURL; +@dynamic value; + +typedef struct GPBAny_Storage { + uint32_t _has_storage_[1]; + NSString *typeURL; + NSData *value; +} GPBAny_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "typeURL", + .number = GPBAny_FieldNumber_TypeURL, + .hasIndex = 0, + .flags = GPBFieldOptional | GPBFieldTextFormatNameCustom, + .type = GPBTypeString, + .offset = offsetof(GPBAny_Storage, typeURL), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "value", + .number = GPBAny_FieldNumber_Value, + .hasIndex = 1, + .flags = GPBFieldOptional, + .type = GPBTypeData, + .offset = offsetof(GPBAny_Storage, value), + .defaultValue.valueData = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; +#if GPBOBJC_SKIP_MESSAGE_TEXTFORMAT_EXTRAS + const char *extraTextFormatInfo = NULL; +#else + static const char *extraTextFormatInfo = "\001\001\004\241!!\000"; +#endif // GPBOBJC_SKIP_MESSAGE_TEXTFORMAT_EXTRAS + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBAny class] + rootClass:[GPBAnyRoot class] + file:GPBAnyRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBAny_Storage) + wireFormat:NO + extraTextFormatInfo:extraTextFormatInfo]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Api.pbobjc.h b/objectivec/google/protobuf/Api.pbobjc.h new file mode 100644 index 00000000..9e6fc850 --- /dev/null +++ b/objectivec/google/protobuf/Api.pbobjc.h @@ -0,0 +1,121 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/api.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + +@class GPBSourceContext; + + +#pragma mark - GPBApiRoot + +@interface GPBApiRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBApi + +typedef GPB_ENUM(GPBApi_FieldNumber) { + GPBApi_FieldNumber_Name = 1, + GPBApi_FieldNumber_MethodsArray = 2, + GPBApi_FieldNumber_OptionsArray = 3, + GPBApi_FieldNumber_Version = 4, + GPBApi_FieldNumber_SourceContext = 5, +}; + +// Api is a light-weight descriptor for a protocol buffer service. +@interface GPBApi : GPBMessage + +// The fully qualified name of this api, including package name +// followed by the api's simple name. +@property(nonatomic, readwrite, copy) NSString *name; + +// The methods of this api, in unspecified order. +// |methodsArray| contains |GPBMethod| +@property(nonatomic, readwrite, strong) NSMutableArray *methodsArray; + +// Any metadata attached to the API. +// |optionsArray| contains |GPBOption| +@property(nonatomic, readwrite, strong) NSMutableArray *optionsArray; + +// A version string for this api. If specified, must have the form +// `major-version.minor-version`, as in `1.10`. If the minor version +// is omitted, it defaults to zero. If the entire version field is +// empty, the major version is derived from the package name, as +// outlined below. If the field is not empty, the version in the +// package name will be verified to be consistent with what is +// provided here. +// +// The versioning schema uses [semantic +// versioning](http://semver.org) where the major version number +// indicates a breaking change and the minor version an additive, +// non-breaking change. Both version numbers are signals to users +// what to expect from different versions, and should be carefully +// chosen based on the product plan. +// +// The major version is also reflected in the package name of the +// API, which must end in `v<major-version>`, as in +// `google.feature.v1`. For major versions 0 and 1, the suffix can +// be omitted. Zero major versions must only be used for +// experimental, none-GA apis. +// +// See also: [design doc](http://go/api-versioning). +@property(nonatomic, readwrite, copy) NSString *version; + +// Source context for the protocol buffer service represented by this +// message. +@property(nonatomic, readwrite) BOOL hasSourceContext; +@property(nonatomic, readwrite, strong) GPBSourceContext *sourceContext; + +@end + +#pragma mark - GPBMethod + +typedef GPB_ENUM(GPBMethod_FieldNumber) { + GPBMethod_FieldNumber_Name = 1, + GPBMethod_FieldNumber_RequestTypeURL = 2, + GPBMethod_FieldNumber_RequestStreaming = 3, + GPBMethod_FieldNumber_ResponseTypeURL = 4, + GPBMethod_FieldNumber_ResponseStreaming = 5, + GPBMethod_FieldNumber_OptionsArray = 6, +}; + +// Method represents a method of an api. +@interface GPBMethod : GPBMessage + +// The simple name of this method. +@property(nonatomic, readwrite, copy) NSString *name; + +// A URL of the input message type. +@property(nonatomic, readwrite, copy) NSString *requestTypeURL; + +// If true, the request is streamed. +@property(nonatomic, readwrite) BOOL requestStreaming; + +// The URL of the output message type. +@property(nonatomic, readwrite, copy) NSString *responseTypeURL; + +// If true, the response is streamed. +@property(nonatomic, readwrite) BOOL responseStreaming; + +// Any metadata attached to the method. +// |optionsArray| contains |GPBOption| +@property(nonatomic, readwrite, strong) NSMutableArray *optionsArray; + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Api.pbobjc.m b/objectivec/google/protobuf/Api.pbobjc.m new file mode 100644 index 00000000..9416860a --- /dev/null +++ b/objectivec/google/protobuf/Api.pbobjc.m @@ -0,0 +1,262 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/api.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/Api.pbobjc.h" +#import "google/protobuf/SourceContext.pbobjc.h" +#import "google/protobuf/Type.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBApiRoot + +@implementation GPBApiRoot + ++ (GPBExtensionRegistry*)extensionRegistry { + // This is called by +initialize so there is no need to worry + // about thread safety and initialization of registry. + static GPBExtensionRegistry* registry = nil; + if (!registry) { + registry = [[GPBExtensionRegistry alloc] init]; + static GPBExtensionDescription descriptions[] = { + }; + #pragma unused (descriptions) + [registry addExtensions:[GPBSourceContextRoot extensionRegistry]]; + [registry addExtensions:[GPBTypeRoot extensionRegistry]]; + } + return registry; +} + +@end + +static GPBFileDescriptor *GPBApiRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - GPBApi + +@implementation GPBApi + +@dynamic name; +@dynamic methodsArray; +@dynamic optionsArray; +@dynamic version; +@dynamic hasSourceContext, sourceContext; + +typedef struct GPBApi_Storage { + uint32_t _has_storage_[1]; + NSString *name; + NSMutableArray *methodsArray; + NSMutableArray *optionsArray; + NSString *version; + GPBSourceContext *sourceContext; +} GPBApi_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "name", + .number = GPBApi_FieldNumber_Name, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBApi_Storage, name), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "methodsArray", + .number = GPBApi_FieldNumber_MethodsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBApi_Storage, methodsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBMethod), + .fieldOptions = NULL, + }, + { + .name = "optionsArray", + .number = GPBApi_FieldNumber_OptionsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBApi_Storage, optionsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBOption), + .fieldOptions = NULL, + }, + { + .name = "version", + .number = GPBApi_FieldNumber_Version, + .hasIndex = 3, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBApi_Storage, version), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "sourceContext", + .number = GPBApi_FieldNumber_SourceContext, + .hasIndex = 4, + .flags = GPBFieldOptional, + .type = GPBTypeMessage, + .offset = offsetof(GPBApi_Storage, sourceContext), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBSourceContext), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBApi class] + rootClass:[GPBApiRoot class] + file:GPBApiRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBApi_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBMethod + +@implementation GPBMethod + +@dynamic name; +@dynamic requestTypeURL; +@dynamic requestStreaming; +@dynamic responseTypeURL; +@dynamic responseStreaming; +@dynamic optionsArray; + +typedef struct GPBMethod_Storage { + uint32_t _has_storage_[1]; + BOOL requestStreaming; + BOOL responseStreaming; + NSString *name; + NSString *requestTypeURL; + NSString *responseTypeURL; + NSMutableArray *optionsArray; +} GPBMethod_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "name", + .number = GPBMethod_FieldNumber_Name, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBMethod_Storage, name), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "requestTypeURL", + .number = GPBMethod_FieldNumber_RequestTypeURL, + .hasIndex = 1, + .flags = GPBFieldOptional | GPBFieldTextFormatNameCustom, + .type = GPBTypeString, + .offset = offsetof(GPBMethod_Storage, requestTypeURL), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "requestStreaming", + .number = GPBMethod_FieldNumber_RequestStreaming, + .hasIndex = 2, + .flags = GPBFieldOptional, + .type = GPBTypeBool, + .offset = offsetof(GPBMethod_Storage, requestStreaming), + .defaultValue.valueBool = NO, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "responseTypeURL", + .number = GPBMethod_FieldNumber_ResponseTypeURL, + .hasIndex = 3, + .flags = GPBFieldOptional | GPBFieldTextFormatNameCustom, + .type = GPBTypeString, + .offset = offsetof(GPBMethod_Storage, responseTypeURL), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "responseStreaming", + .number = GPBMethod_FieldNumber_ResponseStreaming, + .hasIndex = 4, + .flags = GPBFieldOptional, + .type = GPBTypeBool, + .offset = offsetof(GPBMethod_Storage, responseStreaming), + .defaultValue.valueBool = NO, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "optionsArray", + .number = GPBMethod_FieldNumber_OptionsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBMethod_Storage, optionsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBOption), + .fieldOptions = NULL, + }, + }; +#if GPBOBJC_SKIP_MESSAGE_TEXTFORMAT_EXTRAS + const char *extraTextFormatInfo = NULL; +#else + static const char *extraTextFormatInfo = "\002\002\007\244\241!!\000\004\010\244\241!!\000"; +#endif // GPBOBJC_SKIP_MESSAGE_TEXTFORMAT_EXTRAS + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBMethod class] + rootClass:[GPBApiRoot class] + file:GPBApiRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBMethod_Storage) + wireFormat:NO + extraTextFormatInfo:extraTextFormatInfo]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Descriptor.pbobjc.h b/objectivec/google/protobuf/Descriptor.pbobjc.h index 7b11d899..5a53abbc 100644 --- a/objectivec/google/protobuf/Descriptor.pbobjc.h +++ b/objectivec/google/protobuf/Descriptor.pbobjc.h @@ -7,29 +7,18 @@ #error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. #endif +// @@protoc_insertion_point(imports) + CF_EXTERN_C_BEGIN -@class GPBDescriptorProto; -@class GPBDescriptorProto_ExtensionRange; -@class GPBEnumDescriptorProto; @class GPBEnumOptions; -@class GPBEnumValueDescriptorProto; @class GPBEnumValueOptions; -@class GPBFieldDescriptorProto; @class GPBFieldOptions; -@class GPBFileDescriptorProto; -@class GPBFileDescriptorSet; @class GPBFileOptions; @class GPBMessageOptions; -@class GPBMethodDescriptorProto; @class GPBMethodOptions; -@class GPBOneofDescriptorProto; -@class GPBServiceDescriptorProto; @class GPBServiceOptions; @class GPBSourceCodeInfo; -@class GPBSourceCodeInfo_Location; -@class GPBUninterpretedOption; -@class GPBUninterpretedOption_NamePart; #pragma mark - Enum GPBFieldDescriptorProto_Type @@ -122,10 +111,33 @@ GPBEnumDescriptor *GPBFieldOptions_CType_EnumDescriptor(void); BOOL GPBFieldOptions_CType_IsValidValue(int32_t value); +#pragma mark - Enum GPBFieldOptions_JSType + +typedef GPB_ENUM(GPBFieldOptions_JSType) { + // Use the default type. + GPBFieldOptions_JSType_JsNormal = 0, + + // Use JavaScript strings. + GPBFieldOptions_JSType_JsString = 1, + + // Use JavaScript numbers. + GPBFieldOptions_JSType_JsNumber = 2, +}; + +GPBEnumDescriptor *GPBFieldOptions_JSType_EnumDescriptor(void); + +BOOL GPBFieldOptions_JSType_IsValidValue(int32_t value); + #pragma mark - GPBDescriptorRoot @interface GPBDescriptorRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + @end #pragma mark - GPBFileDescriptorSet @@ -223,6 +235,8 @@ typedef GPB_ENUM(GPBDescriptorProto_FieldNumber) { GPBDescriptorProto_FieldNumber_ExtensionArray = 6, GPBDescriptorProto_FieldNumber_Options = 7, GPBDescriptorProto_FieldNumber_OneofDeclArray = 8, + GPBDescriptorProto_FieldNumber_ReservedRangeArray = 9, + GPBDescriptorProto_FieldNumber_ReservedNameArray = 10, }; // Describes a message type. @@ -252,6 +266,14 @@ typedef GPB_ENUM(GPBDescriptorProto_FieldNumber) { @property(nonatomic, readwrite) BOOL hasOptions; @property(nonatomic, readwrite, strong) GPBMessageOptions *options; +// |reservedRangeArray| contains |GPBDescriptorProto_ReservedRange| +@property(nonatomic, readwrite, strong) NSMutableArray *reservedRangeArray; + +// Reserved field names, which may not be used by fields in the same message. +// A given name may only be reserved once. +// |reservedNameArray| contains |NSString| +@property(nonatomic, readwrite, strong) NSMutableArray *reservedNameArray; + @end #pragma mark - GPBDescriptorProto_ExtensionRange @@ -271,6 +293,28 @@ typedef GPB_ENUM(GPBDescriptorProto_ExtensionRange_FieldNumber) { @end +#pragma mark - GPBDescriptorProto_ReservedRange + +typedef GPB_ENUM(GPBDescriptorProto_ReservedRange_FieldNumber) { + GPBDescriptorProto_ReservedRange_FieldNumber_Start = 1, + GPBDescriptorProto_ReservedRange_FieldNumber_End = 2, +}; + +// Range of reserved tag numbers. Reserved tag numbers may not be used by +// fields or extension ranges in the same message. Reserved ranges may +// not overlap. +@interface GPBDescriptorProto_ReservedRange : GPBMessage + +// Inclusive. +@property(nonatomic, readwrite) BOOL hasStart; +@property(nonatomic, readwrite) int32_t start; + +// Exclusive. +@property(nonatomic, readwrite) BOOL hasEnd; +@property(nonatomic, readwrite) int32_t end; + +@end + #pragma mark - GPBFieldDescriptorProto typedef GPB_ENUM(GPBFieldDescriptorProto_FieldNumber) { @@ -467,6 +511,7 @@ typedef GPB_ENUM(GPBFileOptions_FieldNumber) { GPBFileOptions_FieldNumber_JavaStringCheckUtf8 = 27, GPBFileOptions_FieldNumber_CcEnableArenas = 31, GPBFileOptions_FieldNumber_ObjcClassPrefix = 36, + GPBFileOptions_FieldNumber_CsharpNamespace = 37, GPBFileOptions_FieldNumber_UninterpretedOptionArray = 999, }; @@ -565,6 +610,10 @@ typedef GPB_ENUM(GPBFileOptions_FieldNumber) { @property(nonatomic, readwrite) BOOL hasObjcClassPrefix; @property(nonatomic, readwrite, copy) NSString *objcClassPrefix; +// Namespace for generated classes; defaults to the package. +@property(nonatomic, readwrite) BOOL hasCsharpNamespace; +@property(nonatomic, readwrite, copy) NSString *csharpNamespace; + // The parser stores options it doesn't recognize here. See above. // |uninterpretedOptionArray| contains |GPBUninterpretedOption| @property(nonatomic, readwrite, strong) NSMutableArray *uninterpretedOptionArray; @@ -654,6 +703,7 @@ typedef GPB_ENUM(GPBFieldOptions_FieldNumber) { GPBFieldOptions_FieldNumber_Packed = 2, GPBFieldOptions_FieldNumber_Deprecated = 3, GPBFieldOptions_FieldNumber_Lazy = 5, + GPBFieldOptions_FieldNumber_Jstype = 6, GPBFieldOptions_FieldNumber_Weak = 10, GPBFieldOptions_FieldNumber_UninterpretedOptionArray = 999, }; @@ -670,10 +720,23 @@ typedef GPB_ENUM(GPBFieldOptions_FieldNumber) { // The packed option can be enabled for repeated primitive fields to enable // a more efficient representation on the wire. Rather than repeatedly // writing the tag and type for each element, the entire array is encoded as -// a single length-delimited blob. +// a single length-delimited blob. In proto3, only explicit setting it to +// false will avoid using packed encoding. @property(nonatomic, readwrite) BOOL hasPacked; @property(nonatomic, readwrite) BOOL packed; +// The jstype option determines the JavaScript type used for values of the +// field. The option is permitted only for 64 bit integral and fixed types +// (int64, uint64, sint64, fixed64, sfixed64). By default these types are +// represented as JavaScript strings. This avoids loss of precision that can +// happen when a large value is converted to a floating point JavaScript +// numbers. Specifying JS_NUMBER for the jstype causes the generated +// JavaScript code to use the JavaScript "number" type instead of strings. +// This option is an enum to permit additional types to be added, +// e.g. goog.math.Integer. +@property(nonatomic, readwrite) BOOL hasJstype; +@property(nonatomic, readwrite) GPBFieldOptions_JSType jstype; + // Should this field be parsed lazily? Lazy applies only to message-type // fields. It means that when the outer message is initially parsed, the // inner message's contents will not be parsed but instead stored in encoded @@ -1044,3 +1107,5 @@ typedef GPB_ENUM(GPBSourceCodeInfo_Location_FieldNumber) { @end CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Descriptor.pbobjc.m b/objectivec/google/protobuf/Descriptor.pbobjc.m index b7d2e64f..7f1bdd49 100644 --- a/objectivec/google/protobuf/Descriptor.pbobjc.m +++ b/objectivec/google/protobuf/Descriptor.pbobjc.m @@ -2,8 +2,8 @@ // source: google/protobuf/descriptor.proto #import "GPBProtocolBuffers_RuntimeSupport.h" - #import "google/protobuf/Descriptor.pbobjc.h" +// @@protoc_insertion_point(imports) #pragma mark - GPBDescriptorRoot @@ -273,6 +273,8 @@ typedef struct GPBFileDescriptorProto_Storage { @dynamic extensionRangeArray; @dynamic oneofDeclArray; @dynamic hasOptions, options; +@dynamic reservedRangeArray; +@dynamic reservedNameArray; typedef struct GPBDescriptorProto_Storage { uint32_t _has_storage_[1]; @@ -284,6 +286,8 @@ typedef struct GPBDescriptorProto_Storage { NSMutableArray *extensionArray; GPBMessageOptions *options; NSMutableArray *oneofDeclArray; + NSMutableArray *reservedRangeArray; + NSMutableArray *reservedNameArray; } GPBDescriptorProto_Storage; // This method is threadsafe because it is initially called @@ -380,6 +384,28 @@ typedef struct GPBDescriptorProto_Storage { .typeSpecific.className = GPBStringifySymbol(GPBOneofDescriptorProto), .fieldOptions = NULL, }, + { + .name = "reservedRangeArray", + .number = GPBDescriptorProto_FieldNumber_ReservedRangeArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBDescriptorProto_Storage, reservedRangeArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBDescriptorProto_ReservedRange), + .fieldOptions = NULL, + }, + { + .name = "reservedNameArray", + .number = GPBDescriptorProto_FieldNumber_ReservedNameArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeString, + .offset = offsetof(GPBDescriptorProto_Storage, reservedNameArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, }; descriptor = [GPBDescriptor allocDescriptorForClass:[GPBDescriptorProto class] rootClass:[GPBDescriptorRoot class] @@ -461,6 +487,67 @@ typedef struct GPBDescriptorProto_ExtensionRange_Storage { @end +#pragma mark - GPBDescriptorProto_ReservedRange + +@implementation GPBDescriptorProto_ReservedRange + +@dynamic hasStart, start; +@dynamic hasEnd, end; + +typedef struct GPBDescriptorProto_ReservedRange_Storage { + uint32_t _has_storage_[1]; + int32_t start; + int32_t end; +} GPBDescriptorProto_ReservedRange_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "start", + .number = GPBDescriptorProto_ReservedRange_FieldNumber_Start, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeInt32, + .offset = offsetof(GPBDescriptorProto_ReservedRange_Storage, start), + .defaultValue.valueInt32 = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "end", + .number = GPBDescriptorProto_ReservedRange_FieldNumber_End, + .hasIndex = 1, + .flags = GPBFieldOptional, + .type = GPBTypeInt32, + .offset = offsetof(GPBDescriptorProto_ReservedRange_Storage, end), + .defaultValue.valueInt32 = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBDescriptorProto_ReservedRange class] + rootClass:[GPBDescriptorRoot class] + file:GPBDescriptorRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBDescriptorProto_ReservedRange_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + #pragma mark - GPBFieldDescriptorProto @implementation GPBFieldDescriptorProto @@ -1105,6 +1192,7 @@ typedef struct GPBMethodDescriptorProto_Storage { @dynamic hasDeprecated, deprecated; @dynamic hasCcEnableArenas, ccEnableArenas; @dynamic hasObjcClassPrefix, objcClassPrefix; +@dynamic hasCsharpNamespace, csharpNamespace; @dynamic uninterpretedOptionArray; typedef struct GPBFileOptions_Storage { @@ -1122,6 +1210,7 @@ typedef struct GPBFileOptions_Storage { NSString *javaOuterClassname; NSString *goPackage; NSString *objcClassPrefix; + NSString *csharpNamespace; NSMutableArray *uninterpretedOptionArray; } GPBFileOptions_Storage; @@ -1275,6 +1364,17 @@ typedef struct GPBFileOptions_Storage { .fieldOptions = NULL, }, { + .name = "csharpNamespace", + .number = GPBFileOptions_FieldNumber_CsharpNamespace, + .hasIndex = 13, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBFileOptions_Storage, csharpNamespace), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { .name = "uninterpretedOptionArray", .number = GPBFileOptions_FieldNumber_UninterpretedOptionArray, .hasIndex = GPBNoHasBit, @@ -1449,6 +1549,7 @@ typedef struct GPBMessageOptions_Storage { @dynamic hasCtype, ctype; @dynamic hasPacked, packed; +@dynamic hasJstype, jstype; @dynamic hasLazy, lazy; @dynamic hasDeprecated, deprecated; @dynamic hasWeak, weak; @@ -1461,6 +1562,7 @@ typedef struct GPBFieldOptions_Storage { BOOL lazy; BOOL weak; GPBFieldOptions_CType ctype; + GPBFieldOptions_JSType jstype; NSMutableArray *uninterpretedOptionArray; } GPBFieldOptions_Storage; @@ -1495,7 +1597,7 @@ typedef struct GPBFieldOptions_Storage { { .name = "deprecated", .number = GPBFieldOptions_FieldNumber_Deprecated, - .hasIndex = 3, + .hasIndex = 4, .flags = GPBFieldOptional | GPBFieldHasDefaultValue, .type = GPBTypeBool, .offset = offsetof(GPBFieldOptions_Storage, deprecated), @@ -1506,7 +1608,7 @@ typedef struct GPBFieldOptions_Storage { { .name = "lazy", .number = GPBFieldOptions_FieldNumber_Lazy, - .hasIndex = 2, + .hasIndex = 3, .flags = GPBFieldOptional | GPBFieldHasDefaultValue, .type = GPBTypeBool, .offset = offsetof(GPBFieldOptions_Storage, lazy), @@ -1515,9 +1617,20 @@ typedef struct GPBFieldOptions_Storage { .fieldOptions = NULL, }, { + .name = "jstype", + .number = GPBFieldOptions_FieldNumber_Jstype, + .hasIndex = 2, + .flags = GPBFieldOptional | GPBFieldHasDefaultValue | GPBFieldHasEnumDescriptor, + .type = GPBTypeEnum, + .offset = offsetof(GPBFieldOptions_Storage, jstype), + .defaultValue.valueEnum = GPBFieldOptions_JSType_JsNormal, + .typeSpecific.enumDescFunc = GPBFieldOptions_JSType_EnumDescriptor, + .fieldOptions = NULL, + }, + { .name = "weak", .number = GPBFieldOptions_FieldNumber_Weak, - .hasIndex = 4, + .hasIndex = 5, .flags = GPBFieldOptional | GPBFieldHasDefaultValue, .type = GPBTypeBool, .offset = offsetof(GPBFieldOptions_Storage, weak), @@ -1539,6 +1652,7 @@ typedef struct GPBFieldOptions_Storage { }; static GPBMessageEnumDescription enums[] = { { .enumDescriptorFunc = GPBFieldOptions_CType_EnumDescriptor }, + { .enumDescriptorFunc = GPBFieldOptions_JSType_EnumDescriptor }, }; static GPBExtensionRange ranges[] = { { .start = 1000, .end = 536870912 }, @@ -1591,6 +1705,35 @@ BOOL GPBFieldOptions_CType_IsValidValue(int32_t value__) { } } +#pragma mark - Enum GPBFieldOptions_JSType + +GPBEnumDescriptor *GPBFieldOptions_JSType_EnumDescriptor(void) { + static GPBEnumDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageEnumValueDescription values[] = { + { .name = "JsNormal", .number = GPBFieldOptions_JSType_JsNormal }, + { .name = "JsString", .number = GPBFieldOptions_JSType_JsString }, + { .name = "JsNumber", .number = GPBFieldOptions_JSType_JsNumber }, + }; + descriptor = [GPBEnumDescriptor allocDescriptorForName:GPBNSStringifySymbol(GPBFieldOptions_JSType) + values:values + valueCount:sizeof(values) / sizeof(GPBMessageEnumValueDescription) + enumVerifier:GPBFieldOptions_JSType_IsValidValue]; + } + return descriptor; +} + +BOOL GPBFieldOptions_JSType_IsValidValue(int32_t value__) { + switch (value__) { + case GPBFieldOptions_JSType_JsNormal: + case GPBFieldOptions_JSType_JsString: + case GPBFieldOptions_JSType_JsNumber: + return YES; + default: + return NO; + } +} + #pragma mark - GPBEnumOptions @implementation GPBEnumOptions @@ -2203,3 +2346,5 @@ typedef struct GPBSourceCodeInfo_Location_Storage { @end + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Duration.pbobjc.h b/objectivec/google/protobuf/Duration.pbobjc.h index c452d0bb..f65df6c9 100644 --- a/objectivec/google/protobuf/Duration.pbobjc.h +++ b/objectivec/google/protobuf/Duration.pbobjc.h @@ -7,14 +7,20 @@ #error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. #endif -CF_EXTERN_C_BEGIN +// @@protoc_insertion_point(imports) -@class GPBDuration; +CF_EXTERN_C_BEGIN #pragma mark - GPBDurationRoot @interface GPBDurationRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + @end #pragma mark - GPBDuration @@ -81,3 +87,5 @@ typedef GPB_ENUM(GPBDuration_FieldNumber) { @end CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Duration.pbobjc.m b/objectivec/google/protobuf/Duration.pbobjc.m index cf0a3064..4db030f4 100644 --- a/objectivec/google/protobuf/Duration.pbobjc.m +++ b/objectivec/google/protobuf/Duration.pbobjc.m @@ -2,8 +2,8 @@ // source: google/protobuf/duration.proto #import "GPBProtocolBuffers_RuntimeSupport.h" - #import "google/protobuf/Duration.pbobjc.h" +// @@protoc_insertion_point(imports) #pragma mark - GPBDurationRoot @@ -83,3 +83,5 @@ typedef struct GPBDuration_Storage { @end + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Empty.pbobjc.h b/objectivec/google/protobuf/Empty.pbobjc.h new file mode 100644 index 00000000..1356c3a7 --- /dev/null +++ b/objectivec/google/protobuf/Empty.pbobjc.h @@ -0,0 +1,41 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/empty.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + + +#pragma mark - GPBEmptyRoot + +@interface GPBEmptyRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBEmpty + +// A generic empty message that you can re-use to avoid defining duplicated +// empty messages in your APIs. A typical example is to use it as the request +// or the response type of an API method. For instance: +// +// service Foo { +// rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); +// } +@interface GPBEmpty : GPBMessage + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Empty.pbobjc.m b/objectivec/google/protobuf/Empty.pbobjc.m new file mode 100644 index 00000000..619fe905 --- /dev/null +++ b/objectivec/google/protobuf/Empty.pbobjc.m @@ -0,0 +1,61 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/empty.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/Empty.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBEmptyRoot + +@implementation GPBEmptyRoot + +@end + +static GPBFileDescriptor *GPBEmptyRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - GPBEmpty + +@implementation GPBEmpty + + +typedef struct GPBEmpty_Storage { + uint32_t _has_storage_[0]; +} GPBEmpty_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBEmpty class] + rootClass:[GPBEmptyRoot class] + file:GPBEmptyRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBEmpty_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/FieldMask.pbobjc.h b/objectivec/google/protobuf/FieldMask.pbobjc.h new file mode 100644 index 00000000..ac6f03d2 --- /dev/null +++ b/objectivec/google/protobuf/FieldMask.pbobjc.h @@ -0,0 +1,160 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/field_mask.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + + +#pragma mark - GPBFieldMaskRoot + +@interface GPBFieldMaskRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBFieldMask + +typedef GPB_ENUM(GPBFieldMask_FieldNumber) { + GPBFieldMask_FieldNumber_PathsArray = 1, +}; + +// `FieldMask` represents a set of symbolic field paths, for example: +// +// paths: "f.a" +// paths: "f.b.d" +// +// Here `f` represents a field in some root message, `a` and `b` +// fields in the message found in `f`, and `d` a field found in the +// message in `f.b`. +// +// Field masks are used to specify a subset of fields that should be +// returned by a get operation or modified by an update operation. +// Field masks also have a custom JSON encoding (see below). +// +// # Field Masks in Projections +// When used in the context of a projection, a response message or +// sub-message is filtered by the API to only contain those fields as +// specified in the mask. For example, if the mask in the previous +// example is applied to a response message as follows: +// +// f { +// a : 22 +// b { +// d : 1 +// x : 2 +// } +// y : 13 +// } +// z: 8 +// +// The result will not contain specific values for fields x,y and z +// (there value will be set to the default, and omitted in proto text +// output): +// +// +// f { +// a : 22 +// b { +// d : 1 +// } +// } +// +// A repeated field is not allowed except at the last position of a +// field mask. +// +// If a FieldMask object is not present in a get operation, the +// operation applies to all fields (as if a FieldMask of all fields +// had been specified). +// +// Note that a field mask does not necessarily applies to the +// top-level response message. In case of a REST get operation, the +// field mask applies directly to the response, but in case of a REST +// list operation, the mask instead applies to each individual message +// in the returned resource list. In case of a REST custom method, +// other definitions may be used. Where the mask applies will be +// clearly documented together with its declaration in the API. In +// any case, the effect on the returned resource/resources is required +// behavior for APIs. +// +// # Field Masks in Update Operations +// A field mask in update operations specifies which fields of the +// targeted resource are going to be updated. The API is required +// to only change the values of the fields as specified in the mask +// and leave the others untouched. If a resource is passed in to +// describe the updated values, the API ignores the values of all +// fields not covered by the mask. +// +// In order to reset a field's value to the default, the field must +// be in the mask and set to the default value in the provided resource. +// Hence, in order to reset all fields of a resource, provide a default +// instance of the resource and set all fields in the mask, or do +// not provide a mask as described below. +// +// If a field mask is not present on update, the operation applies to +// all fields (as if a field mask of all fields has been specified). +// Note that in the presence of schema evolution, this may mean that +// fields the client does not know and has therefore not filled into +// the request will be reset to their default. If this is unwanted +// behavior, a specific service may require a client to always specify +// a field mask, producing an error if not. +// +// As with get operations, the location of the resource which +// describes the updated values in the request message depends on the +// operation kind. In any case, the effect of the field mask is +// required to be honored by the API. +// +// ## Considerations for HTTP REST +// The HTTP kind of an update operation which uses a field mask must +// be set to PATCH instead of PUT in order to satisfy HTTP semantics +// (PUT must only be used for full updates). +// +// # JSON Encoding of Field Masks +// In JSON, a field mask is encoded as a single string where paths are +// separated by a comma. Fields name in each path are converted +// to/from lower-camel naming conventions. +// +// As an example, consider the following message declarations: +// +// message Profile { +// User user = 1; +// Photo photo = 2; +// } +// message User { +// string display_name = 1; +// string address = 2; +// } +// +// In proto a field mask for `Profile` may look as such: +// +// mask { +// paths: "user.display_name" +// paths: "photo" +// } +// +// In JSON, the same mask is represented as below: +// +// { +// mask: "user.displayName,photo" +// } +@interface GPBFieldMask : GPBMessage + +// The set of field mask paths. +// |pathsArray| contains |NSString| +@property(nonatomic, readwrite, strong) NSMutableArray *pathsArray; + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/FieldMask.pbobjc.m b/objectivec/google/protobuf/FieldMask.pbobjc.m new file mode 100644 index 00000000..e37ac6c2 --- /dev/null +++ b/objectivec/google/protobuf/FieldMask.pbobjc.m @@ -0,0 +1,74 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/field_mask.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/FieldMask.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBFieldMaskRoot + +@implementation GPBFieldMaskRoot + +@end + +static GPBFileDescriptor *GPBFieldMaskRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - GPBFieldMask + +@implementation GPBFieldMask + +@dynamic pathsArray; + +typedef struct GPBFieldMask_Storage { + uint32_t _has_storage_[1]; + NSMutableArray *pathsArray; +} GPBFieldMask_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "pathsArray", + .number = GPBFieldMask_FieldNumber_PathsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeString, + .offset = offsetof(GPBFieldMask_Storage, pathsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBFieldMask class] + rootClass:[GPBFieldMaskRoot class] + file:GPBFieldMaskRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBFieldMask_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/SourceContext.pbobjc.h b/objectivec/google/protobuf/SourceContext.pbobjc.h new file mode 100644 index 00000000..bcbf1e3d --- /dev/null +++ b/objectivec/google/protobuf/SourceContext.pbobjc.h @@ -0,0 +1,44 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/source_context.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + + +#pragma mark - GPBSourceContextRoot + +@interface GPBSourceContextRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBSourceContext + +typedef GPB_ENUM(GPBSourceContext_FieldNumber) { + GPBSourceContext_FieldNumber_FileName = 1, +}; + +// `SourceContext` represents information about the source of a +// protobuf element, like the file in which it is defined. +@interface GPBSourceContext : GPBMessage + +// The path-qualified name of the .proto file that contained the associated +// protobuf element. For example: `"google/protobuf/source.proto"`. +@property(nonatomic, readwrite, copy) NSString *fileName; + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/SourceContext.pbobjc.m b/objectivec/google/protobuf/SourceContext.pbobjc.m new file mode 100644 index 00000000..271f9243 --- /dev/null +++ b/objectivec/google/protobuf/SourceContext.pbobjc.m @@ -0,0 +1,74 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/source_context.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/SourceContext.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBSourceContextRoot + +@implementation GPBSourceContextRoot + +@end + +static GPBFileDescriptor *GPBSourceContextRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - GPBSourceContext + +@implementation GPBSourceContext + +@dynamic fileName; + +typedef struct GPBSourceContext_Storage { + uint32_t _has_storage_[1]; + NSString *fileName; +} GPBSourceContext_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "fileName", + .number = GPBSourceContext_FieldNumber_FileName, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBSourceContext_Storage, fileName), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBSourceContext class] + rootClass:[GPBSourceContextRoot class] + file:GPBSourceContextRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBSourceContext_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Struct.pbobjc.h b/objectivec/google/protobuf/Struct.pbobjc.h new file mode 100644 index 00000000..f55af82b --- /dev/null +++ b/objectivec/google/protobuf/Struct.pbobjc.h @@ -0,0 +1,134 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/struct.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + +@class GPBListValue; +@class GPBStruct; + +#pragma mark - Enum GPBNullValue + +// `NullValue` is a singleton enumeration to represent the null +// value for the `Value` type union. +typedef GPB_ENUM(GPBNullValue) { + GPBNullValue_GPBUnrecognizedEnumeratorValue = kGPBUnrecognizedEnumeratorValue, + // Null value. + GPBNullValue_NullValue = 0, +}; + +GPBEnumDescriptor *GPBNullValue_EnumDescriptor(void); + +BOOL GPBNullValue_IsValidValue(int32_t value); + + +#pragma mark - GPBStructRoot + +@interface GPBStructRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBStruct + +typedef GPB_ENUM(GPBStruct_FieldNumber) { + GPBStruct_FieldNumber_Fields = 1, +}; + +// `Struct` represents a structured data value, consisting of fields +// which map to dynamically typed values. In some languages, `Struct` +// might be supported by a native representation. For example, in +// scripting languages like JS a struct is represented as an +// object. The details of that representation are described together +// with the proto support for the language. +@interface GPBStruct : GPBMessage + +// Map of dynamically typed values. +// |fields| values are |GPBValue| +@property(nonatomic, readwrite, strong) NSMutableDictionary *fields; + +@end + +#pragma mark - GPBValue + +typedef GPB_ENUM(GPBValue_FieldNumber) { + GPBValue_FieldNumber_NullValue = 1, + GPBValue_FieldNumber_NumberValue = 2, + GPBValue_FieldNumber_StringValue = 3, + GPBValue_FieldNumber_BoolValue = 4, + GPBValue_FieldNumber_StructValue = 5, + GPBValue_FieldNumber_ListValue = 6, +}; + +typedef GPB_ENUM(GPBValue_Kind_OneOfCase) { + GPBValue_Kind_OneOfCase_GPBUnsetOneOfCase = 0, + GPBValue_Kind_OneOfCase_NullValue = 1, + GPBValue_Kind_OneOfCase_NumberValue = 2, + GPBValue_Kind_OneOfCase_StringValue = 3, + GPBValue_Kind_OneOfCase_BoolValue = 4, + GPBValue_Kind_OneOfCase_StructValue = 5, + GPBValue_Kind_OneOfCase_ListValue = 6, +}; + +// `Value` represents a dynamically typed value which can be either +// null, a number, a string, a boolean, a recursive struct value, or a +// list of values. A producer of value is expected to set one of that +// variants, absence of any variant indicates an error. +@interface GPBValue : GPBMessage + +@property(nonatomic, readonly) GPBValue_Kind_OneOfCase kindOneOfCase; + +// Represents a null value. +@property(nonatomic, readwrite) GPBNullValue nullValue; + +// Represents a double value. +@property(nonatomic, readwrite) double numberValue; + +// Represents a string value. +@property(nonatomic, readwrite, copy) NSString *stringValue; + +// Represents a boolean value. +@property(nonatomic, readwrite) BOOL boolValue; + +// Represents a structured value. +@property(nonatomic, readwrite, strong) GPBStruct *structValue; + +// Represents a repeated `Value`. +@property(nonatomic, readwrite, strong) GPBListValue *listValue; + +@end + +int32_t GPBValue_NullValue_RawValue(GPBValue *message); +void SetGPBValue_NullValue_RawValue(GPBValue *message, int32_t value); + +void GPBValue_ClearKindOneOfCase(GPBValue *message); + +#pragma mark - GPBListValue + +typedef GPB_ENUM(GPBListValue_FieldNumber) { + GPBListValue_FieldNumber_ValuesArray = 1, +}; + +// `ListValue` is a wrapper around a repeated field of values. +@interface GPBListValue : GPBMessage + +// Repeated field of dynamically typed values. +// |valuesArray| contains |GPBValue| +@property(nonatomic, readwrite, strong) NSMutableArray *valuesArray; + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Struct.pbobjc.m b/objectivec/google/protobuf/Struct.pbobjc.m new file mode 100644 index 00000000..e5a8b547 --- /dev/null +++ b/objectivec/google/protobuf/Struct.pbobjc.m @@ -0,0 +1,284 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/struct.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/Struct.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBStructRoot + +@implementation GPBStructRoot + +@end + +static GPBFileDescriptor *GPBStructRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - Enum GPBNullValue + +GPBEnumDescriptor *GPBNullValue_EnumDescriptor(void) { + static GPBEnumDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageEnumValueDescription values[] = { + { .name = "NullValue", .number = GPBNullValue_NullValue }, + }; + descriptor = [GPBEnumDescriptor allocDescriptorForName:GPBNSStringifySymbol(GPBNullValue) + values:values + valueCount:sizeof(values) / sizeof(GPBMessageEnumValueDescription) + enumVerifier:GPBNullValue_IsValidValue]; + } + return descriptor; +} + +BOOL GPBNullValue_IsValidValue(int32_t value__) { + switch (value__) { + case GPBNullValue_NullValue: + return YES; + default: + return NO; + } +} + +#pragma mark - GPBStruct + +@implementation GPBStruct + +@dynamic fields; + +typedef struct GPBStruct_Storage { + uint32_t _has_storage_[1]; + NSMutableDictionary *fields; +} GPBStruct_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "fields", + .number = GPBStruct_FieldNumber_Fields, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldMapKeyString, + .type = GPBTypeMessage, + .offset = offsetof(GPBStruct_Storage, fields), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBValue), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBStruct class] + rootClass:[GPBStructRoot class] + file:GPBStructRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBStruct_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBValue + +@implementation GPBValue + +@dynamic kindOneOfCase; +@dynamic nullValue; +@dynamic numberValue; +@dynamic stringValue; +@dynamic boolValue; +@dynamic structValue; +@dynamic listValue; + +typedef struct GPBValue_Storage { + uint32_t _has_storage_[2]; + BOOL boolValue; + GPBNullValue nullValue; + NSString *stringValue; + GPBStruct *structValue; + GPBListValue *listValue; + double numberValue; +} GPBValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageOneofDescription oneofs[] = { + { + .name = "kind", + .index = -1, + }, + }; + static GPBMessageFieldDescription fields[] = { + { + .name = "nullValue", + .number = GPBValue_FieldNumber_NullValue, + .hasIndex = -1, + .flags = GPBFieldOptional | GPBFieldHasEnumDescriptor, + .type = GPBTypeEnum, + .offset = offsetof(GPBValue_Storage, nullValue), + .defaultValue.valueEnum = GPBNullValue_NullValue, + .typeSpecific.enumDescFunc = GPBNullValue_EnumDescriptor, + .fieldOptions = NULL, + }, + { + .name = "numberValue", + .number = GPBValue_FieldNumber_NumberValue, + .hasIndex = -1, + .flags = GPBFieldOptional, + .type = GPBTypeDouble, + .offset = offsetof(GPBValue_Storage, numberValue), + .defaultValue.valueDouble = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "stringValue", + .number = GPBValue_FieldNumber_StringValue, + .hasIndex = -1, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBValue_Storage, stringValue), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "boolValue", + .number = GPBValue_FieldNumber_BoolValue, + .hasIndex = -1, + .flags = GPBFieldOptional, + .type = GPBTypeBool, + .offset = offsetof(GPBValue_Storage, boolValue), + .defaultValue.valueBool = NO, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "structValue", + .number = GPBValue_FieldNumber_StructValue, + .hasIndex = -1, + .flags = GPBFieldOptional, + .type = GPBTypeMessage, + .offset = offsetof(GPBValue_Storage, structValue), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBStruct), + .fieldOptions = NULL, + }, + { + .name = "listValue", + .number = GPBValue_FieldNumber_ListValue, + .hasIndex = -1, + .flags = GPBFieldOptional, + .type = GPBTypeMessage, + .offset = offsetof(GPBValue_Storage, listValue), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBListValue), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBValue class] + rootClass:[GPBStructRoot class] + file:GPBStructRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:oneofs + oneofCount:sizeof(oneofs) / sizeof(GPBMessageOneofDescription) + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +int32_t GPBValue_NullValue_RawValue(GPBValue *message) { + GPBDescriptor *descriptor = [GPBValue descriptor]; + GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBValue_FieldNumber_NullValue]; + return GPBGetInt32IvarWithField(message, field); +} + +void SetGPBValue_NullValue_RawValue(GPBValue *message, int32_t value) { + GPBDescriptor *descriptor = [GPBValue descriptor]; + GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBValue_FieldNumber_NullValue]; + GPBSetInt32IvarWithFieldInternal(message, field, value, descriptor.file.syntax); +} + +void GPBValue_ClearKindOneOfCase(GPBValue *message) { + GPBDescriptor *descriptor = [message descriptor]; + GPBOneofDescriptor *oneof = descriptor->oneofs_[0]; + GPBMaybeClearOneof(message, oneof, 0); +} +#pragma mark - GPBListValue + +@implementation GPBListValue + +@dynamic valuesArray; + +typedef struct GPBListValue_Storage { + uint32_t _has_storage_[1]; + NSMutableArray *valuesArray; +} GPBListValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "valuesArray", + .number = GPBListValue_FieldNumber_ValuesArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBListValue_Storage, valuesArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBValue), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBListValue class] + rootClass:[GPBStructRoot class] + file:GPBStructRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBListValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Timestamp.pbobjc.h b/objectivec/google/protobuf/Timestamp.pbobjc.h index c9fc9175..a81321b4 100644 --- a/objectivec/google/protobuf/Timestamp.pbobjc.h +++ b/objectivec/google/protobuf/Timestamp.pbobjc.h @@ -7,14 +7,20 @@ #error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. #endif -CF_EXTERN_C_BEGIN +// @@protoc_insertion_point(imports) -@class GPBTimestamp; +CF_EXTERN_C_BEGIN #pragma mark - GPBTimestampRoot @interface GPBTimestampRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + @end #pragma mark - GPBTimestamp @@ -92,3 +98,5 @@ typedef GPB_ENUM(GPBTimestamp_FieldNumber) { @end CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Timestamp.pbobjc.m b/objectivec/google/protobuf/Timestamp.pbobjc.m index 1c8d3c76..197dff48 100644 --- a/objectivec/google/protobuf/Timestamp.pbobjc.m +++ b/objectivec/google/protobuf/Timestamp.pbobjc.m @@ -2,8 +2,8 @@ // source: google/protobuf/timestamp.proto #import "GPBProtocolBuffers_RuntimeSupport.h" - #import "google/protobuf/Timestamp.pbobjc.h" +// @@protoc_insertion_point(imports) #pragma mark - GPBTimestampRoot @@ -83,3 +83,5 @@ typedef struct GPBTimestamp_Storage { @end + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Type.pbobjc.h b/objectivec/google/protobuf/Type.pbobjc.h new file mode 100644 index 00000000..652a33a7 --- /dev/null +++ b/objectivec/google/protobuf/Type.pbobjc.h @@ -0,0 +1,274 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/type.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + +@class GPBAny; +@class GPBSourceContext; + +#pragma mark - Enum GPBField_Kind + +// Kind represents a basic field type. +typedef GPB_ENUM(GPBField_Kind) { + GPBField_Kind_GPBUnrecognizedEnumeratorValue = kGPBUnrecognizedEnumeratorValue, + // Field type unknown. + GPBField_Kind_TypeUnknown = 0, + + // Field type double. + GPBField_Kind_TypeDouble = 1, + + // Field type float. + GPBField_Kind_TypeFloat = 2, + + // Field type int64. + GPBField_Kind_TypeInt64 = 3, + + // Field type uint64. + GPBField_Kind_TypeUint64 = 4, + + // Field type int32. + GPBField_Kind_TypeInt32 = 5, + + // Field type fixed64. + GPBField_Kind_TypeFixed64 = 6, + + // Field type fixed32. + GPBField_Kind_TypeFixed32 = 7, + + // Field type bool. + GPBField_Kind_TypeBool = 8, + + // Field type string. + GPBField_Kind_TypeString = 9, + + // Field type message. + GPBField_Kind_TypeMessage = 11, + + // Field type bytes. + GPBField_Kind_TypeBytes = 12, + + // Field type uint32. + GPBField_Kind_TypeUint32 = 13, + + // Field type enum. + GPBField_Kind_TypeEnum = 14, + + // Field type sfixed32. + GPBField_Kind_TypeSfixed32 = 15, + + // Field type sfixed64. + GPBField_Kind_TypeSfixed64 = 16, + + // Field type sint32. + GPBField_Kind_TypeSint32 = 17, + + // Field type sint64. + GPBField_Kind_TypeSint64 = 18, +}; + +GPBEnumDescriptor *GPBField_Kind_EnumDescriptor(void); + +BOOL GPBField_Kind_IsValidValue(int32_t value); + +#pragma mark - Enum GPBField_Cardinality + +// Cardinality represents whether a field is optional, required, or +// repeated. +typedef GPB_ENUM(GPBField_Cardinality) { + GPBField_Cardinality_GPBUnrecognizedEnumeratorValue = kGPBUnrecognizedEnumeratorValue, + // The field cardinality is unknown. Typically an error condition. + GPBField_Cardinality_CardinalityUnknown = 0, + + // For optional fields. + GPBField_Cardinality_CardinalityOptional = 1, + + // For required fields. Not used for proto3. + GPBField_Cardinality_CardinalityRequired = 2, + + // For repeated fields. + GPBField_Cardinality_CardinalityRepeated = 3, +}; + +GPBEnumDescriptor *GPBField_Cardinality_EnumDescriptor(void); + +BOOL GPBField_Cardinality_IsValidValue(int32_t value); + + +#pragma mark - GPBTypeRoot + +@interface GPBTypeRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBType + +typedef GPB_ENUM(GPBType_FieldNumber) { + GPBType_FieldNumber_Name = 1, + GPBType_FieldNumber_FieldsArray = 2, + GPBType_FieldNumber_OneofsArray = 3, + GPBType_FieldNumber_OptionsArray = 4, + GPBType_FieldNumber_SourceContext = 5, +}; + +// A light-weight descriptor for a proto message type. +@interface GPBType : GPBMessage + +// The fully qualified message name. +@property(nonatomic, readwrite, copy) NSString *name; + +// The list of fields. +// |fieldsArray| contains |GPBField| +@property(nonatomic, readwrite, strong) NSMutableArray *fieldsArray; + +// The list of oneof definitions. +// The list of oneofs declared in this Type +// |oneofsArray| contains |NSString| +@property(nonatomic, readwrite, strong) NSMutableArray *oneofsArray; + +// The proto options. +// |optionsArray| contains |GPBOption| +@property(nonatomic, readwrite, strong) NSMutableArray *optionsArray; + +// The source context. +@property(nonatomic, readwrite) BOOL hasSourceContext; +@property(nonatomic, readwrite, strong) GPBSourceContext *sourceContext; + +@end + +#pragma mark - GPBField + +typedef GPB_ENUM(GPBField_FieldNumber) { + GPBField_FieldNumber_Kind = 1, + GPBField_FieldNumber_Cardinality = 2, + GPBField_FieldNumber_Number = 3, + GPBField_FieldNumber_Name = 4, + GPBField_FieldNumber_TypeURL = 6, + GPBField_FieldNumber_OneofIndex = 7, + GPBField_FieldNumber_Packed = 8, + GPBField_FieldNumber_OptionsArray = 9, +}; + +// Field represents a single field of a message type. +@interface GPBField : GPBMessage + +// The field kind. +@property(nonatomic, readwrite) GPBField_Kind kind; + +// The field cardinality, i.e. optional/required/repeated. +@property(nonatomic, readwrite) GPBField_Cardinality cardinality; + +// The proto field number. +@property(nonatomic, readwrite) int32_t number; + +// The field name. +@property(nonatomic, readwrite, copy) NSString *name; + +// The type URL (without the scheme) when the type is MESSAGE or ENUM, +// such as `type.googleapis.com/google.protobuf.Empty`. +@property(nonatomic, readwrite, copy) NSString *typeURL; + +// Index in Type.oneofs. Starts at 1. Zero means no oneof mapping. +@property(nonatomic, readwrite) int32_t oneofIndex; + +// Whether to use alternative packed wire representation. +@property(nonatomic, readwrite) BOOL packed; + +// The proto options. +// |optionsArray| contains |GPBOption| +@property(nonatomic, readwrite, strong) NSMutableArray *optionsArray; + +@end + +int32_t GPBField_Kind_RawValue(GPBField *message); +void SetGPBField_Kind_RawValue(GPBField *message, int32_t value); + +int32_t GPBField_Cardinality_RawValue(GPBField *message); +void SetGPBField_Cardinality_RawValue(GPBField *message, int32_t value); + +#pragma mark - GPBEnum + +typedef GPB_ENUM(GPBEnum_FieldNumber) { + GPBEnum_FieldNumber_Name = 1, + GPBEnum_FieldNumber_EnumvalueArray = 2, + GPBEnum_FieldNumber_OptionsArray = 3, + GPBEnum_FieldNumber_SourceContext = 4, +}; + +// Enum type definition. +@interface GPBEnum : GPBMessage + +// Enum type name. +@property(nonatomic, readwrite, copy) NSString *name; + +// Enum value definitions. +// |enumvalueArray| contains |GPBEnumValue| +@property(nonatomic, readwrite, strong) NSMutableArray *enumvalueArray; + +// Proto options for the enum type. +// |optionsArray| contains |GPBOption| +@property(nonatomic, readwrite, strong) NSMutableArray *optionsArray; + +// The source context. +@property(nonatomic, readwrite) BOOL hasSourceContext; +@property(nonatomic, readwrite, strong) GPBSourceContext *sourceContext; + +@end + +#pragma mark - GPBEnumValue + +typedef GPB_ENUM(GPBEnumValue_FieldNumber) { + GPBEnumValue_FieldNumber_Name = 1, + GPBEnumValue_FieldNumber_Number = 2, + GPBEnumValue_FieldNumber_OptionsArray = 3, +}; + +// Enum value definition. +@interface GPBEnumValue : GPBMessage + +// Enum value name. +@property(nonatomic, readwrite, copy) NSString *name; + +// Enum value number. +@property(nonatomic, readwrite) int32_t number; + +// Proto options for the enum value. +// |optionsArray| contains |GPBOption| +@property(nonatomic, readwrite, strong) NSMutableArray *optionsArray; + +@end + +#pragma mark - GPBOption + +typedef GPB_ENUM(GPBOption_FieldNumber) { + GPBOption_FieldNumber_Name = 1, + GPBOption_FieldNumber_Value = 2, +}; + +// Proto option attached to messages/fields/enums etc. +@interface GPBOption : GPBMessage + +// Proto option name. +@property(nonatomic, readwrite, copy) NSString *name; + +// Proto option value. +@property(nonatomic, readwrite) BOOL hasValue; +@property(nonatomic, readwrite, strong) GPBAny *value; + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Type.pbobjc.m b/objectivec/google/protobuf/Type.pbobjc.m new file mode 100644 index 00000000..182370c8 --- /dev/null +++ b/objectivec/google/protobuf/Type.pbobjc.m @@ -0,0 +1,628 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/type.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/Type.pbobjc.h" +#import "google/protobuf/Any.pbobjc.h" +#import "google/protobuf/SourceContext.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBTypeRoot + +@implementation GPBTypeRoot + ++ (GPBExtensionRegistry*)extensionRegistry { + // This is called by +initialize so there is no need to worry + // about thread safety and initialization of registry. + static GPBExtensionRegistry* registry = nil; + if (!registry) { + registry = [[GPBExtensionRegistry alloc] init]; + static GPBExtensionDescription descriptions[] = { + }; + #pragma unused (descriptions) + [registry addExtensions:[GPBAnyRoot extensionRegistry]]; + [registry addExtensions:[GPBSourceContextRoot extensionRegistry]]; + } + return registry; +} + +@end + +static GPBFileDescriptor *GPBTypeRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - GPBType + +@implementation GPBType + +@dynamic name; +@dynamic fieldsArray; +@dynamic oneofsArray; +@dynamic optionsArray; +@dynamic hasSourceContext, sourceContext; + +typedef struct GPBType_Storage { + uint32_t _has_storage_[1]; + NSString *name; + NSMutableArray *fieldsArray; + NSMutableArray *oneofsArray; + NSMutableArray *optionsArray; + GPBSourceContext *sourceContext; +} GPBType_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "name", + .number = GPBType_FieldNumber_Name, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBType_Storage, name), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "fieldsArray", + .number = GPBType_FieldNumber_FieldsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBType_Storage, fieldsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBField), + .fieldOptions = NULL, + }, + { + .name = "oneofsArray", + .number = GPBType_FieldNumber_OneofsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeString, + .offset = offsetof(GPBType_Storage, oneofsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "optionsArray", + .number = GPBType_FieldNumber_OptionsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBType_Storage, optionsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBOption), + .fieldOptions = NULL, + }, + { + .name = "sourceContext", + .number = GPBType_FieldNumber_SourceContext, + .hasIndex = 4, + .flags = GPBFieldOptional, + .type = GPBTypeMessage, + .offset = offsetof(GPBType_Storage, sourceContext), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBSourceContext), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBType class] + rootClass:[GPBTypeRoot class] + file:GPBTypeRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBType_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBField + +@implementation GPBField + +@dynamic kind; +@dynamic cardinality; +@dynamic number; +@dynamic name; +@dynamic typeURL; +@dynamic oneofIndex; +@dynamic packed; +@dynamic optionsArray; + +typedef struct GPBField_Storage { + uint32_t _has_storage_[1]; + BOOL packed; + GPBField_Kind kind; + GPBField_Cardinality cardinality; + int32_t number; + int32_t oneofIndex; + NSString *name; + NSString *typeURL; + NSMutableArray *optionsArray; +} GPBField_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "kind", + .number = GPBField_FieldNumber_Kind, + .hasIndex = 0, + .flags = GPBFieldOptional | GPBFieldHasEnumDescriptor, + .type = GPBTypeEnum, + .offset = offsetof(GPBField_Storage, kind), + .defaultValue.valueEnum = GPBField_Kind_TypeUnknown, + .typeSpecific.enumDescFunc = GPBField_Kind_EnumDescriptor, + .fieldOptions = NULL, + }, + { + .name = "cardinality", + .number = GPBField_FieldNumber_Cardinality, + .hasIndex = 1, + .flags = GPBFieldOptional | GPBFieldHasEnumDescriptor, + .type = GPBTypeEnum, + .offset = offsetof(GPBField_Storage, cardinality), + .defaultValue.valueEnum = GPBField_Cardinality_CardinalityUnknown, + .typeSpecific.enumDescFunc = GPBField_Cardinality_EnumDescriptor, + .fieldOptions = NULL, + }, + { + .name = "number", + .number = GPBField_FieldNumber_Number, + .hasIndex = 2, + .flags = GPBFieldOptional, + .type = GPBTypeInt32, + .offset = offsetof(GPBField_Storage, number), + .defaultValue.valueInt32 = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "name", + .number = GPBField_FieldNumber_Name, + .hasIndex = 3, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBField_Storage, name), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "typeURL", + .number = GPBField_FieldNumber_TypeURL, + .hasIndex = 4, + .flags = GPBFieldOptional | GPBFieldTextFormatNameCustom, + .type = GPBTypeString, + .offset = offsetof(GPBField_Storage, typeURL), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "oneofIndex", + .number = GPBField_FieldNumber_OneofIndex, + .hasIndex = 5, + .flags = GPBFieldOptional, + .type = GPBTypeInt32, + .offset = offsetof(GPBField_Storage, oneofIndex), + .defaultValue.valueInt32 = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "packed", + .number = GPBField_FieldNumber_Packed, + .hasIndex = 6, + .flags = GPBFieldOptional, + .type = GPBTypeBool, + .offset = offsetof(GPBField_Storage, packed), + .defaultValue.valueBool = NO, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "optionsArray", + .number = GPBField_FieldNumber_OptionsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBField_Storage, optionsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBOption), + .fieldOptions = NULL, + }, + }; + static GPBMessageEnumDescription enums[] = { + { .enumDescriptorFunc = GPBField_Kind_EnumDescriptor }, + { .enumDescriptorFunc = GPBField_Cardinality_EnumDescriptor }, + }; +#if GPBOBJC_SKIP_MESSAGE_TEXTFORMAT_EXTRAS + const char *extraTextFormatInfo = NULL; +#else + static const char *extraTextFormatInfo = "\001\006\004\241!!\000"; +#endif // GPBOBJC_SKIP_MESSAGE_TEXTFORMAT_EXTRAS + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBField class] + rootClass:[GPBTypeRoot class] + file:GPBTypeRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:enums + enumCount:sizeof(enums) / sizeof(GPBMessageEnumDescription) + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBField_Storage) + wireFormat:NO + extraTextFormatInfo:extraTextFormatInfo]; + } + return descriptor; +} + +@end + +int32_t GPBField_Kind_RawValue(GPBField *message) { + GPBDescriptor *descriptor = [GPBField descriptor]; + GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBField_FieldNumber_Kind]; + return GPBGetInt32IvarWithField(message, field); +} + +void SetGPBField_Kind_RawValue(GPBField *message, int32_t value) { + GPBDescriptor *descriptor = [GPBField descriptor]; + GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBField_FieldNumber_Kind]; + GPBSetInt32IvarWithFieldInternal(message, field, value, descriptor.file.syntax); +} + +int32_t GPBField_Cardinality_RawValue(GPBField *message) { + GPBDescriptor *descriptor = [GPBField descriptor]; + GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBField_FieldNumber_Cardinality]; + return GPBGetInt32IvarWithField(message, field); +} + +void SetGPBField_Cardinality_RawValue(GPBField *message, int32_t value) { + GPBDescriptor *descriptor = [GPBField descriptor]; + GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBField_FieldNumber_Cardinality]; + GPBSetInt32IvarWithFieldInternal(message, field, value, descriptor.file.syntax); +} + +#pragma mark - Enum GPBField_Kind + +GPBEnumDescriptor *GPBField_Kind_EnumDescriptor(void) { + static GPBEnumDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageEnumValueDescription values[] = { + { .name = "TypeUnknown", .number = GPBField_Kind_TypeUnknown }, + { .name = "TypeDouble", .number = GPBField_Kind_TypeDouble }, + { .name = "TypeFloat", .number = GPBField_Kind_TypeFloat }, + { .name = "TypeInt64", .number = GPBField_Kind_TypeInt64 }, + { .name = "TypeUint64", .number = GPBField_Kind_TypeUint64 }, + { .name = "TypeInt32", .number = GPBField_Kind_TypeInt32 }, + { .name = "TypeFixed64", .number = GPBField_Kind_TypeFixed64 }, + { .name = "TypeFixed32", .number = GPBField_Kind_TypeFixed32 }, + { .name = "TypeBool", .number = GPBField_Kind_TypeBool }, + { .name = "TypeString", .number = GPBField_Kind_TypeString }, + { .name = "TypeMessage", .number = GPBField_Kind_TypeMessage }, + { .name = "TypeBytes", .number = GPBField_Kind_TypeBytes }, + { .name = "TypeUint32", .number = GPBField_Kind_TypeUint32 }, + { .name = "TypeEnum", .number = GPBField_Kind_TypeEnum }, + { .name = "TypeSfixed32", .number = GPBField_Kind_TypeSfixed32 }, + { .name = "TypeSfixed64", .number = GPBField_Kind_TypeSfixed64 }, + { .name = "TypeSint32", .number = GPBField_Kind_TypeSint32 }, + { .name = "TypeSint64", .number = GPBField_Kind_TypeSint64 }, + }; + descriptor = [GPBEnumDescriptor allocDescriptorForName:GPBNSStringifySymbol(GPBField_Kind) + values:values + valueCount:sizeof(values) / sizeof(GPBMessageEnumValueDescription) + enumVerifier:GPBField_Kind_IsValidValue]; + } + return descriptor; +} + +BOOL GPBField_Kind_IsValidValue(int32_t value__) { + switch (value__) { + case GPBField_Kind_TypeUnknown: + case GPBField_Kind_TypeDouble: + case GPBField_Kind_TypeFloat: + case GPBField_Kind_TypeInt64: + case GPBField_Kind_TypeUint64: + case GPBField_Kind_TypeInt32: + case GPBField_Kind_TypeFixed64: + case GPBField_Kind_TypeFixed32: + case GPBField_Kind_TypeBool: + case GPBField_Kind_TypeString: + case GPBField_Kind_TypeMessage: + case GPBField_Kind_TypeBytes: + case GPBField_Kind_TypeUint32: + case GPBField_Kind_TypeEnum: + case GPBField_Kind_TypeSfixed32: + case GPBField_Kind_TypeSfixed64: + case GPBField_Kind_TypeSint32: + case GPBField_Kind_TypeSint64: + return YES; + default: + return NO; + } +} + +#pragma mark - Enum GPBField_Cardinality + +GPBEnumDescriptor *GPBField_Cardinality_EnumDescriptor(void) { + static GPBEnumDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageEnumValueDescription values[] = { + { .name = "CardinalityUnknown", .number = GPBField_Cardinality_CardinalityUnknown }, + { .name = "CardinalityOptional", .number = GPBField_Cardinality_CardinalityOptional }, + { .name = "CardinalityRequired", .number = GPBField_Cardinality_CardinalityRequired }, + { .name = "CardinalityRepeated", .number = GPBField_Cardinality_CardinalityRepeated }, + }; + descriptor = [GPBEnumDescriptor allocDescriptorForName:GPBNSStringifySymbol(GPBField_Cardinality) + values:values + valueCount:sizeof(values) / sizeof(GPBMessageEnumValueDescription) + enumVerifier:GPBField_Cardinality_IsValidValue]; + } + return descriptor; +} + +BOOL GPBField_Cardinality_IsValidValue(int32_t value__) { + switch (value__) { + case GPBField_Cardinality_CardinalityUnknown: + case GPBField_Cardinality_CardinalityOptional: + case GPBField_Cardinality_CardinalityRequired: + case GPBField_Cardinality_CardinalityRepeated: + return YES; + default: + return NO; + } +} + +#pragma mark - GPBEnum + +@implementation GPBEnum + +@dynamic name; +@dynamic enumvalueArray; +@dynamic optionsArray; +@dynamic hasSourceContext, sourceContext; + +typedef struct GPBEnum_Storage { + uint32_t _has_storage_[1]; + NSString *name; + NSMutableArray *enumvalueArray; + NSMutableArray *optionsArray; + GPBSourceContext *sourceContext; +} GPBEnum_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "name", + .number = GPBEnum_FieldNumber_Name, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBEnum_Storage, name), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "enumvalueArray", + .number = GPBEnum_FieldNumber_EnumvalueArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBEnum_Storage, enumvalueArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBEnumValue), + .fieldOptions = NULL, + }, + { + .name = "optionsArray", + .number = GPBEnum_FieldNumber_OptionsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBEnum_Storage, optionsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBOption), + .fieldOptions = NULL, + }, + { + .name = "sourceContext", + .number = GPBEnum_FieldNumber_SourceContext, + .hasIndex = 3, + .flags = GPBFieldOptional, + .type = GPBTypeMessage, + .offset = offsetof(GPBEnum_Storage, sourceContext), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBSourceContext), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBEnum class] + rootClass:[GPBTypeRoot class] + file:GPBTypeRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBEnum_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBEnumValue + +@implementation GPBEnumValue + +@dynamic name; +@dynamic number; +@dynamic optionsArray; + +typedef struct GPBEnumValue_Storage { + uint32_t _has_storage_[1]; + int32_t number; + NSString *name; + NSMutableArray *optionsArray; +} GPBEnumValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "name", + .number = GPBEnumValue_FieldNumber_Name, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBEnumValue_Storage, name), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "number", + .number = GPBEnumValue_FieldNumber_Number, + .hasIndex = 1, + .flags = GPBFieldOptional, + .type = GPBTypeInt32, + .offset = offsetof(GPBEnumValue_Storage, number), + .defaultValue.valueInt32 = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "optionsArray", + .number = GPBEnumValue_FieldNumber_OptionsArray, + .hasIndex = GPBNoHasBit, + .flags = GPBFieldRepeated, + .type = GPBTypeMessage, + .offset = offsetof(GPBEnumValue_Storage, optionsArray), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBOption), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBEnumValue class] + rootClass:[GPBTypeRoot class] + file:GPBTypeRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBEnumValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBOption + +@implementation GPBOption + +@dynamic name; +@dynamic hasValue, value; + +typedef struct GPBOption_Storage { + uint32_t _has_storage_[1]; + NSString *name; + GPBAny *value; +} GPBOption_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "name", + .number = GPBOption_FieldNumber_Name, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBOption_Storage, name), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + { + .name = "value", + .number = GPBOption_FieldNumber_Value, + .hasIndex = 1, + .flags = GPBFieldOptional, + .type = GPBTypeMessage, + .offset = offsetof(GPBOption_Storage, value), + .defaultValue.valueMessage = nil, + .typeSpecific.className = GPBStringifySymbol(GPBAny), + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBOption class] + rootClass:[GPBTypeRoot class] + file:GPBTypeRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBOption_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Wrappers.pbobjc.h b/objectivec/google/protobuf/Wrappers.pbobjc.h new file mode 100644 index 00000000..227d958e --- /dev/null +++ b/objectivec/google/protobuf/Wrappers.pbobjc.h @@ -0,0 +1,154 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/wrappers.proto + +#import "GPBProtocolBuffers.h" + +#if GOOGLE_PROTOBUF_OBJC_GEN_VERSION != 30000 +#error This file was generated by a different version of protoc-gen-objc which is incompatible with your Protocol Buffer sources. +#endif + +// @@protoc_insertion_point(imports) + +CF_EXTERN_C_BEGIN + + +#pragma mark - GPBWrappersRoot + +@interface GPBWrappersRoot : GPBRootObject + +// The base class provides: +// + (GPBExtensionRegistry *)extensionRegistry; +// which is an GPBExtensionRegistry that includes all the extensions defined by +// this file and all files that it depends on. + +@end + +#pragma mark - GPBDoubleValue + +typedef GPB_ENUM(GPBDoubleValue_FieldNumber) { + GPBDoubleValue_FieldNumber_Value = 1, +}; + +// Wrapper message for double. +@interface GPBDoubleValue : GPBMessage + +// The double value. +@property(nonatomic, readwrite) double value; + +@end + +#pragma mark - GPBFloatValue + +typedef GPB_ENUM(GPBFloatValue_FieldNumber) { + GPBFloatValue_FieldNumber_Value = 1, +}; + +// Wrapper message for float. +@interface GPBFloatValue : GPBMessage + +// The float value. +@property(nonatomic, readwrite) float value; + +@end + +#pragma mark - GPBInt64Value + +typedef GPB_ENUM(GPBInt64Value_FieldNumber) { + GPBInt64Value_FieldNumber_Value = 1, +}; + +// Wrapper message for int64. +@interface GPBInt64Value : GPBMessage + +// The int64 value. +@property(nonatomic, readwrite) int64_t value; + +@end + +#pragma mark - GPBUInt64Value + +typedef GPB_ENUM(GPBUInt64Value_FieldNumber) { + GPBUInt64Value_FieldNumber_Value = 1, +}; + +// Wrapper message for uint64. +@interface GPBUInt64Value : GPBMessage + +// The uint64 value. +@property(nonatomic, readwrite) uint64_t value; + +@end + +#pragma mark - GPBInt32Value + +typedef GPB_ENUM(GPBInt32Value_FieldNumber) { + GPBInt32Value_FieldNumber_Value = 1, +}; + +// Wrapper message for int32. +@interface GPBInt32Value : GPBMessage + +// The int32 value. +@property(nonatomic, readwrite) int32_t value; + +@end + +#pragma mark - GPBUInt32Value + +typedef GPB_ENUM(GPBUInt32Value_FieldNumber) { + GPBUInt32Value_FieldNumber_Value = 1, +}; + +// Wrapper message for uint32. +@interface GPBUInt32Value : GPBMessage + +// The uint32 value. +@property(nonatomic, readwrite) uint32_t value; + +@end + +#pragma mark - GPBBoolValue + +typedef GPB_ENUM(GPBBoolValue_FieldNumber) { + GPBBoolValue_FieldNumber_Value = 1, +}; + +// Wrapper message for bool. +@interface GPBBoolValue : GPBMessage + +// The bool value. +@property(nonatomic, readwrite) BOOL value; + +@end + +#pragma mark - GPBStringValue + +typedef GPB_ENUM(GPBStringValue_FieldNumber) { + GPBStringValue_FieldNumber_Value = 1, +}; + +// Wrapper message for string. +@interface GPBStringValue : GPBMessage + +// The string value. +@property(nonatomic, readwrite, copy) NSString *value; + +@end + +#pragma mark - GPBBytesValue + +typedef GPB_ENUM(GPBBytesValue_FieldNumber) { + GPBBytesValue_FieldNumber_Value = 1, +}; + +// Wrapper message for bytes. +@interface GPBBytesValue : GPBMessage + +// The bytes value. +@property(nonatomic, readwrite, copy) NSData *value; + +@end + +CF_EXTERN_C_END + +// @@protoc_insertion_point(global_scope) diff --git a/objectivec/google/protobuf/Wrappers.pbobjc.m b/objectivec/google/protobuf/Wrappers.pbobjc.m new file mode 100644 index 00000000..6c342850 --- /dev/null +++ b/objectivec/google/protobuf/Wrappers.pbobjc.m @@ -0,0 +1,458 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/protobuf/wrappers.proto + +#import "GPBProtocolBuffers_RuntimeSupport.h" +#import "google/protobuf/Wrappers.pbobjc.h" +// @@protoc_insertion_point(imports) + +#pragma mark - GPBWrappersRoot + +@implementation GPBWrappersRoot + +@end + +static GPBFileDescriptor *GPBWrappersRoot_FileDescriptor(void) { + // This is called by +initialize so there is no need to worry + // about thread safety of the singleton. + static GPBFileDescriptor *descriptor = NULL; + if (!descriptor) { + descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf" + syntax:GPBFileSyntaxProto3]; + } + return descriptor; +} + +#pragma mark - GPBDoubleValue + +@implementation GPBDoubleValue + +@dynamic value; + +typedef struct GPBDoubleValue_Storage { + uint32_t _has_storage_[1]; + double value; +} GPBDoubleValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBDoubleValue_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeDouble, + .offset = offsetof(GPBDoubleValue_Storage, value), + .defaultValue.valueDouble = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBDoubleValue class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBDoubleValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBFloatValue + +@implementation GPBFloatValue + +@dynamic value; + +typedef struct GPBFloatValue_Storage { + uint32_t _has_storage_[1]; + float value; +} GPBFloatValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBFloatValue_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeFloat, + .offset = offsetof(GPBFloatValue_Storage, value), + .defaultValue.valueFloat = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBFloatValue class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBFloatValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBInt64Value + +@implementation GPBInt64Value + +@dynamic value; + +typedef struct GPBInt64Value_Storage { + uint32_t _has_storage_[1]; + int64_t value; +} GPBInt64Value_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBInt64Value_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeInt64, + .offset = offsetof(GPBInt64Value_Storage, value), + .defaultValue.valueInt64 = 0LL, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBInt64Value class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBInt64Value_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBUInt64Value + +@implementation GPBUInt64Value + +@dynamic value; + +typedef struct GPBUInt64Value_Storage { + uint32_t _has_storage_[1]; + uint64_t value; +} GPBUInt64Value_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBUInt64Value_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeUInt64, + .offset = offsetof(GPBUInt64Value_Storage, value), + .defaultValue.valueUInt64 = 0ULL, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBUInt64Value class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBUInt64Value_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBInt32Value + +@implementation GPBInt32Value + +@dynamic value; + +typedef struct GPBInt32Value_Storage { + uint32_t _has_storage_[1]; + int32_t value; +} GPBInt32Value_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBInt32Value_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeInt32, + .offset = offsetof(GPBInt32Value_Storage, value), + .defaultValue.valueInt32 = 0, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBInt32Value class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBInt32Value_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBUInt32Value + +@implementation GPBUInt32Value + +@dynamic value; + +typedef struct GPBUInt32Value_Storage { + uint32_t _has_storage_[1]; + uint32_t value; +} GPBUInt32Value_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBUInt32Value_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeUInt32, + .offset = offsetof(GPBUInt32Value_Storage, value), + .defaultValue.valueUInt32 = 0U, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBUInt32Value class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBUInt32Value_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBBoolValue + +@implementation GPBBoolValue + +@dynamic value; + +typedef struct GPBBoolValue_Storage { + uint32_t _has_storage_[1]; + BOOL value; +} GPBBoolValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBBoolValue_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeBool, + .offset = offsetof(GPBBoolValue_Storage, value), + .defaultValue.valueBool = NO, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBBoolValue class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBBoolValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBStringValue + +@implementation GPBStringValue + +@dynamic value; + +typedef struct GPBStringValue_Storage { + uint32_t _has_storage_[1]; + NSString *value; +} GPBStringValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBStringValue_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeString, + .offset = offsetof(GPBStringValue_Storage, value), + .defaultValue.valueString = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBStringValue class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBStringValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + +#pragma mark - GPBBytesValue + +@implementation GPBBytesValue + +@dynamic value; + +typedef struct GPBBytesValue_Storage { + uint32_t _has_storage_[1]; + NSData *value; +} GPBBytesValue_Storage; + +// This method is threadsafe because it is initially called +// in +initialize for each subclass. ++ (GPBDescriptor *)descriptor { + static GPBDescriptor *descriptor = NULL; + if (!descriptor) { + static GPBMessageFieldDescription fields[] = { + { + .name = "value", + .number = GPBBytesValue_FieldNumber_Value, + .hasIndex = 0, + .flags = GPBFieldOptional, + .type = GPBTypeData, + .offset = offsetof(GPBBytesValue_Storage, value), + .defaultValue.valueData = nil, + .typeSpecific.className = NULL, + .fieldOptions = NULL, + }, + }; + descriptor = [GPBDescriptor allocDescriptorForClass:[GPBBytesValue class] + rootClass:[GPBWrappersRoot class] + file:GPBWrappersRoot_FileDescriptor() + fields:fields + fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) + oneofs:NULL + oneofCount:0 + enums:NULL + enumCount:0 + ranges:NULL + rangeCount:0 + storageSize:sizeof(GPBBytesValue_Storage) + wireFormat:NO]; + } + return descriptor; +} + +@end + + +// @@protoc_insertion_point(global_scope) |