1/* ------------------------------------------------------------ 2 * Overloaded operator support 3 * ------------------------------------------------------------ */ 4 5#ifdef __cplusplus 6 7%rename(__add__) *::operator+; 8%rename(__pos__) *::operator+(); 9%rename(__pos__) *::operator+() const; 10%rename(__sub__) *::operator-; 11%rename(__neg__) *::operator-(); 12%rename(__neg__) *::operator-() const; 13%rename(__mul__) *::operator*; 14%rename(__div__) *::operator/; 15%rename(__mod__) *::operator%; 16%rename(__lshift__) *::operator<<; 17%rename(__rshift__) *::operator>>; 18%rename(__and__) *::operator&; 19%rename(__or__) *::operator|; 20%rename(__xor__) *::operator^; 21%rename(__invert__) *::operator~; 22%rename(__lt__) *::operator<; 23%rename(__le__) *::operator<=; 24%rename(__gt__) *::operator>; 25%rename(__ge__) *::operator>=; 26%rename(__eq__) *::operator==; 27 28/* Special cases */ 29%rename(__call__) *::operator(); 30 31/* Ignored inplace operators */ 32%ignoreoperator(NOTEQUAL) operator!=; 33%ignoreoperator(PLUSEQ) operator+=; 34%ignoreoperator(MINUSEQ) operator-=; 35%ignoreoperator(MULEQ) operator*=; 36%ignoreoperator(DIVEQ) operator/=; 37%ignoreoperator(MODEQ) operator%=; 38%ignoreoperator(LSHIFTEQ) operator<<=; 39%ignoreoperator(RSHIFTEQ) operator>>=; 40%ignoreoperator(ANDEQ) operator&=; 41%ignoreoperator(OREQ) operator|=; 42%ignoreoperator(XOREQ) operator^=; 43 44/* Ignored operators */ 45%ignoreoperator(LNOT) operator!; 46%ignoreoperator(LAND) operator&&; 47%ignoreoperator(LOR) operator||; 48%ignoreoperator(EQ) operator=; 49%ignoreoperator(PLUSPLUS) operator++; 50%ignoreoperator(MINUSMINUS) operator--; 51%ignoreoperator(ARROWSTAR) operator->*; 52%ignoreoperator(INDEX) operator[]; 53 54 55#endif /* __cplusplus */ 56