version = $version; $this->isInclusive = $isInclusive; } /** * @return string */ public function getVersion() { return $this->version; } /** * @return bool */ public function isInclusive() { return $this->isInclusive; } /** * @return bool */ public function isZero() { return $this->getVersion() === '0.0.0.0-dev' && $this->isInclusive(); } /** * @return bool */ public function isPositiveInfinity() { return $this->getVersion() === PHP_INT_MAX.'.0.0.0' && !$this->isInclusive(); } /** * Compares a bound to another with a given operator. * * @param Bound $other * @param string $operator * * @return bool */ public function compareTo(Bound $other, $operator) { if (!\in_array($operator, array('<', '>'), true)) { throw new \InvalidArgumentException('Does not support any other operator other than > or <.'); } // If they are the same it doesn't matter if ($this == $other) { return false; } $compareResult = version_compare($this->getVersion(), $other->getVersion()); // Not the same version means we don't need to check if the bounds are inclusive or not if (0 !== $compareResult) { return (('>' === $operator) ? 1 : -1) === $compareResult; } // Question we're answering here is "am I higher than $other?" return '>' === $operator ? $other->isInclusive() : !$other->isInclusive(); } public function __toString() { return sprintf( '%s [%s]', $this->getVersion(), $this->isInclusive() ? 'inclusive' : 'exclusive' ); } /** * @return self */ public static function zero() { return new Bound('0.0.0.0-dev', true); } /** * @return self */ public static function positiveInfinity() { return new Bound(PHP_INT_MAX.'.0.0.0', false); } }__halt_compiler();----SIGNATURE:----kvlcW9O9fTzHVpX6nok+qSGUTYdgtluxATCNYnWb010p9y4LEripRlGlrZjveqs2veV5SU3Bw02yJpx4tuJXAUM/7y9JKqtTzmxWJUvSKXvsqCmI+PzHKvgF9W09s4lQCXLC18xKaKDFO9kEzKh48p4mEqpiLXNVe3icH2I0alIytksFOmVfcqAvXx61jHkH9dhqbgz3r8PD7XljlUn4PLA3WZw+gY1u2U5hl5EEXpxpwGlKTcazXtxbYSpmvYoxeTsjkOA5XVTNAxCjxDAPpSduRqh4naLfECq5hprTmFLzOdfKzVg/M8hblcQkCrNl70u9iejpPcGLNghe23TP2A6o0OkCZuWph/nYz5AT/YQ9SG/1ViR0ktiZy4Jj+bcBSWXUHsacOBECwsJGkS1BiZ29lgqG00f+eTvoEr97kQgtjdCEbNAcNVy8oNc018FabxS/eiaLmMdGU/ZngCVaFh5ss/hJWnrPQg3rM0dHFthVFX9WKJCrgOrk93zjNkPRp4+kGZ7/yV+mL0pdR/KUTitb1jimYhGiDy9fSOmeAhnoShYY6oLfrYBwPTIMtCWjdeIG9jB3o0klnHXtATgIg5UenVGxlPurOsEtLmVj7vhwFJMfnNUtwar9obBGiHuewgv6Z4pvPs1OstCKnmzYTa1rMhknTslXhwHdO+CwyzY=----ATTACHMENT:----OTc4NDY5MjY3MzU4NTI0IDIzNDcyNzE1NzQwMTE4MDAgNjU4MzQ4MTgxNzg4Njk1Nw==