objectivec_generator.h
#include <google/protobuf/compiler/objectivec/objectivec_generator.h>
namespace google::protobuf::compiler::objectivec
Generates ObjectiveC code for a given .proto file.
Classes in this file | |
---|---|
CodeGenerator implementation which generates a ObjectiveC source file and header. |
class ObjectiveCGenerator: public CodeGenerator
#include <google/protobuf/compiler/objectivec/objectivec_generator.h>
namespace google::protobuf::compiler::objectivec
CodeGenerator implementation which generates a ObjectiveC source file and header.
If you create your own protocol compiler binary and you want it to support ObjectiveC output, you can do so by registering an instance of this CodeGenerator with the CommandLineInterface in your main() function.
Members | |
---|---|
| ObjectiveCGenerator() |
| ~ObjectiveCGenerator() |
| ObjectiveCGenerator(const ObjectiveCGenerator & ) |
ObjectiveCGenerator & | operator=(const ObjectiveCGenerator & ) |
implements CodeGenerator | |
virtual bool | HasGenerateAll() const This is no longer used, but this class is part of the opensource protobuf library, so it has to remain to keep vtables the same for the current version of the library. more... |
virtual bool | Generate(const FileDescriptor * file, const std::string & parameter, GeneratorContext * generator_context, std::string * error) const Generates code for the given proto file, generating one or more files in the given output directory. more... |
virtual bool | GenerateAll(const std::vector< const FileDescriptor * > & files, const std::string & parameter, GeneratorContext * generator_context, std::string * error) const Generates code for all given proto files. more... |
virtual uint64_t | GetSupportedFeatures() const Implement this to indicate what features this code generator supports. more... |
virtual bool ObjectiveCGenerator::HasGenerateAll() const
This is no longer used, but this class is part of the opensource protobuf library, so it has to remain to keep vtables the same for the current version of the library.
When protobufs does a api breaking change, the method can be removed.
virtual bool ObjectiveCGenerator::Generate(
const FileDescriptor * file,
const std::string & parameter,
GeneratorContext * generator_context,
std::string * error) const
const FileDescriptor * file,
const std::string & parameter,
GeneratorContext * generator_context,
std::string * error) const
Generates code for the given proto file, generating one or more files in the given output directory.
A parameter to be passed to the generator can be specified on the command line. This is intended to be used to pass generator specific parameters. It is empty if no parameter was given. ParseGeneratorParameter (below), can be used to accept multiple parameters within the single parameter command line flag.
Returns true if successful. Otherwise, sets *error to a description of the problem (e.g. "invalid parameter") and returns false.
virtual bool ObjectiveCGenerator::GenerateAll(
const std::vector< const FileDescriptor * > & files,
const std::string & parameter,
GeneratorContext * generator_context,
std::string * error) const
const std::vector< const FileDescriptor * > & files,
const std::string & parameter,
GeneratorContext * generator_context,
std::string * error) const
Generates code for all given proto files.
WARNING: The canonical code generator design produces one or two output files per input .proto file, and we do not wish to encourage alternate designs.
A parameter is given as passed on the command line, as in |Generate()| above.
Returns true if successful. Otherwise, sets *error to a description of the problem (e.g. "invalid parameter") and returns false.
virtual uint64_t ObjectiveCGenerator::GetSupportedFeatures() const
Implement this to indicate what features this code generator supports.
This should be a bitwise OR of features from the Features enum in plugin.proto.