pub enum KnownFormat {
Show 35 variants
Int8,
Int16,
Int32,
Int64,
UInt8,
UInt16,
UInt32,
UInt64,
Float,
Double,
Byte,
Binary,
Time,
Date,
DateTime,
Duration,
Password,
String,
Decimal,
Ulid,
Uuid,
Url,
UriReference,
Iri,
IriReference,
Email,
IdnEmail,
Hostname,
IdnHostname,
Ipv4,
Ipv6,
UriTemplate,
JsonPointer,
RelativeJsonPointer,
Regex,
}
Expand description
Known schema format modifier property to provide fine detail of the primitive type.
Known format is defined in https://spec.openapis.org/oas/latest.html#data-types and
https://datatracker.ietf.org/doc/html/draft-bhutton-json-schema-validation-00#section-7.3 as
well as by few known data types that are enabled by specific feature flag e.g. uuid
.
Variants§
Int8
8 bit integer.
Int16
16 bit integer.
Int32
32 bit integer.
Int64
64 bit integer.
UInt8
8 bit unsigned integer.
UInt16
16 bit unsigned integer.
UInt32
32 bit unsigned integer.
UInt64
64 bit unsigned integer.
Float
floating point number.
Double
double (floating point) number.
Byte
base64 encoded chars.
Binary
binary data (octet).
Time
ISO-8601 full time format RFC3339.
Date
ISO-8601 full date RFC3339.
DateTime
ISO-8601 full date time RFC3339.
Duration
duration format from RFC3339 Appendix-A.
Password
Hint to UI to obscure input.
String
Use for compact string
Decimal
decimal
or decimal-float
only.Used with String
values to indicate value is in decimal format.
decimal feature need to be enabled.
Ulid
ulid
only.Used with String
values to indicate value is in ULID format.
Uuid
uuid
only.Used with String
values to indicate value is in UUID format.
Url
url
only.Used with String
values to indicate value is in Url format.
url feature need to be enabled.
UriReference
url
only.A string instance is valid against this attribute if it is a valid URI Reference (either a URI or a relative-reference) according to RFC3986.
Iri
url
only.A string instance is valid against this attribute if it is a valid IRI, according to RFC3987.
IriReference
url
only.A string instance is valid against this attribute if it is a valid IRI Reference (either an IRI or a relative-reference) according to RFC3987.
As defined in “Mailbox” rule RFC5321.
IdnEmail
As defined by extended “Mailbox” rule RFC6531.
Hostname
As defined by RFC1123, including host names produced using the Punycode algorithm specified in RFC5891.
IdnHostname
As defined by either RFC1123 as for hostname, or an internationalized hostname as defined by RFC5890.
Ipv4
An IPv4 address according to RFC2673.
Ipv6
An IPv6 address according to RFC4291.
UriTemplate
A string instance is a valid URI Template if it is according to RFC6570.
Note! There are no separate IRL template.
JsonPointer
A valid JSON string representation of a JSON Pointer according to RFC6901.
RelativeJsonPointer
A valid relative JSON Pointer according to draft-handrews-relative-json-pointer-01.
Regex
Regular expression, which SHOULD be valid according to the ECMA-262.
Trait Implementations§
Source§impl Clone for KnownFormat
impl Clone for KnownFormat
Source§fn clone(&self) -> KnownFormat
fn clone(&self) -> KnownFormat
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for KnownFormat
impl Debug for KnownFormat
Source§impl<'de> Deserialize<'de> for KnownFormat
impl<'de> Deserialize<'de> for KnownFormat
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for KnownFormat
impl PartialEq for KnownFormat
Source§impl Serialize for KnownFormat
impl Serialize for KnownFormat
impl Eq for KnownFormat
impl StructuralPartialEq for KnownFormat
Auto Trait Implementations§
impl Freeze for KnownFormat
impl RefUnwindSafe for KnownFormat
impl Send for KnownFormat
impl Sync for KnownFormat
impl Unpin for KnownFormat
impl UnwindSafe for KnownFormat
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.