...

Source file src/google.golang.org/genproto/googleapis/api/expr/v1beta1/expr.pb.go

Documentation: google.golang.org/genproto/googleapis/api/expr/v1beta1

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

View as plain text