[Xotcl] [Fwd: Bug with namespace'd Class?]

Schofield, Bryan (GE Transportation) Bryan.Schofield at trans.ge.com
Tue Nov 2 20:59:58 CET 2004


because "self" is a command in the xotcl namespace. you will also find that there are others, such a "my"

If you don't import xotcl, you end up with source that looks like this:

::xotcl::Class foo
Foo instproc bar {} {
   puts "[::xotcl::self] is a [::xotcl::my info class]"
}


I'd suggest, do something like the following...

package require XOTcl 1.3
namespace eval fooPackage {
   namespace import ::xotcl::*
   Class Foo
   Foo instproc bar {} {
     puts "[self] is a [my info class]"
   }
}


hope that helps.
-- bryan

> -----Original Message-----
> From: xotcl-bounces at alice.wu-wien.ac.at
> [mailto:xotcl-bounces at alice.wu-wien.ac.at]On Behalf Of Damon Courtney
> Sent: Tuesday, November 02, 2004 2:23 PM
> To: xotcl at alice.wu-wien.ac.at
> Subject: [Xotcl] [Fwd: Bug with namespace'd Class?]
> 
> 
>     Why does this not work?
> 
> package require XOTcl
> 
> ::xotcl::Class Foo
> 
> Foo instproc bar {} {
>     puts "SELF = [self]"
> }
> 
> Foo foo
> % Foo foo
> ::foo
> % foo bar
> invalid command name "self"
> 
> 
>     But, if I "namespace import ::xotcl::*" and make the 
> class with just
> the Class command (not ::xotcl::Class), it works.
> 
>     Any ideas?
> 
> D
> 
> PS:  Windows, Tcl 8.4.3, XOTcl 1.3.1
> 
> _______________________________________________
> Xotcl mailing list
> Xotcl at alice.wu-wien.ac.at
> http://alice.wu-wien.ac.at/mailman/listinfo/xotcl
> 



More information about the Xotcl mailing list