Go to the documentation of this file.
31 #ifndef GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_FIELD_H__
32 #define GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_FIELD_H__
36 #include <google/protobuf/compiler/objectivec/objectivec_helpers.h>
37 #include <google/protobuf/descriptor.h>
38 #include <google/protobuf/io/printer.h>
43 namespace objectivec {
45 class FieldGenerator {
69 std::set<std::string>* fwd_decls)
const;
71 std::set<std::string>* fwd_decls)
const;
92 return field_flags.find(
"GPBFieldTextFormatNameCustom") !=
128 class ObjCObjFieldGenerator :
public SingleFieldGenerator {
143 class RepeatedFieldGenerator :
public ObjCObjFieldGenerator {
164 class FieldGeneratorMap {
194 #endif // GOOGLE_PROTOBUF_COMPILER_OBJECTIVEC_FIELD_H__
bool DoesAnyFieldHaveNonZeroDefault(void) const
FieldGeneratorMap & operator=(const FieldGeneratorMap &)=delete
ObjCObjFieldGenerator & operator=(const ObjCObjFieldGenerator &)=delete
virtual int ExtraRuntimeHasBitsNeeded(void) const
FieldGeneratorMap(const Descriptor *descriptor, const Options &options)
std::vector< std::unique_ptr< FieldGenerator > > extension_generators_
std::map< std::string, std::string > variables_
SingleFieldGenerator(const SingleFieldGenerator &)=delete
virtual void SetExtraRuntimeHasBitsBase(int index_base)
const FieldDescriptor * descriptor_
virtual void GenerateCFunctionDeclarations(io::Printer *printer) const
virtual bool WantsHasProperty(void) const =0
GRPC_CUSTOM_PRINTER Printer
virtual ~SingleFieldGenerator()
int CalculateHasBits(void)
SingleFieldGenerator & operator=(const SingleFieldGenerator &)=delete
FieldGenerator(const FieldGenerator &)=delete
string variable(const char *key) const
virtual void GeneratePropertyImplementation(io::Printer *printer) const =0
bool needs_textformat_name_support() const
virtual void GeneratePropertyDeclaration(io::Printer *printer) const
std::string variable(const char *key) const
void GenerateFieldNumberConstant(io::Printer *printer) const
virtual void FinishInitialization(void)
FieldGenerator & operator=(const FieldGenerator &)=delete
virtual void GeneratePropertyImplementation(io::Printer *printer) const
virtual bool RuntimeUsesHasBit(void) const =0
const Descriptor * descriptor_
virtual void GeneratePropertyDeclaration(io::Printer *printer) const =0
virtual void GenerateFieldStorageDeclaration(io::Printer *printer) const =0
const FieldGenerator & get_extension(int index) const
static FieldGenerator * Make(const FieldDescriptor *field, const Options &options)
void SetOneofIndexBase(int index_base)
void SetOneofIndexBase(int index_base)
virtual void GenerateFieldStorageDeclaration(io::Printer *printer) const
virtual void GeneratePropertyDeclaration(io::Printer *printer) const
RepeatedFieldGenerator(const RepeatedFieldGenerator &)=delete
virtual void DetermineObjectiveCClassDefinitions(std::set< std::string > *fwd_decls) const
virtual ~RepeatedFieldGenerator()
const FieldDescriptor * field
virtual void GeneratePropertyDeclaration(io::Printer *printer) const
virtual bool RuntimeUsesHasBit(void) const
virtual bool RuntimeUsesHasBit(void) const
virtual void GenerateFieldStorageDeclaration(io::Printer *printer) const
void GenerateFieldDescription(io::Printer *printer, bool include_default) const
const FieldGenerator & get(const FieldDescriptor *field) const
virtual void GenerateCFunctionImplementations(io::Printer *printer) const
virtual void DetermineForwardDeclarations(std::set< string > *fwd_decls) const
std::vector< std::unique_ptr< FieldGenerator > > field_generators_
std::map< string, string > variables_
ObjCObjFieldGenerator(const ObjCObjFieldGenerator &)=delete
RepeatedFieldGenerator & operator=(const RepeatedFieldGenerator &)=delete
virtual void GenerateFieldStorageDeclaration(io::Printer *printer) const
virtual ~FieldGenerator()
virtual ~ObjCObjFieldGenerator()
static const char descriptor[1336]
void SetRuntimeHasBit(int has_index)
std::string generated_objc_name() const
virtual void FinishInitialization(void)
virtual void GeneratePropertyImplementation(io::Printer *printer) const
std::string raw_field_name() const
grpc
Author(s):
autogenerated on Fri May 16 2025 02:59:34