在Tcl中的代码中绕过exit

时间:2015-11-18 09:56:07

标签: tcl exit

让我们假设我有proc foo。 proc代码是:

proc foo { argy } {
   if { $argy == 1 } { exit 1 }
}

我想调用foo,但让调用代码绕过/忽略exit命令,而不是退出TCL。即:这段代码:

foo 1
puts "bar"

应该屈服:

>bar

任何想法?
谢谢。

1 个答案:

答案 0 :(得分:4)

使用rename覆盖默认行为。

rename exit _exit
proc exit {{status ""}} {}

在代码中第一次出现exit命令之前保留上述代码。即使在您的代码开头,也可以使用此虚拟exit过程替换exit