|
|
|
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
|
|
// clang-format off
|
|
|
|
// source: google/protobuf/struct.proto
|
|
|
|
|
|
|
|
#import "GPBProtocolBuffers_RuntimeSupport.h"
|
|
|
|
#import "GPBStruct.pbobjc.h"
|
|
|
|
|
|
|
|
#import <stdatomic.h>
|
|
|
|
|
|
|
|
// @@protoc_insertion_point(imports)
|
|
|
|
|
|
|
|
#pragma clang diagnostic push
|
|
|
|
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
|
|
|
#pragma clang diagnostic ignored "-Wdirect-ivar-access"
|
|
|
|
#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension"
|
|
|
|
|
|
|
|
#pragma mark - Objective C Class declarations
|
|
|
|
// Forward declarations of Objective C classes that we can use as
|
|
|
|
// static values in struct initializers.
|
|
|
|
// We don't use [Foo class] because it is not a static value.
|
|
|
|
GPBObjCClassDeclaration(GPBListValue);
|
|
|
|
GPBObjCClassDeclaration(GPBStruct);
|
|
|
|
GPBObjCClassDeclaration(GPBValue);
|
|
|
|
|
|
|
|
#pragma mark - GPBStructRoot
|
|
|
|
|
|
|
|
@implementation GPBStructRoot
|
|
|
|
|
|
|
|
// No extensions in the file and no imports, so no need to generate
|
|
|
|
// +extensionRegistry.
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
#pragma mark - GPBStructRoot_FileDescriptor
|
|
|
|
|
|
|
|
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) {
|
|
|
|
GPB_DEBUG_CHECK_RUNTIME_VERSIONS();
|
|
|
|
descriptor = [[GPBFileDescriptor alloc] initWithPackage:@"google.protobuf"
|
|
|
|
objcPrefix:@"GPB"
|
|
|
|
syntax:GPBFileSyntaxProto3];
|
|
|
|
}
|
|
|
|
return descriptor;
|
|
|
|
}
|
|
|
|
|
|
|
|
#pragma mark - Enum GPBNullValue
|
|
|
|
|
|
|
|
GPBEnumDescriptor *GPBNullValue_EnumDescriptor(void) {
|
|
|
|
static _Atomic(GPBEnumDescriptor*) descriptor = nil;
|
|
|
|
if (!descriptor) {
|
|
|
|
static const char *valueNames =
|
|
|
|
"NullValue\000";
|
|
|
|
static const int32_t values[] = {
|
|
|
|
GPBNullValue_NullValue,
|
|
|
|
};
|
|
|
|
GPBEnumDescriptor *worker =
|
|
|
|
[GPBEnumDescriptor allocDescriptorForName:GPBNSStringifySymbol(GPBNullValue)
|
|
|
|
valueNames:valueNames
|
|
|
|
values:values
|
|
|
|
count:(uint32_t)(sizeof(values) / sizeof(int32_t))
|
|
|
|
enumVerifier:GPBNullValue_IsValidValue
|
|
|
|
flags:GPBEnumDescriptorInitializationFlag_None];
|
|
|
|
GPBEnumDescriptor *expected = nil;
|
|
|
|
if (!atomic_compare_exchange_strong(&descriptor, &expected, worker)) {
|
|
|
|
[worker release];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
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, fields_Count;
|
|
|
|
|
|
|
|
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 = nil;
|
|
|
|
if (!descriptor) {
|
|
|
|
static GPBMessageFieldDescription fields[] = {
|
|
|
|
{
|
|
|
|
.name = "fields",
|
|
|
|
.dataTypeSpecific.clazz = GPBObjCClass(GPBValue),
|
|
|
|
.number = GPBStruct_FieldNumber_Fields,
|
|
|
|
.hasIndex = GPBNoHasBit,
|
|
|
|
.offset = (uint32_t)offsetof(GPBStruct__storage_, fields),
|
|
|
|
.flags = GPBFieldMapKeyString,
|
|
|
|
.dataType = GPBDataTypeMessage,
|
|
|
|
},
|
|
|
|
};
|
|
|
|
GPBDescriptor *localDescriptor =
|
|
|
|
[GPBDescriptor allocDescriptorForClass:[GPBStruct class]
|
|
|
|
file:GPBStructRoot_FileDescriptor()
|
|
|
|
fields:fields
|
|
|
|
fieldCount:(uint32_t)(sizeof(fields) / sizeof(GPBMessageFieldDescription))
|
|
|
|
storageSize:sizeof(GPBStruct__storage_)
|
|
|
|
flags:(GPBDescriptorInitializationFlags)(GPBDescriptorInitializationFlag_UsesClassRefs | GPBDescriptorInitializationFlag_Proto3OptionalKnown | GPBDescriptorInitializationFlag_ClosedEnumSupportKnown)];
|
|
|
|
#if defined(DEBUG) && DEBUG
|
|
|
|
NSAssert(descriptor == nil, @"Startup recursed!");
|
|
|
|
#endif // DEBUG
|
|
|
|
descriptor = localDescriptor;
|
|
|
|
}
|
|
|
|
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];
|
|
|
|
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 = nil;
|
|
|
|
if (!descriptor) {
|
|
|
|
static GPBMessageFieldDescription fields[] = {
|
|
|
|
{
|
|
|
|
.name = "nullValue",
|
|
|
|
.dataTypeSpecific.enumDescFunc = GPBNullValue_EnumDescriptor,
|
|
|
|
.number = GPBValue_FieldNumber_NullValue,
|
|
|
|
.hasIndex = -1,
|
|
|
|
.offset = (uint32_t)offsetof(GPBValue__storage_, nullValue),
|
|
|
|
.flags = (GPBFieldFlags)(GPBFieldOptional | GPBFieldHasEnumDescriptor),
|
|
|
|
.dataType = GPBDataTypeEnum,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
.name = "numberValue",
|
|
|
|
.dataTypeSpecific.clazz = Nil,
|
|
|
|
.number = GPBValue_FieldNumber_NumberValue,
|
|
|
|
.hasIndex = -1,
|
|
|
|
.offset = (uint32_t)offsetof(GPBValue__storage_, numberValue),
|
|
|
|
.flags = GPBFieldOptional,
|
|
|
|
.dataType = GPBDataTypeDouble,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
.name = "stringValue",
|
|
|
|
.dataTypeSpecific.clazz = Nil,
|
|
|
|
.number = GPBValue_FieldNumber_StringValue,
|
|
|
|
.hasIndex = -1,
|
|
|
|
.offset = (uint32_t)offsetof(GPBValue__storage_, stringValue),
|
|
|
|
.flags = GPBFieldOptional,
|
|
|
|
.dataType = GPBDataTypeString,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
.name = "boolValue",
|
|
|
|
.dataTypeSpecific.clazz = Nil,
|
|
|
|
.number = GPBValue_FieldNumber_BoolValue,
|
|
|
|
.hasIndex = -1,
|
|
|
|
.offset = 0, // Stored in _has_storage_ to save space.
|
|
|
|
.flags = GPBFieldOptional,
|
|
|
|
.dataType = GPBDataTypeBool,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
.name = "structValue",
|
|
|
|
.dataTypeSpecific.clazz = GPBObjCClass(GPBStruct),
|
|
|
|
.number = GPBValue_FieldNumber_StructValue,
|
|
|
|
.hasIndex = -1,
|
|
|
|
.offset = (uint32_t)offsetof(GPBValue__storage_, structValue),
|
|
|
|
.flags = GPBFieldOptional,
|
|
|
|
.dataType = GPBDataTypeMessage,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
.name = "listValue",
|
|
|
|
.dataTypeSpecific.clazz = GPBObjCClass(GPBListValue),
|
|
|
|
.number = GPBValue_FieldNumber_ListValue,
|
|
|
|
.hasIndex = -1,
|
|
|
|
.offset = (uint32_t)offsetof(GPBValue__storage_, listValue),
|
|
|
|
.flags = GPBFieldOptional,
|
|
|
|
.dataType = GPBDataTypeMessage,
|
|
|
|
},
|
|
|
|
};
|
|
|
|
GPBDescriptor *localDescriptor =
|
|
|
|
[GPBDescriptor allocDescriptorForClass:[GPBValue class]
|
|
|
|
file:GPBStructRoot_FileDescriptor()
|
|
|
|
fields:fields
|
|
|
|
fieldCount:(uint32_t)(sizeof(fields) / sizeof(GPBMessageFieldDescription))
|
|
|
|
storageSize:sizeof(GPBValue__storage_)
|
|
|
|
flags:(GPBDescriptorInitializationFlags)(GPBDescriptorInitializationFlag_UsesClassRefs | GPBDescriptorInitializationFlag_Proto3OptionalKnown | GPBDescriptorInitializationFlag_ClosedEnumSupportKnown)];
|
|
|
|
static const char *oneofs[] = {
|
|
|
|
"kind",
|
|
|
|
};
|
|
|
|
[localDescriptor setupOneofs:oneofs
|
|
|
|
count:(uint32_t)(sizeof(oneofs) / sizeof(char*))
|
|
|
|
firstHasIndex:-1];
|
|
|
|
#if defined(DEBUG) && DEBUG
|
|
|
|
NSAssert(descriptor == nil, @"Startup recursed!");
|
|
|
|
#endif // DEBUG
|
|
|
|
descriptor = localDescriptor;
|
|
|
|
}
|
|
|
|
return descriptor;
|
|
|
|
}
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
int32_t GPBValue_NullValue_RawValue(GPBValue *message) {
|
|
|
|
GPBDescriptor *descriptor = [GPBValue descriptor];
|
|
|
|
GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBValue_FieldNumber_NullValue];
|
|
|
|
return GPBGetMessageRawEnumField(message, field);
|
|
|
|
}
|
|
|
|
|
|
|
|
void SetGPBValue_NullValue_RawValue(GPBValue *message, int32_t value) {
|
|
|
|
GPBDescriptor *descriptor = [GPBValue descriptor];
|
|
|
|
GPBFieldDescriptor *field = [descriptor fieldWithNumber:GPBValue_FieldNumber_NullValue];
|
|
|
|
GPBSetMessageRawEnumField(message, field, value);
|
|
|
|
}
|
|
|
|
|
|
|
|
void GPBValue_ClearKindOneOfCase(GPBValue *message) {
|
|
|
|
GPBDescriptor *descriptor = [GPBValue descriptor];
|
|
|
|
GPBOneofDescriptor *oneof = [descriptor.oneofs objectAtIndex:0];
|
|
|
|
GPBClearOneof(message, oneof);
|
|
|
|
}
|
|
|
|
#pragma mark - GPBListValue
|
|
|
|
|
|
|
|
@implementation GPBListValue
|
|
|
|
|
|
|
|
@dynamic valuesArray, valuesArray_Count;
|
|
|
|
|
|
|
|
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 = nil;
|
|
|
|
if (!descriptor) {
|
|
|
|
static GPBMessageFieldDescription fields[] = {
|
|
|
|
{
|
|
|
|
.name = "valuesArray",
|
|
|
|
.dataTypeSpecific.clazz = GPBObjCClass(GPBValue),
|
|
|
|
.number = GPBListValue_FieldNumber_ValuesArray,
|
|
|
|
.hasIndex = GPBNoHasBit,
|
|
|
|
.offset = (uint32_t)offsetof(GPBListValue__storage_, valuesArray),
|
|
|
|
.flags = GPBFieldRepeated,
|
|
|
|
.dataType = GPBDataTypeMessage,
|
|
|
|
},
|
|
|
|
};
|
|
|
|
GPBDescriptor *localDescriptor =
|
|
|
|
[GPBDescriptor allocDescriptorForClass:[GPBListValue class]
|
|
|
|
file:GPBStructRoot_FileDescriptor()
|
|
|
|
fields:fields
|
|
|
|
fieldCount:(uint32_t)(sizeof(fields) / sizeof(GPBMessageFieldDescription))
|
|
|
|
storageSize:sizeof(GPBListValue__storage_)
|
|
|
|
flags:(GPBDescriptorInitializationFlags)(GPBDescriptorInitializationFlag_UsesClassRefs | GPBDescriptorInitializationFlag_Proto3OptionalKnown | GPBDescriptorInitializationFlag_ClosedEnumSupportKnown)];
|
|
|
|
#if defined(DEBUG) && DEBUG
|
|
|
|
NSAssert(descriptor == nil, @"Startup recursed!");
|
|
|
|
#endif // DEBUG
|
|
|
|
descriptor = localDescriptor;
|
|
|
|
}
|
|
|
|
return descriptor;
|
|
|
|
}
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
#pragma clang diagnostic pop
|
|
|
|
|
|
|
|
// @@protoc_insertion_point(global_scope)
|
|
|
|
|
|
|
|
// clang-format on
|