Skip to main content

LoaderChain

Struct LoaderChain 

Source
pub struct LoaderChain { /* private fields */ }
Expand description

Composite loader that chains multiple loaders.

Loaders are tried in priority order (highest first) until one can handle the requested location.

Implementations§

Source§

impl LoaderChain

Source

pub fn new() -> Self

Create a new empty loader chain.

Source

pub fn with_defaults() -> Self

Create a loader chain with default loaders (embedded + filesystem).

Source

pub fn add(&mut self, loader: Box<dyn SchemaLoader>)

Add a loader to the chain.

Loaders are automatically sorted by priority (highest first).

Source

pub fn len(&self) -> usize

Get the number of loaders in the chain.

Source

pub fn is_empty(&self) -> bool

Check if the chain is empty.

Trait Implementations§

Source§

impl Debug for LoaderChain

Source§

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

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

impl Default for LoaderChain

Source§

fn default() -> LoaderChain

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

impl SchemaLoader for LoaderChain

Source§

fn load(&self, location: &str) -> SchemaResult<String>

Load schema content from the given location. Read more
Source§

fn can_load(&self, location: &str) -> bool

Check if this loader can handle the given location. Read more
Source§

fn priority(&self) -> i32

Priority for loader chain (higher = checked first). Read more

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> ErasedDestructor for T
where T: 'static,

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

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.