Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:25:24

0001 // Protocol Buffers - Google's data interchange format
0002 // Copyright 2023 Google LLC.  All rights reserved.
0003 //
0004 // Use of this source code is governed by a BSD-style
0005 // license that can be found in the LICENSE file or at
0006 // https://developers.google.com/open-source/licenses/bsd
0007 
0008 #ifndef UPB_REFLECTION_FIELD_DEF_INTERNAL_H_
0009 #define UPB_REFLECTION_FIELD_DEF_INTERNAL_H_
0010 
0011 #include "upb/reflection/field_def.h"
0012 
0013 // Must be last.
0014 #include "upb/port/def.inc"
0015 
0016 #ifdef __cplusplus
0017 extern "C" {
0018 #endif
0019 
0020 upb_FieldDef* _upb_FieldDef_At(const upb_FieldDef* f, int i);
0021 
0022 bool _upb_FieldDef_IsClosedEnum(const upb_FieldDef* f);
0023 bool _upb_FieldDef_IsProto3Optional(const upb_FieldDef* f);
0024 int _upb_FieldDef_LayoutIndex(const upb_FieldDef* f);
0025 uint64_t _upb_FieldDef_Modifiers(const upb_FieldDef* f);
0026 void _upb_FieldDef_Resolve(upb_DefBuilder* ctx, const char* prefix,
0027                            upb_FieldDef* f);
0028 void _upb_FieldDef_BuildMiniTableExtension(upb_DefBuilder* ctx,
0029                                            const upb_FieldDef* f);
0030 
0031 // Allocate and initialize an array of |n| extensions (field defs).
0032 upb_FieldDef* _upb_Extensions_New(upb_DefBuilder* ctx, int n,
0033                                   const UPB_DESC(FieldDescriptorProto*)
0034                                       const* protos,
0035                                   const UPB_DESC(FeatureSet*) parent_features,
0036                                   const char* prefix, upb_MessageDef* m);
0037 
0038 // Allocate and initialize an array of |n| field defs.
0039 upb_FieldDef* _upb_FieldDefs_New(upb_DefBuilder* ctx, int n,
0040                                  const UPB_DESC(FieldDescriptorProto*)
0041                                      const* protos,
0042                                  const UPB_DESC(FeatureSet*) parent_features,
0043                                  const char* prefix, upb_MessageDef* m,
0044                                  bool* is_sorted);
0045 
0046 // Allocate and return a list of pointers to the |n| field defs in |ff|,
0047 // sorted by field number.
0048 const upb_FieldDef** _upb_FieldDefs_Sorted(const upb_FieldDef* f, int n,
0049                                            upb_Arena* a);
0050 
0051 #ifdef __cplusplus
0052 } /* extern "C" */
0053 #endif
0054 
0055 #include "upb/port/undef.inc"
0056 
0057 #endif /* UPB_REFLECTION_FIELD_DEF_INTERNAL_H_ */