error(3tcl) Tcl Built-In Commands error(3tcl)

error - 产生一个错误

error message ?info? ?code?

返回一个 TCL_ERROR 代码,这个代码将终止(unwind ? 松开)命令解释。向应用返回Message ,用来指示出了什么错误的一个字符串

如果提供了非空的 info 参数,它被用于初始化全局变量 errorInfoerrorInfo 用于积累关于在发生错误时正在处理什么的一个栈追踪;在嵌套命令终止的同时,Tcl 解释器向 errorInfo 添加信息。如果存在 info 参数,则用它来初始化 errorInfo 并且 Tcl 解释器不向它添加终止信息的第一个增长。换句话说,包含 error 命令的命令将不出现在 errorInfo 中,在它的位置上的将是 info。这个特征与 catch命令联合使用很有用: 如果一个捕捉到的错误不能被正确处理,使用 info返回一个栈追踪来反映错误发生的原始点:

catch {...} errMsg
set savedInfo $errorInfo
...
error $errMsg $savedInfo

如果存在 code 参数,则在 errorCode 全局变量中存储它的值。在可获得错误信息的情况下,要用这个变量来持有一个机器可读的错误描述;参见 tclvars 手册页来得到关于这个变量的正确格式的信息。如果不存在 code 参数,则 errorCode 被 Tcl 解释器作为处理命令生成的错误的一部分而自动的重置为“NONE”。

catch(n), tclvars(n)

error, errorCode, errorInfo

寒蝉退士

2001/06/21

http://cmpp.linuxforum.net

本页面中文版由中文 man 手册页计划提供。
中文 man 手册页计划:https://github.com/man-pages-zh/manpages-zh
Tcl