// Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/protobuf/duration.proto #import "GPBProtocolBuffers_RuntimeSupport.h" #import "google/protobuf/Duration.pbobjc.h" #pragma mark - GPBDurationRoot @implementation GPBDurationRoot @end static GPBFileDescriptor *GPBDurationRoot_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 - GPBDuration @implementation GPBDuration @dynamic seconds; @dynamic nanos; typedef struct GPBDuration_Storage { uint32_t _has_storage_[1]; int32_t nanos; int64_t seconds; } GPBDuration_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 = "seconds", .number = GPBDuration_FieldNumber_Seconds, .hasIndex = 0, .flags = GPBFieldOptional, .type = GPBTypeInt64, .offset = offsetof(GPBDuration_Storage, seconds), .defaultValue.valueInt64 = 0LL, .typeSpecific.className = NULL, .fieldOptions = NULL, }, { .name = "nanos", .number = GPBDuration_FieldNumber_Nanos, .hasIndex = 1, .flags = GPBFieldOptional, .type = GPBTypeInt32, .offset = offsetof(GPBDuration_Storage, nanos), .defaultValue.valueInt32 = 0, .typeSpecific.className = NULL, .fieldOptions = NULL, }, }; descriptor = [GPBDescriptor allocDescriptorForClass:[GPBDuration class] rootClass:[GPBDurationRoot class] file:GPBDurationRoot_FileDescriptor() fields:fields fieldCount:sizeof(fields) / sizeof(GPBMessageFieldDescription) oneofs:NULL oneofCount:0 enums:NULL enumCount:0 ranges:NULL rangeCount:0 storageSize:sizeof(GPBDuration_Storage) wireFormat:NO]; } return descriptor; } @end