Itcl provides many means of introspection. Once a class has been defined and an object of that class created then the class names and objects can be found in this manner:
package require Itcl
itcl::class abc {
variable a 1
variable b
}
abc myobj
abc myotherobj
puts "Classes: [itcl::find classes]"
puts "Objects: [itcl::find objects]"The Itcl class manual page [L1 ] provides many more hints, such as
myobj info variable
::abc::this ::abc::aFor debugging purposes, protected array variables of an object can be accessed using
set [list @itcl myobj ::abc::b(foo)]
The namespace children command includes ::abc as a namespace since this is how Itcl implements classes.
namespace children {} a*
::activestate ::abc ::auto_mkindex_parserThe methods of the object, and the body of the method can be obtained.