123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /* ------------------------------------------------------------
- * Overloaded operator support
- * ------------------------------------------------------------ */
- #ifdef __cplusplus
- // These are auto-supported by the Perl-module
- %rename(__plusplus__) *::operator++;
- %rename(__minmin__) *::operator--;
- %rename(__add__) *::operator+;
- %rename(__sub__) *::operator-;
- %rename(__neg__) *::operator-();
- %rename(__neg__) *::operator-() const;
- %rename(__mul__) *::operator*;
- %rename(__div__) *::operator/;
- %rename(__eq__) *::operator==;
- %rename(__ne__) *::operator!=;
- %rename(__mod__) *::operator%;
- %rename(__gt__) *::operator>;
- %rename(__lt__) *::operator<;
- %rename(__not__) *::operator!;
- %rename(__le__) *::operator<=;
- %rename(__ge__) *::operator>=;
- %rename(__and__) *::operator&;
- %rename(__or__) *::operator|;
- %rename(__iadd__) *::operator+=;
- %rename(__isub__) *::operator-=;
- // These are renamed, but no test exists in operator_overload_runme.pl
- %ignoreoperator(EQ) operator=;
- // These are renamed, but no 'use overload...' is added
- %rename(__lshift__) *::operator<<;
- %rename(__rshift__) *::operator>>;
- %rename(__xor__) *::operator^;
- %rename(__invert__) *::operator~;
- %rename(__call__) *::operator();
- /* Ignored operators */
- %ignoreoperator(LAND) operator&&;
- %ignoreoperator(LOR) operator||;
- %ignoreoperator(MULEQ) operator*=;
- %ignoreoperator(DIVEQ) operator/=;
- %ignoreoperator(MODEQ) operator%=;
- %ignoreoperator(LSHIFTEQ) operator<<=;
- %ignoreoperator(RSHIFTEQ) operator>>=;
- %ignoreoperator(ANDEQ) operator&=;
- %ignoreoperator(OREQ) operator|=;
- %ignoreoperator(XOREQ) operator^=;
- %ignoreoperator(ARROWSTAR) operator->*;
- %ignoreoperator(INDEX) operator[];
- #endif /* __cplusplus */
|