1 // Protocol Buffers - Google's data interchange format 2 // Copyright 2023 Google LLC. All rights reserved. 3 // 4 // Use of this source code is governed by a BSD-style 5 // license that can be found in the LICENSE file or at 6 // https://developers.google.com/open-source/licenses/bsd 7 8 #ifndef UPB_MINI_DESCRIPTOR_INTERNAL_WIRE_CONSTANTS_H_ 9 #define UPB_MINI_DESCRIPTOR_INTERNAL_WIRE_CONSTANTS_H_ 10 11 #include "upb/base/descriptor_constants.h" 12 13 // Must be last. 14 #include "upb/port/def.inc" 15 16 typedef enum { 17 kUpb_EncodedType_Double = 0, 18 kUpb_EncodedType_Float = 1, 19 kUpb_EncodedType_Fixed32 = 2, 20 kUpb_EncodedType_Fixed64 = 3, 21 kUpb_EncodedType_SFixed32 = 4, 22 kUpb_EncodedType_SFixed64 = 5, 23 kUpb_EncodedType_Int32 = 6, 24 kUpb_EncodedType_UInt32 = 7, 25 kUpb_EncodedType_SInt32 = 8, 26 kUpb_EncodedType_Int64 = 9, 27 kUpb_EncodedType_UInt64 = 10, 28 kUpb_EncodedType_SInt64 = 11, 29 kUpb_EncodedType_OpenEnum = 12, 30 kUpb_EncodedType_Bool = 13, 31 kUpb_EncodedType_Bytes = 14, 32 kUpb_EncodedType_String = 15, 33 kUpb_EncodedType_Group = 16, 34 kUpb_EncodedType_Message = 17, 35 kUpb_EncodedType_ClosedEnum = 18, 36 37 kUpb_EncodedType_RepeatedBase = 20, 38 } upb_EncodedType; 39 40 typedef enum { 41 kUpb_EncodedFieldModifier_FlipPacked = 1 << 0, 42 kUpb_EncodedFieldModifier_IsRequired = 1 << 1, 43 kUpb_EncodedFieldModifier_IsProto3Singular = 1 << 2, 44 kUpb_EncodedFieldModifier_FlipValidateUtf8 = 1 << 3, 45 } upb_EncodedFieldModifier; 46 47 enum { 48 kUpb_EncodedValue_MinField = ' ', 49 kUpb_EncodedValue_MaxField = 'I', 50 kUpb_EncodedValue_MinModifier = 'L', 51 kUpb_EncodedValue_MaxModifier = '[', 52 kUpb_EncodedValue_End = '^', 53 kUpb_EncodedValue_MinSkip = '_', 54 kUpb_EncodedValue_MaxSkip = '~', 55 kUpb_EncodedValue_OneofSeparator = '~', 56 kUpb_EncodedValue_FieldSeparator = '|', 57 kUpb_EncodedValue_MinOneofField = ' ', 58 kUpb_EncodedValue_MaxOneofField = 'b', 59 kUpb_EncodedValue_MaxEnumMask = 'A', 60 }; 61 62 enum { 63 kUpb_EncodedVersion_EnumV1 = '!', 64 kUpb_EncodedVersion_ExtensionV1 = '#', 65 kUpb_EncodedVersion_MapV1 = '%', 66 kUpb_EncodedVersion_MessageV1 = '$', 67 kUpb_EncodedVersion_MessageSetV1 = '&', 68 }; 69 70 #include "upb/port/undef.inc" 71 72 #endif // UPB_MINI_DESCRIPTOR_INTERNAL_WIRE_CONSTANTS_H_ 73