code: protected static function parseTypeIfValidate($v, ?string &$err = null, string $type) 
      {
          $err = null;
          if (static::validate($v) === false || $v === undefined) {
              $err = "error.st.unexpected.type";
          } else {
              switch (strtolower($type)) {
                  case "bool":
                      $v = TryParse::toBool($v);
                      break;
  
                  case "string":
                      $v = TryParse::toString($v);
                      break;
              }
              
          }
          return $v;
      }
docs: Efetua a conversão do valor indicado para o tipo que esta classe
  representa apenas se passar na validação.
  
  Caso não passe na validação, retornará um código que identifica
  o erro ocorrido na variável "$err".
  
  @param       mixed $v
  Valor que será convertido.
  
  @param       ?string $err
  Código do erro da validação.
  
  @param       string $type
  Tipo que deve ser retornado.
  
  @return      mixed