pub trait ModuleRepository {
// Required methods
fn exists(&self, id: &str) -> bool;
fn get(&self, id_or_name: &str) -> DomainResult<Module>;
fn list(&self) -> DomainResult<Vec<ModuleSummary>>;
}Expand description
Port for accessing module data.
Domain and adapters should depend on this interface rather than concrete storage details.
Required Methods§
Sourcefn get(&self, id_or_name: &str) -> DomainResult<Module>
fn get(&self, id_or_name: &str) -> DomainResult<Module>
Get a module by ID or full name.
Sourcefn list(&self) -> DomainResult<Vec<ModuleSummary>>
fn list(&self) -> DomainResult<Vec<ModuleSummary>>
List all modules.