blob: b80c85653f74a5e8a9060980a25b3a8eecaf1253 [file] [log] [blame]
Scott Baker2c1c4822019-10-16 11:02:41 -07001// Protocol Buffers for Go with Gadgets
2//
3// Copyright (c) 2013, The GoGo Authors. All rights reserved.
4// http://github.com/gogo/protobuf
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are
8// met:
9//
10// * Redistributions of source code must retain the above copyright
11// notice, this list of conditions and the following disclaimer.
12// * Redistributions in binary form must reproduce the above
13// copyright notice, this list of conditions and the following disclaimer
14// in the documentation and/or other materials provided with the
15// distribution.
16//
17// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29syntax = "proto2";
30package gogoproto;
31
32import "google/protobuf/descriptor.proto";
33
34option java_package = "com.google.protobuf";
35option java_outer_classname = "GoGoProtos";
36option go_package = "github.com/gogo/protobuf/gogoproto";
37
38extend google.protobuf.EnumOptions {
39 optional bool goproto_enum_prefix = 62001;
40 optional bool goproto_enum_stringer = 62021;
41 optional bool enum_stringer = 62022;
42 optional string enum_customname = 62023;
43 optional bool enumdecl = 62024;
44}
45
46extend google.protobuf.EnumValueOptions {
47 optional string enumvalue_customname = 66001;
48}
49
50extend google.protobuf.FileOptions {
51 optional bool goproto_getters_all = 63001;
52 optional bool goproto_enum_prefix_all = 63002;
53 optional bool goproto_stringer_all = 63003;
54 optional bool verbose_equal_all = 63004;
55 optional bool face_all = 63005;
56 optional bool gostring_all = 63006;
57 optional bool populate_all = 63007;
58 optional bool stringer_all = 63008;
59 optional bool onlyone_all = 63009;
60
61 optional bool equal_all = 63013;
62 optional bool description_all = 63014;
63 optional bool testgen_all = 63015;
64 optional bool benchgen_all = 63016;
65 optional bool marshaler_all = 63017;
66 optional bool unmarshaler_all = 63018;
67 optional bool stable_marshaler_all = 63019;
68
69 optional bool sizer_all = 63020;
70
71 optional bool goproto_enum_stringer_all = 63021;
72 optional bool enum_stringer_all = 63022;
73
74 optional bool unsafe_marshaler_all = 63023;
75 optional bool unsafe_unmarshaler_all = 63024;
76
77 optional bool goproto_extensions_map_all = 63025;
78 optional bool goproto_unrecognized_all = 63026;
79 optional bool gogoproto_import = 63027;
80 optional bool protosizer_all = 63028;
81 optional bool compare_all = 63029;
82 optional bool typedecl_all = 63030;
83 optional bool enumdecl_all = 63031;
84
85 optional bool goproto_registration = 63032;
86 optional bool messagename_all = 63033;
87
88 optional bool goproto_sizecache_all = 63034;
89 optional bool goproto_unkeyed_all = 63035;
90}
91
92extend google.protobuf.MessageOptions {
93 optional bool goproto_getters = 64001;
94 optional bool goproto_stringer = 64003;
95 optional bool verbose_equal = 64004;
96 optional bool face = 64005;
97 optional bool gostring = 64006;
98 optional bool populate = 64007;
99 optional bool stringer = 67008;
100 optional bool onlyone = 64009;
101
102 optional bool equal = 64013;
103 optional bool description = 64014;
104 optional bool testgen = 64015;
105 optional bool benchgen = 64016;
106 optional bool marshaler = 64017;
107 optional bool unmarshaler = 64018;
108 optional bool stable_marshaler = 64019;
109
110 optional bool sizer = 64020;
111
112 optional bool unsafe_marshaler = 64023;
113 optional bool unsafe_unmarshaler = 64024;
114
115 optional bool goproto_extensions_map = 64025;
116 optional bool goproto_unrecognized = 64026;
117
118 optional bool protosizer = 64028;
119 optional bool compare = 64029;
120
121 optional bool typedecl = 64030;
122
123 optional bool messagename = 64033;
124
125 optional bool goproto_sizecache = 64034;
126 optional bool goproto_unkeyed = 64035;
127}
128
129extend google.protobuf.FieldOptions {
130 optional bool nullable = 65001;
131 optional bool embed = 65002;
132 optional string customtype = 65003;
133 optional string customname = 65004;
134 optional string jsontag = 65005;
135 optional string moretags = 65006;
136 optional string casttype = 65007;
137 optional string castkey = 65008;
138 optional string castvalue = 65009;
139
140 optional bool stdtime = 65010;
141 optional bool stdduration = 65011;
142 optional bool wktpointer = 65012;
143
144}