#ifndef PYTHONIC_INCLUDE_NUMPY_SELECT_HPP #define PYTHONIC_INCLUDE_NUMPY_SELECT_HPP #include "pythonic/include/utils/functor.hpp" #include "pythonic/include/utils/int_.hpp" PYTHONIC_NS_BEGIN namespace numpy { template types::ndarray> select(C const &condlist, L const &choicelist, typename L::dtype _default = 0); template typename std::enable_if< std::tuple_size::value == std::tuple_size::value, types::ndarray::value>>>::type select(types::list> const &condlist, types::list> const &choicelist, T _default = 0); template typename std::enable_if::value == std::tuple_size::value, types::ndarray>::type select(types::static_list, M> const &condlist, types::static_list, M> const &choicelist, T _default = 0); template typename std::enable_if::value == std::tuple_size::value, types::ndarray>::type select(types::static_list, M> const &condlist, types::list> const &choicelist, T _default = 0); template typename std::enable_if::value == std::tuple_size::value, types::ndarray>::type select(types::list> const &condlist, types::static_list, M> const &choicelist, T _default = 0); DEFINE_FUNCTOR(pythonic::numpy, select); } PYTHONIC_NS_END #endif