function PoolOptimizer::extractRequireConstraintsPerPackage
Disjunctive require constraints need to be considered in their own group. E.g. "^2.14 || ^3.3" needs to generate two require constraint groups in order for us to keep the best matching package for "^2.14" AND "^3.3" as otherwise, we'd only keep either one which can cause trouble (e.g. when using --prefer-lowest).
Return value
void
1 call to PoolOptimizer::extractRequireConstraintsPerPackage()
- PoolOptimizer::prepare in vendor/
composer/ composer/ src/ Composer/ DependencyResolver/ PoolOptimizer.php
File
-
vendor/
composer/ composer/ src/ Composer/ DependencyResolver/ PoolOptimizer.php, line 438
Class
- PoolOptimizer
- Optimizes a given pool
Namespace
Composer\DependencyResolverCode
private function extractRequireConstraintsPerPackage(string $package, ConstraintInterface $constraint) {
foreach ($this->expandDisjunctiveMultiConstraints($constraint) as $expanded) {
$this->requireConstraintsPerPackage[$package][(string) $expanded] = $expanded;
}
}