1#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct FieldRules {
4 #[prost(message, optional, tag = "17")]
5 pub message: ::core::option::Option<MessageRules>,
6 #[prost(
7 oneof = "field_rules::Type",
8 tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22"
9 )]
10 pub r#type: ::core::option::Option<field_rules::Type>,
11}
12pub mod field_rules {
14 #[derive(Clone, PartialEq, ::prost::Oneof)]
15 pub enum Type {
16 #[prost(message, tag = "1")]
17 Float(super::FloatRules),
18 #[prost(message, tag = "2")]
19 Double(super::DoubleRules),
20 #[prost(message, tag = "3")]
21 Int32(super::Int32Rules),
22 #[prost(message, tag = "4")]
23 Int64(super::Int64Rules),
24 #[prost(message, tag = "5")]
25 Uint32(super::UInt32Rules),
26 #[prost(message, tag = "6")]
27 Uint64(super::UInt64Rules),
28 #[prost(message, tag = "7")]
29 Sint32(super::SInt32Rules),
30 #[prost(message, tag = "8")]
31 Sint64(super::SInt64Rules),
32 #[prost(message, tag = "9")]
33 Fixed32(super::Fixed32Rules),
34 #[prost(message, tag = "10")]
35 Fixed64(super::Fixed64Rules),
36 #[prost(message, tag = "11")]
37 Sfixed32(super::SFixed32Rules),
38 #[prost(message, tag = "12")]
39 Sfixed64(super::SFixed64Rules),
40 #[prost(message, tag = "13")]
41 Bool(super::BoolRules),
42 #[prost(message, tag = "14")]
43 String(super::StringRules),
44 #[prost(message, tag = "15")]
45 Bytes(super::BytesRules),
46 #[prost(message, tag = "16")]
47 Enum(super::EnumRules),
48 #[prost(message, tag = "18")]
49 Repeated(::prost::alloc::boxed::Box<super::RepeatedRules>),
50 #[prost(message, tag = "19")]
51 Map(::prost::alloc::boxed::Box<super::MapRules>),
52 #[prost(message, tag = "20")]
53 Any(super::AnyRules),
54 #[prost(message, tag = "21")]
55 Duration(super::DurationRules),
56 #[prost(message, tag = "22")]
57 Timestamp(super::TimestampRules),
58 }
59}
60#[derive(Clone, PartialEq, ::prost::Message)]
61pub struct FloatRules {
62 #[prost(float, optional, tag = "1")]
63 pub r#const: ::core::option::Option<f32>,
64 #[prost(float, optional, tag = "2")]
65 pub lt: ::core::option::Option<f32>,
66 #[prost(float, optional, tag = "3")]
67 pub lte: ::core::option::Option<f32>,
68 #[prost(float, optional, tag = "4")]
69 pub gt: ::core::option::Option<f32>,
70 #[prost(float, optional, tag = "5")]
71 pub gte: ::core::option::Option<f32>,
72 #[prost(float, repeated, packed = "false", tag = "6")]
73 pub r#in: ::prost::alloc::vec::Vec<f32>,
74 #[prost(float, repeated, packed = "false", tag = "7")]
75 pub not_in: ::prost::alloc::vec::Vec<f32>,
76 #[prost(bool, optional, tag = "8")]
77 pub ignore_empty: ::core::option::Option<bool>,
78}
79#[derive(Clone, PartialEq, ::prost::Message)]
80pub struct DoubleRules {
81 #[prost(double, optional, tag = "1")]
82 pub r#const: ::core::option::Option<f64>,
83 #[prost(double, optional, tag = "2")]
84 pub lt: ::core::option::Option<f64>,
85 #[prost(double, optional, tag = "3")]
86 pub lte: ::core::option::Option<f64>,
87 #[prost(double, optional, tag = "4")]
88 pub gt: ::core::option::Option<f64>,
89 #[prost(double, optional, tag = "5")]
90 pub gte: ::core::option::Option<f64>,
91 #[prost(double, repeated, packed = "false", tag = "6")]
92 pub r#in: ::prost::alloc::vec::Vec<f64>,
93 #[prost(double, repeated, packed = "false", tag = "7")]
94 pub not_in: ::prost::alloc::vec::Vec<f64>,
95 #[prost(bool, optional, tag = "8")]
96 pub ignore_empty: ::core::option::Option<bool>,
97}
98#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
99pub struct Int32Rules {
100 #[prost(int32, optional, tag = "1")]
101 pub r#const: ::core::option::Option<i32>,
102 #[prost(int32, optional, tag = "2")]
103 pub lt: ::core::option::Option<i32>,
104 #[prost(int32, optional, tag = "3")]
105 pub lte: ::core::option::Option<i32>,
106 #[prost(int32, optional, tag = "4")]
107 pub gt: ::core::option::Option<i32>,
108 #[prost(int32, optional, tag = "5")]
109 pub gte: ::core::option::Option<i32>,
110 #[prost(int32, repeated, packed = "false", tag = "6")]
111 pub r#in: ::prost::alloc::vec::Vec<i32>,
112 #[prost(int32, repeated, packed = "false", tag = "7")]
113 pub not_in: ::prost::alloc::vec::Vec<i32>,
114 #[prost(bool, optional, tag = "8")]
115 pub ignore_empty: ::core::option::Option<bool>,
116}
117#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
118pub struct Int64Rules {
119 #[prost(int64, optional, tag = "1")]
120 pub r#const: ::core::option::Option<i64>,
121 #[prost(int64, optional, tag = "2")]
122 pub lt: ::core::option::Option<i64>,
123 #[prost(int64, optional, tag = "3")]
124 pub lte: ::core::option::Option<i64>,
125 #[prost(int64, optional, tag = "4")]
126 pub gt: ::core::option::Option<i64>,
127 #[prost(int64, optional, tag = "5")]
128 pub gte: ::core::option::Option<i64>,
129 #[prost(int64, repeated, packed = "false", tag = "6")]
130 pub r#in: ::prost::alloc::vec::Vec<i64>,
131 #[prost(int64, repeated, packed = "false", tag = "7")]
132 pub not_in: ::prost::alloc::vec::Vec<i64>,
133 #[prost(bool, optional, tag = "8")]
134 pub ignore_empty: ::core::option::Option<bool>,
135}
136#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
137pub struct UInt32Rules {
138 #[prost(uint32, optional, tag = "1")]
139 pub r#const: ::core::option::Option<u32>,
140 #[prost(uint32, optional, tag = "2")]
141 pub lt: ::core::option::Option<u32>,
142 #[prost(uint32, optional, tag = "3")]
143 pub lte: ::core::option::Option<u32>,
144 #[prost(uint32, optional, tag = "4")]
145 pub gt: ::core::option::Option<u32>,
146 #[prost(uint32, optional, tag = "5")]
147 pub gte: ::core::option::Option<u32>,
148 #[prost(uint32, repeated, packed = "false", tag = "6")]
149 pub r#in: ::prost::alloc::vec::Vec<u32>,
150 #[prost(uint32, repeated, packed = "false", tag = "7")]
151 pub not_in: ::prost::alloc::vec::Vec<u32>,
152 #[prost(bool, optional, tag = "8")]
153 pub ignore_empty: ::core::option::Option<bool>,
154}
155#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
156pub struct UInt64Rules {
157 #[prost(uint64, optional, tag = "1")]
158 pub r#const: ::core::option::Option<u64>,
159 #[prost(uint64, optional, tag = "2")]
160 pub lt: ::core::option::Option<u64>,
161 #[prost(uint64, optional, tag = "3")]
162 pub lte: ::core::option::Option<u64>,
163 #[prost(uint64, optional, tag = "4")]
164 pub gt: ::core::option::Option<u64>,
165 #[prost(uint64, optional, tag = "5")]
166 pub gte: ::core::option::Option<u64>,
167 #[prost(uint64, repeated, packed = "false", tag = "6")]
168 pub r#in: ::prost::alloc::vec::Vec<u64>,
169 #[prost(uint64, repeated, packed = "false", tag = "7")]
170 pub not_in: ::prost::alloc::vec::Vec<u64>,
171 #[prost(bool, optional, tag = "8")]
172 pub ignore_empty: ::core::option::Option<bool>,
173}
174#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
175pub struct SInt32Rules {
176 #[prost(sint32, optional, tag = "1")]
177 pub r#const: ::core::option::Option<i32>,
178 #[prost(sint32, optional, tag = "2")]
179 pub lt: ::core::option::Option<i32>,
180 #[prost(sint32, optional, tag = "3")]
181 pub lte: ::core::option::Option<i32>,
182 #[prost(sint32, optional, tag = "4")]
183 pub gt: ::core::option::Option<i32>,
184 #[prost(sint32, optional, tag = "5")]
185 pub gte: ::core::option::Option<i32>,
186 #[prost(sint32, repeated, packed = "false", tag = "6")]
187 pub r#in: ::prost::alloc::vec::Vec<i32>,
188 #[prost(sint32, repeated, packed = "false", tag = "7")]
189 pub not_in: ::prost::alloc::vec::Vec<i32>,
190 #[prost(bool, optional, tag = "8")]
191 pub ignore_empty: ::core::option::Option<bool>,
192}
193#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
194pub struct SInt64Rules {
195 #[prost(sint64, optional, tag = "1")]
196 pub r#const: ::core::option::Option<i64>,
197 #[prost(sint64, optional, tag = "2")]
198 pub lt: ::core::option::Option<i64>,
199 #[prost(sint64, optional, tag = "3")]
200 pub lte: ::core::option::Option<i64>,
201 #[prost(sint64, optional, tag = "4")]
202 pub gt: ::core::option::Option<i64>,
203 #[prost(sint64, optional, tag = "5")]
204 pub gte: ::core::option::Option<i64>,
205 #[prost(sint64, repeated, packed = "false", tag = "6")]
206 pub r#in: ::prost::alloc::vec::Vec<i64>,
207 #[prost(sint64, repeated, packed = "false", tag = "7")]
208 pub not_in: ::prost::alloc::vec::Vec<i64>,
209 #[prost(bool, optional, tag = "8")]
210 pub ignore_empty: ::core::option::Option<bool>,
211}
212#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
213pub struct Fixed32Rules {
214 #[prost(fixed32, optional, tag = "1")]
215 pub r#const: ::core::option::Option<u32>,
216 #[prost(fixed32, optional, tag = "2")]
217 pub lt: ::core::option::Option<u32>,
218 #[prost(fixed32, optional, tag = "3")]
219 pub lte: ::core::option::Option<u32>,
220 #[prost(fixed32, optional, tag = "4")]
221 pub gt: ::core::option::Option<u32>,
222 #[prost(fixed32, optional, tag = "5")]
223 pub gte: ::core::option::Option<u32>,
224 #[prost(fixed32, repeated, packed = "false", tag = "6")]
225 pub r#in: ::prost::alloc::vec::Vec<u32>,
226 #[prost(fixed32, repeated, packed = "false", tag = "7")]
227 pub not_in: ::prost::alloc::vec::Vec<u32>,
228 #[prost(bool, optional, tag = "8")]
229 pub ignore_empty: ::core::option::Option<bool>,
230}
231#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
232pub struct Fixed64Rules {
233 #[prost(fixed64, optional, tag = "1")]
234 pub r#const: ::core::option::Option<u64>,
235 #[prost(fixed64, optional, tag = "2")]
236 pub lt: ::core::option::Option<u64>,
237 #[prost(fixed64, optional, tag = "3")]
238 pub lte: ::core::option::Option<u64>,
239 #[prost(fixed64, optional, tag = "4")]
240 pub gt: ::core::option::Option<u64>,
241 #[prost(fixed64, optional, tag = "5")]
242 pub gte: ::core::option::Option<u64>,
243 #[prost(fixed64, repeated, packed = "false", tag = "6")]
244 pub r#in: ::prost::alloc::vec::Vec<u64>,
245 #[prost(fixed64, repeated, packed = "false", tag = "7")]
246 pub not_in: ::prost::alloc::vec::Vec<u64>,
247 #[prost(bool, optional, tag = "8")]
248 pub ignore_empty: ::core::option::Option<bool>,
249}
250#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
251pub struct SFixed32Rules {
252 #[prost(sfixed32, optional, tag = "1")]
253 pub r#const: ::core::option::Option<i32>,
254 #[prost(sfixed32, optional, tag = "2")]
255 pub lt: ::core::option::Option<i32>,
256 #[prost(sfixed32, optional, tag = "3")]
257 pub lte: ::core::option::Option<i32>,
258 #[prost(sfixed32, optional, tag = "4")]
259 pub gt: ::core::option::Option<i32>,
260 #[prost(sfixed32, optional, tag = "5")]
261 pub gte: ::core::option::Option<i32>,
262 #[prost(sfixed32, repeated, packed = "false", tag = "6")]
263 pub r#in: ::prost::alloc::vec::Vec<i32>,
264 #[prost(sfixed32, repeated, packed = "false", tag = "7")]
265 pub not_in: ::prost::alloc::vec::Vec<i32>,
266 #[prost(bool, optional, tag = "8")]
267 pub ignore_empty: ::core::option::Option<bool>,
268}
269#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
270pub struct SFixed64Rules {
271 #[prost(sfixed64, optional, tag = "1")]
272 pub r#const: ::core::option::Option<i64>,
273 #[prost(sfixed64, optional, tag = "2")]
274 pub lt: ::core::option::Option<i64>,
275 #[prost(sfixed64, optional, tag = "3")]
276 pub lte: ::core::option::Option<i64>,
277 #[prost(sfixed64, optional, tag = "4")]
278 pub gt: ::core::option::Option<i64>,
279 #[prost(sfixed64, optional, tag = "5")]
280 pub gte: ::core::option::Option<i64>,
281 #[prost(sfixed64, repeated, packed = "false", tag = "6")]
282 pub r#in: ::prost::alloc::vec::Vec<i64>,
283 #[prost(sfixed64, repeated, packed = "false", tag = "7")]
284 pub not_in: ::prost::alloc::vec::Vec<i64>,
285 #[prost(bool, optional, tag = "8")]
286 pub ignore_empty: ::core::option::Option<bool>,
287}
288#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
289pub struct BoolRules {
290 #[prost(bool, optional, tag = "1")]
291 pub r#const: ::core::option::Option<bool>,
292}
293#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
294pub struct StringRules {
295 #[prost(string, optional, tag = "1")]
296 pub r#const: ::core::option::Option<::prost::alloc::string::String>,
297 #[prost(uint64, optional, tag = "19")]
298 pub len: ::core::option::Option<u64>,
299 #[prost(uint64, optional, tag = "2")]
300 pub min_len: ::core::option::Option<u64>,
301 #[prost(uint64, optional, tag = "3")]
302 pub max_len: ::core::option::Option<u64>,
303 #[prost(uint64, optional, tag = "20")]
304 pub len_bytes: ::core::option::Option<u64>,
305 #[prost(uint64, optional, tag = "4")]
306 pub min_bytes: ::core::option::Option<u64>,
307 #[prost(uint64, optional, tag = "5")]
308 pub max_bytes: ::core::option::Option<u64>,
309 #[prost(string, optional, tag = "6")]
310 pub pattern: ::core::option::Option<::prost::alloc::string::String>,
311 #[prost(string, optional, tag = "7")]
312 pub prefix: ::core::option::Option<::prost::alloc::string::String>,
313 #[prost(string, optional, tag = "8")]
314 pub suffix: ::core::option::Option<::prost::alloc::string::String>,
315 #[prost(string, optional, tag = "9")]
316 pub contains: ::core::option::Option<::prost::alloc::string::String>,
317 #[prost(string, optional, tag = "23")]
318 pub not_contains: ::core::option::Option<::prost::alloc::string::String>,
319 #[prost(string, repeated, tag = "10")]
320 pub r#in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
321 #[prost(string, repeated, tag = "11")]
322 pub not_in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
323 #[prost(bool, optional, tag = "25", default = "true")]
324 pub strict: ::core::option::Option<bool>,
325 #[prost(bool, optional, tag = "26")]
326 pub ignore_empty: ::core::option::Option<bool>,
327 #[prost(
328 oneof = "string_rules::WellKnown",
329 tags = "12, 13, 14, 15, 16, 17, 18, 21, 22, 24"
330 )]
331 pub well_known: ::core::option::Option<string_rules::WellKnown>,
332}
333pub mod string_rules {
335 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
336 pub enum WellKnown {
337 #[prost(bool, tag = "12")]
338 Email(bool),
339 #[prost(bool, tag = "13")]
340 Hostname(bool),
341 #[prost(bool, tag = "14")]
342 Ip(bool),
343 #[prost(bool, tag = "15")]
344 Ipv4(bool),
345 #[prost(bool, tag = "16")]
346 Ipv6(bool),
347 #[prost(bool, tag = "17")]
348 Uri(bool),
349 #[prost(bool, tag = "18")]
350 UriRef(bool),
351 #[prost(bool, tag = "21")]
352 Address(bool),
353 #[prost(bool, tag = "22")]
354 Uuid(bool),
355 #[prost(enumeration = "super::KnownRegex", tag = "24")]
356 WellKnownRegex(i32),
357 }
358}
359#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
360pub struct BytesRules {
361 #[prost(bytes = "vec", optional, tag = "1")]
362 pub r#const: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
363 #[prost(uint64, optional, tag = "13")]
364 pub len: ::core::option::Option<u64>,
365 #[prost(uint64, optional, tag = "2")]
366 pub min_len: ::core::option::Option<u64>,
367 #[prost(uint64, optional, tag = "3")]
368 pub max_len: ::core::option::Option<u64>,
369 #[prost(string, optional, tag = "4")]
370 pub pattern: ::core::option::Option<::prost::alloc::string::String>,
371 #[prost(bytes = "vec", optional, tag = "5")]
372 pub prefix: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
373 #[prost(bytes = "vec", optional, tag = "6")]
374 pub suffix: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
375 #[prost(bytes = "vec", optional, tag = "7")]
376 pub contains: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
377 #[prost(bytes = "vec", repeated, tag = "8")]
378 pub r#in: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
379 #[prost(bytes = "vec", repeated, tag = "9")]
380 pub not_in: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
381 #[prost(bool, optional, tag = "14")]
382 pub ignore_empty: ::core::option::Option<bool>,
383 #[prost(oneof = "bytes_rules::WellKnown", tags = "10, 11, 12")]
384 pub well_known: ::core::option::Option<bytes_rules::WellKnown>,
385}
386pub mod bytes_rules {
388 #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
389 pub enum WellKnown {
390 #[prost(bool, tag = "10")]
391 Ip(bool),
392 #[prost(bool, tag = "11")]
393 Ipv4(bool),
394 #[prost(bool, tag = "12")]
395 Ipv6(bool),
396 }
397}
398#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
399pub struct EnumRules {
400 #[prost(int32, optional, tag = "1")]
401 pub r#const: ::core::option::Option<i32>,
402 #[prost(bool, optional, tag = "2")]
403 pub defined_only: ::core::option::Option<bool>,
404 #[prost(int32, repeated, packed = "false", tag = "3")]
405 pub r#in: ::prost::alloc::vec::Vec<i32>,
406 #[prost(int32, repeated, packed = "false", tag = "4")]
407 pub not_in: ::prost::alloc::vec::Vec<i32>,
408}
409#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
410pub struct MessageRules {
411 #[prost(bool, optional, tag = "1")]
412 pub skip: ::core::option::Option<bool>,
413 #[prost(bool, optional, tag = "2")]
414 pub required: ::core::option::Option<bool>,
415}
416#[derive(Clone, PartialEq, ::prost::Message)]
417pub struct RepeatedRules {
418 #[prost(uint64, optional, tag = "1")]
419 pub min_items: ::core::option::Option<u64>,
420 #[prost(uint64, optional, tag = "2")]
421 pub max_items: ::core::option::Option<u64>,
422 #[prost(bool, optional, tag = "3")]
423 pub unique: ::core::option::Option<bool>,
424 #[prost(message, optional, boxed, tag = "4")]
425 pub items: ::core::option::Option<::prost::alloc::boxed::Box<FieldRules>>,
426 #[prost(bool, optional, tag = "5")]
427 pub ignore_empty: ::core::option::Option<bool>,
428}
429#[derive(Clone, PartialEq, ::prost::Message)]
430pub struct MapRules {
431 #[prost(uint64, optional, tag = "1")]
432 pub min_pairs: ::core::option::Option<u64>,
433 #[prost(uint64, optional, tag = "2")]
434 pub max_pairs: ::core::option::Option<u64>,
435 #[prost(bool, optional, tag = "3")]
436 pub no_sparse: ::core::option::Option<bool>,
437 #[prost(message, optional, boxed, tag = "4")]
438 pub keys: ::core::option::Option<::prost::alloc::boxed::Box<FieldRules>>,
439 #[prost(message, optional, boxed, tag = "5")]
440 pub values: ::core::option::Option<::prost::alloc::boxed::Box<FieldRules>>,
441 #[prost(bool, optional, tag = "6")]
442 pub ignore_empty: ::core::option::Option<bool>,
443}
444#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
445pub struct AnyRules {
446 #[prost(bool, optional, tag = "1")]
447 pub required: ::core::option::Option<bool>,
448 #[prost(string, repeated, tag = "2")]
449 pub r#in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
450 #[prost(string, repeated, tag = "3")]
451 pub not_in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
452}
453#[derive(Clone, PartialEq, ::prost::Message)]
454pub struct DurationRules {
455 #[prost(bool, optional, tag = "1")]
456 pub required: ::core::option::Option<bool>,
457 #[prost(message, optional, tag = "2")]
458 pub r#const: ::core::option::Option<::prost_types::Duration>,
459 #[prost(message, optional, tag = "3")]
460 pub lt: ::core::option::Option<::prost_types::Duration>,
461 #[prost(message, optional, tag = "4")]
462 pub lte: ::core::option::Option<::prost_types::Duration>,
463 #[prost(message, optional, tag = "5")]
464 pub gt: ::core::option::Option<::prost_types::Duration>,
465 #[prost(message, optional, tag = "6")]
466 pub gte: ::core::option::Option<::prost_types::Duration>,
467 #[prost(message, repeated, tag = "7")]
468 pub r#in: ::prost::alloc::vec::Vec<::prost_types::Duration>,
469 #[prost(message, repeated, tag = "8")]
470 pub not_in: ::prost::alloc::vec::Vec<::prost_types::Duration>,
471}
472#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
473pub struct TimestampRules {
474 #[prost(bool, optional, tag = "1")]
475 pub required: ::core::option::Option<bool>,
476 #[prost(message, optional, tag = "2")]
477 pub r#const: ::core::option::Option<::prost_types::Timestamp>,
478 #[prost(message, optional, tag = "3")]
479 pub lt: ::core::option::Option<::prost_types::Timestamp>,
480 #[prost(message, optional, tag = "4")]
481 pub lte: ::core::option::Option<::prost_types::Timestamp>,
482 #[prost(message, optional, tag = "5")]
483 pub gt: ::core::option::Option<::prost_types::Timestamp>,
484 #[prost(message, optional, tag = "6")]
485 pub gte: ::core::option::Option<::prost_types::Timestamp>,
486 #[prost(bool, optional, tag = "7")]
487 pub lt_now: ::core::option::Option<bool>,
488 #[prost(bool, optional, tag = "8")]
489 pub gt_now: ::core::option::Option<bool>,
490 #[prost(message, optional, tag = "9")]
491 pub within: ::core::option::Option<::prost_types::Duration>,
492}
493#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
494#[repr(i32)]
495pub enum KnownRegex {
496 Unknown = 0,
497 HttpHeaderName = 1,
498 HttpHeaderValue = 2,
499}
500impl KnownRegex {
501 pub fn as_str_name(&self) -> &'static str {
506 match self {
507 Self::Unknown => "UNKNOWN",
508 Self::HttpHeaderName => "HTTP_HEADER_NAME",
509 Self::HttpHeaderValue => "HTTP_HEADER_VALUE",
510 }
511 }
512 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
514 match value {
515 "UNKNOWN" => Some(Self::Unknown),
516 "HTTP_HEADER_NAME" => Some(Self::HttpHeaderName),
517 "HTTP_HEADER_VALUE" => Some(Self::HttpHeaderValue),
518 _ => None,
519 }
520 }
521}