PHPCfg\Assertion::__construct PHP Method

__construct() public method

public __construct ( Assertion[] | Operand $value, $mode = self::MODE_NONE )
$value Assertion[] | Operand
    public function __construct($value, $mode = self::MODE_NONE)
    {
        if (empty($value)) {
            throw new \RuntimeException("Empty value supplied for Assertion");
        } elseif (is_array($value)) {
            foreach ($value as $v) {
                if (!$v instanceof Assertion) {
                    throw new \RuntimeException("Invalid array key supplied for Assertion");
                }
            }
            if ($mode !== self::MODE_UNION && $mode !== self::MODE_INTERSECTION) {
                throw new \RuntimeException("Invalid mode supplied for Assertion");
            }
            $this->mode = $mode;
        } elseif (!$value instanceof Operand) {
            throw new \RuntimeException("Invalid value supplied for Assertion: ");
        } else {
            $this->mode = self::MODE_NONE;
        }
        $this->value = $value;
    }

Usage Example

Example #1
0
 /**
  * @param Assertion[]|Operand $value
  */
 public function __construct($value)
 {
     parent::__construct($value, self::MODE_INTERSECTION);
 }