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§

source

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.

source

type RawElementValueType

The raw element type used for validator.

Required Associated Constants§

source

const IS_REQUIRED: bool

If it is true, it means that this type is required.

Required Methods§

source

fn name() -> Cow<'static, str>

Returns the name of this type

source

fn schema_ref() -> MetaSchemaRef

Get schema reference of this type.

source

fn as_raw_value(&self) -> Option<&Self::RawValueType>

Returns a reference to the raw value.

source

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

Returns an iterator for traversing the elements.

Provided Methods§

source

fn register(registry: &mut Registry)

Register this type to types registry.

source

fn is_empty(&self) -> bool

Returns true if this value is empty.

If the object’s field has the skip_serializing_if_is_empty attribute, call this method to test that the value is empty.

source

fn is_none(&self) -> bool

Returns true if this value is none.

If the object’s field has the skip_serializing_if_is_none attribute, call this method to test that the value is none.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Type for IpAddr

source§

const IS_REQUIRED: bool = true

§

type RawValueType = IpAddr

§

type RawElementValueType = IpAddr

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for IpNet

source§

const IS_REQUIRED: bool = true

§

type RawValueType = IpNet

§

type RawElementValueType = IpNet

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Value

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Value

§

type RawElementValueType = Value

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for bool

source§

const IS_REQUIRED: bool = true

§

type RawValueType = bool

§

type RawElementValueType = bool

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for char

source§

const IS_REQUIRED: bool = true

§

type RawValueType = char

§

type RawElementValueType = char

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for f32

source§

const IS_REQUIRED: bool = true

§

type RawValueType = f32

§

type RawElementValueType = f32

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for f64

source§

const IS_REQUIRED: bool = true

§

type RawValueType = f64

§

type RawElementValueType = f64

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for i8

source§

const IS_REQUIRED: bool = true

§

type RawValueType = i8

§

type RawElementValueType = i8

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for i16

source§

const IS_REQUIRED: bool = true

§

type RawValueType = i16

§

type RawElementValueType = i16

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for i32

source§

const IS_REQUIRED: bool = true

§

type RawValueType = i32

§

type RawElementValueType = i32

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for i64

source§

const IS_REQUIRED: bool = true

§

type RawValueType = i64

§

type RawElementValueType = i64

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for u8

source§

const IS_REQUIRED: bool = true

§

type RawValueType = u8

§

type RawElementValueType = u8

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for u16

source§

const IS_REQUIRED: bool = true

§

type RawValueType = u16

§

type RawElementValueType = u16

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for u32

source§

const IS_REQUIRED: bool = true

§

type RawValueType = u32

§

type RawElementValueType = u32

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for u64

source§

const IS_REQUIRED: bool = true

§

type RawValueType = u64

§

type RawElementValueType = u64

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for usize

source§

const IS_REQUIRED: bool = true

§

type RawValueType = usize

§

type RawElementValueType = usize

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for String

source§

const IS_REQUIRED: bool = true

§

type RawValueType = String

§

type RawElementValueType = String

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl Type for Ipv4Addr

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Ipv4Addr

§

type RawElementValueType = Ipv4Addr

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Ipv6Addr

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Ipv6Addr

§

type RawElementValueType = Ipv6Addr

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Duration

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Duration

§

type RawElementValueType = Duration

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for ObjectId

source§

const IS_REQUIRED: bool = true

§

type RawValueType = ObjectId

§

type RawElementValueType = ObjectId

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for DateTime<FixedOffset>

source§

const IS_REQUIRED: bool = true

§

type RawValueType = DateTime<FixedOffset>

§

type RawElementValueType = DateTime<FixedOffset>

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for DateTime<Local>

source§

const IS_REQUIRED: bool = true

§

type RawValueType = DateTime<Local>

§

type RawElementValueType = DateTime<Local>

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for DateTime<Utc>

source§

const IS_REQUIRED: bool = true

§

type RawValueType = DateTime<Utc>

§

type RawElementValueType = DateTime<Utc>

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for NaiveDate

source§

const IS_REQUIRED: bool = true

§

type RawValueType = NaiveDate

§

type RawElementValueType = NaiveDate

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for NaiveDateTime

source§

const IS_REQUIRED: bool = true

§

type RawValueType = NaiveDateTime

§

type RawElementValueType = NaiveDateTime

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for NaiveTime

source§

const IS_REQUIRED: bool = true

§

type RawValueType = NaiveTime

§

type RawElementValueType = NaiveTime

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for LineString

source§

const IS_REQUIRED: bool = true

§

type RawValueType = LineString

§

type RawElementValueType = LineString

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for MultiLineString

source§

const IS_REQUIRED: bool = true

§

type RawValueType = MultiLineString

§

type RawElementValueType = MultiLineString

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for MultiPoint

