validate.pb.go 139 KB

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