1// 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"; 36 37extend google.protobuf.EnumOptions { 38 optional bool goproto_enum_prefix = 62001; 39 optional bool goproto_enum_stringer = 62021; 40 optional bool enum_stringer = 62022; 41 optional string enum_customname = 62023; 42 optional bool enumdecl = 62024; 43} 44 45extend google.protobuf.EnumValueOptions { 46 optional string enumvalue_customname = 66001; 47} 48 49extend google.protobuf.FileOptions { 50 optional bool goproto_getters_all = 63001; 51 optional bool goproto_enum_prefix_all = 63002; 52 optional bool goproto_stringer_all = 63003; 53 optional bool verbose_equal_all = 63004; 54 optional bool face_all = 63005; 55 optional bool gostring_all = 63006; 56 optional bool populate_all = 63007; 57 optional bool stringer_all = 63008; 58 optional bool onlyone_all = 63009; 59 60 optional bool equal_all = 63013; 61 optional bool description_all = 63014; 62 optional bool testgen_all = 63015; 63 optional bool benchgen_all = 63016; 64 optional bool marshaler_all = 63017; 65 optional bool unmarshaler_all = 63018; 66 optional bool stable_marshaler_all = 63019; 67 68 optional bool sizer_all = 63020; 69 70 optional bool goproto_enum_stringer_all = 63021; 71 optional bool enum_stringer_all = 63022; 72 73 optional bool unsafe_marshaler_all = 63023; 74 optional bool unsafe_unmarshaler_all = 63024; 75 76 optional bool goproto_extensions_map_all = 63025; 77 optional bool goproto_unrecognized_all = 63026; 78 optional bool gogoproto_import = 63027; 79 optional bool protosizer_all = 63028; 80 optional bool compare_all = 63029; 81 optional bool typedecl_all = 63030; 82 optional bool enumdecl_all = 63031; 83 84 optional bool goproto_registration = 63032; 85} 86 87extend google.protobuf.MessageOptions { 88 optional bool goproto_getters = 64001; 89 optional bool goproto_stringer = 64003; 90 optional bool verbose_equal = 64004; 91 optional bool face = 64005; 92 optional bool gostring = 64006; 93 optional bool populate = 64007; 94 optional bool stringer = 67008; 95 optional bool onlyone = 64009; 96 97 optional bool equal = 64013; 98 optional bool description = 64014; 99 optional bool testgen = 64015; 100 optional bool benchgen = 64016; 101 optional bool marshaler = 64017; 102 optional bool unmarshaler = 64018; 103 optional bool stable_marshaler = 64019; 104 105 optional bool sizer = 64020; 106 107 optional bool unsafe_marshaler = 64023; 108 optional bool unsafe_unmarshaler = 64024; 109 110 optional bool goproto_extensions_map = 64025; 111 optional bool goproto_unrecognized = 64026; 112 113 optional bool protosizer = 64028; 114 optional bool compare = 64029; 115 116 optional bool typedecl = 64030; 117} 118 119extend google.protobuf.FieldOptions { 120 optional bool nullable = 65001; 121 optional bool embed = 65002; 122 optional string customtype = 65003; 123 optional string customname = 65004; 124 optional string jsontag = 65005; 125 optional string moretags = 65006; 126 optional string casttype = 65007; 127 optional string castkey = 65008; 128 optional string castvalue = 65009; 129 130 optional bool stdtime = 65010; 131 optional bool stdduration = 65011; 132} 133