Trait sdml_parse::ModuleLoader
source · pub trait ModuleLoader: Debug {
// Required methods
fn load(&self, name: &Identifier) -> Result<ModuleRef, Error>;
fn load_from_file(&self, file: PathBuf) -> Result<ModuleRef, Error>;
fn load_from_reader(
&self,
reader: &mut dyn Read
) -> Result<ModuleRef, Error>;
fn adopt(&self, module: ModuleRef);
fn contains(&self, name: &Identifier) -> bool;
fn get(&self, name: &Identifier) -> Option<ModuleRef>;
fn get_source(&self, name: &Identifier) -> Option<Box<dyn AsRef<str>>>;
fn resolver(&self) -> Rc<dyn ModuleResolver>;
// Provided method
fn adopt_raw(&self, module: Module) { ... }
}
Expand description
TBD
Note this trait does not require mutability even for clearly mutating operations.