generator

package
v1.0.0-beta.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 18, 2024 License: Apache-2.0, BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const ProtoPkg = "google.golang.org/protobuf/proto"

Variables

This section is empty.

Functions

func KeySize

func KeySize(fieldNumber protoreflect.FieldNumber, wireType protowire.Type) int

func ProtoWireType

func ProtoWireType(k protoreflect.Kind) protowire.Type

func RegisterFeature

func RegisterFeature(name string, feat Feature)

Types

type Extensions

type Extensions struct {
	Poolable map[protogen.GoIdent]bool
}

type Feature

type Feature func(gen *GeneratedFile, plugin *protogen.Plugin) FeatureGenerator

type FeatureGenerator

type FeatureGenerator interface {
	GenerateFile(file *protogen.File, plugin *protogen.Plugin) bool
	GenerateHelpers()
}

type GeneratedFile

type GeneratedFile struct {
	*protogen.GeneratedFile
	Ext           *Extensions
	LocalPackages map[string]bool
}

func (*GeneratedFile) FieldGoType

func (p *GeneratedFile) FieldGoType(field *protogen.Field) (goType string, pointer bool)

func (*GeneratedFile) Ident

func (p *GeneratedFile) Ident(path, ident string) string

func (*GeneratedFile) IsLocalMessage

func (p *GeneratedFile) IsLocalMessage(message *protogen.Message) bool

type Generator

type Generator struct {
	// contains filtered or unexported fields
}

func NewGenerator

func NewGenerator(allFiles []*protogen.File, featureNames []string, ext *Extensions) (*Generator, error)

func (*Generator) GenerateFile

func (gen *Generator) GenerateFile(plugin *protogen.Plugin, gf *protogen.GeneratedFile, file *protogen.File) bool

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL