[Xotcl] [self class] inside [eval]
Kristoffer Lawson
setok at fishpool.com
Mon Sep 6 15:05:22 CEST 2004
Still looking for an official explanation for the operations of [eval]
(and other stuff I posted), but here's another one. The code follows:
package require XOTcl 1.3
namespace import xotcl::*
Class Foo -parameter doors
Foo instproc init {req} {
puts $req
}
Object ob
set newOb [Foo new -childof ob hello -doors 4]
puts "Doors: [$newOb doors]"
$newOb proc doStuff {} {
puts "class: [self class]"
set newOb [[self class] new -childof [self] whatevah -doors 3]
puts "Doors: [$newOb doors]"
}
$newOb doStuff
#$newOb eval {
# doStuff
#}
This version correctly states that the class for [self class] is an empty
string. However, if I comment out the "eval" version and use it instead,
[self class] gives me "::xotcl::Object".
/ http://www.fishpool.com/~setok/
More information about the Xotcl
mailing list