source§

const IS_REQUIRED: bool = true

§

type RawValueType = MultiPoint

§

type RawElementValueType = MultiPoint

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for MultiPolygon

source§

const IS_REQUIRED: bool = true

§

type RawValueType = MultiPolygon

§

type RawElementValueType = MultiPolygon

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Point

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Point

§

type RawElementValueType = Point

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Polygon

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Polygon

§

type RawElementValueType = Polygon

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Duration

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Duration

§

type RawElementValueType = Duration

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Ipv4Net

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Ipv4Net

§

type RawElementValueType = Ipv4Net

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Ipv6Net

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Ipv6Net

§

type RawElementValueType = Ipv6Net

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Struct

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Struct

§

type RawElementValueType = <Value as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl Type for Value

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Value

§

type RawElementValueType = Value

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl Type for Regex

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Regex

§

type RawElementValueType = Regex

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Decimal

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Decimal

§

type RawElementValueType = Decimal

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Date

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Date

§

type RawElementValueType = Date

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for OffsetDateTime

source§

const IS_REQUIRED: bool = true

§

type RawValueType = OffsetDateTime

§

type RawElementValueType = OffsetDateTime

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for PrimitiveDateTime

source§

const IS_REQUIRED: bool = true

§

type RawValueType = PrimitiveDateTime

§

type RawElementValueType = PrimitiveDateTime

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Time

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Time

§

type RawElementValueType = Time

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Url

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Url

§

type RawElementValueType = Url

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Uuid

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Uuid

§

type RawElementValueType = Uuid

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl Type for Uri

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Uri

§

type RawElementValueType = Uri

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl<'a> Type for &'a str

source§

const IS_REQUIRED: bool = true

§

type RawValueType = &'a str

§

type RawElementValueType = &'a str

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'b>( &'b self ) -> Box<dyn Iterator<Item = &'b Self::RawElementValueType> + 'b>

source§

impl<K, V> Type for BTreeMap<K, V>
where K: ToString + FromStr + Ord + Sync + Send, V: Type,

source§

const IS_REQUIRED: bool = true

§

type RawValueType = BTreeMap<K, V>

§

type RawElementValueType = <V as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl<K, V, R> Type for HashMap<K, V, R>
where K: ToString + FromStr + Eq + Hash + Sync + Send, V: Type, R: Sync + Send,

source§

const IS_REQUIRED: bool = true

§

type RawValueType = HashMap<K, V, R>

§

type RawElementValueType = <V as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl<T: Type> Type for &[T]

source§

const IS_REQUIRED: bool = true

§

type RawValueType = &[T]

§

type RawElementValueType = <T as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl<T: Type> Type for Option<T>

source§

const IS_REQUIRED: bool = false

§

type RawValueType = <T as Type>::RawValueType

§

type RawElementValueType = <T as Type>::RawElementValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_none(&self) -> bool

source§

impl<T: Type> Type for &T

source§

const IS_REQUIRED: bool = T::IS_REQUIRED

§

type RawValueType = <T as Type>::RawValueType

§

type RawElementValueType = <T as Type>::RawElementValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl<T: Type> Type for Box<T>

source§

const IS_REQUIRED: bool = T::IS_REQUIRED

§

type RawValueType = <T as Type>::RawValueType

§

type RawElementValueType = <T as Type>::RawElementValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl<T: Type> Type for BTreeSet<T>

source§

const IS_REQUIRED: bool = true

§

type RawValueType = BTreeSet<T>

§

type RawElementValueType = <T as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl<T: Type> Type for Arc<T>

source§

const IS_REQUIRED: bool = T::IS_REQUIRED

§

type RawValueType = <T as Type>::RawValueType

§

type RawElementValueType = <T as Type>::RawElementValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

impl<T: Type> Type for Vec<T>

source§

const IS_REQUIRED: bool = true

§

type RawValueType = Vec<T>

§

type RawElementValueType = <T as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl<T: Type, R: Send + Sync> Type for HashSet<T, R>

source§

const IS_REQUIRED: bool = true

§

type RawValueType = HashSet<T, R>

§

type RawElementValueType = <T as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

source§

fn is_empty(&self) -> bool

source§

impl<T: Type, const LEN: usize> Type for [T; LEN]

source§

const IS_REQUIRED: bool = true

§

type RawValueType = [T; LEN]

§

type RawElementValueType = <T as Type>::RawValueType

source§

fn name() -> Cow<'static, str>

source§

fn schema_ref() -> MetaSchemaRef

source§

fn register(registry: &mut Registry)

source§

fn as_raw_value(&self) -> Option<&Self::RawValueType>

source§

fn raw_element_iter<'a>( &'a self ) -> Box<dyn Iterator<Item = &'a Self::RawElementValueType> + 'a>

Implementors§