protobuf/examples/addressbook.proto

57 lines
1.3 KiB
Protocol Buffer
Raw Normal View History

2008-07-10 02:12:20 +00:00
// See README.txt for information and build instructions.
//
// Note: START and END tags are used in comments to define sections used in
// tutorials. They are not part of the syntax for Protocol Buffers.
//
// To get an in-depth walkthrough of this file and the related examples, see:
// https://developers.google.com/protocol-buffers/docs/tutorials
// [START declaration]
2015-07-20 21:32:57 +00:00
syntax = "proto3";
2008-07-10 02:12:20 +00:00
package tutorial;
import "google/protobuf/timestamp.proto";
// [END declaration]
2008-07-10 02:12:20 +00:00
// [START java_declaration]
option java_multiple_files = true;
option java_package = "com.example.tutorial.protos";
2008-07-10 02:12:20 +00:00
option java_outer_classname = "AddressBookProtos";
// [END java_declaration]
// [START csharp_declaration]
2015-07-20 22:12:56 +00:00
option csharp_namespace = "Google.Protobuf.Examples.AddressBook";
// [END csharp_declaration]
2008-07-10 02:12:20 +00:00
// [START go_declaration]
option go_package = "../tutorial";
// [END go_declaration]
// [START messages]
2008-07-10 02:12:20 +00:00
message Person {
2015-07-20 21:32:57 +00:00
string name = 1;
int32 id = 2; // Unique ID number for this person.
2015-07-20 21:32:57 +00:00
string email = 3;
2008-07-10 02:12:20 +00:00
enum PhoneType {
MOBILE = 0;
HOME = 1;
WORK = 2;
}
message PhoneNumber {
2015-07-20 21:32:57 +00:00
string number = 1;
PhoneType type = 2;
2008-07-10 02:12:20 +00:00
}
2015-07-20 21:32:57 +00:00
repeated PhoneNumber phones = 4;
google.protobuf.Timestamp last_updated = 5;
2008-07-10 02:12:20 +00:00
}
// Our address book file is just one of these.
message AddressBook {
2015-07-20 22:24:08 +00:00
repeated Person people = 1;
2008-07-10 02:12:20 +00:00
}
// [END messages]