| // Protocol Buffers - Google's data interchange format |
| // Copyright 2008 Google Inc. All rights reserved. |
| // https://developers.google.com/protocol-buffers/ |
| // |
| // Redistribution and use in source and binary forms, with or without |
| // modification, are permitted provided that the following conditions are |
| // met: |
| // |
| // * Redistributions of source code must retain the above copyright |
| // notice, this list of conditions and the following disclaimer. |
| // * Redistributions in binary form must reproduce the above |
| // copyright notice, this list of conditions and the following disclaimer |
| // in the documentation and/or other materials provided with the |
| // distribution. |
| // * Neither the name of Google Inc. nor the names of its |
| // contributors may be used to endorse or promote products derived from |
| // this software without specific prior written permission. |
| // |
| // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| // LINT: ALLOW_GROUPS |
| |
| // Benchmark messages for proto2. |
| |
| syntax = "proto2"; |
| |
| package benchmarks.proto2; |
| option java_package = "com.google.protobuf.benchmarks"; |
| |
| // This is the default, but we specify it here explicitly. |
| option optimize_for = SPEED; |
| |
| option cc_enable_arenas = true; |
| |
| message GoogleMessage2 { |
| 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; |
| optional GoogleMessage2GroupedMessage field31 = 31; |
| } |
| 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]; |
| } |
| |
| message GoogleMessage2GroupedMessage { |
| 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; |
| } |