syntax.pb.go 65 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720
  1. // Copyright 2022 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. // Code generated by protoc-gen-go. DO NOT EDIT.
  15. // versions:
  16. // protoc-gen-go v1.26.0
  17. // protoc v3.21.9
  18. // source: google/api/expr/v1alpha1/syntax.proto
  19. package expr
  20. import (
  21. reflect "reflect"
  22. sync "sync"
  23. protoreflect "google.golang.org/protobuf/reflect/protoreflect"
  24. protoimpl "google.golang.org/protobuf/runtime/protoimpl"
  25. durationpb "google.golang.org/protobuf/types/known/durationpb"
  26. structpb "google.golang.org/protobuf/types/known/structpb"
  27. timestamppb "google.golang.org/protobuf/types/known/timestamppb"
  28. )
  29. const (
  30. // Verify that this generated code is sufficiently up-to-date.
  31. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
  32. // Verify that runtime/protoimpl is sufficiently up-to-date.
  33. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
  34. )
  35. // An expression together with source information as returned by the parser.
  36. type ParsedExpr struct {
  37. state protoimpl.MessageState
  38. sizeCache protoimpl.SizeCache
  39. unknownFields protoimpl.UnknownFields
  40. // The parsed expression.
  41. Expr *Expr `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"`
  42. // The source info derived from input that generated the parsed `expr`.
  43. SourceInfo *SourceInfo `protobuf:"bytes,3,opt,name=source_info,json=sourceInfo,proto3" json:"source_info,omitempty"`
  44. }
  45. func (x *ParsedExpr) Reset() {
  46. *x = ParsedExpr{}
  47. if protoimpl.UnsafeEnabled {
  48. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[0]
  49. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  50. ms.StoreMessageInfo(mi)
  51. }
  52. }
  53. func (x *ParsedExpr) String() string {
  54. return protoimpl.X.MessageStringOf(x)
  55. }
  56. func (*ParsedExpr) ProtoMessage() {}
  57. func (x *ParsedExpr) ProtoReflect() protoreflect.Message {
  58. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[0]
  59. if protoimpl.UnsafeEnabled && x != nil {
  60. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  61. if ms.LoadMessageInfo() == nil {
  62. ms.StoreMessageInfo(mi)
  63. }
  64. return ms
  65. }
  66. return mi.MessageOf(x)
  67. }
  68. // Deprecated: Use ParsedExpr.ProtoReflect.Descriptor instead.
  69. func (*ParsedExpr) Descriptor() ([]byte, []int) {
  70. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{0}
  71. }
  72. func (x *ParsedExpr) GetExpr() *Expr {
  73. if x != nil {
  74. return x.Expr
  75. }
  76. return nil
  77. }
  78. func (x *ParsedExpr) GetSourceInfo() *SourceInfo {
  79. if x != nil {
  80. return x.SourceInfo
  81. }
  82. return nil
  83. }
  84. // An abstract representation of a common expression.
  85. //
  86. // Expressions are abstractly represented as a collection of identifiers,
  87. // select statements, function calls, literals, and comprehensions. All
  88. // operators with the exception of the '.' operator are modelled as function
  89. // calls. This makes it easy to represent new operators into the existing AST.
  90. //
  91. // All references within expressions must resolve to a [Decl][google.api.expr.v1alpha1.Decl] provided at
  92. // type-check for an expression to be valid. A reference may either be a bare
  93. // identifier `name` or a qualified identifier `google.api.name`. References
  94. // may either refer to a value or a function declaration.
  95. //
  96. // For example, the expression `google.api.name.startsWith('expr')` references
  97. // the declaration `google.api.name` within a [Expr.Select][google.api.expr.v1alpha1.Expr.Select] expression, and
  98. // the function declaration `startsWith`.
  99. type Expr struct {
  100. state protoimpl.MessageState
  101. sizeCache protoimpl.SizeCache
  102. unknownFields protoimpl.UnknownFields
  103. // Required. An id assigned to this node by the parser which is unique in a
  104. // given expression tree. This is used to associate type information and other
  105. // attributes to a node in the parse tree.
  106. Id int64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
  107. // Required. Variants of expressions.
  108. //
  109. // Types that are assignable to ExprKind:
  110. //
  111. // *Expr_ConstExpr
  112. // *Expr_IdentExpr
  113. // *Expr_SelectExpr
  114. // *Expr_CallExpr
  115. // *Expr_ListExpr
  116. // *Expr_StructExpr
  117. // *Expr_ComprehensionExpr
  118. ExprKind isExpr_ExprKind `protobuf_oneof:"expr_kind"`
  119. }
  120. func (x *Expr) Reset() {
  121. *x = Expr{}
  122. if protoimpl.UnsafeEnabled {
  123. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[1]
  124. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  125. ms.StoreMessageInfo(mi)
  126. }
  127. }
  128. func (x *Expr) String() string {
  129. return protoimpl.X.MessageStringOf(x)
  130. }
  131. func (*Expr) ProtoMessage() {}
  132. func (x *Expr) ProtoReflect() protoreflect.Message {
  133. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[1]
  134. if protoimpl.UnsafeEnabled && x != nil {
  135. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  136. if ms.LoadMessageInfo() == nil {
  137. ms.StoreMessageInfo(mi)
  138. }
  139. return ms
  140. }
  141. return mi.MessageOf(x)
  142. }
  143. // Deprecated: Use Expr.ProtoReflect.Descriptor instead.
  144. func (*Expr) Descriptor() ([]byte, []int) {
  145. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1}
  146. }
  147. func (x *Expr) GetId() int64 {
  148. if x != nil {
  149. return x.Id
  150. }
  151. return 0
  152. }
  153. func (m *Expr) GetExprKind() isExpr_ExprKind {
  154. if m != nil {
  155. return m.ExprKind
  156. }
  157. return nil
  158. }
  159. func (x *Expr) GetConstExpr() *Constant {
  160. if x, ok := x.GetExprKind().(*Expr_ConstExpr); ok {
  161. return x.ConstExpr
  162. }
  163. return nil
  164. }
  165. func (x *Expr) GetIdentExpr() *Expr_Ident {
  166. if x, ok := x.GetExprKind().(*Expr_IdentExpr); ok {
  167. return x.IdentExpr
  168. }
  169. return nil
  170. }
  171. func (x *Expr) GetSelectExpr() *Expr_Select {
  172. if x, ok := x.GetExprKind().(*Expr_SelectExpr); ok {
  173. return x.SelectExpr
  174. }
  175. return nil
  176. }
  177. func (x *Expr) GetCallExpr() *Expr_Call {
  178. if x, ok := x.GetExprKind().(*Expr_CallExpr); ok {
  179. return x.CallExpr
  180. }
  181. return nil
  182. }
  183. func (x *Expr) GetListExpr() *Expr_CreateList {
  184. if x, ok := x.GetExprKind().(*Expr_ListExpr); ok {
  185. return x.ListExpr
  186. }
  187. return nil
  188. }
  189. func (x *Expr) GetStructExpr() *Expr_CreateStruct {
  190. if x, ok := x.GetExprKind().(*Expr_StructExpr); ok {
  191. return x.StructExpr
  192. }
  193. return nil
  194. }
  195. func (x *Expr) GetComprehensionExpr() *Expr_Comprehension {
  196. if x, ok := x.GetExprKind().(*Expr_ComprehensionExpr); ok {
  197. return x.ComprehensionExpr
  198. }
  199. return nil
  200. }
  201. type isExpr_ExprKind interface {
  202. isExpr_ExprKind()
  203. }
  204. type Expr_ConstExpr struct {
  205. // A literal expression.
  206. ConstExpr *Constant `protobuf:"bytes,3,opt,name=const_expr,json=constExpr,proto3,oneof"`
  207. }
  208. type Expr_IdentExpr struct {
  209. // An identifier expression.
  210. IdentExpr *Expr_Ident `protobuf:"bytes,4,opt,name=ident_expr,json=identExpr,proto3,oneof"`
  211. }
  212. type Expr_SelectExpr struct {
  213. // A field selection expression, e.g. `request.auth`.
  214. SelectExpr *Expr_Select `protobuf:"bytes,5,opt,name=select_expr,json=selectExpr,proto3,oneof"`
  215. }
  216. type Expr_CallExpr struct {
  217. // A call expression, including calls to predefined functions and operators.
  218. CallExpr *Expr_Call `protobuf:"bytes,6,opt,name=call_expr,json=callExpr,proto3,oneof"`
  219. }
  220. type Expr_ListExpr struct {
  221. // A list creation expression.
  222. ListExpr *Expr_CreateList `protobuf:"bytes,7,opt,name=list_expr,json=listExpr,proto3,oneof"`
  223. }
  224. type Expr_StructExpr struct {
  225. // A map or message creation expression.
  226. StructExpr *Expr_CreateStruct `protobuf:"bytes,8,opt,name=struct_expr,json=structExpr,proto3,oneof"`
  227. }
  228. type Expr_ComprehensionExpr struct {
  229. // A comprehension expression.
  230. ComprehensionExpr *Expr_Comprehension `protobuf:"bytes,9,opt,name=comprehension_expr,json=comprehensionExpr,proto3,oneof"`
  231. }
  232. func (*Expr_ConstExpr) isExpr_ExprKind() {}
  233. func (*Expr_IdentExpr) isExpr_ExprKind() {}
  234. func (*Expr_SelectExpr) isExpr_ExprKind() {}
  235. func (*Expr_CallExpr) isExpr_ExprKind() {}
  236. func (*Expr_ListExpr) isExpr_ExprKind() {}
  237. func (*Expr_StructExpr) isExpr_ExprKind() {}
  238. func (*Expr_ComprehensionExpr) isExpr_ExprKind() {}
  239. // Represents a primitive literal.
  240. //
  241. // Named 'Constant' here for backwards compatibility.
  242. //
  243. // This is similar as the primitives supported in the well-known type
  244. // `google.protobuf.Value`, but richer so it can represent CEL's full range of
  245. // primitives.
  246. //
  247. // Lists and structs are not included as constants as these aggregate types may
  248. // contain [Expr][google.api.expr.v1alpha1.Expr] elements which require evaluation and are thus not constant.
  249. //
  250. // Examples of literals include: `"hello"`, `b'bytes'`, `1u`, `4.2`, `-2`,
  251. // `true`, `null`.
  252. type Constant struct {
  253. state protoimpl.MessageState
  254. sizeCache protoimpl.SizeCache
  255. unknownFields protoimpl.UnknownFields
  256. // Required. The valid constant kinds.
  257. //
  258. // Types that are assignable to ConstantKind:
  259. //
  260. // *Constant_NullValue
  261. // *Constant_BoolValue
  262. // *Constant_Int64Value
  263. // *Constant_Uint64Value
  264. // *Constant_DoubleValue
  265. // *Constant_StringValue
  266. // *Constant_BytesValue
  267. // *Constant_DurationValue
  268. // *Constant_TimestampValue
  269. ConstantKind isConstant_ConstantKind `protobuf_oneof:"constant_kind"`
  270. }
  271. func (x *Constant) Reset() {
  272. *x = Constant{}
  273. if protoimpl.UnsafeEnabled {
  274. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[2]
  275. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  276. ms.StoreMessageInfo(mi)
  277. }
  278. }
  279. func (x *Constant) String() string {
  280. return protoimpl.X.MessageStringOf(x)
  281. }
  282. func (*Constant) ProtoMessage() {}
  283. func (x *Constant) ProtoReflect() protoreflect.Message {
  284. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[2]
  285. if protoimpl.UnsafeEnabled && x != nil {
  286. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  287. if ms.LoadMessageInfo() == nil {
  288. ms.StoreMessageInfo(mi)
  289. }
  290. return ms
  291. }
  292. return mi.MessageOf(x)
  293. }
  294. // Deprecated: Use Constant.ProtoReflect.Descriptor instead.
  295. func (*Constant) Descriptor() ([]byte, []int) {
  296. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{2}
  297. }
  298. func (m *Constant) GetConstantKind() isConstant_ConstantKind {
  299. if m != nil {
  300. return m.ConstantKind
  301. }
  302. return nil
  303. }
  304. func (x *Constant) GetNullValue() structpb.NullValue {
  305. if x, ok := x.GetConstantKind().(*Constant_NullValue); ok {
  306. return x.NullValue
  307. }
  308. return structpb.NullValue_NULL_VALUE
  309. }
  310. func (x *Constant) GetBoolValue() bool {
  311. if x, ok := x.GetConstantKind().(*Constant_BoolValue); ok {
  312. return x.BoolValue
  313. }
  314. return false
  315. }
  316. func (x *Constant) GetInt64Value() int64 {
  317. if x, ok := x.GetConstantKind().(*Constant_Int64Value); ok {
  318. return x.Int64Value
  319. }
  320. return 0
  321. }
  322. func (x *Constant) GetUint64Value() uint64 {
  323. if x, ok := x.GetConstantKind().(*Constant_Uint64Value); ok {
  324. return x.Uint64Value
  325. }
  326. return 0
  327. }
  328. func (x *Constant) GetDoubleValue() float64 {
  329. if x, ok := x.GetConstantKind().(*Constant_DoubleValue); ok {
  330. return x.DoubleValue
  331. }
  332. return 0
  333. }
  334. func (x *Constant) GetStringValue() string {
  335. if x, ok := x.GetConstantKind().(*Constant_StringValue); ok {
  336. return x.StringValue
  337. }
  338. return ""
  339. }
  340. func (x *Constant) GetBytesValue() []byte {
  341. if x, ok := x.GetConstantKind().(*Constant_BytesValue); ok {
  342. return x.BytesValue
  343. }
  344. return nil
  345. }
  346. // Deprecated: Do not use.
  347. func (x *Constant) GetDurationValue() *durationpb.Duration {
  348. if x, ok := x.GetConstantKind().(*Constant_DurationValue); ok {
  349. return x.DurationValue
  350. }
  351. return nil
  352. }
  353. // Deprecated: Do not use.
  354. func (x *Constant) GetTimestampValue() *timestamppb.Timestamp {
  355. if x, ok := x.GetConstantKind().(*Constant_TimestampValue); ok {
  356. return x.TimestampValue
  357. }
  358. return nil
  359. }
  360. type isConstant_ConstantKind interface {
  361. isConstant_ConstantKind()
  362. }
  363. type Constant_NullValue struct {
  364. // null value.
  365. NullValue structpb.NullValue `protobuf:"varint,1,opt,name=null_value,json=nullValue,proto3,enum=google.protobuf.NullValue,oneof"`
  366. }
  367. type Constant_BoolValue struct {
  368. // boolean value.
  369. BoolValue bool `protobuf:"varint,2,opt,name=bool_value,json=boolValue,proto3,oneof"`
  370. }
  371. type Constant_Int64Value struct {
  372. // int64 value.
  373. Int64Value int64 `protobuf:"varint,3,opt,name=int64_value,json=int64Value,proto3,oneof"`
  374. }
  375. type Constant_Uint64Value struct {
  376. // uint64 value.
  377. Uint64Value uint64 `protobuf:"varint,4,opt,name=uint64_value,json=uint64Value,proto3,oneof"`
  378. }
  379. type Constant_DoubleValue struct {
  380. // double value.
  381. DoubleValue float64 `protobuf:"fixed64,5,opt,name=double_value,json=doubleValue,proto3,oneof"`
  382. }
  383. type Constant_StringValue struct {
  384. // string value.
  385. StringValue string `protobuf:"bytes,6,opt,name=string_value,json=stringValue,proto3,oneof"`
  386. }
  387. type Constant_BytesValue struct {
  388. // bytes value.
  389. BytesValue []byte `protobuf:"bytes,7,opt,name=bytes_value,json=bytesValue,proto3,oneof"`
  390. }
  391. type Constant_DurationValue struct {
  392. // protobuf.Duration value.
  393. //
  394. // Deprecated: duration is no longer considered a builtin cel type.
  395. //
  396. // Deprecated: Do not use.
  397. DurationValue *durationpb.Duration `protobuf:"bytes,8,opt,name=duration_value,json=durationValue,proto3,oneof"`
  398. }
  399. type Constant_TimestampValue struct {
  400. // protobuf.Timestamp value.
  401. //
  402. // Deprecated: timestamp is no longer considered a builtin cel type.
  403. //
  404. // Deprecated: Do not use.
  405. TimestampValue *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=timestamp_value,json=timestampValue,proto3,oneof"`
  406. }
  407. func (*Constant_NullValue) isConstant_ConstantKind() {}
  408. func (*Constant_BoolValue) isConstant_ConstantKind() {}
  409. func (*Constant_Int64Value) isConstant_ConstantKind() {}
  410. func (*Constant_Uint64Value) isConstant_ConstantKind() {}
  411. func (*Constant_DoubleValue) isConstant_ConstantKind() {}
  412. func (*Constant_StringValue) isConstant_ConstantKind() {}
  413. func (*Constant_BytesValue) isConstant_ConstantKind() {}
  414. func (*Constant_DurationValue) isConstant_ConstantKind() {}
  415. func (*Constant_TimestampValue) isConstant_ConstantKind() {}
  416. // Source information collected at parse time.
  417. type SourceInfo struct {
  418. state protoimpl.MessageState
  419. sizeCache protoimpl.SizeCache
  420. unknownFields protoimpl.UnknownFields
  421. // The syntax version of the source, e.g. `cel1`.
  422. SyntaxVersion string `protobuf:"bytes,1,opt,name=syntax_version,json=syntaxVersion,proto3" json:"syntax_version,omitempty"`
  423. // The location name. All position information attached to an expression is
  424. // relative to this location.
  425. //
  426. // The location could be a file, UI element, or similar. For example,
  427. // `acme/app/AnvilPolicy.cel`.
  428. Location string `protobuf:"bytes,2,opt,name=location,proto3" json:"location,omitempty"`
  429. // Monotonically increasing list of code point offsets where newlines
  430. // `\n` appear.
  431. //
  432. // The line number of a given position is the index `i` where for a given
  433. // `id` the `line_offsets[i] < id_positions[id] < line_offsets[i+1]`. The
  434. // column may be derivd from `id_positions[id] - line_offsets[i]`.
  435. LineOffsets []int32 `protobuf:"varint,3,rep,packed,name=line_offsets,json=lineOffsets,proto3" json:"line_offsets,omitempty"`
  436. // A map from the parse node id (e.g. `Expr.id`) to the code point offset
  437. // within the source.
  438. Positions map[int64]int32 `protobuf:"bytes,4,rep,name=positions,proto3" json:"positions,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
  439. // A map from the parse node id where a macro replacement was made to the
  440. // call `Expr` that resulted in a macro expansion.
  441. //
  442. // For example, `has(value.field)` is a function call that is replaced by a
  443. // `test_only` field selection in the AST. Likewise, the call
  444. // `list.exists(e, e > 10)` translates to a comprehension expression. The key
  445. // in the map corresponds to the expression id of the expanded macro, and the
  446. // value is the call `Expr` that was replaced.
  447. MacroCalls map[int64]*Expr `protobuf:"bytes,5,rep,name=macro_calls,json=macroCalls,proto3" json:"macro_calls,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  448. }
  449. func (x *SourceInfo) Reset() {
  450. *x = SourceInfo{}
  451. if protoimpl.UnsafeEnabled {
  452. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[3]
  453. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  454. ms.StoreMessageInfo(mi)
  455. }
  456. }
  457. func (x *SourceInfo) String() string {
  458. return protoimpl.X.MessageStringOf(x)
  459. }
  460. func (*SourceInfo) ProtoMessage() {}
  461. func (x *SourceInfo) ProtoReflect() protoreflect.Message {
  462. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[3]
  463. if protoimpl.UnsafeEnabled && x != nil {
  464. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  465. if ms.LoadMessageInfo() == nil {
  466. ms.StoreMessageInfo(mi)
  467. }
  468. return ms
  469. }
  470. return mi.MessageOf(x)
  471. }
  472. // Deprecated: Use SourceInfo.ProtoReflect.Descriptor instead.
  473. func (*SourceInfo) Descriptor() ([]byte, []int) {
  474. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{3}
  475. }
  476. func (x *SourceInfo) GetSyntaxVersion() string {
  477. if x != nil {
  478. return x.SyntaxVersion
  479. }
  480. return ""
  481. }
  482. func (x *SourceInfo) GetLocation() string {
  483. if x != nil {
  484. return x.Location
  485. }
  486. return ""
  487. }
  488. func (x *SourceInfo) GetLineOffsets() []int32 {
  489. if x != nil {
  490. return x.LineOffsets
  491. }
  492. return nil
  493. }
  494. func (x *SourceInfo) GetPositions() map[int64]int32 {
  495. if x != nil {
  496. return x.Positions
  497. }
  498. return nil
  499. }
  500. func (x *SourceInfo) GetMacroCalls() map[int64]*Expr {
  501. if x != nil {
  502. return x.MacroCalls
  503. }
  504. return nil
  505. }
  506. // A specific position in source.
  507. type SourcePosition struct {
  508. state protoimpl.MessageState
  509. sizeCache protoimpl.SizeCache
  510. unknownFields protoimpl.UnknownFields
  511. // The soucre location name (e.g. file name).
  512. Location string `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"`
  513. // The UTF-8 code unit offset.
  514. Offset int32 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
  515. // The 1-based index of the starting line in the source text
  516. // where the issue occurs, or 0 if unknown.
  517. Line int32 `protobuf:"varint,3,opt,name=line,proto3" json:"line,omitempty"`
  518. // The 0-based index of the starting position within the line of source text
  519. // where the issue occurs. Only meaningful if line is nonzero.
  520. Column int32 `protobuf:"varint,4,opt,name=column,proto3" json:"column,omitempty"`
  521. }
  522. func (x *SourcePosition) Reset() {
  523. *x = SourcePosition{}
  524. if protoimpl.UnsafeEnabled {
  525. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[4]
  526. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  527. ms.StoreMessageInfo(mi)
  528. }
  529. }
  530. func (x *SourcePosition) String() string {
  531. return protoimpl.X.MessageStringOf(x)
  532. }
  533. func (*SourcePosition) ProtoMessage() {}
  534. func (x *SourcePosition) ProtoReflect() protoreflect.Message {
  535. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[4]
  536. if protoimpl.UnsafeEnabled && x != nil {
  537. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  538. if ms.LoadMessageInfo() == nil {
  539. ms.StoreMessageInfo(mi)
  540. }
  541. return ms
  542. }
  543. return mi.MessageOf(x)
  544. }
  545. // Deprecated: Use SourcePosition.ProtoReflect.Descriptor instead.
  546. func (*SourcePosition) Descriptor() ([]byte, []int) {
  547. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{4}
  548. }
  549. func (x *SourcePosition) GetLocation() string {
  550. if x != nil {
  551. return x.Location
  552. }
  553. return ""
  554. }
  555. func (x *SourcePosition) GetOffset() int32 {
  556. if x != nil {
  557. return x.Offset
  558. }
  559. return 0
  560. }
  561. func (x *SourcePosition) GetLine() int32 {
  562. if x != nil {
  563. return x.Line
  564. }
  565. return 0
  566. }
  567. func (x *SourcePosition) GetColumn() int32 {
  568. if x != nil {
  569. return x.Column
  570. }
  571. return 0
  572. }
  573. // An identifier expression. e.g. `request`.
  574. type Expr_Ident struct {
  575. state protoimpl.MessageState
  576. sizeCache protoimpl.SizeCache
  577. unknownFields protoimpl.UnknownFields
  578. // Required. Holds a single, unqualified identifier, possibly preceded by a
  579. // '.'.
  580. //
  581. // Qualified names are represented by the [Expr.Select][google.api.expr.v1alpha1.Expr.Select] expression.
  582. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  583. }
  584. func (x *Expr_Ident) Reset() {
  585. *x = Expr_Ident{}
  586. if protoimpl.UnsafeEnabled {
  587. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[5]
  588. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  589. ms.StoreMessageInfo(mi)
  590. }
  591. }
  592. func (x *Expr_Ident) String() string {
  593. return protoimpl.X.MessageStringOf(x)
  594. }
  595. func (*Expr_Ident) ProtoMessage() {}
  596. func (x *Expr_Ident) ProtoReflect() protoreflect.Message {
  597. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[5]
  598. if protoimpl.UnsafeEnabled && x != nil {
  599. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  600. if ms.LoadMessageInfo() == nil {
  601. ms.StoreMessageInfo(mi)
  602. }
  603. return ms
  604. }
  605. return mi.MessageOf(x)
  606. }
  607. // Deprecated: Use Expr_Ident.ProtoReflect.Descriptor instead.
  608. func (*Expr_Ident) Descriptor() ([]byte, []int) {
  609. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1, 0}
  610. }
  611. func (x *Expr_Ident) GetName() string {
  612. if x != nil {
  613. return x.Name
  614. }
  615. return ""
  616. }
  617. // A field selection expression. e.g. `request.auth`.
  618. type Expr_Select struct {
  619. state protoimpl.MessageState
  620. sizeCache protoimpl.SizeCache
  621. unknownFields protoimpl.UnknownFields
  622. // Required. The target of the selection expression.
  623. //
  624. // For example, in the select expression `request.auth`, the `request`
  625. // portion of the expression is the `operand`.
  626. Operand *Expr `protobuf:"bytes,1,opt,name=operand,proto3" json:"operand,omitempty"`
  627. // Required. The name of the field to select.
  628. //
  629. // For example, in the select expression `request.auth`, the `auth` portion
  630. // of the expression would be the `field`.
  631. Field string `protobuf:"bytes,2,opt,name=field,proto3" json:"field,omitempty"`
  632. // Whether the select is to be interpreted as a field presence test.
  633. //
  634. // This results from the macro `has(request.auth)`.
  635. TestOnly bool `protobuf:"varint,3,opt,name=test_only,json=testOnly,proto3" json:"test_only,omitempty"`
  636. }
  637. func (x *Expr_Select) Reset() {
  638. *x = Expr_Select{}
  639. if protoimpl.UnsafeEnabled {
  640. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[6]
  641. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  642. ms.StoreMessageInfo(mi)
  643. }
  644. }
  645. func (x *Expr_Select) String() string {
  646. return protoimpl.X.MessageStringOf(x)
  647. }
  648. func (*Expr_Select) ProtoMessage() {}
  649. func (x *Expr_Select) ProtoReflect() protoreflect.Message {
  650. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[6]
  651. if protoimpl.UnsafeEnabled && x != nil {
  652. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  653. if ms.LoadMessageInfo() == nil {
  654. ms.StoreMessageInfo(mi)
  655. }
  656. return ms
  657. }
  658. return mi.MessageOf(x)
  659. }
  660. // Deprecated: Use Expr_Select.ProtoReflect.Descriptor instead.
  661. func (*Expr_Select) Descriptor() ([]byte, []int) {
  662. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1, 1}
  663. }
  664. func (x *Expr_Select) GetOperand() *Expr {
  665. if x != nil {
  666. return x.Operand
  667. }
  668. return nil
  669. }
  670. func (x *Expr_Select) GetField() string {
  671. if x != nil {
  672. return x.Field
  673. }
  674. return ""
  675. }
  676. func (x *Expr_Select) GetTestOnly() bool {
  677. if x != nil {
  678. return x.TestOnly
  679. }
  680. return false
  681. }
  682. // A call expression, including calls to predefined functions and operators.
  683. //
  684. // For example, `value == 10`, `size(map_value)`.
  685. type Expr_Call struct {
  686. state protoimpl.MessageState
  687. sizeCache protoimpl.SizeCache
  688. unknownFields protoimpl.UnknownFields
  689. // The target of an method call-style expression. For example, `x` in
  690. // `x.f()`.
  691. Target *Expr `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"`
  692. // Required. The name of the function or method being called.
  693. Function string `protobuf:"bytes,2,opt,name=function,proto3" json:"function,omitempty"`
  694. // The arguments.
  695. Args []*Expr `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"`
  696. }
  697. func (x *Expr_Call) Reset() {
  698. *x = Expr_Call{}
  699. if protoimpl.UnsafeEnabled {
  700. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[7]
  701. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  702. ms.StoreMessageInfo(mi)
  703. }
  704. }
  705. func (x *Expr_Call) String() string {
  706. return protoimpl.X.MessageStringOf(x)
  707. }
  708. func (*Expr_Call) ProtoMessage() {}
  709. func (x *Expr_Call) ProtoReflect() protoreflect.Message {
  710. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[7]
  711. if protoimpl.UnsafeEnabled && x != nil {
  712. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  713. if ms.LoadMessageInfo() == nil {
  714. ms.StoreMessageInfo(mi)
  715. }
  716. return ms
  717. }
  718. return mi.MessageOf(x)
  719. }
  720. // Deprecated: Use Expr_Call.ProtoReflect.Descriptor instead.
  721. func (*Expr_Call) Descriptor() ([]byte, []int) {
  722. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1, 2}
  723. }
  724. func (x *Expr_Call) GetTarget() *Expr {
  725. if x != nil {
  726. return x.Target
  727. }
  728. return nil
  729. }
  730. func (x *Expr_Call) GetFunction() string {
  731. if x != nil {
  732. return x.Function
  733. }
  734. return ""
  735. }
  736. func (x *Expr_Call) GetArgs() []*Expr {
  737. if x != nil {
  738. return x.Args
  739. }
  740. return nil
  741. }
  742. // A list creation expression.
  743. //
  744. // Lists may either be homogenous, e.g. `[1, 2, 3]`, or heterogeneous, e.g.
  745. // `dyn([1, 'hello', 2.0])`
  746. type Expr_CreateList struct {
  747. state protoimpl.MessageState
  748. sizeCache protoimpl.SizeCache
  749. unknownFields protoimpl.UnknownFields
  750. // The elements part of the list.
  751. Elements []*Expr `protobuf:"bytes,1,rep,name=elements,proto3" json:"elements,omitempty"`
  752. // The indices within the elements list which are marked as optional
  753. // elements.
  754. //
  755. // When an optional-typed value is present, the value it contains
  756. // is included in the list. If the optional-typed value is absent, the list
  757. // element is omitted from the CreateList result.
  758. OptionalIndices []int32 `protobuf:"varint,2,rep,packed,name=optional_indices,json=optionalIndices,proto3" json:"optional_indices,omitempty"`
  759. }
  760. func (x *Expr_CreateList) Reset() {
  761. *x = Expr_CreateList{}
  762. if protoimpl.UnsafeEnabled {
  763. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[8]
  764. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  765. ms.StoreMessageInfo(mi)
  766. }
  767. }
  768. func (x *Expr_CreateList) String() string {
  769. return protoimpl.X.MessageStringOf(x)
  770. }
  771. func (*Expr_CreateList) ProtoMessage() {}
  772. func (x *Expr_CreateList) ProtoReflect() protoreflect.Message {
  773. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[8]
  774. if protoimpl.UnsafeEnabled && x != nil {
  775. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  776. if ms.LoadMessageInfo() == nil {
  777. ms.StoreMessageInfo(mi)
  778. }
  779. return ms
  780. }
  781. return mi.MessageOf(x)
  782. }
  783. // Deprecated: Use Expr_CreateList.ProtoReflect.Descriptor instead.
  784. func (*Expr_CreateList) Descriptor() ([]byte, []int) {
  785. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1, 3}
  786. }
  787. func (x *Expr_CreateList) GetElements() []*Expr {
  788. if x != nil {
  789. return x.Elements
  790. }
  791. return nil
  792. }
  793. func (x *Expr_CreateList) GetOptionalIndices() []int32 {
  794. if x != nil {
  795. return x.OptionalIndices
  796. }
  797. return nil
  798. }
  799. // A map or message creation expression.
  800. //
  801. // Maps are constructed as `{'key_name': 'value'}`. Message construction is
  802. // similar, but prefixed with a type name and composed of field ids:
  803. // `types.MyType{field_id: 'value'}`.
  804. type Expr_CreateStruct struct {
  805. state protoimpl.MessageState
  806. sizeCache protoimpl.SizeCache
  807. unknownFields protoimpl.UnknownFields
  808. // The type name of the message to be created, empty when creating map
  809. // literals.
  810. MessageName string `protobuf:"bytes,1,opt,name=message_name,json=messageName,proto3" json:"message_name,omitempty"`
  811. // The entries in the creation expression.
  812. Entries []*Expr_CreateStruct_Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"`
  813. }
  814. func (x *Expr_CreateStruct) Reset() {
  815. *x = Expr_CreateStruct{}
  816. if protoimpl.UnsafeEnabled {
  817. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[9]
  818. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  819. ms.StoreMessageInfo(mi)
  820. }
  821. }
  822. func (x *Expr_CreateStruct) String() string {
  823. return protoimpl.X.MessageStringOf(x)
  824. }
  825. func (*Expr_CreateStruct) ProtoMessage() {}
  826. func (x *Expr_CreateStruct) ProtoReflect() protoreflect.Message {
  827. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[9]
  828. if protoimpl.UnsafeEnabled && x != nil {
  829. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  830. if ms.LoadMessageInfo() == nil {
  831. ms.StoreMessageInfo(mi)
  832. }
  833. return ms
  834. }
  835. return mi.MessageOf(x)
  836. }
  837. // Deprecated: Use Expr_CreateStruct.ProtoReflect.Descriptor instead.
  838. func (*Expr_CreateStruct) Descriptor() ([]byte, []int) {
  839. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1, 4}
  840. }
  841. func (x *Expr_CreateStruct) GetMessageName() string {
  842. if x != nil {
  843. return x.MessageName
  844. }
  845. return ""
  846. }
  847. func (x *Expr_CreateStruct) GetEntries() []*Expr_CreateStruct_Entry {
  848. if x != nil {
  849. return x.Entries
  850. }
  851. return nil
  852. }
  853. // A comprehension expression applied to a list or map.
  854. //
  855. // Comprehensions are not part of the core syntax, but enabled with macros.
  856. // A macro matches a specific call signature within a parsed AST and replaces
  857. // the call with an alternate AST block. Macro expansion happens at parse
  858. // time.
  859. //
  860. // The following macros are supported within CEL:
  861. //
  862. // Aggregate type macros may be applied to all elements in a list or all keys
  863. // in a map:
  864. //
  865. // - `all`, `exists`, `exists_one` - test a predicate expression against
  866. // the inputs and return `true` if the predicate is satisfied for all,
  867. // any, or only one value `list.all(x, x < 10)`.
  868. // - `filter` - test a predicate expression against the inputs and return
  869. // the subset of elements which satisfy the predicate:
  870. // `payments.filter(p, p > 1000)`.
  871. // - `map` - apply an expression to all elements in the input and return the
  872. // output aggregate type: `[1, 2, 3].map(i, i * i)`.
  873. //
  874. // The `has(m.x)` macro tests whether the property `x` is present in struct
  875. // `m`. The semantics of this macro depend on the type of `m`. For proto2
  876. // messages `has(m.x)` is defined as 'defined, but not set`. For proto3, the
  877. // macro tests whether the property is set to its default. For map and struct
  878. // types, the macro tests whether the property `x` is defined on `m`.
  879. type Expr_Comprehension struct {
  880. state protoimpl.MessageState
  881. sizeCache protoimpl.SizeCache
  882. unknownFields protoimpl.UnknownFields
  883. // The name of the iteration variable.
  884. IterVar string `protobuf:"bytes,1,opt,name=iter_var,json=iterVar,proto3" json:"iter_var,omitempty"`
  885. // The range over which var iterates.
  886. IterRange *Expr `protobuf:"bytes,2,opt,name=iter_range,json=iterRange,proto3" json:"iter_range,omitempty"`
  887. // The name of the variable used for accumulation of the result.
  888. AccuVar string `protobuf:"bytes,3,opt,name=accu_var,json=accuVar,proto3" json:"accu_var,omitempty"`
  889. // The initial value of the accumulator.
  890. AccuInit *Expr `protobuf:"bytes,4,opt,name=accu_init,json=accuInit,proto3" json:"accu_init,omitempty"`
  891. // An expression which can contain iter_var and accu_var.
  892. //
  893. // Returns false when the result has been computed and may be used as
  894. // a hint to short-circuit the remainder of the comprehension.
  895. LoopCondition *Expr `protobuf:"bytes,5,opt,name=loop_condition,json=loopCondition,proto3" json:"loop_condition,omitempty"`
  896. // An expression which can contain iter_var and accu_var.
  897. //
  898. // Computes the next value of accu_var.
  899. LoopStep *Expr `protobuf:"bytes,6,opt,name=loop_step,json=loopStep,proto3" json:"loop_step,omitempty"`
  900. // An expression which can contain accu_var.
  901. //
  902. // Computes the result.
  903. Result *Expr `protobuf:"bytes,7,opt,name=result,proto3" json:"result,omitempty"`
  904. }
  905. func (x *Expr_Comprehension) Reset() {
  906. *x = Expr_Comprehension{}
  907. if protoimpl.UnsafeEnabled {
  908. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[10]
  909. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  910. ms.StoreMessageInfo(mi)
  911. }
  912. }
  913. func (x *Expr_Comprehension) String() string {
  914. return protoimpl.X.MessageStringOf(x)
  915. }
  916. func (*Expr_Comprehension) ProtoMessage() {}
  917. func (x *Expr_Comprehension) ProtoReflect() protoreflect.Message {
  918. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[10]
  919. if protoimpl.UnsafeEnabled && x != nil {
  920. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  921. if ms.LoadMessageInfo() == nil {
  922. ms.StoreMessageInfo(mi)
  923. }
  924. return ms
  925. }
  926. return mi.MessageOf(x)
  927. }
  928. // Deprecated: Use Expr_Comprehension.ProtoReflect.Descriptor instead.
  929. func (*Expr_Comprehension) Descriptor() ([]byte, []int) {
  930. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1, 5}
  931. }
  932. func (x *Expr_Comprehension) GetIterVar() string {
  933. if x != nil {
  934. return x.IterVar
  935. }
  936. return ""
  937. }
  938. func (x *Expr_Comprehension) GetIterRange() *Expr {
  939. if x != nil {
  940. return x.IterRange
  941. }
  942. return nil
  943. }
  944. func (x *Expr_Comprehension) GetAccuVar() string {
  945. if x != nil {
  946. return x.AccuVar
  947. }
  948. return ""
  949. }
  950. func (x *Expr_Comprehension) GetAccuInit() *Expr {
  951. if x != nil {
  952. return x.AccuInit
  953. }
  954. return nil
  955. }
  956. func (x *Expr_Comprehension) GetLoopCondition() *Expr {
  957. if x != nil {
  958. return x.LoopCondition
  959. }
  960. return nil
  961. }
  962. func (x *Expr_Comprehension) GetLoopStep() *Expr {
  963. if x != nil {
  964. return x.LoopStep
  965. }
  966. return nil
  967. }
  968. func (x *Expr_Comprehension) GetResult() *Expr {
  969. if x != nil {
  970. return x.Result
  971. }
  972. return nil
  973. }
  974. // Represents an entry.
  975. type Expr_CreateStruct_Entry struct {
  976. state protoimpl.MessageState
  977. sizeCache protoimpl.SizeCache
  978. unknownFields protoimpl.UnknownFields
  979. // Required. An id assigned to this node by the parser which is unique
  980. // in a given expression tree. This is used to associate type
  981. // information and other attributes to the node.
  982. Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
  983. // The `Entry` key kinds.
  984. //
  985. // Types that are assignable to KeyKind:
  986. //
  987. // *Expr_CreateStruct_Entry_FieldKey
  988. // *Expr_CreateStruct_Entry_MapKey
  989. KeyKind isExpr_CreateStruct_Entry_KeyKind `protobuf_oneof:"key_kind"`
  990. // Required. The value assigned to the key.
  991. //
  992. // If the optional_entry field is true, the expression must resolve to an
  993. // optional-typed value. If the optional value is present, the key will be
  994. // set; however, if the optional value is absent, the key will be unset.
  995. Value *Expr `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
  996. // Whether the key-value pair is optional.
  997. OptionalEntry bool `protobuf:"varint,5,opt,name=optional_entry,json=optionalEntry,proto3" json:"optional_entry,omitempty"`
  998. }
  999. func (x *Expr_CreateStruct_Entry) Reset() {
  1000. *x = Expr_CreateStruct_Entry{}
  1001. if protoimpl.UnsafeEnabled {
  1002. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[11]
  1003. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1004. ms.StoreMessageInfo(mi)
  1005. }
  1006. }
  1007. func (x *Expr_CreateStruct_Entry) String() string {
  1008. return protoimpl.X.MessageStringOf(x)
  1009. }
  1010. func (*Expr_CreateStruct_Entry) ProtoMessage() {}
  1011. func (x *Expr_CreateStruct_Entry) ProtoReflect() protoreflect.Message {
  1012. mi := &file_google_api_expr_v1alpha1_syntax_proto_msgTypes[11]
  1013. if protoimpl.UnsafeEnabled && x != nil {
  1014. ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1015. if ms.LoadMessageInfo() == nil {
  1016. ms.StoreMessageInfo(mi)
  1017. }
  1018. return ms
  1019. }
  1020. return mi.MessageOf(x)
  1021. }
  1022. // Deprecated: Use Expr_CreateStruct_Entry.ProtoReflect.Descriptor instead.
  1023. func (*Expr_CreateStruct_Entry) Descriptor() ([]byte, []int) {
  1024. return file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP(), []int{1, 4, 0}
  1025. }
  1026. func (x *Expr_CreateStruct_Entry) GetId() int64 {
  1027. if x != nil {
  1028. return x.Id
  1029. }
  1030. return 0
  1031. }
  1032. func (m *Expr_CreateStruct_Entry) GetKeyKind() isExpr_CreateStruct_Entry_KeyKind {
  1033. if m != nil {
  1034. return m.KeyKind
  1035. }
  1036. return nil
  1037. }
  1038. func (x *Expr_CreateStruct_Entry) GetFieldKey() string {
  1039. if x, ok := x.GetKeyKind().(*Expr_CreateStruct_Entry_FieldKey); ok {
  1040. return x.FieldKey
  1041. }
  1042. return ""
  1043. }
  1044. func (x *Expr_CreateStruct_Entry) GetMapKey() *Expr {
  1045. if x, ok := x.GetKeyKind().(*Expr_CreateStruct_Entry_MapKey); ok {
  1046. return x.MapKey
  1047. }
  1048. return nil
  1049. }
  1050. func (x *Expr_CreateStruct_Entry) GetValue() *Expr {
  1051. if x != nil {
  1052. return x.Value
  1053. }
  1054. return nil
  1055. }
  1056. func (x *Expr_CreateStruct_Entry) GetOptionalEntry() bool {
  1057. if x != nil {
  1058. return x.OptionalEntry
  1059. }
  1060. return false
  1061. }
  1062. type isExpr_CreateStruct_Entry_KeyKind interface {
  1063. isExpr_CreateStruct_Entry_KeyKind()
  1064. }
  1065. type Expr_CreateStruct_Entry_FieldKey struct {
  1066. // The field key for a message creator statement.
  1067. FieldKey string `protobuf:"bytes,2,opt,name=field_key,json=fieldKey,proto3,oneof"`
  1068. }
  1069. type Expr_CreateStruct_Entry_MapKey struct {
  1070. // The key expression for a map creation statement.
  1071. MapKey *Expr `protobuf:"bytes,3,opt,name=map_key,json=mapKey,proto3,oneof"`
  1072. }
  1073. func (*Expr_CreateStruct_Entry_FieldKey) isExpr_CreateStruct_Entry_KeyKind() {}
  1074. func (*Expr_CreateStruct_Entry_MapKey) isExpr_CreateStruct_Entry_KeyKind() {}
  1075. var File_google_api_expr_v1alpha1_syntax_proto protoreflect.FileDescriptor
  1076. var file_google_api_expr_v1alpha1_syntax_proto_rawDesc = []byte{
  1077. 0x0a, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x65, 0x78, 0x70,
  1078. 0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x73, 0x79, 0x6e, 0x74, 0x61,
  1079. 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  1080. 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
  1081. 0x31, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  1082. 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  1083. 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  1084. 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  1085. 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  1086. 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1087. 0x22, 0x87, 0x01, 0x0a, 0x0a, 0x50, 0x61, 0x72, 0x73, 0x65, 0x64, 0x45, 0x78, 0x70, 0x72, 0x12,
  1088. 0x32, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
  1089. 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e,
  1090. 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x04, 0x65,
  1091. 0x78, 0x70, 0x72, 0x12, 0x45, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e,
  1092. 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  1093. 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
  1094. 0x68, 0x61, 0x31, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a,
  1095. 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xae, 0x0d, 0x0a, 0x04, 0x45,
  1096. 0x78, 0x70, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
  1097. 0x02, 0x69, 0x64, 0x12, 0x43, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x70,
  1098. 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1099. 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
  1100. 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x09, 0x63,
  1101. 0x6f, 0x6e, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x45, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e,
  1102. 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67,
  1103. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76,
  1104. 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x49, 0x64, 0x65,
  1105. 0x6e, 0x74, 0x48, 0x00, 0x52, 0x09, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12,
  1106. 0x48, 0x0a, 0x0b, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x05,
  1107. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
  1108. 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
  1109. 0x45, 0x78, 0x70, 0x72, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x73,
  1110. 0x65, 0x6c, 0x65, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x42, 0x0a, 0x09, 0x63, 0x61, 0x6c,
  1111. 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67,
  1112. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76,
  1113. 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x43, 0x61, 0x6c,
  1114. 0x6c, 0x48, 0x00, 0x52, 0x08, 0x63, 0x61, 0x6c, 0x6c, 0x45, 0x78, 0x70, 0x72, 0x12, 0x48, 0x0a,
  1115. 0x09, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b,
  1116. 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78,
  1117. 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72,
  1118. 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x6c,
  1119. 0x69, 0x73, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x4e, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x75, 0x63,
  1120. 0x74, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67,
  1121. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76,
  1122. 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x43, 0x72, 0x65,
  1123. 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x74, 0x72,
  1124. 0x75, 0x63, 0x74, 0x45, 0x78, 0x70, 0x72, 0x12, 0x5d, 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x72,
  1125. 0x65, 0x68, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x18, 0x09, 0x20,
  1126. 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
  1127. 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45,
  1128. 0x78, 0x70, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x68, 0x65, 0x6e, 0x73, 0x69, 0x6f,
  1129. 0x6e, 0x48, 0x00, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x68, 0x65, 0x6e, 0x73, 0x69,
  1130. 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x72, 0x1a, 0x1b, 0x0a, 0x05, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x12,
  1131. 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
  1132. 0x61, 0x6d, 0x65, 0x1a, 0x75, 0x0a, 0x06, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x38, 0x0a,
  1133. 0x07, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e,
  1134. 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72,
  1135. 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x07,
  1136. 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64,
  1137. 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x1b, 0x0a,
  1138. 0x09, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
  1139. 0x52, 0x08, 0x74, 0x65, 0x73, 0x74, 0x4f, 0x6e, 0x6c, 0x79, 0x1a, 0x8e, 0x01, 0x0a, 0x04, 0x43,
  1140. 0x61, 0x6c, 0x6c, 0x12, 0x36, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x01, 0x20,
  1141. 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
  1142. 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45,
  1143. 0x78, 0x70, 0x72, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66,
  1144. 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66,
  1145. 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18,
  1146. 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
  1147. 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
  1148. 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x1a, 0x73, 0x0a, 0x0a, 0x43,
  1149. 0x72, 0x65, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x08, 0x65, 0x6c, 0x65,
  1150. 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f,
  1151. 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31,
  1152. 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x08, 0x65, 0x6c, 0x65,
  1153. 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61,
  1154. 0x6c, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52,
  1155. 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73,
  1156. 0x1a, 0xdb, 0x02, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x75, 0x63,
  1157. 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d,
  1158. 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
  1159. 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18,
  1160. 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
  1161. 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
  1162. 0x2e, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x72, 0x75,
  1163. 0x63, 0x74, 0x2e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65,
  1164. 0x73, 0x1a, 0xda, 0x01, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69,
  1165. 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x66,
  1166. 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
  1167. 0x52, 0x08, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x4b, 0x65, 0x79, 0x12, 0x39, 0x0a, 0x07, 0x6d, 0x61,
  1168. 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f,
  1169. 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31,
  1170. 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x48, 0x00, 0x52, 0x06, 0x6d,
  1171. 0x61, 0x70, 0x4b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04,
  1172. 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
  1173. 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
  1174. 0x45, 0x78, 0x70, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f,
  1175. 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x18, 0x05, 0x20,
  1176. 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x45, 0x6e, 0x74,
  1177. 0x72, 0x79, 0x42, 0x0a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x1a, 0xfd,
  1178. 0x02, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x68, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
  1179. 0x12, 0x19, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01,
  1180. 0x28, 0x09, 0x52, 0x07, 0x69, 0x74, 0x65, 0x72, 0x56, 0x61, 0x72, 0x12, 0x3d, 0x0a, 0x0a, 0x69,
  1181. 0x74, 0x65, 0x72, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1182. 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70,
  1183. 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52,
  1184. 0x09, 0x69, 0x74, 0x65, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x63,
  1185. 0x63, 0x75, 0x5f, 0x76, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63,
  1186. 0x63, 0x75, 0x56, 0x61, 0x72, 0x12, 0x3b, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x75, 0x5f, 0x69, 0x6e,
  1187. 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  1188. 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
  1189. 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x08, 0x61, 0x63, 0x63, 0x75, 0x49, 0x6e,
  1190. 0x69, 0x74, 0x12, 0x45, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69,
  1191. 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f,
  1192. 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61,
  1193. 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x0d, 0x6c, 0x6f, 0x6f, 0x70,
  1194. 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x09, 0x6c, 0x6f, 0x6f,
  1195. 0x70, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67,
  1196. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76,
  1197. 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x08, 0x6c, 0x6f,
  1198. 0x6f, 0x70, 0x53, 0x74, 0x65, 0x70, 0x12, 0x36, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
  1199. 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  1200. 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
  1201. 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, 0x0b,
  1202. 0x0a, 0x09, 0x65, 0x78, 0x70, 0x72, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xc1, 0x03, 0x0a, 0x08,
  1203. 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x0a, 0x6e, 0x75, 0x6c, 0x6c,
  1204. 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x67,
  1205. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4e,
  1206. 0x75, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x09, 0x6e, 0x75, 0x6c, 0x6c,
  1207. 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x76, 0x61,
  1208. 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f, 0x6f,
  1209. 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f,
  1210. 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0a, 0x69,
  1211. 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x75, 0x69, 0x6e,
  1212. 0x74, 0x36, 0x34, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48,
  1213. 0x00, 0x52, 0x0b, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23,
  1214. 0x0a, 0x0c, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05,
  1215. 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61,
  1216. 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61,
  1217. 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x72,
  1218. 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x62, 0x79, 0x74, 0x65,
  1219. 0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
  1220. 0x0a, 0x62, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x46, 0x0a, 0x0e, 0x64,
  1221. 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20,
  1222. 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
  1223. 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x02,
  1224. 0x18, 0x01, 0x48, 0x00, 0x52, 0x0d, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61,
  1225. 0x6c, 0x75, 0x65, 0x12, 0x49, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
  1226. 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  1227. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
  1228. 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x02, 0x18, 0x01, 0x48, 0x00, 0x52, 0x0e,
  1229. 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0f,
  1230. 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x22,
  1231. 0xb9, 0x03, 0x0a, 0x0a, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25,
  1232. 0x0a, 0x0e, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
  1233. 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x56, 0x65,
  1234. 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1235. 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1236. 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
  1237. 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x4f, 0x66, 0x66,
  1238. 0x73, 0x65, 0x74, 0x73, 0x12, 0x51, 0x0a, 0x09, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
  1239. 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1240. 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
  1241. 0x61, 0x31, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6f,
  1242. 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x70, 0x6f,
  1243. 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x55, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x72, 0x6f,
  1244. 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67,
  1245. 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76,
  1246. 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e,
  1247. 0x66, 0x6f, 0x2e, 0x4d, 0x61, 0x63, 0x72, 0x6f, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x45, 0x6e, 0x74,
  1248. 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x1a, 0x3c,
  1249. 0x0a, 0x0e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
  1250. 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b,
  1251. 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
  1252. 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x5d, 0x0a, 0x0f,
  1253. 0x4d, 0x61, 0x63, 0x72, 0x6f, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
  1254. 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65,
  1255. 0x79, 0x12, 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
  1256. 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78,
  1257. 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x72,
  1258. 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x70, 0x0a, 0x0e, 0x53,
  1259. 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a,
  1260. 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  1261. 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66,
  1262. 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65,
  1263. 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52,
  1264. 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18,
  1265. 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x42, 0x6e, 0x0a,
  1266. 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e,
  1267. 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x0b, 0x53,
  1268. 0x79, 0x6e, 0x74, 0x61, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x6f,
  1269. 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f,
  1270. 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
  1271. 0x70, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x65, 0x78, 0x70, 0x72, 0x2f, 0x76, 0x31, 0x61,
  1272. 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x65, 0x78, 0x70, 0x72, 0xf8, 0x01, 0x01, 0x62, 0x06, 0x70,
  1273. 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1274. }
  1275. var (
  1276. file_google_api_expr_v1alpha1_syntax_proto_rawDescOnce sync.Once
  1277. file_google_api_expr_v1alpha1_syntax_proto_rawDescData = file_google_api_expr_v1alpha1_syntax_proto_rawDesc
  1278. )
  1279. func file_google_api_expr_v1alpha1_syntax_proto_rawDescGZIP() []byte {
  1280. file_google_api_expr_v1alpha1_syntax_proto_rawDescOnce.Do(func() {
  1281. file_google_api_expr_v1alpha1_syntax_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_expr_v1alpha1_syntax_proto_rawDescData)
  1282. })
  1283. return file_google_api_expr_v1alpha1_syntax_proto_rawDescData
  1284. }
  1285. var file_google_api_expr_v1alpha1_syntax_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
  1286. var file_google_api_expr_v1alpha1_syntax_proto_goTypes = []interface{}{
  1287. (*ParsedExpr)(nil), // 0: google.api.expr.v1alpha1.ParsedExpr
  1288. (*Expr)(nil), // 1: google.api.expr.v1alpha1.Expr
  1289. (*Constant)(nil), // 2: google.api.expr.v1alpha1.Constant
  1290. (*SourceInfo)(nil), // 3: google.api.expr.v1alpha1.SourceInfo
  1291. (*SourcePosition)(nil), // 4: google.api.expr.v1alpha1.SourcePosition
  1292. (*Expr_Ident)(nil), // 5: google.api.expr.v1alpha1.Expr.Ident
  1293. (*Expr_Select)(nil), // 6: google.api.expr.v1alpha1.Expr.Select
  1294. (*Expr_Call)(nil), // 7: google.api.expr.v1alpha1.Expr.Call
  1295. (*Expr_CreateList)(nil), // 8: google.api.expr.v1alpha1.Expr.CreateList
  1296. (*Expr_CreateStruct)(nil), // 9: google.api.expr.v1alpha1.Expr.CreateStruct
  1297. (*Expr_Comprehension)(nil), // 10: google.api.expr.v1alpha1.Expr.Comprehension
  1298. (*Expr_CreateStruct_Entry)(nil), // 11: google.api.expr.v1alpha1.Expr.CreateStruct.Entry
  1299. nil, // 12: google.api.expr.v1alpha1.SourceInfo.PositionsEntry
  1300. nil, // 13: google.api.expr.v1alpha1.SourceInfo.MacroCallsEntry
  1301. (structpb.NullValue)(0), // 14: google.protobuf.NullValue
  1302. (*durationpb.Duration)(nil), // 15: google.protobuf.Duration
  1303. (*timestamppb.Timestamp)(nil), // 16: google.protobuf.Timestamp
  1304. }
  1305. var file_google_api_expr_v1alpha1_syntax_proto_depIdxs = []int32{
  1306. 1, // 0: google.api.expr.v1alpha1.ParsedExpr.expr:type_name -> google.api.expr.v1alpha1.Expr
  1307. 3, // 1: google.api.expr.v1alpha1.ParsedExpr.source_info:type_name -> google.api.expr.v1alpha1.SourceInfo
  1308. 2, // 2: google.api.expr.v1alpha1.Expr.const_expr:type_name -> google.api.expr.v1alpha1.Constant
  1309. 5, // 3: google.api.expr.v1alpha1.Expr.ident_expr:type_name -> google.api.expr.v1alpha1.Expr.Ident
  1310. 6, // 4: google.api.expr.v1alpha1.Expr.select_expr:type_name -> google.api.expr.v1alpha1.Expr.Select
  1311. 7, // 5: google.api.expr.v1alpha1.Expr.call_expr:type_name -> google.api.expr.v1alpha1.Expr.Call
  1312. 8, // 6: google.api.expr.v1alpha1.Expr.list_expr:type_name -> google.api.expr.v1alpha1.Expr.CreateList
  1313. 9, // 7: google.api.expr.v1alpha1.Expr.struct_expr:type_name -> google.api.expr.v1alpha1.Expr.CreateStruct
  1314. 10, // 8: google.api.expr.v1alpha1.Expr.comprehension_expr:type_name -> google.api.expr.v1alpha1.Expr.Comprehension
  1315. 14, // 9: google.api.expr.v1alpha1.Constant.null_value:type_name -> google.protobuf.NullValue
  1316. 15, // 10: google.api.expr.v1alpha1.Constant.duration_value:type_name -> google.protobuf.Duration
  1317. 16, // 11: google.api.expr.v1alpha1.Constant.timestamp_value:type_name -> google.protobuf.Timestamp
  1318. 12, // 12: google.api.expr.v1alpha1.SourceInfo.positions:type_name -> google.api.expr.v1alpha1.SourceInfo.PositionsEntry
  1319. 13, // 13: google.api.expr.v1alpha1.SourceInfo.macro_calls:type_name -> google.api.expr.v1alpha1.SourceInfo.MacroCallsEntry
  1320. 1, // 14: google.api.expr.v1alpha1.Expr.Select.operand:type_name -> google.api.expr.v1alpha1.Expr
  1321. 1, // 15: google.api.expr.v1alpha1.Expr.Call.target:type_name -> google.api.expr.v1alpha1.Expr
  1322. 1, // 16: google.api.expr.v1alpha1.Expr.Call.args:type_name -> google.api.expr.v1alpha1.Expr
  1323. 1, // 17: google.api.expr.v1alpha1.Expr.CreateList.elements:type_name -> google.api.expr.v1alpha1.Expr
  1324. 11, // 18: google.api.expr.v1alpha1.Expr.CreateStruct.entries:type_name -> google.api.expr.v1alpha1.Expr.CreateStruct.Entry
  1325. 1, // 19: google.api.expr.v1alpha1.Expr.Comprehension.iter_range:type_name -> google.api.expr.v1alpha1.Expr
  1326. 1, // 20: google.api.expr.v1alpha1.Expr.Comprehension.accu_init:type_name -> google.api.expr.v1alpha1.Expr
  1327. 1, // 21: google.api.expr.v1alpha1.Expr.Comprehension.loop_condition:type_name -> google.api.expr.v1alpha1.Expr
  1328. 1, // 22: google.api.expr.v1alpha1.Expr.Comprehension.loop_step:type_name -> google.api.expr.v1alpha1.Expr
  1329. 1, // 23: google.api.expr.v1alpha1.Expr.Comprehension.result:type_name -> google.api.expr.v1alpha1.Expr
  1330. 1, // 24: google.api.expr.v1alpha1.Expr.CreateStruct.Entry.map_key:type_name -> google.api.expr.v1alpha1.Expr
  1331. 1, // 25: google.api.expr.v1alpha1.Expr.CreateStruct.Entry.value:type_name -> google.api.expr.v1alpha1.Expr
  1332. 1, // 26: google.api.expr.v1alpha1.SourceInfo.MacroCallsEntry.value:type_name -> google.api.expr.v1alpha1.Expr
  1333. 27, // [27:27] is the sub-list for method output_type
  1334. 27, // [27:27] is the sub-list for method input_type
  1335. 27, // [27:27] is the sub-list for extension type_name
  1336. 27, // [27:27] is the sub-list for extension extendee
  1337. 0, // [0:27] is the sub-list for field type_name
  1338. }
  1339. func init() { file_google_api_expr_v1alpha1_syntax_proto_init() }
  1340. func file_google_api_expr_v1alpha1_syntax_proto_init() {
  1341. if File_google_api_expr_v1alpha1_syntax_proto != nil {
  1342. return
  1343. }
  1344. if !protoimpl.UnsafeEnabled {
  1345. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1346. switch v := v.(*ParsedExpr); i {
  1347. case 0:
  1348. return &v.state
  1349. case 1:
  1350. return &v.sizeCache
  1351. case 2:
  1352. return &v.unknownFields
  1353. default:
  1354. return nil
  1355. }
  1356. }
  1357. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1358. switch v := v.(*Expr); i {
  1359. case 0:
  1360. return &v.state
  1361. case 1:
  1362. return &v.sizeCache
  1363. case 2:
  1364. return &v.unknownFields
  1365. default:
  1366. return nil
  1367. }
  1368. }
  1369. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1370. switch v := v.(*Constant); i {
  1371. case 0:
  1372. return &v.state
  1373. case 1:
  1374. return &v.sizeCache
  1375. case 2:
  1376. return &v.unknownFields
  1377. default:
  1378. return nil
  1379. }
  1380. }
  1381. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1382. switch v := v.(*SourceInfo); i {
  1383. case 0:
  1384. return &v.state
  1385. case 1:
  1386. return &v.sizeCache
  1387. case 2:
  1388. return &v.unknownFields
  1389. default:
  1390. return nil
  1391. }
  1392. }
  1393. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1394. switch v := v.(*SourcePosition); i {
  1395. case 0:
  1396. return &v.state
  1397. case 1:
  1398. return &v.sizeCache
  1399. case 2:
  1400. return &v.unknownFields
  1401. default:
  1402. return nil
  1403. }
  1404. }
  1405. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1406. switch v := v.(*Expr_Ident); i {
  1407. case 0:
  1408. return &v.state
  1409. case 1:
  1410. return &v.sizeCache
  1411. case 2:
  1412. return &v.unknownFields
  1413. default:
  1414. return nil
  1415. }
  1416. }
  1417. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1418. switch v := v.(*Expr_Select); i {
  1419. case 0:
  1420. return &v.state
  1421. case 1:
  1422. return &v.sizeCache
  1423. case 2:
  1424. return &v.unknownFields
  1425. default:
  1426. return nil
  1427. }
  1428. }
  1429. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1430. switch v := v.(*Expr_Call); i {
  1431. case 0:
  1432. return &v.state
  1433. case 1:
  1434. return &v.sizeCache
  1435. case 2:
  1436. return &v.unknownFields
  1437. default:
  1438. return nil
  1439. }
  1440. }
  1441. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1442. switch v := v.(*Expr_CreateList); i {
  1443. case 0:
  1444. return &v.state
  1445. case 1:
  1446. return &v.sizeCache
  1447. case 2:
  1448. return &v.unknownFields
  1449. default:
  1450. return nil
  1451. }
  1452. }
  1453. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1454. switch v := v.(*Expr_CreateStruct); i {
  1455. case 0:
  1456. return &v.state
  1457. case 1:
  1458. return &v.sizeCache
  1459. case 2:
  1460. return &v.unknownFields
  1461. default:
  1462. return nil
  1463. }
  1464. }
  1465. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1466. switch v := v.(*Expr_Comprehension); i {
  1467. case 0:
  1468. return &v.state
  1469. case 1:
  1470. return &v.sizeCache
  1471. case 2:
  1472. return &v.unknownFields
  1473. default:
  1474. return nil
  1475. }
  1476. }
  1477. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  1478. switch v := v.(*Expr_CreateStruct_Entry); i {
  1479. case 0:
  1480. return &v.state
  1481. case 1:
  1482. return &v.sizeCache
  1483. case 2:
  1484. return &v.unknownFields
  1485. default:
  1486. return nil
  1487. }
  1488. }
  1489. }
  1490. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[1].OneofWrappers = []interface{}{
  1491. (*Expr_ConstExpr)(nil),
  1492. (*Expr_IdentExpr)(nil),
  1493. (*Expr_SelectExpr)(nil),
  1494. (*Expr_CallExpr)(nil),
  1495. (*Expr_ListExpr)(nil),
  1496. (*Expr_StructExpr)(nil),
  1497. (*Expr_ComprehensionExpr)(nil),
  1498. }
  1499. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[2].OneofWrappers = []interface{}{
  1500. (*Constant_NullValue)(nil),
  1501. (*Constant_BoolValue)(nil),
  1502. (*Constant_Int64Value)(nil),
  1503. (*Constant_Uint64Value)(nil),
  1504. (*Constant_DoubleValue)(nil),
  1505. (*Constant_StringValue)(nil),
  1506. (*Constant_BytesValue)(nil),
  1507. (*Constant_DurationValue)(nil),
  1508. (*Constant_TimestampValue)(nil),
  1509. }
  1510. file_google_api_expr_v1alpha1_syntax_proto_msgTypes[11].OneofWrappers = []interface{}{
  1511. (*Expr_CreateStruct_Entry_FieldKey)(nil),
  1512. (*Expr_CreateStruct_Entry_MapKey)(nil),
  1513. }
  1514. type x struct{}
  1515. out := protoimpl.TypeBuilder{
  1516. File: protoimpl.DescBuilder{
  1517. GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1518. RawDescriptor: file_google_api_expr_v1alpha1_syntax_proto_rawDesc,
  1519. NumEnums: 0,
  1520. NumMessages: 14,
  1521. NumExtensions: 0,
  1522. NumServices: 0,
  1523. },
  1524. GoTypes: file_google_api_expr_v1alpha1_syntax_proto_goTypes,
  1525. DependencyIndexes: file_google_api_expr_v1alpha1_syntax_proto_depIdxs,
  1526. MessageInfos: file_google_api_expr_v1alpha1_syntax_proto_msgTypes,
  1527. }.Build()
  1528. File_google_api_expr_v1alpha1_syntax_proto = out.File
  1529. file_google_api_expr_v1alpha1_syntax_proto_rawDesc = nil
  1530. file_google_api_expr_v1alpha1_syntax_proto_goTypes = nil
  1531. file_google_api_expr_v1alpha1_syntax_proto_depIdxs = nil
  1532. }