Hi all – I have ported over one of our applications from using itcl to using xotcl. I have a lot of code that already uses the itcl stuff, so the port must be backwards compatible. I have the following issue. Can anyone give me an idea how I can get around it? A script that shows my issue is as follows:
#!/usr/bin/tclsh
package req XOTcl
namespace import ::xotcl::*
::xotcl::Class Connect -parameter {
{telnet}
{ssh}
{ip}
}
Connect instproc init {node args} {
[self] instvar telnet
[self] instvar ip
}
Connect dev node -ip "127.0.0.1" -telnet
The above does not work, as it seems that the –telnet arg must not be NULL, however, I need this to be NULL, as it is just a flag.
If I pass in:
Connect dev node -ip "127.0.0.1" -telnet “”
This works, however, this is not backwards compatible with how things were with itcl, and I have too many users/scripts to change how this is done.
There are potentially 2 ways around this, however, I am unable to find information on if either of them are possible:
- Allow the passing in of a NULL argument
- Prevent the constructor parsing args so that I can parse my own
I would appreciate any assistance
Cheers
Colin