如何列出在 tclsh 实例中加载的所有命名空间?
陈兹
尝试从 TCLer 的Wiki运行此过程
proc listns {{parentns ::}} {
set result [list]
foreach ns [namespace children $parentns] {
eval lappend result [listns $ns]
lappend result $ns
}
return $result
}
当我运行它时,我得到以下输出:
% listns
::platform ::activestate::teapot::link ::activestate::teapot ::activestate ::tcl
::clock ::tcl::info ::tcl::dict ::tcl::tm ::tcl::mathop ::tcl::unsupported ::tcl
::mathfunc ::tcl::chan ::tcl::string ::tcl
%
因此,要获取所有命名空间,您只需执行以下操作:
set all_namespaces [concat [listns] "::"]