validate.pb.go 139 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106
  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // versions:
  3. // protoc-gen-go v1.30.0
  4. // protoc v4.22.2
  5. // source: validate/validate.proto
  6. package validate
  7. import (
  8. protoreflect "google.golang.org/protobuf/reflect/protoreflect"
  9. protoimpl "google.golang.org/protobuf/runtime/protoimpl"
  10. descriptorpb "google.golang.org/protobuf/types/descriptorpb"
  11. durationpb "google.golang.org/protobuf/types/known/durationpb"
  12. timestamppb "google.golang.org/protobuf/types/known/timestamppb"
  13. reflect "reflect"
  14. sync "sync"
  15. )
  16. const (
  17. // Verify that this generated code is sufficiently up-to-date.
  18. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
  19. // Verify that runtime/protoimpl is sufficiently up-to-date.
  20. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
  21. )
  22. // WellKnownRegex contain some well-known patterns.
  23. type KnownRegex int32
  24. const (
  25. KnownRegex_UNKNOWN KnownRegex = 0
  26. // HTTP header name as defined by RFC 7230.
  27. KnownRegex_HTTP_HEADER_NAME KnownRegex = 1
  28. // HTTP header value as defined by RFC 7230.
  29. KnownRegex_HTTP_HEADER_VALUE KnownRegex = 2
  30. )
  31. // Enum value maps for KnownRegex.
  32. var (
  33. KnownRegex_name = map[int32]string{
  34. 0: "UNKNOWN",
  35. 1: "HTTP_HEADER_NAME",
  36. 2: "HTTP_HEADER_VALUE",
  37. }
  38. KnownRegex_value = map[string]int32{
  39. "UNKNOWN": 0,
  40. "HTTP_HEADER_NAME": 1,
  41. "HTTP_HEADER_VALUE": 2,
  42. }
  43. )
  44. func (x KnownRegex) Enum() *KnownRegex {
  45. p := new(KnownRegex)
  46. *p = x
  47. return p
  48. }
  49. func (x KnownRegex) String() string {
  50. return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
  51. }
  52. func (KnownRegex) Descriptor() protoreflect.EnumDescriptor {
  53. return file_validate_validate_proto_enumTypes[0].Descriptor()
  54. }
  55. func (KnownRegex) Type() protoreflect.EnumType {
  56. return &file_validate_validate_proto_enumTypes[0]
  57. }
  58. func (x KnownRegex) Number() protoreflect.EnumNumber {
  59. return protoreflect.EnumNumber(x)
  60. }
  61. // Deprecated: Do not use.
  62. func (x *KnownRegex) UnmarshalJSON(b []byte) error {
  63. num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
  64. if err != nil {
  65. return err
  66. }
  67. *x = KnownRegex(num)
  68. return nil
  69. }
  70. // Deprecated: Use KnownRegex.Descriptor instead.
  71. func (KnownRegex) EnumDescriptor() ([]byte, []int) {
  72. return file_validate_validate_proto_rawDescGZIP(), []int{0}
  73. }
  74. // FieldRules encapsulates the rules for each type of field. Depending on the
  75. // field, the correct set should be used to ensure proper validations.
  76. type FieldRules struct {
  77. state protoimpl.MessageState
  78. sizeCache protoimpl.SizeCache
  79. unknownFields protoimpl.UnknownFields
  80. Message *MessageRules `protobuf:"bytes,17,opt,name=message" json:"message,omitempty"`
  81. // Types that are assignable to Type:
  82. //
  83. // *FieldRules_Float
  84. // *FieldRules_Double
  85. // *FieldRules_Int32
  86. // *FieldRules_Int64
  87. // *FieldRules_Uint32
  88. // *FieldRules_Uint64
  89. // *FieldRules_Sint32
  90. // *FieldRules_Sint64
  91. // *FieldRules_Fixed32
  92. // *FieldRules_Fixed64
  93. // *FieldRules_Sfixed32
  94. // *FieldRules_Sfixed64
  95. // *FieldRules_Bool
  96. // *FieldRules_String_
  97. // *FieldRules_Bytes
  98. // *FieldRules_Enum
  99. // *FieldRules_Repeated
  100. // *FieldRules_Map
  101. // *FieldRules_Any
  102. // *FieldRules_Duration
  103. // *FieldRules_Timestamp
  104. Type isFieldRules_Type `protobuf_oneof:"type"`
  105. }
  106. func (x *FieldRules) Reset() {
  107. *x = FieldRules{}
  108. if protoimpl.UnsafeEnabled {
  109. mi := &file_validate_validate_proto_msgTypes[0]
  110. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  111. ms.StoreMessageInfo(mi)
  112. }
  113. }
  114. func (x *FieldRules) String() string {
  115. return protoimpl.X.MessageStringOf(x)
  116. }
  117. func (*FieldRules) ProtoMessage() {}
  118. func (x *FieldRules) ProtoReflect() protoreflect.Message {
  119. mi := &file_validate_validate_proto_msgTypes[0]
  120. if protoimpl.UnsafeEnabled && x != nil {
  121. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  122. if ms.LoadMessageInfo() == nil {
  123. ms.StoreMessageInfo(mi)
  124. }
  125. return ms
  126. }
  127. return mi.MessageOf(x)
  128. }
  129. // Deprecated: Use FieldRules.ProtoReflect.Descriptor instead.
  130. func (*FieldRules) Descriptor() ([]byte, []int) {
  131. return file_validate_validate_proto_rawDescGZIP(), []int{0}
  132. }
  133. func (x *FieldRules) GetMessage() *MessageRules {
  134. if x != nil {
  135. return x.Message
  136. }
  137. return nil
  138. }
  139. func (m *FieldRules) GetType() isFieldRules_Type {
  140. if m != nil {
  141. return m.Type
  142. }
  143. return nil
  144. }
  145. func (x *FieldRules) GetFloat() *FloatRules {
  146. if x, ok := x.GetType().(*FieldRules_Float); ok {
  147. return x.Float
  148. }
  149. return nil
  150. }
  151. func (x *FieldRules) GetDouble() *DoubleRules {
  152. if x, ok := x.GetType().(*FieldRules_Double); ok {
  153. return x.Double
  154. }
  155. return nil
  156. }
  157. func (x *FieldRules) GetInt32() *Int32Rules {
  158. if x, ok := x.GetType().(*FieldRules_Int32); ok {
  159. return x.Int32
  160. }
  161. return nil
  162. }
  163. func (x *FieldRules) GetInt64() *Int64Rules {
  164. if x, ok := x.GetType().(*FieldRules_Int64); ok {
  165. return x.Int64
  166. }
  167. return nil
  168. }
  169. func (x *FieldRules) GetUint32() *UInt32Rules {
  170. if x, ok := x.GetType().(*FieldRules_Uint32); ok {
  171. return x.Uint32
  172. }
  173. return nil
  174. }
  175. func (x *FieldRules) GetUint64() *UInt64Rules {
  176. if x, ok := x.GetType().(*FieldRules_Uint64); ok {
  177. return x.Uint64
  178. }
  179. return nil
  180. }
  181. func (x *FieldRules) GetSint32() *SInt32Rules {
  182. if x, ok := x.GetType().(*FieldRules_Sint32); ok {
  183. return x.Sint32
  184. }
  185. return nil
  186. }
  187. func (x *FieldRules) GetSint64() *SInt64Rules {
  188. if x, ok := x.GetType().(*FieldRules_Sint64); ok {
  189. return x.Sint64
  190. }
  191. return nil
  192. }
  193. func (x *FieldRules) GetFixed32() *Fixed32Rules {
  194. if x, ok := x.GetType().(*FieldRules_Fixed32); ok {
  195. return x.Fixed32
  196. }
  197. return nil
  198. }
  199. func (x *FieldRules) GetFixed64() *Fixed64Rules {
  200. if x, ok := x.GetType().(*FieldRules_Fixed64); ok {
  201. return x.Fixed64
  202. }
  203. return nil
  204. }
  205. func (x *FieldRules) GetSfixed32() *SFixed32Rules {
  206. if x, ok := x.GetType().(*FieldRules_Sfixed32); ok {
  207. return x.Sfixed32
  208. }
  209. return nil
  210. }
  211. func (x *FieldRules) GetSfixed64() *SFixed64Rules {
  212. if x, ok := x.GetType().(*FieldRules_Sfixed64); ok {
  213. return x.Sfixed64
  214. }
  215. return nil
  216. }
  217. func (x *FieldRules) GetBool() *BoolRules {
  218. if x, ok := x.GetType().(*FieldRules_Bool); ok {
  219. return x.Bool
  220. }
  221. return nil
  222. }
  223. func (x *FieldRules) GetString_() *StringRules {
  224. if x, ok := x.GetType().(*FieldRules_String_); ok {
  225. return x.String_
  226. }
  227. return nil
  228. }
  229. func (x *FieldRules) GetBytes() *BytesRules {
  230. if x, ok := x.GetType().(*FieldRules_Bytes); ok {
  231. return x.Bytes
  232. }
  233. return nil
  234. }
  235. func (x *FieldRules) GetEnum() *EnumRules {
  236. if x, ok := x.GetType().(*FieldRules_Enum); ok {
  237. return x.Enum
  238. }
  239. return nil
  240. }
  241. func (x *FieldRules) GetRepeated() *RepeatedRules {
  242. if x, ok := x.GetType().(*FieldRules_Repeated); ok {
  243. return x.Repeated
  244. }
  245. return nil
  246. }
  247. func (x *FieldRules) GetMap() *MapRules {
  248. if x, ok := x.GetType().(*FieldRules_Map); ok {
  249. return x.Map
  250. }
  251. return nil
  252. }
  253. func (x *FieldRules) GetAny() *AnyRules {
  254. if x, ok := x.GetType().(*FieldRules_Any); ok {
  255. return x.Any
  256. }
  257. return nil
  258. }
  259. func (x *FieldRules) GetDuration() *DurationRules {
  260. if x, ok := x.GetType().(*FieldRules_Duration); ok {
  261. return x.Duration
  262. }
  263. return nil
  264. }
  265. func (x *FieldRules) GetTimestamp() *TimestampRules {
  266. if x, ok := x.GetType().(*FieldRules_Timestamp); ok {
  267. return x.Timestamp
  268. }
  269. return nil
  270. }
  271. type isFieldRules_Type interface {
  272. isFieldRules_Type()
  273. }
  274. type FieldRules_Float struct {
  275. // Scalar Field Types
  276. Float *FloatRules `protobuf:"bytes,1,opt,name=float,oneof"`
  277. }
  278. type FieldRules_Double struct {
  279. Double *DoubleRules `protobuf:"bytes,2,opt,name=double,oneof"`
  280. }
  281. type FieldRules_Int32 struct {
  282. Int32 *Int32Rules `protobuf:"bytes,3,opt,name=int32,oneof"`
  283. }
  284. type FieldRules_Int64 struct {
  285. Int64 *Int64Rules `protobuf:"bytes,4,opt,name=int64,oneof"`
  286. }
  287. type FieldRules_Uint32 struct {
  288. Uint32 *UInt32Rules `protobuf:"bytes,5,opt,name=uint32,oneof"`
  289. }
  290. type FieldRules_Uint64 struct {
  291. Uint64 *UInt64Rules `protobuf:"bytes,6,opt,name=uint64,oneof"`
  292. }
  293. type FieldRules_Sint32 struct {
  294. Sint32 *SInt32Rules `protobuf:"bytes,7,opt,name=sint32,oneof"`
  295. }
  296. type FieldRules_Sint64 struct {
  297. Sint64 *SInt64Rules `protobuf:"bytes,8,opt,name=sint64,oneof"`
  298. }
  299. type FieldRules_Fixed32 struct {
  300. Fixed32 *Fixed32Rules `protobuf:"bytes,9,opt,name=fixed32,oneof"`
  301. }
  302. type FieldRules_Fixed64 struct {
  303. Fixed64 *Fixed64Rules `protobuf:"bytes,10,opt,name=fixed64,oneof"`
  304. }
  305. type FieldRules_Sfixed32 struct {
  306. Sfixed32 *SFixed32Rules `protobuf:"bytes,11,opt,name=sfixed32,oneof"`
  307. }
  308. type FieldRules_Sfixed64 struct {
  309. Sfixed64 *SFixed64Rules `protobuf:"bytes,12,opt,name=sfixed64,oneof"`
  310. }
  311. type FieldRules_Bool struct {
  312. Bool *BoolRules `protobuf:"bytes,13,opt,name=bool,oneof"`
  313. }
  314. type FieldRules_String_ struct {
  315. String_ *StringRules `protobuf:"bytes,14,opt,name=string,oneof"`
  316. }
  317. type FieldRules_Bytes struct {
  318. Bytes *BytesRules `protobuf:"bytes,15,opt,name=bytes,oneof"`
  319. }
  320. type FieldRules_Enum struct {
  321. // Complex Field Types
  322. Enum *EnumRules `protobuf:"bytes,16,opt,name=enum,oneof"`
  323. }
  324. type FieldRules_Repeated struct {
  325. Repeated *RepeatedRules `protobuf:"bytes,18,opt,name=repeated,oneof"`
  326. }
  327. type FieldRules_Map struct {
  328. Map *MapRules `protobuf:"bytes,19,opt,name=map,oneof"`
  329. }
  330. type FieldRules_Any struct {
  331. // Well-Known Field Types
  332. Any *AnyRules `protobuf:"bytes,20,opt,name=any,oneof"`
  333. }
  334. type FieldRules_Duration struct {
  335. Duration *DurationRules `protobuf:"bytes,21,opt,name=duration,oneof"`
  336. }
  337. type FieldRules_Timestamp struct {
  338. Timestamp *TimestampRules `protobuf:"bytes,22,opt,name=timestamp,oneof"`
  339. }
  340. func (*FieldRules_Float) isFieldRules_Type() {}
  341. func (*FieldRules_Double) isFieldRules_Type() {}
  342. func (*FieldRules_Int32) isFieldRules_Type() {}
  343. func (*FieldRules_Int64) isFieldRules_Type() {}
  344. func (*FieldRules_Uint32) isFieldRules_Type() {}
  345. func (*FieldRules_Uint64) isFieldRules_Type() {}
  346. func (*FieldRules_Sint32) isFieldRules_Type() {}
  347. func (*FieldRules_Sint64) isFieldRules_Type() {}
  348. func (*FieldRules_Fixed32) isFieldRules_Type() {}
  349. func (*FieldRules_Fixed64) isFieldRules_Type() {}
  350. func (*FieldRules_Sfixed32) isFieldRules_Type() {}
  351. func (*FieldRules_Sfixed64) isFieldRules_Type() {}
  352. func (*FieldRules_Bool) isFieldRules_Type() {}
  353. func (*FieldRules_String_) isFieldRules_Type() {}
  354. func (*FieldRules_Bytes) isFieldRules_Type() {}
  355. func (*FieldRules_Enum) isFieldRules_Type() {}
  356. func (*FieldRules_Repeated) isFieldRules_Type() {}
  357. func (*FieldRules_Map) isFieldRules_Type() {}
  358. func (*FieldRules_Any) isFieldRules_Type() {}
  359. func (*FieldRules_Duration) isFieldRules_Type() {}
  360. func (*FieldRules_Timestamp) isFieldRules_Type() {}
  361. // FloatRules describes the constraints applied to `float` values
  362. type FloatRules struct {
  363. state protoimpl.MessageState
  364. sizeCache protoimpl.SizeCache
  365. unknownFields protoimpl.UnknownFields
  366. // Const specifies that this field must be exactly the specified value
  367. Const *float32 `protobuf:"fixed32,1,opt,name=const" json:"const,omitempty"`
  368. // Lt specifies that this field must be less than the specified value,
  369. // exclusive
  370. Lt *float32 `protobuf:"fixed32,2,opt,name=lt" json:"lt,omitempty"`
  371. // Lte specifies that this field must be less than or equal to the
  372. // specified value, inclusive
  373. Lte *float32 `protobuf:"fixed32,3,opt,name=lte" json:"lte,omitempty"`
  374. // Gt specifies that this field must be greater than the specified value,
  375. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  376. // range is reversed.
  377. Gt *float32 `protobuf:"fixed32,4,opt,name=gt" json:"gt,omitempty"`
  378. // Gte specifies that this field must be greater than or equal to the
  379. // specified value, inclusive. If the value of Gte is larger than a
  380. // specified Lt or Lte, the range is reversed.
  381. Gte *float32 `protobuf:"fixed32,5,opt,name=gte" json:"gte,omitempty"`
  382. // In specifies that this field must be equal to one of the specified
  383. // values
  384. In []float32 `protobuf:"fixed32,6,rep,name=in" json:"in,omitempty"`
  385. // NotIn specifies that this field cannot be equal to one of the specified
  386. // values
  387. NotIn []float32 `protobuf:"fixed32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  388. // IgnoreEmpty specifies that the validation rules of this field should be
  389. // evaluated only if the field is not empty
  390. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  391. }
  392. func (x *FloatRules) Reset() {
  393. *x = FloatRules{}
  394. if protoimpl.UnsafeEnabled {
  395. mi := &file_validate_validate_proto_msgTypes[1]
  396. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  397. ms.StoreMessageInfo(mi)
  398. }
  399. }
  400. func (x *FloatRules) String() string {
  401. return protoimpl.X.MessageStringOf(x)
  402. }
  403. func (*FloatRules) ProtoMessage() {}
  404. func (x *FloatRules) ProtoReflect() protoreflect.Message {
  405. mi := &file_validate_validate_proto_msgTypes[1]
  406. if protoimpl.UnsafeEnabled && x != nil {
  407. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  408. if ms.LoadMessageInfo() == nil {
  409. ms.StoreMessageInfo(mi)
  410. }
  411. return ms
  412. }
  413. return mi.MessageOf(x)
  414. }
  415. // Deprecated: Use FloatRules.ProtoReflect.Descriptor instead.
  416. func (*FloatRules) Descriptor() ([]byte, []int) {
  417. return file_validate_validate_proto_rawDescGZIP(), []int{1}
  418. }
  419. func (x *FloatRules) GetConst() float32 {
  420. if x != nil && x.Const != nil {
  421. return *x.Const
  422. }
  423. return 0
  424. }
  425. func (x *FloatRules) GetLt() float32 {
  426. if x != nil && x.Lt != nil {
  427. return *x.Lt
  428. }
  429. return 0
  430. }
  431. func (x *FloatRules) GetLte() float32 {
  432. if x != nil && x.Lte != nil {
  433. return *x.Lte
  434. }
  435. return 0
  436. }
  437. func (x *FloatRules) GetGt() float32 {
  438. if x != nil && x.Gt != nil {
  439. return *x.Gt
  440. }
  441. return 0
  442. }
  443. func (x *FloatRules) GetGte() float32 {
  444. if x != nil && x.Gte != nil {
  445. return *x.Gte
  446. }
  447. return 0
  448. }
  449. func (x *FloatRules) GetIn() []float32 {
  450. if x != nil {
  451. return x.In
  452. }
  453. return nil
  454. }
  455. func (x *FloatRules) GetNotIn() []float32 {
  456. if x != nil {
  457. return x.NotIn
  458. }
  459. return nil
  460. }
  461. func (x *FloatRules) GetIgnoreEmpty() bool {
  462. if x != nil && x.IgnoreEmpty != nil {
  463. return *x.IgnoreEmpty
  464. }
  465. return false
  466. }
  467. // DoubleRules describes the constraints applied to `double` values
  468. type DoubleRules struct {
  469. state protoimpl.MessageState
  470. sizeCache protoimpl.SizeCache
  471. unknownFields protoimpl.UnknownFields
  472. // Const specifies that this field must be exactly the specified value
  473. Const *float64 `protobuf:"fixed64,1,opt,name=const" json:"const,omitempty"`
  474. // Lt specifies that this field must be less than the specified value,
  475. // exclusive
  476. Lt *float64 `protobuf:"fixed64,2,opt,name=lt" json:"lt,omitempty"`
  477. // Lte specifies that this field must be less than or equal to the
  478. // specified value, inclusive
  479. Lte *float64 `protobuf:"fixed64,3,opt,name=lte" json:"lte,omitempty"`
  480. // Gt specifies that this field must be greater than the specified value,
  481. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  482. // range is reversed.
  483. Gt *float64 `protobuf:"fixed64,4,opt,name=gt" json:"gt,omitempty"`
  484. // Gte specifies that this field must be greater than or equal to the
  485. // specified value, inclusive. If the value of Gte is larger than a
  486. // specified Lt or Lte, the range is reversed.
  487. Gte *float64 `protobuf:"fixed64,5,opt,name=gte" json:"gte,omitempty"`
  488. // In specifies that this field must be equal to one of the specified
  489. // values
  490. In []float64 `protobuf:"fixed64,6,rep,name=in" json:"in,omitempty"`
  491. // NotIn specifies that this field cannot be equal to one of the specified
  492. // values
  493. NotIn []float64 `protobuf:"fixed64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  494. // IgnoreEmpty specifies that the validation rules of this field should be
  495. // evaluated only if the field is not empty
  496. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  497. }
  498. func (x *DoubleRules) Reset() {
  499. *x = DoubleRules{}
  500. if protoimpl.UnsafeEnabled {
  501. mi := &file_validate_validate_proto_msgTypes[2]
  502. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  503. ms.StoreMessageInfo(mi)
  504. }
  505. }
  506. func (x *DoubleRules) String() string {
  507. return protoimpl.X.MessageStringOf(x)
  508. }
  509. func (*DoubleRules) ProtoMessage() {}
  510. func (x *DoubleRules) ProtoReflect() protoreflect.Message {
  511. mi := &file_validate_validate_proto_msgTypes[2]
  512. if protoimpl.UnsafeEnabled && x != nil {
  513. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  514. if ms.LoadMessageInfo() == nil {
  515. ms.StoreMessageInfo(mi)
  516. }
  517. return ms
  518. }
  519. return mi.MessageOf(x)
  520. }
  521. // Deprecated: Use DoubleRules.ProtoReflect.Descriptor instead.
  522. func (*DoubleRules) Descriptor() ([]byte, []int) {
  523. return file_validate_validate_proto_rawDescGZIP(), []int{2}
  524. }
  525. func (x *DoubleRules) GetConst() float64 {
  526. if x != nil && x.Const != nil {
  527. return *x.Const
  528. }
  529. return 0
  530. }
  531. func (x *DoubleRules) GetLt() float64 {
  532. if x != nil && x.Lt != nil {
  533. return *x.Lt
  534. }
  535. return 0
  536. }
  537. func (x *DoubleRules) GetLte() float64 {
  538. if x != nil && x.Lte != nil {
  539. return *x.Lte
  540. }
  541. return 0
  542. }
  543. func (x *DoubleRules) GetGt() float64 {
  544. if x != nil && x.Gt != nil {
  545. return *x.Gt
  546. }
  547. return 0
  548. }
  549. func (x *DoubleRules) GetGte() float64 {
  550. if x != nil && x.Gte != nil {
  551. return *x.Gte
  552. }
  553. return 0
  554. }
  555. func (x *DoubleRules) GetIn() []float64 {
  556. if x != nil {
  557. return x.In
  558. }
  559. return nil
  560. }
  561. func (x *DoubleRules) GetNotIn() []float64 {
  562. if x != nil {
  563. return x.NotIn
  564. }
  565. return nil
  566. }
  567. func (x *DoubleRules) GetIgnoreEmpty() bool {
  568. if x != nil && x.IgnoreEmpty != nil {
  569. return *x.IgnoreEmpty
  570. }
  571. return false
  572. }
  573. // Int32Rules describes the constraints applied to `int32` values
  574. type Int32Rules struct {
  575. state protoimpl.MessageState
  576. sizeCache protoimpl.SizeCache
  577. unknownFields protoimpl.UnknownFields
  578. // Const specifies that this field must be exactly the specified value
  579. Const *int32 `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
  580. // Lt specifies that this field must be less than the specified value,
  581. // exclusive
  582. Lt *int32 `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
  583. // Lte specifies that this field must be less than or equal to the
  584. // specified value, inclusive
  585. Lte *int32 `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
  586. // Gt specifies that this field must be greater than the specified value,
  587. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  588. // range is reversed.
  589. Gt *int32 `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
  590. // Gte specifies that this field must be greater than or equal to the
  591. // specified value, inclusive. If the value of Gte is larger than a
  592. // specified Lt or Lte, the range is reversed.
  593. Gte *int32 `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
  594. // In specifies that this field must be equal to one of the specified
  595. // values
  596. In []int32 `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
  597. // NotIn specifies that this field cannot be equal to one of the specified
  598. // values
  599. NotIn []int32 `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  600. // IgnoreEmpty specifies that the validation rules of this field should be
  601. // evaluated only if the field is not empty
  602. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  603. }
  604. func (x *Int32Rules) Reset() {
  605. *x = Int32Rules{}
  606. if protoimpl.UnsafeEnabled {
  607. mi := &file_validate_validate_proto_msgTypes[3]
  608. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  609. ms.StoreMessageInfo(mi)
  610. }
  611. }
  612. func (x *Int32Rules) String() string {
  613. return protoimpl.X.MessageStringOf(x)
  614. }
  615. func (*Int32Rules) ProtoMessage() {}
  616. func (x *Int32Rules) ProtoReflect() protoreflect.Message {
  617. mi := &file_validate_validate_proto_msgTypes[3]
  618. if protoimpl.UnsafeEnabled && x != nil {
  619. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  620. if ms.LoadMessageInfo() == nil {
  621. ms.StoreMessageInfo(mi)
  622. }
  623. return ms
  624. }
  625. return mi.MessageOf(x)
  626. }
  627. // Deprecated: Use Int32Rules.ProtoReflect.Descriptor instead.
  628. func (*Int32Rules) Descriptor() ([]byte, []int) {
  629. return file_validate_validate_proto_rawDescGZIP(), []int{3}
  630. }
  631. func (x *Int32Rules) GetConst() int32 {
  632. if x != nil && x.Const != nil {
  633. return *x.Const
  634. }
  635. return 0
  636. }
  637. func (x *Int32Rules) GetLt() int32 {
  638. if x != nil && x.Lt != nil {
  639. return *x.Lt
  640. }
  641. return 0
  642. }
  643. func (x *Int32Rules) GetLte() int32 {
  644. if x != nil && x.Lte != nil {
  645. return *x.Lte
  646. }
  647. return 0
  648. }
  649. func (x *Int32Rules) GetGt() int32 {
  650. if x != nil && x.Gt != nil {
  651. return *x.Gt
  652. }
  653. return 0
  654. }
  655. func (x *Int32Rules) GetGte() int32 {
  656. if x != nil && x.Gte != nil {
  657. return *x.Gte
  658. }
  659. return 0
  660. }
  661. func (x *Int32Rules) GetIn() []int32 {
  662. if x != nil {
  663. return x.In
  664. }
  665. return nil
  666. }
  667. func (x *Int32Rules) GetNotIn() []int32 {
  668. if x != nil {
  669. return x.NotIn
  670. }
  671. return nil
  672. }
  673. func (x *Int32Rules) GetIgnoreEmpty() bool {
  674. if x != nil && x.IgnoreEmpty != nil {
  675. return *x.IgnoreEmpty
  676. }
  677. return false
  678. }
  679. // Int64Rules describes the constraints applied to `int64` values
  680. type Int64Rules struct {
  681. state protoimpl.MessageState
  682. sizeCache protoimpl.SizeCache
  683. unknownFields protoimpl.UnknownFields
  684. // Const specifies that this field must be exactly the specified value
  685. Const *int64 `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
  686. // Lt specifies that this field must be less than the specified value,
  687. // exclusive
  688. Lt *int64 `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
  689. // Lte specifies that this field must be less than or equal to the
  690. // specified value, inclusive
  691. Lte *int64 `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
  692. // Gt specifies that this field must be greater than the specified value,
  693. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  694. // range is reversed.
  695. Gt *int64 `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
  696. // Gte specifies that this field must be greater than or equal to the
  697. // specified value, inclusive. If the value of Gte is larger than a
  698. // specified Lt or Lte, the range is reversed.
  699. Gte *int64 `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
  700. // In specifies that this field must be equal to one of the specified
  701. // values
  702. In []int64 `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
  703. // NotIn specifies that this field cannot be equal to one of the specified
  704. // values
  705. NotIn []int64 `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  706. // IgnoreEmpty specifies that the validation rules of this field should be
  707. // evaluated only if the field is not empty
  708. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  709. }
  710. func (x *Int64Rules) Reset() {
  711. *x = Int64Rules{}
  712. if protoimpl.UnsafeEnabled {
  713. mi := &file_validate_validate_proto_msgTypes[4]
  714. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  715. ms.StoreMessageInfo(mi)
  716. }
  717. }
  718. func (x *Int64Rules) String() string {
  719. return protoimpl.X.MessageStringOf(x)
  720. }
  721. func (*Int64Rules) ProtoMessage() {}
  722. func (x *Int64Rules) ProtoReflect() protoreflect.Message {
  723. mi := &file_validate_validate_proto_msgTypes[4]
  724. if protoimpl.UnsafeEnabled && x != nil {
  725. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  726. if ms.LoadMessageInfo() == nil {
  727. ms.StoreMessageInfo(mi)
  728. }
  729. return ms
  730. }
  731. return mi.MessageOf(x)
  732. }
  733. // Deprecated: Use Int64Rules.ProtoReflect.Descriptor instead.
  734. func (*Int64Rules) Descriptor() ([]byte, []int) {
  735. return file_validate_validate_proto_rawDescGZIP(), []int{4}
  736. }
  737. func (x *Int64Rules) GetConst() int64 {
  738. if x != nil && x.Const != nil {
  739. return *x.Const
  740. }
  741. return 0
  742. }
  743. func (x *Int64Rules) GetLt() int64 {
  744. if x != nil && x.Lt != nil {
  745. return *x.Lt
  746. }
  747. return 0
  748. }
  749. func (x *Int64Rules) GetLte() int64 {
  750. if x != nil && x.Lte != nil {
  751. return *x.Lte
  752. }
  753. return 0
  754. }
  755. func (x *Int64Rules) GetGt() int64 {
  756. if x != nil && x.Gt != nil {
  757. return *x.Gt
  758. }
  759. return 0
  760. }
  761. func (x *Int64Rules) GetGte() int64 {
  762. if x != nil && x.Gte != nil {
  763. return *x.Gte
  764. }
  765. return 0
  766. }
  767. func (x *Int64Rules) GetIn() []int64 {
  768. if x != nil {
  769. return x.In
  770. }
  771. return nil
  772. }
  773. func (x *Int64Rules) GetNotIn() []int64 {
  774. if x != nil {
  775. return x.NotIn
  776. }
  777. return nil
  778. }
  779. func (x *Int64Rules) GetIgnoreEmpty() bool {
  780. if x != nil && x.IgnoreEmpty != nil {
  781. return *x.IgnoreEmpty
  782. }
  783. return false
  784. }
  785. // UInt32Rules describes the constraints applied to `uint32` values
  786. type UInt32Rules struct {
  787. state protoimpl.MessageState
  788. sizeCache protoimpl.SizeCache
  789. unknownFields protoimpl.UnknownFields
  790. // Const specifies that this field must be exactly the specified value
  791. Const *uint32 `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
  792. // Lt specifies that this field must be less than the specified value,
  793. // exclusive
  794. Lt *uint32 `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
  795. // Lte specifies that this field must be less than or equal to the
  796. // specified value, inclusive
  797. Lte *uint32 `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
  798. // Gt specifies that this field must be greater than the specified value,
  799. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  800. // range is reversed.
  801. Gt *uint32 `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
  802. // Gte specifies that this field must be greater than or equal to the
  803. // specified value, inclusive. If the value of Gte is larger than a
  804. // specified Lt or Lte, the range is reversed.
  805. Gte *uint32 `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
  806. // In specifies that this field must be equal to one of the specified
  807. // values
  808. In []uint32 `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
  809. // NotIn specifies that this field cannot be equal to one of the specified
  810. // values
  811. NotIn []uint32 `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  812. // IgnoreEmpty specifies that the validation rules of this field should be
  813. // evaluated only if the field is not empty
  814. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  815. }
  816. func (x *UInt32Rules) Reset() {
  817. *x = UInt32Rules{}
  818. if protoimpl.UnsafeEnabled {
  819. mi := &file_validate_validate_proto_msgTypes[5]
  820. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  821. ms.StoreMessageInfo(mi)
  822. }
  823. }
  824. func (x *UInt32Rules) String() string {
  825. return protoimpl.X.MessageStringOf(x)
  826. }
  827. func (*UInt32Rules) ProtoMessage() {}
  828. func (x *UInt32Rules) ProtoReflect() protoreflect.Message {
  829. mi := &file_validate_validate_proto_msgTypes[5]
  830. if protoimpl.UnsafeEnabled && x != nil {
  831. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  832. if ms.LoadMessageInfo() == nil {
  833. ms.StoreMessageInfo(mi)
  834. }
  835. return ms
  836. }
  837. return mi.MessageOf(x)
  838. }
  839. // Deprecated: Use UInt32Rules.ProtoReflect.Descriptor instead.
  840. func (*UInt32Rules) Descriptor() ([]byte, []int) {
  841. return file_validate_validate_proto_rawDescGZIP(), []int{5}
  842. }
  843. func (x *UInt32Rules) GetConst() uint32 {
  844. if x != nil && x.Const != nil {
  845. return *x.Const
  846. }
  847. return 0
  848. }
  849. func (x *UInt32Rules) GetLt() uint32 {
  850. if x != nil && x.Lt != nil {
  851. return *x.Lt
  852. }
  853. return 0
  854. }
  855. func (x *UInt32Rules) GetLte() uint32 {
  856. if x != nil && x.Lte != nil {
  857. return *x.Lte
  858. }
  859. return 0
  860. }
  861. func (x *UInt32Rules) GetGt() uint32 {
  862. if x != nil && x.Gt != nil {
  863. return *x.Gt
  864. }
  865. return 0
  866. }
  867. func (x *UInt32Rules) GetGte() uint32 {
  868. if x != nil && x.Gte != nil {
  869. return *x.Gte
  870. }
  871. return 0
  872. }
  873. func (x *UInt32Rules) GetIn() []uint32 {
  874. if x != nil {
  875. return x.In
  876. }
  877. return nil
  878. }
  879. func (x *UInt32Rules) GetNotIn() []uint32 {
  880. if x != nil {
  881. return x.NotIn
  882. }
  883. return nil
  884. }
  885. func (x *UInt32Rules) GetIgnoreEmpty() bool {
  886. if x != nil && x.IgnoreEmpty != nil {
  887. return *x.IgnoreEmpty
  888. }
  889. return false
  890. }
  891. // UInt64Rules describes the constraints applied to `uint64` values
  892. type UInt64Rules struct {
  893. state protoimpl.MessageState
  894. sizeCache protoimpl.SizeCache
  895. unknownFields protoimpl.UnknownFields
  896. // Const specifies that this field must be exactly the specified value
  897. Const *uint64 `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
  898. // Lt specifies that this field must be less than the specified value,
  899. // exclusive
  900. Lt *uint64 `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
  901. // Lte specifies that this field must be less than or equal to the
  902. // specified value, inclusive
  903. Lte *uint64 `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
  904. // Gt specifies that this field must be greater than the specified value,
  905. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  906. // range is reversed.
  907. Gt *uint64 `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
  908. // Gte specifies that this field must be greater than or equal to the
  909. // specified value, inclusive. If the value of Gte is larger than a
  910. // specified Lt or Lte, the range is reversed.
  911. Gte *uint64 `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
  912. // In specifies that this field must be equal to one of the specified
  913. // values
  914. In []uint64 `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
  915. // NotIn specifies that this field cannot be equal to one of the specified
  916. // values
  917. NotIn []uint64 `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  918. // IgnoreEmpty specifies that the validation rules of this field should be
  919. // evaluated only if the field is not empty
  920. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  921. }
  922. func (x *UInt64Rules) Reset() {
  923. *x = UInt64Rules{}
  924. if protoimpl.UnsafeEnabled {
  925. mi := &file_validate_validate_proto_msgTypes[6]
  926. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  927. ms.StoreMessageInfo(mi)
  928. }
  929. }
  930. func (x *UInt64Rules) String() string {
  931. return protoimpl.X.MessageStringOf(x)
  932. }
  933. func (*UInt64Rules) ProtoMessage() {}
  934. func (x *UInt64Rules) ProtoReflect() protoreflect.Message {
  935. mi := &file_validate_validate_proto_msgTypes[6]
  936. if protoimpl.UnsafeEnabled && x != nil {
  937. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  938. if ms.LoadMessageInfo() == nil {
  939. ms.StoreMessageInfo(mi)
  940. }
  941. return ms
  942. }
  943. return mi.MessageOf(x)
  944. }
  945. // Deprecated: Use UInt64Rules.ProtoReflect.Descriptor instead.
  946. func (*UInt64Rules) Descriptor() ([]byte, []int) {
  947. return file_validate_validate_proto_rawDescGZIP(), []int{6}
  948. }
  949. func (x *UInt64Rules) GetConst() uint64 {
  950. if x != nil && x.Const != nil {
  951. return *x.Const
  952. }
  953. return 0
  954. }
  955. func (x *UInt64Rules) GetLt() uint64 {
  956. if x != nil && x.Lt != nil {
  957. return *x.Lt
  958. }
  959. return 0
  960. }
  961. func (x *UInt64Rules) GetLte() uint64 {
  962. if x != nil && x.Lte != nil {
  963. return *x.Lte
  964. }
  965. return 0
  966. }
  967. func (x *UInt64Rules) GetGt() uint64 {
  968. if x != nil && x.Gt != nil {
  969. return *x.Gt
  970. }
  971. return 0
  972. }
  973. func (x *UInt64Rules) GetGte() uint64 {
  974. if x != nil && x.Gte != nil {
  975. return *x.Gte
  976. }
  977. return 0
  978. }
  979. func (x *UInt64Rules) GetIn() []uint64 {
  980. if x != nil {
  981. return x.In
  982. }
  983. return nil
  984. }
  985. func (x *UInt64Rules) GetNotIn() []uint64 {
  986. if x != nil {
  987. return x.NotIn
  988. }
  989. return nil
  990. }
  991. func (x *UInt64Rules) GetIgnoreEmpty() bool {
  992. if x != nil && x.IgnoreEmpty != nil {
  993. return *x.IgnoreEmpty
  994. }
  995. return false
  996. }
  997. // SInt32Rules describes the constraints applied to `sint32` values
  998. type SInt32Rules struct {
  999. state protoimpl.MessageState
  1000. sizeCache protoimpl.SizeCache
  1001. unknownFields protoimpl.UnknownFields
  1002. // Const specifies that this field must be exactly the specified value
  1003. Const *int32 `protobuf:"zigzag32,1,opt,name=const" json:"const,omitempty"`
  1004. // Lt specifies that this field must be less than the specified value,
  1005. // exclusive
  1006. Lt *int32 `protobuf:"zigzag32,2,opt,name=lt" json:"lt,omitempty"`
  1007. // Lte specifies that this field must be less than or equal to the
  1008. // specified value, inclusive
  1009. Lte *int32 `protobuf:"zigzag32,3,opt,name=lte" json:"lte,omitempty"`
  1010. // Gt specifies that this field must be greater than the specified value,
  1011. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  1012. // range is reversed.
  1013. Gt *int32 `protobuf:"zigzag32,4,opt,name=gt" json:"gt,omitempty"`
  1014. // Gte specifies that this field must be greater than or equal to the
  1015. // specified value, inclusive. If the value of Gte is larger than a
  1016. // specified Lt or Lte, the range is reversed.
  1017. Gte *int32 `protobuf:"zigzag32,5,opt,name=gte" json:"gte,omitempty"`
  1018. // In specifies that this field must be equal to one of the specified
  1019. // values
  1020. In []int32 `protobuf:"zigzag32,6,rep,name=in" json:"in,omitempty"`
  1021. // NotIn specifies that this field cannot be equal to one of the specified
  1022. // values
  1023. NotIn []int32 `protobuf:"zigzag32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  1024. // IgnoreEmpty specifies that the validation rules of this field should be
  1025. // evaluated only if the field is not empty
  1026. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  1027. }
  1028. func (x *SInt32Rules) Reset() {
  1029. *x = SInt32Rules{}
  1030. if protoimpl.UnsafeEnabled {
  1031. mi := &file_validate_validate_proto_msgTypes[7]
  1032. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1033. ms.StoreMessageInfo(mi)
  1034. }
  1035. }
  1036. func (x *SInt32Rules) String() string {
  1037. return protoimpl.X.MessageStringOf(x)
  1038. }
  1039. func (*SInt32Rules) ProtoMessage() {}
  1040. func (x *SInt32Rules) ProtoReflect() protoreflect.Message {
  1041. mi := &file_validate_validate_proto_msgTypes[7]
  1042. if protoimpl.UnsafeEnabled && x != nil {
  1043. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1044. if ms.LoadMessageInfo() == nil {
  1045. ms.StoreMessageInfo(mi)
  1046. }
  1047. return ms
  1048. }
  1049. return mi.MessageOf(x)
  1050. }
  1051. // Deprecated: Use SInt32Rules.ProtoReflect.Descriptor instead.
  1052. func (*SInt32Rules) Descriptor() ([]byte, []int) {
  1053. return file_validate_validate_proto_rawDescGZIP(), []int{7}
  1054. }
  1055. func (x *SInt32Rules) GetConst() int32 {
  1056. if x != nil && x.Const != nil {
  1057. return *x.Const
  1058. }
  1059. return 0
  1060. }
  1061. func (x *SInt32Rules) GetLt() int32 {
  1062. if x != nil && x.Lt != nil {
  1063. return *x.Lt
  1064. }
  1065. return 0
  1066. }
  1067. func (x *SInt32Rules) GetLte() int32 {
  1068. if x != nil && x.Lte != nil {
  1069. return *x.Lte
  1070. }
  1071. return 0
  1072. }
  1073. func (x *SInt32Rules) GetGt() int32 {
  1074. if x != nil && x.Gt != nil {
  1075. return *x.Gt
  1076. }
  1077. return 0
  1078. }
  1079. func (x *SInt32Rules) GetGte() int32 {
  1080. if x != nil && x.Gte != nil {
  1081. return *x.Gte
  1082. }
  1083. return 0
  1084. }
  1085. func (x *SInt32Rules) GetIn() []int32 {
  1086. if x != nil {
  1087. return x.In
  1088. }
  1089. return nil
  1090. }
  1091. func (x *SInt32Rules) GetNotIn() []int32 {
  1092. if x != nil {
  1093. return x.NotIn
  1094. }
  1095. return nil
  1096. }
  1097. func (x *SInt32Rules) GetIgnoreEmpty() bool {
  1098. if x != nil && x.IgnoreEmpty != nil {
  1099. return *x.IgnoreEmpty
  1100. }
  1101. return false
  1102. }
  1103. // SInt64Rules describes the constraints applied to `sint64` values
  1104. type SInt64Rules struct {
  1105. state protoimpl.MessageState
  1106. sizeCache protoimpl.SizeCache
  1107. unknownFields protoimpl.UnknownFields
  1108. // Const specifies that this field must be exactly the specified value
  1109. Const *int64 `protobuf:"zigzag64,1,opt,name=const" json:"const,omitempty"`
  1110. // Lt specifies that this field must be less than the specified value,
  1111. // exclusive
  1112. Lt *int64 `protobuf:"zigzag64,2,opt,name=lt" json:"lt,omitempty"`
  1113. // Lte specifies that this field must be less than or equal to the
  1114. // specified value, inclusive
  1115. Lte *int64 `protobuf:"zigzag64,3,opt,name=lte" json:"lte,omitempty"`
  1116. // Gt specifies that this field must be greater than the specified value,
  1117. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  1118. // range is reversed.
  1119. Gt *int64 `protobuf:"zigzag64,4,opt,name=gt" json:"gt,omitempty"`
  1120. // Gte specifies that this field must be greater than or equal to the
  1121. // specified value, inclusive. If the value of Gte is larger than a
  1122. // specified Lt or Lte, the range is reversed.
  1123. Gte *int64 `protobuf:"zigzag64,5,opt,name=gte" json:"gte,omitempty"`
  1124. // In specifies that this field must be equal to one of the specified
  1125. // values
  1126. In []int64 `protobuf:"zigzag64,6,rep,name=in" json:"in,omitempty"`
  1127. // NotIn specifies that this field cannot be equal to one of the specified
  1128. // values
  1129. NotIn []int64 `protobuf:"zigzag64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  1130. // IgnoreEmpty specifies that the validation rules of this field should be
  1131. // evaluated only if the field is not empty
  1132. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  1133. }
  1134. func (x *SInt64Rules) Reset() {
  1135. *x = SInt64Rules{}
  1136. if protoimpl.UnsafeEnabled {
  1137. mi := &file_validate_validate_proto_msgTypes[8]
  1138. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1139. ms.StoreMessageInfo(mi)
  1140. }
  1141. }
  1142. func (x *SInt64Rules) String() string {
  1143. return protoimpl.X.MessageStringOf(x)
  1144. }
  1145. func (*SInt64Rules) ProtoMessage() {}
  1146. func (x *SInt64Rules) ProtoReflect() protoreflect.Message {
  1147. mi := &file_validate_validate_proto_msgTypes[8]
  1148. if protoimpl.UnsafeEnabled && x != nil {
  1149. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1150. if ms.LoadMessageInfo() == nil {
  1151. ms.StoreMessageInfo(mi)
  1152. }
  1153. return ms
  1154. }
  1155. return mi.MessageOf(x)
  1156. }
  1157. // Deprecated: Use SInt64Rules.ProtoReflect.Descriptor instead.
  1158. func (*SInt64Rules) Descriptor() ([]byte, []int) {
  1159. return file_validate_validate_proto_rawDescGZIP(), []int{8}
  1160. }
  1161. func (x *SInt64Rules) GetConst() int64 {
  1162. if x != nil && x.Const != nil {
  1163. return *x.Const
  1164. }
  1165. return 0
  1166. }
  1167. func (x *SInt64Rules) GetLt() int64 {
  1168. if x != nil && x.Lt != nil {
  1169. return *x.Lt
  1170. }
  1171. return 0
  1172. }
  1173. func (x *SInt64Rules) GetLte() int64 {
  1174. if x != nil && x.Lte != nil {
  1175. return *x.Lte
  1176. }
  1177. return 0
  1178. }
  1179. func (x *SInt64Rules) GetGt() int64 {
  1180. if x != nil && x.Gt != nil {
  1181. return *x.Gt
  1182. }
  1183. return 0
  1184. }
  1185. func (x *SInt64Rules) GetGte() int64 {
  1186. if x != nil && x.Gte != nil {
  1187. return *x.Gte
  1188. }
  1189. return 0
  1190. }
  1191. func (x *SInt64Rules) GetIn() []int64 {
  1192. if x != nil {
  1193. return x.In
  1194. }
  1195. return nil
  1196. }
  1197. func (x *SInt64Rules) GetNotIn() []int64 {
  1198. if x != nil {
  1199. return x.NotIn
  1200. }
  1201. return nil
  1202. }
  1203. func (x *SInt64Rules) GetIgnoreEmpty() bool {
  1204. if x != nil && x.IgnoreEmpty != nil {
  1205. return *x.IgnoreEmpty
  1206. }
  1207. return false
  1208. }
  1209. // Fixed32Rules describes the constraints applied to `fixed32` values
  1210. type Fixed32Rules struct {
  1211. state protoimpl.MessageState
  1212. sizeCache protoimpl.SizeCache
  1213. unknownFields protoimpl.UnknownFields
  1214. // Const specifies that this field must be exactly the specified value
  1215. Const *uint32 `protobuf:"fixed32,1,opt,name=const" json:"const,omitempty"`
  1216. // Lt specifies that this field must be less than the specified value,
  1217. // exclusive
  1218. Lt *uint32 `protobuf:"fixed32,2,opt,name=lt" json:"lt,omitempty"`
  1219. // Lte specifies that this field must be less than or equal to the
  1220. // specified value, inclusive
  1221. Lte *uint32 `protobuf:"fixed32,3,opt,name=lte" json:"lte,omitempty"`
  1222. // Gt specifies that this field must be greater than the specified value,
  1223. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  1224. // range is reversed.
  1225. Gt *uint32 `protobuf:"fixed32,4,opt,name=gt" json:"gt,omitempty"`
  1226. // Gte specifies that this field must be greater than or equal to the
  1227. // specified value, inclusive. If the value of Gte is larger than a
  1228. // specified Lt or Lte, the range is reversed.
  1229. Gte *uint32 `protobuf:"fixed32,5,opt,name=gte" json:"gte,omitempty"`
  1230. // In specifies that this field must be equal to one of the specified
  1231. // values
  1232. In []uint32 `protobuf:"fixed32,6,rep,name=in" json:"in,omitempty"`
  1233. // NotIn specifies that this field cannot be equal to one of the specified
  1234. // values
  1235. NotIn []uint32 `protobuf:"fixed32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  1236. // IgnoreEmpty specifies that the validation rules of this field should be
  1237. // evaluated only if the field is not empty
  1238. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  1239. }
  1240. func (x *Fixed32Rules) Reset() {
  1241. *x = Fixed32Rules{}
  1242. if protoimpl.UnsafeEnabled {
  1243. mi := &file_validate_validate_proto_msgTypes[9]
  1244. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1245. ms.StoreMessageInfo(mi)
  1246. }
  1247. }
  1248. func (x *Fixed32Rules) String() string {
  1249. return protoimpl.X.MessageStringOf(x)
  1250. }
  1251. func (*Fixed32Rules) ProtoMessage() {}
  1252. func (x *Fixed32Rules) ProtoReflect() protoreflect.Message {
  1253. mi := &file_validate_validate_proto_msgTypes[9]
  1254. if protoimpl.UnsafeEnabled && x != nil {
  1255. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1256. if ms.LoadMessageInfo() == nil {
  1257. ms.StoreMessageInfo(mi)
  1258. }
  1259. return ms
  1260. }
  1261. return mi.MessageOf(x)
  1262. }
  1263. // Deprecated: Use Fixed32Rules.ProtoReflect.Descriptor instead.
  1264. func (*Fixed32Rules) Descriptor() ([]byte, []int) {
  1265. return file_validate_validate_proto_rawDescGZIP(), []int{9}
  1266. }
  1267. func (x *Fixed32Rules) GetConst() uint32 {
  1268. if x != nil && x.Const != nil {
  1269. return *x.Const
  1270. }
  1271. return 0
  1272. }
  1273. func (x *Fixed32Rules) GetLt() uint32 {
  1274. if x != nil && x.Lt != nil {
  1275. return *x.Lt
  1276. }
  1277. return 0
  1278. }
  1279. func (x *Fixed32Rules) GetLte() uint32 {
  1280. if x != nil && x.Lte != nil {
  1281. return *x.Lte
  1282. }
  1283. return 0
  1284. }
  1285. func (x *Fixed32Rules) GetGt() uint32 {
  1286. if x != nil && x.Gt != nil {
  1287. return *x.Gt
  1288. }
  1289. return 0
  1290. }
  1291. func (x *Fixed32Rules) GetGte() uint32 {
  1292. if x != nil && x.Gte != nil {
  1293. return *x.Gte
  1294. }
  1295. return 0
  1296. }
  1297. func (x *Fixed32Rules) GetIn() []uint32 {
  1298. if x != nil {
  1299. return x.In
  1300. }
  1301. return nil
  1302. }
  1303. func (x *Fixed32Rules) GetNotIn() []uint32 {
  1304. if x != nil {
  1305. return x.NotIn
  1306. }
  1307. return nil
  1308. }
  1309. func (x *Fixed32Rules) GetIgnoreEmpty() bool {
  1310. if x != nil && x.IgnoreEmpty != nil {
  1311. return *x.IgnoreEmpty
  1312. }
  1313. return false
  1314. }
  1315. // Fixed64Rules describes the constraints applied to `fixed64` values
  1316. type Fixed64Rules struct {
  1317. state protoimpl.MessageState
  1318. sizeCache protoimpl.SizeCache
  1319. unknownFields protoimpl.UnknownFields
  1320. // Const specifies that this field must be exactly the specified value
  1321. Const *uint64 `protobuf:"fixed64,1,opt,name=const" json:"const,omitempty"`
  1322. // Lt specifies that this field must be less than the specified value,
  1323. // exclusive
  1324. Lt *uint64 `protobuf:"fixed64,2,opt,name=lt" json:"lt,omitempty"`
  1325. // Lte specifies that this field must be less than or equal to the
  1326. // specified value, inclusive
  1327. Lte *uint64 `protobuf:"fixed64,3,opt,name=lte" json:"lte,omitempty"`
  1328. // Gt specifies that this field must be greater than the specified value,
  1329. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  1330. // range is reversed.
  1331. Gt *uint64 `protobuf:"fixed64,4,opt,name=gt" json:"gt,omitempty"`
  1332. // Gte specifies that this field must be greater than or equal to the
  1333. // specified value, inclusive. If the value of Gte is larger than a
  1334. // specified Lt or Lte, the range is reversed.
  1335. Gte *uint64 `protobuf:"fixed64,5,opt,name=gte" json:"gte,omitempty"`
  1336. // In specifies that this field must be equal to one of the specified
  1337. // values
  1338. In []uint64 `protobuf:"fixed64,6,rep,name=in" json:"in,omitempty"`
  1339. // NotIn specifies that this field cannot be equal to one of the specified
  1340. // values
  1341. NotIn []uint64 `protobuf:"fixed64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  1342. // IgnoreEmpty specifies that the validation rules of this field should be
  1343. // evaluated only if the field is not empty
  1344. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  1345. }
  1346. func (x *Fixed64Rules) Reset() {
  1347. *x = Fixed64Rules{}
  1348. if protoimpl.UnsafeEnabled {
  1349. mi := &file_validate_validate_proto_msgTypes[10]
  1350. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1351. ms.StoreMessageInfo(mi)
  1352. }
  1353. }
  1354. func (x *Fixed64Rules) String() string {
  1355. return protoimpl.X.MessageStringOf(x)
  1356. }
  1357. func (*Fixed64Rules) ProtoMessage() {}
  1358. func (x *Fixed64Rules) ProtoReflect() protoreflect.Message {
  1359. mi := &file_validate_validate_proto_msgTypes[10]
  1360. if protoimpl.UnsafeEnabled && x != nil {
  1361. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1362. if ms.LoadMessageInfo() == nil {
  1363. ms.StoreMessageInfo(mi)
  1364. }
  1365. return ms
  1366. }
  1367. return mi.MessageOf(x)
  1368. }
  1369. // Deprecated: Use Fixed64Rules.ProtoReflect.Descriptor instead.
  1370. func (*Fixed64Rules) Descriptor() ([]byte, []int) {
  1371. return file_validate_validate_proto_rawDescGZIP(), []int{10}
  1372. }
  1373. func (x *Fixed64Rules) GetConst() uint64 {
  1374. if x != nil && x.Const != nil {
  1375. return *x.Const
  1376. }
  1377. return 0
  1378. }
  1379. func (x *Fixed64Rules) GetLt() uint64 {
  1380. if x != nil && x.Lt != nil {
  1381. return *x.Lt
  1382. }
  1383. return 0
  1384. }
  1385. func (x *Fixed64Rules) GetLte() uint64 {
  1386. if x != nil && x.Lte != nil {
  1387. return *x.Lte
  1388. }
  1389. return 0
  1390. }
  1391. func (x *Fixed64Rules) GetGt() uint64 {
  1392. if x != nil && x.Gt != nil {
  1393. return *x.Gt
  1394. }
  1395. return 0
  1396. }
  1397. func (x *Fixed64Rules) GetGte() uint64 {
  1398. if x != nil && x.Gte != nil {
  1399. return *x.Gte
  1400. }
  1401. return 0
  1402. }
  1403. func (x *Fixed64Rules) GetIn() []uint64 {
  1404. if x != nil {
  1405. return x.In
  1406. }
  1407. return nil
  1408. }
  1409. func (x *Fixed64Rules) GetNotIn() []uint64 {
  1410. if x != nil {
  1411. return x.NotIn
  1412. }
  1413. return nil
  1414. }
  1415. func (x *Fixed64Rules) GetIgnoreEmpty() bool {
  1416. if x != nil && x.IgnoreEmpty != nil {
  1417. return *x.IgnoreEmpty
  1418. }
  1419. return false
  1420. }
  1421. // SFixed32Rules describes the constraints applied to `sfixed32` values
  1422. type SFixed32Rules struct {
  1423. state protoimpl.MessageState
  1424. sizeCache protoimpl.SizeCache
  1425. unknownFields protoimpl.UnknownFields
  1426. // Const specifies that this field must be exactly the specified value
  1427. Const *int32 `protobuf:"fixed32,1,opt,name=const" json:"const,omitempty"`
  1428. // Lt specifies that this field must be less than the specified value,
  1429. // exclusive
  1430. Lt *int32 `protobuf:"fixed32,2,opt,name=lt" json:"lt,omitempty"`
  1431. // Lte specifies that this field must be less than or equal to the
  1432. // specified value, inclusive
  1433. Lte *int32 `protobuf:"fixed32,3,opt,name=lte" json:"lte,omitempty"`
  1434. // Gt specifies that this field must be greater than the specified value,
  1435. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  1436. // range is reversed.
  1437. Gt *int32 `protobuf:"fixed32,4,opt,name=gt" json:"gt,omitempty"`
  1438. // Gte specifies that this field must be greater than or equal to the
  1439. // specified value, inclusive. If the value of Gte is larger than a
  1440. // specified Lt or Lte, the range is reversed.
  1441. Gte *int32 `protobuf:"fixed32,5,opt,name=gte" json:"gte,omitempty"`
  1442. // In specifies that this field must be equal to one of the specified
  1443. // values
  1444. In []int32 `protobuf:"fixed32,6,rep,name=in" json:"in,omitempty"`
  1445. // NotIn specifies that this field cannot be equal to one of the specified
  1446. // values
  1447. NotIn []int32 `protobuf:"fixed32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  1448. // IgnoreEmpty specifies that the validation rules of this field should be
  1449. // evaluated only if the field is not empty
  1450. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  1451. }
  1452. func (x *SFixed32Rules) Reset() {
  1453. *x = SFixed32Rules{}
  1454. if protoimpl.UnsafeEnabled {
  1455. mi := &file_validate_validate_proto_msgTypes[11]
  1456. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1457. ms.StoreMessageInfo(mi)
  1458. }
  1459. }
  1460. func (x *SFixed32Rules) String() string {
  1461. return protoimpl.X.MessageStringOf(x)
  1462. }
  1463. func (*SFixed32Rules) ProtoMessage() {}
  1464. func (x *SFixed32Rules) ProtoReflect() protoreflect.Message {
  1465. mi := &file_validate_validate_proto_msgTypes[11]
  1466. if protoimpl.UnsafeEnabled && x != nil {
  1467. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1468. if ms.LoadMessageInfo() == nil {
  1469. ms.StoreMessageInfo(mi)
  1470. }
  1471. return ms
  1472. }
  1473. return mi.MessageOf(x)
  1474. }
  1475. // Deprecated: Use SFixed32Rules.ProtoReflect.Descriptor instead.
  1476. func (*SFixed32Rules) Descriptor() ([]byte, []int) {
  1477. return file_validate_validate_proto_rawDescGZIP(), []int{11}
  1478. }
  1479. func (x *SFixed32Rules) GetConst() int32 {
  1480. if x != nil && x.Const != nil {
  1481. return *x.Const
  1482. }
  1483. return 0
  1484. }
  1485. func (x *SFixed32Rules) GetLt() int32 {
  1486. if x != nil && x.Lt != nil {
  1487. return *x.Lt
  1488. }
  1489. return 0
  1490. }
  1491. func (x *SFixed32Rules) GetLte() int32 {
  1492. if x != nil && x.Lte != nil {
  1493. return *x.Lte
  1494. }
  1495. return 0
  1496. }
  1497. func (x *SFixed32Rules) GetGt() int32 {
  1498. if x != nil && x.Gt != nil {
  1499. return *x.Gt
  1500. }
  1501. return 0
  1502. }
  1503. func (x *SFixed32Rules) GetGte() int32 {
  1504. if x != nil && x.Gte != nil {
  1505. return *x.Gte
  1506. }
  1507. return 0
  1508. }
  1509. func (x *SFixed32Rules) GetIn() []int32 {
  1510. if x != nil {
  1511. return x.In
  1512. }
  1513. return nil
  1514. }
  1515. func (x *SFixed32Rules) GetNotIn() []int32 {
  1516. if x != nil {
  1517. return x.NotIn
  1518. }
  1519. return nil
  1520. }
  1521. func (x *SFixed32Rules) GetIgnoreEmpty() bool {
  1522. if x != nil && x.IgnoreEmpty != nil {
  1523. return *x.IgnoreEmpty
  1524. }
  1525. return false
  1526. }
  1527. // SFixed64Rules describes the constraints applied to `sfixed64` values
  1528. type SFixed64Rules struct {
  1529. state protoimpl.MessageState
  1530. sizeCache protoimpl.SizeCache
  1531. unknownFields protoimpl.UnknownFields
  1532. // Const specifies that this field must be exactly the specified value
  1533. Const *int64 `protobuf:"fixed64,1,opt,name=const" json:"const,omitempty"`
  1534. // Lt specifies that this field must be less than the specified value,
  1535. // exclusive
  1536. Lt *int64 `protobuf:"fixed64,2,opt,name=lt" json:"lt,omitempty"`
  1537. // Lte specifies that this field must be less than or equal to the
  1538. // specified value, inclusive
  1539. Lte *int64 `protobuf:"fixed64,3,opt,name=lte" json:"lte,omitempty"`
  1540. // Gt specifies that this field must be greater than the specified value,
  1541. // exclusive. If the value of Gt is larger than a specified Lt or Lte, the
  1542. // range is reversed.
  1543. Gt *int64 `protobuf:"fixed64,4,opt,name=gt" json:"gt,omitempty"`
  1544. // Gte specifies that this field must be greater than or equal to the
  1545. // specified value, inclusive. If the value of Gte is larger than a
  1546. // specified Lt or Lte, the range is reversed.
  1547. Gte *int64 `protobuf:"fixed64,5,opt,name=gte" json:"gte,omitempty"`
  1548. // In specifies that this field must be equal to one of the specified
  1549. // values
  1550. In []int64 `protobuf:"fixed64,6,rep,name=in" json:"in,omitempty"`
  1551. // NotIn specifies that this field cannot be equal to one of the specified
  1552. // values
  1553. NotIn []int64 `protobuf:"fixed64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  1554. // IgnoreEmpty specifies that the validation rules of this field should be
  1555. // evaluated only if the field is not empty
  1556. IgnoreEmpty *bool `protobuf:"varint,8,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  1557. }
  1558. func (x *SFixed64Rules) Reset() {
  1559. *x = SFixed64Rules{}
  1560. if protoimpl.UnsafeEnabled {
  1561. mi := &file_validate_validate_proto_msgTypes[12]
  1562. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1563. ms.StoreMessageInfo(mi)
  1564. }
  1565. }
  1566. func (x *SFixed64Rules) String() string {
  1567. return protoimpl.X.MessageStringOf(x)
  1568. }
  1569. func (*SFixed64Rules) ProtoMessage() {}
  1570. func (x *SFixed64Rules) ProtoReflect() protoreflect.Message {
  1571. mi := &file_validate_validate_proto_msgTypes[12]
  1572. if protoimpl.UnsafeEnabled && x != nil {
  1573. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1574. if ms.LoadMessageInfo() == nil {
  1575. ms.StoreMessageInfo(mi)
  1576. }
  1577. return ms
  1578. }
  1579. return mi.MessageOf(x)
  1580. }
  1581. // Deprecated: Use SFixed64Rules.ProtoReflect.Descriptor instead.
  1582. func (*SFixed64Rules) Descriptor() ([]byte, []int) {
  1583. return file_validate_validate_proto_rawDescGZIP(), []int{12}
  1584. }
  1585. func (x *SFixed64Rules) GetConst() int64 {
  1586. if x != nil && x.Const != nil {
  1587. return *x.Const
  1588. }
  1589. return 0
  1590. }
  1591. func (x *SFixed64Rules) GetLt() int64 {
  1592. if x != nil && x.Lt != nil {
  1593. return *x.Lt
  1594. }
  1595. return 0
  1596. }
  1597. func (x *SFixed64Rules) GetLte() int64 {
  1598. if x != nil && x.Lte != nil {
  1599. return *x.Lte
  1600. }
  1601. return 0
  1602. }
  1603. func (x *SFixed64Rules) GetGt() int64 {
  1604. if x != nil && x.Gt != nil {
  1605. return *x.Gt
  1606. }
  1607. return 0
  1608. }
  1609. func (x *SFixed64Rules) GetGte() int64 {
  1610. if x != nil && x.Gte != nil {
  1611. return *x.Gte
  1612. }
  1613. return 0
  1614. }
  1615. func (x *SFixed64Rules) GetIn() []int64 {
  1616. if x != nil {
  1617. return x.In
  1618. }
  1619. return nil
  1620. }
  1621. func (x *SFixed64Rules) GetNotIn() []int64 {
  1622. if x != nil {
  1623. return x.NotIn
  1624. }
  1625. return nil
  1626. }
  1627. func (x *SFixed64Rules) GetIgnoreEmpty() bool {
  1628. if x != nil && x.IgnoreEmpty != nil {
  1629. return *x.IgnoreEmpty
  1630. }
  1631. return false
  1632. }
  1633. // BoolRules describes the constraints applied to `bool` values
  1634. type BoolRules struct {
  1635. state protoimpl.MessageState
  1636. sizeCache protoimpl.SizeCache
  1637. unknownFields protoimpl.UnknownFields
  1638. // Const specifies that this field must be exactly the specified value
  1639. Const *bool `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
  1640. }
  1641. func (x *BoolRules) Reset() {
  1642. *x = BoolRules{}
  1643. if protoimpl.UnsafeEnabled {
  1644. mi := &file_validate_validate_proto_msgTypes[13]
  1645. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1646. ms.StoreMessageInfo(mi)
  1647. }
  1648. }
  1649. func (x *BoolRules) String() string {
  1650. return protoimpl.X.MessageStringOf(x)
  1651. }
  1652. func (*BoolRules) ProtoMessage() {}
  1653. func (x *BoolRules) ProtoReflect() protoreflect.Message {
  1654. mi := &file_validate_validate_proto_msgTypes[13]
  1655. if protoimpl.UnsafeEnabled && x != nil {
  1656. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1657. if ms.LoadMessageInfo() == nil {
  1658. ms.StoreMessageInfo(mi)
  1659. }
  1660. return ms
  1661. }
  1662. return mi.MessageOf(x)
  1663. }
  1664. // Deprecated: Use BoolRules.ProtoReflect.Descriptor instead.
  1665. func (*BoolRules) Descriptor() ([]byte, []int) {
  1666. return file_validate_validate_proto_rawDescGZIP(), []int{13}
  1667. }
  1668. func (x *BoolRules) GetConst() bool {
  1669. if x != nil && x.Const != nil {
  1670. return *x.Const
  1671. }
  1672. return false
  1673. }
  1674. // StringRules describe the constraints applied to `string` values
  1675. type StringRules struct {
  1676. state protoimpl.MessageState
  1677. sizeCache protoimpl.SizeCache
  1678. unknownFields protoimpl.UnknownFields
  1679. // Const specifies that this field must be exactly the specified value
  1680. Const *string `protobuf:"bytes,1,opt,name=const" json:"const,omitempty"`
  1681. // Len specifies that this field must be the specified number of
  1682. // characters (Unicode code points). Note that the number of
  1683. // characters may differ from the number of bytes in the string.
  1684. Len *uint64 `protobuf:"varint,19,opt,name=len" json:"len,omitempty"`
  1685. // MinLen specifies that this field must be the specified number of
  1686. // characters (Unicode code points) at a minimum. Note that the number of
  1687. // characters may differ from the number of bytes in the string.
  1688. MinLen *uint64 `protobuf:"varint,2,opt,name=min_len,json=minLen" json:"min_len,omitempty"`
  1689. // MaxLen specifies that this field must be the specified number of
  1690. // characters (Unicode code points) at a maximum. Note that the number of
  1691. // characters may differ from the number of bytes in the string.
  1692. MaxLen *uint64 `protobuf:"varint,3,opt,name=max_len,json=maxLen" json:"max_len,omitempty"`
  1693. // LenBytes specifies that this field must be the specified number of bytes
  1694. LenBytes *uint64 `protobuf:"varint,20,opt,name=len_bytes,json=lenBytes" json:"len_bytes,omitempty"`
  1695. // MinBytes specifies that this field must be the specified number of bytes
  1696. // at a minimum
  1697. MinBytes *uint64 `protobuf:"varint,4,opt,name=min_bytes,json=minBytes" json:"min_bytes,omitempty"`
  1698. // MaxBytes specifies that this field must be the specified number of bytes
  1699. // at a maximum
  1700. MaxBytes *uint64 `protobuf:"varint,5,opt,name=max_bytes,json=maxBytes" json:"max_bytes,omitempty"`
  1701. // Pattern specifes that this field must match against the specified
  1702. // regular expression (RE2 syntax). The included expression should elide
  1703. // any delimiters.
  1704. Pattern *string `protobuf:"bytes,6,opt,name=pattern" json:"pattern,omitempty"`
  1705. // Prefix specifies that this field must have the specified substring at
  1706. // the beginning of the string.
  1707. Prefix *string `protobuf:"bytes,7,opt,name=prefix" json:"prefix,omitempty"`
  1708. // Suffix specifies that this field must have the specified substring at
  1709. // the end of the string.
  1710. Suffix *string `protobuf:"bytes,8,opt,name=suffix" json:"suffix,omitempty"`
  1711. // Contains specifies that this field must have the specified substring
  1712. // anywhere in the string.
  1713. Contains *string `protobuf:"bytes,9,opt,name=contains" json:"contains,omitempty"`
  1714. // NotContains specifies that this field cannot have the specified substring
  1715. // anywhere in the string.
  1716. NotContains *string `protobuf:"bytes,23,opt,name=not_contains,json=notContains" json:"not_contains,omitempty"`
  1717. // In specifies that this field must be equal to one of the specified
  1718. // values
  1719. In []string `protobuf:"bytes,10,rep,name=in" json:"in,omitempty"`
  1720. // NotIn specifies that this field cannot be equal to one of the specified
  1721. // values
  1722. NotIn []string `protobuf:"bytes,11,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  1723. // WellKnown rules provide advanced constraints against common string
  1724. // patterns
  1725. //
  1726. // Types that are assignable to WellKnown:
  1727. //
  1728. // *StringRules_Email
  1729. // *StringRules_Hostname
  1730. // *StringRules_Ip
  1731. // *StringRules_Ipv4
  1732. // *StringRules_Ipv6
  1733. // *StringRules_Uri
  1734. // *StringRules_UriRef
  1735. // *StringRules_Address
  1736. // *StringRules_Uuid
  1737. // *StringRules_WellKnownRegex
  1738. WellKnown isStringRules_WellKnown `protobuf_oneof:"well_known"`
  1739. // This applies to regexes HTTP_HEADER_NAME and HTTP_HEADER_VALUE to enable
  1740. // strict header validation.
  1741. // By default, this is true, and HTTP header validations are RFC-compliant.
  1742. // Setting to false will enable a looser validations that only disallows
  1743. // \r\n\0 characters, which can be used to bypass header matching rules.
  1744. Strict *bool `protobuf:"varint,25,opt,name=strict,def=1" json:"strict,omitempty"`
  1745. // IgnoreEmpty specifies that the validation rules of this field should be
  1746. // evaluated only if the field is not empty
  1747. IgnoreEmpty *bool `protobuf:"varint,26,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  1748. }
  1749. // Default values for StringRules fields.
  1750. const (
  1751. Default_StringRules_Strict = bool(true)
  1752. )
  1753. func (x *StringRules) Reset() {
  1754. *x = StringRules{}
  1755. if protoimpl.UnsafeEnabled {
  1756. mi := &file_validate_validate_proto_msgTypes[14]
  1757. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1758. ms.StoreMessageInfo(mi)
  1759. }
  1760. }
  1761. func (x *StringRules) String() string {
  1762. return protoimpl.X.MessageStringOf(x)
  1763. }
  1764. func (*StringRules) ProtoMessage() {}
  1765. func (x *StringRules) ProtoReflect() protoreflect.Message {
  1766. mi := &file_validate_validate_proto_msgTypes[14]
  1767. if protoimpl.UnsafeEnabled && x != nil {
  1768. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1769. if ms.LoadMessageInfo() == nil {
  1770. ms.StoreMessageInfo(mi)
  1771. }
  1772. return ms
  1773. }
  1774. return mi.MessageOf(x)
  1775. }
  1776. // Deprecated: Use StringRules.ProtoReflect.Descriptor instead.
  1777. func (*StringRules) Descriptor() ([]byte, []int) {
  1778. return file_validate_validate_proto_rawDescGZIP(), []int{14}
  1779. }
  1780. func (x *StringRules) GetConst() string {
  1781. if x != nil && x.Const != nil {
  1782. return *x.Const
  1783. }
  1784. return ""
  1785. }
  1786. func (x *StringRules) GetLen() uint64 {
  1787. if x != nil && x.Len != nil {
  1788. return *x.Len
  1789. }
  1790. return 0
  1791. }
  1792. func (x *StringRules) GetMinLen() uint64 {
  1793. if x != nil && x.MinLen != nil {
  1794. return *x.MinLen
  1795. }
  1796. return 0
  1797. }
  1798. func (x *StringRules) GetMaxLen() uint64 {
  1799. if x != nil && x.MaxLen != nil {
  1800. return *x.MaxLen
  1801. }
  1802. return 0
  1803. }
  1804. func (x *StringRules) GetLenBytes() uint64 {
  1805. if x != nil && x.LenBytes != nil {
  1806. return *x.LenBytes
  1807. }
  1808. return 0
  1809. }
  1810. func (x *StringRules) GetMinBytes() uint64 {
  1811. if x != nil && x.MinBytes != nil {
  1812. return *x.MinBytes
  1813. }
  1814. return 0
  1815. }
  1816. func (x *StringRules) GetMaxBytes() uint64 {
  1817. if x != nil && x.MaxBytes != nil {
  1818. return *x.MaxBytes
  1819. }
  1820. return 0
  1821. }
  1822. func (x *StringRules) GetPattern() string {
  1823. if x != nil && x.Pattern != nil {
  1824. return *x.Pattern
  1825. }
  1826. return ""
  1827. }
  1828. func (x *StringRules) GetPrefix() string {
  1829. if x != nil && x.Prefix != nil {
  1830. return *x.Prefix
  1831. }
  1832. return ""
  1833. }
  1834. func (x *StringRules) GetSuffix() string {
  1835. if x != nil && x.Suffix != nil {
  1836. return *x.Suffix
  1837. }
  1838. return ""
  1839. }
  1840. func (x *StringRules) GetContains() string {
  1841. if x != nil && x.Contains != nil {
  1842. return *x.Contains
  1843. }
  1844. return ""
  1845. }
  1846. func (x *StringRules) GetNotContains() string {
  1847. if x != nil && x.NotContains != nil {
  1848. return *x.NotContains
  1849. }
  1850. return ""
  1851. }
  1852. func (x *StringRules) GetIn() []string {
  1853. if x != nil {
  1854. return x.In
  1855. }
  1856. return nil
  1857. }
  1858. func (x *StringRules) GetNotIn() []string {
  1859. if x != nil {
  1860. return x.NotIn
  1861. }
  1862. return nil
  1863. }
  1864. func (m *StringRules) GetWellKnown() isStringRules_WellKnown {
  1865. if m != nil {
  1866. return m.WellKnown
  1867. }
  1868. return nil
  1869. }
  1870. func (x *StringRules) GetEmail() bool {
  1871. if x, ok := x.GetWellKnown().(*StringRules_Email); ok {
  1872. return x.Email
  1873. }
  1874. return false
  1875. }
  1876. func (x *StringRules) GetHostname() bool {
  1877. if x, ok := x.GetWellKnown().(*StringRules_Hostname); ok {
  1878. return x.Hostname
  1879. }
  1880. return false
  1881. }
  1882. func (x *StringRules) GetIp() bool {
  1883. if x, ok := x.GetWellKnown().(*StringRules_Ip); ok {
  1884. return x.Ip
  1885. }
  1886. return false
  1887. }
  1888. func (x *StringRules) GetIpv4() bool {
  1889. if x, ok := x.GetWellKnown().(*StringRules_Ipv4); ok {
  1890. return x.Ipv4
  1891. }
  1892. return false
  1893. }
  1894. func (x *StringRules) GetIpv6() bool {
  1895. if x, ok := x.GetWellKnown().(*StringRules_Ipv6); ok {
  1896. return x.Ipv6
  1897. }
  1898. return false
  1899. }
  1900. func (x *StringRules) GetUri() bool {
  1901. if x, ok := x.GetWellKnown().(*StringRules_Uri); ok {
  1902. return x.Uri
  1903. }
  1904. return false
  1905. }
  1906. func (x *StringRules) GetUriRef() bool {
  1907. if x, ok := x.GetWellKnown().(*StringRules_UriRef); ok {
  1908. return x.UriRef
  1909. }
  1910. return false
  1911. }
  1912. func (x *StringRules) GetAddress() bool {
  1913. if x, ok := x.GetWellKnown().(*StringRules_Address); ok {
  1914. return x.Address
  1915. }
  1916. return false
  1917. }
  1918. func (x *StringRules) GetUuid() bool {
  1919. if x, ok := x.GetWellKnown().(*StringRules_Uuid); ok {
  1920. return x.Uuid
  1921. }
  1922. return false
  1923. }
  1924. func (x *StringRules) GetWellKnownRegex() KnownRegex {
  1925. if x, ok := x.GetWellKnown().(*StringRules_WellKnownRegex); ok {
  1926. return x.WellKnownRegex
  1927. }
  1928. return KnownRegex_UNKNOWN
  1929. }
  1930. func (x *StringRules) GetStrict() bool {
  1931. if x != nil && x.Strict != nil {
  1932. return *x.Strict
  1933. }
  1934. return Default_StringRules_Strict
  1935. }
  1936. func (x *StringRules) GetIgnoreEmpty() bool {
  1937. if x != nil && x.IgnoreEmpty != nil {
  1938. return *x.IgnoreEmpty
  1939. }
  1940. return false
  1941. }
  1942. type isStringRules_WellKnown interface {
  1943. isStringRules_WellKnown()
  1944. }
  1945. type StringRules_Email struct {
  1946. // Email specifies that the field must be a valid email address as
  1947. // defined by RFC 5322
  1948. Email bool `protobuf:"varint,12,opt,name=email,oneof"`
  1949. }
  1950. type StringRules_Hostname struct {
  1951. // Hostname specifies that the field must be a valid hostname as
  1952. // defined by RFC 1034. This constraint does not support
  1953. // internationalized domain names (IDNs).
  1954. Hostname bool `protobuf:"varint,13,opt,name=hostname,oneof"`
  1955. }
  1956. type StringRules_Ip struct {
  1957. // Ip specifies that the field must be a valid IP (v4 or v6) address.
  1958. // Valid IPv6 addresses should not include surrounding square brackets.
  1959. Ip bool `protobuf:"varint,14,opt,name=ip,oneof"`
  1960. }
  1961. type StringRules_Ipv4 struct {
  1962. // Ipv4 specifies that the field must be a valid IPv4 address.
  1963. Ipv4 bool `protobuf:"varint,15,opt,name=ipv4,oneof"`
  1964. }
  1965. type StringRules_Ipv6 struct {
  1966. // Ipv6 specifies that the field must be a valid IPv6 address. Valid
  1967. // IPv6 addresses should not include surrounding square brackets.
  1968. Ipv6 bool `protobuf:"varint,16,opt,name=ipv6,oneof"`
  1969. }
  1970. type StringRules_Uri struct {
  1971. // Uri specifies that the field must be a valid, absolute URI as defined
  1972. // by RFC 3986
  1973. Uri bool `protobuf:"varint,17,opt,name=uri,oneof"`
  1974. }
  1975. type StringRules_UriRef struct {
  1976. // UriRef specifies that the field must be a valid URI as defined by RFC
  1977. // 3986 and may be relative or absolute.
  1978. UriRef bool `protobuf:"varint,18,opt,name=uri_ref,json=uriRef,oneof"`
  1979. }
  1980. type StringRules_Address struct {
  1981. // Address specifies that the field must be either a valid hostname as
  1982. // defined by RFC 1034 (which does not support internationalized domain
  1983. // names or IDNs), or it can be a valid IP (v4 or v6).
  1984. Address bool `protobuf:"varint,21,opt,name=address,oneof"`
  1985. }
  1986. type StringRules_Uuid struct {
  1987. // Uuid specifies that the field must be a valid UUID as defined by
  1988. // RFC 4122
  1989. Uuid bool `protobuf:"varint,22,opt,name=uuid,oneof"`
  1990. }
  1991. type StringRules_WellKnownRegex struct {
  1992. // WellKnownRegex specifies a common well known pattern defined as a regex.
  1993. WellKnownRegex KnownRegex `protobuf:"varint,24,opt,name=well_known_regex,json=wellKnownRegex,enum=validate.KnownRegex,oneof"`
  1994. }
  1995. func (*StringRules_Email) isStringRules_WellKnown() {}
  1996. func (*StringRules_Hostname) isStringRules_WellKnown() {}
  1997. func (*StringRules_Ip) isStringRules_WellKnown() {}
  1998. func (*StringRules_Ipv4) isStringRules_WellKnown() {}
  1999. func (*StringRules_Ipv6) isStringRules_WellKnown() {}
  2000. func (*StringRules_Uri) isStringRules_WellKnown() {}
  2001. func (*StringRules_UriRef) isStringRules_WellKnown() {}
  2002. func (*StringRules_Address) isStringRules_WellKnown() {}
  2003. func (*StringRules_Uuid) isStringRules_WellKnown() {}
  2004. func (*StringRules_WellKnownRegex) isStringRules_WellKnown() {}
  2005. // BytesRules describe the constraints applied to `bytes` values
  2006. type BytesRules struct {
  2007. state protoimpl.MessageState
  2008. sizeCache protoimpl.SizeCache
  2009. unknownFields protoimpl.UnknownFields
  2010. // Const specifies that this field must be exactly the specified value
  2011. Const []byte `protobuf:"bytes,1,opt,name=const" json:"const,omitempty"`
  2012. // Len specifies that this field must be the specified number of bytes
  2013. Len *uint64 `protobuf:"varint,13,opt,name=len" json:"len,omitempty"`
  2014. // MinLen specifies that this field must be the specified number of bytes
  2015. // at a minimum
  2016. MinLen *uint64 `protobuf:"varint,2,opt,name=min_len,json=minLen" json:"min_len,omitempty"`
  2017. // MaxLen specifies that this field must be the specified number of bytes
  2018. // at a maximum
  2019. MaxLen *uint64 `protobuf:"varint,3,opt,name=max_len,json=maxLen" json:"max_len,omitempty"`
  2020. // Pattern specifes that this field must match against the specified
  2021. // regular expression (RE2 syntax). The included expression should elide
  2022. // any delimiters.
  2023. Pattern *string `protobuf:"bytes,4,opt,name=pattern" json:"pattern,omitempty"`
  2024. // Prefix specifies that this field must have the specified bytes at the
  2025. // beginning of the string.
  2026. Prefix []byte `protobuf:"bytes,5,opt,name=prefix" json:"prefix,omitempty"`
  2027. // Suffix specifies that this field must have the specified bytes at the
  2028. // end of the string.
  2029. Suffix []byte `protobuf:"bytes,6,opt,name=suffix" json:"suffix,omitempty"`
  2030. // Contains specifies that this field must have the specified bytes
  2031. // anywhere in the string.
  2032. Contains []byte `protobuf:"bytes,7,opt,name=contains" json:"contains,omitempty"`
  2033. // In specifies that this field must be equal to one of the specified
  2034. // values
  2035. In [][]byte `protobuf:"bytes,8,rep,name=in" json:"in,omitempty"`
  2036. // NotIn specifies that this field cannot be equal to one of the specified
  2037. // values
  2038. NotIn [][]byte `protobuf:"bytes,9,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  2039. // WellKnown rules provide advanced constraints against common byte
  2040. // patterns
  2041. //
  2042. // Types that are assignable to WellKnown:
  2043. //
  2044. // *BytesRules_Ip
  2045. // *BytesRules_Ipv4
  2046. // *BytesRules_Ipv6
  2047. WellKnown isBytesRules_WellKnown `protobuf_oneof:"well_known"`
  2048. // IgnoreEmpty specifies that the validation rules of this field should be
  2049. // evaluated only if the field is not empty
  2050. IgnoreEmpty *bool `protobuf:"varint,14,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  2051. }
  2052. func (x *BytesRules) Reset() {
  2053. *x = BytesRules{}
  2054. if protoimpl.UnsafeEnabled {
  2055. mi := &file_validate_validate_proto_msgTypes[15]
  2056. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2057. ms.StoreMessageInfo(mi)
  2058. }
  2059. }
  2060. func (x *BytesRules) String() string {
  2061. return protoimpl.X.MessageStringOf(x)
  2062. }
  2063. func (*BytesRules) ProtoMessage() {}
  2064. func (x *BytesRules) ProtoReflect() protoreflect.Message {
  2065. mi := &file_validate_validate_proto_msgTypes[15]
  2066. if protoimpl.UnsafeEnabled && x != nil {
  2067. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2068. if ms.LoadMessageInfo() == nil {
  2069. ms.StoreMessageInfo(mi)
  2070. }
  2071. return ms
  2072. }
  2073. return mi.MessageOf(x)
  2074. }
  2075. // Deprecated: Use BytesRules.ProtoReflect.Descriptor instead.
  2076. func (*BytesRules) Descriptor() ([]byte, []int) {
  2077. return file_validate_validate_proto_rawDescGZIP(), []int{15}
  2078. }
  2079. func (x *BytesRules) GetConst() []byte {
  2080. if x != nil {
  2081. return x.Const
  2082. }
  2083. return nil
  2084. }
  2085. func (x *BytesRules) GetLen() uint64 {
  2086. if x != nil && x.Len != nil {
  2087. return *x.Len
  2088. }
  2089. return 0
  2090. }
  2091. func (x *BytesRules) GetMinLen() uint64 {
  2092. if x != nil && x.MinLen != nil {
  2093. return *x.MinLen
  2094. }
  2095. return 0
  2096. }
  2097. func (x *BytesRules) GetMaxLen() uint64 {
  2098. if x != nil && x.MaxLen != nil {
  2099. return *x.MaxLen
  2100. }
  2101. return 0
  2102. }
  2103. func (x *BytesRules) GetPattern() string {
  2104. if x != nil && x.Pattern != nil {
  2105. return *x.Pattern
  2106. }
  2107. return ""
  2108. }
  2109. func (x *BytesRules) GetPrefix() []byte {
  2110. if x != nil {
  2111. return x.Prefix
  2112. }
  2113. return nil
  2114. }
  2115. func (x *BytesRules) GetSuffix() []byte {
  2116. if x != nil {
  2117. return x.Suffix
  2118. }
  2119. return nil
  2120. }
  2121. func (x *BytesRules) GetContains() []byte {
  2122. if x != nil {
  2123. return x.Contains
  2124. }
  2125. return nil
  2126. }
  2127. func (x *BytesRules) GetIn() [][]byte {
  2128. if x != nil {
  2129. return x.In
  2130. }
  2131. return nil
  2132. }
  2133. func (x *BytesRules) GetNotIn() [][]byte {
  2134. if x != nil {
  2135. return x.NotIn
  2136. }
  2137. return nil
  2138. }
  2139. func (m *BytesRules) GetWellKnown() isBytesRules_WellKnown {
  2140. if m != nil {
  2141. return m.WellKnown
  2142. }
  2143. return nil
  2144. }
  2145. func (x *BytesRules) GetIp() bool {
  2146. if x, ok := x.GetWellKnown().(*BytesRules_Ip); ok {
  2147. return x.Ip
  2148. }
  2149. return false
  2150. }
  2151. func (x *BytesRules) GetIpv4() bool {
  2152. if x, ok := x.GetWellKnown().(*BytesRules_Ipv4); ok {
  2153. return x.Ipv4
  2154. }
  2155. return false
  2156. }
  2157. func (x *BytesRules) GetIpv6() bool {
  2158. if x, ok := x.GetWellKnown().(*BytesRules_Ipv6); ok {
  2159. return x.Ipv6
  2160. }
  2161. return false
  2162. }
  2163. func (x *BytesRules) GetIgnoreEmpty() bool {
  2164. if x != nil && x.IgnoreEmpty != nil {
  2165. return *x.IgnoreEmpty
  2166. }
  2167. return false
  2168. }
  2169. type isBytesRules_WellKnown interface {
  2170. isBytesRules_WellKnown()
  2171. }
  2172. type BytesRules_Ip struct {
  2173. // Ip specifies that the field must be a valid IP (v4 or v6) address in
  2174. // byte format
  2175. Ip bool `protobuf:"varint,10,opt,name=ip,oneof"`
  2176. }
  2177. type BytesRules_Ipv4 struct {
  2178. // Ipv4 specifies that the field must be a valid IPv4 address in byte
  2179. // format
  2180. Ipv4 bool `protobuf:"varint,11,opt,name=ipv4,oneof"`
  2181. }
  2182. type BytesRules_Ipv6 struct {
  2183. // Ipv6 specifies that the field must be a valid IPv6 address in byte
  2184. // format
  2185. Ipv6 bool `protobuf:"varint,12,opt,name=ipv6,oneof"`
  2186. }
  2187. func (*BytesRules_Ip) isBytesRules_WellKnown() {}
  2188. func (*BytesRules_Ipv4) isBytesRules_WellKnown() {}
  2189. func (*BytesRules_Ipv6) isBytesRules_WellKnown() {}
  2190. // EnumRules describe the constraints applied to enum values
  2191. type EnumRules struct {
  2192. state protoimpl.MessageState
  2193. sizeCache protoimpl.SizeCache
  2194. unknownFields protoimpl.UnknownFields
  2195. // Const specifies that this field must be exactly the specified value
  2196. Const *int32 `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
  2197. // DefinedOnly specifies that this field must be only one of the defined
  2198. // values for this enum, failing on any undefined value.
  2199. DefinedOnly *bool `protobuf:"varint,2,opt,name=defined_only,json=definedOnly" json:"defined_only,omitempty"`
  2200. // In specifies that this field must be equal to one of the specified
  2201. // values
  2202. In []int32 `protobuf:"varint,3,rep,name=in" json:"in,omitempty"`
  2203. // NotIn specifies that this field cannot be equal to one of the specified
  2204. // values
  2205. NotIn []int32 `protobuf:"varint,4,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  2206. }
  2207. func (x *EnumRules) Reset() {
  2208. *x = EnumRules{}
  2209. if protoimpl.UnsafeEnabled {
  2210. mi := &file_validate_validate_proto_msgTypes[16]
  2211. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2212. ms.StoreMessageInfo(mi)
  2213. }
  2214. }
  2215. func (x *EnumRules) String() string {
  2216. return protoimpl.X.MessageStringOf(x)
  2217. }
  2218. func (*EnumRules) ProtoMessage() {}
  2219. func (x *EnumRules) ProtoReflect() protoreflect.Message {
  2220. mi := &file_validate_validate_proto_msgTypes[16]
  2221. if protoimpl.UnsafeEnabled && x != nil {
  2222. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2223. if ms.LoadMessageInfo() == nil {
  2224. ms.StoreMessageInfo(mi)
  2225. }
  2226. return ms
  2227. }
  2228. return mi.MessageOf(x)
  2229. }
  2230. // Deprecated: Use EnumRules.ProtoReflect.Descriptor instead.
  2231. func (*EnumRules) Descriptor() ([]byte, []int) {
  2232. return file_validate_validate_proto_rawDescGZIP(), []int{16}
  2233. }
  2234. func (x *EnumRules) GetConst() int32 {
  2235. if x != nil && x.Const != nil {
  2236. return *x.Const
  2237. }
  2238. return 0
  2239. }
  2240. func (x *EnumRules) GetDefinedOnly() bool {
  2241. if x != nil && x.DefinedOnly != nil {
  2242. return *x.DefinedOnly
  2243. }
  2244. return false
  2245. }
  2246. func (x *EnumRules) GetIn() []int32 {
  2247. if x != nil {
  2248. return x.In
  2249. }
  2250. return nil
  2251. }
  2252. func (x *EnumRules) GetNotIn() []int32 {
  2253. if x != nil {
  2254. return x.NotIn
  2255. }
  2256. return nil
  2257. }
  2258. // MessageRules describe the constraints applied to embedded message values.
  2259. // For message-type fields, validation is performed recursively.
  2260. type MessageRules struct {
  2261. state protoimpl.MessageState
  2262. sizeCache protoimpl.SizeCache
  2263. unknownFields protoimpl.UnknownFields
  2264. // Skip specifies that the validation rules of this field should not be
  2265. // evaluated
  2266. Skip *bool `protobuf:"varint,1,opt,name=skip" json:"skip,omitempty"`
  2267. // Required specifies that this field must be set
  2268. Required *bool `protobuf:"varint,2,opt,name=required" json:"required,omitempty"`
  2269. }
  2270. func (x *MessageRules) Reset() {
  2271. *x = MessageRules{}
  2272. if protoimpl.UnsafeEnabled {
  2273. mi := &file_validate_validate_proto_msgTypes[17]
  2274. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2275. ms.StoreMessageInfo(mi)
  2276. }
  2277. }
  2278. func (x *MessageRules) String() string {
  2279. return protoimpl.X.MessageStringOf(x)
  2280. }
  2281. func (*MessageRules) ProtoMessage() {}
  2282. func (x *MessageRules) ProtoReflect() protoreflect.Message {
  2283. mi := &file_validate_validate_proto_msgTypes[17]
  2284. if protoimpl.UnsafeEnabled && x != nil {
  2285. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2286. if ms.LoadMessageInfo() == nil {
  2287. ms.StoreMessageInfo(mi)
  2288. }
  2289. return ms
  2290. }
  2291. return mi.MessageOf(x)
  2292. }
  2293. // Deprecated: Use MessageRules.ProtoReflect.Descriptor instead.
  2294. func (*MessageRules) Descriptor() ([]byte, []int) {
  2295. return file_validate_validate_proto_rawDescGZIP(), []int{17}
  2296. }
  2297. func (x *MessageRules) GetSkip() bool {
  2298. if x != nil && x.Skip != nil {
  2299. return *x.Skip
  2300. }
  2301. return false
  2302. }
  2303. func (x *MessageRules) GetRequired() bool {
  2304. if x != nil && x.Required != nil {
  2305. return *x.Required
  2306. }
  2307. return false
  2308. }
  2309. // RepeatedRules describe the constraints applied to `repeated` values
  2310. type RepeatedRules struct {
  2311. state protoimpl.MessageState
  2312. sizeCache protoimpl.SizeCache
  2313. unknownFields protoimpl.UnknownFields
  2314. // MinItems specifies that this field must have the specified number of
  2315. // items at a minimum
  2316. MinItems *uint64 `protobuf:"varint,1,opt,name=min_items,json=minItems" json:"min_items,omitempty"`
  2317. // MaxItems specifies that this field must have the specified number of
  2318. // items at a maximum
  2319. MaxItems *uint64 `protobuf:"varint,2,opt,name=max_items,json=maxItems" json:"max_items,omitempty"`
  2320. // Unique specifies that all elements in this field must be unique. This
  2321. // contraint is only applicable to scalar and enum types (messages are not
  2322. // supported).
  2323. Unique *bool `protobuf:"varint,3,opt,name=unique" json:"unique,omitempty"`
  2324. // Items specifies the contraints to be applied to each item in the field.
  2325. // Repeated message fields will still execute validation against each item
  2326. // unless skip is specified here.
  2327. Items *FieldRules `protobuf:"bytes,4,opt,name=items" json:"items,omitempty"`
  2328. // IgnoreEmpty specifies that the validation rules of this field should be
  2329. // evaluated only if the field is not empty
  2330. IgnoreEmpty *bool `protobuf:"varint,5,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  2331. }
  2332. func (x *RepeatedRules) Reset() {
  2333. *x = RepeatedRules{}
  2334. if protoimpl.UnsafeEnabled {
  2335. mi := &file_validate_validate_proto_msgTypes[18]
  2336. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2337. ms.StoreMessageInfo(mi)
  2338. }
  2339. }
  2340. func (x *RepeatedRules) String() string {
  2341. return protoimpl.X.MessageStringOf(x)
  2342. }
  2343. func (*RepeatedRules) ProtoMessage() {}
  2344. func (x *RepeatedRules) ProtoReflect() protoreflect.Message {
  2345. mi := &file_validate_validate_proto_msgTypes[18]
  2346. if protoimpl.UnsafeEnabled && x != nil {
  2347. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2348. if ms.LoadMessageInfo() == nil {
  2349. ms.StoreMessageInfo(mi)
  2350. }
  2351. return ms
  2352. }
  2353. return mi.MessageOf(x)
  2354. }
  2355. // Deprecated: Use RepeatedRules.ProtoReflect.Descriptor instead.
  2356. func (*RepeatedRules) Descriptor() ([]byte, []int) {
  2357. return file_validate_validate_proto_rawDescGZIP(), []int{18}
  2358. }
  2359. func (x *RepeatedRules) GetMinItems() uint64 {
  2360. if x != nil && x.MinItems != nil {
  2361. return *x.MinItems
  2362. }
  2363. return 0
  2364. }
  2365. func (x *RepeatedRules) GetMaxItems() uint64 {
  2366. if x != nil && x.MaxItems != nil {
  2367. return *x.MaxItems
  2368. }
  2369. return 0
  2370. }
  2371. func (x *RepeatedRules) GetUnique() bool {
  2372. if x != nil && x.Unique != nil {
  2373. return *x.Unique
  2374. }
  2375. return false
  2376. }
  2377. func (x *RepeatedRules) GetItems() *FieldRules {
  2378. if x != nil {
  2379. return x.Items
  2380. }
  2381. return nil
  2382. }
  2383. func (x *RepeatedRules) GetIgnoreEmpty() bool {
  2384. if x != nil && x.IgnoreEmpty != nil {
  2385. return *x.IgnoreEmpty
  2386. }
  2387. return false
  2388. }
  2389. // MapRules describe the constraints applied to `map` values
  2390. type MapRules struct {
  2391. state protoimpl.MessageState
  2392. sizeCache protoimpl.SizeCache
  2393. unknownFields protoimpl.UnknownFields
  2394. // MinPairs specifies that this field must have the specified number of
  2395. // KVs at a minimum
  2396. MinPairs *uint64 `protobuf:"varint,1,opt,name=min_pairs,json=minPairs" json:"min_pairs,omitempty"`
  2397. // MaxPairs specifies that this field must have the specified number of
  2398. // KVs at a maximum
  2399. MaxPairs *uint64 `protobuf:"varint,2,opt,name=max_pairs,json=maxPairs" json:"max_pairs,omitempty"`
  2400. // NoSparse specifies values in this field cannot be unset. This only
  2401. // applies to map's with message value types.
  2402. NoSparse *bool `protobuf:"varint,3,opt,name=no_sparse,json=noSparse" json:"no_sparse,omitempty"`
  2403. // Keys specifies the constraints to be applied to each key in the field.
  2404. Keys *FieldRules `protobuf:"bytes,4,opt,name=keys" json:"keys,omitempty"`
  2405. // Values specifies the constraints to be applied to the value of each key
  2406. // in the field. Message values will still have their validations evaluated
  2407. // unless skip is specified here.
  2408. Values *FieldRules `protobuf:"bytes,5,opt,name=values" json:"values,omitempty"`
  2409. // IgnoreEmpty specifies that the validation rules of this field should be
  2410. // evaluated only if the field is not empty
  2411. IgnoreEmpty *bool `protobuf:"varint,6,opt,name=ignore_empty,json=ignoreEmpty" json:"ignore_empty,omitempty"`
  2412. }
  2413. func (x *MapRules) Reset() {
  2414. *x = MapRules{}
  2415. if protoimpl.UnsafeEnabled {
  2416. mi := &file_validate_validate_proto_msgTypes[19]
  2417. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2418. ms.StoreMessageInfo(mi)
  2419. }
  2420. }
  2421. func (x *MapRules) String() string {
  2422. return protoimpl.X.MessageStringOf(x)
  2423. }
  2424. func (*MapRules) ProtoMessage() {}
  2425. func (x *MapRules) ProtoReflect() protoreflect.Message {
  2426. mi := &file_validate_validate_proto_msgTypes[19]
  2427. if protoimpl.UnsafeEnabled && x != nil {
  2428. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2429. if ms.LoadMessageInfo() == nil {
  2430. ms.StoreMessageInfo(mi)
  2431. }
  2432. return ms
  2433. }
  2434. return mi.MessageOf(x)
  2435. }
  2436. // Deprecated: Use MapRules.ProtoReflect.Descriptor instead.
  2437. func (*MapRules) Descriptor() ([]byte, []int) {
  2438. return file_validate_validate_proto_rawDescGZIP(), []int{19}
  2439. }
  2440. func (x *MapRules) GetMinPairs() uint64 {
  2441. if x != nil && x.MinPairs != nil {
  2442. return *x.MinPairs
  2443. }
  2444. return 0
  2445. }
  2446. func (x *MapRules) GetMaxPairs() uint64 {
  2447. if x != nil && x.MaxPairs != nil {
  2448. return *x.MaxPairs
  2449. }
  2450. return 0
  2451. }
  2452. func (x *MapRules) GetNoSparse() bool {
  2453. if x != nil && x.NoSparse != nil {
  2454. return *x.NoSparse
  2455. }
  2456. return false
  2457. }
  2458. func (x *MapRules) GetKeys() *FieldRules {
  2459. if x != nil {
  2460. return x.Keys
  2461. }
  2462. return nil
  2463. }
  2464. func (x *MapRules) GetValues() *FieldRules {
  2465. if x != nil {
  2466. return x.Values
  2467. }
  2468. return nil
  2469. }
  2470. func (x *MapRules) GetIgnoreEmpty() bool {
  2471. if x != nil && x.IgnoreEmpty != nil {
  2472. return *x.IgnoreEmpty
  2473. }
  2474. return false
  2475. }
  2476. // AnyRules describe constraints applied exclusively to the
  2477. // `google.protobuf.Any` well-known type
  2478. type AnyRules struct {
  2479. state protoimpl.MessageState
  2480. sizeCache protoimpl.SizeCache
  2481. unknownFields protoimpl.UnknownFields
  2482. // Required specifies that this field must be set
  2483. Required *bool `protobuf:"varint,1,opt,name=required" json:"required,omitempty"`
  2484. // In specifies that this field's `type_url` must be equal to one of the
  2485. // specified values.
  2486. In []string `protobuf:"bytes,2,rep,name=in" json:"in,omitempty"`
  2487. // NotIn specifies that this field's `type_url` must not be equal to any of
  2488. // the specified values.
  2489. NotIn []string `protobuf:"bytes,3,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  2490. }
  2491. func (x *AnyRules) Reset() {
  2492. *x = AnyRules{}
  2493. if protoimpl.UnsafeEnabled {
  2494. mi := &file_validate_validate_proto_msgTypes[20]
  2495. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2496. ms.StoreMessageInfo(mi)
  2497. }
  2498. }
  2499. func (x *AnyRules) String() string {
  2500. return protoimpl.X.MessageStringOf(x)
  2501. }
  2502. func (*AnyRules) ProtoMessage() {}
  2503. func (x *AnyRules) ProtoReflect() protoreflect.Message {
  2504. mi := &file_validate_validate_proto_msgTypes[20]
  2505. if protoimpl.UnsafeEnabled && x != nil {
  2506. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2507. if ms.LoadMessageInfo() == nil {
  2508. ms.StoreMessageInfo(mi)
  2509. }
  2510. return ms
  2511. }
  2512. return mi.MessageOf(x)
  2513. }
  2514. // Deprecated: Use AnyRules.ProtoReflect.Descriptor instead.
  2515. func (*AnyRules) Descriptor() ([]byte, []int) {
  2516. return file_validate_validate_proto_rawDescGZIP(), []int{20}
  2517. }
  2518. func (x *AnyRules) GetRequired() bool {
  2519. if x != nil && x.Required != nil {
  2520. return *x.Required
  2521. }
  2522. return false
  2523. }
  2524. func (x *AnyRules) GetIn() []string {
  2525. if x != nil {
  2526. return x.In
  2527. }
  2528. return nil
  2529. }
  2530. func (x *AnyRules) GetNotIn() []string {
  2531. if x != nil {
  2532. return x.NotIn
  2533. }
  2534. return nil
  2535. }
  2536. // DurationRules describe the constraints applied exclusively to the
  2537. // `google.protobuf.Duration` well-known type
  2538. type DurationRules struct {
  2539. state protoimpl.MessageState
  2540. sizeCache protoimpl.SizeCache
  2541. unknownFields protoimpl.UnknownFields
  2542. // Required specifies that this field must be set
  2543. Required *bool `protobuf:"varint,1,opt,name=required" json:"required,omitempty"`
  2544. // Const specifies that this field must be exactly the specified value
  2545. Const *durationpb.Duration `protobuf:"bytes,2,opt,name=const" json:"const,omitempty"`
  2546. // Lt specifies that this field must be less than the specified value,
  2547. // exclusive
  2548. Lt *durationpb.Duration `protobuf:"bytes,3,opt,name=lt" json:"lt,omitempty"`
  2549. // Lt specifies that this field must be less than the specified value,
  2550. // inclusive
  2551. Lte *durationpb.Duration `protobuf:"bytes,4,opt,name=lte" json:"lte,omitempty"`
  2552. // Gt specifies that this field must be greater than the specified value,
  2553. // exclusive
  2554. Gt *durationpb.Duration `protobuf:"bytes,5,opt,name=gt" json:"gt,omitempty"`
  2555. // Gte specifies that this field must be greater than the specified value,
  2556. // inclusive
  2557. Gte *durationpb.Duration `protobuf:"bytes,6,opt,name=gte" json:"gte,omitempty"`
  2558. // In specifies that this field must be equal to one of the specified
  2559. // values
  2560. In []*durationpb.Duration `protobuf:"bytes,7,rep,name=in" json:"in,omitempty"`
  2561. // NotIn specifies that this field cannot be equal to one of the specified
  2562. // values
  2563. NotIn []*durationpb.Duration `protobuf:"bytes,8,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
  2564. }
  2565. func (x *DurationRules) Reset() {
  2566. *x = DurationRules{}
  2567. if protoimpl.UnsafeEnabled {
  2568. mi := &file_validate_validate_proto_msgTypes[21]
  2569. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2570. ms.StoreMessageInfo(mi)
  2571. }
  2572. }
  2573. func (x *DurationRules) String() string {
  2574. return protoimpl.X.MessageStringOf(x)
  2575. }
  2576. func (*DurationRules) ProtoMessage() {}
  2577. func (x *DurationRules) ProtoReflect() protoreflect.Message {
  2578. mi := &file_validate_validate_proto_msgTypes[21]
  2579. if protoimpl.UnsafeEnabled && x != nil {
  2580. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2581. if ms.LoadMessageInfo() == nil {
  2582. ms.StoreMessageInfo(mi)
  2583. }
  2584. return ms
  2585. }
  2586. return mi.MessageOf(x)
  2587. }
  2588. // Deprecated: Use DurationRules.ProtoReflect.Descriptor instead.
  2589. func (*DurationRules) Descriptor() ([]byte, []int) {
  2590. return file_validate_validate_proto_rawDescGZIP(), []int{21}
  2591. }
  2592. func (x *DurationRules) GetRequired() bool {
  2593. if x != nil && x.Required != nil {
  2594. return *x.Required
  2595. }
  2596. return false
  2597. }
  2598. func (x *DurationRules) GetConst() *durationpb.Duration {
  2599. if x != nil {
  2600. return x.Const
  2601. }
  2602. return nil
  2603. }
  2604. func (x *DurationRules) GetLt() *durationpb.Duration {
  2605. if x != nil {
  2606. return x.Lt
  2607. }
  2608. return nil
  2609. }
  2610. func (x *DurationRules) GetLte() *durationpb.Duration {
  2611. if x != nil {
  2612. return x.Lte
  2613. }
  2614. return nil
  2615. }
  2616. func (x *DurationRules) GetGt() *durationpb.Duration {
  2617. if x != nil {
  2618. return x.Gt
  2619. }
  2620. return nil
  2621. }
  2622. func (x *DurationRules) GetGte() *durationpb.Duration {
  2623. if x != nil {
  2624. return x.Gte
  2625. }
  2626. return nil
  2627. }
  2628. func (x *DurationRules) GetIn() []*durationpb.Duration {
  2629. if x != nil {
  2630. return x.In
  2631. }
  2632. return nil
  2633. }
  2634. func (x *DurationRules) GetNotIn() []*durationpb.Duration {
  2635. if x != nil {
  2636. return x.NotIn
  2637. }
  2638. return nil
  2639. }
  2640. // TimestampRules describe the constraints applied exclusively to the
  2641. // `google.protobuf.Timestamp` well-known type
  2642. type TimestampRules struct {
  2643. state protoimpl.MessageState
  2644. sizeCache protoimpl.SizeCache
  2645. unknownFields protoimpl.UnknownFields
  2646. // Required specifies that this field must be set
  2647. Required *bool `protobuf:"varint,1,opt,name=required" json:"required,omitempty"`
  2648. // Const specifies that this field must be exactly the specified value
  2649. Const *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=const" json:"const,omitempty"`
  2650. // Lt specifies that this field must be less than the specified value,
  2651. // exclusive
  2652. Lt *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=lt" json:"lt,omitempty"`
  2653. // Lte specifies that this field must be less than the specified value,
  2654. // inclusive
  2655. Lte *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=lte" json:"lte,omitempty"`
  2656. // Gt specifies that this field must be greater than the specified value,
  2657. // exclusive
  2658. Gt *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=gt" json:"gt,omitempty"`
  2659. // Gte specifies that this field must be greater than the specified value,
  2660. // inclusive
  2661. Gte *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=gte" json:"gte,omitempty"`
  2662. // LtNow specifies that this must be less than the current time. LtNow
  2663. // can only be used with the Within rule.
  2664. LtNow *bool `protobuf:"varint,7,opt,name=lt_now,json=ltNow" json:"lt_now,omitempty"`
  2665. // GtNow specifies that this must be greater than the current time. GtNow
  2666. // can only be used with the Within rule.
  2667. GtNow *bool `protobuf:"varint,8,opt,name=gt_now,json=gtNow" json:"gt_now,omitempty"`
  2668. // Within specifies that this field must be within this duration of the
  2669. // current time. This constraint can be used alone or with the LtNow and
  2670. // GtNow rules.
  2671. Within *durationpb.Duration `protobuf:"bytes,9,opt,name=within" json:"within,omitempty"`
  2672. }
  2673. func (x *TimestampRules) Reset() {
  2674. *x = TimestampRules{}
  2675. if protoimpl.UnsafeEnabled {
  2676. mi := &file_validate_validate_proto_msgTypes[22]
  2677. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2678. ms.StoreMessageInfo(mi)
  2679. }
  2680. }
  2681. func (x *TimestampRules) String() string {
  2682. return protoimpl.X.MessageStringOf(x)
  2683. }
  2684. func (*TimestampRules) ProtoMessage() {}
  2685. func (x *TimestampRules) ProtoReflect() protoreflect.Message {
  2686. mi := &file_validate_validate_proto_msgTypes[22]
  2687. if protoimpl.UnsafeEnabled && x != nil {
  2688. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2689. if ms.LoadMessageInfo() == nil {
  2690. ms.StoreMessageInfo(mi)
  2691. }
  2692. return ms
  2693. }
  2694. return mi.MessageOf(x)
  2695. }
  2696. // Deprecated: Use TimestampRules.ProtoReflect.Descriptor instead.
  2697. func (*TimestampRules) Descriptor() ([]byte, []int) {
  2698. return file_validate_validate_proto_rawDescGZIP(), []int{22}
  2699. }
  2700. func (x *TimestampRules) GetRequired() bool {
  2701. if x != nil && x.Required != nil {
  2702. return *x.Required
  2703. }
  2704. return false
  2705. }
  2706. func (x *TimestampRules) GetConst() *timestamppb.Timestamp {
  2707. if x != nil {
  2708. return x.Const
  2709. }
  2710. return nil
  2711. }
  2712. func (x *TimestampRules) GetLt() *timestamppb.Timestamp {
  2713. if x != nil {
  2714. return x.Lt
  2715. }
  2716. return nil
  2717. }
  2718. func (x *TimestampRules) GetLte() *timestamppb.Timestamp {
  2719. if x != nil {
  2720. return x.Lte
  2721. }
  2722. return nil
  2723. }
  2724. func (x *TimestampRules) GetGt() *timestamppb.Timestamp {
  2725. if x != nil {
  2726. return x.Gt
  2727. }
  2728. return nil
  2729. }
  2730. func (x *TimestampRules) GetGte() *timestamppb.Timestamp {
  2731. if x != nil {
  2732. return x.Gte
  2733. }
  2734. return nil
  2735. }
  2736. func (x *TimestampRules) GetLtNow() bool {
  2737. if x != nil && x.LtNow != nil {
  2738. return *x.LtNow
  2739. }
  2740. return false
  2741. }
  2742. func (x *TimestampRules) GetGtNow() bool {
  2743. if x != nil && x.GtNow != nil {
  2744. return *x.GtNow
  2745. }
  2746. return false
  2747. }
  2748. func (x *TimestampRules) GetWithin() *durationpb.Duration {
  2749. if x != nil {
  2750. return x.Within
  2751. }
  2752. return nil
  2753. }
  2754. var file_validate_validate_proto_extTypes = []protoimpl.ExtensionInfo{
  2755. {
  2756. ExtendedType: (*descriptorpb.MessageOptions)(nil),
  2757. ExtensionType: (*bool)(nil),
  2758. Field: 1071,
  2759. Name: "validate.disabled",
  2760. Tag: "varint,1071,opt,name=disabled",
  2761. Filename: "validate/validate.proto",
  2762. },
  2763. {
  2764. ExtendedType: (*descriptorpb.MessageOptions)(nil),
  2765. ExtensionType: (*bool)(nil),
  2766. Field: 1072,
  2767. Name: "validate.ignored",
  2768. Tag: "varint,1072,opt,name=ignored",
  2769. Filename: "validate/validate.proto",
  2770. },
  2771. {
  2772. ExtendedType: (*descriptorpb.OneofOptions)(nil),
  2773. ExtensionType: (*bool)(nil),
  2774. Field: 1071,
  2775. Name: "validate.required",
  2776. Tag: "varint,1071,opt,name=required",
  2777. Filename: "validate/validate.proto",
  2778. },
  2779. {
  2780. ExtendedType: (*descriptorpb.FieldOptions)(nil),
  2781. ExtensionType: (*FieldRules)(nil),
  2782. Field: 1071,
  2783. Name: "validate.rules",
  2784. Tag: "bytes,1071,opt,name=rules",
  2785. Filename: "validate/validate.proto",
  2786. },
  2787. }
  2788. // Extension fields to descriptorpb.MessageOptions.
  2789. var (
  2790. // Disabled nullifies any validation rules for this message, including any
  2791. // message fields associated with it that do support validation.
  2792. //
  2793. // optional bool disabled = 1071;
  2794. E_Disabled = &file_validate_validate_proto_extTypes[0]
  2795. // Ignore skips generation of validation methods for this message.
  2796. //
  2797. // optional bool ignored = 1072;
  2798. E_Ignored = &file_validate_validate_proto_extTypes[1]
  2799. )
  2800. // Extension fields to descriptorpb.OneofOptions.
  2801. var (
  2802. // Required ensures that exactly one the field options in a oneof is set;
  2803. // validation fails if no fields in the oneof are set.
  2804. //
  2805. // optional bool required = 1071;
  2806. E_Required = &file_validate_validate_proto_extTypes[2]
  2807. )
  2808. // Extension fields to descriptorpb.FieldOptions.
  2809. var (
  2810. // Rules specify the validations to be performed on this field. By default,
  2811. // no validation is performed against a field.
  2812. //
  2813. // optional validate.FieldRules rules = 1071;
  2814. E_Rules = &file_validate_validate_proto_extTypes[3]
  2815. )
  2816. var File_validate_validate_proto protoreflect.FileDescriptor
  2817. var file_validate_validate_proto_rawDesc = []byte{
  2818. 0x0a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64,
  2819. 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x76, 0x61, 0x6c, 0x69, 0x64,
  2820. 0x61, 0x74, 0x65, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
  2821. 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e,
  2822. 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
  2823. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
  2824. 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
  2825. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
  2826. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc8, 0x08, 0x0a, 0x0a, 0x46, 0x69, 0x65, 0x6c, 0x64,
  2827. 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
  2828. 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
  2829. 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x07,
  2830. 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x61, 0x74,
  2831. 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
  2832. 0x65, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x05,
  2833. 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x18,
  2834. 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65,
  2835. 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x06,
  2836. 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18,
  2837. 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65,
  2838. 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x05, 0x69,
  2839. 0x6e, 0x74, 0x33, 0x32, 0x12, 0x2c, 0x0a, 0x05, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x04, 0x20,
  2840. 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x49,
  2841. 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x05, 0x69, 0x6e, 0x74,
  2842. 0x36, 0x34, 0x12, 0x2f, 0x0a, 0x06, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x05, 0x20, 0x01,
  2843. 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55, 0x49,
  2844. 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x06, 0x75, 0x69, 0x6e,
  2845. 0x74, 0x33, 0x32, 0x12, 0x2f, 0x0a, 0x06, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x06, 0x20,
  2846. 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x55,
  2847. 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x06, 0x75, 0x69,
  2848. 0x6e, 0x74, 0x36, 0x34, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x07,
  2849. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e,
  2850. 0x53, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x06, 0x73,
  2851. 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18,
  2852. 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65,
  2853. 0x2e, 0x53, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x06,
  2854. 0x73, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x32, 0x0a, 0x07, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33,
  2855. 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
  2856. 0x74, 0x65, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48,
  2857. 0x00, 0x52, 0x07, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x32, 0x0a, 0x07, 0x66, 0x69,
  2858. 0x78, 0x65, 0x64, 0x36, 0x34, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x61,
  2859. 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75,
  2860. 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x07, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x12, 0x35,
  2861. 0x0a, 0x08, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b,
  2862. 0x32, 0x17, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, 0x78,
  2863. 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x08, 0x73, 0x66, 0x69,
  2864. 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x35, 0x0a, 0x08, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36,
  2865. 0x34, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
  2866. 0x74, 0x65, 0x2e, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73,
  2867. 0x48, 0x00, 0x52, 0x08, 0x73, 0x66, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x12, 0x29, 0x0a, 0x04,
  2868. 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x61, 0x6c,
  2869. 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48,
  2870. 0x00, 0x52, 0x04, 0x62, 0x6f, 0x6f, 0x6c, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e,
  2871. 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
  2872. 0x74, 0x65, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00,
  2873. 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65,
  2874. 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
  2875. 0x74, 0x65, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52,
  2876. 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x18, 0x10,
  2877. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e,
  2878. 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x04, 0x65, 0x6e, 0x75,
  2879. 0x6d, 0x12, 0x35, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x12, 0x20,
  2880. 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x52,
  2881. 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x08,
  2882. 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x03, 0x6d, 0x61, 0x70, 0x18,
  2883. 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65,
  2884. 0x2e, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x03, 0x6d, 0x61, 0x70,
  2885. 0x12, 0x26, 0x0a, 0x03, 0x61, 0x6e, 0x79, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
  2886. 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x75, 0x6c, 0x65,
  2887. 0x73, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6e, 0x79, 0x12, 0x35, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61,
  2888. 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x76, 0x61, 0x6c,
  2889. 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75,
  2890. 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
  2891. 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x16, 0x20, 0x01,
  2892. 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x54, 0x69,
  2893. 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x48, 0x00, 0x52, 0x09,
  2894. 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70,
  2895. 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x0a, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x52, 0x75, 0x6c, 0x65, 0x73,
  2896. 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52,
  2897. 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01,
  2898. 0x28, 0x02, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20,
  2899. 0x01, 0x28, 0x02, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04,
  2900. 0x20, 0x01, 0x28, 0x02, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18,
  2901. 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e,
  2902. 0x18, 0x06, 0x20, 0x03, 0x28, 0x02, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f,
  2903. 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x02, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49,
  2904. 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74,
  2905. 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45,
  2906. 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb1, 0x01, 0x0a, 0x0b, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x52,
  2907. 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20,
  2908. 0x01, 0x28, 0x01, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74,
  2909. 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74,
  2910. 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02,
  2911. 0x67, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03,
  2912. 0x67, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e,
  2913. 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x01, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15,
  2914. 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x01, 0x52, 0x05,
  2915. 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f,
  2916. 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e,
  2917. 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb0, 0x01, 0x0a, 0x0a, 0x49, 0x6e, 0x74,
  2918. 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74,
  2919. 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a,
  2920. 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a,
  2921. 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12,
  2922. 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x67, 0x74, 0x12,
  2923. 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x67, 0x74,
  2924. 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x02, 0x69,
  2925. 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28,
  2926. 0x05, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f,
  2927. 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b,
  2928. 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb0, 0x01, 0x0a, 0x0a,
  2929. 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f,
  2930. 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74,
  2931. 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x6c, 0x74,
  2932. 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6c,
  2933. 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02,
  2934. 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52,
  2935. 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x03,
  2936. 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07,
  2937. 0x20, 0x03, 0x28, 0x03, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69,
  2938. 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28,
  2939. 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb1,
  2940. 0x01, 0x0a, 0x0b, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14,
  2941. 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63,
  2942. 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
  2943. 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
  2944. 0x0d, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04, 0x20, 0x01,
  2945. 0x28, 0x0d, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x05, 0x20,
  2946. 0x01, 0x28, 0x0d, 0x52, 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06,
  2947. 0x20, 0x03, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f,
  2948. 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12,
  2949. 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18,
  2950. 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70,
  2951. 0x74, 0x79, 0x22, 0xb1, 0x01, 0x0a, 0x0b, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c,
  2952. 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
  2953. 0x04, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02,
  2954. 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18,
  2955. 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74,
  2956. 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74,
  2957. 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02,
  2958. 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x04, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06,
  2959. 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f,
  2960. 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d,
  2961. 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72,
  2962. 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb1, 0x01, 0x0a, 0x0b, 0x53, 0x49, 0x6e, 0x74, 0x33,
  2963. 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18,
  2964. 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02,
  2965. 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03,
  2966. 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e,
  2967. 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10,
  2968. 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x11, 0x52, 0x03, 0x67, 0x74, 0x65,
  2969. 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x11, 0x52, 0x02, 0x69, 0x6e,
  2970. 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x11,
  2971. 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72,
  2972. 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69,
  2973. 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb1, 0x01, 0x0a, 0x0b, 0x53,
  2974. 0x49, 0x6e, 0x74, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f,
  2975. 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x12, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74,
  2976. 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x12, 0x52, 0x02, 0x6c, 0x74,
  2977. 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x12, 0x52, 0x03, 0x6c,
  2978. 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x12, 0x52, 0x02,
  2979. 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x12, 0x52,
  2980. 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x12,
  2981. 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07,
  2982. 0x20, 0x03, 0x28, 0x12, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69,
  2983. 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28,
  2984. 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb2,
  2985. 0x01, 0x0a, 0x0c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12,
  2986. 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x05,
  2987. 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
  2988. 0x07, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01,
  2989. 0x28, 0x07, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04, 0x20,
  2990. 0x01, 0x28, 0x07, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x05,
  2991. 0x20, 0x01, 0x28, 0x07, 0x52, 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18,
  2992. 0x06, 0x20, 0x03, 0x28, 0x07, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74,
  2993. 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x07, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e,
  2994. 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79,
  2995. 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d,
  2996. 0x70, 0x74, 0x79, 0x22, 0xb2, 0x01, 0x0a, 0x0c, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52,
  2997. 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20,
  2998. 0x01, 0x28, 0x06, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74,
  2999. 0x18, 0x02, 0x20, 0x01, 0x28, 0x06, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74,
  3000. 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x06, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02,
  3001. 0x67, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x06, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03,
  3002. 0x67, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x06, 0x52, 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e,
  3003. 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x06, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15,
  3004. 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x06, 0x52, 0x05,
  3005. 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f,
  3006. 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e,
  3007. 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb3, 0x01, 0x0a, 0x0d, 0x53, 0x46, 0x69,
  3008. 0x78, 0x65, 0x64, 0x33, 0x32, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f,
  3009. 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74,
  3010. 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x02, 0x6c, 0x74,
  3011. 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x03, 0x6c,
  3012. 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x02,
  3013. 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0f, 0x52,
  3014. 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0f,
  3015. 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07,
  3016. 0x20, 0x03, 0x28, 0x0f, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69,
  3017. 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28,
  3018. 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb3,
  3019. 0x01, 0x0a, 0x0d, 0x53, 0x46, 0x69, 0x78, 0x65, 0x64, 0x36, 0x34, 0x52, 0x75, 0x6c, 0x65, 0x73,
  3020. 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x10, 0x52,
  3021. 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01,
  3022. 0x28, 0x10, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x74, 0x65, 0x18, 0x03, 0x20,
  3023. 0x01, 0x28, 0x10, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x04,
  3024. 0x20, 0x01, 0x28, 0x10, 0x52, 0x02, 0x67, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18,
  3025. 0x05, 0x20, 0x01, 0x28, 0x10, 0x52, 0x03, 0x67, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e,
  3026. 0x18, 0x06, 0x20, 0x03, 0x28, 0x10, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f,
  3027. 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x10, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49,
  3028. 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74,
  3029. 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45,
  3030. 0x6d, 0x70, 0x74, 0x79, 0x22, 0x21, 0x0a, 0x09, 0x42, 0x6f, 0x6f, 0x6c, 0x52, 0x75, 0x6c, 0x65,
  3031. 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
  3032. 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x22, 0xd4, 0x05, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69,
  3033. 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74,
  3034. 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x10, 0x0a,
  3035. 0x03, 0x6c, 0x65, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6c, 0x65, 0x6e, 0x12,
  3036. 0x17, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
  3037. 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x4c, 0x65, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x5f,
  3038. 0x6c, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x4c, 0x65,
  3039. 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x6e, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x14,
  3040. 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6c, 0x65, 0x6e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1b,
  3041. 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
  3042. 0x04, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6d,
  3043. 0x61, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08,
  3044. 0x6d, 0x61, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x74, 0x74,
  3045. 0x65, 0x72, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x74, 0x74, 0x65,
  3046. 0x72, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x07, 0x20, 0x01,
  3047. 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75,
  3048. 0x66, 0x66, 0x69, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x66, 0x66,
  3049. 0x69, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x09,
  3050. 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x21,
  3051. 0x0a, 0x0c, 0x6e, 0x6f, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x17,
  3052. 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x6f, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
  3053. 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x02, 0x69,
  3054. 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x03, 0x28,
  3055. 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x16, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69,
  3056. 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c,
  3057. 0x12, 0x1c, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01,
  3058. 0x28, 0x08, 0x48, 0x00, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10,
  3059. 0x0a, 0x02, 0x69, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x02, 0x69, 0x70,
  3060. 0x12, 0x14, 0x0a, 0x04, 0x69, 0x70, 0x76, 0x34, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00,
  3061. 0x52, 0x04, 0x69, 0x70, 0x76, 0x34, 0x12, 0x14, 0x0a, 0x04, 0x69, 0x70, 0x76, 0x36, 0x18, 0x10,
  3062. 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x04, 0x69, 0x70, 0x76, 0x36, 0x12, 0x12, 0x0a, 0x03,
  3063. 0x75, 0x72, 0x69, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x03, 0x75, 0x72, 0x69,
  3064. 0x12, 0x19, 0x0a, 0x07, 0x75, 0x72, 0x69, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x12, 0x20, 0x01, 0x28,
  3065. 0x08, 0x48, 0x00, 0x52, 0x06, 0x75, 0x72, 0x69, 0x52, 0x65, 0x66, 0x12, 0x1a, 0x0a, 0x07, 0x61,
  3066. 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x07,
  3067. 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18,
  3068. 0x16, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x40, 0x0a,
  3069. 0x10, 0x77, 0x65, 0x6c, 0x6c, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x65, 0x67, 0x65,
  3070. 0x78, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
  3071. 0x74, 0x65, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x67, 0x65, 0x78, 0x48, 0x00, 0x52,
  3072. 0x0e, 0x77, 0x65, 0x6c, 0x6c, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x67, 0x65, 0x78, 0x12,
  3073. 0x1c, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x3a,
  3074. 0x04, 0x74, 0x72, 0x75, 0x65, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x12, 0x21, 0x0a,
  3075. 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x1a, 0x20,
  3076. 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70, 0x74, 0x79,
  3077. 0x42, 0x0c, 0x0a, 0x0a, 0x77, 0x65, 0x6c, 0x6c, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x22, 0xe2,
  3078. 0x02, 0x0a, 0x0a, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a,
  3079. 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x63, 0x6f,
  3080. 0x6e, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6c, 0x65, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04,
  3081. 0x52, 0x03, 0x6c, 0x65, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x5f, 0x6c, 0x65, 0x6e,
  3082. 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x4c, 0x65, 0x6e, 0x12, 0x17,
  3083. 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52,
  3084. 0x06, 0x6d, 0x61, 0x78, 0x4c, 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x74, 0x74, 0x65,
  3085. 0x72, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72,
  3086. 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28,
  3087. 0x0c, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x66,
  3088. 0x66, 0x69, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x75, 0x66, 0x66, 0x69,
  3089. 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x07, 0x20,
  3090. 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x0e, 0x0a,
  3091. 0x02, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a,
  3092. 0x06, 0x6e, 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x05, 0x6e,
  3093. 0x6f, 0x74, 0x49, 0x6e, 0x12, 0x10, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08,
  3094. 0x48, 0x00, 0x52, 0x02, 0x69, 0x70, 0x12, 0x14, 0x0a, 0x04, 0x69, 0x70, 0x76, 0x34, 0x18, 0x0b,
  3095. 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x04, 0x69, 0x70, 0x76, 0x34, 0x12, 0x14, 0x0a, 0x04,
  3096. 0x69, 0x70, 0x76, 0x36, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x04, 0x69, 0x70,
  3097. 0x76, 0x36, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70,
  3098. 0x74, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
  3099. 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x77, 0x65, 0x6c, 0x6c, 0x5f, 0x6b, 0x6e,
  3100. 0x6f, 0x77, 0x6e, 0x22, 0x6b, 0x0a, 0x09, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x75, 0x6c, 0x65, 0x73,
  3101. 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
  3102. 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65,
  3103. 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x65,
  3104. 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e, 0x18,
  3105. 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x74,
  3106. 0x5f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e,
  3107. 0x22, 0x3e, 0x0a, 0x0c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73,
  3108. 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04,
  3109. 0x73, 0x6b, 0x69, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64,
  3110. 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64,
  3111. 0x22, 0xb0, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x52, 0x75, 0x6c,
  3112. 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18,
  3113. 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12,
  3114. 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01,
  3115. 0x28, 0x04, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x16, 0x0a, 0x06,
  3116. 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e,
  3117. 0x69, 0x71, 0x75, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20,
  3118. 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46,
  3119. 0x69, 0x65, 0x6c, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73,
  3120. 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79,
  3121. 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d,
  3122. 0x70, 0x74, 0x79, 0x22, 0xdc, 0x01, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73,
  3123. 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x18, 0x01, 0x20,
  3124. 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x69, 0x72, 0x73, 0x12, 0x1b, 0x0a,
  3125. 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x61, 0x69, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
  3126. 0x52, 0x08, 0x6d, 0x61, 0x78, 0x50, 0x61, 0x69, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f,
  3127. 0x5f, 0x73, 0x70, 0x61, 0x72, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e,
  3128. 0x6f, 0x53, 0x70, 0x61, 0x72, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18,
  3129. 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65,
  3130. 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x04, 0x6b, 0x65, 0x79,
  3131. 0x73, 0x12, 0x2c, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28,
  3132. 0x0b, 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x65,
  3133. 0x6c, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12,
  3134. 0x21, 0x0a, 0x0c, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18,
  3135. 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x45, 0x6d, 0x70,
  3136. 0x74, 0x79, 0x22, 0x4d, 0x0a, 0x08, 0x41, 0x6e, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1a,
  3137. 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
  3138. 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x6e,
  3139. 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f,
  3140. 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49,
  3141. 0x6e, 0x22, 0xe9, 0x02, 0x0a, 0x0d, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75,
  3142. 0x6c, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18,
  3143. 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12,
  3144. 0x2f, 0x0a, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
  3145. 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  3146. 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74,
  3147. 0x12, 0x29, 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67,
  3148. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44,
  3149. 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x2b, 0x0a, 0x03, 0x6c,
  3150. 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3151. 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
  3152. 0x69, 0x6f, 0x6e, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x05,
  3153. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  3154. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
  3155. 0x02, 0x67, 0x74, 0x12, 0x2b, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
  3156. 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  3157. 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x03, 0x67, 0x74, 0x65,
  3158. 0x12, 0x29, 0x0a, 0x02, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67,
  3159. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44,
  3160. 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x02, 0x69, 0x6e, 0x12, 0x30, 0x0a, 0x06, 0x6e,
  3161. 0x6f, 0x74, 0x5f, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f,
  3162. 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75,
  3163. 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x49, 0x6e, 0x22, 0xf3, 0x02,
  3164. 0x0a, 0x0e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x75, 0x6c, 0x65, 0x73,
  3165. 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
  3166. 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x05,
  3167. 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
  3168. 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
  3169. 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x05, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x12, 0x2a,
  3170. 0x0a, 0x02, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
  3171. 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
  3172. 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x02, 0x6c, 0x74, 0x12, 0x2c, 0x0a, 0x03, 0x6c, 0x74,
  3173. 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3174. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
  3175. 0x61, 0x6d, 0x70, 0x52, 0x03, 0x6c, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x02, 0x67, 0x74, 0x18, 0x05,
  3176. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  3177. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
  3178. 0x52, 0x02, 0x67, 0x74, 0x12, 0x2c, 0x0a, 0x03, 0x67, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
  3179. 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3180. 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x03, 0x67,
  3181. 0x74, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6c, 0x74, 0x5f, 0x6e, 0x6f, 0x77, 0x18, 0x07, 0x20, 0x01,
  3182. 0x28, 0x08, 0x52, 0x05, 0x6c, 0x74, 0x4e, 0x6f, 0x77, 0x12, 0x15, 0x0a, 0x06, 0x67, 0x74, 0x5f,
  3183. 0x6e, 0x6f, 0x77, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x67, 0x74, 0x4e, 0x6f, 0x77,
  3184. 0x12, 0x31, 0x0a, 0x06, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
  3185. 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  3186. 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x77, 0x69, 0x74,
  3187. 0x68, 0x69, 0x6e, 0x2a, 0x46, 0x0a, 0x0a, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x67, 0x65,
  3188. 0x78, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x14,
  3189. 0x0a, 0x10, 0x48, 0x54, 0x54, 0x50, 0x5f, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x5f, 0x4e, 0x41,
  3190. 0x4d, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x48, 0x54, 0x54, 0x50, 0x5f, 0x48, 0x45, 0x41,
  3191. 0x44, 0x45, 0x52, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x10, 0x02, 0x3a, 0x3c, 0x0a, 0x08, 0x64,
  3192. 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3193. 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
  3194. 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xaf, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52,
  3195. 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x3a, 0x3a, 0x0a, 0x07, 0x69, 0x67, 0x6e,
  3196. 0x6f, 0x72, 0x65, 0x64, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  3197. 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70,
  3198. 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xb0, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x67,
  3199. 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x3a, 0x3a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
  3200. 0x64, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3201. 0x62, 0x75, 0x66, 0x2e, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  3202. 0x18, 0xaf, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
  3203. 0x64, 0x3a, 0x4a, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f,
  3204. 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65,
  3205. 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xaf, 0x08, 0x20, 0x01, 0x28, 0x0b,
  3206. 0x32, 0x14, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c,
  3207. 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x42, 0x50, 0x0a,
  3208. 0x1a, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x70,
  3209. 0x67, 0x76, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5a, 0x32, 0x67, 0x69, 0x74,
  3210. 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f,
  3211. 0x78, 0x79, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x2d, 0x67, 0x65, 0x6e, 0x2d, 0x76, 0x61,
  3212. 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65,
  3213. }
  3214. var (
  3215. file_validate_validate_proto_rawDescOnce sync.Once
  3216. file_validate_validate_proto_rawDescData = file_validate_validate_proto_rawDesc
  3217. )
  3218. func file_validate_validate_proto_rawDescGZIP() []byte {
  3219. file_validate_validate_proto_rawDescOnce.Do(func() {
  3220. file_validate_validate_proto_rawDescData = protoimpl.X.CompressGZIP(file_validate_validate_proto_rawDescData)
  3221. })
  3222. return file_validate_validate_proto_rawDescData
  3223. }
  3224. var file_validate_validate_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  3225. var file_validate_validate_proto_msgTypes = make([]protoimpl.MessageInfo, 23)
  3226. var file_validate_validate_proto_goTypes = []interface{}{
  3227. (KnownRegex)(0), // 0: validate.KnownRegex
  3228. (*FieldRules)(nil), // 1: validate.FieldRules
  3229. (*FloatRules)(nil), // 2: validate.FloatRules
  3230. (*DoubleRules)(nil), // 3: validate.DoubleRules
  3231. (*Int32Rules)(nil), // 4: validate.Int32Rules
  3232. (*Int64Rules)(nil), // 5: validate.Int64Rules
  3233. (*UInt32Rules)(nil), // 6: validate.UInt32Rules
  3234. (*UInt64Rules)(nil), // 7: validate.UInt64Rules
  3235. (*SInt32Rules)(nil), // 8: validate.SInt32Rules
  3236. (*SInt64Rules)(nil), // 9: validate.SInt64Rules
  3237. (*Fixed32Rules)(nil), // 10: validate.Fixed32Rules
  3238. (*Fixed64Rules)(nil), // 11: validate.Fixed64Rules
  3239. (*SFixed32Rules)(nil), // 12: validate.SFixed32Rules
  3240. (*SFixed64Rules)(nil), // 13: validate.SFixed64Rules
  3241. (*BoolRules)(nil), // 14: validate.BoolRules
  3242. (*StringRules)(nil), // 15: validate.StringRules
  3243. (*BytesRules)(nil), // 16: validate.BytesRules
  3244. (*EnumRules)(nil), // 17: validate.EnumRules
  3245. (*MessageRules)(nil), // 18: validate.MessageRules
  3246. (*RepeatedRules)(nil), // 19: validate.RepeatedRules
  3247. (*MapRules)(nil), // 20: validate.MapRules
  3248. (*AnyRules)(nil), // 21: validate.AnyRules
  3249. (*DurationRules)(nil), // 22: validate.DurationRules
  3250. (*TimestampRules)(nil), // 23: validate.TimestampRules
  3251. (*durationpb.Duration)(nil), // 24: google.protobuf.Duration
  3252. (*timestamppb.Timestamp)(nil), // 25: google.protobuf.Timestamp
  3253. (*descriptorpb.MessageOptions)(nil), // 26: google.protobuf.MessageOptions
  3254. (*descriptorpb.OneofOptions)(nil), // 27: google.protobuf.OneofOptions
  3255. (*descriptorpb.FieldOptions)(nil), // 28: google.protobuf.FieldOptions
  3256. }
  3257. var file_validate_validate_proto_depIdxs = []int32{
  3258. 18, // 0: validate.FieldRules.message:type_name -> validate.MessageRules
  3259. 2, // 1: validate.FieldRules.float:type_name -> validate.FloatRules
  3260. 3, // 2: validate.FieldRules.double:type_name -> validate.DoubleRules
  3261. 4, // 3: validate.FieldRules.int32:type_name -> validate.Int32Rules
  3262. 5, // 4: validate.FieldRules.int64:type_name -> validate.Int64Rules
  3263. 6, // 5: validate.FieldRules.uint32:type_name -> validate.UInt32Rules
  3264. 7, // 6: validate.FieldRules.uint64:type_name -> validate.UInt64Rules
  3265. 8, // 7: validate.FieldRules.sint32:type_name -> validate.SInt32Rules
  3266. 9, // 8: validate.FieldRules.sint64:type_name -> validate.SInt64Rules
  3267. 10, // 9: validate.FieldRules.fixed32:type_name -> validate.Fixed32Rules
  3268. 11, // 10: validate.FieldRules.fixed64:type_name -> validate.Fixed64Rules
  3269. 12, // 11: validate.FieldRules.sfixed32:type_name -> validate.SFixed32Rules
  3270. 13, // 12: validate.FieldRules.sfixed64:type_name -> validate.SFixed64Rules
  3271. 14, // 13: validate.FieldRules.bool:type_name -> validate.BoolRules
  3272. 15, // 14: validate.FieldRules.string:type_name -> validate.StringRules
  3273. 16, // 15: validate.FieldRules.bytes:type_name -> validate.BytesRules
  3274. 17, // 16: validate.FieldRules.enum:type_name -> validate.EnumRules
  3275. 19, // 17: validate.FieldRules.repeated:type_name -> validate.RepeatedRules
  3276. 20, // 18: validate.FieldRules.map:type_name -> validate.MapRules
  3277. 21, // 19: validate.FieldRules.any:type_name -> validate.AnyRules
  3278. 22, // 20: validate.FieldRules.duration:type_name -> validate.DurationRules
  3279. 23, // 21: validate.FieldRules.timestamp:type_name -> validate.TimestampRules
  3280. 0, // 22: validate.StringRules.well_known_regex:type_name -> validate.KnownRegex
  3281. 1, // 23: validate.RepeatedRules.items:type_name -> validate.FieldRules
  3282. 1, // 24: validate.MapRules.keys:type_name -> validate.FieldRules
  3283. 1, // 25: validate.MapRules.values:type_name -> validate.FieldRules
  3284. 24, // 26: validate.DurationRules.const:type_name -> google.protobuf.Duration
  3285. 24, // 27: validate.DurationRules.lt:type_name -> google.protobuf.Duration
  3286. 24, // 28: validate.DurationRules.lte:type_name -> google.protobuf.Duration
  3287. 24, // 29: validate.DurationRules.gt:type_name -> google.protobuf.Duration
  3288. 24, // 30: validate.DurationRules.gte:type_name -> google.protobuf.Duration
  3289. 24, // 31: validate.DurationRules.in:type_name -> google.protobuf.Duration
  3290. 24, // 32: validate.DurationRules.not_in:type_name -> google.protobuf.Duration
  3291. 25, // 33: validate.TimestampRules.const:type_name -> google.protobuf.Timestamp
  3292. 25, // 34: validate.TimestampRules.lt:type_name -> google.protobuf.Timestamp
  3293. 25, // 35: validate.TimestampRules.lte:type_name -> google.protobuf.Timestamp
  3294. 25, // 36: validate.TimestampRules.gt:type_name -> google.protobuf.Timestamp
  3295. 25, // 37: validate.TimestampRules.gte:type_name -> google.protobuf.Timestamp
  3296. 24, // 38: validate.TimestampRules.within:type_name -> google.protobuf.Duration
  3297. 26, // 39: validate.disabled:extendee -> google.protobuf.MessageOptions
  3298. 26, // 40: validate.ignored:extendee -> google.protobuf.MessageOptions
  3299. 27, // 41: validate.required:extendee -> google.protobuf.OneofOptions
  3300. 28, // 42: validate.rules:extendee -> google.protobuf.FieldOptions
  3301. 1, // 43: validate.rules:type_name -> validate.FieldRules
  3302. 44, // [44:44] is the sub-list for method output_type
  3303. 44, // [44:44] is the sub-list for method input_type
  3304. 43, // [43:44] is the sub-list for extension type_name
  3305. 39, // [39:43] is the sub-list for extension extendee
  3306. 0, // [0:39] is the sub-list for field type_name
  3307. }
  3308. func init() { file_validate_validate_proto_init() }
  3309. func file_validate_validate_proto_init() {
  3310. if File_validate_validate_proto != nil {
  3311. return
  3312. }
  3313. if !protoimpl.UnsafeEnabled {
  3314. file_validate_validate_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  3315. switch v := v.(*FieldRules); i {
  3316. case 0:
  3317. return &v.state
  3318. case 1:
  3319. return &v.sizeCache
  3320. case 2:
  3321. return &v.unknownFields
  3322. default:
  3323. return nil
  3324. }
  3325. }
  3326. file_validate_validate_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  3327. switch v := v.(*FloatRules); i {
  3328. case 0:
  3329. return &v.state
  3330. case 1:
  3331. return &v.sizeCache
  3332. case 2:
  3333. return &v.unknownFields
  3334. default:
  3335. return nil
  3336. }
  3337. }
  3338. file_validate_validate_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  3339. switch v := v.(*DoubleRules); i {
  3340. case 0:
  3341. return &v.state
  3342. case 1:
  3343. return &v.sizeCache
  3344. case 2:
  3345. return &v.unknownFields
  3346. default:
  3347. return nil
  3348. }
  3349. }
  3350. file_validate_validate_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  3351. switch v := v.(*Int32Rules); i {
  3352. case 0:
  3353. return &v.state
  3354. case 1:
  3355. return &v.sizeCache
  3356. case 2:
  3357. return &v.unknownFields
  3358. default:
  3359. return nil
  3360. }
  3361. }
  3362. file_validate_validate_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  3363. switch v := v.(*Int64Rules); i {
  3364. case 0:
  3365. return &v.state
  3366. case 1:
  3367. return &v.sizeCache
  3368. case 2:
  3369. return &v.unknownFields
  3370. default:
  3371. return nil
  3372. }
  3373. }
  3374. file_validate_validate_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  3375. switch v := v.(*UInt32Rules); i {
  3376. case 0:
  3377. return &v.state
  3378. case 1:
  3379. return &v.sizeCache
  3380. case 2:
  3381. return &v.unknownFields
  3382. default:
  3383. return nil
  3384. }
  3385. }
  3386. file_validate_validate_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  3387. switch v := v.(*UInt64Rules); i {
  3388. case 0:
  3389. return &v.state
  3390. case 1:
  3391. return &v.sizeCache
  3392. case 2:
  3393. return &v.unknownFields
  3394. default:
  3395. return nil
  3396. }
  3397. }
  3398. file_validate_validate_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  3399. switch v := v.(*SInt32Rules); i {
  3400. case 0:
  3401. return &v.state
  3402. case 1:
  3403. return &v.sizeCache
  3404. case 2:
  3405. return &v.unknownFields
  3406. default:
  3407. return nil
  3408. }
  3409. }
  3410. file_validate_validate_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  3411. switch v := v.(*SInt64Rules); i {
  3412. case 0:
  3413. return &v.state
  3414. case 1:
  3415. return &v.sizeCache
  3416. case 2:
  3417. return &v.unknownFields
  3418. default:
  3419. return nil
  3420. }
  3421. }
  3422. file_validate_validate_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  3423. switch v := v.(*Fixed32Rules); i {
  3424. case 0:
  3425. return &v.state
  3426. case 1:
  3427. return &v.sizeCache
  3428. case 2:
  3429. return &v.unknownFields
  3430. default:
  3431. return nil
  3432. }
  3433. }
  3434. file_validate_validate_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  3435. switch v := v.(*Fixed64Rules); i {
  3436. case 0:
  3437. return &v.state
  3438. case 1:
  3439. return &v.sizeCache
  3440. case 2:
  3441. return &v.unknownFields
  3442. default:
  3443. return nil
  3444. }
  3445. }
  3446. file_validate_validate_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  3447. switch v := v.(*SFixed32Rules); i {
  3448. case 0:
  3449. return &v.state
  3450. case 1:
  3451. return &v.sizeCache
  3452. case 2:
  3453. return &v.unknownFields
  3454. default:
  3455. return nil
  3456. }
  3457. }
  3458. file_validate_validate_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  3459. switch v := v.(*SFixed64Rules); i {
  3460. case 0:
  3461. return &v.state
  3462. case 1:
  3463. return &v.sizeCache
  3464. case 2:
  3465. return &v.unknownFields
  3466. default:
  3467. return nil
  3468. }
  3469. }
  3470. file_validate_validate_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  3471. switch v := v.(*BoolRules); i {
  3472. case 0:
  3473. return &v.state
  3474. case 1:
  3475. return &v.sizeCache
  3476. case 2:
  3477. return &v.unknownFields
  3478. default:
  3479. return nil
  3480. }
  3481. }
  3482. file_validate_validate_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  3483. switch v := v.(*StringRules); i {
  3484. case 0:
  3485. return &v.state
  3486. case 1:
  3487. return &v.sizeCache
  3488. case 2:
  3489. return &v.unknownFields
  3490. default:
  3491. return nil
  3492. }
  3493. }
  3494. file_validate_validate_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  3495. switch v := v.(*BytesRules); i {
  3496. case 0:
  3497. return &v.state
  3498. case 1:
  3499. return &v.sizeCache
  3500. case 2:
  3501. return &v.unknownFields
  3502. default:
  3503. return nil
  3504. }
  3505. }
  3506. file_validate_validate_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  3507. switch v := v.(*EnumRules); i {
  3508. case 0:
  3509. return &v.state
  3510. case 1:
  3511. return &v.sizeCache
  3512. case 2:
  3513. return &v.unknownFields
  3514. default:
  3515. return nil
  3516. }
  3517. }
  3518. file_validate_validate_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  3519. switch v := v.(*MessageRules); i {
  3520. case 0:
  3521. return &v.state
  3522. case 1:
  3523. return &v.sizeCache
  3524. case 2:
  3525. return &v.unknownFields
  3526. default:
  3527. return nil
  3528. }
  3529. }
  3530. file_validate_validate_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  3531. switch v := v.(*RepeatedRules); i {
  3532. case 0:
  3533. return &v.state
  3534. case 1:
  3535. return &v.sizeCache
  3536. case 2:
  3537. return &v.unknownFields
  3538. default:
  3539. return nil
  3540. }
  3541. }
  3542. file_validate_validate_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  3543. switch v := v.(*MapRules); i {
  3544. case 0:
  3545. return &v.state
  3546. case 1:
  3547. return &v.sizeCache
  3548. case 2:
  3549. return &v.unknownFields
  3550. default:
  3551. return nil
  3552. }
  3553. }
  3554. file_validate_validate_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  3555. switch v := v.(*AnyRules); i {
  3556. case 0:
  3557. return &v.state
  3558. case 1:
  3559. return &v.sizeCache
  3560. case 2:
  3561. return &v.unknownFields
  3562. default:
  3563. return nil
  3564. }
  3565. }
  3566. file_validate_validate_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  3567. switch v := v.(*DurationRules); i {
  3568. case 0:
  3569. return &v.state
  3570. case 1:
  3571. return &v.sizeCache
  3572. case 2:
  3573. return &v.unknownFields
  3574. default:
  3575. return nil
  3576. }
  3577. }
  3578. file_validate_validate_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  3579. switch v := v.(*TimestampRules); i {
  3580. case 0:
  3581. return &v.state
  3582. case 1:
  3583. return &v.sizeCache
  3584. case 2:
  3585. return &v.unknownFields
  3586. default:
  3587. return nil
  3588. }
  3589. }
  3590. }
  3591. file_validate_validate_proto_msgTypes[0].OneofWrappers = []interface{}{
  3592. (*FieldRules_Float)(nil),
  3593. (*FieldRules_Double)(nil),
  3594. (*FieldRules_Int32)(nil),
  3595. (*FieldRules_Int64)(nil),
  3596. (*FieldRules_Uint32)(nil),
  3597. (*FieldRules_Uint64)(nil),
  3598. (*FieldRules_Sint32)(nil),
  3599. (*FieldRules_Sint64)(nil),
  3600. (*FieldRules_Fixed32)(nil),
  3601. (*FieldRules_Fixed64)(nil),
  3602. (*FieldRules_Sfixed32)(nil),
  3603. (*FieldRules_Sfixed64)(nil),
  3604. (*FieldRules_Bool)(nil),
  3605. (*FieldRules_String_)(nil),
  3606. (*FieldRules_Bytes)(nil),
  3607. (*FieldRules_Enum)(nil),
  3608. (*FieldRules_Repeated)(nil),
  3609. (*FieldRules_Map)(nil),
  3610. (*FieldRules_Any)(nil),
  3611. (*FieldRules_Duration)(nil),
  3612. (*FieldRules_Timestamp)(nil),
  3613. }
  3614. file_validate_validate_proto_msgTypes[14].OneofWrappers = []interface{}{
  3615. (*StringRules_Email)(nil),
  3616. (*StringRules_Hostname)(nil),
  3617. (*StringRules_Ip)(nil),
  3618. (*StringRules_Ipv4)(nil),
  3619. (*StringRules_Ipv6)(nil),
  3620. (*StringRules_Uri)(nil),
  3621. (*StringRules_UriRef)(nil),
  3622. (*StringRules_Address)(nil),
  3623. (*StringRules_Uuid)(nil),
  3624. (*StringRules_WellKnownRegex)(nil),
  3625. }
  3626. file_validate_validate_proto_msgTypes[15].OneofWrappers = []interface{}{
  3627. (*BytesRules_Ip)(nil),
  3628. (*BytesRules_Ipv4)(nil),
  3629. (*BytesRules_Ipv6)(nil),
  3630. }
  3631. type x struct{}
  3632. out := protoimpl.TypeBuilder{
  3633. File: protoimpl.DescBuilder{
  3634. GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  3635. RawDescriptor: file_validate_validate_proto_rawDesc,
  3636. NumEnums: 1,
  3637. NumMessages: 23,
  3638. NumExtensions: 4,
  3639. NumServices: 0,
  3640. },
  3641. GoTypes: file_validate_validate_proto_goTypes,
  3642. DependencyIndexes: file_validate_validate_proto_depIdxs,
  3643. EnumInfos: file_validate_validate_proto_enumTypes,
  3644. MessageInfos: file_validate_validate_proto_msgTypes,
  3645. ExtensionInfos: file_validate_validate_proto_extTypes,
  3646. }.Build()
  3647. File_validate_validate_proto = out.File
  3648. file_validate_validate_proto_rawDesc = nil
  3649. file_validate_validate_proto_goTypes = nil
  3650. file_validate_validate_proto_depIdxs = nil
  3651. }