#ifndef OPERATOR_NAME #error OPERATOR_NAME ! defined #endif #ifndef OPERATOR_SYMBOL #error OPERATOR_SYMBOL ! defined #endif #ifndef OPERATOR_ISYMBOL #error OPERATOR_ISYMBOL ! defined #endif #include "pythonic/utils/functor.hpp" #ifdef USE_XSIMD #include #endif PYTHONIC_NS_BEGIN namespace operator_ { template auto OPERATOR_NAME(bool, A &&a, B &&b, ...) -> decltype(std::forward(a) OPERATOR_SYMBOL std::forward(b)) { return std::forward(a) OPERATOR_SYMBOL std::forward(b); } template auto OPERATOR_NAME(bool, A &&a, B &&b, std::nullptr_t) -> decltype(std::forward(a) OPERATOR_ISYMBOL std::forward(b)) { return std::forward(a) OPERATOR_ISYMBOL std::forward(b); } } PYTHONIC_NS_END #undef OPERATOR_NAME #undef OPERATOR_SYMBOL #undef OPERATOR_ISYMBOL