aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/repository/installed_array_repository.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/repository/installed_array_repository.rs')
-rw-r--r--crates/shirabe/src/repository/installed_array_repository.rs14
1 files changed, 12 insertions, 2 deletions
diff --git a/crates/shirabe/src/repository/installed_array_repository.rs b/crates/shirabe/src/repository/installed_array_repository.rs
index c30d682..ddcda90 100644
--- a/crates/shirabe/src/repository/installed_array_repository.rs
+++ b/crates/shirabe/src/repository/installed_array_repository.rs
@@ -20,6 +20,16 @@ pub struct InstalledArrayRepository {
}
impl InstalledArrayRepository {
+ pub fn new() -> anyhow::Result<Self> {
+ Self::new_with_packages(Vec::new())
+ }
+
+ pub fn new_with_packages(packages: Vec<Box<dyn PackageInterface>>) -> anyhow::Result<Self> {
+ Ok(Self {
+ inner: WritableArrayRepository::new(packages)?,
+ })
+ }
+
pub fn get_repo_name(&self) -> String {
format!("installed {}", self.inner.get_repo_name())
}
@@ -89,14 +99,14 @@ impl RepositoryInterface for InstalledArrayRepository {
}
fn find_package(
&self,
- _name: String,
+ _name: &str,
_constraint: FindPackageConstraint,
) -> Option<Box<dyn BasePackage>> {
todo!()
}
fn find_packages(
&self,
- _name: String,
+ _name: &str,
_constraint: Option<FindPackageConstraint>,
) -> Vec<Box<dyn BasePackage>> {
todo!()