예제 #1
0
 /**
  * Created StdString instance
  *
  * @param mixed $value The string value
  *
  * @return StdString
  *
  * @throws DomainException When the value is not valid
  */
 function stdString($value) : StdString
 {
     if (!Validate::isStringCastable($value)) {
         $message = sprintf('Invalid string value: %s', VarPrinter::toString($value));
         throw new DomainException($message);
     }
     if ($value instanceof StdString) {
         return $value;
     }
     /** @var StdString $string */
     $string = StdString::create((string) $value);
     return $string;
 }