diff options
Diffstat (limited to 'vendor/zendframework/zend-validator/src/Bitwise.php')
-rw-r--r-- | vendor/zendframework/zend-validator/src/Bitwise.php | 192 |
1 files changed, 0 insertions, 192 deletions
diff --git a/vendor/zendframework/zend-validator/src/Bitwise.php b/vendor/zendframework/zend-validator/src/Bitwise.php deleted file mode 100644 index 7f676cf..0000000 --- a/vendor/zendframework/zend-validator/src/Bitwise.php +++ /dev/null @@ -1,192 +0,0 @@ -<?php -/** - * Zend Framework (http://framework.zend.com/) - * - * @link http://github.com/zendframework/zf2 for the canonical source repository - * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) - * @license http://framework.zend.com/license/new-bsd New BSD License - */ - -namespace Zend\Validator; - -use Traversable; - -class Bitwise extends AbstractValidator -{ - const OP_AND = 'and'; - const OP_XOR = 'xor'; - - const NOT_AND = 'notAnd'; - const NOT_AND_STRICT = 'notAndStrict'; - const NOT_XOR = 'notXor'; - - /** - * @var integer - */ - protected $control; - - /** - * Validation failure message template definitions - * - * @var array - */ - protected $messageTemplates = array( - self::NOT_AND => "The input has no common bit set with '%control%'", - self::NOT_AND_STRICT => "The input doesn't have the same bits set as '%control%'", - self::NOT_XOR => "The input has common bit set with '%control%'", - ); - - /** - * Additional variables available for validation failure messages - * - * @var array - */ - protected $messageVariables = array( - 'control' => 'control', - ); - - /** - * @var integer - */ - protected $operator; - - /** - * @var boolean - */ - protected $strict = false; - - /** - * Sets validator options - * Accepts the following option keys: - * 'control' => integer - * 'operator' => - * 'strict' => boolean - * - * @param array|Traversable $options - */ - public function __construct($options = null) - { - if ($options instanceof Traversable) { - $options = iterator_to_array($options); - } - - if (!is_array($options)) { - $options = func_get_args(); - - $temp['control'] = array_shift($options); - - if (!empty($options)) { - $temp['operator'] = array_shift($options); - } - - if (!empty($options)) { - $temp['strict'] = array_shift($options); - } - - $options = $temp; - } - - parent::__construct($options); - } - - /** - * Returns the control parameter. - * - * @return integer - */ - public function getControl() - { - return $this->control; - } - - /** - * Returns the operator parameter. - * - * @return string - */ - public function getOperator() - { - return $this->operator; - } - - /** - * Returns the strict parameter. - * - * @return boolean - */ - public function getStrict() - { - return $this->strict; - } - - /** - * Returns true if and only if $value is between min and max options, inclusively - * if inclusive option is true. - * - * @param mixed $value - * @return bool - */ - public function isValid($value) - { - $this->setValue($value); - - if (self::OP_AND === $this->operator) { - if ($this->strict) { - // All the bits set in value must be set in control - $this->error(self::NOT_AND_STRICT); - - return (bool) (($this->control & $value) == $value); - } else { - // At least one of the bits must be common between value and control - $this->error(self::NOT_AND); - - return (bool) ($this->control & $value); - } - } elseif (self::OP_XOR === $this->operator) { - $this->error(self::NOT_XOR); - - return (bool) (($this->control ^ $value) === ($this->control | $value)); - } - - return false; - } - - /** - * Sets the control parameter. - * - * @param integer $control - * @return Bitwise - */ - public function setControl($control) - { - $this->control = (int) $control; - - return $this; - } - - /** - * Sets the operator parameter. - * - * @param string $operator - * @return Bitwise - */ - public function setOperator($operator) - { - $this->operator = $operator; - - return $this; - } - - /** - * Sets the strict parameter. - * - * @param boolean $strict - * @return Bitwise - */ - public function setStrict($strict) - { - $this->strict = (bool) $strict; - - return $this; - } -} |