Ошибка
Имя
Ошибка — Создать ошибкуСинопсис
ошибка сообщение ?информация? ?код?Описание
Возвращает код TCL_ERROR, который вызывает отмену интерпретации команды. Сообщение — это строка, которая возвращается приложению, чтобы указать, что пошло не так.Опция возврата интерпретатора -errorinfo используется для накопления стека вызовов, которые были в процессе выполнения при возникновении ошибки; по мере отмены вложенных команд интерпретатор Tcl добавляет информацию в опцию возврата -errorinfo. Если аргумент информация присутствует, он используется для инициализации опций возврата -errorinfo, и первая информация об отмене не будет добавлена интерпретатором Tcl. Другими словами, команда, содержащая команду ошибка, не будет отображаться в стеке вызовов; вместо неё будет информация. Исторически эта функция была наиболее полезна в сочетании с командой catch: если пойманная ошибка не может быть обработана успешно, информация может быть использована для возврата стека вызовов, отражающего исходную точку возникновения ошибки:
catch {...} errMsg
set savedInfo $::errorInfo
...
error $errMsg $savedInfo При работе с Tcl 8.5 или более поздней версией следует использовать следующий код:
catch {...} errMsg options
...
return -options $options $errMsg Если аргумент код присутствует, его значение сохраняется в опции возврата -errorcode. Опция возврата -errorcode предназначена для хранения машиночитаемого описания ошибки в тех случаях, когда такая информация доступна; см. руководство по команде return для получения информации о правильном формате значения этой опции.
Пример
Сгенерировать ошибку, если базовое математическое действие завершается неудачей:if {1+2 != 3} {
error "something is very wrong with addition"
} См. также
catch, return
Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TclCmd/error.htm
Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TclCmd/error.htm