utoipa::openapi::schema

Struct Array

Source
#[non_exhaustive]
pub struct Array {
Show 16 fields pub schema_type: SchemaType, pub title: Option<String>, pub items: ArrayItems, pub prefix_items: Vec<Schema>, pub description: Option<String>, pub deprecated: Option<Deprecated>, pub example: Option<Value>, pub examples: Vec<Value>, pub default: Option<Value>, pub max_items: Option<usize>, pub min_items: Option<usize>, pub unique_items: bool, pub xml: Option<Xml>, pub content_encoding: String, pub content_media_type: String, pub extensions: Option<Extensions>,
}
Expand description

Array represents Vec or slice type of items.

See Schema::Array for more details.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§schema_type: SchemaType

Type will always be SchemaType::Array.

§title: Option<String>

Changes the Array title.

§items: ArrayItems

Items of the Array.

§prefix_items: Vec<Schema>

Prefix items of Array is used to define item validation of tuples according JSON schema item validation.

§description: Option<String>

Description of the Array. Markdown syntax is supported.

§deprecated: Option<Deprecated>

Marks the Array deprecated.

§example: Option<Value>

Example shown in UI of the value for richer documentation.

Deprecated since 3.0.x. Prefer Array::examples instead

§examples: Vec<Value>

Examples shown in UI of the value for richer documentation.

§default: Option<Value>

Default value which is provided when user has not provided the input in Swagger UI.

§max_items: Option<usize>

Max length of the array.

§min_items: Option<usize>

Min length of the array.

§unique_items: bool

Setting this to true will validate successfully if all elements of this Array are unique.

§xml: Option<Xml>

Xml format of the array.

§content_encoding: String

The content_encoding keyword specifies the encoding used to store the contents, as specified in RFC 2054, part 6.1 and [RFC 4648](RFC 2054, part 6.1).

Typically this is either unset for string content types which then uses the content encoding of the underlying JSON document. If the content is in binary format such as an image or an audio set it to base64 to encode it as Base64.

See more details at https://json-schema.org/understanding-json-schema/reference/non_json_data#contentencoding

§content_media_type: String

The content_media_type keyword specifies the MIME type of the contents of a string, as described in RFC 2046.

See more details at https://json-schema.org/understanding-json-schema/reference/non_json_data#contentmediatype

§extensions: Option<Extensions>

Optional extensions x-something.

Implementations§

Source§

impl Array

Source

pub fn builder() -> ArrayBuilder

Construct a new ArrayBuilder.

This is effectively same as calling ArrayBuilder::new

Source§

impl Array

Source

pub fn new<I: Into<RefOr<Schema>>>(component: I) -> Self

Construct a new Array component from given Schema.

§Examples

Create a String array component.

let string_array = Array::new(Object::with_type(Type::String));
Source

pub fn new_nullable<I: Into<RefOr<Schema>>>(component: I) -> Self

Construct a new nullable Array component from given Schema.

§Examples

Create a nullable String array component.

let string_array = Array::new_nullable(Object::with_type(Type::String));

Trait Implementations§

Source§

impl Clone for Array

Source§

fn clone(&self) -> Array

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for Array

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Array

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl From<Array> for ArrayBuilder

Source§

fn from(value: Array) -> Self

Converts to this type from the input type.
Source§

impl From<Array> for RefOr<Schema>

Source§

fn from(array: Array) -> Self

Converts to this type from the input type.
Source§

impl From<Array> for Schema

Source§

fn from(array: Array) -> Self

Converts to this type from the input type.
Source§

impl From<ArrayBuilder> for Array

Source§

fn from(value: ArrayBuilder) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for Array

Source§

fn eq(&self, other: &Array) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for Array

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl ToArray for Array

Source§

fn to_array(self) -> Array

Wrap this RefOr<Schema> with Array.
Source§

impl StructuralPartialEq for Array

Auto Trait Implementations§

§

impl Freeze for Array

§

impl RefUnwindSafe for Array

§

impl Send for Array

§

impl Sync for Array

§

impl Unpin for Array

§

impl UnwindSafe for Array

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,