1// Code generated by protoc-gen-go. DO NOT EDIT.
2// versions:
3// 	protoc-gen-go v1.25.0
4// 	protoc        v3.18.0
5// source: xds/type/matcher/v3/matcher.proto
6
7package v3
8
9import (
10	_ "github.com/cncf/xds/go/xds/annotations/v3"
11	v3 "github.com/cncf/xds/go/xds/core/v3"
12	_ "github.com/envoyproxy/protoc-gen-validate/validate"
13	proto "github.com/golang/protobuf/proto"
14	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
15	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
16	reflect "reflect"
17	sync "sync"
18)
19
20const (
21	// Verify that this generated code is sufficiently up-to-date.
22	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
23	// Verify that runtime/protoimpl is sufficiently up-to-date.
24	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
25)
26
27// This is a compile-time assertion that a sufficiently up-to-date version
28// of the legacy proto package is being used.
29const _ = proto.ProtoPackageIsVersion4
30
31type Matcher struct {
32	state         protoimpl.MessageState
33	sizeCache     protoimpl.SizeCache
34	unknownFields protoimpl.UnknownFields
35
36	// Types that are assignable to MatcherType:
37	//	*Matcher_MatcherList_
38	//	*Matcher_MatcherTree_
39	MatcherType isMatcher_MatcherType `protobuf_oneof:"matcher_type"`
40	OnNoMatch   *Matcher_OnMatch      `protobuf:"bytes,3,opt,name=on_no_match,json=onNoMatch,proto3" json:"on_no_match,omitempty"`
41}
42
43func (x *Matcher) Reset() {
44	*x = Matcher{}
45	if protoimpl.UnsafeEnabled {
46		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[0]
47		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
48		ms.StoreMessageInfo(mi)
49	}
50}
51
52func (x *Matcher) String() string {
53	return protoimpl.X.MessageStringOf(x)
54}
55
56func (*Matcher) ProtoMessage() {}
57
58func (x *Matcher) ProtoReflect() protoreflect.Message {
59	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[0]
60	if protoimpl.UnsafeEnabled && x != nil {
61		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
62		if ms.LoadMessageInfo() == nil {
63			ms.StoreMessageInfo(mi)
64		}
65		return ms
66	}
67	return mi.MessageOf(x)
68}
69
70// Deprecated: Use Matcher.ProtoReflect.Descriptor instead.
71func (*Matcher) Descriptor() ([]byte, []int) {
72	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0}
73}
74
75func (m *Matcher) GetMatcherType() isMatcher_MatcherType {
76	if m != nil {
77		return m.MatcherType
78	}
79	return nil
80}
81
82func (x *Matcher) GetMatcherList() *Matcher_MatcherList {
83	if x, ok := x.GetMatcherType().(*Matcher_MatcherList_); ok {
84		return x.MatcherList
85	}
86	return nil
87}
88
89func (x *Matcher) GetMatcherTree() *Matcher_MatcherTree {
90	if x, ok := x.GetMatcherType().(*Matcher_MatcherTree_); ok {
91		return x.MatcherTree
92	}
93	return nil
94}
95
96func (x *Matcher) GetOnNoMatch() *Matcher_OnMatch {
97	if x != nil {
98		return x.OnNoMatch
99	}
100	return nil
101}
102
103type isMatcher_MatcherType interface {
104	isMatcher_MatcherType()
105}
106
107type Matcher_MatcherList_ struct {
108	MatcherList *Matcher_MatcherList `protobuf:"bytes,1,opt,name=matcher_list,json=matcherList,proto3,oneof"`
109}
110
111type Matcher_MatcherTree_ struct {
112	MatcherTree *Matcher_MatcherTree `protobuf:"bytes,2,opt,name=matcher_tree,json=matcherTree,proto3,oneof"`
113}
114
115func (*Matcher_MatcherList_) isMatcher_MatcherType() {}
116
117func (*Matcher_MatcherTree_) isMatcher_MatcherType() {}
118
119type Matcher_OnMatch struct {
120	state         protoimpl.MessageState
121	sizeCache     protoimpl.SizeCache
122	unknownFields protoimpl.UnknownFields
123
124	// Types that are assignable to OnMatch:
125	//	*Matcher_OnMatch_Matcher
126	//	*Matcher_OnMatch_Action
127	OnMatch isMatcher_OnMatch_OnMatch `protobuf_oneof:"on_match"`
128}
129
130func (x *Matcher_OnMatch) Reset() {
131	*x = Matcher_OnMatch{}
132	if protoimpl.UnsafeEnabled {
133		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[1]
134		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
135		ms.StoreMessageInfo(mi)
136	}
137}
138
139func (x *Matcher_OnMatch) String() string {
140	return protoimpl.X.MessageStringOf(x)
141}
142
143func (*Matcher_OnMatch) ProtoMessage() {}
144
145func (x *Matcher_OnMatch) ProtoReflect() protoreflect.Message {
146	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[1]
147	if protoimpl.UnsafeEnabled && x != nil {
148		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
149		if ms.LoadMessageInfo() == nil {
150			ms.StoreMessageInfo(mi)
151		}
152		return ms
153	}
154	return mi.MessageOf(x)
155}
156
157// Deprecated: Use Matcher_OnMatch.ProtoReflect.Descriptor instead.
158func (*Matcher_OnMatch) Descriptor() ([]byte, []int) {
159	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 0}
160}
161
162func (m *Matcher_OnMatch) GetOnMatch() isMatcher_OnMatch_OnMatch {
163	if m != nil {
164		return m.OnMatch
165	}
166	return nil
167}
168
169func (x *Matcher_OnMatch) GetMatcher() *Matcher {
170	if x, ok := x.GetOnMatch().(*Matcher_OnMatch_Matcher); ok {
171		return x.Matcher
172	}
173	return nil
174}
175
176func (x *Matcher_OnMatch) GetAction() *v3.TypedExtensionConfig {
177	if x, ok := x.GetOnMatch().(*Matcher_OnMatch_Action); ok {
178		return x.Action
179	}
180	return nil
181}
182
183type isMatcher_OnMatch_OnMatch interface {
184	isMatcher_OnMatch_OnMatch()
185}
186
187type Matcher_OnMatch_Matcher struct {
188	Matcher *Matcher `protobuf:"bytes,1,opt,name=matcher,proto3,oneof"`
189}
190
191type Matcher_OnMatch_Action struct {
192	Action *v3.TypedExtensionConfig `protobuf:"bytes,2,opt,name=action,proto3,oneof"`
193}
194
195func (*Matcher_OnMatch_Matcher) isMatcher_OnMatch_OnMatch() {}
196
197func (*Matcher_OnMatch_Action) isMatcher_OnMatch_OnMatch() {}
198
199type Matcher_MatcherList struct {
200	state         protoimpl.MessageState
201	sizeCache     protoimpl.SizeCache
202	unknownFields protoimpl.UnknownFields
203
204	Matchers []*Matcher_MatcherList_FieldMatcher `protobuf:"bytes,1,rep,name=matchers,proto3" json:"matchers,omitempty"`
205}
206
207func (x *Matcher_MatcherList) Reset() {
208	*x = Matcher_MatcherList{}
209	if protoimpl.UnsafeEnabled {
210		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[2]
211		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
212		ms.StoreMessageInfo(mi)
213	}
214}
215
216func (x *Matcher_MatcherList) String() string {
217	return protoimpl.X.MessageStringOf(x)
218}
219
220func (*Matcher_MatcherList) ProtoMessage() {}
221
222func (x *Matcher_MatcherList) ProtoReflect() protoreflect.Message {
223	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[2]
224	if protoimpl.UnsafeEnabled && x != nil {
225		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
226		if ms.LoadMessageInfo() == nil {
227			ms.StoreMessageInfo(mi)
228		}
229		return ms
230	}
231	return mi.MessageOf(x)
232}
233
234// Deprecated: Use Matcher_MatcherList.ProtoReflect.Descriptor instead.
235func (*Matcher_MatcherList) Descriptor() ([]byte, []int) {
236	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 1}
237}
238
239func (x *Matcher_MatcherList) GetMatchers() []*Matcher_MatcherList_FieldMatcher {
240	if x != nil {
241		return x.Matchers
242	}
243	return nil
244}
245
246type Matcher_MatcherTree struct {
247	state         protoimpl.MessageState
248	sizeCache     protoimpl.SizeCache
249	unknownFields protoimpl.UnknownFields
250
251	Input *v3.TypedExtensionConfig `protobuf:"bytes,1,opt,name=input,proto3" json:"input,omitempty"`
252	// Types that are assignable to TreeType:
253	//	*Matcher_MatcherTree_ExactMatchMap
254	//	*Matcher_MatcherTree_PrefixMatchMap
255	//	*Matcher_MatcherTree_CustomMatch
256	TreeType isMatcher_MatcherTree_TreeType `protobuf_oneof:"tree_type"`
257}
258
259func (x *Matcher_MatcherTree) Reset() {
260	*x = Matcher_MatcherTree{}
261	if protoimpl.UnsafeEnabled {
262		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[3]
263		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
264		ms.StoreMessageInfo(mi)
265	}
266}
267
268func (x *Matcher_MatcherTree) String() string {
269	return protoimpl.X.MessageStringOf(x)
270}
271
272func (*Matcher_MatcherTree) ProtoMessage() {}
273
274func (x *Matcher_MatcherTree) ProtoReflect() protoreflect.Message {
275	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[3]
276	if protoimpl.UnsafeEnabled && x != nil {
277		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
278		if ms.LoadMessageInfo() == nil {
279			ms.StoreMessageInfo(mi)
280		}
281		return ms
282	}
283	return mi.MessageOf(x)
284}
285
286// Deprecated: Use Matcher_MatcherTree.ProtoReflect.Descriptor instead.
287func (*Matcher_MatcherTree) Descriptor() ([]byte, []int) {
288	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 2}
289}
290
291func (x *Matcher_MatcherTree) GetInput() *v3.TypedExtensionConfig {
292	if x != nil {
293		return x.Input
294	}
295	return nil
296}
297
298func (m *Matcher_MatcherTree) GetTreeType() isMatcher_MatcherTree_TreeType {
299	if m != nil {
300		return m.TreeType
301	}
302	return nil
303}
304
305func (x *Matcher_MatcherTree) GetExactMatchMap() *Matcher_MatcherTree_MatchMap {
306	if x, ok := x.GetTreeType().(*Matcher_MatcherTree_ExactMatchMap); ok {
307		return x.ExactMatchMap
308	}
309	return nil
310}
311
312func (x *Matcher_MatcherTree) GetPrefixMatchMap() *Matcher_MatcherTree_MatchMap {
313	if x, ok := x.GetTreeType().(*Matcher_MatcherTree_PrefixMatchMap); ok {
314		return x.PrefixMatchMap
315	}
316	return nil
317}
318
319func (x *Matcher_MatcherTree) GetCustomMatch() *v3.TypedExtensionConfig {
320	if x, ok := x.GetTreeType().(*Matcher_MatcherTree_CustomMatch); ok {
321		return x.CustomMatch
322	}
323	return nil
324}
325
326type isMatcher_MatcherTree_TreeType interface {
327	isMatcher_MatcherTree_TreeType()
328}
329
330type Matcher_MatcherTree_ExactMatchMap struct {
331	ExactMatchMap *Matcher_MatcherTree_MatchMap `protobuf:"bytes,2,opt,name=exact_match_map,json=exactMatchMap,proto3,oneof"`
332}
333
334type Matcher_MatcherTree_PrefixMatchMap struct {
335	PrefixMatchMap *Matcher_MatcherTree_MatchMap `protobuf:"bytes,3,opt,name=prefix_match_map,json=prefixMatchMap,proto3,oneof"`
336}
337
338type Matcher_MatcherTree_CustomMatch struct {
339	CustomMatch *v3.TypedExtensionConfig `protobuf:"bytes,4,opt,name=custom_match,json=customMatch,proto3,oneof"`
340}
341
342func (*Matcher_MatcherTree_ExactMatchMap) isMatcher_MatcherTree_TreeType() {}
343
344func (*Matcher_MatcherTree_PrefixMatchMap) isMatcher_MatcherTree_TreeType() {}
345
346func (*Matcher_MatcherTree_CustomMatch) isMatcher_MatcherTree_TreeType() {}
347
348type Matcher_MatcherList_Predicate struct {
349	state         protoimpl.MessageState
350	sizeCache     protoimpl.SizeCache
351	unknownFields protoimpl.UnknownFields
352
353	// Types that are assignable to MatchType:
354	//	*Matcher_MatcherList_Predicate_SinglePredicate_
355	//	*Matcher_MatcherList_Predicate_OrMatcher
356	//	*Matcher_MatcherList_Predicate_AndMatcher
357	//	*Matcher_MatcherList_Predicate_NotMatcher
358	MatchType isMatcher_MatcherList_Predicate_MatchType `protobuf_oneof:"match_type"`
359}
360
361func (x *Matcher_MatcherList_Predicate) Reset() {
362	*x = Matcher_MatcherList_Predicate{}
363	if protoimpl.UnsafeEnabled {
364		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[4]
365		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
366		ms.StoreMessageInfo(mi)
367	}
368}
369
370func (x *Matcher_MatcherList_Predicate) String() string {
371	return protoimpl.X.MessageStringOf(x)
372}
373
374func (*Matcher_MatcherList_Predicate) ProtoMessage() {}
375
376func (x *Matcher_MatcherList_Predicate) ProtoReflect() protoreflect.Message {
377	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[4]
378	if protoimpl.UnsafeEnabled && x != nil {
379		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
380		if ms.LoadMessageInfo() == nil {
381			ms.StoreMessageInfo(mi)
382		}
383		return ms
384	}
385	return mi.MessageOf(x)
386}
387
388// Deprecated: Use Matcher_MatcherList_Predicate.ProtoReflect.Descriptor instead.
389func (*Matcher_MatcherList_Predicate) Descriptor() ([]byte, []int) {
390	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 1, 0}
391}
392
393func (m *Matcher_MatcherList_Predicate) GetMatchType() isMatcher_MatcherList_Predicate_MatchType {
394	if m != nil {
395		return m.MatchType
396	}
397	return nil
398}
399
400func (x *Matcher_MatcherList_Predicate) GetSinglePredicate() *Matcher_MatcherList_Predicate_SinglePredicate {
401	if x, ok := x.GetMatchType().(*Matcher_MatcherList_Predicate_SinglePredicate_); ok {
402		return x.SinglePredicate
403	}
404	return nil
405}
406
407func (x *Matcher_MatcherList_Predicate) GetOrMatcher() *Matcher_MatcherList_Predicate_PredicateList {
408	if x, ok := x.GetMatchType().(*Matcher_MatcherList_Predicate_OrMatcher); ok {
409		return x.OrMatcher
410	}
411	return nil
412}
413
414func (x *Matcher_MatcherList_Predicate) GetAndMatcher() *Matcher_MatcherList_Predicate_PredicateList {
415	if x, ok := x.GetMatchType().(*Matcher_MatcherList_Predicate_AndMatcher); ok {
416		return x.AndMatcher
417	}
418	return nil
419}
420
421func (x *Matcher_MatcherList_Predicate) GetNotMatcher() *Matcher_MatcherList_Predicate {
422	if x, ok := x.GetMatchType().(*Matcher_MatcherList_Predicate_NotMatcher); ok {
423		return x.NotMatcher
424	}
425	return nil
426}
427
428type isMatcher_MatcherList_Predicate_MatchType interface {
429	isMatcher_MatcherList_Predicate_MatchType()
430}
431
432type Matcher_MatcherList_Predicate_SinglePredicate_ struct {
433	SinglePredicate *Matcher_MatcherList_Predicate_SinglePredicate `protobuf:"bytes,1,opt,name=single_predicate,json=singlePredicate,proto3,oneof"`
434}
435
436type Matcher_MatcherList_Predicate_OrMatcher struct {
437	OrMatcher *Matcher_MatcherList_Predicate_PredicateList `protobuf:"bytes,2,opt,name=or_matcher,json=orMatcher,proto3,oneof"`
438}
439
440type Matcher_MatcherList_Predicate_AndMatcher struct {
441	AndMatcher *Matcher_MatcherList_Predicate_PredicateList `protobuf:"bytes,3,opt,name=and_matcher,json=andMatcher,proto3,oneof"`
442}
443
444type Matcher_MatcherList_Predicate_NotMatcher struct {
445	NotMatcher *Matcher_MatcherList_Predicate `protobuf:"bytes,4,opt,name=not_matcher,json=notMatcher,proto3,oneof"`
446}
447
448func (*Matcher_MatcherList_Predicate_SinglePredicate_) isMatcher_MatcherList_Predicate_MatchType() {}
449
450func (*Matcher_MatcherList_Predicate_OrMatcher) isMatcher_MatcherList_Predicate_MatchType() {}
451
452func (*Matcher_MatcherList_Predicate_AndMatcher) isMatcher_MatcherList_Predicate_MatchType() {}
453
454func (*Matcher_MatcherList_Predicate_NotMatcher) isMatcher_MatcherList_Predicate_MatchType() {}
455
456type Matcher_MatcherList_FieldMatcher struct {
457	state         protoimpl.MessageState
458	sizeCache     protoimpl.SizeCache
459	unknownFields protoimpl.UnknownFields
460
461	Predicate *Matcher_MatcherList_Predicate `protobuf:"bytes,1,opt,name=predicate,proto3" json:"predicate,omitempty"`
462	OnMatch   *Matcher_OnMatch               `protobuf:"bytes,2,opt,name=on_match,json=onMatch,proto3" json:"on_match,omitempty"`
463}
464
465func (x *Matcher_MatcherList_FieldMatcher) Reset() {
466	*x = Matcher_MatcherList_FieldMatcher{}
467	if protoimpl.UnsafeEnabled {
468		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[5]
469		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
470		ms.StoreMessageInfo(mi)
471	}
472}
473
474func (x *Matcher_MatcherList_FieldMatcher) String() string {
475	return protoimpl.X.MessageStringOf(x)
476}
477
478func (*Matcher_MatcherList_FieldMatcher) ProtoMessage() {}
479
480func (x *Matcher_MatcherList_FieldMatcher) ProtoReflect() protoreflect.Message {
481	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[5]
482	if protoimpl.UnsafeEnabled && x != nil {
483		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
484		if ms.LoadMessageInfo() == nil {
485			ms.StoreMessageInfo(mi)
486		}
487		return ms
488	}
489	return mi.MessageOf(x)
490}
491
492// Deprecated: Use Matcher_MatcherList_FieldMatcher.ProtoReflect.Descriptor instead.
493func (*Matcher_MatcherList_FieldMatcher) Descriptor() ([]byte, []int) {
494	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 1, 1}
495}
496
497func (x *Matcher_MatcherList_FieldMatcher) GetPredicate() *Matcher_MatcherList_Predicate {
498	if x != nil {
499		return x.Predicate
500	}
501	return nil
502}
503
504func (x *Matcher_MatcherList_FieldMatcher) GetOnMatch() *Matcher_OnMatch {
505	if x != nil {
506		return x.OnMatch
507	}
508	return nil
509}
510
511type Matcher_MatcherList_Predicate_SinglePredicate struct {
512	state         protoimpl.MessageState
513	sizeCache     protoimpl.SizeCache
514	unknownFields protoimpl.UnknownFields
515
516	Input *v3.TypedExtensionConfig `protobuf:"bytes,1,opt,name=input,proto3" json:"input,omitempty"`
517	// Types that are assignable to Matcher:
518	//	*Matcher_MatcherList_Predicate_SinglePredicate_ValueMatch
519	//	*Matcher_MatcherList_Predicate_SinglePredicate_CustomMatch
520	Matcher isMatcher_MatcherList_Predicate_SinglePredicate_Matcher `protobuf_oneof:"matcher"`
521}
522
523func (x *Matcher_MatcherList_Predicate_SinglePredicate) Reset() {
524	*x = Matcher_MatcherList_Predicate_SinglePredicate{}
525	if protoimpl.UnsafeEnabled {
526		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[6]
527		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
528		ms.StoreMessageInfo(mi)
529	}
530}
531
532func (x *Matcher_MatcherList_Predicate_SinglePredicate) String() string {
533	return protoimpl.X.MessageStringOf(x)
534}
535
536func (*Matcher_MatcherList_Predicate_SinglePredicate) ProtoMessage() {}
537
538func (x *Matcher_MatcherList_Predicate_SinglePredicate) ProtoReflect() protoreflect.Message {
539	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[6]
540	if protoimpl.UnsafeEnabled && x != nil {
541		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
542		if ms.LoadMessageInfo() == nil {
543			ms.StoreMessageInfo(mi)
544		}
545		return ms
546	}
547	return mi.MessageOf(x)
548}
549
550// Deprecated: Use Matcher_MatcherList_Predicate_SinglePredicate.ProtoReflect.Descriptor instead.
551func (*Matcher_MatcherList_Predicate_SinglePredicate) Descriptor() ([]byte, []int) {
552	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 1, 0, 0}
553}
554
555func (x *Matcher_MatcherList_Predicate_SinglePredicate) GetInput() *v3.TypedExtensionConfig {
556	if x != nil {
557		return x.Input
558	}
559	return nil
560}
561
562func (m *Matcher_MatcherList_Predicate_SinglePredicate) GetMatcher() isMatcher_MatcherList_Predicate_SinglePredicate_Matcher {
563	if m != nil {
564		return m.Matcher
565	}
566	return nil
567}
568
569func (x *Matcher_MatcherList_Predicate_SinglePredicate) GetValueMatch() *StringMatcher {
570	if x, ok := x.GetMatcher().(*Matcher_MatcherList_Predicate_SinglePredicate_ValueMatch); ok {
571		return x.ValueMatch
572	}
573	return nil
574}
575
576func (x *Matcher_MatcherList_Predicate_SinglePredicate) GetCustomMatch() *v3.TypedExtensionConfig {
577	if x, ok := x.GetMatcher().(*Matcher_MatcherList_Predicate_SinglePredicate_CustomMatch); ok {
578		return x.CustomMatch
579	}
580	return nil
581}
582
583type isMatcher_MatcherList_Predicate_SinglePredicate_Matcher interface {
584	isMatcher_MatcherList_Predicate_SinglePredicate_Matcher()
585}
586
587type Matcher_MatcherList_Predicate_SinglePredicate_ValueMatch struct {
588	ValueMatch *StringMatcher `protobuf:"bytes,2,opt,name=value_match,json=valueMatch,proto3,oneof"`
589}
590
591type Matcher_MatcherList_Predicate_SinglePredicate_CustomMatch struct {
592	CustomMatch *v3.TypedExtensionConfig `protobuf:"bytes,3,opt,name=custom_match,json=customMatch,proto3,oneof"`
593}
594
595func (*Matcher_MatcherList_Predicate_SinglePredicate_ValueMatch) isMatcher_MatcherList_Predicate_SinglePredicate_Matcher() {
596}
597
598func (*Matcher_MatcherList_Predicate_SinglePredicate_CustomMatch) isMatcher_MatcherList_Predicate_SinglePredicate_Matcher() {
599}
600
601type Matcher_MatcherList_Predicate_PredicateList struct {
602	state         protoimpl.MessageState
603	sizeCache     protoimpl.SizeCache
604	unknownFields protoimpl.UnknownFields
605
606	Predicate []*Matcher_MatcherList_Predicate `protobuf:"bytes,1,rep,name=predicate,proto3" json:"predicate,omitempty"`
607}
608
609func (x *Matcher_MatcherList_Predicate_PredicateList) Reset() {
610	*x = Matcher_MatcherList_Predicate_PredicateList{}
611	if protoimpl.UnsafeEnabled {
612		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[7]
613		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
614		ms.StoreMessageInfo(mi)
615	}
616}
617
618func (x *Matcher_MatcherList_Predicate_PredicateList) String() string {
619	return protoimpl.X.MessageStringOf(x)
620}
621
622func (*Matcher_MatcherList_Predicate_PredicateList) ProtoMessage() {}
623
624func (x *Matcher_MatcherList_Predicate_PredicateList) ProtoReflect() protoreflect.Message {
625	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[7]
626	if protoimpl.UnsafeEnabled && x != nil {
627		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
628		if ms.LoadMessageInfo() == nil {
629			ms.StoreMessageInfo(mi)
630		}
631		return ms
632	}
633	return mi.MessageOf(x)
634}
635
636// Deprecated: Use Matcher_MatcherList_Predicate_PredicateList.ProtoReflect.Descriptor instead.
637func (*Matcher_MatcherList_Predicate_PredicateList) Descriptor() ([]byte, []int) {
638	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 1, 0, 1}
639}
640
641func (x *Matcher_MatcherList_Predicate_PredicateList) GetPredicate() []*Matcher_MatcherList_Predicate {
642	if x != nil {
643		return x.Predicate
644	}
645	return nil
646}
647
648type Matcher_MatcherTree_MatchMap struct {
649	state         protoimpl.MessageState
650	sizeCache     protoimpl.SizeCache
651	unknownFields protoimpl.UnknownFields
652
653	Map map[string]*Matcher_OnMatch `protobuf:"bytes,1,rep,name=map,proto3" json:"map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
654}
655
656func (x *Matcher_MatcherTree_MatchMap) Reset() {
657	*x = Matcher_MatcherTree_MatchMap{}
658	if protoimpl.UnsafeEnabled {
659		mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[8]
660		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
661		ms.StoreMessageInfo(mi)
662	}
663}
664
665func (x *Matcher_MatcherTree_MatchMap) String() string {
666	return protoimpl.X.MessageStringOf(x)
667}
668
669func (*Matcher_MatcherTree_MatchMap) ProtoMessage() {}
670
671func (x *Matcher_MatcherTree_MatchMap) ProtoReflect() protoreflect.Message {
672	mi := &file_xds_type_matcher_v3_matcher_proto_msgTypes[8]
673	if protoimpl.UnsafeEnabled && x != nil {
674		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
675		if ms.LoadMessageInfo() == nil {
676			ms.StoreMessageInfo(mi)
677		}
678		return ms
679	}
680	return mi.MessageOf(x)
681}
682
683// Deprecated: Use Matcher_MatcherTree_MatchMap.ProtoReflect.Descriptor instead.
684func (*Matcher_MatcherTree_MatchMap) Descriptor() ([]byte, []int) {
685	return file_xds_type_matcher_v3_matcher_proto_rawDescGZIP(), []int{0, 2, 0}
686}
687
688func (x *Matcher_MatcherTree_MatchMap) GetMap() map[string]*Matcher_OnMatch {
689	if x != nil {
690		return x.Map
691	}
692	return nil
693}
694
695var File_xds_type_matcher_v3_matcher_proto protoreflect.FileDescriptor
696
697var file_xds_type_matcher_v3_matcher_proto_rawDesc = []byte{
698	0x0a, 0x21, 0x78, 0x64, 0x73, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x61, 0x74, 0x63, 0x68,
699	0x65, 0x72, 0x2f, 0x76, 0x33, 0x2f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x70, 0x72,
700	0x6f, 0x74, 0x6f, 0x12, 0x13, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61,
701	0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x1a, 0x1f, 0x78, 0x64, 0x73, 0x2f, 0x61, 0x6e,
702	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x33, 0x2f, 0x73, 0x74, 0x61,
703	0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x78, 0x64, 0x73, 0x2f, 0x63,
704	0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
705	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x78, 0x64, 0x73, 0x2f, 0x74, 0x79, 0x70, 0x65,
706	0x2f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2f, 0x76, 0x33, 0x2f, 0x73, 0x74, 0x72, 0x69,
707	0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
708	0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
709	0x6f, 0x22, 0x80, 0x10, 0x0a, 0x07, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x4d, 0x0a,
710	0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20,
711	0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d,
712	0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65,
713	0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52,
714	0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0c,
715	0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x5f, 0x74, 0x72, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01,
716	0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61,
717	0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
718	0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x54, 0x72, 0x65, 0x65, 0x48, 0x00, 0x52, 0x0b,
719	0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x54, 0x72, 0x65, 0x65, 0x12, 0x44, 0x0a, 0x0b, 0x6f,
720	0x6e, 0x5f, 0x6e, 0x6f, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
721	0x32, 0x24, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63,
722	0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4f,
723	0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x09, 0x6f, 0x6e, 0x4e, 0x6f, 0x4d, 0x61, 0x74, 0x63,
724	0x68, 0x1a, 0x91, 0x01, 0x0a, 0x07, 0x4f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x38, 0x0a,
725	0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
726	0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
727	0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x48, 0x00, 0x52, 0x07,
728	0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f,
729	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x63, 0x6f,
730	0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x64, 0x45, 0x78, 0x74, 0x65, 0x6e,
731	0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x06, 0x61, 0x63,
732	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0f, 0x0a, 0x08, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68,
733	0x12, 0x03, 0xf8, 0x42, 0x01, 0x1a, 0xb6, 0x08, 0x0a, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65,
734	0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x5b, 0x0a, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
735	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79,
736	0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61,
737	0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x4c, 0x69, 0x73,
738	0x74, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x42, 0x08,
739	0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x01, 0x52, 0x08, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
740	0x72, 0x73, 0x1a, 0x91, 0x06, 0x0a, 0x09, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65,
741	0x12, 0x6f, 0x0a, 0x10, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69,
742	0x63, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x78, 0x64, 0x73,
743	0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33,
744	0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
745	0x4c, 0x69, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2e, 0x53,
746	0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x48, 0x00,
747	0x52, 0x0f, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74,
748	0x65, 0x12, 0x61, 0x0a, 0x0a, 0x6f, 0x72, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x18,
749	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65,
750	0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63,
751	0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x2e,
752	0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
753	0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x09, 0x6f, 0x72, 0x4d, 0x61, 0x74,
754	0x63, 0x68, 0x65, 0x72, 0x12, 0x63, 0x0a, 0x0b, 0x61, 0x6e, 0x64, 0x5f, 0x6d, 0x61, 0x74, 0x63,
755	0x68, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x78, 0x64, 0x73, 0x2e,
756	0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e,
757	0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x4c,
758	0x69, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2e, 0x50, 0x72,
759	0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61,
760	0x6e, 0x64, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x55, 0x0a, 0x0b, 0x6e, 0x6f, 0x74,
761	0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32,
762	0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
763	0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74,
764	0x63, 0x68, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61,
765	0x74, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x6e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
766	0x1a, 0xf3, 0x01, 0x0a, 0x0f, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x72, 0x65, 0x64, 0x69,
767	0x63, 0x61, 0x74, 0x65, 0x12, 0x41, 0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x01, 0x20,
768	0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76,
769	0x33, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x64, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
770	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01,
771	0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65,
772	0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x78,
773	0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e,
774	0x76, 0x33, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
775	0x48, 0x00, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x46,
776	0x0a, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03,
777	0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
778	0x76, 0x33, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x64, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
779	0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f,
780	0x6d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x0e, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
781	0x72, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x1a, 0x6b, 0x0a, 0x0d, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
782	0x61, 0x74, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x09, 0x70, 0x72, 0x65, 0x64, 0x69,
783	0x63, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x78, 0x64, 0x73,
784	0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33,
785	0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
786	0x4c, 0x69, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x42, 0x08,
787	0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x08, 0x02, 0x52, 0x09, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63,
788	0x61, 0x74, 0x65, 0x42, 0x11, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x74, 0x79, 0x70,
789	0x65, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x1a, 0xb5, 0x01, 0x0a, 0x0c, 0x46, 0x69, 0x65, 0x6c, 0x64,
790	0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x12, 0x5a, 0x0a, 0x09, 0x70, 0x72, 0x65, 0x64, 0x69,
791	0x63, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x78, 0x64, 0x73,
792	0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33,
793	0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
794	0x4c, 0x69, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x42, 0x08,
795	0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x09, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63,
796	0x61, 0x74, 0x65, 0x12, 0x49, 0x0a, 0x08, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18,
797	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65,
798	0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63,
799	0x68, 0x65, 0x72, 0x2e, 0x4f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x08, 0xfa, 0x42, 0x05,
800	0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x07, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x1a, 0xa9,
801	0x04, 0x0a, 0x0b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x54, 0x72, 0x65, 0x65, 0x12, 0x41,
802	0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e,
803	0x78, 0x64, 0x73, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x54, 0x79, 0x70, 0x65,
804	0x64, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
805	0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75,
806	0x74, 0x12, 0x5b, 0x0a, 0x0f, 0x65, 0x78, 0x61, 0x63, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68,
807	0x5f, 0x6d, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x78, 0x64, 0x73,
808	0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33,
809	0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72,
810	0x54, 0x72, 0x65, 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x70, 0x48, 0x00, 0x52,
811	0x0d, 0x65, 0x78, 0x61, 0x63, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x70, 0x12, 0x5d,
812	0x0a, 0x10, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6d,
813	0x61, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74,
814	0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d,
815	0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x54, 0x72,
816	0x65, 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x70, 0x48, 0x00, 0x52, 0x0e, 0x70,
817	0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x61, 0x70, 0x12, 0x46, 0x0a,
818	0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x04, 0x20,
819	0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76,
820	0x33, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x64, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
821	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d,
822	0x4d, 0x61, 0x74, 0x63, 0x68, 0x1a, 0xc0, 0x01, 0x0a, 0x08, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d,
823	0x61, 0x70, 0x12, 0x56, 0x0a, 0x03, 0x6d, 0x61, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
824	0x3a, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68,
825	0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4d, 0x61,
826	0x74, 0x63, 0x68, 0x65, 0x72, 0x54, 0x72, 0x65, 0x65, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d,
827	0x61, 0x70, 0x2e, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05,
828	0x9a, 0x01, 0x02, 0x08, 0x01, 0x52, 0x03, 0x6d, 0x61, 0x70, 0x1a, 0x5c, 0x0a, 0x08, 0x4d, 0x61,
829	0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
830	0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
831	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79,
832	0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x61,
833	0x74, 0x63, 0x68, 0x65, 0x72, 0x2e, 0x4f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x05, 0x76,
834	0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x10, 0x0a, 0x09, 0x74, 0x72, 0x65, 0x65,
835	0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x3a, 0x08, 0xd2, 0xc6, 0xa4, 0xe1,
836	0x06, 0x02, 0x08, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x5f,
837	0x74, 0x79, 0x70, 0x65, 0x42, 0x5c, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x69, 0x74, 0x68,
838	0x75, 0x62, 0x2e, 0x78, 0x64, 0x73, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6d, 0x61, 0x74, 0x63,
839	0x68, 0x65, 0x72, 0x2e, 0x76, 0x33, 0x42, 0x0c, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x50,
840	0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
841	0x6f, 0x6d, 0x2f, 0x63, 0x6e, 0x63, 0x66, 0x2f, 0x78, 0x64, 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x78,
842	0x64, 0x73, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x72, 0x2f,
843	0x76, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
844}
845
846var (
847	file_xds_type_matcher_v3_matcher_proto_rawDescOnce sync.Once
848	file_xds_type_matcher_v3_matcher_proto_rawDescData = file_xds_type_matcher_v3_matcher_proto_rawDesc
849)
850
851func file_xds_type_matcher_v3_matcher_proto_rawDescGZIP() []byte {
852	file_xds_type_matcher_v3_matcher_proto_rawDescOnce.Do(func() {
853		file_xds_type_matcher_v3_matcher_proto_rawDescData = protoimpl.X.CompressGZIP(file_xds_type_matcher_v3_matcher_proto_rawDescData)
854	})
855	return file_xds_type_matcher_v3_matcher_proto_rawDescData
856}
857
858var file_xds_type_matcher_v3_matcher_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
859var file_xds_type_matcher_v3_matcher_proto_goTypes = []interface{}{
860	(*Matcher)(nil),                                       // 0: xds.type.matcher.v3.Matcher
861	(*Matcher_OnMatch)(nil),                               // 1: xds.type.matcher.v3.Matcher.OnMatch
862	(*Matcher_MatcherList)(nil),                           // 2: xds.type.matcher.v3.Matcher.MatcherList
863	(*Matcher_MatcherTree)(nil),                           // 3: xds.type.matcher.v3.Matcher.MatcherTree
864	(*Matcher_MatcherList_Predicate)(nil),                 // 4: xds.type.matcher.v3.Matcher.MatcherList.Predicate
865	(*Matcher_MatcherList_FieldMatcher)(nil),              // 5: xds.type.matcher.v3.Matcher.MatcherList.FieldMatcher
866	(*Matcher_MatcherList_Predicate_SinglePredicate)(nil), // 6: xds.type.matcher.v3.Matcher.MatcherList.Predicate.SinglePredicate
867	(*Matcher_MatcherList_Predicate_PredicateList)(nil),   // 7: xds.type.matcher.v3.Matcher.MatcherList.Predicate.PredicateList
868	(*Matcher_MatcherTree_MatchMap)(nil),                  // 8: xds.type.matcher.v3.Matcher.MatcherTree.MatchMap
869	nil,                                                   // 9: xds.type.matcher.v3.Matcher.MatcherTree.MatchMap.MapEntry
870	(*v3.TypedExtensionConfig)(nil),                       // 10: xds.core.v3.TypedExtensionConfig
871	(*StringMatcher)(nil),                                 // 11: xds.type.matcher.v3.StringMatcher
872}
873var file_xds_type_matcher_v3_matcher_proto_depIdxs = []int32{
874	2,  // 0: xds.type.matcher.v3.Matcher.matcher_list:type_name -> xds.type.matcher.v3.Matcher.MatcherList
875	3,  // 1: xds.type.matcher.v3.Matcher.matcher_tree:type_name -> xds.type.matcher.v3.Matcher.MatcherTree
876	1,  // 2: xds.type.matcher.v3.Matcher.on_no_match:type_name -> xds.type.matcher.v3.Matcher.OnMatch
877	0,  // 3: xds.type.matcher.v3.Matcher.OnMatch.matcher:type_name -> xds.type.matcher.v3.Matcher
878	10, // 4: xds.type.matcher.v3.Matcher.OnMatch.action:type_name -> xds.core.v3.TypedExtensionConfig
879	5,  // 5: xds.type.matcher.v3.Matcher.MatcherList.matchers:type_name -> xds.type.matcher.v3.Matcher.MatcherList.FieldMatcher
880	10, // 6: xds.type.matcher.v3.Matcher.MatcherTree.input:type_name -> xds.core.v3.TypedExtensionConfig
881	8,  // 7: xds.type.matcher.v3.Matcher.MatcherTree.exact_match_map:type_name -> xds.type.matcher.v3.Matcher.MatcherTree.MatchMap
882	8,  // 8: xds.type.matcher.v3.Matcher.MatcherTree.prefix_match_map:type_name -> xds.type.matcher.v3.Matcher.MatcherTree.MatchMap
883	10, // 9: xds.type.matcher.v3.Matcher.MatcherTree.custom_match:type_name -> xds.core.v3.TypedExtensionConfig
884	6,  // 10: xds.type.matcher.v3.Matcher.MatcherList.Predicate.single_predicate:type_name -> xds.type.matcher.v3.Matcher.MatcherList.Predicate.SinglePredicate
885	7,  // 11: xds.type.matcher.v3.Matcher.MatcherList.Predicate.or_matcher:type_name -> xds.type.matcher.v3.Matcher.MatcherList.Predicate.PredicateList
886	7,  // 12: xds.type.matcher.v3.Matcher.MatcherList.Predicate.and_matcher:type_name -> xds.type.matcher.v3.Matcher.MatcherList.Predicate.PredicateList
887	4,  // 13: xds.type.matcher.v3.Matcher.MatcherList.Predicate.not_matcher:type_name -> xds.type.matcher.v3.Matcher.MatcherList.Predicate
888	4,  // 14: xds.type.matcher.v3.Matcher.MatcherList.FieldMatcher.predicate:type_name -> xds.type.matcher.v3.Matcher.MatcherList.Predicate
889	1,  // 15: xds.type.matcher.v3.Matcher.MatcherList.FieldMatcher.on_match:type_name -> xds.type.matcher.v3.Matcher.OnMatch
890	10, // 16: xds.type.matcher.v3.Matcher.MatcherList.Predicate.SinglePredicate.input:type_name -> xds.core.v3.TypedExtensionConfig
891	11, // 17: xds.type.matcher.v3.Matcher.MatcherList.Predicate.SinglePredicate.value_match:type_name -> xds.type.matcher.v3.StringMatcher
892	10, // 18: xds.type.matcher.v3.Matcher.MatcherList.Predicate.SinglePredicate.custom_match:type_name -> xds.core.v3.TypedExtensionConfig
893	4,  // 19: xds.type.matcher.v3.Matcher.MatcherList.Predicate.PredicateList.predicate:type_name -> xds.type.matcher.v3.Matcher.MatcherList.Predicate
894	9,  // 20: xds.type.matcher.v3.Matcher.MatcherTree.MatchMap.map:type_name -> xds.type.matcher.v3.Matcher.MatcherTree.MatchMap.MapEntry
895	1,  // 21: xds.type.matcher.v3.Matcher.MatcherTree.MatchMap.MapEntry.value:type_name -> xds.type.matcher.v3.Matcher.OnMatch
896	22, // [22:22] is the sub-list for method output_type
897	22, // [22:22] is the sub-list for method input_type
898	22, // [22:22] is the sub-list for extension type_name
899	22, // [22:22] is the sub-list for extension extendee
900	0,  // [0:22] is the sub-list for field type_name
901}
902
903func init() { file_xds_type_matcher_v3_matcher_proto_init() }
904func file_xds_type_matcher_v3_matcher_proto_init() {
905	if File_xds_type_matcher_v3_matcher_proto != nil {
906		return
907	}
908	file_xds_type_matcher_v3_string_proto_init()
909	if !protoimpl.UnsafeEnabled {
910		file_xds_type_matcher_v3_matcher_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
911			switch v := v.(*Matcher); i {
912			case 0:
913				return &v.state
914			case 1:
915				return &v.sizeCache
916			case 2:
917				return &v.unknownFields
918			default:
919				return nil
920			}
921		}
922		file_xds_type_matcher_v3_matcher_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
923			switch v := v.(*Matcher_OnMatch); i {
924			case 0:
925				return &v.state
926			case 1:
927				return &v.sizeCache
928			case 2:
929				return &v.unknownFields
930			default:
931				return nil
932			}
933		}
934		file_xds_type_matcher_v3_matcher_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
935			switch v := v.(*Matcher_MatcherList); i {
936			case 0:
937				return &v.state
938			case 1:
939				return &v.sizeCache
940			case 2:
941				return &v.unknownFields
942			default:
943				return nil
944			}
945		}
946		file_xds_type_matcher_v3_matcher_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
947			switch v := v.(*Matcher_MatcherTree); i {
948			case 0:
949				return &v.state
950			case 1:
951				return &v.sizeCache
952			case 2:
953				return &v.unknownFields
954			default:
955				return nil
956			}
957		}
958		file_xds_type_matcher_v3_matcher_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
959			switch v := v.(*Matcher_MatcherList_Predicate); i {
960			case 0:
961				return &v.state
962			case 1:
963				return &v.sizeCache
964			case 2:
965				return &v.unknownFields
966			default:
967				return nil
968			}
969		}
970		file_xds_type_matcher_v3_matcher_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
971			switch v := v.(*Matcher_MatcherList_FieldMatcher); i {
972			case 0:
973				return &v.state
974			case 1:
975				return &v.sizeCache
976			case 2:
977				return &v.unknownFields
978			default:
979				return nil
980			}
981		}
982		file_xds_type_matcher_v3_matcher_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
983			switch v := v.(*Matcher_MatcherList_Predicate_SinglePredicate); i {
984			case 0:
985				return &v.state
986			case 1:
987				return &v.sizeCache
988			case 2:
989				return &v.unknownFields
990			default:
991				return nil
992			}
993		}
994		file_xds_type_matcher_v3_matcher_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
995			switch v := v.(*Matcher_MatcherList_Predicate_PredicateList); i {
996			case 0:
997				return &v.state
998			case 1:
999				return &v.sizeCache
1000			case 2:
1001				return &v.unknownFields
1002			default:
1003				return nil
1004			}
1005		}
1006		file_xds_type_matcher_v3_matcher_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
1007			switch v := v.(*Matcher_MatcherTree_MatchMap); i {
1008			case 0:
1009				return &v.state
1010			case 1:
1011				return &v.sizeCache
1012			case 2:
1013				return &v.unknownFields
1014			default:
1015				return nil
1016			}
1017		}
1018	}
1019	file_xds_type_matcher_v3_matcher_proto_msgTypes[0].OneofWrappers = []interface{}{
1020		(*Matcher_MatcherList_)(nil),
1021		(*Matcher_MatcherTree_)(nil),
1022	}
1023	file_xds_type_matcher_v3_matcher_proto_msgTypes[1].OneofWrappers = []interface{}{
1024		(*Matcher_OnMatch_Matcher)(nil),
1025		(*Matcher_OnMatch_Action)(nil),
1026	}
1027	file_xds_type_matcher_v3_matcher_proto_msgTypes[3].OneofWrappers = []interface{}{
1028		(*Matcher_MatcherTree_ExactMatchMap)(nil),
1029		(*Matcher_MatcherTree_PrefixMatchMap)(nil),
1030		(*Matcher_MatcherTree_CustomMatch)(nil),
1031	}
1032	file_xds_type_matcher_v3_matcher_proto_msgTypes[4].OneofWrappers = []interface{}{
1033		(*Matcher_MatcherList_Predicate_SinglePredicate_)(nil),
1034		(*Matcher_MatcherList_Predicate_OrMatcher)(nil),
1035		(*Matcher_MatcherList_Predicate_AndMatcher)(nil),
1036		(*Matcher_MatcherList_Predicate_NotMatcher)(nil),
1037	}
1038	file_xds_type_matcher_v3_matcher_proto_msgTypes[6].OneofWrappers = []interface{}{
1039		(*Matcher_MatcherList_Predicate_SinglePredicate_ValueMatch)(nil),
1040		(*Matcher_MatcherList_Predicate_SinglePredicate_CustomMatch)(nil),
1041	}
1042	type x struct{}
1043	out := protoimpl.TypeBuilder{
1044		File: protoimpl.DescBuilder{
1045			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
1046			RawDescriptor: file_xds_type_matcher_v3_matcher_proto_rawDesc,
1047			NumEnums:      0,
1048			NumMessages:   10,
1049			NumExtensions: 0,
1050			NumServices:   0,
1051		},
1052		GoTypes:           file_xds_type_matcher_v3_matcher_proto_goTypes,
1053		DependencyIndexes: file_xds_type_matcher_v3_matcher_proto_depIdxs,
1054		MessageInfos:      file_xds_type_matcher_v3_matcher_proto_msgTypes,
1055	}.Build()
1056	File_xds_type_matcher_v3_matcher_proto = out.File
1057	file_xds_type_matcher_v3_matcher_proto_rawDesc = nil
1058	file_xds_type_matcher_v3_matcher_proto_goTypes = nil
1059	file_xds_type_matcher_v3_matcher_proto_depIdxs = nil
1060}
1061