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_TABLE_FIELD_H_ 9 #define UPB_MINI_TABLE_FIELD_H_ 10 11 #include <stdint.h> 12 13 #include "upb/base/descriptor_constants.h" 14 #include "upb/mini_table/internal/field.h" 15 16 // Must be last. 17 #include "upb/port/def.inc" 18 19 typedef struct upb_MiniTableField upb_MiniTableField; 20 21 #ifdef __cplusplus 22 extern "C" { 23 #endif 24 upb_MiniTableField_CType(const upb_MiniTableField * f)25UPB_API_INLINE upb_CType upb_MiniTableField_CType(const upb_MiniTableField* f) { 26 return UPB_PRIVATE(_upb_MiniTableField_CType)(f); 27 } 28 upb_MiniTableField_HasPresence(const upb_MiniTableField * f)29UPB_API_INLINE bool upb_MiniTableField_HasPresence( 30 const upb_MiniTableField* f) { 31 return UPB_PRIVATE(_upb_MiniTableField_HasPresence)(f); 32 } 33 upb_MiniTableField_IsArray(const upb_MiniTableField * f)34UPB_API_INLINE bool upb_MiniTableField_IsArray(const upb_MiniTableField* f) { 35 return UPB_PRIVATE(_upb_MiniTableField_IsArray)(f); 36 } 37 upb_MiniTableField_IsClosedEnum(const upb_MiniTableField * f)38UPB_API_INLINE bool upb_MiniTableField_IsClosedEnum( 39 const upb_MiniTableField* f) { 40 return UPB_PRIVATE(_upb_MiniTableField_IsClosedEnum)(f); 41 } 42 upb_MiniTableField_IsExtension(const upb_MiniTableField * f)43UPB_API_INLINE bool upb_MiniTableField_IsExtension( 44 const upb_MiniTableField* f) { 45 return UPB_PRIVATE(_upb_MiniTableField_IsExtension)(f); 46 } 47 upb_MiniTableField_IsInOneof(const upb_MiniTableField * f)48UPB_API_INLINE bool upb_MiniTableField_IsInOneof(const upb_MiniTableField* f) { 49 return UPB_PRIVATE(_upb_MiniTableField_IsInOneof)(f); 50 } 51 upb_MiniTableField_IsMap(const upb_MiniTableField * f)52UPB_API_INLINE bool upb_MiniTableField_IsMap(const upb_MiniTableField* f) { 53 return UPB_PRIVATE(_upb_MiniTableField_IsMap)(f); 54 } 55 upb_MiniTableField_IsPacked(const upb_MiniTableField * f)56UPB_API_INLINE bool upb_MiniTableField_IsPacked(const upb_MiniTableField* f) { 57 return UPB_PRIVATE(_upb_MiniTableField_IsPacked)(f); 58 } 59 upb_MiniTableField_IsScalar(const upb_MiniTableField * f)60UPB_API_INLINE bool upb_MiniTableField_IsScalar(const upb_MiniTableField* f) { 61 return UPB_PRIVATE(_upb_MiniTableField_IsScalar)(f); 62 } 63 upb_MiniTableField_IsSubMessage(const upb_MiniTableField * f)64UPB_API_INLINE bool upb_MiniTableField_IsSubMessage( 65 const upb_MiniTableField* f) { 66 return UPB_PRIVATE(_upb_MiniTableField_IsSubMessage)(f); 67 } 68 upb_MiniTableField_Number(const upb_MiniTableField * f)69UPB_API_INLINE uint32_t upb_MiniTableField_Number(const upb_MiniTableField* f) { 70 return UPB_PRIVATE(_upb_MiniTableField_Number)(f); 71 } 72 73 UPB_API_INLINE upb_FieldType upb_MiniTableField_Type(const upb_MiniTableField * f)74upb_MiniTableField_Type(const upb_MiniTableField* f) { 75 return UPB_PRIVATE(_upb_MiniTableField_Type)(f); 76 } 77 78 #ifdef __cplusplus 79 } /* extern "C" */ 80 #endif 81 82 #include "upb/port/undef.inc" 83 84 #endif /* UPB_MINI_TABLE_FIELD_H_ */ 85