Skip to main content

protobuf


Installation

sudo mkdir -p /opt/protoc/21.2 \
&& wget https://github.com/protocolbuffers/protobuf/releases/download/v21.2/protoc-21.2-linux-x86_64.zip \
&& sudo unzip protoc-21.2-linux-x86_64.zip -d /opt/protoc/21.2
~/.zshrc
export PATH=/opt/protoc/21.2/bin:$PATH

.proto

syntax = "proto3";
package tutorial;

import "google/protobuf/timestamp.proto";

message Person {
string name = 1;
int32 id = 2; // Unique ID number for this person.
string email = 3;

enum PhoneType {
MOBILE = 0;
HOME = 1;
WORK = 2;
}

message PhoneNumber {
string number = 1;
PhoneType type = 2;
}

repeated PhoneNumber phones = 4;

google.protobuf.Timestamp last_updated = 5;
}

// Our address book file is just one of these.
message AddressBook {
repeated Person people = 1;
}