| // Protocol Buffers - Google's data interchange format |
| // Copyright 2008 Google Inc. 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 |
| |
| // Author: kenton@google.com (Kenton Varda) |
| // Based on original Protocol Buffers design by |
| // Sanjay Ghemawat, Jeff Dean, and others. |
| // |
| // This file is similar to unittest_mset_wire_format.proto, but does not |
| // have a TestMessageSet, so it can be downgraded to proto1. |
| |
| syntax = "proto2"; |
| |
| import "google/protobuf/unittest_mset_wire_format.proto"; |
| |
| package protobuf_unittest; |
| |
| option cc_enable_arenas = true; |
| option optimize_for = SPEED; |
| |
| message TestMessageSetContainer { |
| optional proto2_wireformat_unittest.TestMessageSet message_set = 1; |
| } |
| |
| message NestedTestMessageSetContainer { |
| optional TestMessageSetContainer container = 1; |
| optional NestedTestMessageSetContainer child = 2; |
| optional NestedTestMessageSetContainer lazy_child = 3 [lazy = true]; |
| } |
| |
| message NestedTestInt { |
| optional fixed32 a = 1; |
| optional int32 b = 3; |
| optional NestedTestInt child = 2; |
| } |
| |
| message TestMessageSetExtension1 { |
| extend proto2_wireformat_unittest.TestMessageSet { |
| optional TestMessageSetExtension1 message_set_extension = 1545008; |
| } |
| optional int32 i = 15; |
| optional proto2_wireformat_unittest.TestMessageSet recursive = 16; |
| optional string test_aliasing = 17 [ctype = STRING_PIECE]; |
| } |
| |
| message TestMessageSetExtension2 { |
| extend proto2_wireformat_unittest.TestMessageSet { |
| optional TestMessageSetExtension2 message_set_extension = 1547769; |
| } |
| optional string str = 25; |
| } |
| |
| message TestMessageSetExtension3 { |
| extend proto2_wireformat_unittest.TestMessageSet { |
| optional TestMessageSetExtension3 message_set_extension = 195273129; |
| } |
| optional NestedTestInt msg = 35; |
| required int32 required_int = 36; |
| } |
| |
| // This message was used to generate |
| // //net/proto2/python/internal/testdata/message_set_message, but is commented |
| // out since it must not actually exist in code, to simulate an "unknown" |
| // extension. |
| // message TestMessageSetUnknownExtension { |
| // extend TestMessageSet { |
| // optional TestMessageSetUnknownExtension message_set_extension = 56141421; |
| // } |
| // optional int64 a = 1; |
| // } |
| |
| // MessageSet wire format is equivalent to this. |
| message RawMessageSet { |
| repeated group Item = 1 { |
| required int32 type_id = 2; |
| required bytes message = 3; |
| } |
| } |