...

Package protobuild

import "google.golang.org/protobuf/internal/protobuild"
Overview
Index

Overview ▾

Package protobuild constructs messages.

This package is used to construct multiple types of message with a similar shape from a common template.

Constants

Unknown is a key associated with the unknown fields of a message. The value should be a []byte.

const Unknown = "@unknown"

type Message

A Message is a template to apply to a message. Keys are field names, including extension names.

type Message map[protoreflect.Name]Value

func (Message) Build

func (template Message) Build(m protoreflect.Message)

Build applies the template to a message.

type Value

A Value is a value assignable to a field. A Value may be a value accepted by protoreflect.ValueOf. In addition:

• An int may be assigned to any numeric field.

• A float64 may be assigned to a double field.

• Either a string or []byte may be assigned to a string or bytes field.

• A string containing the value name may be assigned to an enum field.

• A slice may be assigned to a list, and a map may be assigned to a map.

type Value interface{}