Trait poem_openapi::types::Type
source · pub trait Type: Send + Sync {
type RawValueType;
type RawElementValueType;
const IS_REQUIRED: bool;
// Required methods
fn name() -> Cow<'static, str>;
fn schema_ref() -> MetaSchemaRef;
fn as_raw_value(&self) -> Option<&Self::RawValueType>;
fn raw_element_iter<'a>(
&'a self
) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>;
// Provided methods
fn register(registry: &mut Registry) { ... }
fn is_empty(&self) -> bool { ... }
fn is_none(&self) -> bool { ... }
}
Expand description
Represents a OpenAPI type.
Required Associated Types§
sourcetype RawValueType
type RawValueType
The raw type used for validator.
Usually it is Self
, but the wrapper type is its internal type.
For example:
i32::RawValueType
is i32
Option<i32>::RawValueType
is i32
.
sourcetype RawElementValueType
type RawElementValueType
The raw element type used for validator.
Required Associated Constants§
sourceconst IS_REQUIRED: bool
const IS_REQUIRED: bool
If it is true
, it means that this type is required.
Required Methods§
sourcefn schema_ref() -> MetaSchemaRef
fn schema_ref() -> MetaSchemaRef
Get schema reference of this type.
sourcefn as_raw_value(&self) -> Option<&Self::RawValueType>
fn as_raw_value(&self) -> Option<&Self::RawValueType>
Returns a reference to the raw value.
sourcefn raw_element_iter<'a>(
&'a self
) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>
fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>
Returns an iterator for traversing the elements.