Documentation
¶
Overview ¶
Package proto provides proto file export functionality.
Index ¶
- func ConvertFromRegistry(file protoreflect.FileDescriptor) *descriptorpb.FileDescriptorProto
- func ConvertToFileDescriptor(fdp *descriptorpb.FileDescriptorProto) (protoreflect.FileDescriptor, error)
- func MergeFileDescriptorSets(sets ...*descriptorpb.FileDescriptorSet) *descriptorpb.FileDescriptorSet
- type ExportOptions
- type Exporter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertFromRegistry ¶
func ConvertFromRegistry(file protoreflect.FileDescriptor) *descriptorpb.FileDescriptorProto
ConvertFromRegistry converts from protoreflect.FileDescriptor to FileDescriptorProto. This is useful when working with protobuf registry files.
func ConvertToFileDescriptor ¶
func ConvertToFileDescriptor(fdp *descriptorpb.FileDescriptorProto) (protoreflect.FileDescriptor, error)
ConvertToFileDescriptor converts a FileDescriptorProto to protoreflect.FileDescriptor. This is a helper function for cases where you need the intermediate representation.
func MergeFileDescriptorSets ¶
func MergeFileDescriptorSets(sets ...*descriptorpb.FileDescriptorSet) *descriptorpb.FileDescriptorSet
MergeFileDescriptorSets merges multiple FileDescriptorSets into one.
Types ¶
type ExportOptions ¶
type ExportOptions struct {
// IncludeComments adds comments to the exported proto files
IncludeComments bool
// SortElements sorts messages, fields, etc. alphabetically
SortElements bool
// Indent configures the indentation string (default: 2 spaces)
Indent string
}
ExportOptions configures proto file export.
func DefaultExportOptions ¶
func DefaultExportOptions() ExportOptions
DefaultExportOptions returns default export options.
type Exporter ¶
type Exporter struct {
// contains filtered or unexported fields
}
Exporter handles proto file export operations.
func NewExporter ¶
func NewExporter(opts ExportOptions) *Exporter
NewExporter creates a new proto exporter.
func (*Exporter) ExportFileDescriptorProto ¶
func (e *Exporter) ExportFileDescriptorProto(fdp *descriptorpb.FileDescriptorProto) (string, error)
ExportFileDescriptorProto exports a single proto file.
func (*Exporter) ExportFileDescriptorSet ¶
func (e *Exporter) ExportFileDescriptorSet(fdset *descriptorpb.FileDescriptorSet) (map[string]string, error)
ExportFileDescriptorSet exports all proto files from a FileDescriptorSet.
func (*Exporter) ExportToZip ¶
func (e *Exporter) ExportToZip(fdset *descriptorpb.FileDescriptorSet) ([]byte, error)
ExportToZip exports all proto files to a ZIP archive.