【发布时间】:2021-12-16 02:26:25
【问题描述】:
我正在寻找一种将脚本转换为其完全硬编码版本的方法。我什至不知道这种功能在软件行业是如何命名的。所以我什至不知道如何谷歌它。这里有一些我想要的例子。我不想对输出使用任何条件或迭代函数。
示例 1) foreach 案例
foreach x [list 1 2 3] {
puts "x=$x"
}
我想将此脚本转换为:
puts "x=1" ; puts "x=2" ; puts "x=3"
示例 2)
set A 1
if { $A == "1" } {
puts "A is 1"
} else {
puts "A is not 1"
}
我希望这是:
set A 1
puts "A is 1"
示例 3) 如果我遇到注释行或未知命令或过程,我只想将其传递给输出。
set argument 1000
UnknownProcedure $argement
现在应该是:
set argument 100
UnknownProcedure 100
提前致谢。
【问题讨论】:
-
有些东西不应该甚至不能像那样硬编码,例如打开文件的句柄。从字面上看,根本没有承诺两次运行将使用相同的频道名称。 Tcl 实现可以对它们做任何它想做的事情(而且它们在 Windows 上是不可重复的)。
-
这是记录/回放程序执行的字段(用于不同目的:调试、测试等)。
标签: tcl code-generation interpretation hardcoded