pub trait ScriptContentProvider<T> {
// Required methods
fn load(&mut self, path: &str) -> Result<Option<T>, Box<dyn Error>>;
fn join_paths(
&self,
parent: &str,
relative: &str,
) -> Result<String, Box<dyn Error>>;
// Provided methods
fn unpack_load(
&mut self,
path: &str,
) -> Result<Vec<ScriptContent<T>>, Box<dyn Error>> { ... }
fn sanitize_path(&self, path: &str) -> Result<String, Box<dyn Error>> { ... }
}Required Methods§
fn load(&mut self, path: &str) -> Result<Option<T>, Box<dyn Error>>
fn join_paths( &self, parent: &str, relative: &str, ) -> Result<String, Box<dyn Error>>
Provided Methods§
fn unpack_load( &mut self, path: &str, ) -> Result<Vec<ScriptContent<T>>, Box<dyn Error>>
fn sanitize_path(&self, path: &str) -> Result<String, Box<dyn Error>>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".