8#ifndef UPB_MINI_TABLE_INTERNAL_MESSAGE_H_
9#define UPB_MINI_TABLE_INTERNAL_MESSAGE_H_
26 intptr_t table, uint64_t hasbits, uint64_t data);
69#ifdef UPB_TRACING_ENABLED
73#if UPB_FASTTABLE || !defined(__cplusplus)
95 __asm__(
"" : :
"r"(mt));
120 const size_t i = ((size_t)number) - 1;
137 while (hi >= (int32_t)lo) {
138 uint32_t mid = (hi + lo) / 2;
146 int32_t hi_mid = mid - 1;
147 uint32_t lo_mid = mid + 1;
240 return (1ULL << n) - 1;
243#ifdef UPB_TRACING_ENABLED
252 const char* full_name) {
#define UPB_API_INLINE
Definition def.inc:163
#define UPB_ALIGN_OF(type)
Definition def.inc:211
#define UPB_ASSUME(expr)
Definition def.inc:319
#define UPB_ASSERT(expr)
Definition def.inc:329
#define UPB_PRIVATE(x)
Definition def.inc:393
#define UPB_STATIC_ASSERT(val, msg)
Definition def.inc:239
#define UPB_MALLOC_ALIGN
Definition def.inc:184
#define UPB_INLINE
Definition def.inc:144
#define UPB_UNPREDICTABLE(x)
Definition def.inc:272
#define UPB_PRESERVE_NONE
Definition def.inc:412
@ kUpb_CType_Enum
Definition descriptor_constants.h:23
@ kUpb_CType_Message
Definition descriptor_constants.h:24
UPB_API_INLINE uint32_t upb_MiniTableField_Number(const upb_MiniTableField *f)
UPB_API_INLINE upb_CType upb_MiniTableField_CType(const upb_MiniTableField *f)
UPB_API_INLINE bool upb_MiniTableField_IsMap(const upb_MiniTableField *f)
UPB_INLINE uint64_t UPB_PRIVATE _upb_MiniTable_RequiredMask(const struct upb_MiniTable *m)
Definition message.h:237
UPB_API_INLINE const struct upb_MiniTable * upb_MiniTable_SubMessage(const struct upb_MiniTable *m, const struct upb_MiniTableField *f)
Definition message.h:179
UPB_INLINE const struct upb_MiniTable *UPB_PRIVATE _upb_MiniTable_GetSubTableByIndex(const struct upb_MiniTable *m, uint32_t i)
Definition message.h:174
UPB_INLINE const struct upb_MiniTable *UPB_PRIVATE _upb_MiniTable_Empty(void)
Definition message.h:103
@ kUpb_Message_Align
Definition message.h:46
UPB_INLINE const struct upb_MiniTable *UPB_PRIVATE _upb_MiniTable_StrongReference(const struct upb_MiniTable *mt)
Definition message.h:93
UPB_API_INLINE bool upb_MiniTable_IsMessageSet(const struct upb_MiniTable *m)
Definition message.h:113
UPB_API_INLINE const struct upb_MiniTableEnum * upb_MiniTable_GetSubEnumTable(const struct upb_MiniTable *m, const struct upb_MiniTableField *f)
Definition message.h:208
UPB_INLINE bool UPB_PRIVATE _upb_MiniTable_IsEmpty(const struct upb_MiniTable *m)
Definition message.h:161
upb_ExtMode
Definition message.h:33
@ kUpb_ExtMode_IsMessageSet_ITEM
Definition message.h:37
@ kUpb_ExtMode_IsMapEntry
Definition message.h:42
@ kUpb_ExtMode_IsMessageSet
Definition message.h:36
@ kUpb_ExtMode_Extendable
Definition message.h:35
@ kUpb_ExtMode_NonExtendable
Definition message.h:34
UPB_API_INLINE int upb_MiniTable_FieldCount(const struct upb_MiniTable *m)
Definition message.h:109
UPB_API_INLINE const struct upb_MiniTableField * upb_MiniTable_MapKey(const struct upb_MiniTable *m)
Definition message.h:215
UPB_API_INLINE const struct upb_MiniTable * upb_MiniTable_MapEntrySubMessage(const struct upb_MiniTable *m, const struct upb_MiniTableField *f)
Definition message.h:201
UPB_API_INLINE const struct upb_MiniTableField * upb_MiniTable_MapValue(const struct upb_MiniTable *m)
Definition message.h:223
UPB_API_INLINE const struct upb_MiniTableField * upb_MiniTable_GetFieldByIndex(const struct upb_MiniTable *m, uint32_t i)
Definition message.h:168
UPB_API_INLINE bool upb_MiniTable_FieldIsLinked(const struct upb_MiniTable *m, const struct upb_MiniTableField *f)
Definition message.h:196
UPB_API_INLINE const struct upb_MiniTableField * upb_MiniTable_FindFieldByNumber(const struct upb_MiniTable *m, uint32_t number)
Definition message.h:118
UPB_INLINE void UPB_PRIVATE upb_MiniTable_CheckInvariants(const struct upb_MiniTable *mt)
Definition message.h:85
UPB_PRESERVE_NONE const char * _upb_FieldParser(struct upb_Decoder *d, const char *ptr, struct upb_Message *msg, intptr_t table, uint64_t hasbits, uint64_t data)
Definition message.h:24
UPB_API_INLINE const struct upb_MiniTable * upb_MiniTable_GetSubMessageTable(const struct upb_MiniTable *m, const struct upb_MiniTableField *f)
Definition message.h:188
uint64_t field_data
Definition message.h:29
_upb_FieldParser * field_parser
Definition message.h:30
double d
Definition types.h:21
uint32_t UPB_ONLYBITS(number)
uint16_t UPB_PRIVATE(submsg_index)
uint16_t UPB_PRIVATE(size)
const struct upb_MiniTableField * UPB_ONLYBITS(fields)
uint8_t UPB_PRIVATE(required_count)
uint16_t UPB_ONLYBITS(field_count)
uint8_t UPB_PRIVATE(dense_below)
uint8_t UPB_PRIVATE(table_mask)
const upb_MiniTableSubInternal * UPB_PRIVATE(subs)
const struct upb_MiniTable *const * UPB_PRIVATE(submsg)