/**
  * @param string $originalValue
  * @param int    $major
  * @param int    $minor
  */
 public function __construct($originalValue, $major, $minor)
 {
     parent::__construct($originalValue);
     $this->major = $major;
     $this->minor = $minor;
 }
 /**
  * @param string              $originalValue
  * @param VersionConstraint[] $constraints
  */
 public function __construct($originalValue, array $constraints)
 {
     parent::__construct($originalValue);
     $this->constraints = $constraints;
 }
 /**
  * @param string  $originalValue
  * @param Version $minimalVersion
  */
 public function __construct($originalValue, Version $minimalVersion)
 {
     parent::__construct($originalValue);
     $this->minimalVersion = $minimalVersion;
 }