Protocol Buffers - Google's data interchange format (grpc依赖)
https://developers.google.com/protocol-buffers/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
1.9 KiB
75 lines
1.9 KiB
// Protocol Buffers - Google's data interchange format |
|
// Copyright 2023 Google LLC. All rights reserved. |
|
// |
|
// Use of this source code is governed by a BSD-style |
|
// license that can be found in the LICENSE file or at |
|
// https://developers.google.com/open-source/licenses/bsd |
|
|
|
syntax = "proto2"; |
|
|
|
package nest; |
|
|
|
message Outer { |
|
message Inner { |
|
message InnerSubMsg { |
|
optional bool flag = 1; |
|
} |
|
|
|
enum InnerEnum { |
|
INNER_ENUM_UNSPECIFIED = 0; |
|
INNER_ENUM_FOO = 1; |
|
} |
|
|
|
optional double double = 1; |
|
optional float float = 2; |
|
optional int32 int32 = 3; |
|
optional int64 int64 = 4; |
|
optional uint32 uint32 = 5; |
|
optional uint64 uint64 = 6; |
|
optional sint32 sint32 = 7; |
|
optional sint64 sint64 = 8; |
|
optional fixed32 fixed32 = 9; |
|
optional fixed64 fixed64 = 10; |
|
optional sfixed32 sfixed32 = 11; |
|
optional sfixed64 sfixed64 = 12; |
|
optional bool bool = 13; |
|
optional string string = 14; |
|
optional bytes bytes = 15; |
|
optional InnerSubMsg inner_submsg = 16; |
|
optional InnerEnum inner_enum = 17; |
|
repeated int32 repeated_int32 = 18 [packed = true]; |
|
repeated InnerSubMsg repeated_inner_submsg = 19; |
|
map<string, string> string_map = 20; |
|
|
|
message SuperInner { |
|
message DuperInner { |
|
message EvenMoreInner { |
|
message CantBelieveItsSoInner { |
|
optional int32 num = 99; |
|
} |
|
|
|
enum JustWayTooInner { |
|
JUST_WAY_TOO_INNER_UNSPECIFIED = 0; |
|
} |
|
} |
|
} |
|
} |
|
} |
|
optional Inner inner = 1; |
|
optional .nest.Outer.Inner.SuperInner.DuperInner.EvenMoreInner |
|
.CantBelieveItsSoInner deep = 2; |
|
|
|
optional .nest.Outer.Inner.SuperInner.DuperInner.EvenMoreInner.JustWayTooInner |
|
deep_enum = 4; |
|
|
|
optional NotInside notinside = 3; |
|
} |
|
|
|
message NotInside { |
|
optional int32 num = 1; |
|
} |
|
|
|
message Recursive { |
|
optional Recursive rec = 1; |
|
optional int32 num = 2; |
|
}
|
|
|