aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/dependency_resolver/policy_interface.rs
blob: 279cf38337b281b15983ba2fc9222a1446c63383 (plain)
1
2
3
4
5
6
7
8
9
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>;
}