# Functions

AddImportMapping adds a proto file to Go package import mapping to the parameters.
AddPlugin adds name to the list of plugins in the parameters.
EnableAllPlugins changes the parameters to enable all registered sub-plugins.
GoFmt returns a PostProcessor that runs gofmt on any files ending in ".go".
HasPlugin returns true if the plugin name is enabled in the parameters.
ImportPath returns the protoc-gen-go parameter.
ImportPrefix returns the protoc-gen-go parameter.
InitContext configures a Context that should be used for deriving Go names for all Packages and Entities.
MappedImport returns the protoc-gen-go import overrides for the specified proto file.
Paths returns the protoc-gen-go parameter.
PGGUpperCamelCase converts Name n to the protoc-gen-go defined upper camelcase.
Plugins returns the sub-plugins enabled for this protoc plugin.
SetImportPath sets the protoc-gen-go ImportPath parameter.
SetImportPrefix sets the protoc-gen-go ImportPrefix parameter.
SetPaths sets the protoc-gen-go Paths parameter.

# Constants

ImportPathRelative is the default and outputs the file based off the go import path defined in the go_package option.
SourceRelative indicates files should be output relative to the path of the source file.

# Interfaces

Context resolves Go-specific language for Packages & Entities generated by protoc-gen-go.

# Type aliases

PathType describes how the generated output file paths should be constructed.
A TypeName describes the name of a type (type on a field, or method signature).