xref: /aosp_15_r20/external/grpc-grpc/third_party/upb/upb/mini_descriptor/internal/wire_constants.h (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
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