package tag
Import Path
google.golang.org/protobuf/internal/encoding/tag (on go.dev)
Dependency Relation
imports 7 packages, and imported by one package
Involved Source Files
Package tag marshals and unmarshals the legacy struct tags as generated
by historical versions of protoc-gen-go.
Package-Level Functions (total 2, both are exported)
Marshal encodes the protoreflect.FieldDescriptor as a tag.
The enumName must be provided if the kind is an enum.
Historically, the formulation of the enum "name" was the proto package
dot-concatenated with the generated Go identifier for the enum type.
Depending on the context on how Marshal is called, there are different ways
through which that information is determined. As such it is the caller's
responsibility to provide a function to obtain that information.
Unmarshal decodes the tag into a prototype.Field.
The goType is needed to determine the original protoreflect.Kind since the
tag does not record sufficient information to determine that.
The type is the underlying field type (e.g., a repeated field may be
represented by []T, but the Go type passed in is just T).
A list of enum value descriptors must be provided for enum fields.
This does not populate the Enum or Message (except for weak message).
This function is a best effort attempt; parsing errors are ignored.
Package-Level Variables (only one, which is unexported)
The pages are generated with Golds v0.3.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |