annotate vendor/phar-io/version/src/AndVersionConstraintGroup.php @ 5:12f9dff5fda9 tip

Update to Drupal core 8.7.1
author Chris Cannam
date Thu, 09 May 2019 15:34:47 +0100
parents 5311817fb629
children
rev   line source
Chris@2 1 <?php
Chris@2 2 /*
Chris@2 3 * This file is part of PharIo\Version.
Chris@2 4 *
Chris@2 5 * (c) Arne Blankerts <arne@blankerts.de>, Sebastian Heuer <sebastian@phpeople.de>, Sebastian Bergmann <sebastian@phpunit.de>
Chris@2 6 *
Chris@2 7 * For the full copyright and license information, please view the LICENSE
Chris@2 8 * file that was distributed with this source code.
Chris@2 9 */
Chris@2 10
Chris@2 11 namespace PharIo\Version;
Chris@2 12
Chris@2 13 class AndVersionConstraintGroup extends AbstractVersionConstraint {
Chris@2 14 /**
Chris@2 15 * @var VersionConstraint[]
Chris@2 16 */
Chris@2 17 private $constraints = [];
Chris@2 18
Chris@2 19 /**
Chris@2 20 * @param string $originalValue
Chris@2 21 * @param VersionConstraint[] $constraints
Chris@2 22 */
Chris@2 23 public function __construct($originalValue, array $constraints) {
Chris@2 24 parent::__construct($originalValue);
Chris@2 25
Chris@2 26 $this->constraints = $constraints;
Chris@2 27 }
Chris@2 28
Chris@2 29 /**
Chris@2 30 * @param Version $version
Chris@2 31 *
Chris@2 32 * @return bool
Chris@2 33 */
Chris@2 34 public function complies(Version $version) {
Chris@2 35 foreach ($this->constraints as $constraint) {
Chris@2 36 if (!$constraint->complies($version)) {
Chris@2 37 return false;
Chris@2 38 }
Chris@2 39 }
Chris@2 40
Chris@2 41 return true;
Chris@2 42 }
Chris@2 43 }