pub enum WellKnown {
Ip(bool),
Ipv4(bool),
Ipv6(bool),
}
Expand description
WellKnown rules provide advanced rules against common byte patterns
Variants§
Ip(bool)
ip
ensures that the field value
is a valid IP address (v4 or v6) in byte format.
If the field value doesn’t meet this rule, an error message is generated.
message MyBytes {
// value must be a valid IP address
optional bytes value = 1 \[(buf.validate.field).bytes.ip = true\];
}
Ipv4(bool)
ipv4
ensures that the field value
is a valid IPv4 address in byte format.
If the field value doesn’t meet this rule, an error message is generated.
message MyBytes {
// value must be a valid IPv4 address
optional bytes value = 1 \[(buf.validate.field).bytes.ipv4 = true\];
}
Ipv6(bool)
ipv6
ensures that the field value
is a valid IPv6 address in byte format.
If the field value doesn’t meet this rule, an error message is generated.
message MyBytes {
// value must be a valid IPv6 address
optional bytes value = 1 \[(buf.validate.field).bytes.ipv6 = true\];
}
Implementations§
Source§impl WellKnown
impl WellKnown
Sourcepub fn merge(
field: &mut Option<WellKnown>,
tag: u32,
wire_type: WireType,
buf: &mut impl Buf,
ctx: DecodeContext,
) -> Result<(), DecodeError>
pub fn merge( field: &mut Option<WellKnown>, tag: u32, wire_type: WireType, buf: &mut impl Buf, ctx: DecodeContext, ) -> Result<(), DecodeError>
Decodes an instance of the message from a buffer, and merges it into self.
Sourcepub fn encoded_len(&self) -> usize
pub fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Trait Implementations§
impl Copy for WellKnown
impl StructuralPartialEq for WellKnown
Auto Trait Implementations§
impl Freeze for WellKnown
impl RefUnwindSafe for WellKnown
impl Send for WellKnown
impl Sync for WellKnown
impl Unpin for WellKnown
impl UnwindSafe for WellKnown
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
Mutably borrows from an owned value. Read more
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>
Wrap the input message
T
in a tonic::Request