Mercurial > hg > isophonics-drupal-site
annotate vendor/phpspec/prophecy/src/Prophecy/Argument/Token/LogicalNotToken.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 4c8ae668cc8c |
children |
rev | line source |
---|---|
Chris@0 | 1 <?php |
Chris@0 | 2 |
Chris@0 | 3 /* |
Chris@0 | 4 * This file is part of the Prophecy. |
Chris@0 | 5 * (c) Konstantin Kudryashov <ever.zet@gmail.com> |
Chris@0 | 6 * Marcello Duarte <marcello.duarte@gmail.com> |
Chris@0 | 7 * |
Chris@0 | 8 * For the full copyright and license information, please view the LICENSE |
Chris@0 | 9 * file that was distributed with this source code. |
Chris@0 | 10 */ |
Chris@0 | 11 |
Chris@0 | 12 namespace Prophecy\Argument\Token; |
Chris@0 | 13 |
Chris@0 | 14 /** |
Chris@0 | 15 * Logical NOT token. |
Chris@0 | 16 * |
Chris@0 | 17 * @author Boris Mikhaylov <kaguxmail@gmail.com> |
Chris@0 | 18 */ |
Chris@0 | 19 class LogicalNotToken implements TokenInterface |
Chris@0 | 20 { |
Chris@0 | 21 /** @var \Prophecy\Argument\Token\TokenInterface */ |
Chris@0 | 22 private $token; |
Chris@0 | 23 |
Chris@0 | 24 /** |
Chris@0 | 25 * @param mixed $value exact value or token |
Chris@0 | 26 */ |
Chris@0 | 27 public function __construct($value) |
Chris@0 | 28 { |
Chris@0 | 29 $this->token = $value instanceof TokenInterface? $value : new ExactValueToken($value); |
Chris@0 | 30 } |
Chris@0 | 31 |
Chris@0 | 32 /** |
Chris@0 | 33 * Scores 4 when preset token does not match the argument. |
Chris@0 | 34 * |
Chris@0 | 35 * @param $argument |
Chris@0 | 36 * |
Chris@0 | 37 * @return bool|int |
Chris@0 | 38 */ |
Chris@0 | 39 public function scoreArgument($argument) |
Chris@0 | 40 { |
Chris@0 | 41 return false === $this->token->scoreArgument($argument) ? 4 : false; |
Chris@0 | 42 } |
Chris@0 | 43 |
Chris@0 | 44 /** |
Chris@0 | 45 * Returns true if preset token is last. |
Chris@0 | 46 * |
Chris@0 | 47 * @return bool|int |
Chris@0 | 48 */ |
Chris@0 | 49 public function isLast() |
Chris@0 | 50 { |
Chris@0 | 51 return $this->token->isLast(); |
Chris@0 | 52 } |
Chris@0 | 53 |
Chris@0 | 54 /** |
Chris@0 | 55 * Returns originating token. |
Chris@0 | 56 * |
Chris@0 | 57 * @return TokenInterface |
Chris@0 | 58 */ |
Chris@0 | 59 public function getOriginatingToken() |
Chris@0 | 60 { |
Chris@0 | 61 return $this->token; |
Chris@0 | 62 } |
Chris@0 | 63 |
Chris@0 | 64 /** |
Chris@0 | 65 * Returns string representation for token. |
Chris@0 | 66 * |
Chris@0 | 67 * @return string |
Chris@0 | 68 */ |
Chris@0 | 69 public function __toString() |
Chris@0 | 70 { |
Chris@0 | 71 return sprintf('not(%s)', $this->token); |
Chris@0 | 72 } |
Chris@0 | 73 } |