pub struct PropertyDef {
pub type_name: String,
pub description: Option<String>,
pub enum_values: Option<Vec<String>>,
pub items: Option<Box<PropertyDef>>,
pub properties: Option<HashMap<String, PropertyDef>>,
pub required: Option<Vec<String>>,
pub default_value: Option<Value>,
}Expand description
Property definition in JSON schema
Fields§
§type_name: String§description: Option<String>§enum_values: Option<Vec<String>>§items: Option<Box<PropertyDef>>§properties: Option<HashMap<String, PropertyDef>>§required: Option<Vec<String>>§default_value: Option<Value>Implementations§
Source§impl PropertyDef
impl PropertyDef
Sourcepub fn enum_type(description: Option<String>, values: Vec<String>) -> Self
pub fn enum_type(description: Option<String>, values: Vec<String>) -> Self
Create an enum (string with allowed values) property
Sourcepub fn array(description: Option<String>, items: PropertyDef) -> Self
pub fn array(description: Option<String>, items: PropertyDef) -> Self
Create an array property
Sourcepub fn object(
description: Option<String>,
properties: HashMap<String, PropertyDef>,
) -> Self
pub fn object( description: Option<String>, properties: HashMap<String, PropertyDef>, ) -> Self
Create an object property
Sourcepub fn with_default(&mut self, value: Value) -> &mut Self
pub fn with_default(&mut self, value: Value) -> &mut Self
Set a default value
Trait Implementations§
Source§impl Clone for PropertyDef
impl Clone for PropertyDef
Source§fn clone(&self) -> PropertyDef
fn clone(&self) -> PropertyDef
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 PropertyDef
impl Debug for PropertyDef
Source§impl<'de> Deserialize<'de> for PropertyDef
impl<'de> Deserialize<'de> for PropertyDef
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for PropertyDef
impl RefUnwindSafe for PropertyDef
impl Send for PropertyDef
impl Sync for PropertyDef
impl Unpin for PropertyDef
impl UnwindSafe for PropertyDef
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more