diff options
| -rw-r--r-- | config.mk | 2 | ||||
| -rw-r--r-- | pkmacros.h | 42 |
2 files changed, 22 insertions, 22 deletions
@@ -1,5 +1,5 @@ # pk.h version -VERSION = 0.4.6 +VERSION = 0.4.7 # paths PREFIX = /usr/local @@ -82,78 +82,78 @@ TypeName operator^=(TypeName& a, const TypeName& b); \ TypeName operator~(TypeName& a); #define TypeSafeInt2_B(TypeName, TypeName_T) \ - inline TypeName operator+(const TypeName& a, const TypeName& b) { \ + TypeName operator+(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) + static_cast<TypeName_T>(b)); \ } \ - inline TypeName operator-(const TypeName& a, const TypeName& b) { \ + TypeName operator-(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) - static_cast<TypeName_T>(b)); \ } \ - inline TypeName operator*(const TypeName& a, const TypeName& b) { \ + TypeName operator*(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) * static_cast<TypeName_T>(b)); \ } \ - inline TypeName operator/(const TypeName& a, const TypeName& b) { \ + TypeName operator/(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) / static_cast<TypeName_T>(b)); \ } \ - inline TypeName operator&(const TypeName& a, const TypeName& b) { \ + TypeName operator&(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) & static_cast<TypeName_T>(b)); \ } \ - inline TypeName operator|(const TypeName& a, const TypeName& b) { \ + TypeName operator|(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) | static_cast<TypeName_T>(b)); \ } \ - inline TypeName operator^(const TypeName& a, const TypeName& b) { \ + TypeName operator^(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) ^ static_cast<TypeName_T>(b)); \ } \ - inline TypeName& operator++(TypeName& a) { \ + TypeName& operator++(TypeName& a) { \ a = a + TypeName{1}; \ return a; \ } \ - inline TypeName& operator--(TypeName& a) { \ + TypeName& operator--(TypeName& a) { \ a = a - TypeName{1}; \ return a; \ }; \ - inline TypeName operator++(TypeName& a, int) { \ + TypeName operator++(TypeName& a, int) { \ a = a + TypeName{1}; \ return a; \ } \ - inline TypeName operator--(TypeName& a, int) { \ + TypeName operator--(TypeName& a, int) { \ a = a - TypeName{1}; \ return a; \ }; \ - inline TypeName operator<<(const TypeName& a, const TypeName& b) { \ + TypeName operator<<(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) << static_cast<TypeName_T>(b)); \ }; \ - inline TypeName operator>>(const TypeName& a, const TypeName& b) { \ + TypeName operator>>(const TypeName& a, const TypeName& b) { \ return TypeName(static_cast<TypeName_T>(a) >> static_cast<TypeName_T>(b)); \ }; \ - inline TypeName operator+=(TypeName& a, const TypeName& b) { \ + TypeName operator+=(TypeName& a, const TypeName& b) { \ a = TypeName{a + b}; \ return a; \ }; \ - inline TypeName operator-=(TypeName& a, const TypeName& b) { \ + TypeName operator-=(TypeName& a, const TypeName& b) { \ a = TypeName{a - b}; \ return a; \ }; \ - inline TypeName operator*=(TypeName& a, const TypeName& b) { \ + TypeName operator*=(TypeName& a, const TypeName& b) { \ a = TypeName{a * b}; \ return a; \ }; \ - inline TypeName operator/=(TypeName& a, const TypeName& b) { \ + TypeName operator/=(TypeName& a, const TypeName& b) { \ a = TypeName{a / b}; \ return a; \ }; \ - inline TypeName operator&=(TypeName& a, const TypeName& b) { \ + TypeName operator&=(TypeName& a, const TypeName& b) { \ a = TypeName{a & b}; \ return a; \ }; \ - inline TypeName operator|=(TypeName& a, const TypeName& b) { \ + TypeName operator|=(TypeName& a, const TypeName& b) { \ a = TypeName{a | b}; \ return a; \ }; \ - inline TypeName operator^=(TypeName& a, const TypeName& b) { \ + TypeName operator^=(TypeName& a, const TypeName& b) { \ a = TypeName{a ^ b}; \ return a; \ }; \ - inline TypeName operator~(TypeName& a) { \ + TypeName operator~(TypeName& a) { \ a = static_cast<TypeName>(~static_cast<TypeName_T>(a)); \ return a; \ }; |
