/** * validate * @param mixed $value * @return Date|DateTime|bool|float|int */ public function validate($value) { if ($this->isAsParsable()) { return $value; } else { $value = self::parseLexiconParameter($value); } switch ($this->getAllowedType()) { case Method::RETURN_BOOLEAN: $value = Assert::isBool($value); break; case Method::RETURN_DOUBLE: $value = Assert::isFloat($value); break; case Method::RETURN_INT: $value = Assert::isInt($value); break; case Method::RETURN_DATE: $value = new Date($value); break; case Method::RETURN_DATETIME: $value = new DateTime($value); break; } return $value; }
/** * String constructor. * @param bool $value */ public function __construct($value) { $value = Assert::isBool($value); $this->setValue($value); }