1ffe3c632Sopenharmony_ci// Protocol Buffers - Google's data interchange format 2ffe3c632Sopenharmony_ci// Copyright 2016 Google Inc. All rights reserved. 3ffe3c632Sopenharmony_ci// 4ffe3c632Sopenharmony_ci// Redistribution and use in source and binary forms, with or without 5ffe3c632Sopenharmony_ci// modification, are permitted provided that the following conditions are 6ffe3c632Sopenharmony_ci// met: 7ffe3c632Sopenharmony_ci// 8ffe3c632Sopenharmony_ci// * Redistributions of source code must retain the above copyright 9ffe3c632Sopenharmony_ci// notice, this list of conditions and the following disclaimer. 10ffe3c632Sopenharmony_ci// * Redistributions in binary form must reproduce the above 11ffe3c632Sopenharmony_ci// copyright notice, this list of conditions and the following disclaimer 12ffe3c632Sopenharmony_ci// in the documentation and/or other materials provided with the 13ffe3c632Sopenharmony_ci// distribution. 14ffe3c632Sopenharmony_ci// * Neither the name of Google Inc. nor the names of its 15ffe3c632Sopenharmony_ci// contributors may be used to endorse or promote products derived from 16ffe3c632Sopenharmony_ci// this software without specific prior written permission. 17ffe3c632Sopenharmony_ci// 18ffe3c632Sopenharmony_ci// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19ffe3c632Sopenharmony_ci// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20ffe3c632Sopenharmony_ci// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21ffe3c632Sopenharmony_ci// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22ffe3c632Sopenharmony_ci// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23ffe3c632Sopenharmony_ci// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24ffe3c632Sopenharmony_ci// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25ffe3c632Sopenharmony_ci// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26ffe3c632Sopenharmony_ci// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27ffe3c632Sopenharmony_ci// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28ffe3c632Sopenharmony_ci// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29ffe3c632Sopenharmony_ci 30ffe3c632Sopenharmony_cisyntax = "proto2"; 31ffe3c632Sopenharmony_ci 32ffe3c632Sopenharmony_cipackage protobuf_deprecated; 33ffe3c632Sopenharmony_cioption objc_class_prefix = "Dep"; 34ffe3c632Sopenharmony_ci 35ffe3c632Sopenharmony_ci// 36ffe3c632Sopenharmony_ci// This file is like unittest_deprecated_file.proto, but uses message, enum, 37ffe3c632Sopenharmony_ci// enum value, and field level deprecation. 38ffe3c632Sopenharmony_ci// 39ffe3c632Sopenharmony_ci// The source generated from this file needs to be inspect to confirm it has 40ffe3c632Sopenharmony_ci// all of the expected annotations. It also will be compiled into the unittest 41ffe3c632Sopenharmony_ci// and that compile should be clean without errors. 42ffe3c632Sopenharmony_ci// 43ffe3c632Sopenharmony_ci 44ffe3c632Sopenharmony_ci// Mix of field types marked as deprecated. 45ffe3c632Sopenharmony_cimessage Msg1 { 46ffe3c632Sopenharmony_ci extensions 100 to max; 47ffe3c632Sopenharmony_ci 48ffe3c632Sopenharmony_ci optional string string_field = 1 [deprecated=true]; 49ffe3c632Sopenharmony_ci required int32 int_field = 2 [deprecated=true]; 50ffe3c632Sopenharmony_ci repeated fixed32 fixed_field = 3 [deprecated=true]; 51ffe3c632Sopenharmony_ci optional Msg1 msg_field = 4 [deprecated=true]; 52ffe3c632Sopenharmony_ci} 53ffe3c632Sopenharmony_ci 54ffe3c632Sopenharmony_ci// Mix of extension field types marked as deprecated. 55ffe3c632Sopenharmony_ciextend Msg1 { 56ffe3c632Sopenharmony_ci optional string string_ext_field = 101 [deprecated=true]; 57ffe3c632Sopenharmony_ci optional int32 int_ext_field = 102 [deprecated=true]; 58ffe3c632Sopenharmony_ci repeated fixed32 fixed_ext_field = 103 [deprecated=true]; 59ffe3c632Sopenharmony_ci optional Msg1 msg_ext_field = 104 [deprecated=true]; 60ffe3c632Sopenharmony_ci} 61ffe3c632Sopenharmony_ci 62ffe3c632Sopenharmony_ci// Mix of extension field types (scoped to a message) marked as deprecated. 63ffe3c632Sopenharmony_cimessage Msg1A { 64ffe3c632Sopenharmony_ci extend Msg1 { 65ffe3c632Sopenharmony_ci optional string string_ext2_field = 201 [deprecated=true]; 66ffe3c632Sopenharmony_ci optional int32 int_ext2_field = 202 [deprecated=true]; 67ffe3c632Sopenharmony_ci repeated fixed32 fixed_ext2_field = 203 [deprecated=true]; 68ffe3c632Sopenharmony_ci optional Msg1 msg_ext2_field = 204 [deprecated=true]; 69ffe3c632Sopenharmony_ci } 70ffe3c632Sopenharmony_ci} 71ffe3c632Sopenharmony_ci 72ffe3c632Sopenharmony_ci// Enum value marked as deprecated. 73ffe3c632Sopenharmony_cienum Enum1 { 74ffe3c632Sopenharmony_ci ENUM1_ONE = 1; 75ffe3c632Sopenharmony_ci ENUM1_TWO = 2; 76ffe3c632Sopenharmony_ci ENUM1_THREE = 3 [deprecated=true]; 77ffe3c632Sopenharmony_ci} 78ffe3c632Sopenharmony_ci 79ffe3c632Sopenharmony_ci// Message marked as deprecated. 80ffe3c632Sopenharmony_cimessage Msg2 { 81ffe3c632Sopenharmony_ci option deprecated = true; 82ffe3c632Sopenharmony_ci 83ffe3c632Sopenharmony_ci optional string string_field = 1; 84ffe3c632Sopenharmony_ci required int32 int_field = 2; 85ffe3c632Sopenharmony_ci repeated fixed32 fixed_field = 3; 86ffe3c632Sopenharmony_ci} 87ffe3c632Sopenharmony_ci 88ffe3c632Sopenharmony_ci// Enum marked as deprecated. 89ffe3c632Sopenharmony_cienum Enum2 { 90ffe3c632Sopenharmony_ci option deprecated = true; 91ffe3c632Sopenharmony_ci 92ffe3c632Sopenharmony_ci ENUM2_ONE = 1; 93ffe3c632Sopenharmony_ci ENUM2_TWO = 2; 94ffe3c632Sopenharmony_ci ENUM2_THREE = 3; 95ffe3c632Sopenharmony_ci} 96