protobuf

module
v2.0.0-...-d24bc72 Latest Latest
Warning

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

Go to latest
Published: Apr 20, 2019 License: BSD-3-Clause

README

Next Generation Go Protocol Buffers

WARNING: This repository is in active development. There are no guarantees about API stability. Breaking changes will occur until a stable release is made and announced.

This repository is for the development of the next major Go implementation of protocol buffers. This library makes breaking API changes relative to the existing Go protobuf library. Of particular note, this API aims to make protobuf reflection a first-class feature of the API and implements the protobuf ecosystem in terms of reflection.

Design Documents

List of relevant design documents:

Contributing

We appreciate community contributions. See CONTRIBUTING.md.

Reporting Issues

Issues regarding the new API can be filed at github.com/golang/protobuf. Please use a APIv2: prefix in the title to make it clear that the issue is regarding the new API work.

Directories

Path Synopsis
cmd
protoc-gen-go
The protoc-gen-go binary is a protoc plugin to generate a Go protocol buffer package.
The protoc-gen-go binary is a protoc plugin to generate a Go protocol buffer package.
protoc-gen-go-grpc
The protoc-gen-go-grpc binary is a protoc plugin to generate Go gRPC service definitions.
The protoc-gen-go-grpc binary is a protoc plugin to generate Go gRPC service definitions.
protoc-gen-go-grpc/internal_gengogrpc
Package internal_gengogrpc is internal to the protobuf module.
Package internal_gengogrpc is internal to the protobuf module.
protoc-gen-go/internal_gengo
Package internal_gengo is internal to the protobuf module.
Package internal_gengo is internal to the protobuf module.
encoding
jsonpb
Package jsonpb marshals and unmarshals protocol buffer messages as JSON format.
Package jsonpb marshals and unmarshals protocol buffer messages as JSON format.
textpb
Package textpb marshals and unmarshals protocol buffer messages as the textproto format.
Package textpb marshals and unmarshals protocol buffer messages as the textproto format.
internal
cmd/pbdump
pbdump is a tool for decoding the wire format for protocol buffer messages.
pbdump is a tool for decoding the wire format for protocol buffer messages.
descopts
Package descopts contains the nil pointers to concrete descriptor options.
Package descopts contains the nil pointers to concrete descriptor options.
detrand
Package detrand provides deterministically random functionality.
Package detrand provides deterministically random functionality.
encoding/defval
Package defval marshals and unmarshals textual forms of default values.
Package defval marshals and unmarshals textual forms of default values.
encoding/pack
Package pack enables manual encoding and decoding of protobuf wire data.
Package pack enables manual encoding and decoding of protobuf wire data.
encoding/tag
Package tag marshals and unmarshals the legacy struct tags as generated by historical versions of protoc-gen-go.
Package tag marshals and unmarshals the legacy struct tags as generated by historical versions of protoc-gen-go.
encoding/text
Package text implements the text format for protocol buffers.
Package text implements the text format for protocol buffers.
encoding/wire
Package wire parses and formats the protobuf wire encoding.
Package wire parses and formats the protobuf wire encoding.
errors
Package errors implements functions to manipulate errors.
Package errors implements functions to manipulate errors.
fieldnum
Package fieldnum contains constants for field numbers of fields in messages declared in descriptor.proto and any of the well-known types.
Package fieldnum contains constants for field numbers of fields in messages declared in descriptor.proto and any of the well-known types.
fileinit
Package fileinit constructs protoreflect.FileDescriptors from the encoded file descriptor proto messages.
Package fileinit constructs protoreflect.FileDescriptors from the encoded file descriptor proto messages.
flags
Package flags provides a set of flags controlled by build tags.
Package flags provides a set of flags controlled by build tags.
mapsort
Package mapsort provides sorted access to maps.
Package mapsort provides sorted access to maps.
pragma
Package pragma provides types that can be embedded into a struct to statically enforce or prevent certain language properties.
Package pragma provides types that can be embedded into a struct to statically enforce or prevent certain language properties.
prototype
Package prototype provides builders to construct protobuf types that implement the interfaces defined in the protoreflect package.
Package prototype provides builders to construct protobuf types that implement the interfaces defined in the protoreflect package.
scalar
Package scalar provides wrappers for populating optional scalar fields.
Package scalar provides wrappers for populating optional scalar fields.
set
Package set provides simple set data structures for uint64s.
Package set provides simple set data structures for uint64s.
testprotos/legacy/proto2.v0.0.0-20160225-2fc053c5
Package github_com_golang_protobuf_v2_internal_testprotos_legacy_proto2_v0_0_0_20160225_2fc053c5 is a generated protocol buffer package.
Package github_com_golang_protobuf_v2_internal_testprotos_legacy_proto2_v0_0_0_20160225_2fc053c5 is a generated protocol buffer package.
testprotos/legacy/proto2.v0.0.0-20160519-a4ab9ec5
Package proto2_v0_0_0_20160519_a4ab9ec5 is a generated protocol buffer package.
Package proto2_v0_0_0_20160519_a4ab9ec5 is a generated protocol buffer package.
testprotos/legacy/proto2.v1.0.0-20180125-92554152
Package proto2_v1_0_0_20180125_92554152 is a generated protocol buffer package.
Package proto2_v1_0_0_20180125_92554152 is a generated protocol buffer package.
testprotos/legacy/proto3.v0.0.0-20160225-2fc053c5
Package github_com_golang_protobuf_v2_internal_testprotos_legacy_proto3_v0_0_0_20160225_2fc053c5 is a generated protocol buffer package.
Package github_com_golang_protobuf_v2_internal_testprotos_legacy_proto3_v0_0_0_20160225_2fc053c5 is a generated protocol buffer package.
testprotos/legacy/proto3.v0.0.0-20160519-a4ab9ec5
Package proto3_v0_0_0_20160519_a4ab9ec5 is a generated protocol buffer package.
Package proto3_v0_0_0_20160519_a4ab9ec5 is a generated protocol buffer package.
testprotos/legacy/proto3.v1.0.0-20180125-92554152
Package proto3_v1_0_0_20180125_92554152 is a generated protocol buffer package.
Package proto3_v1_0_0_20180125_92554152 is a generated protocol buffer package.
typefmt
Package typefmt provides functionality to format descriptors.
Package typefmt provides functionality to format descriptors.
value
Package value provides functionality for wrapping Go values to implement protoreflect values.
Package value provides functionality for wrapping Go values to implement protoreflect values.
Package protogen provides support for writing protoc plugins.
Package protogen provides support for writing protoc plugins.
reflect
protodesc
Package protodesc provides for converting descriptorpb.FileDescriptorProto to/from the reflective protoreflect.FileDescriptor.
Package protodesc provides for converting descriptorpb.FileDescriptorProto to/from the reflective protoreflect.FileDescriptor.
protoreflect
Package protoreflect provides interfaces to dynamically manipulate messages.
Package protoreflect provides interfaces to dynamically manipulate messages.
protoregistry
Package protoregistry provides data structures to register and lookup protobuf descriptor types.
Package protoregistry provides data structures to register and lookup protobuf descriptor types.
runtime
protoiface
Package protoiface contains types referenced by generated messages.
Package protoiface contains types referenced by generated messages.
protoimpl
Package protoimpl contains the default implementation for messages generated by protoc-gen-go.
Package protoimpl contains the default implementation for messages generated by protoc-gen-go.
protolegacy
Package protolegacy contains the default implementation for messages generated by protoc-gen-go.
Package protolegacy contains the default implementation for messages generated by protoc-gen-go.
types

Jump to

Keyboard shortcuts

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