1// Copyright 2020 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
15// Code generated by protoc-gen-go. DO NOT EDIT.
16// versions:
17// 	protoc-gen-go v1.22.0
18// 	protoc        v3.11.2
19// source: google/api/expr/v1alpha1/checked.proto
20
21package expr
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	proto "github.com/golang/protobuf/proto"
28	empty "github.com/golang/protobuf/ptypes/empty"
29	_struct "github.com/golang/protobuf/ptypes/struct"
30	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
31	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
32)
33
34const (
35	// Verify that this generated code is sufficiently up-to-date.
36	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
37	// Verify that runtime/protoimpl is sufficiently up-to-date.
38	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
39)
40
41// This is a compile-time assertion that a sufficiently up-to-date version
42// of the legacy proto package is being used.
43const _ = proto.ProtoPackageIsVersion4
44
45// CEL primitive types.
46type Type_PrimitiveType int32
47
48const (
49	// Unspecified type.
50	Type_PRIMITIVE_TYPE_UNSPECIFIED Type_PrimitiveType = 0
51	// Boolean type.
52	Type_BOOL Type_PrimitiveType = 1
53	// Int64 type.
54	//
55	// Proto-based integer values are widened to int64.
56	Type_INT64 Type_PrimitiveType = 2
57	// Uint64 type.
58	//
59	// Proto-based unsigned integer values are widened to uint64.
60	Type_UINT64 Type_PrimitiveType = 3
61	// Double type.
62	//
63	// Proto-based float values are widened to double values.
64	Type_DOUBLE Type_PrimitiveType = 4
65	// String type.
66	Type_STRING Type_PrimitiveType = 5
67	// Bytes type.
68	Type_BYTES Type_PrimitiveType = 6
69)
70
71// Enum value maps for Type_PrimitiveType.
72var (
73	Type_PrimitiveType_name = map[int32]string{
74		0: "PRIMITIVE_TYPE_UNSPECIFIED",
75		1: "BOOL",
76		2: "INT64",
77		3: "UINT64",
78		4: "DOUBLE",
79		5: "STRING",
80		6: "BYTES",
81	}
82	Type_PrimitiveType_value = map[string]int32{
83		"PRIMITIVE_TYPE_UNSPECIFIED": 0,
84		"BOOL":                       1,
85		"INT64":                      2,
86		"UINT64":                     3,
87		"DOUBLE":                     4,
88		"STRING":                     5,
89		"BYTES":                      6,
90	}
91)
92
93func (x Type_PrimitiveType) Enum() *Type_PrimitiveType {
94	p := new(Type_PrimitiveType)
95	*p = x
96	return p
97}
98
99func (x Type_PrimitiveType) String() string {
100	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
101}
102
103func (Type_PrimitiveType) Descriptor() protoreflect.EnumDescriptor {
104	return file_google_api_expr_v1alpha1_checked_proto_enumTypes[0].Descriptor()
105}
106
107func (Type_PrimitiveType) Type() protoreflect.EnumType {
108	return &file_google_api_expr_v1alpha1_checked_proto_enumTypes[0]
109}
110
111func (x Type_PrimitiveType) Number() protoreflect.EnumNumber {
112	return protoreflect.EnumNumber(x)
113}
114
115// Deprecated: Use Type_PrimitiveType.Descriptor instead.
116func (Type_PrimitiveType) EnumDescriptor() ([]byte, []int) {
117	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{1, 0}
118}
119
120// Well-known protobuf types treated with first-class support in CEL.
121type Type_WellKnownType int32
122
123const (
124	// Unspecified type.
125	Type_WELL_KNOWN_TYPE_UNSPECIFIED Type_WellKnownType = 0
126	// Well-known protobuf.Any type.
127	//
128	// Any types are a polymorphic message type. During type-checking they are
129	// treated like `DYN` types, but at runtime they are resolved to a specific
130	// message type specified at evaluation time.
131	Type_ANY Type_WellKnownType = 1
132	// Well-known protobuf.Timestamp type, internally referenced as `timestamp`.
133	Type_TIMESTAMP Type_WellKnownType = 2
134	// Well-known protobuf.Duration type, internally referenced as `duration`.
135	Type_DURATION Type_WellKnownType = 3
136)
137
138// Enum value maps for Type_WellKnownType.
139var (
140	Type_WellKnownType_name = map[int32]string{
141		0: "WELL_KNOWN_TYPE_UNSPECIFIED",
142		1: "ANY",
143		2: "TIMESTAMP",
144		3: "DURATION",
145	}
146	Type_WellKnownType_value = map[string]int32{
147		"WELL_KNOWN_TYPE_UNSPECIFIED": 0,
148		"ANY":                         1,
149		"TIMESTAMP":                   2,
150		"DURATION":                    3,
151	}
152)
153
154func (x Type_WellKnownType) Enum() *Type_WellKnownType {
155	p := new(Type_WellKnownType)
156	*p = x
157	return p
158}
159
160func (x Type_WellKnownType) String() string {
161	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
162}
163
164func (Type_WellKnownType) Descriptor() protoreflect.EnumDescriptor {
165	return file_google_api_expr_v1alpha1_checked_proto_enumTypes[1].Descriptor()
166}
167
168func (Type_WellKnownType) Type() protoreflect.EnumType {
169	return &file_google_api_expr_v1alpha1_checked_proto_enumTypes[1]
170}
171
172func (x Type_WellKnownType) Number() protoreflect.EnumNumber {
173	return protoreflect.EnumNumber(x)
174}
175
176// Deprecated: Use Type_WellKnownType.Descriptor instead.
177func (Type_WellKnownType) EnumDescriptor() ([]byte, []int) {
178	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{1, 1}
179}
180
181// A CEL expression which has been successfully type checked.
182type CheckedExpr struct {
183	state         protoimpl.MessageState
184	sizeCache     protoimpl.SizeCache
185	unknownFields protoimpl.UnknownFields
186
187	// A map from expression ids to resolved references.
188	//
189	// The following entries are in this table:
190	//
191	// - An Ident or Select expression is represented here if it resolves to a
192	//   declaration. For instance, if `a.b.c` is represented by
193	//   `select(select(id(a), b), c)`, and `a.b` resolves to a declaration,
194	//   while `c` is a field selection, then the reference is attached to the
195	//   nested select expression (but not to the id or or the outer select).
196	//   In turn, if `a` resolves to a declaration and `b.c` are field selections,
197	//   the reference is attached to the ident expression.
198	// - Every Call expression has an entry here, identifying the function being
199	//   called.
200	// - Every CreateStruct expression for a message has an entry, identifying
201	//   the message.
202	ReferenceMap map[int64]*Reference `protobuf:"bytes,2,rep,name=reference_map,json=referenceMap,proto3" json:"reference_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
203	// A map from expression ids to types.
204	//
205	// Every expression node which has a type different than DYN has a mapping
206	// here. If an expression has type DYN, it is omitted from this map to save
207	// space.
208	TypeMap map[int64]*Type `protobuf:"bytes,3,rep,name=type_map,json=typeMap,proto3" json:"type_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
209	// The source info derived from input that generated the parsed `expr` and
210	// any optimizations made during the type-checking pass.
211	SourceInfo *SourceInfo `protobuf:"bytes,5,opt,name=source_info,json=sourceInfo,proto3" json:"source_info,omitempty"`
212	// The checked expression. Semantically equivalent to the parsed `expr`, but
213	// may have structural differences.
214	Expr *Expr `protobuf:"bytes,4,opt,name=expr,proto3" json:"expr,omitempty"`
215}
216
217func (x *CheckedExpr) Reset() {
218	*x = CheckedExpr{}
219	if protoimpl.UnsafeEnabled {
220		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[0]
221		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
222		ms.StoreMessageInfo(mi)
223	}
224}
225
226func (x *CheckedExpr) String() string {
227	return protoimpl.X.MessageStringOf(x)
228}
229
230func (*CheckedExpr) ProtoMessage() {}
231
232func (x *CheckedExpr) ProtoReflect() protoreflect.Message {
233	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[0]
234	if protoimpl.UnsafeEnabled && x != nil {
235		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
236		if ms.LoadMessageInfo() == nil {
237			ms.StoreMessageInfo(mi)
238		}
239		return ms
240	}
241	return mi.MessageOf(x)
242}
243
244// Deprecated: Use CheckedExpr.ProtoReflect.Descriptor instead.
245func (*CheckedExpr) Descriptor() ([]byte, []int) {
246	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{0}
247}
248
249func (x *CheckedExpr) GetReferenceMap() map[int64]*Reference {
250	if x != nil {
251		return x.ReferenceMap
252	}
253	return nil
254}
255
256func (x *CheckedExpr) GetTypeMap() map[int64]*Type {
257	if x != nil {
258		return x.TypeMap
259	}
260	return nil
261}
262
263func (x *CheckedExpr) GetSourceInfo() *SourceInfo {
264	if x != nil {
265		return x.SourceInfo
266	}
267	return nil
268}
269
270func (x *CheckedExpr) GetExpr() *Expr {
271	if x != nil {
272		return x.Expr
273	}
274	return nil
275}
276
277// Represents a CEL type.
278type Type struct {
279	state         protoimpl.MessageState
280	sizeCache     protoimpl.SizeCache
281	unknownFields protoimpl.UnknownFields
282
283	// The kind of type.
284	//
285	// Types that are assignable to TypeKind:
286	//	*Type_Dyn
287	//	*Type_Null
288	//	*Type_Primitive
289	//	*Type_Wrapper
290	//	*Type_WellKnown
291	//	*Type_ListType_
292	//	*Type_MapType_
293	//	*Type_Function
294	//	*Type_MessageType
295	//	*Type_TypeParam
296	//	*Type_Type
297	//	*Type_Error
298	//	*Type_AbstractType_
299	TypeKind isType_TypeKind `protobuf_oneof:"type_kind"`
300}
301
302func (x *Type) Reset() {
303	*x = Type{}
304	if protoimpl.UnsafeEnabled {
305		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[1]
306		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
307		ms.StoreMessageInfo(mi)
308	}
309}
310
311func (x *Type) String() string {
312	return protoimpl.X.MessageStringOf(x)
313}
314
315func (*Type) ProtoMessage() {}
316
317func (x *Type) ProtoReflect() protoreflect.Message {
318	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[1]
319	if protoimpl.UnsafeEnabled && x != nil {
320		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
321		if ms.LoadMessageInfo() == nil {
322			ms.StoreMessageInfo(mi)
323		}
324		return ms
325	}
326	return mi.MessageOf(x)
327}
328
329// Deprecated: Use Type.ProtoReflect.Descriptor instead.
330func (*Type) Descriptor() ([]byte, []int) {
331	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{1}
332}
333
334func (m *Type) GetTypeKind() isType_TypeKind {
335	if m != nil {
336		return m.TypeKind
337	}
338	return nil
339}
340
341func (x *Type) GetDyn() *empty.Empty {
342	if x, ok := x.GetTypeKind().(*Type_Dyn); ok {
343		return x.Dyn
344	}
345	return nil
346}
347
348func (x *Type) GetNull() _struct.NullValue {
349	if x, ok := x.GetTypeKind().(*Type_Null); ok {
350		return x.Null
351	}
352	return _struct.NullValue_NULL_VALUE
353}
354
355func (x *Type) GetPrimitive() Type_PrimitiveType {
356	if x, ok := x.GetTypeKind().(*Type_Primitive); ok {
357		return x.Primitive
358	}
359	return Type_PRIMITIVE_TYPE_UNSPECIFIED
360}
361
362func (x *Type) GetWrapper() Type_PrimitiveType {
363	if x, ok := x.GetTypeKind().(*Type_Wrapper); ok {
364		return x.Wrapper
365	}
366	return Type_PRIMITIVE_TYPE_UNSPECIFIED
367}
368
369func (x *Type) GetWellKnown() Type_WellKnownType {
370	if x, ok := x.GetTypeKind().(*Type_WellKnown); ok {
371		return x.WellKnown
372	}
373	return Type_WELL_KNOWN_TYPE_UNSPECIFIED
374}
375
376func (x *Type) GetListType() *Type_ListType {
377	if x, ok := x.GetTypeKind().(*Type_ListType_); ok {
378		return x.ListType
379	}
380	return nil
381}
382
383func (x *Type) GetMapType() *Type_MapType {
384	if x, ok := x.GetTypeKind().(*Type_MapType_); ok {
385		return x.MapType
386	}
387	return nil
388}
389
390func (x *Type) GetFunction() *Type_FunctionType {
391	if x, ok := x.GetTypeKind().(*Type_Function); ok {
392		return x.Function
393	}
394	return nil
395}
396
397func (x *Type) GetMessageType() string {
398	if x, ok := x.GetTypeKind().(*Type_MessageType); ok {
399		return x.MessageType
400	}
401	return ""
402}
403
404func (x *Type) GetTypeParam() string {
405	if x, ok := x.GetTypeKind().(*Type_TypeParam); ok {
406		return x.TypeParam
407	}
408	return ""
409}
410
411func (x *Type) GetType() *Type {
412	if x, ok := x.GetTypeKind().(*Type_Type); ok {
413		return x.Type
414	}
415	return nil
416}
417
418func (x *Type) GetError() *empty.Empty {
419	if x, ok := x.GetTypeKind().(*Type_Error); ok {
420		return x.Error
421	}
422	return nil
423}
424
425func (x *Type) GetAbstractType() *Type_AbstractType {
426	if x, ok := x.GetTypeKind().(*Type_AbstractType_); ok {
427		return x.AbstractType
428	}
429	return nil
430}
431
432type isType_TypeKind interface {
433	isType_TypeKind()
434}
435
436type Type_Dyn struct {
437	// Dynamic type.
438	Dyn *empty.Empty `protobuf:"bytes,1,opt,name=dyn,proto3,oneof"`
439}
440
441type Type_Null struct {
442	// Null value.
443	Null _struct.NullValue `protobuf:"varint,2,opt,name=null,proto3,enum=google.protobuf.NullValue,oneof"`
444}
445
446type Type_Primitive struct {
447	// Primitive types: `true`, `1u`, `-2.0`, `'string'`, `b'bytes'`.
448	Primitive Type_PrimitiveType `protobuf:"varint,3,opt,name=primitive,proto3,enum=google.api.expr.v1alpha1.Type_PrimitiveType,oneof"`
449}
450
451type Type_Wrapper struct {
452	// Wrapper of a primitive type, e.g. `google.protobuf.Int64Value`.
453	Wrapper Type_PrimitiveType `protobuf:"varint,4,opt,name=wrapper,proto3,enum=google.api.expr.v1alpha1.Type_PrimitiveType,oneof"`
454}
455
456type Type_WellKnown struct {
457	// Well-known protobuf type such as `google.protobuf.Timestamp`.
458	WellKnown Type_WellKnownType `protobuf:"varint,5,opt,name=well_known,json=wellKnown,proto3,enum=google.api.expr.v1alpha1.Type_WellKnownType,oneof"`
459}
460
461type Type_ListType_ struct {
462	// Parameterized list with elements of `list_type`, e.g. `list<timestamp>`.
463	ListType *Type_ListType `protobuf:"bytes,6,opt,name=list_type,json=listType,proto3,oneof"`
464}
465
466type Type_MapType_ struct {
467	// Parameterized map with typed keys and values.
468	MapType *Type_MapType `protobuf:"bytes,7,opt,name=map_type,json=mapType,proto3,oneof"`
469}
470
471type Type_Function struct {
472	// Function type.
473	Function *Type_FunctionType `protobuf:"bytes,8,opt,name=function,proto3,oneof"`
474}
475
476type Type_MessageType struct {
477	// Protocol buffer message type.
478	//
479	// The `message_type` string specifies the qualified message type name. For
480	// example, `google.plus.Profile`.
481	MessageType string `protobuf:"bytes,9,opt,name=message_type,json=messageType,proto3,oneof"`
482}
483
484type Type_TypeParam struct {
485	// Type param type.
486	//
487	// The `type_param` string specifies the type parameter name, e.g. `list<E>`
488	// would be a `list_type` whose element type was a `type_param` type
489	// named `E`.
490	TypeParam string `protobuf:"bytes,10,opt,name=type_param,json=typeParam,proto3,oneof"`
491}
492
493type Type_Type struct {
494	// Type type.
495	//
496	// The `type` value specifies the target type. e.g. int is type with a
497	// target type of `Primitive.INT`.
498	Type *Type `protobuf:"bytes,11,opt,name=type,proto3,oneof"`
499}
500
501type Type_Error struct {
502	// Error type.
503	//
504	// During type-checking if an expression is an error, its type is propagated
505	// as the `ERROR` type. This permits the type-checker to discover other
506	// errors present in the expression.
507	Error *empty.Empty `protobuf:"bytes,12,opt,name=error,proto3,oneof"`
508}
509
510type Type_AbstractType_ struct {
511	// Abstract, application defined type.
512	AbstractType *Type_AbstractType `protobuf:"bytes,14,opt,name=abstract_type,json=abstractType,proto3,oneof"`
513}
514
515func (*Type_Dyn) isType_TypeKind() {}
516
517func (*Type_Null) isType_TypeKind() {}
518
519func (*Type_Primitive) isType_TypeKind() {}
520
521func (*Type_Wrapper) isType_TypeKind() {}
522
523func (*Type_WellKnown) isType_TypeKind() {}
524
525func (*Type_ListType_) isType_TypeKind() {}
526
527func (*Type_MapType_) isType_TypeKind() {}
528
529func (*Type_Function) isType_TypeKind() {}
530
531func (*Type_MessageType) isType_TypeKind() {}
532
533func (*Type_TypeParam) isType_TypeKind() {}
534
535func (*Type_Type) isType_TypeKind() {}
536
537func (*Type_Error) isType_TypeKind() {}
538
539func (*Type_AbstractType_) isType_TypeKind() {}
540
541// Represents a declaration of a named value or function.
542//
543// A declaration is part of the contract between the expression, the agent
544// evaluating that expression, and the caller requesting evaluation.
545type Decl struct {
546	state         protoimpl.MessageState
547	sizeCache     protoimpl.SizeCache
548	unknownFields protoimpl.UnknownFields
549
550	// The fully qualified name of the declaration.
551	//
552	// Declarations are organized in containers and this represents the full path
553	// to the declaration in its container, as in `google.api.expr.Decl`.
554	//
555	// Declarations used as [FunctionDecl.Overload][google.api.expr.v1alpha1.Decl.FunctionDecl.Overload] parameters may or may not
556	// have a name depending on whether the overload is function declaration or a
557	// function definition containing a result [Expr][google.api.expr.v1alpha1.Expr].
558	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
559	// Required. The declaration kind.
560	//
561	// Types that are assignable to DeclKind:
562	//	*Decl_Ident
563	//	*Decl_Function
564	DeclKind isDecl_DeclKind `protobuf_oneof:"decl_kind"`
565}
566
567func (x *Decl) Reset() {
568	*x = Decl{}
569	if protoimpl.UnsafeEnabled {
570		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[2]
571		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
572		ms.StoreMessageInfo(mi)
573	}
574}
575
576func (x *Decl) String() string {
577	return protoimpl.X.MessageStringOf(x)
578}
579
580func (*Decl) ProtoMessage() {}
581
582func (x *Decl) ProtoReflect() protoreflect.Message {
583	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[2]
584	if protoimpl.UnsafeEnabled && x != nil {
585		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
586		if ms.LoadMessageInfo() == nil {
587			ms.StoreMessageInfo(mi)
588		}
589		return ms
590	}
591	return mi.MessageOf(x)
592}
593
594// Deprecated: Use Decl.ProtoReflect.Descriptor instead.
595func (*Decl) Descriptor() ([]byte, []int) {
596	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{2}
597}
598
599func (x *Decl) GetName() string {
600	if x != nil {
601		return x.Name
602	}
603	return ""
604}
605
606func (m *Decl) GetDeclKind() isDecl_DeclKind {
607	if m != nil {
608		return m.DeclKind
609	}
610	return nil
611}
612
613func (x *Decl) GetIdent() *Decl_IdentDecl {
614	if x, ok := x.GetDeclKind().(*Decl_Ident); ok {
615		return x.Ident
616	}
617	return nil
618}
619
620func (x *Decl) GetFunction() *Decl_FunctionDecl {
621	if x, ok := x.GetDeclKind().(*Decl_Function); ok {
622		return x.Function
623	}
624	return nil
625}
626
627type isDecl_DeclKind interface {
628	isDecl_DeclKind()
629}
630
631type Decl_Ident struct {
632	// Identifier declaration.
633	Ident *Decl_IdentDecl `protobuf:"bytes,2,opt,name=ident,proto3,oneof"`
634}
635
636type Decl_Function struct {
637	// Function declaration.
638	Function *Decl_FunctionDecl `protobuf:"bytes,3,opt,name=function,proto3,oneof"`
639}
640
641func (*Decl_Ident) isDecl_DeclKind() {}
642
643func (*Decl_Function) isDecl_DeclKind() {}
644
645// Describes a resolved reference to a declaration.
646type Reference struct {
647	state         protoimpl.MessageState
648	sizeCache     protoimpl.SizeCache
649	unknownFields protoimpl.UnknownFields
650
651	// The fully qualified name of the declaration.
652	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
653	// For references to functions, this is a list of `Overload.overload_id`
654	// values which match according to typing rules.
655	//
656	// If the list has more than one element, overload resolution among the
657	// presented candidates must happen at runtime because of dynamic types. The
658	// type checker attempts to narrow down this list as much as possible.
659	//
660	// Empty if this is not a reference to a [Decl.FunctionDecl][google.api.expr.v1alpha1.Decl.FunctionDecl].
661	OverloadId []string `protobuf:"bytes,3,rep,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"`
662	// For references to constants, this may contain the value of the
663	// constant if known at compile time.
664	Value *Constant `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
665}
666
667func (x *Reference) Reset() {
668	*x = Reference{}
669	if protoimpl.UnsafeEnabled {
670		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[3]
671		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
672		ms.StoreMessageInfo(mi)
673	}
674}
675
676func (x *Reference) String() string {
677	return protoimpl.X.MessageStringOf(x)
678}
679
680func (*Reference) ProtoMessage() {}
681
682func (x *Reference) ProtoReflect() protoreflect.Message {
683	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[3]
684	if protoimpl.UnsafeEnabled && x != nil {
685		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
686		if ms.LoadMessageInfo() == nil {
687			ms.StoreMessageInfo(mi)
688		}
689		return ms
690	}
691	return mi.MessageOf(x)
692}
693
694// Deprecated: Use Reference.ProtoReflect.Descriptor instead.
695func (*Reference) Descriptor() ([]byte, []int) {
696	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{3}
697}
698
699func (x *Reference) GetName() string {
700	if x != nil {
701		return x.Name
702	}
703	return ""
704}
705
706func (x *Reference) GetOverloadId() []string {
707	if x != nil {
708		return x.OverloadId
709	}
710	return nil
711}
712
713func (x *Reference) GetValue() *Constant {
714	if x != nil {
715		return x.Value
716	}
717	return nil
718}
719
720// List type with typed elements, e.g. `list<example.proto.MyMessage>`.
721type Type_ListType struct {
722	state         protoimpl.MessageState
723	sizeCache     protoimpl.SizeCache
724	unknownFields protoimpl.UnknownFields
725
726	// The element type.
727	ElemType *Type `protobuf:"bytes,1,opt,name=elem_type,json=elemType,proto3" json:"elem_type,omitempty"`
728}
729
730func (x *Type_ListType) Reset() {
731	*x = Type_ListType{}
732	if protoimpl.UnsafeEnabled {
733		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[6]
734		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
735		ms.StoreMessageInfo(mi)
736	}
737}
738
739func (x *Type_ListType) String() string {
740	return protoimpl.X.MessageStringOf(x)
741}
742
743func (*Type_ListType) ProtoMessage() {}
744
745func (x *Type_ListType) ProtoReflect() protoreflect.Message {
746	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[6]
747	if protoimpl.UnsafeEnabled && x != nil {
748		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
749		if ms.LoadMessageInfo() == nil {
750			ms.StoreMessageInfo(mi)
751		}
752		return ms
753	}
754	return mi.MessageOf(x)
755}
756
757// Deprecated: Use Type_ListType.ProtoReflect.Descriptor instead.
758func (*Type_ListType) Descriptor() ([]byte, []int) {
759	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{1, 0}
760}
761
762func (x *Type_ListType) GetElemType() *Type {
763	if x != nil {
764		return x.ElemType
765	}
766	return nil
767}
768
769// Map type with parameterized key and value types, e.g. `map<string, int>`.
770type Type_MapType struct {
771	state         protoimpl.MessageState
772	sizeCache     protoimpl.SizeCache
773	unknownFields protoimpl.UnknownFields
774
775	// The type of the key.
776	KeyType *Type `protobuf:"bytes,1,opt,name=key_type,json=keyType,proto3" json:"key_type,omitempty"`
777	// The type of the value.
778	ValueType *Type `protobuf:"bytes,2,opt,name=value_type,json=valueType,proto3" json:"value_type,omitempty"`
779}
780
781func (x *Type_MapType) Reset() {
782	*x = Type_MapType{}
783	if protoimpl.UnsafeEnabled {
784		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[7]
785		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
786		ms.StoreMessageInfo(mi)
787	}
788}
789
790func (x *Type_MapType) String() string {
791	return protoimpl.X.MessageStringOf(x)
792}
793
794func (*Type_MapType) ProtoMessage() {}
795
796func (x *Type_MapType) ProtoReflect() protoreflect.Message {
797	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[7]
798	if protoimpl.UnsafeEnabled && x != nil {
799		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
800		if ms.LoadMessageInfo() == nil {
801			ms.StoreMessageInfo(mi)
802		}
803		return ms
804	}
805	return mi.MessageOf(x)
806}
807
808// Deprecated: Use Type_MapType.ProtoReflect.Descriptor instead.
809func (*Type_MapType) Descriptor() ([]byte, []int) {
810	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{1, 1}
811}
812
813func (x *Type_MapType) GetKeyType() *Type {
814	if x != nil {
815		return x.KeyType
816	}
817	return nil
818}
819
820func (x *Type_MapType) GetValueType() *Type {
821	if x != nil {
822		return x.ValueType
823	}
824	return nil
825}
826
827// Function type with result and arg types.
828type Type_FunctionType struct {
829	state         protoimpl.MessageState
830	sizeCache     protoimpl.SizeCache
831	unknownFields protoimpl.UnknownFields
832
833	// Result type of the function.
834	ResultType *Type `protobuf:"bytes,1,opt,name=result_type,json=resultType,proto3" json:"result_type,omitempty"`
835	// Argument types of the function.
836	ArgTypes []*Type `protobuf:"bytes,2,rep,name=arg_types,json=argTypes,proto3" json:"arg_types,omitempty"`
837}
838
839func (x *Type_FunctionType) Reset() {
840	*x = Type_FunctionType{}
841	if protoimpl.UnsafeEnabled {
842		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[8]
843		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
844		ms.StoreMessageInfo(mi)
845	}
846}
847
848func (x *Type_FunctionType) String() string {
849	return protoimpl.X.MessageStringOf(x)
850}
851
852func (*Type_FunctionType) ProtoMessage() {}
853
854func (x *Type_FunctionType) ProtoReflect() protoreflect.Message {
855	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[8]
856	if protoimpl.UnsafeEnabled && x != nil {
857		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
858		if ms.LoadMessageInfo() == nil {
859			ms.StoreMessageInfo(mi)
860		}
861		return ms
862	}
863	return mi.MessageOf(x)
864}
865
866// Deprecated: Use Type_FunctionType.ProtoReflect.Descriptor instead.
867func (*Type_FunctionType) Descriptor() ([]byte, []int) {
868	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{1, 2}
869}
870
871func (x *Type_FunctionType) GetResultType() *Type {
872	if x != nil {
873		return x.ResultType
874	}
875	return nil
876}
877
878func (x *Type_FunctionType) GetArgTypes() []*Type {
879	if x != nil {
880		return x.ArgTypes
881	}
882	return nil
883}
884
885// Application defined abstract type.
886type Type_AbstractType struct {
887	state         protoimpl.MessageState
888	sizeCache     protoimpl.SizeCache
889	unknownFields protoimpl.UnknownFields
890
891	// The fully qualified name of this abstract type.
892	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
893	// Parameter types for this abstract type.
894	ParameterTypes []*Type `protobuf:"bytes,2,rep,name=parameter_types,json=parameterTypes,proto3" json:"parameter_types,omitempty"`
895}
896
897func (x *Type_AbstractType) Reset() {
898	*x = Type_AbstractType{}
899	if protoimpl.UnsafeEnabled {
900		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[9]
901		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
902		ms.StoreMessageInfo(mi)
903	}
904}
905
906func (x *Type_AbstractType) String() string {
907	return protoimpl.X.MessageStringOf(x)
908}
909
910func (*Type_AbstractType) ProtoMessage() {}
911
912func (x *Type_AbstractType) ProtoReflect() protoreflect.Message {
913	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[9]
914	if protoimpl.UnsafeEnabled && x != nil {
915		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
916		if ms.LoadMessageInfo() == nil {
917			ms.StoreMessageInfo(mi)
918		}
919		return ms
920	}
921	return mi.MessageOf(x)
922}
923
924// Deprecated: Use Type_AbstractType.ProtoReflect.Descriptor instead.
925func (*Type_AbstractType) Descriptor() ([]byte, []int) {
926	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{1, 3}
927}
928
929func (x *Type_AbstractType) GetName() string {
930	if x != nil {
931		return x.Name
932	}
933	return ""
934}
935
936func (x *Type_AbstractType) GetParameterTypes() []*Type {
937	if x != nil {
938		return x.ParameterTypes
939	}
940	return nil
941}
942
943// Identifier declaration which specifies its type and optional `Expr` value.
944//
945// An identifier without a value is a declaration that must be provided at
946// evaluation time. An identifier with a value should resolve to a constant,
947// but may be used in conjunction with other identifiers bound at evaluation
948// time.
949type Decl_IdentDecl struct {
950	state         protoimpl.MessageState
951	sizeCache     protoimpl.SizeCache
952	unknownFields protoimpl.UnknownFields
953
954	// Required. The type of the identifier.
955	Type *Type `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
956	// The constant value of the identifier. If not specified, the identifier
957	// must be supplied at evaluation time.
958	Value *Constant `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
959	// Documentation string for the identifier.
960	Doc string `protobuf:"bytes,3,opt,name=doc,proto3" json:"doc,omitempty"`
961}
962
963func (x *Decl_IdentDecl) Reset() {
964	*x = Decl_IdentDecl{}
965	if protoimpl.UnsafeEnabled {
966		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[10]
967		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
968		ms.StoreMessageInfo(mi)
969	}
970}
971
972func (x *Decl_IdentDecl) String() string {
973	return protoimpl.X.MessageStringOf(x)
974}
975
976func (*Decl_IdentDecl) ProtoMessage() {}
977
978func (x *Decl_IdentDecl) ProtoReflect() protoreflect.Message {
979	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[10]
980	if protoimpl.UnsafeEnabled && x != nil {
981		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
982		if ms.LoadMessageInfo() == nil {
983			ms.StoreMessageInfo(mi)
984		}
985		return ms
986	}
987	return mi.MessageOf(x)
988}
989
990// Deprecated: Use Decl_IdentDecl.ProtoReflect.Descriptor instead.
991func (*Decl_IdentDecl) Descriptor() ([]byte, []int) {
992	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{2, 0}
993}
994
995func (x *Decl_IdentDecl) GetType() *Type {
996	if x != nil {
997		return x.Type
998	}
999	return nil
1000}
1001
1002func (x *Decl_IdentDecl) GetValue() *Constant {
1003	if x != nil {
1004		return x.Value
1005	}
1006	return nil
1007}
1008
1009func (x *Decl_IdentDecl) GetDoc() string {
1010	if x != nil {
1011		return x.Doc
1012	}
1013	return ""
1014}
1015
1016// Function declaration specifies one or more overloads which indicate the
1017// function's parameter types and return type, and may optionally specify a
1018// function definition in terms of CEL expressions.
1019//
1020// Functions have no observable side-effects (there may be side-effects like
1021// logging which are not observable from CEL).
1022type Decl_FunctionDecl struct {
1023	state         protoimpl.MessageState
1024	sizeCache     protoimpl.SizeCache
1025	unknownFields protoimpl.UnknownFields
1026
1027	// Required. List of function overloads, must contain at least one overload.
1028	Overloads []*Decl_FunctionDecl_Overload `protobuf:"bytes,1,rep,name=overloads,proto3" json:"overloads,omitempty"`
1029}
1030
1031func (x *Decl_FunctionDecl) Reset() {
1032	*x = Decl_FunctionDecl{}
1033	if protoimpl.UnsafeEnabled {
1034		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[11]
1035		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1036		ms.StoreMessageInfo(mi)
1037	}
1038}
1039
1040func (x *Decl_FunctionDecl) String() string {
1041	return protoimpl.X.MessageStringOf(x)
1042}
1043
1044func (*Decl_FunctionDecl) ProtoMessage() {}
1045
1046func (x *Decl_FunctionDecl) ProtoReflect() protoreflect.Message {
1047	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[11]
1048	if protoimpl.UnsafeEnabled && x != nil {
1049		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1050		if ms.LoadMessageInfo() == nil {
1051			ms.StoreMessageInfo(mi)
1052		}
1053		return ms
1054	}
1055	return mi.MessageOf(x)
1056}
1057
1058// Deprecated: Use Decl_FunctionDecl.ProtoReflect.Descriptor instead.
1059func (*Decl_FunctionDecl) Descriptor() ([]byte, []int) {
1060	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{2, 1}
1061}
1062
1063func (x *Decl_FunctionDecl) GetOverloads() []*Decl_FunctionDecl_Overload {
1064	if x != nil {
1065		return x.Overloads
1066	}
1067	return nil
1068}
1069
1070// An overload indicates a function's parameter types and return type, and
1071// may optionally include a function body described in terms of [Expr][google.api.expr.v1alpha1.Expr]
1072// values.
1073//
1074// Functions overloads are declared in either a function or method
1075// call-style. For methods, the `params[0]` is the expected type of the
1076// target receiver.
1077//
1078// Overloads must have non-overlapping argument types after erasure of all
1079// parameterized type variables (similar as type erasure in Java).
1080type Decl_FunctionDecl_Overload struct {
1081	state         protoimpl.MessageState
1082	sizeCache     protoimpl.SizeCache
1083	unknownFields protoimpl.UnknownFields
1084
1085	// Required. Globally unique overload name of the function which reflects
1086	// the function name and argument types.
1087	//
1088	// This will be used by a [Reference][google.api.expr.v1alpha1.Reference] to indicate the `overload_id` that
1089	// was resolved for the function `name`.
1090	OverloadId string `protobuf:"bytes,1,opt,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"`
1091	// List of function parameter [Type][google.api.expr.v1alpha1.Type] values.
1092	//
1093	// Param types are disjoint after generic type parameters have been
1094	// replaced with the type `DYN`. Since the `DYN` type is compatible with
1095	// any other type, this means that if `A` is a type parameter, the
1096	// function types `int<A>` and `int<int>` are not disjoint. Likewise,
1097	// `map<string, string>` is not disjoint from `map<K, V>`.
1098	//
1099	// When the `result_type` of a function is a generic type param, the
1100	// type param name also appears as the `type` of on at least one params.
1101	Params []*Type `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"`
1102	// The type param names associated with the function declaration.
1103	//
1104	// For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield
1105	// the type params of `K, V`.
1106	TypeParams []string `protobuf:"bytes,3,rep,name=type_params,json=typeParams,proto3" json:"type_params,omitempty"`
1107	// Required. The result type of the function. For example, the operator
1108	// `string.isEmpty()` would have `result_type` of `kind: BOOL`.
1109	ResultType *Type `protobuf:"bytes,4,opt,name=result_type,json=resultType,proto3" json:"result_type,omitempty"`
1110	// Whether the function is to be used in a method call-style `x.f(...)`
1111	// of a function call-style `f(x, ...)`.
1112	//
1113	// For methods, the first parameter declaration, `params[0]` is the
1114	// expected type of the target receiver.
1115	IsInstanceFunction bool `protobuf:"varint,5,opt,name=is_instance_function,json=isInstanceFunction,proto3" json:"is_instance_function,omitempty"`
1116	// Documentation string for the overload.
1117	Doc string `protobuf:"bytes,6,opt,name=doc,proto3" json:"doc,omitempty"`
1118}
1119
1120func (x *Decl_FunctionDecl_Overload) Reset() {
1121	*x = Decl_FunctionDecl_Overload{}
1122	if protoimpl.UnsafeEnabled {
1123		mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[12]
1124		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1125		ms.StoreMessageInfo(mi)
1126	}
1127}
1128
1129func (x *Decl_FunctionDecl_Overload) String() string {
1130	return protoimpl.X.MessageStringOf(x)
1131}
1132
1133func (*Decl_FunctionDecl_Overload) ProtoMessage() {}
1134
1135func (x *Decl_FunctionDecl_Overload) ProtoReflect() protoreflect.Message {
1136	mi := &file_google_api_expr_v1alpha1_checked_proto_msgTypes[12]
1137	if protoimpl.UnsafeEnabled && x != nil {
1138		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1139		if ms.LoadMessageInfo() == nil {
1140			ms.StoreMessageInfo(mi)
1141		}
1142		return ms
1143	}
1144	return mi.MessageOf(x)
1145}
1146
1147// Deprecated: Use Decl_FunctionDecl_Overload.ProtoReflect.Descriptor instead.
1148func (*Decl_FunctionDecl_Overload) Descriptor() ([]byte, []int) {
1149	return file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP(), []int{2, 1, 0}
1150}
1151
1152func (x *Decl_FunctionDecl_Overload) GetOverloadId() string {
1153	if x != nil {
1154		return x.OverloadId
1155	}
1156	return ""
1157}
1158
1159func (x *Decl_FunctionDecl_Overload) GetParams() []*Type {
1160	if x != nil {
1161		return x.Params
1162	}
1163	return nil
1164}
1165
1166func (x *Decl_FunctionDecl_Overload) GetTypeParams() []string {
1167	if x != nil {
1168		return x.TypeParams
1169	}
1170	return nil
1171}
1172
1173func (x *Decl_FunctionDecl_Overload) GetResultType() *Type {
1174	if x != nil {
1175		return x.ResultType
1176	}
1177	return nil
1178}
1179
1180func (x *Decl_FunctionDecl_Overload) GetIsInstanceFunction() bool {
1181	if x != nil {
1182		return x.IsInstanceFunction
1183	}
1184	return false
1185}
1186
1187func (x *Decl_FunctionDecl_Overload) GetDoc() string {
1188	if x != nil {
1189		return x.Doc
1190	}
1191	return ""
1192}
1193
1194var File_google_api_expr_v1alpha1_checked_proto protoreflect.FileDescriptor
1195
1196var file_google_api_expr_v1alpha1_checked_proto_rawDesc = []byte{
1197	0x0a, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x65, 0x78, 0x70,
1198	0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x63, 0x68, 0x65, 0x63, 0x6b,
1199	0x65, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1200	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
1201	0x61, 0x31, 0x1a, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x65,
1202	0x78, 0x70, 0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x73, 0x79, 0x6e,
1203	0x74, 0x61, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1204	0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79,
1205	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70,
1206	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70,
1207	0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf7, 0x03, 0x0a, 0x0b, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64,
1208	0x45, 0x78, 0x70, 0x72, 0x12, 0x5c, 0x0a, 0x0d, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
1209	0x65, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f,
1210	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31,
1211	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x45, 0x78,
1212	0x70, 0x72, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x70, 0x45,
1213	0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d,
1214	0x61, 0x70, 0x12, 0x4d, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x03,
1215	0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
1216	0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
1217	0x43, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x45, 0x78, 0x70, 0x72, 0x2e, 0x54, 0x79, 0x70, 0x65,
1218	0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x74, 0x79, 0x70, 0x65, 0x4d, 0x61,
1219	0x70, 0x12, 0x45, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
1220	0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1221	0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
1222	0x31, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x73, 0x6f,
1223	0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x32, 0x0a, 0x04, 0x65, 0x78, 0x70, 0x72,
1224	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1225	0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
1226	0x31, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52, 0x04, 0x65, 0x78, 0x70, 0x72, 0x1a, 0x64, 0x0a, 0x11,
1227	0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72,
1228	0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03,
1229	0x6b, 0x65, 0x79, 0x12, 0x39, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
1230	0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e,
1231	0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x52, 0x65,
1232	0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
1233	0x38, 0x01, 0x1a, 0x5a, 0x0a, 0x0c, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74,
1234	0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
1235	0x03, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
1236	0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
1237	0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54,
1238	0x79, 0x70, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc8,
1239	0x0b, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x03, 0x64, 0x79, 0x6e, 0x18, 0x01,
1240	0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
1241	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x48, 0x00, 0x52, 0x03,
1242	0x64, 0x79, 0x6e, 0x12, 0x30, 0x0a, 0x04, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
1243	0x0e, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1244	0x62, 0x75, 0x66, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52,
1245	0x04, 0x6e, 0x75, 0x6c, 0x6c, 0x12, 0x4c, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69,
1246	0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1247	0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
1248	0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69,
1249	0x76, 0x65, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x09, 0x70, 0x72, 0x69, 0x6d, 0x69, 0x74,
1250	0x69, 0x76, 0x65, 0x12, 0x48, 0x0a, 0x07, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x18, 0x04,
1251	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
1252	0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
1253	0x54, 0x79, 0x70, 0x65, 0x2e, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x54, 0x79,
1254	0x70, 0x65, 0x48, 0x00, 0x52, 0x07, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x12, 0x4d, 0x0a,
1255	0x0a, 0x77, 0x65, 0x6c, 0x6c, 0x5f, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
1256	0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65,
1257	0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70,
1258	0x65, 0x2e, 0x57, 0x65, 0x6c, 0x6c, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x48,
1259	0x00, 0x52, 0x09, 0x77, 0x65, 0x6c, 0x6c, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x12, 0x46, 0x0a, 0x09,
1260	0x6c, 0x69, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
1261	0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70,
1262	0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x2e,
1263	0x4c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x08, 0x6c, 0x69, 0x73, 0x74,
1264	0x54, 0x79, 0x70, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x6d, 0x61, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65,
1265	0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
1266	0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
1267	0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00,
1268	0x52, 0x07, 0x6d, 0x61, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x49, 0x0a, 0x08, 0x66, 0x75, 0x6e,
1269	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f,
1270	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31,
1271	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x46, 0x75, 0x6e, 0x63,
1272	0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63,
1273	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f,
1274	0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x6d, 0x65,
1275	0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x74, 0x79, 0x70,
1276	0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
1277	0x09, 0x74, 0x79, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x12, 0x34, 0x0a, 0x04, 0x74, 0x79,
1278	0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1279	0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
1280	0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65,
1281	0x12, 0x2e, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32,
1282	0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
1283	0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72,
1284	0x12, 0x52, 0x0a, 0x0d, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70,
1285	0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1286	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68,
1287	0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74,
1288	0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74,
1289	0x54, 0x79, 0x70, 0x65, 0x1a, 0x47, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65,
1290	0x12, 0x3b, 0x0a, 0x09, 0x65, 0x6c, 0x65, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
1291	0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
1292	0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54,
1293	0x79, 0x70, 0x65, 0x52, 0x08, 0x65, 0x6c, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x83, 0x01,
1294	0x0a, 0x07, 0x4d, 0x61, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x39, 0x0a, 0x08, 0x6b, 0x65, 0x79,
1295	0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f,
1296	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31,
1297	0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x6b, 0x65, 0x79,
1298	0x54, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79,
1299	0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1300	0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
1301	0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x54,
1302	0x79, 0x70, 0x65, 0x1a, 0x8c, 0x01, 0x0a, 0x0c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e,
1303	0x54, 0x79, 0x70, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x74,
1304	0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
1305	0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c,
1306	0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c,
1307	0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x09, 0x61, 0x72, 0x67, 0x5f, 0x74, 0x79, 0x70,
1308	0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
1309	0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70,
1310	0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x61, 0x72, 0x67, 0x54, 0x79, 0x70,
1311	0x65, 0x73, 0x1a, 0x6b, 0x0a, 0x0c, 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x79,
1312	0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
1313	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x0f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65,
1314	0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
1315	0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70,
1316	0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52,
1317	0x0e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22,
1318	0x73, 0x0a, 0x0d, 0x50, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x54, 0x79, 0x70, 0x65,
1319	0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x49, 0x4d, 0x49, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x54, 0x59,
1320	0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
1321	0x12, 0x08, 0x0a, 0x04, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e,
1322	0x54, 0x36, 0x34, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10,
1323	0x03, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x0a, 0x0a,
1324	0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x42, 0x59, 0x54,
1325	0x45, 0x53, 0x10, 0x06, 0x22, 0x56, 0x0a, 0x0d, 0x57, 0x65, 0x6c, 0x6c, 0x4b, 0x6e, 0x6f, 0x77,
1326	0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x57, 0x45, 0x4c, 0x4c, 0x5f, 0x4b, 0x4e,
1327	0x4f, 0x57, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
1328	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x59, 0x10, 0x01, 0x12,
1329	0x0d, 0x0a, 0x09, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x02, 0x12, 0x0c,
1330	0x0a, 0x08, 0x44, 0x55, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x42, 0x0b, 0x0a, 0x09,
1331	0x74, 0x79, 0x70, 0x65, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xb3, 0x05, 0x0a, 0x04, 0x44, 0x65,
1332	0x63, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
1333	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x05, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x18,
1334	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
1335	0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
1336	0x2e, 0x44, 0x65, 0x63, 0x6c, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x63, 0x6c, 0x48,
1337	0x00, 0x52, 0x05, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x49, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63,
1338	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f,
1339	0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61,
1340	0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x63, 0x6c, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x74,
1341	0x69, 0x6f, 0x6e, 0x44, 0x65, 0x63, 0x6c, 0x48, 0x00, 0x52, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x74,
1342	0x69, 0x6f, 0x6e, 0x1a, 0x8b, 0x01, 0x0a, 0x09, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x63,
1343	0x6c, 0x12, 0x32, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
1344	0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78, 0x70,
1345	0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52,
1346	0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
1347	0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
1348	0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
1349	0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12,
1350	0x10, 0x0a, 0x03, 0x64, 0x6f, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x6f,
1351	0x63, 0x1a, 0xee, 0x02, 0x0a, 0x0c, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65,
1352	0x63, 0x6c, 0x12, 0x52, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x18,
1353	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
1354	0x70, 0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31,
1355	0x2e, 0x44, 0x65, 0x63, 0x6c, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65,
1356	0x63, 0x6c, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x09, 0x6f, 0x76, 0x65,
1357	0x72, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x1a, 0x89, 0x02, 0x0a, 0x08, 0x4f, 0x76, 0x65, 0x72, 0x6c,
1358	0x6f, 0x61, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x6f, 0x61, 0x64, 0x5f,
1359	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x6f,
1360	0x61, 0x64, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02,
1361	0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
1362	0x69, 0x2e, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e,
1363	0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x1f, 0x0a, 0x0b,
1364	0x74, 0x79, 0x70, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
1365	0x09, 0x52, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x3f, 0x0a,
1366	0x0b, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01,
1367	0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e,
1368	0x65, 0x78, 0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x54, 0x79,
1369	0x70, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x30,
1370	0x0a, 0x14, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x66, 0x75,
1371	0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x69, 0x73,
1372	0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e,
1373	0x12, 0x10, 0x0a, 0x03, 0x64, 0x6f, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x64,
1374	0x6f, 0x63, 0x42, 0x0b, 0x0a, 0x09, 0x64, 0x65, 0x63, 0x6c, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x22,
1375	0x7a, 0x0a, 0x09, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04,
1376	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
1377	0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x18,
1378	0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x6f, 0x61, 0x64, 0x49,
1379	0x64, 0x12, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
1380	0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78,
1381	0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x73,
1382	0x74, 0x61, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x6c, 0x0a, 0x1c, 0x63,
1383	0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x65, 0x78,
1384	0x70, 0x72, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x09, 0x44, 0x65, 0x63,
1385	0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
1386	0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70,
1387	0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f,
1388	0x61, 0x70, 0x69, 0x2f, 0x65, 0x78, 0x70, 0x72, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61,
1389	0x31, 0x3b, 0x65, 0x78, 0x70, 0x72, 0xf8, 0x01, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
1390	0x33,
1391}
1392
1393var (
1394	file_google_api_expr_v1alpha1_checked_proto_rawDescOnce sync.Once
1395	file_google_api_expr_v1alpha1_checked_proto_rawDescData = file_google_api_expr_v1alpha1_checked_proto_rawDesc
1396)
1397
1398func file_google_api_expr_v1alpha1_checked_proto_rawDescGZIP() []byte {
1399	file_google_api_expr_v1alpha1_checked_proto_rawDescOnce.Do(func() {
1400		file_google_api_expr_v1alpha1_checked_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_expr_v1alpha1_checked_proto_rawDescData)
1401	})
1402	return file_google_api_expr_v1alpha1_checked_proto_rawDescData
1403}
1404
1405var file_google_api_expr_v1alpha1_checked_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
1406var file_google_api_expr_v1alpha1_checked_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
1407var file_google_api_expr_v1alpha1_checked_proto_goTypes = []interface{}{
1408	(Type_PrimitiveType)(0),            // 0: google.api.expr.v1alpha1.Type.PrimitiveType
1409	(Type_WellKnownType)(0),            // 1: google.api.expr.v1alpha1.Type.WellKnownType
1410	(*CheckedExpr)(nil),                // 2: google.api.expr.v1alpha1.CheckedExpr
1411	(*Type)(nil),                       // 3: google.api.expr.v1alpha1.Type
1412	(*Decl)(nil),                       // 4: google.api.expr.v1alpha1.Decl
1413	(*Reference)(nil),                  // 5: google.api.expr.v1alpha1.Reference
1414	nil,                                // 6: google.api.expr.v1alpha1.CheckedExpr.ReferenceMapEntry
1415	nil,                                // 7: google.api.expr.v1alpha1.CheckedExpr.TypeMapEntry
1416	(*Type_ListType)(nil),              // 8: google.api.expr.v1alpha1.Type.ListType
1417	(*Type_MapType)(nil),               // 9: google.api.expr.v1alpha1.Type.MapType
1418	(*Type_FunctionType)(nil),          // 10: google.api.expr.v1alpha1.Type.FunctionType
1419	(*Type_AbstractType)(nil),          // 11: google.api.expr.v1alpha1.Type.AbstractType
1420	(*Decl_IdentDecl)(nil),             // 12: google.api.expr.v1alpha1.Decl.IdentDecl
1421	(*Decl_FunctionDecl)(nil),          // 13: google.api.expr.v1alpha1.Decl.FunctionDecl
1422	(*Decl_FunctionDecl_Overload)(nil), // 14: google.api.expr.v1alpha1.Decl.FunctionDecl.Overload
1423	(*SourceInfo)(nil),                 // 15: google.api.expr.v1alpha1.SourceInfo
1424	(*Expr)(nil),                       // 16: google.api.expr.v1alpha1.Expr
1425	(*empty.Empty)(nil),                // 17: google.protobuf.Empty
1426	(_struct.NullValue)(0),             // 18: google.protobuf.NullValue
1427	(*Constant)(nil),                   // 19: google.api.expr.v1alpha1.Constant
1428}
1429var file_google_api_expr_v1alpha1_checked_proto_depIdxs = []int32{
1430	6,  // 0: google.api.expr.v1alpha1.CheckedExpr.reference_map:type_name -> google.api.expr.v1alpha1.CheckedExpr.ReferenceMapEntry
1431	7,  // 1: google.api.expr.v1alpha1.CheckedExpr.type_map:type_name -> google.api.expr.v1alpha1.CheckedExpr.TypeMapEntry
1432	15, // 2: google.api.expr.v1alpha1.CheckedExpr.source_info:type_name -> google.api.expr.v1alpha1.SourceInfo
1433	16, // 3: google.api.expr.v1alpha1.CheckedExpr.expr:type_name -> google.api.expr.v1alpha1.Expr
1434	17, // 4: google.api.expr.v1alpha1.Type.dyn:type_name -> google.protobuf.Empty
1435	18, // 5: google.api.expr.v1alpha1.Type.null:type_name -> google.protobuf.NullValue
1436	0,  // 6: google.api.expr.v1alpha1.Type.primitive:type_name -> google.api.expr.v1alpha1.Type.PrimitiveType
1437	0,  // 7: google.api.expr.v1alpha1.Type.wrapper:type_name -> google.api.expr.v1alpha1.Type.PrimitiveType
1438	1,  // 8: google.api.expr.v1alpha1.Type.well_known:type_name -> google.api.expr.v1alpha1.Type.WellKnownType
1439	8,  // 9: google.api.expr.v1alpha1.Type.list_type:type_name -> google.api.expr.v1alpha1.Type.ListType
1440	9,  // 10: google.api.expr.v1alpha1.Type.map_type:type_name -> google.api.expr.v1alpha1.Type.MapType
1441	10, // 11: google.api.expr.v1alpha1.Type.function:type_name -> google.api.expr.v1alpha1.Type.FunctionType
1442	3,  // 12: google.api.expr.v1alpha1.Type.type:type_name -> google.api.expr.v1alpha1.Type
1443	17, // 13: google.api.expr.v1alpha1.Type.error:type_name -> google.protobuf.Empty
1444	11, // 14: google.api.expr.v1alpha1.Type.abstract_type:type_name -> google.api.expr.v1alpha1.Type.AbstractType
1445	12, // 15: google.api.expr.v1alpha1.Decl.ident:type_name -> google.api.expr.v1alpha1.Decl.IdentDecl
1446	13, // 16: google.api.expr.v1alpha1.Decl.function:type_name -> google.api.expr.v1alpha1.Decl.FunctionDecl
1447	19, // 17: google.api.expr.v1alpha1.Reference.value:type_name -> google.api.expr.v1alpha1.Constant
1448	5,  // 18: google.api.expr.v1alpha1.CheckedExpr.ReferenceMapEntry.value:type_name -> google.api.expr.v1alpha1.Reference
1449	3,  // 19: google.api.expr.v1alpha1.CheckedExpr.TypeMapEntry.value:type_name -> google.api.expr.v1alpha1.Type
1450	3,  // 20: google.api.expr.v1alpha1.Type.ListType.elem_type:type_name -> google.api.expr.v1alpha1.Type
1451	3,  // 21: google.api.expr.v1alpha1.Type.MapType.key_type:type_name -> google.api.expr.v1alpha1.Type
1452	3,  // 22: google.api.expr.v1alpha1.Type.MapType.value_type:type_name -> google.api.expr.v1alpha1.Type
1453	3,  // 23: google.api.expr.v1alpha1.Type.FunctionType.result_type:type_name -> google.api.expr.v1alpha1.Type
1454	3,  // 24: google.api.expr.v1alpha1.Type.FunctionType.arg_types:type_name -> google.api.expr.v1alpha1.Type
1455	3,  // 25: google.api.expr.v1alpha1.Type.AbstractType.parameter_types:type_name -> google.api.expr.v1alpha1.Type
1456	3,  // 26: google.api.expr.v1alpha1.Decl.IdentDecl.type:type_name -> google.api.expr.v1alpha1.Type
1457	19, // 27: google.api.expr.v1alpha1.Decl.IdentDecl.value:type_name -> google.api.expr.v1alpha1.Constant
1458	14, // 28: google.api.expr.v1alpha1.Decl.FunctionDecl.overloads:type_name -> google.api.expr.v1alpha1.Decl.FunctionDecl.Overload
1459	3,  // 29: google.api.expr.v1alpha1.Decl.FunctionDecl.Overload.params:type_name -> google.api.expr.v1alpha1.Type
1460	3,  // 30: google.api.expr.v1alpha1.Decl.FunctionDecl.Overload.result_type:type_name -> google.api.expr.v1alpha1.Type
1461	31, // [31:31] is the sub-list for method output_type
1462	31, // [31:31] is the sub-list for method input_type
1463	31, // [31:31] is the sub-list for extension type_name
1464	31, // [31:31] is the sub-list for extension extendee
1465	0,  // [0:31] is the sub-list for field type_name
1466}
1467
1468func init() { file_google_api_expr_v1alpha1_checked_proto_init() }
1469func file_google_api_expr_v1alpha1_checked_proto_init() {
1470	if File_google_api_expr_v1alpha1_checked_proto != nil {
1471		return
1472	}
1473	file_google_api_expr_v1alpha1_syntax_proto_init()
1474	if !protoimpl.UnsafeEnabled {
1475		file_google_api_expr_v1alpha1_checked_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
1476			switch v := v.(*CheckedExpr); i {
1477			case 0:
1478				return &v.state
1479			case 1:
1480				return &v.sizeCache
1481			case 2:
1482				return &v.unknownFields
1483			default:
1484				return nil
1485			}
1486		}
1487		file_google_api_expr_v1alpha1_checked_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
1488			switch v := v.(*Type); i {
1489			case 0:
1490				return &v.state
1491			case 1:
1492				return &v.sizeCache
1493			case 2:
1494				return &v.unknownFields
1495			default:
1496				return nil
1497			}
1498		}
1499		file_google_api_expr_v1alpha1_checked_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
1500			switch v := v.(*Decl); i {
1501			case 0:
1502				return &v.state
1503			case 1:
1504				return &v.sizeCache
1505			case 2:
1506				return &v.unknownFields
1507			default:
1508				return nil
1509			}
1510		}
1511		file_google_api_expr_v1alpha1_checked_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
1512			switch v := v.(*Reference); i {
1513			case 0:
1514				return &v.state
1515			case 1:
1516				return &v.sizeCache
1517			case 2:
1518				return &v.unknownFields
1519			default:
1520				return nil
1521			}
1522		}
1523		file_google_api_expr_v1alpha1_checked_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
1524			switch v := v.(*Type_ListType); i {
1525			case 0:
1526				return &v.state
1527			case 1:
1528				return &v.sizeCache
1529			case 2:
1530				return &v.unknownFields
1531			default:
1532				return nil
1533			}
1534		}
1535		file_google_api_expr_v1alpha1_checked_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
1536			switch v := v.(*Type_MapType); i {
1537			case 0:
1538				return &v.state
1539			case 1:
1540				return &v.sizeCache
1541			case 2:
1542				return &v.unknownFields
1543			default:
1544				return nil
1545			}
1546		}
1547		file_google_api_expr_v1alpha1_checked_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1548			switch v := v.(*Type_FunctionType); i {
1549			case 0:
1550				return &v.state
1551			case 1:
1552				return &v.sizeCache
1553			case 2:
1554				return &v.unknownFields
1555			default:
1556				return nil
1557			}
1558		}
1559		file_google_api_expr_v1alpha1_checked_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
1560			switch v := v.(*Type_AbstractType); i {
1561			case 0:
1562				return &v.state
1563			case 1:
1564				return &v.sizeCache
1565			case 2:
1566				return &v.unknownFields
1567			default:
1568				return nil
1569			}
1570		}
1571		file_google_api_expr_v1alpha1_checked_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
1572			switch v := v.(*Decl_IdentDecl); i {
1573			case 0:
1574				return &v.state
1575			case 1:
1576				return &v.sizeCache
1577			case 2:
1578				return &v.unknownFields
1579			default:
1580				return nil
1581			}
1582		}
1583		file_google_api_expr_v1alpha1_checked_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
1584			switch v := v.(*Decl_FunctionDecl); i {
1585			case 0:
1586				return &v.state
1587			case 1:
1588				return &v.sizeCache
1589			case 2:
1590				return &v.unknownFields
1591			default:
1592				return nil
1593			}
1594		}
1595		file_google_api_expr_v1alpha1_checked_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
1596			switch v := v.(*Decl_FunctionDecl_Overload); i {
1597			case 0:
1598				return &v.state
1599			case 1:
1600				return &v.sizeCache
1601			case 2:
1602				return &v.unknownFields
1603			default:
1604				return nil
1605			}
1606		}
1607	}
1608	file_google_api_expr_v1alpha1_checked_proto_msgTypes[1].OneofWrappers = []interface{}{
1609		(*Type_Dyn)(nil),
1610		(*Type_Null)(nil),
1611		(*Type_Primitive)(nil),
1612		(*Type_Wrapper)(nil),
1613		(*Type_WellKnown)(nil),
1614		(*Type_ListType_)(nil),
1615		(*Type_MapType_)(nil),
1616		(*Type_Function)(nil),
1617		(*Type_MessageType)(nil),
1618		(*Type_TypeParam)(nil),
1619		(*Type_Type)(nil),
1620		(*Type_Error)(nil),
1621		(*Type_AbstractType_)(nil),
1622	}
1623	file_google_api_expr_v1alpha1_checked_proto_msgTypes[2].OneofWrappers = []interface{}{
1624		(*Decl_Ident)(nil),
1625		(*Decl_Function)(nil),
1626	}
1627	type x struct{}
1628	out := protoimpl.TypeBuilder{
1629		File: protoimpl.DescBuilder{
1630			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1631			RawDescriptor: file_google_api_expr_v1alpha1_checked_proto_rawDesc,
1632			NumEnums:      2,
1633			NumMessages:   13,
1634			NumExtensions: 0,
1635			NumServices:   0,
1636		},
1637		GoTypes:           file_google_api_expr_v1alpha1_checked_proto_goTypes,
1638		DependencyIndexes: file_google_api_expr_v1alpha1_checked_proto_depIdxs,
1639		EnumInfos:         file_google_api_expr_v1alpha1_checked_proto_enumTypes,
1640		MessageInfos:      file_google_api_expr_v1alpha1_checked_proto_msgTypes,
1641	}.Build()
1642	File_google_api_expr_v1alpha1_checked_proto = out.File
1643	file_google_api_expr_v1alpha1_checked_proto_rawDesc = nil
1644	file_google_api_expr_v1alpha1_checked_proto_goTypes = nil
1645	file_google_api_expr_v1alpha1_checked_proto_depIdxs = nil
1646}
1647