pub struct BytesRules {
pub const: Option<Vec<u8>>,
pub len: Option<u64>,
pub min_len: Option<u64>,
pub max_len: Option<u64>,
pub pattern: Option<String>,
pub prefix: Option<Vec<u8>>,
pub suffix: Option<Vec<u8>>,
pub contains: Option<Vec<u8>>,
pub in: Vec<Vec<u8>>,
pub not_in: Vec<Vec<u8>>,
pub ignore_empty: Option<bool>,
pub well_known: Option<WellKnown>,
}
Expand description
BytesRules describe the constraints applied to bytes
values
Fields§
§const: Option<Vec<u8>>
Const specifies that this field must be exactly the specified value
len: Option<u64>
Len specifies that this field must be the specified number of bytes
min_len: Option<u64>
MinLen specifies that this field must be the specified number of bytes at a minimum
max_len: Option<u64>
MaxLen specifies that this field must be the specified number of bytes at a maximum
pattern: Option<String>
Pattern specifies that this field must match against the specified regular expression (RE2 syntax). The included expression should elide any delimiters.
prefix: Option<Vec<u8>>
Prefix specifies that this field must have the specified bytes at the beginning of the string.
suffix: Option<Vec<u8>>
Suffix specifies that this field must have the specified bytes at the end of the string.
contains: Option<Vec<u8>>
Contains specifies that this field must have the specified bytes anywhere in the string.
in: Vec<Vec<u8>>
In specifies that this field must be equal to one of the specified values
not_in: Vec<Vec<u8>>
NotIn specifies that this field cannot be equal to one of the specified values
ignore_empty: Option<bool>
IgnoreEmpty specifies that the validation rules of this field should be evaluated only if the field is not empty
well_known: Option<WellKnown>
WellKnown rules provide advanced constraints against common byte patterns
Implementations§
Source§impl BytesRules
impl BytesRules
Sourcepub fn const(&self) -> &[u8] ⓘ
pub fn const(&self) -> &[u8] ⓘ
Returns the value of const
, or the default value if const
is unset.
Sourcepub fn min_len(&self) -> u64
pub fn min_len(&self) -> u64
Returns the value of min_len
, or the default value if min_len
is unset.
Sourcepub fn max_len(&self) -> u64
pub fn max_len(&self) -> u64
Returns the value of max_len
, or the default value if max_len
is unset.
Sourcepub fn pattern(&self) -> &str
pub fn pattern(&self) -> &str
Returns the value of pattern
, or the default value if pattern
is unset.
Sourcepub fn prefix(&self) -> &[u8] ⓘ
pub fn prefix(&self) -> &[u8] ⓘ
Returns the value of prefix
, or the default value if prefix
is unset.
Sourcepub fn suffix(&self) -> &[u8] ⓘ
pub fn suffix(&self) -> &[u8] ⓘ
Returns the value of suffix
, or the default value if suffix
is unset.
Sourcepub fn contains(&self) -> &[u8] ⓘ
pub fn contains(&self) -> &[u8] ⓘ
Returns the value of contains
, or the default value if contains
is unset.
Sourcepub fn ignore_empty(&self) -> bool
pub fn ignore_empty(&self) -> bool
Returns the value of ignore_empty
, or the default value if ignore_empty
is unset.
Trait Implementations§
Source§impl Clone for BytesRules
impl Clone for BytesRules
Source§fn clone(&self) -> BytesRules
fn clone(&self) -> BytesRules
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for BytesRules
impl Debug for BytesRules
Source§impl Default for BytesRules
impl Default for BytesRules
Source§impl Message for BytesRules
impl Message for BytesRules
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl Name for BytesRules
impl Name for BytesRules
Source§const NAME: &'static str = "BytesRules"
const NAME: &'static str = "BytesRules"
Message
.
This name is the same as it appears in the source .proto file, e.g. FooBar
.Source§const PACKAGE: &'static str = "validate"
const PACKAGE: &'static str = "validate"
.
, e.g. google.protobuf
.Source§fn full_name() -> String
fn full_name() -> String
Message
.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation
.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.Source§impl PartialEq for BytesRules
impl PartialEq for BytesRules
impl StructuralPartialEq for BytesRules
Auto Trait Implementations§
impl Freeze for BytesRules
impl RefUnwindSafe for BytesRules
impl Send for BytesRules
impl Sync for BytesRules
impl Unpin for BytesRules
impl UnwindSafe for BytesRules
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request