From f26efdff864a47da2eeaa5e131fd924f30d93910 Mon Sep 17 00:00:00 2001 From: Protobuf Team Bot Date: Mon, 8 Sep 2025 16:39:59 -0700 Subject: [PATCH] Add upb_MiniTableExtension_ToField(). Can be used with functions like upb_MiniTableField_IsScalar() to check the field mode of an extension. PiperOrigin-RevId: 804636350 --- upb/mini_table/extension.h | 4 ++++ upb/mini_table/internal/extension.h | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/upb/mini_table/extension.h b/upb/mini_table/extension.h index 7df685db98..f7656ada44 100644 --- a/upb/mini_table/extension.h +++ b/upb/mini_table/extension.h @@ -12,6 +12,7 @@ #include "upb/base/descriptor_constants.h" #include "upb/mini_table/enum.h" +#include "upb/mini_table/field.h" #include "upb/mini_table/internal/extension.h" #include "upb/mini_table/message.h" @@ -45,6 +46,9 @@ UPB_API_INLINE bool upb_MiniTableExtension_SetSubMessage( UPB_API_INLINE bool upb_MiniTableExtension_SetSubEnum( upb_MiniTableExtension* e, const upb_MiniTableEnum* m); +UPB_API_INLINE const upb_MiniTableField* upb_MiniTableExtension_ToField( + const upb_MiniTableExtension* e); + #ifdef __cplusplus } /* extern "C" */ #endif diff --git a/upb/mini_table/internal/extension.h b/upb/mini_table/internal/extension.h index 3a794851c8..630492519b 100644 --- a/upb/mini_table/internal/extension.h +++ b/upb/mini_table/internal/extension.h @@ -81,6 +81,11 @@ UPB_API_INLINE bool upb_MiniTableExtension_SetSubEnum( return true; } +UPB_API_INLINE const upb_MiniTableField* upb_MiniTableExtension_ToField( + const struct upb_MiniTableExtension* e) { + return &e->UPB_PRIVATE(field); +} + UPB_INLINE upb_FieldRep UPB_PRIVATE(_upb_MiniTableExtension_GetRep)( const struct upb_MiniTableExtension* e) { return UPB_PRIVATE(_upb_MiniTableField_GetRep)(&e->UPB_PRIVATE(field));