github.com/whiteCcinn/protobuf-go@v1.0.9/cmd/protoc-gen-go/testdata/extensions/ext/ext.proto (about) 1 // Copyright 2018 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 syntax = "proto2"; 6 7 import "cmd/protoc-gen-go/testdata/extensions/base/base.proto"; 8 import "cmd/protoc-gen-go/testdata/extensions/extra/extra.proto"; 9 10 package goproto.protoc.extension.ext; 11 12 option go_package = "github.com/whiteCcinn/protobuf-go/cmd/protoc-gen-go/testdata/extensions/ext"; 13 14 message Message { 15 optional bytes data = 1; 16 17 message M {} 18 } 19 20 enum Enum { 21 ZERO = 0; 22 } 23 24 // Extend with various types. 25 extend goproto.protoc.extension.base.BaseMessage { 26 optional bool extension_bool = 101; 27 optional Enum extension_enum = 102; 28 optional int32 extension_int32 = 103; 29 optional sint32 extension_sint32 = 104; 30 optional uint32 extension_uint32 = 105; 31 optional int64 extension_int64 = 106; 32 optional sint64 extension_sint64 = 107; 33 optional uint64 extension_uint64 = 108; 34 optional sfixed32 extension_sfixed32 = 109; 35 optional fixed32 extension_fixed32 = 110; 36 optional float extension_float = 111; 37 optional sfixed64 extension_sfixed64 = 112; 38 optional fixed64 extension_fixed64 = 113; 39 optional double extension_double = 114; 40 optional string extension_string = 115; 41 optional bytes extension_bytes = 116; 42 optional Message extension_Message = 117; 43 optional Message.M extension_MessageM = 118; 44 optional group ExtensionGroup = 119 { 45 optional string extension_group = 120; 46 } 47 } 48 49 // Extend with a foreign message. 50 extend goproto.protoc.extension.base.BaseMessage { 51 optional goproto.protoc.extension.extra.ExtraMessage extra_message = 9; 52 } 53 54 // Extend in the scope of another type. 55 message ExtendingMessage { 56 extend goproto.protoc.extension.base.BaseMessage { 57 optional string extending_message_string = 200; 58 optional ExtendingMessageSubmessage extending_message_submessage = 201; 59 } 60 message ExtendingMessageSubmessage {} 61 } 62 63 // Extend with repeated fields. 64 extend goproto.protoc.extension.base.BaseMessage { 65 repeated bool repeated_x_bool = 301; 66 repeated Enum repeated_x_enum = 302; 67 repeated int32 repeated_x_int32 = 303; 68 repeated sint32 repeated_x_sint32 = 304; 69 repeated uint32 repeated_x_uint32 = 305; 70 repeated int64 repeated_x_int64 = 306; 71 repeated sint64 repeated_x_sint64 = 307; 72 repeated uint64 repeated_x_uint64 = 308; 73 repeated sfixed32 repeated_x_sfixed32 = 309; 74 repeated fixed32 repeated_x_fixed32 = 310; 75 repeated float repeated_x_float = 311; 76 repeated sfixed64 repeated_x_sfixed64 = 312; 77 repeated fixed64 repeated_x_fixed64 = 313; 78 repeated double repeated_x_double = 314; 79 repeated string repeated_x_string = 315; 80 repeated bytes repeated_x_bytes = 316; 81 repeated Message repeated_x_Message = 317; 82 repeated group RepeatedGroup = 318 { 83 repeated string repeated_x_group = 319; 84 } 85 } 86 87 // An extension of an extension. 88 message Extendable { 89 extensions 1 to max; 90 } 91 extend goproto.protoc.extension.base.BaseMessage { 92 optional Extendable extendable_field = 400; 93 } 94 extend Extendable { 95 optional string extendable_string_field = 1; 96 } 97 98 // Message set wire format. 99 message MessageSetWireFormatExtension { 100 extend goproto.protoc.extension.base.MessageSetWireFormatMessage { 101 optional MessageSetWireFormatExtension message_set_extension = 100; 102 } 103 } 104 105 // Message set extension, not nested in a message. 106 extend goproto.protoc.extension.base.MessageSetWireFormatMessage { 107 optional MessageSetWireFormatExtension message_set_extension = 101; 108 }