Protocol Buffers Data Type Go Code Generation: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 18: Line 18:


This will install a <code>protoc-gen-go</code> binary in <code>${GOBIN}</code>.
This will install a <code>protoc-gen-go</code> binary in <code>${GOBIN}</code>.
=Code Generation=
<syntaxhighlight lang='bash'>
  protoc \
    --go_out=./pkg/person \
    --proto_path=./proto \
    --go_opt=Mperson.proto=. \
    ./proto/person.proto
</syntaxhighlight>

Revision as of 16:04, 7 May 2024

External

https://protobuf.dev/reference/go/go-generated

Internal

Overview

The Go code that supports the data types defined in the .proto files is generated withe the compiler is invoked with the go_out flag, as shown below, and the Go plugin is installed.

Installation

The generic compiler must be installed with TODO.

To generate Go code, the Go plugin must be installed with:

go install google.golang.org/protobuf/cmd/protoc-gen-go@latest

This will install a protoc-gen-go binary in ${GOBIN}.

Code Generation

  protoc \
    --go_out=./pkg/person \
    --proto_path=./proto \
    --go_opt=Mperson.proto=. \
    ./proto/person.proto