I'm doing this:
class io_channel;
class connection: public io_channel;
engine.RegisterObjectType ("io_channel", 0, asOBJ_REF);
engine.SetDefaultNamespace ("visa");
engine.RegisterObjectType ("connection", 0, asOBJ_REF);
engine.RegisterObjectMethod ("connection @opCast(io_channel @)", …);This gets me this error message:
System function (line 1, column 1): Identifier 'connection' is not a data type in global namespaceInstead I need to do this:
engine.RegisterObjectMethod ("visa::connection @opCast(io_channel @)", …);In other words, I need to manually add the namespace here, despite the code running after a call to SetDefaultNamespace. Is this behaviour intentional, or is it a (small) bug?
The namespace is optional when the classname is used as an argument:
engine.RegisterObjectMethod ("io_channel @opImplCast(connection @)", …);