А что это вообще такое?

       

Пример


@method[command]
^
switch[$command]{
   ^
case[add]{
      добавляем…
   }
   ^case[delete]{
      удаляем…
   }
   ^case[
DEFAULT]{
      ^throw[bad.command;$command;
Wrong command $command, good are add&delete]
   }
}

@
main[]
$action[format c:]
^
try{


   ^method[$action]
}{
   ^if($
exception.type eq bad.command){
      $exception.handled(1)
      
Неправильная команда '$exception.source', задана
      в файле 
$exception.file, в $exception.lineno строке.
   }
}


Результатом работы примера будет
Неправильная команда 'format c:', задана 
в файле c:/parser3tests/www/htdocs/throw.html, в 15 строке.

Обращаем ваше внимание на то, что пользователи вашего сайта не должны увидеть технические подробности в сообщениях об ошибках, тем более содержащие пути к файлам, это некрасиво и ненадежно.
Вывод $exception.file дан в качестве примера и настоятельно не рекомендуется к использованию на промышленных серверах - только для отладки.









Содержание раздела