pub struct TimestampRules {
pub const: Option<Timestamp>,
pub within: Option<Duration>,
pub example: Vec<Timestamp>,
pub less_than: Option<LessThan>,
pub greater_than: Option<GreaterThan>,
}
Expand description
TimestampRules describe the rules applied exclusively to the google.protobuf.Timestamp
well-known type.
Fields§
§const: Option<Timestamp>
const
dictates that this field, of the google.protobuf.Timestamp
type, must exactly match the specified value. If the field value doesn’t correspond to the specified timestamp, an error message will be generated.
message MyTimestamp {
// value must equal 2023-05-03T10:00:00Z
google.protobuf.Timestamp created_at = 1 \[(buf.validate.field).timestamp.const = {seconds: 1727998800}\];
}
within: Option<Duration>
within
specifies that this field, of the google.protobuf.Timestamp
type, must be within the specified duration of the current time. If the field value isn’t within the duration, an error message is generated.
message MyTimestamp {
// value must be within 1 hour of now
google.protobuf.Timestamp created_at = 1 \[(buf.validate.field).timestamp.within = {seconds: 3600}\];
}
example: Vec<Timestamp>
example
specifies values that the field may have. These values SHOULD
conform to other rules. example
values will not impact validation
but may be used as helpful guidance on how to populate the given field.
message MyTimestamp {
google.protobuf.Timestamp value = 1 [
(buf.validate.field).timestamp.example = { seconds: 1672444800 },
(buf.validate.field).timestamp.example = { seconds: 1672531200 },
];
}
less_than: Option<LessThan>
§greater_than: Option<GreaterThan>
Trait Implementations§
Source§impl Clone for TimestampRules
impl Clone for TimestampRules
Source§fn clone(&self) -> TimestampRules
fn clone(&self) -> TimestampRules
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for TimestampRules
impl Debug for TimestampRules
Source§impl Default for TimestampRules
impl Default for TimestampRules
Source§impl Message for TimestampRules
impl Message for TimestampRules
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
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,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
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,
Encodes the message with a length-delimiter to a buffer. Read more
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,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
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,
Decodes a length-delimited instance of the message from the buffer.
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,
Decodes an instance of the message from a buffer, and merges it into
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,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self
.Source§impl PartialEq for TimestampRules
impl PartialEq for TimestampRules
impl StructuralPartialEq for TimestampRules
Auto Trait Implementations§
impl Freeze for TimestampRules
impl RefUnwindSafe for TimestampRules
impl Send for TimestampRules
impl Sync for TimestampRules
impl Unpin for TimestampRules
impl UnwindSafe for TimestampRules
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