This procedure is defined in the server but not documented via ad_proc or proc_doc and may be intended as a private interface.
The procedure is defined as:
proc ::nsmcp::codeCatalog {} {
set entries {}; set namespaces {::}; set examined 0; set limited false
while {[llength $namespaces]} {
set ns [lindex $namespaces 0]; set namespaces [lrange $namespaces 1 end]
foreach child [namespace children $ns] {lappend namespaces $child}
foreach command [info commands ${ns}::*] {
if {[incr examined]>50000} {set limited true; break}
if {[llength [info procs [string map {\\ \\\\ * \\* ? \\? [ \\[ ] \\]} $command]]]} {
dict set entries $command [dict create kind tcl name $command object {} member {} scope {}]
} elseif {[nsf::is object $command]} {
foreach scope {object class} {
if {$scope eq "class" && ![nsf::is class $command]} continue
set api ::nsf::methods::${scope}::info::methods
if {[catch {nsf::directdispatch $command $api -path} methods]} continue
foreach member $methods {
if {[dict size $entries]>=50000} {set limited true; break}
set tag [expr {$scope eq "class" ? "instproc" : "proc"}]
set name [list $command $tag $member]
dict set entries $name [dict create kind nsf name $name object $command member $member scope $scope]
}
}
}
}
if {$limited} break
}
# API browser keys include documented NX/XOTcl methods and scoped objects.
# Unsupported scoped keys remain discoverable; retrieval reports unavailable.
if {[nsv_array exists api_proc_doc]} {
foreach name [lsort [nsv_array names api_proc_doc]] {
if {[dict size $entries]>=50000} {set limited true; break}
if {![dict exists $entries $name]} {
dict set entries $name [dict create kind documented name $name object {} member {} scope {}]
}
}
}
return [dict create entries $entries limited $limited]
}