Documentation ¶
Overview ¶
Package defval marshals and unmarshals textual forms of default values.
This package handles both the form historically used in Go struct field tags and also the form used by google.protobuf.FieldDescriptorProto.default_value since they differ in superficial ways.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Marshal ¶
func Marshal(v protoreflect.Value, ev protoreflect.EnumValueDescriptor, k protoreflect.Kind, f Format) (string, error)
Marshal serializes v as the default string according to the given kind k. When specifying the Descriptor format for an enum kind, the associated enum value descriptor must be provided.
func Unmarshal ¶
func Unmarshal(s string, k protoreflect.Kind, evs protoreflect.EnumValueDescriptors, f Format) (protoreflect.Value, protoreflect.EnumValueDescriptor, error)
Unmarshal deserializes the default string s according to the given kind k. When k is an enum, a list of enum value descriptors must be provided.
Types ¶
type Format ¶
type Format int
Format is the serialization format used to represent the default value.
const ( // Descriptor uses the serialization format that protoc uses with the // google.protobuf.FieldDescriptorProto.default_value field. Descriptor Format // GoTag uses the historical serialization format in Go struct field tags. GoTag )