pub struct Filter<L, F> { /* private fields */ }
Expand description
The resulting loader for the ImportLoader::filter
method.
Trait Implementations§
Source§impl<L: ImportLoader, F> ImportLoader for Filter<L, F>
impl<L: ImportLoader, F> ImportLoader for Filter<L, F>
Source§fn resolve(
&self,
current: Option<&str>,
path: &str,
) -> Result<String, Box<dyn Error + 'static>>
fn resolve( &self, current: Option<&str>, path: &str, ) -> Result<String, Box<dyn Error + 'static>>
Returns the absolute import path for a module, given a base and an optional
path. The base might be set to
None
in some cases (e.g., when loading Ryan
from a string, not a file). Each loader implementation can choose how to treat
this value however it’s expedient.Source§fn load(&self, path: &str) -> Result<Box<dyn Read>, Box<dyn Error + 'static>>
fn load(&self, path: &str) -> Result<Box<dyn Read>, Box<dyn Error + 'static>>
Resolves an absolute path into a reader, where a Ryan module can be read from.
Source§fn override(self, path: String, value: String) -> Override<Self>where
Self: Sized,
fn override(self, path: String, value: String) -> Override<Self>where
Self: Sized,
Overrides a single path to be represented by a different model than would be
represented by this loader.
Source§fn block(self, path: String) -> Override<Self>where
Self: Sized,
fn block(self, path: String) -> Override<Self>where
Self: Sized,
Blocks a path from being resolved as a module.
Source§fn override_many(
self,
overrides: HashMap<String, Option<String>>,
) -> Override<Self>where
Self: Sized,
fn override_many(
self,
overrides: HashMap<String, Option<String>>,
) -> Override<Self>where
Self: Sized,
Overrides the value imported by multiple paths. Pass
None
as the value associated
to a key in the hashmap to deny access to a given path.Source§fn filter<F>(self, filter: F) -> Filter<Self, F>
fn filter<F>(self, filter: F) -> Filter<Self, F>
Determines whether a path should be blocked or loaded based on a supplied closure.
Source§fn with_resolver<F, E>(self, resolver: F) -> WithResolver<Self, F>
fn with_resolver<F, E>(self, resolver: F) -> WithResolver<Self, F>
Change the
resolve
method of the underlying loader.Source§fn with_loader<F, R, E>(self, loader: F) -> WithLoader<Self, F>
fn with_loader<F, R, E>(self, loader: F) -> WithLoader<Self, F>
Change the
load
method of the underlying loader.Auto Trait Implementations§
impl<L, F> Freeze for Filter<L, F>
impl<L, F> RefUnwindSafe for Filter<L, F>where
L: RefUnwindSafe,
F: RefUnwindSafe,
impl<L, F> Send for Filter<L, F>
impl<L, F> Sync for Filter<L, F>
impl<L, F> Unpin for Filter<L, F>
impl<L, F> UnwindSafe for Filter<L, F>where
L: UnwindSafe,
F: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more