pub trait Loader<H> {
type Class;
// Required methods
fn program(&mut self, name: &str) -> Result<LoadedProgram<H>, LoadError>;
fn holder(&self, entry: &str) -> Option<String>;
fn entry(program: &H, name: &str) -> Option<usize>;
fn shape(program: &H) -> (usize, usize);
fn class(
&mut self,
external: &str,
) -> Result<Option<FoundClass<Self::Class>>, String>;
}Expand description
Where CALL finds programs, and what the run unit needs to know about one it loaded.
Required Associated Types§
Required Methods§
Sourcefn program(&mut self, name: &str) -> Result<LoadedProgram<H>, LoadError>
fn program(&mut self, name: &str) -> Result<LoadedProgram<H>, LoadError>
The program whose PROGRAM-ID CALL names, compiled.
Sourcefn holder(&self, entry: &str) -> Option<String>
fn holder(&self, entry: &str) -> Option<String>
The PROGRAM-ID of a program not yet loaded that has an ENTRY of this name.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".