Trait sdml_core::load::ModuleLoader
source · pub trait ModuleLoader: Default {
// Required methods
fn load(
&mut self,
name: &Identifier,
from: Option<FileId>,
cache: &mut ModuleCache,
recursive: bool,
) -> Result<Identifier, Error>;
fn resolver(&self) -> &impl ModuleResolver;
fn get_file_id(&self, name: &Identifier) -> Option<FileId>;
fn get_source(&self, file_id: FileId) -> Option<Source>;
fn report(&self, diagnostic: &Diagnostic) -> Result<(), Error>;
fn reporter_done(
&self,
top_module_name: Option<String>,
) -> Result<(), Error>;
fn set_severity_filter(&mut self, filter: SeverityFilter);
// Provided method
fn get_source_by_name(&self, name: &Identifier) -> Option<Source> { ... }
}
Required Methods§
fn load( &mut self, name: &Identifier, from: Option<FileId>, cache: &mut ModuleCache, recursive: bool, ) -> Result<Identifier, Error>
fn resolver(&self) -> &impl ModuleResolver
fn get_file_id(&self, name: &Identifier) -> Option<FileId>
fn get_source(&self, file_id: FileId) -> Option<Source>
fn report(&self, diagnostic: &Diagnostic) -> Result<(), Error>
fn reporter_done(&self, top_module_name: Option<String>) -> Result<(), Error>
fn set_severity_filter(&mut self, filter: SeverityFilter)
Provided Methods§
fn get_source_by_name(&self, name: &Identifier) -> Option<Source>
Object Safety§
This trait is not object safe.