/trunk/Examples/test-suite/python_richcompare.i
Swig | 60 lines | 41 code | 18 blank | 1 comment | 0 complexity | c61fbf68395552e410041d62fdbc8bb0 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- /* Test the tp_richcompare functions generated with the -builtin option */
- %module python_richcompare
- %inline {
- class BaseClass {
- public:
- BaseClass (int i_) : i(i_) {}
- ~BaseClass () {}
- int getValue () const
- { return i; }
-
- bool operator< (const BaseClass& x) const
- { return this->i < x.i; }
- bool operator> (const BaseClass& x) const
- { return this->i > x.i; }
- bool operator<= (const BaseClass& x) const
- { return this->i <= x.i; }
- bool operator>= (const BaseClass& x) const
- { return this->i >= x.i; }
- bool operator== (const BaseClass& x) const
- { return this->i == x.i; }
- bool operator!= (const BaseClass& x) const
- { return this->i != x.i; }
- int i;
- };
- class SubClassA : public BaseClass {
- public:
- SubClassA (int i_) : BaseClass(i_) {}
- ~SubClassA () {}
- bool operator== (const SubClassA& x) const
- { return true; }
- bool operator== (const BaseClass& x) const
- { return false; }
- };
- class SubClassB : public BaseClass {
- public:
- SubClassB (int i_) : BaseClass(i_) {}
- ~SubClassB () {}
- bool operator== (const SubClassB& x) const
- { return true; }
- bool operator== (const SubClassA& x) const
- { return false; }
- };
- }