benchmark_messages_proto2.proto 4.77 KB
Newer Older
1 2
// Benchmark messages for proto2.

3 4
syntax = "proto2";

Josh Haberman's avatar
Josh Haberman committed
5
package benchmarks.proto2;
6
option java_package = "com.google.protobuf.benchmarks";
jonathan.skeet's avatar
jonathan.skeet committed
7

8
// This is the default, but we specify it here explicitly.
jonathan.skeet's avatar
jonathan.skeet committed
9 10
option optimize_for = SPEED;

11 12
option cc_enable_arenas = true;

13
message GoogleMessage1 {
jonathan.skeet's avatar
jonathan.skeet committed
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
  required string field1 = 1;
  optional string field9 = 9;
  optional string field18 = 18;
  optional bool field80 = 80 [default=false];
  optional bool field81 = 81 [default=true];
  required int32 field2 = 2;
  required int32 field3 = 3;
  optional int32 field280 = 280;
  optional int32 field6 = 6 [default=0];
  optional int64 field22 = 22;
  optional string field4 = 4;
  repeated fixed64 field5 = 5;
  optional bool field59 = 59 [default=false];
  optional string field7 = 7;
  optional int32 field16 = 16;
  optional int32 field130 = 130 [default=0];
  optional bool field12 = 12 [default=true];
  optional bool field17 = 17 [default=true];
  optional bool field13 = 13 [default=true];
  optional bool field14 = 14 [default=true];
  optional int32 field104 = 104 [default=0];
  optional int32 field100 = 100 [default=0];
  optional int32 field101 = 101 [default=0];
  optional string field102 = 102;
  optional string field103 = 103;
  optional int32 field29 = 29 [default=0];
  optional bool field30 = 30 [default=false];
  optional int32 field60 = 60 [default=-1];
  optional int32 field271 = 271 [default=-1];
  optional int32 field272 = 272 [default=-1];
  optional int32 field150 = 150;
  optional int32 field23 = 23 [default=0];
  optional bool field24 = 24 [default=false];
  optional int32 field25 = 25 [default=0];
48
  optional GoogleMessage1SubMessage field15 = 15;
jonathan.skeet's avatar
jonathan.skeet committed
49 50 51 52 53 54 55 56
  optional bool field78 = 78;
  optional int32 field67 = 67 [default=0];
  optional int32 field68 = 68;
  optional int32 field128 = 128 [default=0];
  optional string field129 = 129 [default="xxxxxxxxxxxxxxxxxxxxx"];
  optional int32 field131 = 131 [default=0];
}

57
message GoogleMessage1SubMessage {
jonathan.skeet's avatar
jonathan.skeet committed
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
  optional int32 field1 = 1 [default=0];
  optional int32 field2 = 2 [default=0];
  optional int32 field3 = 3 [default=0];
  optional string field15 = 15;
  optional bool field12 = 12 [default=true];
  optional int64 field13 = 13;
  optional int64 field14 = 14;
  optional int32 field16 = 16;
  optional int32 field19 = 19 [default=2];
  optional bool field20  = 20 [default=true];
  optional bool field28 = 28 [default=true];
  optional fixed64 field21 = 21;
  optional int32 field22 = 22;
  optional bool field23 = 23 [ default=false ];
  optional bool field206 = 206 [default=false];
  optional fixed32 field203 = 203;
  optional int32 field204 = 204;
  optional string field205 = 205;
  optional uint64 field207 = 207;
  optional uint64 field300 = 300;
}

80
message GoogleMessage2 {
jonathan.skeet's avatar
jonathan.skeet committed
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
  optional string field1 = 1;
  optional int64 field3 = 3;
  optional int64 field4 = 4;
  optional int64 field30 = 30;
  optional bool field75  = 75 [default=false];
  optional string field6 = 6;
  optional bytes field2 = 2;
  optional int32 field21 = 21 [default=0];
  optional int32 field71 = 71;
  optional float field25 = 25;
  optional int32 field109 = 109 [default=0];
  optional int32 field210 = 210 [default=0];
  optional int32 field211 = 211 [default=0];
  optional int32 field212 = 212 [default=0];
  optional int32 field213 = 213 [default=0];
  optional int32 field216 = 216 [default=0];
  optional int32 field217 = 217 [default=0];
  optional int32 field218 = 218 [default=0];
  optional int32 field220 = 220 [default=0];
  optional int32 field221 = 221 [default=0];
  optional float field222 = 222 [default=0.0];
  optional int32 field63 = 63;

  repeated group Group1 = 10 {
    required float field11 = 11;
    optional float field26 = 26;
    optional string field12 = 12;
    optional string field13 = 13;
    repeated string field14 = 14;
    required uint64 field15 = 15;
    optional int32 field5 = 5;
    optional string field27 = 27;
    optional int32 field28 = 28;
    optional string field29 = 29;
    optional string field16 = 16;
    repeated string field22 = 22;
    repeated int32 field73 = 73;
    optional int32 field20 = 20 [default=0];
    optional string field24 = 24;
120
    optional GoogleMessage2GroupedMessage field31 = 31;
jonathan.skeet's avatar
jonathan.skeet committed
121 122 123 124 125 126 127 128 129 130
  }
  repeated string field128 = 128;
  optional int64 field131 = 131;
  repeated string field127 = 127;
  optional int32 field129 = 129;
  repeated int64 field130 = 130;
  optional bool field205 = 205 [default=false];
  optional bool field206 = 206 [default=false];
}

131
message GoogleMessage2GroupedMessage {
jonathan.skeet's avatar
jonathan.skeet committed
132 133 134 135 136 137 138 139 140 141 142 143
  optional float field1 = 1;
  optional float field2 = 2;
  optional float field3 = 3 [default=0.0];
  optional bool field4 = 4;
  optional bool field5 = 5;
  optional bool field6 = 6 [default=true];
  optional bool field7 = 7 [default=false];
  optional float field8 = 8;
  optional bool field9 = 9;
  optional float field10 = 10;
  optional int64 field11 = 11;
}