@@ -42,60 +42,6 @@ @interface GPBUnknownFields () {
4242#pragma clang diagnostic push
4343#pragma clang diagnostic ignored "-Wdirect-ivar-access"
4444
45- GPB_NOINLINE
46- static size_t ComputeSerializeSize (GPBUnknownFields *_Nonnull self) {
47- size_t result = 0 ;
48- for (GPBUnknownField *field in self->fields_ ) {
49- uint32_t fieldNumber = field->number_ ;
50- switch (field->type_ ) {
51- case GPBUnknownFieldTypeVarint:
52- result += GPBComputeUInt64Size (fieldNumber, field->storage_ .intValue );
53- break ;
54- case GPBUnknownFieldTypeFixed32:
55- result += GPBComputeFixed32Size (fieldNumber, (uint32_t )field->storage_ .intValue );
56- break ;
57- case GPBUnknownFieldTypeFixed64:
58- result += GPBComputeFixed64Size (fieldNumber, field->storage_ .intValue );
59- break ;
60- case GPBUnknownFieldTypeLengthDelimited:
61- result += GPBComputeBytesSize (fieldNumber, field->storage_ .lengthDelimited );
62- break ;
63- case GPBUnknownFieldTypeGroup:
64- result +=
65- (GPBComputeTagSize (fieldNumber) * 2 ) + ComputeSerializeSize (field->storage_ .group );
66- break ;
67- }
68- }
69- return result;
70- }
71-
72- GPB_NOINLINE
73- static void WriteToCoddedOutputStream (GPBUnknownFields *_Nonnull self,
74- GPBCodedOutputStream *_Nonnull output) {
75- for (GPBUnknownField *field in self->fields_ ) {
76- uint32_t fieldNumber = field->number_ ;
77- switch (field->type_ ) {
78- case GPBUnknownFieldTypeVarint:
79- [output writeUInt64: fieldNumber value: field->storage_.intValue];
80- break ;
81- case GPBUnknownFieldTypeFixed32:
82- [output writeFixed32: fieldNumber value: (uint32_t )field->storage_.intValue];
83- break ;
84- case GPBUnknownFieldTypeFixed64:
85- [output writeFixed64: fieldNumber value: field->storage_.intValue];
86- break ;
87- case GPBUnknownFieldTypeLengthDelimited:
88- [output writeBytes: fieldNumber value: field->storage_.lengthDelimited];
89- break ;
90- case GPBUnknownFieldTypeGroup:
91- [output writeRawVarint32: GPBWireFormatMakeTag (fieldNumber, GPBWireFormatStartGroup)];
92- WriteToCoddedOutputStream (field->storage_ .group , output);
93- [output writeRawVarint32: GPBWireFormatMakeTag (fieldNumber, GPBWireFormatEndGroup)];
94- break ;
95- }
96- }
97- }
98-
9945GPB_NOINLINE
10046static BOOL MergeFromInputStream (GPBUnknownFields *self, GPBCodedInputStream *input,
10147 uint32_t endTag) {
@@ -107,7 +53,7 @@ static BOOL MergeFromInputStream(GPBUnknownFields *self, GPBCodedInputStream *in
10753 NSMutableArray <GPBUnknownField *> *fields = self->fields_ ;
10854 @try {
10955 while (YES ) {
110- uint32_t tag = GPBCodedInputStreamReadTag (state);
56+ uint32_t tag = ( uint32_t ) GPBCodedInputStreamReadTag (state);
11157 if (tag == endTag) {
11258 return YES ;
11359 }
@@ -116,10 +62,10 @@ static BOOL MergeFromInputStream(GPBUnknownFields *self, GPBCodedInputStream *in
11662 return NO ;
11763 }
11864 GPBWireFormat wireType = GPBWireFormatGetTagWireType (tag);
119- int32_t fieldNumber = GPBWireFormatGetTagFieldNumber (tag);
65+ int32_t fieldNumber = ( int32_t ) GPBWireFormatGetTagFieldNumber (tag);
12066 switch (wireType) {
12167 case GPBWireFormatVarint: {
122- uint64_t value = GPBCodedInputStreamReadInt64 (state);
68+ uint64_t value = ( uint64_t ) GPBCodedInputStreamReadInt64 (state);
12369 GPBUnknownField *field = [[GPBUnknownField alloc ] initWithNumber: fieldNumber
12470 varint: value];
12571 [fields addObject: field];
@@ -157,9 +103,9 @@ static BOOL MergeFromInputStream(GPBUnknownFields *self, GPBCodedInputStream *in
157103 [fields addObject: field];
158104 [field release ];
159105 [group release ]; // Still will be held in the field/fields.
160- uint32_t endGroupTag = GPBWireFormatMakeTag (fieldNumber, GPBWireFormatEndGroup);
106+ uint32_t endGroupTag = GPBWireFormatMakeTag (( uint32_t ) fieldNumber, GPBWireFormatEndGroup);
161107 if (MergeFromInputStream (group, input, endGroupTag)) {
162- GPBCodedInputStreamCheckLastTagWas (state, endGroupTag);
108+ GPBCodedInputStreamCheckLastTagWas (state, ( int32_t ) endGroupTag);
163109 } else {
164110 [NSException
165111 raise: NSInternalInconsistencyException
@@ -332,7 +278,7 @@ - (void)clearFieldNumber:(int32_t)fieldNumber {
332278 NSMutableIndexSet *toRemove = nil ;
333279 NSUInteger idx = 0 ;
334280 for (GPBUnknownField *field in fields_) {
335- if (field-> number_ == fieldNumber) {
281+ if (field. number == fieldNumber) {
336282 if (toRemove == nil ) {
337283 toRemove = [[NSMutableIndexSet alloc ] initWithIndex: idx];
338284 } else {
@@ -361,11 +307,11 @@ - (NSData *)serializeAsData {
361307 if (fields_.count == 0 ) {
362308 return [NSData data ];
363309 }
364- size_t expectedSize = ComputeSerializeSize ( self) ;
310+ size_t expectedSize = [ self computeSerializedSize ] ;
365311 NSMutableData *data = [NSMutableData dataWithLength: expectedSize];
366312 GPBCodedOutputStream *stream = [[GPBCodedOutputStream alloc ] initWithData: data];
367313 @try {
368- WriteToCoddedOutputStream ( self, stream) ;
314+ [ self writeToCodedOutputStream: stream] ;
369315 [stream flush ];
370316 } @catch (NSException *exception) {
371317#if defined(DEBUG) && DEBUG
@@ -379,6 +325,20 @@ - (NSData *)serializeAsData {
379325 return data;
380326}
381327
328+ - (size_t )computeSerializedSize {
329+ size_t result = 0 ;
330+ for (GPBUnknownField *field in self->fields_ ) {
331+ result += [field computeSerializedSize ];
332+ }
333+ return result;
334+ }
335+
336+ - (void )writeToCodedOutputStream : (nonnull GPBCodedOutputStream *)output {
337+ for (GPBUnknownField *field in self->fields_ ) {
338+ [field writeToCodedOutputStream: output];
339+ }
340+ }
341+
382342@end
383343
384344@implementation GPBUnknownFields (AccessHelpers)
0 commit comments