You are here

abstract class AbstractConstraint in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/composer/semver/src/Constraint/AbstractConstraint.php \Composer\Semver\Constraint\AbstractConstraint

Base constraint class.

Hierarchy

Expanded class hierarchy of AbstractConstraint

File

vendor/composer/semver/src/Constraint/AbstractConstraint.php, line 17

Namespace

Composer\Semver\Constraint
View source
abstract class AbstractConstraint implements ConstraintInterface {

  /** @var string */
  protected $prettyString;

  /**
   * @param ConstraintInterface $provider
   *
   * @return bool
   */
  public function matches(ConstraintInterface $provider) {
    if ($provider instanceof MultiConstraint) {

      // turn matching around to find a match
      return $provider
        ->matches($this);
    }
    if ($provider instanceof $this) {

      // see note at bottom of this class declaration
      return $this
        ->matchSpecific($provider);
    }
    return true;
  }

  /**
   * @param string $prettyString
   */
  public function setPrettyString($prettyString) {
    $this->prettyString = $prettyString;
  }

  /**
   * @return string
   */
  public function getPrettyString() {
    if ($this->prettyString) {
      return $this->prettyString;
    }
    return $this
      ->__toString();
  }

}

Members