Example #1
0
 /**
  * @param stdClass|null $value
  */
 public function __construct(stdClass $value = null)
 {
     if (null === $value) {
         $value = new stdClass();
     }
     foreach (get_object_vars($value) as $property => $subValue) {
         if (!is_string($property)) {
             throw new Exception\InvalidKeyException($property);
         }
         $this->valueTypeCheck($subValue);
     }
     parent::__construct($value);
 }
Example #2
0
 /**
  * @param array<integer,mixed>|null $value
  */
 public function __construct(array $value = null)
 {
     if (null === $value) {
         $value = array();
     }
     $expectedIndex = 0;
     foreach ($value as $index => $subValue) {
         if ($index !== $expectedIndex++) {
             throw new Exception\NonSequentialException(array_keys($value));
         }
         $this->valueTypeCheck($subValue);
     }
     parent::__construct($value);
 }
Example #3
0
 /**
  * @param DateTime $value
  */
 public function __construct(DateTime $value)
 {
     parent::__construct($value);
 }