pub trait SourceWorld: World {
// Required methods
fn as_world(&self) -> &dyn World;
fn path_for_id(&self, id: FileId) -> Result<PathResolution, FileError>;
// Provided method
fn lookup(&self, id: FileId) -> Source { ... }
}
pub trait SourceWorld: World {
// Required methods
fn as_world(&self) -> &dyn World;
fn path_for_id(&self, id: FileId) -> Result<PathResolution, FileError>;
// Provided method
fn lookup(&self, id: FileId) -> Source { ... }
}