Documentation ¶
Overview ¶
plugin package contains proto_plugin implementations that come "built-in" with the gazelle protoc extension. The naming convention of files is as follows:
(1) the go filename mirrors the name the plugin is registered under (snake-case, so 'builtin:js:closure' -> protoc_js_closure.go).
(2) if the plugin corresponds to a protoc "builtin" such as java, the name of the plugin is 'builtin:java' (reflects the value for the --java_out argument). Variants are appended to that name, such as 'builtin:js:common' (commonjs) and 'builtin:js:closure' (closure).
(3) if the plugin is not a builtin, the name is a colon-delimited list reflecting its source code location. For example, the canonical name of the gogofast plugin in the "github.com/gogo/protobuf" repo is 'gogo:protobuf:gogofast'. In this scheme the domain 'github.com' is left out. The first two names are easy to choose. The final name of the "variant" is just a string, and hopefully a concise and meaningful name is chosen.
for some bizarre reason, naming this file 'protoc_js.go' makes it be ignored by the compiler?
for some bizarre reason, naming this file 'protoc_js.go' makes it be ignored by the compiler?
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CppPlugin ¶
type CppPlugin struct{}
CppPlugin implements Plugin for the built-in protoc C++ plugin.
func (*CppPlugin) Configure ¶
func (p *CppPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
type CsharpPlugin ¶
type CsharpPlugin struct{}
CsharpPlugin implements Plugin for the built-in protoc C# plugin.
func (*CsharpPlugin) Configure ¶
func (p *CsharpPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*CsharpPlugin) Name ¶
func (p *CsharpPlugin) Name() string
Name implements part of the Plugin interface.
type GrpcGrpcCppPlugin ¶
type GrpcGrpcCppPlugin struct{}
GrpcGrpcCppPlugin implements Plugin for the built-in protoc python plugin.
func (*GrpcGrpcCppPlugin) Configure ¶
func (p *GrpcGrpcCppPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*GrpcGrpcCppPlugin) Name ¶
func (p *GrpcGrpcCppPlugin) Name() string
Name implements part of the Plugin interface.
type JavaPlugin ¶
type JavaPlugin struct{}
JavaPlugin implements Plugin for the built-in protoc java plugin.
func (*JavaPlugin) Configure ¶
func (p *JavaPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*JavaPlugin) Name ¶
func (p *JavaPlugin) Name() string
Name implements part of the Plugin interface.
type JsClosurePlugin ¶
type JsClosurePlugin struct{}
JsClosurePlugin implements Plugin for the built-in protoc js/library plugin.
func (*JsClosurePlugin) Configure ¶
func (p *JsClosurePlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*JsClosurePlugin) Name ¶
func (p *JsClosurePlugin) Name() string
Name implements part of the Plugin interface.
type JsCommonPlugin ¶
type JsCommonPlugin struct{}
JsCommonPlugin implements Plugin for the built-in protoc js/library plugin.
func (*JsCommonPlugin) Configure ¶
func (p *JsCommonPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*JsCommonPlugin) Name ¶
func (p *JsCommonPlugin) Name() string
Name implements part of the Plugin interface.
type ObjcPlugin ¶
type ObjcPlugin struct{}
ObjcPlugin implements Plugin for the built-in protoc C# plugin.
func (*ObjcPlugin) Configure ¶
func (p *ObjcPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*ObjcPlugin) Name ¶
func (p *ObjcPlugin) Name() string
Name implements part of the Plugin interface.
type PhpPlugin ¶
type PhpPlugin struct{}
PhpPlugin implements Plugin for the built-in protoc php plugin.
func (*PhpPlugin) Configure ¶
func (p *PhpPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
type PyiPlugin ¶
type PyiPlugin struct{}
PyiPlugin implements Plugin for the built-in protoc --pyi_out.
func (*PyiPlugin) Configure ¶
func (p *PyiPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
type PythonPlugin ¶
type PythonPlugin struct{}
PythonPlugin implements Plugin for the built-in protoc python plugin.
func (*PythonPlugin) Configure ¶
func (p *PythonPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*PythonPlugin) Name ¶
func (p *PythonPlugin) Name() string
Name implements part of the Plugin interface.
type RubyPlugin ¶
type RubyPlugin struct{}
RubyPlugin implements Plugin for the built-in protoc ruby plugin.
func (*RubyPlugin) Configure ¶
func (p *RubyPlugin) Configure(ctx *protoc.PluginContext) *protoc.PluginConfiguration
Configure implements part of the Plugin interface.
func (*RubyPlugin) Name ¶
func (p *RubyPlugin) Name() string
Name implements part of the Plugin interface.