| // 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 |