aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/dependency_resolver/policy_interface.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/dependency_resolver/policy_interface.rs')
-rw-r--r--crates/shirabe/src/dependency_resolver/policy_interface.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/crates/shirabe/src/dependency_resolver/policy_interface.rs b/crates/shirabe/src/dependency_resolver/policy_interface.rs
index 8627a9e..279cf38 100644
--- a/crates/shirabe/src/dependency_resolver/policy_interface.rs
+++ b/crates/shirabe/src/dependency_resolver/policy_interface.rs
@@ -1 +1,10 @@
//! ref: composer/src/Composer/DependencyResolver/PolicyInterface.php
+
+use crate::dependency_resolver::pool::Pool;
+use crate::package::package_interface::PackageInterface;
+
+pub trait PolicyInterface {
+ fn version_compare(&self, a: &dyn PackageInterface, b: &dyn PackageInterface, operator: &str) -> bool;
+
+ fn select_preferred_packages(&self, pool: &Pool, literals: Vec<i64>, required_package: Option<String>) -> Vec<i64>;
+}