diff options
Diffstat (limited to 'vendor/phpspec/prophecy/src/Prophecy/Argument/Token/NotInArrayToken.php')
-rw-r--r-- | vendor/phpspec/prophecy/src/Prophecy/Argument/Token/NotInArrayToken.php | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/vendor/phpspec/prophecy/src/Prophecy/Argument/Token/NotInArrayToken.php b/vendor/phpspec/prophecy/src/Prophecy/Argument/Token/NotInArrayToken.php new file mode 100644 index 000000000..6aed8aa50 --- /dev/null +++ b/vendor/phpspec/prophecy/src/Prophecy/Argument/Token/NotInArrayToken.php @@ -0,0 +1,75 @@ +<?php + +/* + * This file is part of the Prophecy. + * (c) Konstantin Kudryashov <[email protected]> + * Marcello Duarte <[email protected]> + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Prophecy\Argument\Token; + +/** + * Check if values is not in array + * + * @author VinÃcius Alonso <[email protected]> + */ +class NotInArrayToken implements TokenInterface +{ + private $token = array(); + private $strict; + + /** + * @param array $arguments tokens + * @param bool $strict + */ + public function __construct(array $arguments, $strict = true) + { + $this->token = $arguments; + $this->strict = $strict; + } + + /** + * Return scores 8 score if argument is in array. + * + * @param $argument + * + * @return bool|int + */ + public function scoreArgument($argument) + { + if (count($this->token) === 0) { + return false; + } + + if (!\in_array($argument, $this->token, $this->strict)) { + return 8; + } + + return false; + } + + /** + * Returns false. + * + * @return boolean + */ + public function isLast() + { + return false; + } + + /** + * Returns string representation for token. + * + * @return string + */ + public function __toString() + { + $arrayAsString = implode(', ', $this->token); + return "[{$arrayAsString}]"; + } +} + |