Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. PoolOptimizer.php

function PoolOptimizer::expandDisjunctiveMultiConstraints

Return value

ConstraintInterface[]

2 calls to PoolOptimizer::expandDisjunctiveMultiConstraints()
PoolOptimizer::extractConflictConstraintsPerPackage in vendor/composer/composer/src/Composer/DependencyResolver/PoolOptimizer.php
Disjunctive conflict constraints need to be considered in their own group. E.g. "^2.14 || ^3.3" needs to generate two conflict constraint groups in order for us to keep the best matching package for "^2.14" AND "^3.3" as…
PoolOptimizer::extractRequireConstraintsPerPackage in vendor/composer/composer/src/Composer/DependencyResolver/PoolOptimizer.php
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…

File

vendor/composer/composer/src/Composer/DependencyResolver/PoolOptimizer.php, line 462

Class

PoolOptimizer
Optimizes a given pool

Namespace

Composer\DependencyResolver

Code

private function expandDisjunctiveMultiConstraints(ConstraintInterface $constraint) {
    $constraint = Intervals::compactConstraint($constraint);
    if ($constraint instanceof MultiConstraint && $constraint->isDisjunctive()) {
        // No need to call ourselves recursively here because Intervals::compactConstraint() ensures that there
        // are no nested disjunctive MultiConstraint instances possible
        return $constraint->getConstraints();
    }
    // Regular constraints and conjunctive MultiConstraints
    return [
        $constraint,
    ];
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal