// Test %rename directive in the Space namespace %module rename2 namespace Space { // Note: no Space:: qualifier %rename(opIntPtrA) XYZ::operator NotXYZ*() const; %rename(opIntPtrB) XYZ::operator XYZ*() const; %rename(opAnother1) XYZ::operator Another() const; %rename(opAnother2) XYZ::operator Another() const; %rename(opAnother3) XYZ::operator Another() const; %rename(opAnother4) XYZ::operator Another() const; %rename(tMethod1) XYZ::templateT(T i); %rename(tMethod2) XYZ::templateT(int i); %rename(tMethod3) XYZ::templateT(Space::Klass i); %rename(tMethod4) XYZ::templateT(Space::Enu i); %rename(tMethodNotXYZ1) XYZ::templateNotXYZ(NotXYZ); %rename(tMethodNotXYZ2) XYZ::templateNotXYZ(NotXYZ); %rename(tMethodNotXYZ3) XYZ::templateNotXYZ(NotXYZ); %rename(tMethodNotXYZ4) XYZ::templateNotXYZ(NotXYZ); %rename(tMethodXYZ1) XYZ::templateXYZ(XYZ); %rename(tMethodXYZ2) XYZ::templateXYZ(XYZ); %rename(tMethodXYZ3) XYZ::templateXYZ(XYZ); %rename(tMethodXYZ4) XYZ::templateXYZ(XYZ); %rename(opT1) XYZ::operator T(); %rename(opT2) XYZ::operator int(); %rename(opT3) XYZ::operator Space::Klass(); %rename(opT4) XYZ::operator Space::Enu(); %rename(opNotXYZ1) XYZ::operator NotXYZ() const; %rename(opNotXYZ2) XYZ::operator NotXYZ() const; %rename(opNotXYZ3) XYZ::operator NotXYZ() const; %rename(opNotXYZ4) XYZ::operator NotXYZ() const; %rename(opXYZ1) XYZ::operator XYZ() const; %rename(opXYZ2) XYZ::operator XYZ() const; %rename(opXYZ3) XYZ::operator XYZ() const; %rename(opXYZ4) XYZ::operator XYZ() const; %rename(methodABC) ABC::method(ABC a) const; %rename(opABC) ABC::operator ABC*() const; %rename(methodKlass) ABC::method(Klass k) const; %rename(opKlass) ABC::operator Klass() const; } %{ #include "rename.h" %} %include "rename.h" %template(XYZInt) Space::XYZ; %template(XYZDouble) Space::XYZ; %template(XYZKlass) Space::XYZ; %template(XYZEnu) Space::XYZ; %template(NotXYZInt) Space::NotXYZ; %template(NotXYZDouble) Space::NotXYZ; %template(NotXYZKlass) Space::NotXYZ; %template(NotXYZEnu) Space::NotXYZ;