/**
  * Default constructor
  *
  * @param string $operand The operand to check
  * @param string $type    The type are are checking against
  */
 public function __construct($operand, $type)
 {
     $this->operand = $operand;
     $this->type = $type;
     $this->comparator = '===';
     parent::__construct();
 }
 /**
  * Default constructor
  *
  * @param string $operand The operand we have to check
  * @param string $type    The type we have to check for
  */
 public function __construct($operand, $type)
 {
     $this->operand = $operand;
     $this->validatesTo = true;
     $this->type = $type;
     parent::__construct();
 }
 /**
  * Default constructor
  *
  * @param string $firstOperand  The first operand to compare
  * @param string $secondOperand The second operand to compare
  * @param string $operator      The operator used for comparison
  */
 public function __construct($firstOperand = '', $secondOperand = '', $operator = '')
 {
     $this->firstOperand = $firstOperand;
     $this->secondOperand = $secondOperand;
     $this->operator = $operator;
     // Set the mapping for our inversion
     $this->inversionMapping = array('==' => '!=', '===' => '!==', '<>' => '==', '<' => '>=', '>' => '<=', '<=' => '>', '>=' => '<', '!=' => '==', '!==' => '===');
     parent::__construct();
 }
 /**
  * Default constructor
  *
  * @param string $constraint Php code string we want to execute as an assertion
  */
 public function __construct($constraint)
 {
     $this->constraint = $constraint;
     parent::__construct();
 }
 /**
  * Default constructor
  *
  * @param string $operand The operand we have to check
  * @param string $class   The name of the class we have to check for
  */
 public function __construct($operand, $class)
 {
     $this->operand = $operand;
     $this->class = $class;
     parent::__construct();
 }