aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/repository/repository_interface.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/repository/repository_interface.rs')
-rw-r--r--crates/shirabe/src/repository/repository_interface.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/crates/shirabe/src/repository/repository_interface.rs b/crates/shirabe/src/repository/repository_interface.rs
index 6113997..de37b5f 100644
--- a/crates/shirabe/src/repository/repository_interface.rs
+++ b/crates/shirabe/src/repository/repository_interface.rs
@@ -26,11 +26,13 @@ pub struct LoadPackagesResult {
pub packages: Vec<Box<dyn BasePackage>>,
}
+#[derive(Debug, Clone)]
pub enum AbandonedInfo {
Replacement(String),
Abandoned,
}
+#[derive(Debug, Clone)]
pub struct SearchResult {
pub name: String,
pub description: Option<String>,
@@ -38,6 +40,7 @@ pub struct SearchResult {
pub url: Option<String>,
}
+#[derive(Debug, Clone)]
pub struct ProviderInfo {
pub name: String,
pub description: Option<String>,
@@ -83,6 +86,13 @@ pub trait RepositoryInterface: Countable + std::fmt::Debug {
None
}
+ fn as_installed_repository_interface(
+ &self,
+ ) -> Option<&dyn crate::repository::installed_repository_interface::InstalledRepositoryInterface>
+ {
+ None
+ }
+
fn as_any(&self) -> &dyn std::any::Any;
fn clone_box(&self) -> Box<dyn RepositoryInterface> {