|  | // Protocol Buffers - Google's data interchange format | 
|  | // Copyright 2008 Google Inc.  All rights reserved. | 
|  | // | 
|  | // Use of this source code is governed by a BSD-style | 
|  | // license that can be found in the LICENSE file or at | 
|  | // https://developers.google.com/open-source/licenses/bsd | 
|  |  | 
|  | #import "GPBRuntimeTypes.h" | 
|  |  | 
|  | CF_EXTERN_C_BEGIN | 
|  |  | 
|  | NS_ASSUME_NONNULL_BEGIN | 
|  |  | 
|  | typedef enum { | 
|  | GPBWireFormatVarint = 0, | 
|  | GPBWireFormatFixed64 = 1, | 
|  | GPBWireFormatLengthDelimited = 2, | 
|  | GPBWireFormatStartGroup = 3, | 
|  | GPBWireFormatEndGroup = 4, | 
|  | GPBWireFormatFixed32 = 5, | 
|  | } GPBWireFormat; | 
|  |  | 
|  | enum { | 
|  | GPBWireFormatMessageSetItem = 1, | 
|  | GPBWireFormatMessageSetTypeId = 2, | 
|  | GPBWireFormatMessageSetMessage = 3 | 
|  | }; | 
|  |  | 
|  | uint32_t GPBWireFormatMakeTag(uint32_t fieldNumber, GPBWireFormat wireType) __attribute__((const)); | 
|  | GPBWireFormat GPBWireFormatGetTagWireType(uint32_t tag) __attribute__((const)); | 
|  | uint32_t GPBWireFormatGetTagFieldNumber(uint32_t tag) __attribute__((const)); | 
|  | BOOL GPBWireFormatIsValidTag(uint32_t tag) __attribute__((const)); | 
|  |  | 
|  | GPBWireFormat GPBWireFormatForType(GPBDataType dataType, BOOL isPacked) __attribute__((const)); | 
|  |  | 
|  | #define GPBWireFormatMessageSetItemTag \ | 
|  | (GPBWireFormatMakeTag(GPBWireFormatMessageSetItem, GPBWireFormatStartGroup)) | 
|  | #define GPBWireFormatMessageSetItemEndTag \ | 
|  | (GPBWireFormatMakeTag(GPBWireFormatMessageSetItem, GPBWireFormatEndGroup)) | 
|  | #define GPBWireFormatMessageSetTypeIdTag \ | 
|  | (GPBWireFormatMakeTag(GPBWireFormatMessageSetTypeId, GPBWireFormatVarint)) | 
|  | #define GPBWireFormatMessageSetMessageTag \ | 
|  | (GPBWireFormatMakeTag(GPBWireFormatMessageSetMessage, GPBWireFormatLengthDelimited)) | 
|  |  | 
|  | NS_ASSUME_NONNULL_END | 
|  |  | 
|  | CF_EXTERN_C_END |