如何打印tcl进程?
给出了一个简单的tcl过程如何打印tcl进程?,tcl,redefinition,proc-object,Tcl,Redefinition,Proc Object,给出了一个简单的tcl过程 proc foo {a b} {puts "$a $b"} 我可以使用什么tcl命令来打印过程foo。。。那就是我想要回程序的文本 例如: % proc foo {a b} {puts "$a $b"} % foo a b a b % puts $foo can't read "foo": no such variable 我怎样才能拿回foo{abb}{put“$aba$b”} % proc foo {a b} {puts "$a $b"} % inf
proc foo {a b} {puts "$a $b"}
我可以使用什么tcl命令来打印过程foo
。。。那就是我想要回程序的文本
例如:
% proc foo {a b} {puts "$a $b"}
% foo a b
a b
% puts $foo
can't read "foo": no such variable
我怎样才能拿回foo{abb}{put“$aba$b”}
% proc foo {a b} {puts "$a $b"}
% info body foo
puts "$a $b"
% info args foo
a b
%proc foo{a b}{put“$a$b”}
%信息体福
放入“$a$b”
%信息args foo
a b
要了解更多信息,请重新阅读info(n)。@Henry,如果任何参数都有默认值,则会比这复杂一些:
proc foo {a {b bar}} {
puts "$a $b"
}
proc info:wholeproc procname {
set result [list proc $procname]
set args {}
foreach arg [info args $procname] {
if {[info default $procname $arg value]} {
lappend args [list $arg $value]
} else {
lappend args $arg
}
}
lappend result [list $args]
lappend result [list [info body $procname]]
return [join $result]
}
info:wholeproc foo
使用TclX的showproc:
package require Tclx
showproc foo