aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/repository/lock_array_repository.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/repository/lock_array_repository.rs')
-rw-r--r--crates/shirabe/src/repository/lock_array_repository.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/crates/shirabe/src/repository/lock_array_repository.rs b/crates/shirabe/src/repository/lock_array_repository.rs
index f9b64a7..08e888a 100644
--- a/crates/shirabe/src/repository/lock_array_repository.rs
+++ b/crates/shirabe/src/repository/lock_array_repository.rs
@@ -19,13 +19,19 @@ pub struct LockArrayRepository {
impl CanonicalPackagesTrait for LockArrayRepository {
fn get_packages(&self) -> Vec<PackageInterfaceHandle> {
- todo!()
+ RepositoryInterface::get_packages(&self.inner)
}
}
impl LockArrayRepository {
- pub fn clone_box(&self) -> Box<dyn RepositoryInterface> {
- todo!()
+ pub fn new(packages: Vec<PackageInterfaceHandle>) -> anyhow::Result<Self> {
+ Ok(Self {
+ inner: ArrayRepository::new(packages)?,
+ })
+ }
+
+ pub fn add_package(&self, package: PackageInterfaceHandle) -> anyhow::Result<()> {
+ self.inner.add_package(package)
}
}