#ifndef PYTHONIC_INCLUDE_NUMPY_LOGICALXOR_HPP #define PYTHONIC_INCLUDE_NUMPY_LOGICALXOR_HPP #include "pythonic/include/utils/functor.hpp" #include "pythonic/include/types/ndarray.hpp" #include "pythonic/include/types/numpy_broadcast.hpp" #include "pythonic/include/utils/numpy_traits.hpp" PYTHONIC_NS_BEGIN namespace numpy { namespace wrapper { template auto logical_xor(T0 const &t0, T1 const &t1) -> decltype((t0 && !t1) || (t1 && !t0)); template bool logical_xor(std::complex const &t0, std::complex const &t1) { return (!!t0 && !t1) || (!!t1 && !t0); } } #define NUMPY_NARY_FUNC_NAME logical_xor #define NUMPY_NARY_FUNC_SYM wrapper::logical_xor #include "pythonic/include/types/numpy_nary_expr.hpp" } PYTHONIC_NS_END #endif