38 #ifndef GOOGLE_PROTOBUF_COMPILER_COMMAND_LINE_INTERFACE_H__ 39 #define GOOGLE_PROTOBUF_COMPILER_COMMAND_LINE_INTERFACE_H__ 61 class GeneratorContext;
113 void RegisterGenerator(
const string& flag_name,
115 const string& help_text);
125 void RegisterGenerator(
const string& flag_name,
126 const string& option_flag_name,
128 const string& help_text);
159 void AllowPlugins(
const string& exe_name_prefix);
166 int Run(
int argc,
const char*
const argv[]);
177 inputs_are_proto_path_relative_ =
enable;
184 version_info_ =
text;
202 bool MakeInputsBeProtoPathRelative(
206 enum ParseArgumentStatus {
207 PARSE_ARGUMENT_DONE_AND_CONTINUE,
208 PARSE_ARGUMENT_DONE_AND_EXIT,
213 ParseArgumentStatus
ParseArguments(
int argc,
const char*
const argv[]);
227 bool ParseArgument(
const char* arg,
string*
name,
string*
value);
230 ParseArgumentStatus InterpretArgument(
const string& name,
231 const string& value);
234 void PrintHelpText();
237 struct OutputDirective;
238 bool GenerateOutput(
const vector<const FileDescriptor*>& parsed_files,
239 const OutputDirective& output_directive,
241 bool GeneratePluginOutput(
const vector<const FileDescriptor*>& parsed_files,
242 const string& plugin_name,
243 const string& parameter,
251 bool WriteDescriptorSet(
const vector<const FileDescriptor*> parsed_files);
254 bool GenerateDependencyManifestFile(
255 const vector<const FileDescriptor*>& parsed_files,
256 const GeneratorContextMap& output_directories,
268 static void GetTransitiveDependencies(
270 bool include_json_name,
271 bool include_source_code_info,
294 string executable_name_;
297 string version_info_;
300 struct GeneratorInfo {
302 string option_flag_name;
306 typedef map<string, GeneratorInfo> GeneratorMap;
307 GeneratorMap generators_by_flag_name_;
308 GeneratorMap generators_by_option_name_;
313 map<string, string> generator_parameters_;
316 string plugin_prefix_;
321 map<string, string> plugins_;
338 PrintMode print_mode_;
345 ErrorFormat error_format_;
347 vector<pair<string, string> > proto_path_;
348 vector<string> input_files_;
352 struct OutputDirective {
356 string output_location;
358 vector<OutputDirective> output_directives_;
366 string descriptor_set_name_;
370 string dependency_out_name_;
375 bool imports_in_descriptor_set_;
379 bool source_info_in_descriptor_set_;
382 bool disallow_services_;
385 bool inputs_are_proto_path_relative_;
394 #endif // GOOGLE_PROTOBUF_COMPILER_COMMAND_LINE_INTERFACE_H__
Definition: command_line_interface.cc:380
Definition: code_generator.h:121
Definition: XMLHttpRequest.idl:39
def Run(command)
Definition: gtest_break_on_failure_unittest.py:86
#define GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(TypeName)
Definition: macros.h:40
const Descriptor * descriptor
Definition: descriptor.cc:271
Definition: command_line_interface.cc:341
Definition: descriptor.h:1156
Definition: command_line_interface.h:56
Definition: descriptor.h:172
void SetInputsAreProtoPathRelative(bool enable)
Definition: command_line_interface.h:176
Clear
Definition: python_message.py:1326
VoEFile * file
Definition: voe_cmd_test.cc:59
FileDescriptorProto
Definition: descriptor_pb2.py:1630
Definition: command_line_interface.cc:270
EGLAttrib * value
Definition: eglext.h:120
Definition: importer.h:233
void SetVersionInfo(const string &text)
Definition: command_line_interface.h:183
Definition: protobuf.h:64
EGLImageKHR EGLint * name
Definition: eglext.h:851
GLboolean enable
Definition: gl2ext.h:780
Definition: __init__.py:1
const char * argv[]
Definition: DumpRenderTree.cpp:1631
EGLSetBlobFuncANDROID set
Definition: eglext.h:426
Definition: descriptor.h:1355
#define LIBPROTOC_EXPORT
Definition: port.h:98
Definition: generator.py:1
AVCFAssetImageGeneratorRef generator
Definition: AVFoundationCFSoftLinking.h:75
int ParseArguments(CmdArgs *args)
Definition: tester_main.cc:41
Definition: gflags_completions.h:115
Definition: command_line_interface.h:92
Definition: protobuf.h:70
Definition: code_generator.h:61