mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-11 08:03:55 +00:00
Template array constructor (#582)
This commit is contained in:
parent
a76ed42c3f
commit
bee8827a98
@ -337,8 +337,9 @@ public:
|
||||
|
||||
array() : array(0, static_cast<const double *>(nullptr)) {}
|
||||
|
||||
array(const pybind11::dtype &dt, const std::vector<size_t> &shape,
|
||||
const std::vector<size_t> &strides, const void *ptr = nullptr,
|
||||
template <typename Shape, typename Strides>
|
||||
array(const pybind11::dtype &dt, const Shape &shape,
|
||||
const Strides &strides, const void *ptr = nullptr,
|
||||
handle base = handle()) {
|
||||
auto& api = detail::npy_api::get();
|
||||
auto ndim = shape.size();
|
||||
@ -536,7 +537,7 @@ protected:
|
||||
throw std::runtime_error("array is not writeable");
|
||||
}
|
||||
|
||||
static std::vector<size_t> default_strides(const std::vector<size_t>& shape, size_t itemsize) {
|
||||
template <typename Shape> static std::vector<size_t> default_strides(const Shape& shape, size_t itemsize) {
|
||||
auto ndim = shape.size();
|
||||
std::vector<size_t> strides(ndim);
|
||||
if (ndim) {
|
||||
|
Loading…
Reference in New Issue
Block a user