Struct vector_config_common::schema::SchemaGenerator

source ·
pub struct SchemaGenerator { /* private fields */ }
Expand description

Schema generator.

This is the main entrypoint for storing the defined schemas within a given root schema, and referencing existing schema definitions.

Implementations§

source§

impl SchemaGenerator

source

pub fn new(settings: SchemaSettings) -> SchemaGenerator

Creates a new SchemaGenerator using the given settings.

source

pub fn settings(&self) -> &SchemaSettings

Gets the SchemaSettings being used by this SchemaGenerator.

source

pub fn definitions(&self) -> &Map<String, Schema>

Borrows the collection of all referenceable schemas that have been generated.

The keys of the returned Map are the schema names, and the values are the schemas themselves.

source

pub fn definitions_mut(&mut self) -> &mut Map<String, Schema>

Mutably borrows the collection of all referenceable schemas that have been generated.

The keys of the returned Map are the schema names, and the values are the schemas themselves.

source

pub fn dereference<'a>(&'a self, schema: &Schema) -> Option<&'a Schema>

Attempts to find the schema that the given schema is referencing.

If the given schema has a $ref property which refers to another schema in self’s schema definitions, the referenced schema will be returned. Otherwise, returns None.

source

pub fn into_root_schema(self, root_schema: SchemaObject) -> RootSchema

Converts this generator into a root schema, using the given root_schema as the top-level definition.

This assumes the root schema was generated using this generator, such that any schema definitions referenced by root_schema refer to this generator.

All other relevant settings (i.e. meta-schema) are carried over.

Trait Implementations§

source§

impl Debug for SchemaGenerator

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for SchemaGenerator

source§

fn default() -> SchemaGenerator

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

impl From<SchemaSettings> for SchemaGenerator

source§

fn from(settings: SchemaSettings) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

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> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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, U> TryFrom<U> for T
where U: Into<T>,

§

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>,

§

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.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more