在 proc 中,您可以获得 proc 名称(无需硬编码)吗?例如
proc my_proc { some_arg } {
puts "entering proc [some way of getting proc name]"
}
在 proc 中,您可以获得 proc 名称(无需硬编码)吗?例如
proc my_proc { some_arg } {
puts "entering proc [some way of getting proc name]"
}
当然可以!
使用info level
命令:
proc my_proc { some_arg } {
puts "entering proc [lindex [info level 0] 0]"
}
你得到你想要的
entering proc my_proc
另一种方法是使用info frame
,它提供了一个包含其他信息的字典,并读取proc
密钥:
proc my_proc { some_arg } {
puts "entering proc [dict get [info frame 0] proc]"
}
这一次,您将获得完全限定的 proc 名称:
entering proc ::my_proc